1use proc_macro::TokenStream;
2use proc_macro_error::proc_macro_error;
3use syn::__private::ToTokens;
4
5#[proc_macro_attribute]
6#[proc_macro_error]
7pub fn server(args: proc_macro::TokenStream, s: TokenStream) -> TokenStream {
8 match server_fn_macro::server_macro_impl(
9 args.into(),
10 s.into(),
11 Some(syn::parse_quote!(leptos::server_fn)),
12 "/api",
13 Some(syn::parse_quote!(::leptos_spin::request::SpinRequest)),
14 Some(syn::parse_quote!(::leptos_spin::response::SpinResponse)),
15 ) {
16 Err(e) => e.to_compile_error().into(),
17 Ok(s) => s.to_token_stream().into(),
18 }
19}