@niledatabase/react 3.0.0-alpha.9 → 3.0.1-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/index.d.mts +355 -0
  2. package/dist/index.d.ts +355 -11
  3. package/dist/index.js +3 -8
  4. package/dist/index.js.map +1 -0
  5. package/dist/index.mjs +3 -0
  6. package/dist/index.mjs.map +1 -0
  7. package/dist/styles.css +1 -0
  8. package/package.json +52 -32
  9. package/dist/GoogleLoginButton/GoogleLoginButton.d.ts +0 -10
  10. package/dist/GoogleLoginButton/GoogleLoginButton.stories.d.ts +0 -11
  11. package/dist/GoogleLoginButton/index.d.ts +0 -1
  12. package/dist/SignInForm/SignInForm.d.ts +0 -3
  13. package/dist/SignInForm/UserLoginForm.stories.d.ts +0 -5
  14. package/dist/SignInForm/index.d.ts +0 -1
  15. package/dist/SignInForm/types.d.ts +0 -16
  16. package/dist/SignUpForm/NewUserSignUp.stories.d.ts +0 -5
  17. package/dist/SignUpForm/SignUpForm.d.ts +0 -3
  18. package/dist/SignUpForm/index.d.ts +0 -1
  19. package/dist/SignUpForm/types.d.ts +0 -13
  20. package/dist/UserTenantList/CreateUser.d.ts +0 -8
  21. package/dist/UserTenantList/UserList.d.ts +0 -17
  22. package/dist/UserTenantList/UserList.stories.d.ts +0 -5
  23. package/dist/UserTenantList/UserModal.d.ts +0 -7
  24. package/dist/UserTenantList/index.d.ts +0 -1
  25. package/dist/UserTenantList/useDataParser.d.ts +0 -4
  26. package/dist/context/index.d.ts +0 -9
  27. package/dist/context/theme.d.ts +0 -7
  28. package/dist/context/types.d.ts +0 -22
  29. package/dist/hooks/useResults.d.ts +0 -22
  30. package/dist/hooks/useTextSizer.d.ts +0 -1
  31. package/dist/lib/SimpleForm/CheckGroup/index.d.ts +0 -10
  32. package/dist/lib/SimpleForm/index.d.ts +0 -11
  33. package/dist/lib/SimpleForm/types.d.ts +0 -37
  34. package/dist/react.cjs.development.js +0 -943
  35. package/dist/react.cjs.development.js.map +0 -1
  36. package/dist/react.cjs.production.min.js +0 -2
  37. package/dist/react.cjs.production.min.js.map +0 -1
  38. package/dist/react.esm.d.ts +0 -11
  39. package/dist/react.esm.js +0 -911
  40. package/dist/react.esm.js.map +0 -1
  41. package/dist/utils/getColumnSize.d.ts +0 -2
package/dist/index.d.ts CHANGED
@@ -1,11 +1,355 @@
1
- export { NileProvider, useApi } from './context';
2
- export { default as Google } from './GoogleLoginButton';
3
- export * from './GoogleLoginButton';
4
- export * from './SignUpForm';
5
- export { default as SignUpForm } from './SignUpForm';
6
- export * from './SignInForm';
7
- export { default as SignInForm } from './SignInForm';
8
- export * from './UserTenantList';
9
- export { default as UserTenantList } from './UserTenantList';
10
- export { Attribute as FormAttribute, AttributeType as FormAttributeType, } from './lib/SimpleForm/types';
11
- export * from 'next-auth/react';
1
+ import * as React from 'react';
2
+ import React__default from 'react';
3
+ import * as _tanstack_react_query from '@tanstack/react-query';
4
+ import { QueryClient } from '@tanstack/react-query';
5
+ import * as next_auth_react from 'next-auth/react';
6
+ import { SignInOptions, UseSessionOptions, LiteralUnion, ClientSafeProvider, SignInAuthorizationParams, SignInResponse, SignOutParams, SignOutResponse, SessionProviderProps } from 'next-auth/react';
7
+ import * as class_variance_authority_dist_types from 'class-variance-authority/dist/types';
8
+ import { VariantProps } from 'class-variance-authority';
9
+ import { CreateBasicUserRequest } from '@niledatabase/browser';
10
+ import { BuiltInProviderType, RedirectableProviderType } from 'next-auth/providers/index';
11
+ import { CtxOrReq } from 'next-auth/client/_utils';
12
+ import { Session } from 'next-auth';
13
+
14
+ type EmailSignInInfo = SignInOptions;
15
+ type SignInSuccess = (response: Response) => void;
16
+ type AllowedAny$3 = any;
17
+ interface Props$5 {
18
+ redirect?: boolean;
19
+ onSuccess?: SignInSuccess;
20
+ onError?: (e: Error, info: EmailSignInInfo) => void;
21
+ beforeMutate?: (data: AllowedAny$3) => AllowedAny$3;
22
+ buttonText?: string;
23
+ client?: QueryClient;
24
+ callbackUrl?: string;
25
+ }
26
+
27
+ declare function EmailSigningIn(props: Props$5): React__default.JSX.Element;
28
+
29
+ declare const buttonVariants: (props?: ({
30
+ variant?: "default" | "link" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
31
+ size?: "default" | "sm" | "lg" | "icon" | null | undefined;
32
+ } & class_variance_authority_dist_types.ClassProp) | undefined) => string;
33
+ interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
34
+ asChild?: boolean;
35
+ loading?: boolean;
36
+ }
37
+
38
+ type EmailError = void | {
39
+ error: string;
40
+ ok: boolean;
41
+ status: number;
42
+ url: null | string;
43
+ };
44
+ /**
45
+ * This works when the email identity provider is configured in the admin dashboard.
46
+ * @param props callbackUrl: the url to send the user to from their email
47
+ * @param props redirect: redirect to the default (unbranded) 'check your email' page. default is false
48
+ * @param props email: the email to send to
49
+ * @param props onSent: called if the email was sent
50
+ * @param props onFailure: called if there was a reportable
51
+ * @returns a JSX.Element to render
52
+ */
53
+ declare const EmailSignInButton: React__default.ForwardRefExoticComponent<ButtonProps & {
54
+ callbackUrl?: string;
55
+ redirect?: boolean;
56
+ email: string;
57
+ onSent?: () => void;
58
+ onFailure?: (error: EmailError) => void;
59
+ buttonText?: string;
60
+ } & React__default.RefAttributes<HTMLButtonElement>>;
61
+
62
+ declare function useEmailSignIn(params?: Props$5): _tanstack_react_query.UseMutateFunction<Response, Error, next_auth_react.SignInOptions, unknown>;
63
+
64
+ /**
65
+ * A component for a Google login button, according to their design language.
66
+ * This works when an identity provider is configured in the admin dashboard.
67
+ * @param props callbackUrl: a string to override the URL provided by the context
68
+ * @returns a JSX.Element to render
69
+ */
70
+ declare const GoogleSSOButton: React__default.ForwardRefExoticComponent<ButtonProps & {
71
+ callbackUrl?: string;
72
+ buttonText?: string;
73
+ } & React__default.RefAttributes<HTMLButtonElement>>;
74
+
75
+ declare const AzureSignInButton: React__default.ForwardRefExoticComponent<ButtonProps & {
76
+ callbackUrl?: string;
77
+ buttonText?: string;
78
+ } & React__default.RefAttributes<HTMLButtonElement>>;
79
+
80
+ declare const DiscordSignInButton: React__default.ForwardRefExoticComponent<ButtonProps & {
81
+ callbackUrl?: string;
82
+ buttonText?: string;
83
+ } & React__default.RefAttributes<HTMLButtonElement>>;
84
+
85
+ declare const GitHubSignInButton: React__default.ForwardRefExoticComponent<ButtonProps & {
86
+ callbackUrl?: string;
87
+ buttonText?: string;
88
+ } & React__default.RefAttributes<HTMLButtonElement>>;
89
+
90
+ declare const HubSpotSignInButton: React__default.ForwardRefExoticComponent<ButtonProps & {
91
+ callbackUrl?: string;
92
+ buttonText?: string;
93
+ } & React__default.RefAttributes<HTMLButtonElement>>;
94
+
95
+ declare const LinkedInSignInButton: React__default.ForwardRefExoticComponent<ButtonProps & {
96
+ callbackUrl?: string;
97
+ buttonText?: string;
98
+ } & React__default.RefAttributes<HTMLButtonElement>>;
99
+
100
+ declare const SlackSignInButton: React__default.ForwardRefExoticComponent<ButtonProps & {
101
+ callbackUrl?: string;
102
+ buttonText?: string;
103
+ } & React__default.RefAttributes<HTMLButtonElement>>;
104
+
105
+ declare const XSignInButton: React__default.ForwardRefExoticComponent<ButtonProps & {
106
+ callbackUrl?: string;
107
+ buttonText?: string;
108
+ } & React__default.RefAttributes<HTMLButtonElement>>;
109
+
110
+ type SignUpInfo = CreateBasicUserRequest & {
111
+ tenantId?: string;
112
+ fetchUrl?: string;
113
+ callbackUrl?: string;
114
+ newTenantName?: string;
115
+ };
116
+ type AllowedAny$2 = any;
117
+ interface Props$4 {
118
+ onSuccess?: (response: Response, formValues: SignUpInfo) => void;
119
+ onError?: (e: Error, info: SignUpInfo) => void;
120
+ beforeMutate?: (data: AllowedAny$2) => AllowedAny$2;
121
+ buttonText?: string;
122
+ client?: QueryClient;
123
+ callbackUrl?: string;
124
+ baseUrl?: string;
125
+ createTenant?: string | boolean;
126
+ }
127
+
128
+ declare function SigningUp(props: Props$4): React__default.JSX.Element;
129
+
130
+ declare function useSignUp<T extends SignUpInfo>(params: Props$4, client?: QueryClient): _tanstack_react_query.UseMutateFunction<Response, Error, SignUpInfo, unknown>;
131
+
132
+ type AllowedAny$1 = any;
133
+ type LoginInfo = {
134
+ email: string;
135
+ password: string;
136
+ };
137
+ type LoginSuccess = (response: AllowedAny$1, formValues: LoginInfo, ...args: AllowedAny$1) => void;
138
+ interface Props$3 {
139
+ beforeMutate?: (data: AllowedAny$1) => AllowedAny$1;
140
+ onSuccess?: LoginSuccess;
141
+ onError?: (error: Error, data: AllowedAny$1) => void;
142
+ callbackUrl?: string;
143
+ client?: QueryClient;
144
+ }
145
+
146
+ declare function SigningIn(props: Props$3): React__default.JSX.Element;
147
+
148
+ declare function useSignIn(params?: Props$3): _tanstack_react_query.UseMutateFunction<next_auth_react.SignInResponse | undefined, Error, LoginInfo, any>;
149
+
150
+ declare const SignOutButton: React__default.ForwardRefExoticComponent<ButtonProps & {
151
+ redirect?: boolean;
152
+ callbackUrl?: string;
153
+ buttonText?: string;
154
+ } & React__default.RefAttributes<HTMLButtonElement>>;
155
+
156
+ type UpdateSession = (data?: any) => Promise<Session | null>;
157
+ type SessionContextValue<R extends boolean = false> = R extends true ? {
158
+ update: UpdateSession;
159
+ data: Session;
160
+ status: 'authenticated';
161
+ } | {
162
+ update: UpdateSession;
163
+ data: null;
164
+ status: 'loading';
165
+ } : {
166
+ update: UpdateSession;
167
+ data: Session;
168
+ status: 'authenticated';
169
+ } | {
170
+ update: UpdateSession;
171
+ data: null;
172
+ status: 'unauthenticated' | 'loading';
173
+ };
174
+ declare const SessionContext: React__default.Context<{
175
+ update: UpdateSession;
176
+ data: Session;
177
+ status: "authenticated";
178
+ } | {
179
+ update: UpdateSession;
180
+ data: null;
181
+ status: "unauthenticated" | "loading";
182
+ } | undefined>;
183
+ /**
184
+ * React Hook that gives you access
185
+ * to the logged in user's session data.
186
+ *
187
+ * [Documentation](https://next-auth.js.org/getting-started/client#usesession)
188
+ */
189
+ declare function useSession<R extends boolean>(options?: UseSessionOptions<R>): SessionContextValue<R>;
190
+ type GetSessionParams = CtxOrReq & {
191
+ event?: 'storage' | 'timer' | 'hidden' | string;
192
+ triggerEvent?: boolean;
193
+ broadcast?: boolean;
194
+ };
195
+ declare function getSession(params?: GetSessionParams): Promise<Session | null>;
196
+ /**
197
+ * Returns the current Cross Site Request Forgery Token (CSRF Token)
198
+ * required to make POST requests (e.g. for signing in and signing out).
199
+ * You likely only need to use this if you are not using the built-in
200
+ * `signIn()` and `signOut()` methods.
201
+ *
202
+ * [Documentation](https://next-auth.js.org/getting-started/client#getcsrftoken)
203
+ */
204
+ declare function getCsrfToken(params?: CtxOrReq): Promise<string | undefined>;
205
+ /**
206
+ * It calls `/api/auth/providers` and returns
207
+ * a list of the currently configured authentication providers.
208
+ * It can be useful if you are creating a dynamic custom sign in page.
209
+ *
210
+ * [Documentation](https://next-auth.js.org/getting-started/client#getproviders)
211
+ */
212
+ declare function getProviders(): Promise<Record<LiteralUnion<BuiltInProviderType>, ClientSafeProvider> | null>;
213
+ /**
214
+ * Client-side method to initiate a signin flow
215
+ * or send the user to the signin page listing all possible providers.
216
+ * Automatically adds the CSRF token to the request.
217
+ *
218
+ * [Documentation](https://next-auth.js.org/getting-started/client#signin)
219
+ */
220
+ declare function signIn<P extends RedirectableProviderType | undefined = undefined>(provider?: LiteralUnion<P extends RedirectableProviderType ? P | BuiltInProviderType : BuiltInProviderType>, options?: SignInOptions, authorizationParams?: SignInAuthorizationParams): Promise<P extends RedirectableProviderType ? SignInResponse | undefined : undefined>;
221
+ /**
222
+ * Signs the user out, by removing the session cookie.
223
+ * Automatically adds the CSRF token to the request.
224
+ *
225
+ * [Documentation](https://next-auth.js.org/getting-started/client#signout)
226
+ */
227
+ declare function signOut<R extends boolean = true>(options?: SignOutParams<R>): Promise<R extends true ? undefined : SignOutResponse>;
228
+ /**
229
+ * Provider to wrap the app in to make session data available globally.
230
+ * Can also be used to throttle the number of requests to the endpoint
231
+ * `/api/auth/session`.
232
+ *
233
+ * [Documentation](https://next-auth.js.org/getting-started/client#sessionprovider)
234
+ */
235
+ declare function SessionProvider(props: SessionProviderProps): React__default.JSX.Element;
236
+ type JWT = {
237
+ email: string;
238
+ sub: string;
239
+ id: string;
240
+ iat: number;
241
+ exp: number;
242
+ jti: string;
243
+ };
244
+ type ActiveSession = {
245
+ id: string;
246
+ email: string;
247
+ expires: string;
248
+ user?: {
249
+ id: string;
250
+ name: string;
251
+ image: string;
252
+ email: string;
253
+ emailVerified: void | Date;
254
+ };
255
+ };
256
+ type NonErrorSession = JWT | ActiveSession | null | undefined;
257
+ type NileSession = Response | NonErrorSession;
258
+
259
+ declare function SignedIn({ children, session: startSession, ...props }: Omit<SessionProviderProps, 'session'> & {
260
+ session?: NileSession;
261
+ className?: string;
262
+ }): React__default.JSX.Element | null;
263
+
264
+ declare function SignedOut({ children, session: startSession, ...props }: Omit<SessionProviderProps, 'session'> & {
265
+ session?: NileSession;
266
+ className?: string;
267
+ }): React__default.JSX.Element | null;
268
+
269
+ type Tenant = {
270
+ id: string;
271
+ name: string;
272
+ };
273
+
274
+ type HookProps = {
275
+ tenants?: Tenant[];
276
+ onError?: (e: Error) => void;
277
+ baseUrl?: string;
278
+ };
279
+ type ComponentProps = HookProps & {
280
+ client?: QueryClient;
281
+ activeTenant?: string;
282
+ useCookie?: boolean;
283
+ className?: string;
284
+ };
285
+
286
+ declare function useTenants(params: HookProps & {
287
+ disableQuery?: boolean;
288
+ }, client?: QueryClient): _tanstack_react_query.UseQueryResult<Tenant[], Error>;
289
+ declare function useTenantId(params?: HookProps & {
290
+ tenant: Tenant;
291
+ }, client?: QueryClient): [string | undefined, (tenant: string) => void];
292
+
293
+ declare function TenantSelector(props: ComponentProps): React__default.JSX.Element;
294
+
295
+ interface User {
296
+ id: string;
297
+ email: string;
298
+ name?: string | null;
299
+ familyName?: string | null;
300
+ givenName?: string | null;
301
+ picture?: string | null;
302
+ created: string;
303
+ updated?: string;
304
+ emailVerified?: string | null;
305
+ tenants: {
306
+ id: string;
307
+ }[];
308
+ }
309
+
310
+ type Props$2 = {
311
+ fetchUrl?: string;
312
+ user?: User | undefined | null;
313
+ };
314
+ declare function useMe(props: Props$2): User | null | undefined;
315
+
316
+ type Props$1 = {
317
+ user?: User | undefined | null;
318
+ fetchUrl?: string;
319
+ profilePicturePlaceholder?: React__default.ReactElement;
320
+ className?: string;
321
+ };
322
+ declare function UserInfo(props: Props$1): React__default.JSX.Element | "Loading...";
323
+
324
+ type Props = Params & {
325
+ client?: QueryClient;
326
+ callbackUrl?: string;
327
+ defaultValues?: MutateFnParams & {
328
+ confirmPassword?: string;
329
+ };
330
+ };
331
+ type AllowedAny = any;
332
+ interface Params {
333
+ beforeMutate?: (data: AllowedAny) => AllowedAny;
334
+ onSuccess?: (res: Response) => void;
335
+ onError?: (error: Error, data: AllowedAny) => void;
336
+ callbackUrl?: string;
337
+ client?: QueryClient;
338
+ fetchUrl?: string;
339
+ baseUrl?: string;
340
+ }
341
+ type MutateFnParams = {
342
+ email?: string;
343
+ password?: string;
344
+ };
345
+
346
+ declare function ResetPasswordForm$1(props: Props): React__default.JSX.Element;
347
+
348
+ declare function ResetPasswordForm(params: Params): React__default.JSX.Element;
349
+
350
+ declare function useResetPassword(params?: Params): _tanstack_react_query.UseMutateFunction<Response, Error, MutateFnParams, unknown>;
351
+
352
+ declare const Email: () => React.JSX.Element;
353
+ declare const Password: () => React.JSX.Element;
354
+
355
+ export { AzureSignInButton as Azure, DiscordSignInButton as Discord, Email, EmailSigningIn as EmailSignIn, EmailSignInButton, GitHubSignInButton as GitHub, GoogleSSOButton as Google, HubSpotSignInButton as HubSpot, LinkedInSignInButton as LinkedIn, Password, ResetPasswordForm as PasswordResetForm, ResetPasswordForm$1 as PasswordResetRequestForm, SessionContext, SessionProvider, SigningIn as SignInForm, SignOutButton, SigningUp as SignUpForm, SignedIn, SignedOut, SlackSignInButton as Slack, TenantSelector, UserInfo, XSignInButton as X, getCsrfToken, getProviders, getSession, signIn, signOut, useEmailSignIn, useMe, useResetPassword, useSession, useSignIn, useSignUp, useTenantId, useTenants };
package/dist/index.js CHANGED
@@ -1,8 +1,3 @@
1
-
2
- 'use strict'
3
-
4
- if (process.env.NODE_ENV === 'production') {
5
- module.exports = require('./react.cjs.production.min.js')
6
- } else {
7
- module.exports = require('./react.cjs.development.js')
8
- }
1
+ "use client"
2
+ "use strict";var Mr=Object.create;var Te=Object.defineProperty;var Tr=Object.getOwnPropertyDescriptor;var Er=Object.getOwnPropertyNames;var Fr=Object.getPrototypeOf,Dr=Object.prototype.hasOwnProperty;var Lr=(e,t,o)=>t in e?Te(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o;var Rr=(e,t)=>{for(var o in t)Te(e,o,{get:t[o],enumerable:!0})},oo=(e,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Er(t))!Dr.call(e,n)&&n!==o&&Te(e,n,{get:()=>t[n],enumerable:!(r=Tr(t,n))||r.enumerable});return e};var x=(e,t,o)=>(o=e!=null?Mr(Fr(e)):{},oo(t||!e||!e.__esModule?Te(o,"default",{value:e,enumerable:!0}):o,e)),Ur=e=>oo(Te({},"__esModule",{value:!0}),e);var ro=(e,t,o)=>Lr(e,typeof t!="symbol"?t+"":t,o);var Zn={};Rr(Zn,{Azure:()=>Ho,Discord:()=>jo,Email:()=>V,EmailSignIn:()=>tt,EmailSignInButton:()=>Mt,GitHub:()=>qo,Google:()=>Tt,HubSpot:()=>Zo,LinkedIn:()=>er,Password:()=>Y,PasswordResetForm:()=>gt,PasswordResetRequestForm:()=>mt,SessionContext:()=>be,SessionProvider:()=>ve,SignInForm:()=>at,SignOutButton:()=>gr,SignUpForm:()=>nt,SignedIn:()=>Lt,SignedOut:()=>Rt,Slack:()=>rr,TenantSelector:()=>$t,UserInfo:()=>Wt,X:()=>sr,getCsrfToken:()=>Le,getProviders:()=>kt,getSession:()=>Ke,signIn:()=>k,signOut:()=>Ye,useEmailSignIn:()=>Re,useMe:()=>Ve,useResetPassword:()=>ue,useSession:()=>he,useSignIn:()=>Be,useSignUp:()=>ze,useTenantId:()=>_e,useTenants:()=>Se});module.exports=Ur(Zn);var ee=x(require("react")),et=require("@tanstack/react-query"),Lo=require("react-hook-form"),Ro=require("lucide-react");var h=x(require("react")),wo=require("@radix-ui/react-slot"),K=require("react-hook-form");function no(e){var t,o,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var n=e.length;for(t=0;t<n;t++)e[t]&&(o=no(e[t]))&&(r&&(r+=" "),r+=o)}else for(o in e)e[o]&&(r&&(r+=" "),r+=o);return r}function io(){for(var e,t,o=0,r="",n=arguments.length;o<n;o++)(e=arguments[o])&&(t=no(e))&&(r&&(r+=" "),r+=t);return r}var Ct="-",zr=e=>{let t=Ar(e),{conflictingClassGroups:o,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:a=>{let s=a.split(Ct);return s[0]===""&&s.length!==1&&s.shift(),lo(s,t)||Br(a)},getConflictingClassGroupIds:(a,s)=>{let l=o[a]||[];return s&&r[a]?[...l,...r[a]]:l}}},lo=(e,t)=>{var a;if(e.length===0)return t.classGroupId;let o=e[0],r=t.nextPart.get(o),n=r?lo(e.slice(1),r):void 0;if(n)return n;if(t.validators.length===0)return;let i=e.join(Ct);return(a=t.validators.find(({validator:s})=>s(i)))==null?void 0:a.classGroupId},so=/^\[(.+)\]$/,Br=e=>{if(so.test(e)){let t=so.exec(e)[1],o=t==null?void 0:t.substring(0,t.indexOf(":"));if(o)return"arbitrary.."+o}},Ar=e=>{let{theme:t,prefix:o}=e,r={nextPart:new Map,validators:[]};return Vr(Object.entries(e.classGroups),o).forEach(([i,a])=>{yt(a,r,i,t)}),r},yt=(e,t,o,r)=>{e.forEach(n=>{if(typeof n=="string"){let i=n===""?t:ao(t,n);i.classGroupId=o;return}if(typeof n=="function"){if(_r(n)){yt(n(r),t,o,r);return}t.validators.push({validator:n,classGroupId:o});return}Object.entries(n).forEach(([i,a])=>{yt(a,ao(t,i),o,r)})})},ao=(e,t)=>{let o=e;return t.split(Ct).forEach(r=>{o.nextPart.has(r)||o.nextPart.set(r,{nextPart:new Map,validators:[]}),o=o.nextPart.get(r)}),o},_r=e=>e.isThemeGetter,Vr=(e,t)=>t?e.map(([o,r])=>{let n=r.map(i=>typeof i=="string"?t+i:typeof i=="object"?Object.fromEntries(Object.entries(i).map(([a,s])=>[t+a,s])):i);return[o,n]}):e,Or=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,o=new Map,r=new Map,n=(i,a)=>{o.set(i,a),t++,t>e&&(t=0,r=o,o=new Map)};return{get(i){let a=o.get(i);if(a!==void 0)return a;if((a=r.get(i))!==void 0)return n(i,a),a},set(i,a){o.has(i)?o.set(i,a):n(i,a)}}},co="!",Hr=e=>{let{separator:t,experimentalParseClassName:o}=e,r=t.length===1,n=t[0],i=t.length,a=s=>{let l=[],d=0,m=0,c;for(let b=0;b<s.length;b++){let E=s[b];if(d===0){if(E===n&&(r||s.slice(b,b+i)===t)){l.push(s.slice(m,b)),m=b+i;continue}if(E==="/"){c=b;continue}}E==="["?d++:E==="]"&&d--}let w=l.length===0?s:s.substring(m),S=w.startsWith(co),C=S?w.substring(1):w,p=c&&c>m?c-m:void 0;return{modifiers:l,hasImportantModifier:S,baseClassName:C,maybePostfixModifierPosition:p}};return o?s=>o({className:s,parseClassName:a}):a},Gr=e=>{if(e.length<=1)return e;let t=[],o=[];return e.forEach(r=>{r[0]==="["?(t.push(...o.sort(),r),o=[]):o.push(r)}),t.push(...o.sort()),t},$r=e=>({cache:Or(e.cacheSize),parseClassName:Hr(e),...zr(e)}),jr=/\s+/,Wr=(e,t)=>{let{parseClassName:o,getClassGroupId:r,getConflictingClassGroupIds:n}=t,i=[],a=e.trim().split(jr),s="";for(let l=a.length-1;l>=0;l-=1){let d=a[l],{modifiers:m,hasImportantModifier:c,baseClassName:w,maybePostfixModifierPosition:S}=o(d),C=!!S,p=r(C?w.substring(0,S):w);if(!p){if(!C){s=d+(s.length>0?" "+s:s);continue}if(p=r(w),!p){s=d+(s.length>0?" "+s:s);continue}C=!1}let b=Gr(m).join(":"),E=c?b+co:b,A=E+p;if(i.includes(A))continue;i.push(A);let ke=n(p,C);for(let re=0;re<ke.length;++re){let Oe=ke[re];i.push(E+Oe)}s=d+(s.length>0?" "+s:s)}return s};function Qr(){let e=0,t,o,r="";for(;e<arguments.length;)(t=arguments[e++])&&(o=uo(t))&&(r&&(r+=" "),r+=o);return r}var uo=e=>{if(typeof e=="string")return e;let t,o="";for(let r=0;r<e.length;r++)e[r]&&(t=uo(e[r]))&&(o&&(o+=" "),o+=t);return o};function qr(e,...t){let o,r,n,i=a;function a(l){let d=t.reduce((m,c)=>c(m),e());return o=$r(d),r=o.cache.get,n=o.cache.set,i=s,s(l)}function s(l){let d=r(l);if(d)return d;let m=Wr(l,o);return n(l,m),m}return function(){return i(Qr.apply(null,arguments))}}var N=e=>{let t=o=>o[e]||[];return t.isThemeGetter=!0,t},mo=/^\[(?:([a-z-]+):)?(.+)\]$/i,Xr=/^\d+\/\d+$/,Jr=new Set(["px","full","screen"]),Zr=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Kr=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Yr=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,en=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,tn=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,$=e=>fe(e)||Jr.has(e)||Xr.test(e),X=e=>pe(e,"length",cn),fe=e=>!!e&&!Number.isNaN(Number(e)),xt=e=>pe(e,"number",fe),Ee=e=>!!e&&Number.isInteger(Number(e)),on=e=>e.endsWith("%")&&fe(e.slice(0,-1)),g=e=>mo.test(e),J=e=>Zr.test(e),rn=new Set(["length","size","percentage"]),nn=e=>pe(e,rn,fo),sn=e=>pe(e,"position",fo),an=new Set(["image","url"]),ln=e=>pe(e,an,mn),dn=e=>pe(e,"",un),Fe=()=>!0,pe=(e,t,o)=>{let r=mo.exec(e);return r?r[1]?typeof t=="string"?r[1]===t:t.has(r[1]):o(r[2]):!1},cn=e=>Kr.test(e)&&!Yr.test(e),fo=()=>!1,un=e=>en.test(e),mn=e=>tn.test(e);var fn=()=>{let e=N("colors"),t=N("spacing"),o=N("blur"),r=N("brightness"),n=N("borderColor"),i=N("borderRadius"),a=N("borderSpacing"),s=N("borderWidth"),l=N("contrast"),d=N("grayscale"),m=N("hueRotate"),c=N("invert"),w=N("gap"),S=N("gradientColorStops"),C=N("gradientColorStopPositions"),p=N("inset"),b=N("margin"),E=N("opacity"),A=N("padding"),ke=N("saturate"),re=N("scale"),Oe=N("sepia"),Xt=N("skew"),Jt=N("space"),Zt=N("translate"),bt=()=>["auto","contain","none"],ht=()=>["auto","hidden","clip","visible","scroll"],vt=()=>["auto",g,t],I=()=>[g,t],Kt=()=>["",$,X],He=()=>["auto",fe,g],Yt=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],Ge=()=>["solid","dashed","dotted","double","none"],eo=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],wt=()=>["start","end","center","between","around","evenly","stretch"],Me=()=>["","0",g],to=()=>["auto","avoid","all","avoid-page","page","left","right","column"],G=()=>[fe,g];return{cacheSize:500,separator:":",theme:{colors:[Fe],spacing:[$,X],blur:["none","",J,g],brightness:G(),borderColor:[e],borderRadius:["none","","full",J,g],borderSpacing:I(),borderWidth:Kt(),contrast:G(),grayscale:Me(),hueRotate:G(),invert:Me(),gap:I(),gradientColorStops:[e],gradientColorStopPositions:[on,X],inset:vt(),margin:vt(),opacity:G(),padding:I(),saturate:G(),scale:G(),sepia:Me(),skew:G(),space:I(),translate:I()},classGroups:{aspect:[{aspect:["auto","square","video",g]}],container:["container"],columns:[{columns:[J]}],"break-after":[{"break-after":to()}],"break-before":[{"break-before":to()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...Yt(),g]}],overflow:[{overflow:ht()}],"overflow-x":[{"overflow-x":ht()}],"overflow-y":[{"overflow-y":ht()}],overscroll:[{overscroll:bt()}],"overscroll-x":[{"overscroll-x":bt()}],"overscroll-y":[{"overscroll-y":bt()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[p]}],"inset-x":[{"inset-x":[p]}],"inset-y":[{"inset-y":[p]}],start:[{start:[p]}],end:[{end:[p]}],top:[{top:[p]}],right:[{right:[p]}],bottom:[{bottom:[p]}],left:[{left:[p]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",Ee,g]}],basis:[{basis:vt()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",g]}],grow:[{grow:Me()}],shrink:[{shrink:Me()}],order:[{order:["first","last","none",Ee,g]}],"grid-cols":[{"grid-cols":[Fe]}],"col-start-end":[{col:["auto",{span:["full",Ee,g]},g]}],"col-start":[{"col-start":He()}],"col-end":[{"col-end":He()}],"grid-rows":[{"grid-rows":[Fe]}],"row-start-end":[{row:["auto",{span:[Ee,g]},g]}],"row-start":[{"row-start":He()}],"row-end":[{"row-end":He()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",g]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",g]}],gap:[{gap:[w]}],"gap-x":[{"gap-x":[w]}],"gap-y":[{"gap-y":[w]}],"justify-content":[{justify:["normal",...wt()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...wt(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...wt(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[A]}],px:[{px:[A]}],py:[{py:[A]}],ps:[{ps:[A]}],pe:[{pe:[A]}],pt:[{pt:[A]}],pr:[{pr:[A]}],pb:[{pb:[A]}],pl:[{pl:[A]}],m:[{m:[b]}],mx:[{mx:[b]}],my:[{my:[b]}],ms:[{ms:[b]}],me:[{me:[b]}],mt:[{mt:[b]}],mr:[{mr:[b]}],mb:[{mb:[b]}],ml:[{ml:[b]}],"space-x":[{"space-x":[Jt]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[Jt]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",g,t]}],"min-w":[{"min-w":[g,t,"min","max","fit"]}],"max-w":[{"max-w":[g,t,"none","full","min","max","fit","prose",{screen:[J]},J]}],h:[{h:[g,t,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[g,t,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[g,t,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[g,t,"auto","min","max","fit"]}],"font-size":[{text:["base",J,X]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",xt]}],"font-family":[{font:[Fe]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractons"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",g]}],"line-clamp":[{"line-clamp":["none",fe,xt]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",$,g]}],"list-image":[{"list-image":["none",g]}],"list-style-type":[{list:["none","disc","decimal",g]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[e]}],"placeholder-opacity":[{"placeholder-opacity":[E]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[e]}],"text-opacity":[{"text-opacity":[E]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...Ge(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",$,X]}],"underline-offset":[{"underline-offset":["auto",$,g]}],"text-decoration-color":[{decoration:[e]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:I()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",g]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",g]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[E]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...Yt(),sn]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",nn]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},ln]}],"bg-color":[{bg:[e]}],"gradient-from-pos":[{from:[C]}],"gradient-via-pos":[{via:[C]}],"gradient-to-pos":[{to:[C]}],"gradient-from":[{from:[S]}],"gradient-via":[{via:[S]}],"gradient-to":[{to:[S]}],rounded:[{rounded:[i]}],"rounded-s":[{"rounded-s":[i]}],"rounded-e":[{"rounded-e":[i]}],"rounded-t":[{"rounded-t":[i]}],"rounded-r":[{"rounded-r":[i]}],"rounded-b":[{"rounded-b":[i]}],"rounded-l":[{"rounded-l":[i]}],"rounded-ss":[{"rounded-ss":[i]}],"rounded-se":[{"rounded-se":[i]}],"rounded-ee":[{"rounded-ee":[i]}],"rounded-es":[{"rounded-es":[i]}],"rounded-tl":[{"rounded-tl":[i]}],"rounded-tr":[{"rounded-tr":[i]}],"rounded-br":[{"rounded-br":[i]}],"rounded-bl":[{"rounded-bl":[i]}],"border-w":[{border:[s]}],"border-w-x":[{"border-x":[s]}],"border-w-y":[{"border-y":[s]}],"border-w-s":[{"border-s":[s]}],"border-w-e":[{"border-e":[s]}],"border-w-t":[{"border-t":[s]}],"border-w-r":[{"border-r":[s]}],"border-w-b":[{"border-b":[s]}],"border-w-l":[{"border-l":[s]}],"border-opacity":[{"border-opacity":[E]}],"border-style":[{border:[...Ge(),"hidden"]}],"divide-x":[{"divide-x":[s]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[s]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[E]}],"divide-style":[{divide:Ge()}],"border-color":[{border:[n]}],"border-color-x":[{"border-x":[n]}],"border-color-y":[{"border-y":[n]}],"border-color-t":[{"border-t":[n]}],"border-color-r":[{"border-r":[n]}],"border-color-b":[{"border-b":[n]}],"border-color-l":[{"border-l":[n]}],"divide-color":[{divide:[n]}],"outline-style":[{outline:["",...Ge()]}],"outline-offset":[{"outline-offset":[$,g]}],"outline-w":[{outline:[$,X]}],"outline-color":[{outline:[e]}],"ring-w":[{ring:Kt()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[e]}],"ring-opacity":[{"ring-opacity":[E]}],"ring-offset-w":[{"ring-offset":[$,X]}],"ring-offset-color":[{"ring-offset":[e]}],shadow:[{shadow:["","inner","none",J,dn]}],"shadow-color":[{shadow:[Fe]}],opacity:[{opacity:[E]}],"mix-blend":[{"mix-blend":[...eo(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":eo()}],filter:[{filter:["","none"]}],blur:[{blur:[o]}],brightness:[{brightness:[r]}],contrast:[{contrast:[l]}],"drop-shadow":[{"drop-shadow":["","none",J,g]}],grayscale:[{grayscale:[d]}],"hue-rotate":[{"hue-rotate":[m]}],invert:[{invert:[c]}],saturate:[{saturate:[ke]}],sepia:[{sepia:[Oe]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[o]}],"backdrop-brightness":[{"backdrop-brightness":[r]}],"backdrop-contrast":[{"backdrop-contrast":[l]}],"backdrop-grayscale":[{"backdrop-grayscale":[d]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[m]}],"backdrop-invert":[{"backdrop-invert":[c]}],"backdrop-opacity":[{"backdrop-opacity":[E]}],"backdrop-saturate":[{"backdrop-saturate":[ke]}],"backdrop-sepia":[{"backdrop-sepia":[Oe]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[a]}],"border-spacing-x":[{"border-spacing-x":[a]}],"border-spacing-y":[{"border-spacing-y":[a]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",g]}],duration:[{duration:G()}],ease:[{ease:["linear","in","out","in-out",g]}],delay:[{delay:G()}],animate:[{animate:["none","spin","ping","pulse","bounce",g]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[re]}],"scale-x":[{"scale-x":[re]}],"scale-y":[{"scale-y":[re]}],rotate:[{rotate:[Ee,g]}],"translate-x":[{"translate-x":[Zt]}],"translate-y":[{"translate-y":[Zt]}],"skew-x":[{"skew-x":[Xt]}],"skew-y":[{"skew-y":[Xt]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",g]}],accent:[{accent:["auto",e]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",g]}],"caret-color":[{caret:[e]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":I()}],"scroll-mx":[{"scroll-mx":I()}],"scroll-my":[{"scroll-my":I()}],"scroll-ms":[{"scroll-ms":I()}],"scroll-me":[{"scroll-me":I()}],"scroll-mt":[{"scroll-mt":I()}],"scroll-mr":[{"scroll-mr":I()}],"scroll-mb":[{"scroll-mb":I()}],"scroll-ml":[{"scroll-ml":I()}],"scroll-p":[{"scroll-p":I()}],"scroll-px":[{"scroll-px":I()}],"scroll-py":[{"scroll-py":I()}],"scroll-ps":[{"scroll-ps":I()}],"scroll-pe":[{"scroll-pe":I()}],"scroll-pt":[{"scroll-pt":I()}],"scroll-pr":[{"scroll-pr":I()}],"scroll-pb":[{"scroll-pb":I()}],"scroll-pl":[{"scroll-pl":I()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",g]}],fill:[{fill:[e,"none"]}],"stroke-w":[{stroke:[$,X,xt]}],stroke:[{stroke:[e,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}};var po=qr(fn);function u(...e){return po(io(e))}var je=x(require("react")),Pt=x(require("@radix-ui/react-label"));function go(e){var t,o,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(o=go(e[t]))&&(r&&(r+=" "),r+=o);else for(t in e)e[t]&&(r&&(r+=" "),r+=t);return r}function bo(){for(var e,t,o=0,r="";o<arguments.length;)(e=arguments[o++])&&(t=go(e))&&(r&&(r+=" "),r+=t);return r}var ho=e=>typeof e=="boolean"?"".concat(e):e===0?"0":e,vo=bo,$e=(e,t)=>o=>{var r;if((t==null?void 0:t.variants)==null)return vo(e,o==null?void 0:o.class,o==null?void 0:o.className);let{variants:n,defaultVariants:i}=t,a=Object.keys(n).map(d=>{let m=o==null?void 0:o[d],c=i==null?void 0:i[d];if(m===null)return null;let w=ho(m)||ho(c);return n[d][w]}),s=o&&Object.entries(o).reduce((d,m)=>{let[c,w]=m;return w===void 0||(d[c]=w),d},{}),l=t==null||(r=t.compoundVariants)===null||r===void 0?void 0:r.reduce((d,m)=>{let{class:c,className:w,...S}=m;return Object.entries(S).every(C=>{let[p,b]=C;return Array.isArray(b)?b.includes({...i,...s}[p]):{...i,...s}[p]===b})?[...d,c,w]:d},[]);return vo(e,a,l,o==null?void 0:o.class,o==null?void 0:o.className)};var pn=$e("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),St=je.forwardRef(({className:e,...t},o)=>je.createElement(Pt.Root,{ref:o,className:u(pn(),e),...t}));St.displayName=Pt.Root.displayName;var We=x(require("react"));var Z=We.forwardRef(({className:e,type:t,...o},r)=>We.createElement("input",{type:t,className:u("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",e),ref:r,...o}));Z.displayName="Input";var _=K.FormProvider,xo=h.createContext({}),ge=({...e})=>h.createElement(xo.Provider,{value:{name:e.name}},h.createElement(K.Controller,{...e})),Qe=()=>{let e=h.useContext(xo),t=h.useContext(yo),{getFieldState:o,formState:r}=(0,K.useFormContext)(),n=o(e.name,r);if(!e)throw new Error("useFormField should be used within <FormField>");let{id:i}=t;return{id:i,name:e.name,formItemId:`${i}-form-item`,formDescriptionId:`${i}-form-item-description`,formMessageId:`${i}-form-item-message`,...n}},yo=h.createContext({}),ne=h.forwardRef(({className:e,...t},o)=>{let r=h.useId();return h.createElement(yo.Provider,{value:{id:r}},h.createElement("div",{ref:o,className:u("py-2",e),...t}))});ne.displayName="FormItem";var ie=h.forwardRef(({className:e,...t},o)=>{let{error:r,formItemId:n}=Qe();return h.createElement(St,{ref:o,className:u(r&&"text-destructive",e),htmlFor:n,...t})});ie.displayName="FormLabel";var se=h.forwardRef(({...e},t)=>{let{error:o,formItemId:r,formDescriptionId:n,formMessageId:i}=Qe();return h.createElement(wo.Slot,{ref:t,id:r,"aria-describedby":o?`${n} ${i}`:`${n}`,"aria-invalid":!!o,...e})});se.displayName="FormControl";var ae=h.forwardRef(({className:e,...t},o)=>{let{formDescriptionId:r}=Qe();return h.createElement("p",{ref:o,id:r,className:u("text-sm text-muted-foreground",e),...t})});ae.displayName="FormDescription";var le=h.forwardRef(({className:e,children:t,...o},r)=>{let{error:n,formMessageId:i}=Qe(),a=n?String(n==null?void 0:n.message):t;return a?h.createElement("p",{ref:r,id:i,className:u("text-sm font-medium text-destructive",e),...o},a):null});le.displayName="FormMessage";var V=()=>{let e=(0,K.useFormContext)();return h.createElement(ge,{control:e.control,name:"email",render:({field:t})=>h.createElement(ne,null,h.createElement(ie,null,"Email"),h.createElement(se,null,h.createElement(Z,{placeholder:"Email",...t,autoComplete:"current-email",required:!0})),h.createElement(ae,null,"Your email address"),h.createElement(le,null))})},Y=()=>{let e=(0,K.useFormContext)();return h.createElement(ge,{control:e.control,name:"password",render:({field:t})=>h.createElement(ne,null,h.createElement(ie,null,"Password"),h.createElement(se,null,h.createElement(Z,{placeholder:"Password",...t,type:"password",autoComplete:"current-password",required:!0})),h.createElement(ae,null,"The desired password"),h.createElement(le,null))})};var j=x(require("react")),qe=require("@radix-ui/react-slot");var Co=require("lucide-react");var M=$e("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 gap-1",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),R=j.forwardRef(({disabled:e,children:t,className:o,loading:r,variant:n,size:i,asChild:a=!1,...s},l)=>j.createElement(a?qe.Slot:"button",{className:u(M({variant:n,size:i,className:o})),ref:l,disabled:r||e,...s},j.createElement(qe.Slottable,null,r?j.createElement("div",{className:"relative flex items-center justify-center"},j.createElement("div",{className:"absolute"},j.createElement(Co.Loader2,{className:"animate-spin"})),j.createElement("span",{className:"opacity-0"},t)):t)));R.displayName="Button";var Do=require("@tanstack/react-query");var z=x(require("react")),U=require("next-auth/client/_utils");var Nt=class extends Error{constructor(o){var r;super((r=o==null?void 0:o.message)!=null?r:o);ro(this,"code");this.name="UnknownError",this.code=o.code,o instanceof Error&&(this.stack=o.stack)}toJSON(){return{name:this.name,message:this.message,stack:this.stack}}};function It(e){var t;return e instanceof Error&&!(e instanceof Nt)?{message:e.message,stack:e.stack,name:e.name}:(gn(e)&&(e.error=It(e.error),e.message=(t=e.message)!=null?t:e.error.message),e)}function gn(e){return!!(e!=null&&e.error)}var Xe={error(e,t){t=It(t),console.error(`[nile-auth][error][${e}]`,t.message,t)},warn(e){console.warn(`[nile-auth][warn][${e}]`)},debug(e,t){console.log(`[next-auth][debug][${e}]`,t)}};var Po=Xe;function So(e=Xe,t){try{if(typeof window=="undefined")return e;let o={};for(let r in e)o[r]=(n,i)=>{Xe[r](n,i),r==="error"&&(i=It(i)),i.client=!0;let a=`${t}/_log`,s=new URLSearchParams({level:r,code:n,...i});return navigator.sendBeacon?navigator.sendBeacon(a,s):fetch(a,{method:"POST",body:s,keepalive:!0})};return o}catch(o){return Xe}}var W=typeof process!="undefined"?process==null?void 0:process.env:{},No,Io,ko,Mo,y={baseUrl:Je((No=W.NEXTAUTH_URL)!=null?No:W.VERCEL_URL).origin,basePath:Je(W.NEXTAUTH_URL).path,baseUrlServer:Je((ko=(Io=W.NEXTAUTH_URL_INTERNAL)!=null?Io:W.NEXTAUTH_URL)!=null?ko:W.VERCEL_URL).origin,basePathServer:Je((Mo=W.NEXTAUTH_URL_INTERNAL)!=null?Mo:W.NEXTAUTH_URL).path,_lastSync:0,_session:void 0,_getSession:()=>{}},To=W.NODE_ENV;function Je(e){let t=new URL("http://localhost:3000/api/auth");e&&!e.startsWith("http")&&(e=`https://${e}`);let o=new URL(e!=null?e:t),r=(o.pathname==="/"?t.pathname:o.pathname).replace(/\/$/,""),n=`${o.origin}${r}`;return{origin:o.origin,host:o.host,path:r,base:n,toString:()=>n}}var Ze=(0,U.BroadcastChannel)(),De=So(Po,y.basePath);function bn(){let[e,t]=z.default.useState(typeof navigator!="undefined"?navigator.onLine:!1),o=()=>t(!0),r=()=>t(!1);return z.default.useEffect(()=>(window.addEventListener("online",o),window.addEventListener("offline",r),()=>{window.removeEventListener("online",o),window.removeEventListener("offline",r)}),[]),e}var Eo,Fo,be=(Fo=(Eo=z.default).createContext)==null?void 0:Fo.call(Eo,void 0);function he(e){if(!be)throw new Error("React Context is unavailable in Server Components");let t=z.default.useContext(be);if(!t&&To!=="production")throw new Error("[next-auth]: `useSession` must be wrapped in a <SessionProvider />");let{required:o,onUnauthenticated:r}=e!=null?e:{},n=o&&t.status==="unauthenticated";return z.default.useEffect(()=>{if(n){let i=`/api/auth/signin?${new URLSearchParams({error:"SessionRequired",callbackUrl:window.location.href})}`;r?r():window.location.href=i}},[n,r]),n?{data:t.data,update:t.update,status:"loading"}:t}async function Ke(e){var o;let t=await(0,U.fetchData)("session",y,De,e);return((o=e==null?void 0:e.broadcast)==null||o)&&Ze.post({event:"session",data:{trigger:"getSession"}}),t}async function Le(e){let t=await(0,U.fetchData)("csrf",y,De,e);return t==null?void 0:t.csrfToken}async function kt(){return await(0,U.fetchData)("providers",y,De)}async function k(e,t,o){var p;let{callbackUrl:r=window.location.href,redirect:n=!0}=t!=null?t:{},i=(0,U.apiBaseUrl)(y),a=await kt();if(!a)return{error:"No providers enabled"};if(!e||!(e in a))return{error:`Provider ${e} not enabled`};let s=a[e].type==="credentials",l=a[e].type==="email",d=s||l,c=`${`${i}/${s?"callback":"signin"}/${e}`}${o?`?${new URLSearchParams(o)}`:""}`,w=await fetch(c,{method:"post",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({...t,csrfToken:await Le(),callbackUrl:r,json:!0})}),S=await w.json();if(n||!d){let b=(p=S.url)!=null?p:r;window.location.href=b,b.includes("#")&&window.location.reload();return}let C=new URL(S.url).searchParams.get("error");return w.ok&&await y._getSession({event:"storage"}),{error:C,status:w.status,ok:w.ok,url:C?null:S.url}}async function Ye(e){var a,s;let{callbackUrl:t=window.location.href}=e!=null?e:{},o=(0,U.apiBaseUrl)(y),r={method:"post",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({csrfToken:await Le(),callbackUrl:t,json:!0})},i=await(await fetch(`${o}/signout`,r)).json();if(Ze.post({event:"session",data:{trigger:"signout"}}),(a=e==null?void 0:e.redirect)==null||a){let l=(s=i.url)!=null?s:t;window.location.href=l,l.includes("#")&&window.location.reload();return}return await y._getSession({event:"storage"}),i}function ve(e){if(!be)throw new Error("React Context is unavailable in Server Components");let{children:t,basePath:o,refetchInterval:r,refetchWhenOffline:n}=e;o&&(y.basePath=o);let i=e.session!==void 0;y._lastSync=i?(0,U.now)():0;let[a,s]=z.default.useState(()=>(i&&(y._session=e.session),e.session)),[l,d]=z.default.useState(!i);z.default.useEffect(()=>(y._getSession=async({event:C}={})=>{try{let p=C==="storage";if(p||y._session===void 0){y._lastSync=(0,U.now)(),y._session=await Ke({broadcast:!p}),s(y._session);return}if(!C||y._session===null||(0,U.now)()<y._lastSync)return;y._lastSync=(0,U.now)(),y._session=await Ke(),s(y._session)}catch(p){De.error("CLIENT_SESSION_ERROR",p)}finally{d(!1)}},y._getSession(),()=>{y._lastSync=0,y._session=void 0,y._getSession=()=>{}}),[]),z.default.useEffect(()=>{let C=Ze.receive(()=>y._getSession({event:"storage"}));return()=>C()},[]),z.default.useEffect(()=>{let{refetchOnWindowFocus:C=!0}=e,p=()=>{C&&document.visibilityState==="visible"&&y._getSession({event:"visibilitychange"})};return document.addEventListener("visibilitychange",p,!1),()=>document.removeEventListener("visibilitychange",p,!1)},[e.refetchOnWindowFocus]);let m=bn(),c=n!==!1||m;z.default.useEffect(()=>{if(r&&c){let C=setInterval(()=>{y._session&&y._getSession({event:"poll"})},r*1e3);return()=>clearInterval(C)}},[r,c]);function w(C,p){return C?"loading":p?"authenticated":"unauthenticated"}let S=z.default.useMemo(()=>({data:a,status:w(l,a),async update(C){if(l||!a)return;d(!0);let p=await(0,U.fetchData)("session",y,De,{req:{body:{csrfToken:await Le(),data:C}}});return d(!1),p&&(s(p),Ze.post({event:"session",data:{trigger:"getSession"}})),p}}),[a,l]);return z.default.createElement(be.Provider,{value:S},t)}function Re(e){let{onSuccess:t,onError:o,beforeMutate:r,callbackUrl:n,redirect:i=!1}=e!=null?e:{};return(0,Do.useMutation)({mutationFn:async s=>{let l={...s,callbackUrl:n,redirect:i},d=r&&r(l),m=d!=null?d:l,c=await k("email",m);if(c!=null&&c.error)throw new Error(c.error);return c},onSuccess:t,onError:o}).mutate}var hn=new et.QueryClient;function tt(e){let{client:t,...o}=e!=null?e:{};return ee.default.createElement(et.QueryClientProvider,{client:t!=null?t:hn},ee.default.createElement(vn,{...o}))}function vn(e){let t=Re(e),o=(0,Lo.useForm)({defaultValues:{email:""}});return ee.default.createElement(_,{...o},ee.default.createElement("form",{onSubmit:o.handleSubmit(({email:r})=>t&&t({email:r})),className:"space-y-8"},ee.default.createElement(V,null),ee.default.createElement(R,{type:"submit",className:"flex flex-row gap-2"},ee.default.createElement(Ro.Mail,null),"Sign in with email")))}var Uo=require("@radix-ui/react-slot"),Ue=x(require("react")),zo=require("lucide-react");var Bo=Ue.default.forwardRef(({callbackUrl:e,className:t,variant:o,size:r,asChild:n=!1,redirect:i=!1,buttonText:a="Continue with Email",email:s,onFailure:l,onSent:d,...m},c)=>Ue.default.createElement(n?Uo.Slot:"button",{className:u(M({variant:o,size:r,className:t})),ref:c,onClick:async()=>{let S=await k("email",{email:s,callbackUrl:e,redirect:i});S&&"error"in S?l&&l(S):d&&d()},...m},m.children?m.children:Ue.default.createElement("div",{className:"flex flex-row gap-2 items-center"},Ue.default.createElement(zo.Mail,null),a)));Bo.displayName="EmailSignInButton";var Mt=Bo;var B=x(require("react")),Ao=require("@radix-ui/react-slot");var _o=B.default.forwardRef(({callbackUrl:e,className:t,variant:o,size:r,buttonText:n="Continue with Google",asChild:i=!1,...a},s)=>B.default.createElement(i?Ao.Slot:"button",{className:u(M({variant:o,size:r,className:t}),"bg-[#4285f4] hover:bg-[#4285f4] hover:bg-opacity-85 pl-[3px] text-white"),ref:s,onClick:()=>{k("google",{callbackUrl:e})},...a},B.default.createElement("div",{className:"inline-flex items-center flex-1 justify-between font-roboto rounded-[4px] gap-4 google-logo"},B.default.createElement("div",{style:{background:"white",borderRadius:"4px",padding:"0.5rem"}},B.default.createElement(wn,null)),n)));_o.displayName="GoogleSSOButton";var Tt=_o;function wn(){return B.default.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18"},B.default.createElement("g",{fill:"#000",fillRule:"evenodd"},B.default.createElement("path",{d:"M9 3.48c1.69 0 2.83.73 3.48 1.34l2.54-2.48C13.46.89 11.43 0 9 0 5.48 0 2.44 2.02.96 4.96l2.91 2.26C4.6 5.05 6.62 3.48 9 3.48z",fill:"#EA4335"}),B.default.createElement("path",{d:"M17.64 9.2c0-.74-.06-1.28-.19-1.84H9v3.34h4.96c-.1.83-.64 2.08-1.84 2.92l2.84 2.2c1.7-1.57 2.68-3.88 2.68-6.62z",fill:"#4285F4"}),B.default.createElement("path",{d:"M3.88 10.78A5.54 5.54 0 0 1 3.58 9c0-.62.11-1.22.29-1.78L.96 4.96A9.008 9.008 0 0 0 0 9c0 1.45.35 2.82.96 4.04l2.92-2.26z",fill:"#FBBC05"}),B.default.createElement("path",{d:"M9 18c2.43 0 4.47-.8 5.96-2.18l-2.84-2.2c-.76.53-1.78.9-3.12.9-2.38 0-4.4-1.57-5.12-3.74L.97 13.04C2.45 15.98 5.48 18 9 18z",fill:"#34A853"}),B.default.createElement("path",{fill:"none",d:"M0 0h18v18H0z"})))}var O=x(require("react")),Vo=require("@radix-ui/react-slot");var Oo=O.default.forwardRef(({callbackUrl:e,className:t,buttonText:o="Continue with Microsoft",variant:r,size:n,asChild:i=!1,...a},s)=>O.default.createElement(i?Vo.Slot:"button",{className:u(M({variant:r,size:n,className:t}),"bg-[#0078d4] hover:bg-[#0078d4] hover:bg-opacity-85 pl-[3px] text-white gap-4 transition-colors shadow-md"),ref:s,onClick:()=>{k("azure-ad",{callbackUrl:e})},...a},O.default.createElement(xn,null),o));Oo.displayName="AzureSignInButton";var Ho=Oo,xn=()=>O.default.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 23 23",className:"w-5 h-5 ml-3"},O.default.createElement("path",{fill:"#f3f3f3",d:"M0 0h23v23H0z"}),O.default.createElement("path",{fill:"#f35325",d:"M1 1h10v10H1z"}),O.default.createElement("path",{fill:"#81bc06",d:"M12 1h10v10H12z"}),O.default.createElement("path",{fill:"#05a6f0",d:"M1 12h10v10H1z"}),O.default.createElement("path",{fill:"#ffba08",d:"M12 12h10v10H12z"}));var Q=x(require("react")),Go=require("@radix-ui/react-slot");var $o=Q.default.forwardRef(({callbackUrl:e,className:t,buttonText:o="Continue with Discord",variant:r,size:n,asChild:i=!1,...a},s)=>Q.default.createElement(i?Go.Slot:"button",{className:u(M({variant:r,size:n,className:t}),"bg-[#5865F2] hover:bg-[#5865F2] hover:bg-opacity-85 pl-[3px] gap-4 transition-colors border shadow-md text-white"),ref:s,onClick:()=>{k("discord",{callbackUrl:e})},...a},Q.default.createElement(yn,null),o));$o.displayName="DiscordSignInButton";var jo=$o,yn=()=>Q.default.createElement("svg",{className:"w-5 h-5 ml-3",viewBox:"0 0 75 59",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},Q.default.createElement("title",null,"discord-icon"),Q.default.createElement("g",{id:"Page-1",stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd"},Q.default.createElement("g",{id:"discord-icon",transform:"translate(2.000000, 2.411745)",fillRule:"nonzero",stroke:"#636262",strokeWidth:"0"},Q.default.createElement("path",{d:"M60.1044999,4.48605546 C55.5791999,2.40965546 50.7264999,0.879855461 45.6526999,0.00367546142 C45.5602999,-0.0132345386 45.4679999,0.0290244614 45.4203999,0.113544461 C44.7962999,1.22355546 44.1049999,2.67165546 43.6208999,3.80985546 C38.1636999,2.99285546 32.7344999,2.99285546 27.3891999,3.80985546 C26.9049999,2.64635546 26.1885999,1.22355546 25.5616999,0.113544461 C25.5140999,0.0318444614 25.4217999,-0.0104145386 25.3293999,0.00367546142 C20.2583999,0.877055461 15.4056999,2.40685546 10.8775999,4.48605546 C10.8383999,4.50295546 10.8047999,4.53115546 10.7824999,4.56775546 C1.57794989,18.3191555 -0.94356111,31.7325555 0.29340789,44.9796555 C0.29900489,45.0444555 0.33538589,45.1064555 0.38576089,45.1458555 C6.45865989,49.6056555 12.3412999,52.3131555 18.1146999,54.1077555 C18.2070999,54.1359555 18.3049999,54.1021555 18.3637999,54.0260555 C19.7294999,52.1610555 20.9468999,50.1945555 21.9906999,48.1265555 C22.0522999,48.0054555 21.9934999,47.8617555 21.8675999,47.8138555 C19.9365999,47.0813555 18.0978999,46.1882555 16.3291999,45.1740555 C16.1892999,45.0923555 16.1780999,44.8922555 16.3067999,44.7964555 C16.6789999,44.5175555 17.0512999,44.2273555 17.4066999,43.9343555 C17.4709999,43.8808555 17.5605999,43.8695555 17.6361999,43.9033555 C29.2557999,49.2084555 41.8353999,49.2084555 53.3178999,43.9033555 C53.3934999,43.8667555 53.4830999,43.8780555 53.5501999,43.9315555 C53.9056999,44.2245555 54.2778999,44.5175555 54.6528999,44.7964555 C54.7815999,44.8922555 54.7731999,45.0923555 54.6332999,45.1740555 C52.8645999,46.2079555 51.0258999,47.0813555 49.0920999,47.8110555 C48.9661999,47.8589555 48.9101999,48.0054555 48.9717999,48.1265555 C50.0379999,50.1916555 51.2553999,52.1581555 52.5958999,54.0232555 C52.6518999,54.1021555 52.7525999,54.1359555 52.8449999,54.1077555 C58.6463999,52.3131555 64.5289999,49.6056555 70.6018999,45.1458555 C70.6550999,45.1064555 70.6886999,45.0472555 70.6942999,44.9824555 C72.1746999,29.6673555 68.2146999,16.3639555 60.1967999,4.57055546 C60.1771999,4.53115546 60.1436999,4.50295546 60.1044999,4.48605546 Z M23.7258999,36.9135555 C20.2275999,36.9135555 17.3450999,33.7018555 17.3450999,29.7575555 C17.3450999,25.8132555 20.1716999,22.6015555 23.7258999,22.6015555 C27.3079999,22.6015555 30.1625999,25.8414555 30.1065999,29.7575555 C30.1065999,33.7018555 27.2799999,36.9135555 23.7258999,36.9135555 Z M47.3177999,36.9135555 C43.8195999,36.9135555 40.9370999,33.7018555 40.9370999,29.7575555 C40.9370999,25.8132555 43.7635999,22.6015555 47.3177999,22.6015555 C50.8999999,22.6015555 53.7544999,25.8414555 53.6985999,29.7575555 C53.6985999,33.7018555 50.8999999,36.9135555 47.3177999,36.9135555 Z",id:"Shape",fill:"white"}))));var we=x(require("react")),Wo=require("@radix-ui/react-slot");var Qo=we.default.forwardRef(({callbackUrl:e,className:t,buttonText:o="Continue with GitHub",variant:r,size:n,asChild:i=!1,...a},s)=>we.default.createElement(i?Wo.Slot:"button",{className:u(M({variant:r,size:n,className:t}),"bg-black hover:bg-slate-800 pl-[3px] text-white gap-4 transition-colors shadow-md"),ref:s,onClick:()=>{k("github",{callbackUrl:e})},...a},we.default.createElement(Cn,null),o));Qo.displayName="GitHubSignInButton";var qo=Qo,Cn=()=>we.default.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32.58 31.77",fill:"currentColor",className:"w-5 h-5 ml-3"},we.default.createElement("path",{fill:"#FFFFFF",d:"M16.29,0a16.29,16.29,0,0,0-5.15,31.75c.82.15,1.11-.36,1.11-.79s0-1.41,0-2.77C7.7,29.18,6.74,26,6.74,26a4.36,4.36,0,0,0-1.81-2.39c-1.47-1,.12-1,.12-1a3.43,3.43,0,0,1,2.49,1.68,3.48,3.48,0,0,0,4.74,1.36,3.46,3.46,0,0,1,1-2.18c-3.62-.41-7.42-1.81-7.42-8a6.3,6.3,0,0,1,1.67-4.37,5.94,5.94,0,0,1,.16-4.31s1.37-.44,4.48,1.67a15.41,15.41,0,0,1,8.16,0c3.11-2.11,4.47-1.67,4.47-1.67A5.91,5.91,0,0,1,25,11.07a6.3,6.3,0,0,1,1.67,4.37c0,6.26-3.81,7.63-7.44,8a3.85,3.85,0,0,1,1.11,3c0,2.18,0,3.94,0,4.47s.29.94,1.12.78A16.29,16.29,0,0,0,16.29,0Z"}));var xe=x(require("react")),Xo=require("@radix-ui/react-slot");var Jo=xe.default.forwardRef(({callbackUrl:e,className:t,buttonText:o="Continue with HubSpot",variant:r,size:n,asChild:i=!1,...a},s)=>xe.default.createElement(i?Xo.Slot:"button",{className:u(M({variant:r,size:n,className:t}),"bg-[#ff7a59] hover:bg-[#ff7a59] hover:bg-opacity-85 pl-[3px] text-white gap-4 transition-colors shadow-md"),ref:s,onClick:()=>{k("hubspot",{callbackUrl:e})},...a},xe.default.createElement(Pn,null),o));Jo.displayName="HubSpotSignInButton";var Zo=Jo,Pn=()=>xe.default.createElement("svg",{className:"w-5 h-5 ml-3",viewBox:"6.20856283 .64498824 244.26943717 251.24701176",xmlns:"http://www.w3.org/2000/svg"},xe.default.createElement("path",{d:"m191.385 85.694v-29.506a22.722 22.722 0 0 0 13.101-20.48v-.677c0-12.549-10.173-22.722-22.721-22.722h-.678c-12.549 0-22.722 10.173-22.722 22.722v.677a22.722 22.722 0 0 0 13.101 20.48v29.506a64.342 64.342 0 0 0 -30.594 13.47l-80.922-63.03c.577-2.083.878-4.225.912-6.375a25.6 25.6 0 1 0 -25.633 25.55 25.323 25.323 0 0 0 12.607-3.43l79.685 62.007c-14.65 22.131-14.258 50.974.987 72.7l-24.236 24.243c-1.96-.626-4-.959-6.057-.987-11.607.01-21.01 9.423-21.007 21.03.003 11.606 9.412 21.014 21.018 21.017 11.607.003 21.02-9.4 21.03-21.007a20.747 20.747 0 0 0 -.988-6.056l23.976-23.985c21.423 16.492 50.846 17.913 73.759 3.562 22.912-14.352 34.475-41.446 28.985-67.918-5.49-26.473-26.873-46.734-53.603-50.792m-9.938 97.044a33.17 33.17 0 1 1 0-66.316c17.85.625 32 15.272 32.01 33.134.008 17.86-14.127 32.522-31.977 33.165",fill:"white"}));var de=x(require("react")),Ko=require("@radix-ui/react-slot");var Yo=de.default.forwardRef(({callbackUrl:e,className:t,buttonText:o="Continue with LinkedIn",variant:r,size:n,asChild:i=!1,...a},s)=>de.default.createElement(i?Ko.Slot:"button",{className:u(M({variant:r,size:n,className:t}),"bg-[#0288D1] hover:bg-[#0288D1] pl-[3px] hover:bg-opacity-85 gap-4 transition-colors shadow-md text-white"),ref:s,onClick:()=>{k("linkedin",{callbackUrl:e})},...a},de.default.createElement(Sn,null),o));Yo.displayName="LinkedInSignInButton";var er=Yo,Sn=()=>de.default.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 48 48",className:"w-6 h-6 ml-3"},de.default.createElement("path",{fill:"#fff",d:"M42,37c0,2.762-2.238,5-5,5H11c-2.761,0-5-2.238-5-5V11c0-2.762,2.239-5,5-5h26c2.762,0,5,2.238,5,5V37z"}),de.default.createElement("path",{fill:"#0288D1",d:"M12 19H17V36H12zM14.485 17h-.028C12.965 17 12 15.888 12 14.499 12 13.08 12.995 12 14.514 12c1.521 0 2.458 1.08 2.486 2.499C17 15.887 16.035 17 14.485 17zM36 36h-5v-9.099c0-2.198-1.225-3.698-3.192-3.698-1.501 0-2.313 1.012-2.707 1.99C24.957 25.543 25 26.511 25 27v9h-5V19h5v2.616C25.721 20.5 26.85 19 29.738 19c3.578 0 6.261 2.25 6.261 7.274L36 36 36 36z"}));var H=x(require("react")),tr=require("@radix-ui/react-slot");var or=H.default.forwardRef(({callbackUrl:e,className:t,buttonText:o="Continue with Slack",variant:r,size:n,asChild:i=!1,...a},s)=>H.default.createElement(i?tr.Slot:"button",{className:u(M({variant:r,size:n,className:t}),"bg-[#4A154B] hover:bg-[#4A154B] pl-[3px] hover:bg-opacity-85 gap-4 transition-colors shadow-md text-white"),ref:s,onClick:()=>{k("slack",{callbackUrl:e})},...a},H.default.createElement(Nn,null),o));or.displayName="SlackSignInButton";var rr=or,Nn=()=>H.default.createElement("svg",{enableBackground:"new 0 0 2447.6 2452.5",viewBox:"0 0 2447.6 2452.5",className:"w-5 h-5 ml-3",xmlns:"http://www.w3.org/2000/svg"},H.default.createElement("g",{clipRule:"evenodd",fillRule:"evenodd"},H.default.createElement("path",{d:"m897.4 0c-135.3.1-244.8 109.9-244.7 245.2-.1 135.3 109.5 245.1 244.8 245.2h244.8v-245.1c.1-135.3-109.5-245.1-244.9-245.3.1 0 .1 0 0 0m0 654h-652.6c-135.3.1-244.9 109.9-244.8 245.2-.2 135.3 109.4 245.1 244.7 245.3h652.7c135.3-.1 244.9-109.9 244.8-245.2.1-135.4-109.5-245.2-244.8-245.3z",fill:"#36c5f0"}),H.default.createElement("path",{d:"m2447.6 899.2c.1-135.3-109.5-245.1-244.8-245.2-135.3.1-244.9 109.9-244.8 245.2v245.3h244.8c135.3-.1 244.9-109.9 244.8-245.3zm-652.7 0v-654c.1-135.2-109.4-245-244.7-245.2-135.3.1-244.9 109.9-244.8 245.2v654c-.2 135.3 109.4 245.1 244.7 245.3 135.3-.1 244.9-109.9 244.8-245.3z",fill:"#2eb67d"}),H.default.createElement("path",{d:"m1550.1 2452.5c135.3-.1 244.9-109.9 244.8-245.2.1-135.3-109.5-245.1-244.8-245.2h-244.8v245.2c-.1 135.2 109.5 245 244.8 245.2zm0-654.1h652.7c135.3-.1 244.9-109.9 244.8-245.2.2-135.3-109.4-245.1-244.7-245.3h-652.7c-135.3.1-244.9 109.9-244.8 245.2-.1 135.4 109.4 245.2 244.7 245.3z",fill:"#ecb22e"}),H.default.createElement("path",{d:"m0 1553.2c-.1 135.3 109.5 245.1 244.8 245.2 135.3-.1 244.9-109.9 244.8-245.2v-245.2h-244.8c-135.3.1-244.9 109.9-244.8 245.2zm652.7 0v654c-.2 135.3 109.4 245.1 244.7 245.3 135.3-.1 244.9-109.9 244.8-245.2v-653.9c.2-135.3-109.4-245.1-244.7-245.3-135.4 0-244.9 109.8-244.8 245.1 0 0 0 .1 0 0",fill:"#e01e5a"})));var ye=x(require("react")),nr=require("@radix-ui/react-slot");var ir=ye.default.forwardRef(({callbackUrl:e,className:t,buttonText:o="Continue with X",variant:r,size:n,asChild:i=!1,...a},s)=>ye.default.createElement(i?nr.Slot:"button",{className:u(M({variant:r,size:n,className:t}),"bg-black hover:bg-slate-800 pl-[3px] text-white gap-4 transition-colors shadow-md"),ref:s,onClick:()=>{k("twitter",{callbackUrl:e})},...a},ye.default.createElement(In,null),o));ir.displayName="XSignInButton";var sr=ir,In=()=>ye.default.createElement("svg",{className:"w-5 h-5 ml-3",viewBox:"0 0 24 24",version:"1.1"},ye.default.createElement("path",{d:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z",fill:"#ffffff"}));var rt=x(require("react"));var te=x(require("react")),ot=require("@tanstack/react-query"),dr=require("react-hook-form");var ar=require("@tanstack/react-query"),lr=require("react");function ze(e,t){let{onSuccess:o,onError:r,beforeMutate:n,callbackUrl:i,baseUrl:a="",createTenant:s}=e,l=(0,ar.useMutation)({mutationFn:async d=>{var E;let m=n&&n(d),c={...d,...m},{tenantId:w,newTenantName:S,...C}=c,p=(E=c.fetchUrl)!=null?E:`${a}/api/signup`,b=new URLSearchParams;return S?b.set("newTenantName",S):s&&(typeof s=="boolean"?b.set("newTenantName",c.email):typeof s=="string"&&b.set("newTenantName",s)),w&&b.set("tenantId",w),b.size>0&&(p+=`?${b}`),await fetch(p,{body:JSON.stringify(C),method:"POST",headers:{"content-type":"application/json"}})},onSuccess:async(d,m)=>{d.ok&&(await y._getSession({event:"storage"}),i?window.location.href=i:window.location.reload()),o&&o(d,m)},onError:r},t);return(0,lr.useEffect)(()=>{fetch(`${a}/api/auth/providers`),fetch(`${a}/api/auth/csrf`)},[a]),l.mutate}var kn=new ot.QueryClient;function Et(e){let{client:t}=e!=null?e:{};return te.default.createElement(ot.QueryClientProvider,{client:t!=null?t:kn},te.default.createElement(Mn,{...e}))}function Mn(e){let t=ze(e),o=(0,dr.useForm)({defaultValues:{email:"",password:""}});return te.default.createElement(_,{...o},te.default.createElement("form",{onSubmit:o.handleSubmit(({email:r,password:n})=>t({email:r,password:n})),className:"space-y-8"},te.default.createElement(V,null),te.default.createElement(Y,null),te.default.createElement(R,null,"Sign up")))}function nt(e){return rt.default.createElement("div",{className:"flex flex-col gap-4"},rt.default.createElement("div",{className:"font-sans text-3xl"},"Sign up"),rt.default.createElement(Et,{...e}))}var st=x(require("react"));var oe=x(require("react")),it=require("@tanstack/react-query"),ur=require("react-hook-form");var cr=require("@tanstack/react-query");function Be(e){let{onSuccess:t,onError:o,beforeMutate:r,callbackUrl:n}=e!=null?e:{};return(0,cr.useMutation)({mutationFn:async a=>{let s={...a,callbackUrl:n},l=r&&r(s),d=l!=null?l:s;return await k("credentials",d)},onSuccess:t,onError:o}).mutate}var Tn=new it.QueryClient;function Ft(e){let{client:t,...o}=e!=null?e:{};return oe.default.createElement(it.QueryClientProvider,{client:t!=null?t:Tn},oe.default.createElement(En,{...o}))}function En(e){let t=Be(e),o=(0,ur.useForm)({defaultValues:{email:"",password:""}});return oe.default.createElement(_,{...o},oe.default.createElement("form",{onSubmit:o.handleSubmit(({email:r,password:n})=>t&&t({email:r,password:n})),className:"space-y-8"},oe.default.createElement(V,null),oe.default.createElement(Y,null),oe.default.createElement(R,{type:"submit"},"Sign In")))}function at(e){return st.default.createElement("div",{className:"flex flex-col gap-4"},st.default.createElement("h2",{className:"font-sans text-3xl"},"Sign In"),st.default.createElement(Ft,{...e}))}var Ae=x(require("react")),mr=require("@radix-ui/react-slot"),fr=require("lucide-react");var pr=Ae.default.forwardRef(({callbackUrl:e,redirect:t,className:o,buttonText:r="Sign out",variant:n,size:i,asChild:a=!1,...s},l)=>Ae.default.createElement(a?mr.Slot:"button",{className:M({variant:n,size:i,className:o}),ref:l,onClick:()=>{Ye({callbackUrl:e,redirect:t})},...s},s.children?s.children:Ae.default.createElement("div",{className:"flex flex-row gap-2 items-center"},Ae.default.createElement(fr.LogOut,null),r)));pr.displayName="SignOutButton";var gr=pr;var lt=x(require("react"));function Dt(e){return e&&"exp"in e?{...e,expires:new Date(e.exp*1e3).toISOString()}:e}function Lt({children:e,session:t,...o}){if(t instanceof Response)return null;let r=Dt(t);return lt.default.createElement(ve,{...o,session:r},lt.default.createElement(Fn,{className:o.className},e))}function Fn({children:e,className:t}){let{status:o}=he();return o==="authenticated"?t?lt.default.createElement("div",{className:t},e):e:null}var dt=x(require("react"));function Rt({children:e,session:t,...o}){if(t instanceof Response)return null;let r=Dt(t);return dt.default.createElement(ve,{...o,session:r},dt.default.createElement(Dn,{className:o.className},e))}function Dn({className:e,children:t}){let{status:o}=he();return o!=="authenticated"?e?dt.default.createElement("div",{className:e},t):t:null}var f=x(require("react")),Ne=require("@tanstack/react-query"),ce=require("lucide-react"),Pr=require("react-hook-form");var P=x(require("react")),v=x(require("@radix-ui/react-dropdown-menu")),Ce=require("lucide-react");var br=v.Root,Ut=P.forwardRef(({className:e,...t},o)=>P.createElement(v.Trigger,{ref:o,className:u("focus-visible:outline-none hover:bg-accent focus:bg-accent flex flex-row gap-2 items-center justify-between px-4 py-2 rounded-lg border data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...t}));Ut.displayName=v.Trigger.displayName;var Ln=P.forwardRef(({className:e,inset:t,children:o,...r},n)=>P.createElement(v.SubTrigger,{ref:n,className:u("flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",t&&"pl-8",e),...r},o,P.createElement(Ce.ChevronRight,{className:"ml-auto"})));Ln.displayName=v.SubTrigger.displayName;var Rn=P.forwardRef(({className:e,...t},o)=>P.createElement(v.SubContent,{ref:o,className:u("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...t}));Rn.displayName=v.SubContent.displayName;var zt=P.forwardRef(({className:e,sideOffset:t=4,...o},r)=>P.createElement(v.Portal,null,P.createElement(v.Content,{ref:r,sideOffset:t,className:u("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...o})));zt.displayName=v.Content.displayName;var Bt=P.forwardRef(({className:e,inset:t,active:o,...r},n)=>P.createElement(v.Item,{ref:n,className:u("relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&>svg]:size-4 [&>svg]:shrink-0",t&&"pl-8",o&&"bg-accent text-accent-foreground",e),...r}));Bt.displayName=v.Item.displayName;var Un=P.forwardRef(({className:e,children:t,checked:o,...r},n)=>P.createElement(v.CheckboxItem,{ref:n,className:u("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),checked:o,...r},P.createElement("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center"},P.createElement(v.ItemIndicator,null,P.createElement(Ce.Check,{className:"h-4 w-4"}))),t));Un.displayName=v.CheckboxItem.displayName;var zn=P.forwardRef(({className:e,children:t,...o},r)=>P.createElement(v.RadioItem,{ref:r,className:u("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...o},P.createElement("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center"},P.createElement(v.ItemIndicator,null,P.createElement(Ce.Circle,{className:"h-2 w-2 fill-current"}))),t));zn.displayName=v.RadioItem.displayName;var Bn=P.forwardRef(({className:e,inset:t,...o},r)=>P.createElement(v.Label,{ref:r,className:u("px-2 py-1.5 text-sm font-semibold",t&&"pl-8",e),...o}));Bn.displayName=v.Label.displayName;var At=P.forwardRef(({className:e,...t},o)=>P.createElement(v.Separator,{ref:o,className:u("-mx-1 my-1 h-px bg-muted",e),...t}));At.displayName=v.Separator.displayName;var An=({className:e,...t})=>P.createElement("span",{className:u("ml-auto text-xs tracking-widest opacity-60",e),...t});An.displayName="DropdownMenuShortcut";var L=x(require("react")),T=x(require("@radix-ui/react-dialog")),hr=require("lucide-react");var vr=T.Root,wr=T.Trigger,_n=T.Portal;var xr=L.forwardRef(({className:e,...t},o)=>L.createElement(T.Overlay,{ref:o,className:u("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t}));xr.displayName=T.Overlay.displayName;var _t=L.forwardRef(({className:e,children:t,...o},r)=>L.createElement(_n,null,L.createElement(xr,null),L.createElement(T.Content,{ref:r,className:u("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",e),...o},t,L.createElement(T.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground"},L.createElement(hr.X,{className:"h-4 w-4"}),L.createElement("span",{className:"sr-only"},"Close")))));_t.displayName=T.Content.displayName;var Vt=({className:e,...t})=>L.createElement("div",{className:u("flex flex-col space-y-1.5 text-center sm:text-left",e),...t});Vt.displayName="DialogHeader";var Vn=({className:e,...t})=>L.createElement("div",{className:u("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});Vn.displayName="DialogFooter";var Ot=L.forwardRef(({className:e,...t},o)=>L.createElement(T.Title,{ref:o,className:u("text-lg font-semibold leading-none tracking-tight",e),...t}));Ot.displayName=T.Title.displayName;var Ht=L.forwardRef(({className:e,...t},o)=>L.createElement(T.Description,{ref:o,className:u("text-sm text-muted-foreground",e),...t}));Ht.displayName=T.Description.displayName;var Pe=x(require("react")),yr=require("@tanstack/react-query");var Gt="nile.tenant_id";function Se(e,t){let{disableQuery:o,tenants:r,baseUrl:n=""}=e;return(0,yr.useQuery)({queryKey:["tenants",n],queryFn:async()=>{let s=`${n}/api/tenants`,l=await fetch(s,{headers:{"content-type":"application/json"}});if(!l.ok)throw new Error("Failed to fetch tenants");return l.json()},enabled:!o||!r||r.length===0},t)}function _e(e,t){let[o,r]=Pe.default.useState(e==null?void 0:e.tenant.id),{refetch:n}=Se({disableQuery:!0},t),{baseUrl:i=""}=e!=null?e:{};(0,Pe.useEffect)(()=>{if(!o){let s=On(Gt);s?r(s):n()}},[i,n,o]);let a=(0,Pe.useCallback)(s=>{r(s),Hn(Gt,s)},[]);return[o,a]}var On=e=>{let t=document.cookie.split("; ");for(let o of t){let[r,n]=o.split("=");if(r===e)return n}return null},Hn=(e,t)=>{document.cookie=`${e}=${t}; path=/; samesite=lax`};var Gn=new Ne.QueryClient;function $t(e){let{client:t}=e!=null?e:{};return f.default.createElement(Ne.QueryClientProvider,{client:t!=null?t:Gn},f.default.createElement($n,{...e}))}function $n(e){var d,m;let{data:t=[],isLoading:o,refetch:r}=Se(e),[n,i]=_e(),[a,s]=(0,f.useState)(!1),l=t.find(c=>c.id===n);return(0,f.useEffect)(()=>{var c;!((c=e.tenants)!=null&&c.length)&&(t==null?void 0:t.length)>0&&!l&&i(t[0].id)},[(d=e.tenants)==null?void 0:d.length,t]),!o&&!n?f.default.createElement("div",{className:u("flex flex-col items-center gap-2",e.className)},f.default.createElement("p",null,"You are not part of an organization."),f.default.createElement(Cr,{onSuccess:c=>{i(c.id),s(!1),r()},trigger:f.default.createElement(R,null,f.default.createElement(ce.Plus,{size:18})," Create an organization")})):f.default.createElement("div",null,f.default.createElement("div",{className:u(e.className)},f.default.createElement("div",{className:"text-sm pb-1.5 opacity-70 flex flex-row gap-1 items-center"},f.default.createElement(ce.ArrowLeftRight,{size:14}),"Switch organization"),f.default.createElement("div",{className:"flex flex-row w-full flex-1 items-center gap-1"},f.default.createElement(br,{open:a,onOpenChange:s},f.default.createElement(Ut,{className:"group w-80",disabled:!(l!=null&&l.name),onClick:()=>{s(!0)}},(m=l==null?void 0:l.name)!=null?m:"Loading...",f.default.createElement(ce.ChevronDown,{className:"transition-transform duration-200 ease-in-out group-data-[state=open]:rotate-180"})),f.default.createElement(zt,{className:"flex flex-col gap-0.5 max-h-96 overflow-auto custom-scrollbar w-80"},t==null?void 0:t.map(c=>f.default.createElement(Bt,{key:c.id,onClick:()=>i(c.id),active:c.id===(l==null?void 0:l.id)},c.name)),f.default.createElement(At,null),f.default.createElement(Cr,{onSuccess:c=>{s(!1),i(c.id),r()},trigger:f.default.createElement(R,{variant:"ghost",className:"self-center"},f.default.createElement(ce.Plus,{size:18})," Create new organization")}))))))}function Cr(e){let[t,o]=(0,f.useState)(!1),{trigger:r,beforeMutate:n,onSuccess:i,onError:a,baseUrl:s=""}=e,l=(0,Pr.useForm)({defaultValues:{name:""}}),d=(0,Ne.useMutation)({mutationFn:async c=>{var b;let w=n&&n(c),S=w!=null?w:c,C=(b=e==null?void 0:e.fetchUrl)!=null?b:`${s}/api/tenants`,p=await fetch(C,{method:"POST",body:JSON.stringify(S)});if(!p.ok)throw new Error("Failed to fetch tenants");return p.json()},onSuccess:async c=>{o(!1),i&&i(c)},onError:a}),m=(0,f.useCallback)(c=>{d.mutate(c)},[d]);return f.default.createElement(vr,{open:t,onOpenChange:o},f.default.createElement(wr,{asChild:!0},r),f.default.createElement(_t,null,f.default.createElement(Vt,null,f.default.createElement(Ot,null,"Create an organization"),f.default.createElement(Ht,null,"An organization is a group of users.")),f.default.createElement(_,{...l},f.default.createElement("form",{onSubmit:l.handleSubmit(m)},f.default.createElement(ge,{control:l.control,name:"name",render:({field:c})=>f.default.createElement(ne,null,f.default.createElement(ie,null,"Name"),f.default.createElement(se,null,f.default.createElement(Z,{placeholder:"Organization name",...c,autoFocus:!0})),f.default.createElement(ae,null,"This is the name of your organization."),f.default.createElement(le,null))}),f.default.createElement(R,{type:"submit",className:"py-2",loading:d.isPending},"Submit")))))}var q=require("lucide-react"),F=x(require("react"));var jt=x(require("react"));function Ve(e){let[t,o]=jt.default.useState(e.user);return jt.default.useEffect(()=>{var r;t||fetch((r=e.fetchUrl)!=null?r:"/api/me").then(n=>n==null?void 0:n.json()).then(n=>o(n))},[]),t}function Wt(e){let t=Ve(e),o=F.default.useMemo(()=>t&&typeof t=="object"&&"picture"in t&&t.picture?F.default.createElement("img",{src:t.picture,alt:`${t.name} profile picture`,referrerPolicy:"no-referrer"}):e.profilePicturePlaceholder?e.profilePicturePlaceholder:F.default.createElement("div",{className:"drop-shadow-md",style:{background:"linear-gradient(90deg, #F4C587, #D6D3E9, #99D2EC)"}},F.default.createElement(q.CircleUserRound,{size:100,className:"opacity-70 stroke-black",style:{strokeWidth:".5px"}})),[t==null]);return t?F.default.createElement("div",{className:u(e.className,"flex flex-col gap-2 items-center")},F.default.createElement("div",{className:"flex flex-col gap-5 pb-2 items-center"},F.default.createElement("div",{className:"flex flex-col gap-2 items-center w-36 mx-auto"},F.default.createElement("div",{className:"rounded-full border border-background overflow-hidden shadow-md"},o)),F.default.createElement("div",{className:"font-bold flex flex-row gap-1 capitalize"},t.name?t.name:t.givenName," ",t.familyName?t.familyName:null)),F.default.createElement("div",{className:"flex flex-row gap-5 justify-between w-full"},F.default.createElement("div",{className:"flex flex-row gap-2 text-sm items-center w-36"},F.default.createElement(q.Mail,{size:14}),"Email:"),F.default.createElement("div",{className:"flex flex-row gap-1 items-center"},t.emailVerified?F.default.createElement(q.BadgeCheck,{className:"stroke-white fill-green-700",size:14}):F.default.createElement(q.BadgeCheck,{className:"opacity-40",size:14}),t.email," ")),F.default.createElement("div",{className:"flex flex-row gap-5 justify-between w-full"},F.default.createElement("div",{className:"flex flex-row gap-2 text-sm items-center w-36"},F.default.createElement(q.CalendarCheck,{size:14}),"Created:"),new Date(t.created).toLocaleString())):"Loading..."}var ut=x(require("react"));var ct=require("@tanstack/react-query"),Ir=require("react-hook-form"),me=x(require("react"));var Sr=require("@tanstack/react-query"),Nr=require("react");function ue(e){let{onSuccess:t,onError:o,beforeMutate:r,callbackUrl:n,baseUrl:i=""}=e!=null?e:{},a=(0,Sr.useMutation)({mutationFn:async s=>{var w;let l={...s,callbackUrl:n},d=r&&r(l),m=d!=null?d:l,c=(w=e==null?void 0:e.fetchUrl)!=null?w:`${i}/api/auth/reset-password`;return m&&typeof m=="object"&&"callbackUrl"in m&&!m.callbackUrl&&n&&(m.callbackURL=n),m.redirectURL=c,await fetch(c,{method:m.password?"put":"post",body:JSON.stringify(m)})},onSuccess:s=>{t&&t(s)},onError:o});return(0,Nr.useEffect)(()=>{fetch(`${i}/api/auth/csrf`)},[i]),a.mutate}var jn=new ct.QueryClient;function Qt(e){var t;return me.default.createElement(ct.QueryClientProvider,{client:(t=e.client)!=null?t:jn},me.default.createElement(Wn,{...e}))}function Wn(e){let{defaultValues:t,...o}=e,r=(0,Ir.useForm)({defaultValues:{email:"",...t}}),n=ue(o);return me.default.createElement(_,{...r},me.default.createElement("form",{className:"py-2",onSubmit:r.handleSubmit(({email:i})=>{n({email:i})})},me.default.createElement(V,null),me.default.createElement(R,{type:"submit"},"Reset password")))}function mt(e){return ut.default.createElement("div",{className:"flex flex-col gap-4"},ut.default.createElement("h2",{className:"font-sans text-3xl"},"Request password reset"),ut.default.createElement(Qt,{...e}))}var pt=require("@tanstack/react-query"),Ie=x(require("react"));var ft=require("@tanstack/react-query"),kr=require("react-hook-form"),D=x(require("react"));var Qn=new ft.QueryClient;function qt(e){var t;return D.default.createElement(ft.QueryClientProvider,{client:(t=e.client)!=null?t:Qn},D.default.createElement(qn,{...e}))}function qn(e){let{defaultValues:t,...o}=e,r=(0,kr.useForm)({defaultValues:{email:"",password:"",confirmPassword:"",...t}}),n=ue(o),i=r.watch("password"),a=r.watch("confirmPassword"),[s,l]=(0,D.useState)(!0);return(0,D.useEffect)(()=>{r.clearErrors(),!i||!a?l(!0):a&&i!==a?i!==a&&(r.setError("confirmPassword",{message:"Passwords must match."}),s||l(!0)):l(!1)},[i,a,s,r]),D.default.createElement(_,{...r},D.default.createElement("form",{onSubmit:r.handleSubmit(({email:d,password:m})=>{n({email:d,password:m})}),className:"py-2"},D.default.createElement(V,null),D.default.createElement(Y,null),D.default.createElement(ge,{control:r.control,name:"confirmPassword",render:({field:d})=>D.default.createElement(ne,null,D.default.createElement(ie,null,"Confirm password"),D.default.createElement(se,null,D.default.createElement(Z,{placeholder:"Password",...d,type:"password",autoComplete:"new-password"})),D.default.createElement(ae,null,"An updated password"),D.default.createElement(le,null))}),D.default.createElement(R,{type:"submit",disabled:Object.keys(r.formState.errors).length>0||s},"Update password")))}var Xn=new pt.QueryClient;function gt(e){let{client:t,...o}=e;return Ie.default.createElement(pt.QueryClientProvider,{client:t!=null?t:Xn},Ie.default.createElement(Jn,{...o}))}function Jn(e){return Ie.default.createElement("div",{className:"flex flex-col gap-4"},Ie.default.createElement("h2",{className:"font-sans text-3xl"},"Reset password"),Ie.default.createElement(qt,{...e}))}0&&(module.exports={Azure,Discord,Email,EmailSignIn,EmailSignInButton,GitHub,Google,HubSpot,LinkedIn,Password,PasswordResetForm,PasswordResetRequestForm,SessionContext,SessionProvider,SignInForm,SignOutButton,SignUpForm,SignedIn,SignedOut,Slack,TenantSelector,UserInfo,X,getCsrfToken,getProviders,getSession,signIn,signOut,useEmailSignIn,useMe,useResetPassword,useSession,useSignIn,useSignUp,useTenantId,useTenants});
3
+ //# sourceMappingURL=index.js.map