[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-neon-neon-auth-react":3,"mdc--puzbl7-key":35,"related-repo-neon-neon-auth-react":11669,"related-org-neon-neon-auth-react":11702},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":12,"stars":24,"repoUrl":25,"updatedAt":26,"license":27,"forks":28,"topics":29,"repo":30,"sourceUrl":33,"mdContent":34},"neon-auth-react","set up Neon Auth in React apps","Sets up Neon Auth in React applications (Vite, CRA). Configures authentication adapters, creates auth client, and sets up UI components. Use when adding auth-only to React apps (no database needed).",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},"neon","Neon","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fneon.png","neondatabase",[13,15,18,21],{"name":9,"slug":8,"type":14},"tag",{"name":16,"slug":17,"type":14},"React","react",{"name":19,"slug":20,"type":14},"Auth","auth",{"name":22,"slug":23,"type":14},"Frontend","frontend",15,"https:\u002F\u002Fgithub.com\u002Fneondatabase\u002Fneon-js","2026-04-06T18:39:04.164073",null,10,[],{"repoUrl":25,"stars":24,"forks":28,"topics":31,"description":32},[],"An Javascript client for Neon Auth and Neon Data API","https:\u002F\u002Fgithub.com\u002Fneondatabase\u002Fneon-js\u002Ftree\u002FHEAD\u002Fskills\u002Fneon-auth-react","---\nname: neon-auth-react\ndescription: Sets up Neon Auth in React applications (Vite, CRA). Configures authentication adapters, creates auth client, and sets up UI components. Use when adding auth-only to React apps (no database needed).\nallowed-tools: [\"Bash\", \"Write\", \"Read\", \"Edit\", \"Glob\", \"Grep\"]\n---\n\n# Neon Auth for React\n\nHelp developers set up @neondatabase\u002Fauth (authentication only, no database) in React applications with Vite, Create React App, or similar bundlers.\n\n## When to Use\n\nUse this skill when:\n- Setting up auth-only in React (no database needed)\n- User already has a database solution\n- User mentions \"@neondatabase\u002Fauth\" without \"neon-js\"\n- User is NOT using Next.js (use `neon-auth-nextjs` skill for Next.js)\n\n## Critical Rules\n\n1. **Adapter Factory Pattern**: Always call adapters with `()` - they are factory functions\n2. **React Adapter Import**: Use subpath `@neondatabase\u002Fauth\u002Freact\u002Fadapters`\n3. **createAuthClient takes URL as first arg**: `createAuthClient(url, config)`\n4. **CSS Import**: Choose ONE - either `\u002Fui\u002Fcss` OR `\u002Fui\u002Ftailwind`, never both\n\n## Setup\n\n### 1. Install\n```bash\nnpm install @neondatabase\u002Fauth\n```\n\n### 2. Create Client (`src\u002Fauth-client.ts`)\n```typescript\nimport { createAuthClient } from '@neondatabase\u002Fauth';\nimport { BetterAuthReactAdapter } from '@neondatabase\u002Fauth\u002Freact\u002Fadapters';\n\nexport const authClient = createAuthClient(\n  import.meta.env.VITE_AUTH_URL,\n  {\n    adapter: BetterAuthReactAdapter(),\n    \u002F\u002F allowAnonymous: true, \u002F\u002F Enable for RLS access without login\n  }\n);\n```\n\n### 3. Create Provider (`src\u002Fproviders.tsx`)\n```typescript\nimport { NeonAuthUIProvider } from '@neondatabase\u002Fauth\u002Freact\u002Fui';\nimport { useNavigate } from 'react-router-dom';\nimport { Link } from 'react-router-dom';\nimport { authClient } from '.\u002Fauth-client';\n\n\u002F\u002F Import CSS (choose one)\nimport '@neondatabase\u002Fauth\u002Fui\u002Fcss';\n\nexport function Providers({ children }: { children: React.ReactNode }) {\n  const navigate = useNavigate();\n\n  return (\n    \u003CNeonAuthUIProvider\n      authClient={authClient}\n      navigate={navigate}\n      redirectTo=\"\u002Fdashboard\"\n      Link={({ children, href }) => \u003CLink to={href}>{children}\u003C\u002FLink>}\n    >\n      {children}\n    \u003C\u002FNeonAuthUIProvider>\n  );\n}\n```\n\n### 4. Wrap App (`src\u002Fmain.tsx`)\n```typescript\nimport { BrowserRouter } from 'react-router-dom';\nimport { Providers } from '.\u002Fproviders';\nimport App from '.\u002FApp';\n\nReactDOM.createRoot(document.getElementById('root')!).render(\n  \u003CBrowserRouter>\n    \u003CProviders>\n      \u003CApp \u002F>\n    \u003C\u002FProviders>\n  \u003C\u002FBrowserRouter>\n);\n```\n\n---\n\n## CSS & Styling\n\n### Import Options\n\n**Without Tailwind** (pre-built CSS bundle ~47KB):\n```css\n\u002F* In your main CSS file or import in provider *\u002F\n@import '@neondatabase\u002Fauth\u002Fui\u002Fcss';\n```\n\n**With Tailwind CSS v4**:\n```css\n@import 'tailwindcss';\n@import '@neondatabase\u002Fauth\u002Fui\u002Ftailwind';\n```\n\n**IMPORTANT**: Never import both - causes duplicate styles.\n\n### Dark Mode\n\nThe provider includes `next-themes` for dark mode. Control via `defaultTheme` prop:\n\n```typescript\n\u003CNeonAuthUIProvider\n  authClient={authClient}\n  defaultTheme=\"system\" \u002F\u002F 'light' | 'dark' | 'system'\n  \u002F\u002F ...\n>\n```\n\n### Custom Theming\n\nOverride CSS variables in your stylesheet:\n```css\n:root {\n  --primary: oklch(0.7 0.15 250);\n  --primary-foreground: oklch(0.98 0 0);\n  --background: oklch(1 0 0);\n  --foreground: oklch(0.1 0 0);\n  --card: oklch(1 0 0);\n  --card-foreground: oklch(0.1 0 0);\n  --border: oklch(0.9 0 0);\n  --input: oklch(0.9 0 0);\n  --ring: oklch(0.7 0 0);\n  --radius: 0.5rem;\n  \u002F* See theme.css for full list *\u002F\n}\n\n.dark {\n  --background: oklch(0.15 0 0);\n  --foreground: oklch(0.98 0 0);\n  \u002F* Dark mode overrides *\u002F\n}\n```\n\n---\n\n## NeonAuthUIProvider Props\n\nFull configuration options:\n\n```typescript\n\u003CNeonAuthUIProvider\n  \u002F\u002F Required\n  authClient={authClient}\n\n  \u002F\u002F Navigation (required for React Router)\n  navigate={navigate}           \u002F\u002F Router's navigate function\n  Link={({href, children}) => \u003CLink to={href}>{children}\u003C\u002FLink>}                   \u002F\u002F Router's Link component\n  redirectTo=\"\u002Fdashboard\"       \u002F\u002F Where to redirect after auth\n\n  \u002F\u002F Social\u002FOAuth Providers\n  social={{\n    providers: ['google'],\n  }}\n\n  \u002F\u002F Feature Flags\n  emailOTP={true}               \u002F\u002F Enable email OTP sign-in\n  emailVerification={true}      \u002F\u002F Require email verification\n  magicLink={false}             \u002F\u002F Magic link (disabled by default)\n  multiSession={false}          \u002F\u002F Multiple sessions (disabled)\n\n  \u002F\u002F Credentials Configuration\n  credentials={{\n    forgotPassword: true,       \u002F\u002F Show forgot password link\n  }}\n\n  \u002F\u002F Sign Up Fields\n  signUp={{\n    fields: ['name'],           \u002F\u002F Additional fields: 'name', 'username', etc.\n  }}\n\n  \u002F\u002F Account Settings Fields\n  account={{\n    fields: ['image', 'name', 'company', 'age', 'newsletter'],\n  }}\n\n  \u002F\u002F Avatar Configuration\n  avatar={{\n    size: 256,\n    extension: 'webp',\n  }}\n\n  \u002F\u002F Organization Features\n  organization={{}}             \u002F\u002F Enable org features\n\n  \u002F\u002F Dark Mode\n  defaultTheme=\"system\"         \u002F\u002F 'light' | 'dark' | 'system'\n\n  \u002F\u002F Custom Labels\n  localization={{\n    SIGN_IN: 'Welcome Back',\n    SIGN_IN_DESCRIPTION: 'Sign in to your account',\n    SIGN_UP: 'Create Account',\n    SIGN_UP_DESCRIPTION: 'Join us today',\n    FORGOT_PASSWORD: 'Forgot Password?',\n    OR_CONTINUE_WITH: 'or continue with',\n    \u002F\u002F See better-auth-ui docs for full list\n  }}\n>\n  {children}\n\u003C\u002FNeonAuthUIProvider>\n```\n\n---\n\n## UI Components\n\n### AuthView - Main Auth Interface\n\nHandles sign-in, sign-up, forgot password, and callback routes:\n\n```typescript\nimport { AuthView } from '@neondatabase\u002Fauth\u002Freact\u002Fui';\n\n\u002F\u002F Route: \u002Fauth\u002F:pathname\nfunction AuthPage() {\n  const { pathname } = useParams(); \u002F\u002F 'sign-in', 'sign-up', 'forgot-password', etc.\n\n  return \u003CAuthView pathname={pathname} \u002F>;\n}\n```\n\n**Supported pathnames**: `sign-in`, `sign-up`, `forgot-password`, `reset-password`, `callback`, `sign-out`\n\n### Conditional Rendering\n\n```typescript\nimport {\n  SignedIn,\n  SignedOut,\n  AuthLoading,\n  RedirectToSignIn\n} from '@neondatabase\u002Fauth\u002Freact\u002Fui';\n\nfunction MyPage() {\n  return (\n    \u003C>\n      {\u002F* Show while checking auth state *\u002F}\n      \u003CAuthLoading>\n        \u003CLoadingSpinner \u002F>\n      \u003C\u002FAuthLoading>\n\n      {\u002F* Show only when authenticated *\u002F}\n      \u003CSignedIn>\n        \u003CDashboard \u002F>\n      \u003C\u002FSignedIn>\n\n      {\u002F* Show only when NOT authenticated *\u002F}\n      \u003CSignedOut>\n        \u003CLandingPage \u002F>\n      \u003C\u002FSignedOut>\n\n      {\u002F* Redirect to sign-in if not authenticated *\u002F}\n      \u003CRedirectToSignIn \u002F>\n    \u003C\u002F>\n  );\n}\n```\n\n### UserButton\n\nDropdown menu with user avatar, name, and sign-out:\n\n```typescript\nimport { UserButton } from '@neondatabase\u002Fauth\u002Freact\u002Fui';\n\nfunction Header() {\n  return (\n    \u003Cheader>\n      \u003Cnav>...\u003C\u002Fnav>\n      \u003CUserButton \u002F>\n    \u003C\u002Fheader>\n  );\n}\n```\n\n### Account Management Components\n\n```typescript\nimport {\n  AccountSettingsCards,   \u002F\u002F Profile info (avatar, name, email)\n  SecuritySettingsCards,  \u002F\u002F Security options (linked accounts)\n  SessionsCard,           \u002F\u002F Active sessions management\n  ChangePasswordCard,     \u002F\u002F Password change form\n  ChangeEmailCard,        \u002F\u002F Email change form\n  DeleteAccountCard,      \u002F\u002F Account deletion\n  ProvidersCard,          \u002F\u002F Linked OAuth providers\n} from '@neondatabase\u002Fauth\u002Freact\u002Fui';\n\nfunction AccountPage() {\n  const { view } = useParams(); \u002F\u002F 'settings', 'security', 'sessions'\n\n  return (\n    \u003C>\n      \u003CRedirectToSignIn \u002F>\n      \u003CSignedIn>\n        {view === 'settings' && \u003CAccountSettingsCards \u002F>}\n        {view === 'security' && (\n          \u003C>\n            \u003CChangePasswordCard \u002F>\n            \u003CSecuritySettingsCards \u002F>\n          \u003C\u002F>\n        )}\n        {view === 'sessions' && \u003CSessionsCard \u002F>}\n      \u003C\u002FSignedIn>\n    \u003C\u002F>\n  );\n}\n```\n\n### Organization Components\n\n```typescript\nimport {\n  OrganizationSwitcher,       \u002F\u002F Switch between orgs\n  OrganizationSettingsCards,  \u002F\u002F Org settings\n  OrganizationMembersCard,    \u002F\u002F Member management\n  AcceptInvitationCard,       \u002F\u002F Accept org invite\n} from '@neondatabase\u002Fauth\u002Freact\u002Fui';\n```\n\n---\n\n## Adapter Options\n\n### BetterAuthReactAdapter (Recommended for React)\n\nNative Better Auth API with React hooks:\n\n```typescript\nimport { BetterAuthReactAdapter } from '@neondatabase\u002Fauth\u002Freact\u002Fadapters';\n\nconst authClient = createAuthClient(url, {\n  adapter: BetterAuthReactAdapter(),\n});\n\n\u002F\u002F Methods\nawait authClient.signIn.email({ email, password });\nawait authClient.signUp.email({ email, password, name });\nawait authClient.signIn.social({ provider: 'google', callbackURL: '\u002Fdashboard' });\nawait authClient.signOut();\nconst session = await authClient.getSession();\n\n\u002F\u002F React Hook\nconst { data, isPending, error } = authClient.useSession();\n```\n\n### SupabaseAuthAdapter (Supabase-compatible API)\n\nFor migrating from Supabase or familiar API:\n\n```typescript\nimport { SupabaseAuthAdapter } from '@neondatabase\u002Fauth\u002Fvanilla\u002Fadapters';\n\nconst authClient = createAuthClient(url, {\n  adapter: SupabaseAuthAdapter(),\n});\n\n\u002F\u002F Supabase-style methods\nawait authClient.signUp({ email, password, options: { data: { name } } });\nawait authClient.signInWithPassword({ email, password });\nawait authClient.signInWithOAuth({ provider: 'google', options: { redirectTo } });\nawait authClient.signOut();\nconst { data: session } = await authClient.getSession();\n\n\u002F\u002F Event listener\nauthClient.onAuthStateChange((event, session) => {\n  console.log(event); \u002F\u002F 'SIGNED_IN', 'SIGNED_OUT', 'TOKEN_REFRESHED', 'USER_UPDATED'\n});\n```\n\n### BetterAuthVanillaAdapter (Non-React)\n\nFor vanilla JS\u002FTS without React hooks:\n\n```typescript\nimport { BetterAuthVanillaAdapter } from '@neondatabase\u002Fauth\u002Fvanilla\u002Fadapters';\n\nconst authClient = createAuthClient(url, {\n  adapter: BetterAuthVanillaAdapter(),\n});\n\n\u002F\u002F Same API as BetterAuthReactAdapter, but no useSession() hook\n```\n\n---\n\n## Social\u002FOAuth Providers\n\n### Configuration\n\nEnable providers in NeonAuthUIProvider:\n\n```typescript\n\u003CNeonAuthUIProvider\n  social={{\n    providers: ['google'],\n  }}\n>\n```\n\n### Programmatic OAuth Sign-In\n\n```typescript\n\u002F\u002F BetterAuth API\nawait authClient.signIn.social({\n  provider: 'google',\n  callbackURL: '\u002Fdashboard',\n  scopes: ['email', 'profile'], \u002F\u002F Optional\n});\n\n\u002F\u002F Supabase API\nawait authClient.signInWithOAuth({\n  provider: 'google',\n  options: {\n    redirectTo: '\u002Fdashboard',\n    scopes: 'email profile',\n  },\n});\n```\n\n### Supported Providers\n\n`google`, `github`, `twitter`, `discord`, `apple`, `microsoft`, `facebook`, `linkedin`, `spotify`, `twitch`, `gitlab`, `bitbucket`\n\n### OAuth in Iframes\n\nOAuth automatically uses popup flow when running in iframes (due to X-Frame-Options restrictions). No configuration needed.\n\n---\n\n## Session Hook\n\n```typescript\nfunction MyComponent() {\n  const { data: session, isPending, error, refetch } = authClient.useSession();\n\n  if (isPending) return \u003Cdiv>Loading...\u003C\u002Fdiv>;\n  if (error) return \u003Cdiv>Error: {error.message}\u003C\u002Fdiv>;\n  if (!session) return \u003Cdiv>Not signed in\u003C\u002Fdiv>;\n\n  return (\n    \u003Cdiv>\n      \u003Cp>Hello, {session.user.name}\u003C\u002Fp>\n      \u003Cp>Email: {session.user.email}\u003C\u002Fp>\n      \u003Cp>ID: {session.user.id}\u003C\u002Fp>\n      \u003Cimg src={session.user.image} alt=\"Avatar\" \u002F>\n    \u003C\u002Fdiv>\n  );\n}\n```\n\n**Session object shape:**\n```typescript\n{\n  user: {\n    id: string;\n    email: string;\n    name: string;\n    image?: string;\n    emailVerified: boolean;\n    createdAt: Date;\n    updatedAt: Date;\n  };\n  session: {\n    id: string;\n    token: string;        \u002F\u002F JWT token\n    expiresAt: Date;\n    ipAddress?: string;\n    userAgent?: string;\n  };\n}\n```\n\n---\n\n## Advanced Features\n\n### Anonymous Access\n\nEnable RLS-based data access for unauthenticated users:\n\n```typescript\n\u002F\u002F Client setup\nconst authClient = createAuthClient(url, {\n  adapter: BetterAuthReactAdapter(),\n  allowAnonymous: true,\n});\n\n\u002F\u002F Get token (returns anonymous JWT if not signed in)\nconst token = await authClient.getJWTToken?.();\n```\n\n### Get JWT Token (for API calls)\n\n```typescript\nconst token = await authClient.getJWTToken();\n\nconst response = await fetch('\u002Fapi\u002Fdata', {\n  headers: {\n    Authorization: `Bearer ${token}`,\n  },\n});\n```\n\n### Password Reset Flow\n\n```typescript\n\u002F\u002F 1. Request reset email (Supabase API)\nawait authClient.resetPasswordForEmail(email, {\n  redirectTo: '\u002Fauth\u002Freset-password',\n});\n\n\u002F\u002F 2. User clicks link, lands on reset page\n\u002F\u002F 3. Verify OTP and set new password\nawait authClient.verifyOtp({\n  email,\n  token: otpFromUrl,\n  type: 'recovery',\n});\n\n\u002F\u002F Then call password update\nawait authClient.updateUser({ password: newPassword });\n```\n\n### Update User Profile\n\n```typescript\n\u002F\u002F BetterAuth API\nawait authClient.updateUser({\n  name: 'New Name',\n  image: 'https:\u002F\u002F...',\n  \u002F\u002F Custom fields defined in account.fields\n});\n\n\u002F\u002F Supabase API\nawait authClient.updateUser({\n  data: {\n    name: 'New Name',\n    avatar_url: 'https:\u002F\u002F...',\n  },\n});\n```\n\n### Identity\u002FAccount Linking\n\n```typescript\n\u002F\u002F List linked accounts\nconst { data } = await authClient.getUserIdentities();\n\u002F\u002F Returns: { identities: [{ provider: 'google', ... }] }\n\n\u002F\u002F Link new provider\nawait authClient.linkIdentity({\n  provider: 'google',\n  options: { redirectTo: '\u002Faccount\u002Fsecurity' },\n});\n\n\u002F\u002F Unlink provider\nawait authClient.unlinkIdentity({\n  identity_id: 'identity-uuid',\n});\n```\n\n### Auth State Events (Supabase Adapter)\n\n```typescript\nconst { data: { subscription } } = authClient.onAuthStateChange((event, session) => {\n  switch (event) {\n    case 'SIGNED_IN':\n      console.log('User signed in:', session?.user);\n      break;\n    case 'SIGNED_OUT':\n      console.log('User signed out');\n      break;\n    case 'TOKEN_REFRESHED':\n      console.log('Token refreshed');\n      break;\n    case 'USER_UPDATED':\n      console.log('User profile updated');\n      break;\n  }\n});\n\n\u002F\u002F Cleanup\nsubscription.unsubscribe();\n```\n\n### Cross-Tab Synchronization\n\nAutomatic via BroadcastChannel. Sign out in one tab signs out all tabs.\n\n---\n\n## Protected Routes\n\n### Pattern with React Router\n\n```typescript\n\u002F\u002F routes.tsx\nimport { Routes, Route } from 'react-router-dom';\n\nexport function AppRoutes() {\n  return (\n    \u003CRoutes>\n      {\u002F* Public *\u002F}\n      \u003CRoute path=\"\u002F\" element={\u003CHomePage \u002F>} \u002F>\n\n      {\u002F* Auth routes *\u002F}\n      \u003CRoute path=\"\u002Fauth\u002F:pathname\" element={\u003CAuthPage \u002F>} \u002F>\n\n      {\u002F* Protected *\u002F}\n      \u003CRoute path=\"\u002Fdashboard\" element={\u003CProtectedRoute>\u003CDashboard \u002F>\u003C\u002FProtectedRoute>} \u002F>\n      \u003CRoute path=\"\u002Faccount\u002F:view?\" element={\u003CProtectedRoute>\u003CAccountPage \u002F>\u003C\u002FProtectedRoute>} \u002F>\n    \u003C\u002FRoutes>\n  );\n}\n\n\u002F\u002F ProtectedRoute.tsx\nfunction ProtectedRoute({ children }: { children: React.ReactNode }) {\n  return (\n    \u003C>\n      \u003CAuthLoading>\n        \u003CLoadingSpinner \u002F>\n      \u003C\u002FAuthLoading>\n      \u003CRedirectToSignIn \u002F>\n      \u003CSignedIn>\n        {children}\n      \u003C\u002FSignedIn>\n    \u003C\u002F>\n  );\n}\n```\n\n### Auth Page Setup\n\n```typescript\n\u002F\u002F pages\u002FAuthPage.tsx\nimport { useParams } from 'react-router-dom';\nimport { AuthView } from '@neondatabase\u002Fauth\u002Freact\u002Fui';\n\nexport function AuthPage() {\n  const { pathname } = useParams();\n  return \u003CAuthView pathname={pathname} \u002F>;\n}\n```\n\n### Account Page Setup\n\n```typescript\n\u002F\u002F pages\u002FAccountPage.tsx\nimport { useParams } from 'react-router-dom';\nimport {\n  SignedIn,\n  RedirectToSignIn,\n  AccountSettingsCards,\n  SecuritySettingsCards,\n  SessionsCard,\n  ChangePasswordCard,\n} from '@neondatabase\u002Fauth\u002Freact\u002Fui';\n\nexport function AccountPage() {\n  const { view = 'settings' } = useParams();\n\n  return (\n    \u003C>\n      \u003CRedirectToSignIn \u002F>\n      \u003CSignedIn>\n        {view === 'settings' && \u003CAccountSettingsCards \u002F>}\n        {view === 'security' && (\n          \u003C>\n            \u003CChangePasswordCard \u002F>\n            \u003CSecuritySettingsCards \u002F>\n          \u003C\u002F>\n        )}\n        {view === 'sessions' && \u003CSessionsCard \u002F>}\n      \u003C\u002FSignedIn>\n    \u003C\u002F>\n  );\n}\n```\n\n---\n\n## Error Handling\n\n### Error Response Shape\n\n```typescript\nconst result = await authClient.signIn.email({ email, password });\n\nif (result.error) {\n  console.error(result.error.message);  \u002F\u002F Human-readable message\n  console.error(result.error.status);   \u002F\u002F HTTP status code\n}\n```\n\n### Common Errors\n\n| Error | Cause |\n|-------|-------|\n| `Invalid credentials` | Wrong email\u002Fpassword |\n| `User already exists` | Email already registered |\n| `Email not verified` | Verification required |\n| `Session not found` | Expired or invalid session |\n| `Rate limited` | Too many requests |\n\n### Try-Catch Pattern\n\n```typescript\ntry {\n  const { error } = await authClient.signIn.email({ email, password });\n\n  if (error) {\n    \u002F\u002F Handle auth-specific errors\n    toast.error(error.message);\n    return;\n  }\n\n  \u002F\u002F Success - redirect\n  navigate('\u002Fdashboard');\n} catch (err) {\n  \u002F\u002F Handle network\u002Funexpected errors\n  toast.error('Something went wrong');\n}\n```\n\n---\n\n## Performance Notes\n\n- **Session caching**: 60-second TTL, automatic JWT expiration handling\n- **Request deduplication**: Concurrent calls share single network request\n- **Cold start**: ~200ms (single request)\n- **Cross-tab sync**: \u003C50ms via BroadcastChannel\n\n---\n\n## FAQ \u002F Troubleshooting\n\n### Anonymous access not working?\n\nWhen using `allowAnonymous: true`, you must grant permissions to the `anonymous` role in your database:\n\n```sql\n-- Grant SELECT on specific tables\nGRANT SELECT ON public.posts TO anonymous;\nGRANT SELECT ON public.products TO anonymous;\n\n-- Or grant on all tables in schema (be careful!)\nGRANT SELECT ON ALL TABLES IN SCHEMA public TO anonymous;\n\n-- For INSERT\u002FUPDATE\u002FDELETE (if needed)\nGRANT INSERT, UPDATE ON public.comments TO anonymous;\n```\n\nYour RLS policies must also allow the anonymous role:\n\n```sql\n-- Example: Allow anonymous users to read published posts\nCREATE POLICY \"Anyone can read published posts\"\n  ON public.posts FOR SELECT\n  USING (published = true);\n\n-- Example: Allow anonymous users to read products\nCREATE POLICY \"Anyone can read products\"\n  ON public.products FOR SELECT\n  USING (true);\n```\n\n### OAuth redirect not working in iframe?\n\nOAuth automatically uses popup flow in iframes. Make sure:\n1. Your auth server allows the popup callback URL\n2. Popups aren't blocked by the browser\n\n### Session not persisting after refresh?\n\nCheck that:\n1. Cookies are enabled\n2. Your auth server URL matches your domain (or has proper CORS)\n3. You're not in incognito mode with cookies blocked\n\n### \"Invalid credentials\" but password is correct?\n\n- Email might not be verified (check `emailVerification` setting)\n- Account might be locked after too many failed attempts\n- Check if using correct adapter API (Supabase vs BetterAuth style)\n",{"data":36,"body":44},{"name":4,"description":6,"allowed-tools":37},[38,39,40,41,42,43],"Bash","Write","Read","Edit","Glob","Grep",{"type":45,"children":46},"root",[47,56,62,69,74,108,114,195,201,208,242,256,515,528,1103,1116,1410,1414,1420,1426,1436,1477,1486,1541,1551,1557,1578,1662,1668,1673,2175,2178,2184,2189,3298,3301,3307,3313,3318,3505,3556,3562,3968,3974,3979,4158,4164,4655,4661,4774,4777,4783,4789,4794,5310,5316,5321,5890,5896,5901,6039,6042,6048,6054,6059,6137,6143,6488,6494,6579,6585,6590,6593,6599,7221,7229,7545,7548,7554,7560,7565,7730,7736,7918,7924,8211,8217,8473,8479,8765,8771,9268,9274,9279,9282,9288,9294,9943,9949,10157,10163,10646,10649,10655,10661,10886,10892,11004,11010,11328,11331,11337,11380,11383,11389,11395,11416,11495,11500,11578,11584,11589,11602,11608,11613,11631,11637,11663],{"type":48,"tag":49,"props":50,"children":52},"element","h1",{"id":51},"neon-auth-for-react",[53],{"type":54,"value":55},"text","Neon Auth for React",{"type":48,"tag":57,"props":58,"children":59},"p",{},[60],{"type":54,"value":61},"Help developers set up @neondatabase\u002Fauth (authentication only, no database) in React applications with Vite, Create React App, or similar bundlers.",{"type":48,"tag":63,"props":64,"children":66},"h2",{"id":65},"when-to-use",[67],{"type":54,"value":68},"When to Use",{"type":48,"tag":57,"props":70,"children":71},{},[72],{"type":54,"value":73},"Use this skill when:",{"type":48,"tag":75,"props":76,"children":77},"ul",{},[78,84,89,94],{"type":48,"tag":79,"props":80,"children":81},"li",{},[82],{"type":54,"value":83},"Setting up auth-only in React (no database needed)",{"type":48,"tag":79,"props":85,"children":86},{},[87],{"type":54,"value":88},"User already has a database solution",{"type":48,"tag":79,"props":90,"children":91},{},[92],{"type":54,"value":93},"User mentions \"@neondatabase\u002Fauth\" without \"neon-js\"",{"type":48,"tag":79,"props":95,"children":96},{},[97,99,106],{"type":54,"value":98},"User is NOT using Next.js (use ",{"type":48,"tag":100,"props":101,"children":103},"code",{"className":102},[],[104],{"type":54,"value":105},"neon-auth-nextjs",{"type":54,"value":107}," skill for Next.js)",{"type":48,"tag":63,"props":109,"children":111},{"id":110},"critical-rules",[112],{"type":54,"value":113},"Critical Rules",{"type":48,"tag":115,"props":116,"children":117},"ol",{},[118,137,153,169],{"type":48,"tag":79,"props":119,"children":120},{},[121,127,129,135],{"type":48,"tag":122,"props":123,"children":124},"strong",{},[125],{"type":54,"value":126},"Adapter Factory Pattern",{"type":54,"value":128},": Always call adapters with ",{"type":48,"tag":100,"props":130,"children":132},{"className":131},[],[133],{"type":54,"value":134},"()",{"type":54,"value":136}," - they are factory functions",{"type":48,"tag":79,"props":138,"children":139},{},[140,145,147],{"type":48,"tag":122,"props":141,"children":142},{},[143],{"type":54,"value":144},"React Adapter Import",{"type":54,"value":146},": Use subpath ",{"type":48,"tag":100,"props":148,"children":150},{"className":149},[],[151],{"type":54,"value":152},"@neondatabase\u002Fauth\u002Freact\u002Fadapters",{"type":48,"tag":79,"props":154,"children":155},{},[156,161,163],{"type":48,"tag":122,"props":157,"children":158},{},[159],{"type":54,"value":160},"createAuthClient takes URL as first arg",{"type":54,"value":162},": ",{"type":48,"tag":100,"props":164,"children":166},{"className":165},[],[167],{"type":54,"value":168},"createAuthClient(url, config)",{"type":48,"tag":79,"props":170,"children":171},{},[172,177,179,185,187,193],{"type":48,"tag":122,"props":173,"children":174},{},[175],{"type":54,"value":176},"CSS Import",{"type":54,"value":178},": Choose ONE - either ",{"type":48,"tag":100,"props":180,"children":182},{"className":181},[],[183],{"type":54,"value":184},"\u002Fui\u002Fcss",{"type":54,"value":186}," OR ",{"type":48,"tag":100,"props":188,"children":190},{"className":189},[],[191],{"type":54,"value":192},"\u002Fui\u002Ftailwind",{"type":54,"value":194},", never both",{"type":48,"tag":63,"props":196,"children":198},{"id":197},"setup",[199],{"type":54,"value":200},"Setup",{"type":48,"tag":202,"props":203,"children":205},"h3",{"id":204},"_1-install",[206],{"type":54,"value":207},"1. Install",{"type":48,"tag":209,"props":210,"children":215},"pre",{"className":211,"code":212,"language":213,"meta":214,"style":214},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npm install @neondatabase\u002Fauth\n","bash","",[216],{"type":48,"tag":100,"props":217,"children":218},{"__ignoreMap":214},[219],{"type":48,"tag":220,"props":221,"children":224},"span",{"class":222,"line":223},"line",1,[225,231,237],{"type":48,"tag":220,"props":226,"children":228},{"style":227},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[229],{"type":54,"value":230},"npm",{"type":48,"tag":220,"props":232,"children":234},{"style":233},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[235],{"type":54,"value":236}," install",{"type":48,"tag":220,"props":238,"children":239},{"style":233},[240],{"type":54,"value":241}," @neondatabase\u002Fauth\n",{"type":48,"tag":202,"props":243,"children":245},{"id":244},"_2-create-client-srcauth-clientts",[246,248,254],{"type":54,"value":247},"2. Create Client (",{"type":48,"tag":100,"props":249,"children":251},{"className":250},[],[252],{"type":54,"value":253},"src\u002Fauth-client.ts",{"type":54,"value":255},")",{"type":48,"tag":209,"props":257,"children":261},{"className":258,"code":259,"language":260,"meta":214,"style":214},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { createAuthClient } from '@neondatabase\u002Fauth';\nimport { BetterAuthReactAdapter } from '@neondatabase\u002Fauth\u002Freact\u002Fadapters';\n\nexport const authClient = createAuthClient(\n  import.meta.env.VITE_AUTH_URL,\n  {\n    adapter: BetterAuthReactAdapter(),\n    \u002F\u002F allowAnonymous: true, \u002F\u002F Enable for RLS access without login\n  }\n);\n","typescript",[262],{"type":48,"tag":100,"props":263,"children":264},{"__ignoreMap":214},[265,316,357,367,402,444,453,480,495,504],{"type":48,"tag":220,"props":266,"children":267},{"class":222,"line":223},[268,274,280,286,291,296,301,306,311],{"type":48,"tag":220,"props":269,"children":271},{"style":270},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[272],{"type":54,"value":273},"import",{"type":48,"tag":220,"props":275,"children":277},{"style":276},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[278],{"type":54,"value":279}," {",{"type":48,"tag":220,"props":281,"children":283},{"style":282},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[284],{"type":54,"value":285}," createAuthClient",{"type":48,"tag":220,"props":287,"children":288},{"style":276},[289],{"type":54,"value":290}," }",{"type":48,"tag":220,"props":292,"children":293},{"style":270},[294],{"type":54,"value":295}," from",{"type":48,"tag":220,"props":297,"children":298},{"style":276},[299],{"type":54,"value":300}," '",{"type":48,"tag":220,"props":302,"children":303},{"style":233},[304],{"type":54,"value":305},"@neondatabase\u002Fauth",{"type":48,"tag":220,"props":307,"children":308},{"style":276},[309],{"type":54,"value":310},"'",{"type":48,"tag":220,"props":312,"children":313},{"style":276},[314],{"type":54,"value":315},";\n",{"type":48,"tag":220,"props":317,"children":319},{"class":222,"line":318},2,[320,324,328,333,337,341,345,349,353],{"type":48,"tag":220,"props":321,"children":322},{"style":270},[323],{"type":54,"value":273},{"type":48,"tag":220,"props":325,"children":326},{"style":276},[327],{"type":54,"value":279},{"type":48,"tag":220,"props":329,"children":330},{"style":282},[331],{"type":54,"value":332}," BetterAuthReactAdapter",{"type":48,"tag":220,"props":334,"children":335},{"style":276},[336],{"type":54,"value":290},{"type":48,"tag":220,"props":338,"children":339},{"style":270},[340],{"type":54,"value":295},{"type":48,"tag":220,"props":342,"children":343},{"style":276},[344],{"type":54,"value":300},{"type":48,"tag":220,"props":346,"children":347},{"style":233},[348],{"type":54,"value":152},{"type":48,"tag":220,"props":350,"children":351},{"style":276},[352],{"type":54,"value":310},{"type":48,"tag":220,"props":354,"children":355},{"style":276},[356],{"type":54,"value":315},{"type":48,"tag":220,"props":358,"children":360},{"class":222,"line":359},3,[361],{"type":48,"tag":220,"props":362,"children":364},{"emptyLinePlaceholder":363},true,[365],{"type":54,"value":366},"\n",{"type":48,"tag":220,"props":368,"children":370},{"class":222,"line":369},4,[371,376,382,387,392,397],{"type":48,"tag":220,"props":372,"children":373},{"style":270},[374],{"type":54,"value":375},"export",{"type":48,"tag":220,"props":377,"children":379},{"style":378},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[380],{"type":54,"value":381}," const",{"type":48,"tag":220,"props":383,"children":384},{"style":282},[385],{"type":54,"value":386}," authClient ",{"type":48,"tag":220,"props":388,"children":389},{"style":276},[390],{"type":54,"value":391},"=",{"type":48,"tag":220,"props":393,"children":395},{"style":394},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[396],{"type":54,"value":285},{"type":48,"tag":220,"props":398,"children":399},{"style":282},[400],{"type":54,"value":401},"(\n",{"type":48,"tag":220,"props":403,"children":405},{"class":222,"line":404},5,[406,411,416,421,425,430,434,439],{"type":48,"tag":220,"props":407,"children":408},{"style":270},[409],{"type":54,"value":410},"  import",{"type":48,"tag":220,"props":412,"children":413},{"style":276},[414],{"type":54,"value":415},".",{"type":48,"tag":220,"props":417,"children":418},{"style":282},[419],{"type":54,"value":420},"meta",{"type":48,"tag":220,"props":422,"children":423},{"style":276},[424],{"type":54,"value":415},{"type":48,"tag":220,"props":426,"children":427},{"style":282},[428],{"type":54,"value":429},"env",{"type":48,"tag":220,"props":431,"children":432},{"style":276},[433],{"type":54,"value":415},{"type":48,"tag":220,"props":435,"children":436},{"style":282},[437],{"type":54,"value":438},"VITE_AUTH_URL",{"type":48,"tag":220,"props":440,"children":441},{"style":276},[442],{"type":54,"value":443},",\n",{"type":48,"tag":220,"props":445,"children":447},{"class":222,"line":446},6,[448],{"type":48,"tag":220,"props":449,"children":450},{"style":276},[451],{"type":54,"value":452},"  {\n",{"type":48,"tag":220,"props":454,"children":456},{"class":222,"line":455},7,[457,463,468,472,476],{"type":48,"tag":220,"props":458,"children":460},{"style":459},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[461],{"type":54,"value":462},"    adapter",{"type":48,"tag":220,"props":464,"children":465},{"style":276},[466],{"type":54,"value":467},":",{"type":48,"tag":220,"props":469,"children":470},{"style":394},[471],{"type":54,"value":332},{"type":48,"tag":220,"props":473,"children":474},{"style":282},[475],{"type":54,"value":134},{"type":48,"tag":220,"props":477,"children":478},{"style":276},[479],{"type":54,"value":443},{"type":48,"tag":220,"props":481,"children":483},{"class":222,"line":482},8,[484,490],{"type":48,"tag":220,"props":485,"children":487},{"style":486},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[488],{"type":54,"value":489},"    \u002F\u002F allowAnonymous: true,",{"type":48,"tag":220,"props":491,"children":492},{"style":486},[493],{"type":54,"value":494}," \u002F\u002F Enable for RLS access without login\n",{"type":48,"tag":220,"props":496,"children":498},{"class":222,"line":497},9,[499],{"type":48,"tag":220,"props":500,"children":501},{"style":276},[502],{"type":54,"value":503},"  }\n",{"type":48,"tag":220,"props":505,"children":506},{"class":222,"line":28},[507,511],{"type":48,"tag":220,"props":508,"children":509},{"style":282},[510],{"type":54,"value":255},{"type":48,"tag":220,"props":512,"children":513},{"style":276},[514],{"type":54,"value":315},{"type":48,"tag":202,"props":516,"children":518},{"id":517},"_3-create-provider-srcproviderstsx",[519,521,527],{"type":54,"value":520},"3. Create Provider (",{"type":48,"tag":100,"props":522,"children":524},{"className":523},[],[525],{"type":54,"value":526},"src\u002Fproviders.tsx",{"type":54,"value":255},{"type":48,"tag":209,"props":529,"children":531},{"className":258,"code":530,"language":260,"meta":214,"style":214},"import { NeonAuthUIProvider } from '@neondatabase\u002Fauth\u002Freact\u002Fui';\nimport { useNavigate } from 'react-router-dom';\nimport { Link } from 'react-router-dom';\nimport { authClient } from '.\u002Fauth-client';\n\n\u002F\u002F Import CSS (choose one)\nimport '@neondatabase\u002Fauth\u002Fui\u002Fcss';\n\nexport function Providers({ children }: { children: React.ReactNode }) {\n  const navigate = useNavigate();\n\n  return (\n    \u003CNeonAuthUIProvider\n      authClient={authClient}\n      navigate={navigate}\n      redirectTo=\"\u002Fdashboard\"\n      Link={({ children, href }) => \u003CLink to={href}>{children}\u003C\u002FLink>}\n    >\n      {children}\n    \u003C\u002FNeonAuthUIProvider>\n  );\n}\n",[532],{"type":48,"tag":100,"props":533,"children":534},{"__ignoreMap":214},[535,576,617,657,698,705,713,737,744,813,843,851,865,879,903,924,952,1037,1046,1063,1082,1095],{"type":48,"tag":220,"props":536,"children":537},{"class":222,"line":223},[538,542,546,551,555,559,563,568,572],{"type":48,"tag":220,"props":539,"children":540},{"style":270},[541],{"type":54,"value":273},{"type":48,"tag":220,"props":543,"children":544},{"style":276},[545],{"type":54,"value":279},{"type":48,"tag":220,"props":547,"children":548},{"style":282},[549],{"type":54,"value":550}," NeonAuthUIProvider",{"type":48,"tag":220,"props":552,"children":553},{"style":276},[554],{"type":54,"value":290},{"type":48,"tag":220,"props":556,"children":557},{"style":270},[558],{"type":54,"value":295},{"type":48,"tag":220,"props":560,"children":561},{"style":276},[562],{"type":54,"value":300},{"type":48,"tag":220,"props":564,"children":565},{"style":233},[566],{"type":54,"value":567},"@neondatabase\u002Fauth\u002Freact\u002Fui",{"type":48,"tag":220,"props":569,"children":570},{"style":276},[571],{"type":54,"value":310},{"type":48,"tag":220,"props":573,"children":574},{"style":276},[575],{"type":54,"value":315},{"type":48,"tag":220,"props":577,"children":578},{"class":222,"line":318},[579,583,587,592,596,600,604,609,613],{"type":48,"tag":220,"props":580,"children":581},{"style":270},[582],{"type":54,"value":273},{"type":48,"tag":220,"props":584,"children":585},{"style":276},[586],{"type":54,"value":279},{"type":48,"tag":220,"props":588,"children":589},{"style":282},[590],{"type":54,"value":591}," useNavigate",{"type":48,"tag":220,"props":593,"children":594},{"style":276},[595],{"type":54,"value":290},{"type":48,"tag":220,"props":597,"children":598},{"style":270},[599],{"type":54,"value":295},{"type":48,"tag":220,"props":601,"children":602},{"style":276},[603],{"type":54,"value":300},{"type":48,"tag":220,"props":605,"children":606},{"style":233},[607],{"type":54,"value":608},"react-router-dom",{"type":48,"tag":220,"props":610,"children":611},{"style":276},[612],{"type":54,"value":310},{"type":48,"tag":220,"props":614,"children":615},{"style":276},[616],{"type":54,"value":315},{"type":48,"tag":220,"props":618,"children":619},{"class":222,"line":359},[620,624,628,633,637,641,645,649,653],{"type":48,"tag":220,"props":621,"children":622},{"style":270},[623],{"type":54,"value":273},{"type":48,"tag":220,"props":625,"children":626},{"style":276},[627],{"type":54,"value":279},{"type":48,"tag":220,"props":629,"children":630},{"style":282},[631],{"type":54,"value":632}," Link",{"type":48,"tag":220,"props":634,"children":635},{"style":276},[636],{"type":54,"value":290},{"type":48,"tag":220,"props":638,"children":639},{"style":270},[640],{"type":54,"value":295},{"type":48,"tag":220,"props":642,"children":643},{"style":276},[644],{"type":54,"value":300},{"type":48,"tag":220,"props":646,"children":647},{"style":233},[648],{"type":54,"value":608},{"type":48,"tag":220,"props":650,"children":651},{"style":276},[652],{"type":54,"value":310},{"type":48,"tag":220,"props":654,"children":655},{"style":276},[656],{"type":54,"value":315},{"type":48,"tag":220,"props":658,"children":659},{"class":222,"line":369},[660,664,668,673,677,681,685,690,694],{"type":48,"tag":220,"props":661,"children":662},{"style":270},[663],{"type":54,"value":273},{"type":48,"tag":220,"props":665,"children":666},{"style":276},[667],{"type":54,"value":279},{"type":48,"tag":220,"props":669,"children":670},{"style":282},[671],{"type":54,"value":672}," authClient",{"type":48,"tag":220,"props":674,"children":675},{"style":276},[676],{"type":54,"value":290},{"type":48,"tag":220,"props":678,"children":679},{"style":270},[680],{"type":54,"value":295},{"type":48,"tag":220,"props":682,"children":683},{"style":276},[684],{"type":54,"value":300},{"type":48,"tag":220,"props":686,"children":687},{"style":233},[688],{"type":54,"value":689},".\u002Fauth-client",{"type":48,"tag":220,"props":691,"children":692},{"style":276},[693],{"type":54,"value":310},{"type":48,"tag":220,"props":695,"children":696},{"style":276},[697],{"type":54,"value":315},{"type":48,"tag":220,"props":699,"children":700},{"class":222,"line":404},[701],{"type":48,"tag":220,"props":702,"children":703},{"emptyLinePlaceholder":363},[704],{"type":54,"value":366},{"type":48,"tag":220,"props":706,"children":707},{"class":222,"line":446},[708],{"type":48,"tag":220,"props":709,"children":710},{"style":486},[711],{"type":54,"value":712},"\u002F\u002F Import CSS (choose one)\n",{"type":48,"tag":220,"props":714,"children":715},{"class":222,"line":455},[716,720,724,729,733],{"type":48,"tag":220,"props":717,"children":718},{"style":270},[719],{"type":54,"value":273},{"type":48,"tag":220,"props":721,"children":722},{"style":276},[723],{"type":54,"value":300},{"type":48,"tag":220,"props":725,"children":726},{"style":233},[727],{"type":54,"value":728},"@neondatabase\u002Fauth\u002Fui\u002Fcss",{"type":48,"tag":220,"props":730,"children":731},{"style":276},[732],{"type":54,"value":310},{"type":48,"tag":220,"props":734,"children":735},{"style":276},[736],{"type":54,"value":315},{"type":48,"tag":220,"props":738,"children":739},{"class":222,"line":482},[740],{"type":48,"tag":220,"props":741,"children":742},{"emptyLinePlaceholder":363},[743],{"type":54,"value":366},{"type":48,"tag":220,"props":745,"children":746},{"class":222,"line":497},[747,751,756,761,766,772,777,781,785,789,794,798,803,808],{"type":48,"tag":220,"props":748,"children":749},{"style":270},[750],{"type":54,"value":375},{"type":48,"tag":220,"props":752,"children":753},{"style":378},[754],{"type":54,"value":755}," function",{"type":48,"tag":220,"props":757,"children":758},{"style":394},[759],{"type":54,"value":760}," Providers",{"type":48,"tag":220,"props":762,"children":763},{"style":276},[764],{"type":54,"value":765},"({",{"type":48,"tag":220,"props":767,"children":769},{"style":768},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic",[770],{"type":54,"value":771}," children",{"type":48,"tag":220,"props":773,"children":774},{"style":276},[775],{"type":54,"value":776}," }:",{"type":48,"tag":220,"props":778,"children":779},{"style":276},[780],{"type":54,"value":279},{"type":48,"tag":220,"props":782,"children":783},{"style":459},[784],{"type":54,"value":771},{"type":48,"tag":220,"props":786,"children":787},{"style":276},[788],{"type":54,"value":467},{"type":48,"tag":220,"props":790,"children":791},{"style":227},[792],{"type":54,"value":793}," React",{"type":48,"tag":220,"props":795,"children":796},{"style":276},[797],{"type":54,"value":415},{"type":48,"tag":220,"props":799,"children":800},{"style":227},[801],{"type":54,"value":802},"ReactNode",{"type":48,"tag":220,"props":804,"children":805},{"style":276},[806],{"type":54,"value":807}," })",{"type":48,"tag":220,"props":809,"children":810},{"style":276},[811],{"type":54,"value":812}," {\n",{"type":48,"tag":220,"props":814,"children":815},{"class":222,"line":28},[816,821,826,831,835,839],{"type":48,"tag":220,"props":817,"children":818},{"style":378},[819],{"type":54,"value":820},"  const",{"type":48,"tag":220,"props":822,"children":823},{"style":282},[824],{"type":54,"value":825}," navigate",{"type":48,"tag":220,"props":827,"children":828},{"style":276},[829],{"type":54,"value":830}," =",{"type":48,"tag":220,"props":832,"children":833},{"style":394},[834],{"type":54,"value":591},{"type":48,"tag":220,"props":836,"children":837},{"style":459},[838],{"type":54,"value":134},{"type":48,"tag":220,"props":840,"children":841},{"style":276},[842],{"type":54,"value":315},{"type":48,"tag":220,"props":844,"children":846},{"class":222,"line":845},11,[847],{"type":48,"tag":220,"props":848,"children":849},{"emptyLinePlaceholder":363},[850],{"type":54,"value":366},{"type":48,"tag":220,"props":852,"children":854},{"class":222,"line":853},12,[855,860],{"type":48,"tag":220,"props":856,"children":857},{"style":270},[858],{"type":54,"value":859},"  return",{"type":48,"tag":220,"props":861,"children":862},{"style":459},[863],{"type":54,"value":864}," (\n",{"type":48,"tag":220,"props":866,"children":868},{"class":222,"line":867},13,[869,874],{"type":48,"tag":220,"props":870,"children":871},{"style":276},[872],{"type":54,"value":873},"    \u003C",{"type":48,"tag":220,"props":875,"children":876},{"style":768},[877],{"type":54,"value":878},"NeonAuthUIProvider\n",{"type":48,"tag":220,"props":880,"children":882},{"class":222,"line":881},14,[883,888,893,898],{"type":48,"tag":220,"props":884,"children":885},{"style":282},[886],{"type":54,"value":887},"      authClient",{"type":48,"tag":220,"props":889,"children":890},{"style":276},[891],{"type":54,"value":892},"={",{"type":48,"tag":220,"props":894,"children":895},{"style":282},[896],{"type":54,"value":897},"authClient",{"type":48,"tag":220,"props":899,"children":900},{"style":276},[901],{"type":54,"value":902},"}\n",{"type":48,"tag":220,"props":904,"children":905},{"class":222,"line":24},[906,911,915,920],{"type":48,"tag":220,"props":907,"children":908},{"style":282},[909],{"type":54,"value":910},"      navigate",{"type":48,"tag":220,"props":912,"children":913},{"style":276},[914],{"type":54,"value":892},{"type":48,"tag":220,"props":916,"children":917},{"style":282},[918],{"type":54,"value":919},"navigate",{"type":48,"tag":220,"props":921,"children":922},{"style":276},[923],{"type":54,"value":902},{"type":48,"tag":220,"props":925,"children":927},{"class":222,"line":926},16,[928,933,937,942,947],{"type":48,"tag":220,"props":929,"children":930},{"style":282},[931],{"type":54,"value":932},"      redirectTo",{"type":48,"tag":220,"props":934,"children":935},{"style":276},[936],{"type":54,"value":391},{"type":48,"tag":220,"props":938,"children":939},{"style":276},[940],{"type":54,"value":941},"\"",{"type":48,"tag":220,"props":943,"children":944},{"style":233},[945],{"type":54,"value":946},"\u002Fdashboard",{"type":48,"tag":220,"props":948,"children":949},{"style":276},[950],{"type":54,"value":951},"\"\n",{"type":48,"tag":220,"props":953,"children":955},{"class":222,"line":954},17,[956,961,965,970,975,979,984,989,993,998,1003,1007,1012,1017,1022,1027,1032],{"type":48,"tag":220,"props":957,"children":958},{"style":282},[959],{"type":54,"value":960},"      Link",{"type":48,"tag":220,"props":962,"children":963},{"style":276},[964],{"type":54,"value":892},{"type":48,"tag":220,"props":966,"children":967},{"style":459},[968],{"type":54,"value":969},"(",{"type":48,"tag":220,"props":971,"children":972},{"style":276},[973],{"type":54,"value":974},"{",{"type":48,"tag":220,"props":976,"children":977},{"style":282},[978],{"type":54,"value":771},{"type":48,"tag":220,"props":980,"children":981},{"style":276},[982],{"type":54,"value":983},",",{"type":48,"tag":220,"props":985,"children":986},{"style":282},[987],{"type":54,"value":988}," href",{"type":48,"tag":220,"props":990,"children":991},{"style":276},[992],{"type":54,"value":290},{"type":48,"tag":220,"props":994,"children":995},{"style":459},[996],{"type":54,"value":997},") => \u003CLink ",{"type":48,"tag":220,"props":999,"children":1000},{"style":282},[1001],{"type":54,"value":1002},"to",{"type":48,"tag":220,"props":1004,"children":1005},{"style":276},[1006],{"type":54,"value":892},{"type":48,"tag":220,"props":1008,"children":1009},{"style":282},[1010],{"type":54,"value":1011},"href",{"type":48,"tag":220,"props":1013,"children":1014},{"style":276},[1015],{"type":54,"value":1016},"}>{",{"type":48,"tag":220,"props":1018,"children":1019},{"style":282},[1020],{"type":54,"value":1021},"children",{"type":48,"tag":220,"props":1023,"children":1024},{"style":276},[1025],{"type":54,"value":1026},"}\u003C\u002F",{"type":48,"tag":220,"props":1028,"children":1029},{"style":282},[1030],{"type":54,"value":1031},"Link",{"type":48,"tag":220,"props":1033,"children":1034},{"style":276},[1035],{"type":54,"value":1036},">}\n",{"type":48,"tag":220,"props":1038,"children":1040},{"class":222,"line":1039},18,[1041],{"type":48,"tag":220,"props":1042,"children":1043},{"style":276},[1044],{"type":54,"value":1045},"    >\n",{"type":48,"tag":220,"props":1047,"children":1049},{"class":222,"line":1048},19,[1050,1055,1059],{"type":48,"tag":220,"props":1051,"children":1052},{"style":276},[1053],{"type":54,"value":1054},"      {",{"type":48,"tag":220,"props":1056,"children":1057},{"style":768},[1058],{"type":54,"value":1021},{"type":48,"tag":220,"props":1060,"children":1061},{"style":276},[1062],{"type":54,"value":902},{"type":48,"tag":220,"props":1064,"children":1066},{"class":222,"line":1065},20,[1067,1072,1077],{"type":48,"tag":220,"props":1068,"children":1069},{"style":276},[1070],{"type":54,"value":1071},"    \u003C\u002F",{"type":48,"tag":220,"props":1073,"children":1074},{"style":282},[1075],{"type":54,"value":1076},"NeonAuthUIProvider",{"type":48,"tag":220,"props":1078,"children":1079},{"style":276},[1080],{"type":54,"value":1081},">\n",{"type":48,"tag":220,"props":1083,"children":1085},{"class":222,"line":1084},21,[1086,1091],{"type":48,"tag":220,"props":1087,"children":1088},{"style":459},[1089],{"type":54,"value":1090},"  )",{"type":48,"tag":220,"props":1092,"children":1093},{"style":276},[1094],{"type":54,"value":315},{"type":48,"tag":220,"props":1096,"children":1098},{"class":222,"line":1097},22,[1099],{"type":48,"tag":220,"props":1100,"children":1101},{"style":276},[1102],{"type":54,"value":902},{"type":48,"tag":202,"props":1104,"children":1106},{"id":1105},"_4-wrap-app-srcmaintsx",[1107,1109,1115],{"type":54,"value":1108},"4. Wrap App (",{"type":48,"tag":100,"props":1110,"children":1112},{"className":1111},[],[1113],{"type":54,"value":1114},"src\u002Fmain.tsx",{"type":54,"value":255},{"type":48,"tag":209,"props":1117,"children":1119},{"className":258,"code":1118,"language":260,"meta":214,"style":214},"import { BrowserRouter } from 'react-router-dom';\nimport { Providers } from '.\u002Fproviders';\nimport App from '.\u002FApp';\n\nReactDOM.createRoot(document.getElementById('root')!).render(\n  \u003CBrowserRouter>\n    \u003CProviders>\n      \u003CApp \u002F>\n    \u003C\u002FProviders>\n  \u003C\u002FBrowserRouter>\n);\n",[1120],{"type":48,"tag":100,"props":1121,"children":1122},{"__ignoreMap":214},[1123,1163,1203,1237,1244,1317,1334,1350,1368,1383,1399],{"type":48,"tag":220,"props":1124,"children":1125},{"class":222,"line":223},[1126,1130,1134,1139,1143,1147,1151,1155,1159],{"type":48,"tag":220,"props":1127,"children":1128},{"style":270},[1129],{"type":54,"value":273},{"type":48,"tag":220,"props":1131,"children":1132},{"style":276},[1133],{"type":54,"value":279},{"type":48,"tag":220,"props":1135,"children":1136},{"style":282},[1137],{"type":54,"value":1138}," BrowserRouter",{"type":48,"tag":220,"props":1140,"children":1141},{"style":276},[1142],{"type":54,"value":290},{"type":48,"tag":220,"props":1144,"children":1145},{"style":270},[1146],{"type":54,"value":295},{"type":48,"tag":220,"props":1148,"children":1149},{"style":276},[1150],{"type":54,"value":300},{"type":48,"tag":220,"props":1152,"children":1153},{"style":233},[1154],{"type":54,"value":608},{"type":48,"tag":220,"props":1156,"children":1157},{"style":276},[1158],{"type":54,"value":310},{"type":48,"tag":220,"props":1160,"children":1161},{"style":276},[1162],{"type":54,"value":315},{"type":48,"tag":220,"props":1164,"children":1165},{"class":222,"line":318},[1166,1170,1174,1178,1182,1186,1190,1195,1199],{"type":48,"tag":220,"props":1167,"children":1168},{"style":270},[1169],{"type":54,"value":273},{"type":48,"tag":220,"props":1171,"children":1172},{"style":276},[1173],{"type":54,"value":279},{"type":48,"tag":220,"props":1175,"children":1176},{"style":282},[1177],{"type":54,"value":760},{"type":48,"tag":220,"props":1179,"children":1180},{"style":276},[1181],{"type":54,"value":290},{"type":48,"tag":220,"props":1183,"children":1184},{"style":270},[1185],{"type":54,"value":295},{"type":48,"tag":220,"props":1187,"children":1188},{"style":276},[1189],{"type":54,"value":300},{"type":48,"tag":220,"props":1191,"children":1192},{"style":233},[1193],{"type":54,"value":1194},".\u002Fproviders",{"type":48,"tag":220,"props":1196,"children":1197},{"style":276},[1198],{"type":54,"value":310},{"type":48,"tag":220,"props":1200,"children":1201},{"style":276},[1202],{"type":54,"value":315},{"type":48,"tag":220,"props":1204,"children":1205},{"class":222,"line":359},[1206,1210,1215,1220,1224,1229,1233],{"type":48,"tag":220,"props":1207,"children":1208},{"style":270},[1209],{"type":54,"value":273},{"type":48,"tag":220,"props":1211,"children":1212},{"style":282},[1213],{"type":54,"value":1214}," App ",{"type":48,"tag":220,"props":1216,"children":1217},{"style":270},[1218],{"type":54,"value":1219},"from",{"type":48,"tag":220,"props":1221,"children":1222},{"style":276},[1223],{"type":54,"value":300},{"type":48,"tag":220,"props":1225,"children":1226},{"style":233},[1227],{"type":54,"value":1228},".\u002FApp",{"type":48,"tag":220,"props":1230,"children":1231},{"style":276},[1232],{"type":54,"value":310},{"type":48,"tag":220,"props":1234,"children":1235},{"style":276},[1236],{"type":54,"value":315},{"type":48,"tag":220,"props":1238,"children":1239},{"class":222,"line":369},[1240],{"type":48,"tag":220,"props":1241,"children":1242},{"emptyLinePlaceholder":363},[1243],{"type":54,"value":366},{"type":48,"tag":220,"props":1245,"children":1246},{"class":222,"line":404},[1247,1252,1256,1261,1266,1270,1275,1279,1283,1287,1291,1295,1300,1304,1308,1313],{"type":48,"tag":220,"props":1248,"children":1249},{"style":282},[1250],{"type":54,"value":1251},"ReactDOM",{"type":48,"tag":220,"props":1253,"children":1254},{"style":276},[1255],{"type":54,"value":415},{"type":48,"tag":220,"props":1257,"children":1258},{"style":394},[1259],{"type":54,"value":1260},"createRoot",{"type":48,"tag":220,"props":1262,"children":1263},{"style":282},[1264],{"type":54,"value":1265},"(document",{"type":48,"tag":220,"props":1267,"children":1268},{"style":276},[1269],{"type":54,"value":415},{"type":48,"tag":220,"props":1271,"children":1272},{"style":394},[1273],{"type":54,"value":1274},"getElementById",{"type":48,"tag":220,"props":1276,"children":1277},{"style":282},[1278],{"type":54,"value":969},{"type":48,"tag":220,"props":1280,"children":1281},{"style":276},[1282],{"type":54,"value":310},{"type":48,"tag":220,"props":1284,"children":1285},{"style":233},[1286],{"type":54,"value":45},{"type":48,"tag":220,"props":1288,"children":1289},{"style":276},[1290],{"type":54,"value":310},{"type":48,"tag":220,"props":1292,"children":1293},{"style":282},[1294],{"type":54,"value":255},{"type":48,"tag":220,"props":1296,"children":1297},{"style":276},[1298],{"type":54,"value":1299},"!",{"type":48,"tag":220,"props":1301,"children":1302},{"style":282},[1303],{"type":54,"value":255},{"type":48,"tag":220,"props":1305,"children":1306},{"style":276},[1307],{"type":54,"value":415},{"type":48,"tag":220,"props":1309,"children":1310},{"style":394},[1311],{"type":54,"value":1312},"render",{"type":48,"tag":220,"props":1314,"children":1315},{"style":282},[1316],{"type":54,"value":401},{"type":48,"tag":220,"props":1318,"children":1319},{"class":222,"line":446},[1320,1325,1330],{"type":48,"tag":220,"props":1321,"children":1322},{"style":282},[1323],{"type":54,"value":1324},"  \u003C",{"type":48,"tag":220,"props":1326,"children":1327},{"style":227},[1328],{"type":54,"value":1329},"BrowserRouter",{"type":48,"tag":220,"props":1331,"children":1332},{"style":282},[1333],{"type":54,"value":1081},{"type":48,"tag":220,"props":1335,"children":1336},{"class":222,"line":455},[1337,1341,1346],{"type":48,"tag":220,"props":1338,"children":1339},{"style":282},[1340],{"type":54,"value":873},{"type":48,"tag":220,"props":1342,"children":1343},{"style":227},[1344],{"type":54,"value":1345},"Providers",{"type":48,"tag":220,"props":1347,"children":1348},{"style":282},[1349],{"type":54,"value":1081},{"type":48,"tag":220,"props":1351,"children":1352},{"class":222,"line":482},[1353,1358,1363],{"type":48,"tag":220,"props":1354,"children":1355},{"style":276},[1356],{"type":54,"value":1357},"      \u003C",{"type":48,"tag":220,"props":1359,"children":1360},{"style":282},[1361],{"type":54,"value":1362},"App ",{"type":48,"tag":220,"props":1364,"children":1365},{"style":276},[1366],{"type":54,"value":1367},"\u002F>\n",{"type":48,"tag":220,"props":1369,"children":1370},{"class":222,"line":497},[1371,1375,1379],{"type":48,"tag":220,"props":1372,"children":1373},{"style":276},[1374],{"type":54,"value":1071},{"type":48,"tag":220,"props":1376,"children":1377},{"style":282},[1378],{"type":54,"value":1345},{"type":48,"tag":220,"props":1380,"children":1381},{"style":276},[1382],{"type":54,"value":1081},{"type":48,"tag":220,"props":1384,"children":1385},{"class":222,"line":28},[1386,1391,1395],{"type":48,"tag":220,"props":1387,"children":1388},{"style":276},[1389],{"type":54,"value":1390},"  \u003C\u002F",{"type":48,"tag":220,"props":1392,"children":1393},{"style":282},[1394],{"type":54,"value":1329},{"type":48,"tag":220,"props":1396,"children":1397},{"style":276},[1398],{"type":54,"value":1081},{"type":48,"tag":220,"props":1400,"children":1401},{"class":222,"line":845},[1402,1406],{"type":48,"tag":220,"props":1403,"children":1404},{"style":282},[1405],{"type":54,"value":255},{"type":48,"tag":220,"props":1407,"children":1408},{"style":276},[1409],{"type":54,"value":315},{"type":48,"tag":1411,"props":1412,"children":1413},"hr",{},[],{"type":48,"tag":63,"props":1415,"children":1417},{"id":1416},"css-styling",[1418],{"type":54,"value":1419},"CSS & Styling",{"type":48,"tag":202,"props":1421,"children":1423},{"id":1422},"import-options",[1424],{"type":54,"value":1425},"Import Options",{"type":48,"tag":57,"props":1427,"children":1428},{},[1429,1434],{"type":48,"tag":122,"props":1430,"children":1431},{},[1432],{"type":54,"value":1433},"Without Tailwind",{"type":54,"value":1435}," (pre-built CSS bundle ~47KB):",{"type":48,"tag":209,"props":1437,"children":1441},{"className":1438,"code":1439,"language":1440,"meta":214,"style":214},"language-css shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F* In your main CSS file or import in provider *\u002F\n@import '@neondatabase\u002Fauth\u002Fui\u002Fcss';\n","css",[1442],{"type":48,"tag":100,"props":1443,"children":1444},{"__ignoreMap":214},[1445,1453],{"type":48,"tag":220,"props":1446,"children":1447},{"class":222,"line":223},[1448],{"type":48,"tag":220,"props":1449,"children":1450},{"style":486},[1451],{"type":54,"value":1452},"\u002F* In your main CSS file or import in provider *\u002F\n",{"type":48,"tag":220,"props":1454,"children":1455},{"class":222,"line":318},[1456,1461,1465,1469,1473],{"type":48,"tag":220,"props":1457,"children":1458},{"style":270},[1459],{"type":54,"value":1460},"@import",{"type":48,"tag":220,"props":1462,"children":1463},{"style":276},[1464],{"type":54,"value":300},{"type":48,"tag":220,"props":1466,"children":1467},{"style":233},[1468],{"type":54,"value":728},{"type":48,"tag":220,"props":1470,"children":1471},{"style":276},[1472],{"type":54,"value":310},{"type":48,"tag":220,"props":1474,"children":1475},{"style":276},[1476],{"type":54,"value":315},{"type":48,"tag":57,"props":1478,"children":1479},{},[1480,1485],{"type":48,"tag":122,"props":1481,"children":1482},{},[1483],{"type":54,"value":1484},"With Tailwind CSS v4",{"type":54,"value":467},{"type":48,"tag":209,"props":1487,"children":1489},{"className":1438,"code":1488,"language":1440,"meta":214,"style":214},"@import 'tailwindcss';\n@import '@neondatabase\u002Fauth\u002Fui\u002Ftailwind';\n",[1490],{"type":48,"tag":100,"props":1491,"children":1492},{"__ignoreMap":214},[1493,1517],{"type":48,"tag":220,"props":1494,"children":1495},{"class":222,"line":223},[1496,1500,1504,1509,1513],{"type":48,"tag":220,"props":1497,"children":1498},{"style":270},[1499],{"type":54,"value":1460},{"type":48,"tag":220,"props":1501,"children":1502},{"style":276},[1503],{"type":54,"value":300},{"type":48,"tag":220,"props":1505,"children":1506},{"style":233},[1507],{"type":54,"value":1508},"tailwindcss",{"type":48,"tag":220,"props":1510,"children":1511},{"style":276},[1512],{"type":54,"value":310},{"type":48,"tag":220,"props":1514,"children":1515},{"style":276},[1516],{"type":54,"value":315},{"type":48,"tag":220,"props":1518,"children":1519},{"class":222,"line":318},[1520,1524,1528,1533,1537],{"type":48,"tag":220,"props":1521,"children":1522},{"style":270},[1523],{"type":54,"value":1460},{"type":48,"tag":220,"props":1525,"children":1526},{"style":276},[1527],{"type":54,"value":300},{"type":48,"tag":220,"props":1529,"children":1530},{"style":233},[1531],{"type":54,"value":1532},"@neondatabase\u002Fauth\u002Fui\u002Ftailwind",{"type":48,"tag":220,"props":1534,"children":1535},{"style":276},[1536],{"type":54,"value":310},{"type":48,"tag":220,"props":1538,"children":1539},{"style":276},[1540],{"type":54,"value":315},{"type":48,"tag":57,"props":1542,"children":1543},{},[1544,1549],{"type":48,"tag":122,"props":1545,"children":1546},{},[1547],{"type":54,"value":1548},"IMPORTANT",{"type":54,"value":1550},": Never import both - causes duplicate styles.",{"type":48,"tag":202,"props":1552,"children":1554},{"id":1553},"dark-mode",[1555],{"type":54,"value":1556},"Dark Mode",{"type":48,"tag":57,"props":1558,"children":1559},{},[1560,1562,1568,1570,1576],{"type":54,"value":1561},"The provider includes ",{"type":48,"tag":100,"props":1563,"children":1565},{"className":1564},[],[1566],{"type":54,"value":1567},"next-themes",{"type":54,"value":1569}," for dark mode. Control via ",{"type":48,"tag":100,"props":1571,"children":1573},{"className":1572},[],[1574],{"type":54,"value":1575},"defaultTheme",{"type":54,"value":1577}," prop:",{"type":48,"tag":209,"props":1579,"children":1581},{"className":258,"code":1580,"language":260,"meta":214,"style":214},"\u003CNeonAuthUIProvider\n  authClient={authClient}\n  defaultTheme=\"system\" \u002F\u002F 'light' | 'dark' | 'system'\n  \u002F\u002F ...\n>\n",[1582],{"type":48,"tag":100,"props":1583,"children":1584},{"__ignoreMap":214},[1585,1597,1617,1647,1655],{"type":48,"tag":220,"props":1586,"children":1587},{"class":222,"line":223},[1588,1593],{"type":48,"tag":220,"props":1589,"children":1590},{"style":276},[1591],{"type":54,"value":1592},"\u003C",{"type":48,"tag":220,"props":1594,"children":1595},{"style":282},[1596],{"type":54,"value":878},{"type":48,"tag":220,"props":1598,"children":1599},{"class":222,"line":318},[1600,1605,1609,1613],{"type":48,"tag":220,"props":1601,"children":1602},{"style":282},[1603],{"type":54,"value":1604},"  authClient",{"type":48,"tag":220,"props":1606,"children":1607},{"style":276},[1608],{"type":54,"value":892},{"type":48,"tag":220,"props":1610,"children":1611},{"style":282},[1612],{"type":54,"value":897},{"type":48,"tag":220,"props":1614,"children":1615},{"style":276},[1616],{"type":54,"value":902},{"type":48,"tag":220,"props":1618,"children":1619},{"class":222,"line":359},[1620,1625,1629,1633,1638,1642],{"type":48,"tag":220,"props":1621,"children":1622},{"style":282},[1623],{"type":54,"value":1624},"  defaultTheme",{"type":48,"tag":220,"props":1626,"children":1627},{"style":276},[1628],{"type":54,"value":391},{"type":48,"tag":220,"props":1630,"children":1631},{"style":276},[1632],{"type":54,"value":941},{"type":48,"tag":220,"props":1634,"children":1635},{"style":233},[1636],{"type":54,"value":1637},"system",{"type":48,"tag":220,"props":1639,"children":1640},{"style":276},[1641],{"type":54,"value":941},{"type":48,"tag":220,"props":1643,"children":1644},{"style":486},[1645],{"type":54,"value":1646}," \u002F\u002F 'light' | 'dark' | 'system'\n",{"type":48,"tag":220,"props":1648,"children":1649},{"class":222,"line":369},[1650],{"type":48,"tag":220,"props":1651,"children":1652},{"style":486},[1653],{"type":54,"value":1654},"  \u002F\u002F ...\n",{"type":48,"tag":220,"props":1656,"children":1657},{"class":222,"line":404},[1658],{"type":48,"tag":220,"props":1659,"children":1660},{"style":276},[1661],{"type":54,"value":1081},{"type":48,"tag":202,"props":1663,"children":1665},{"id":1664},"custom-theming",[1666],{"type":54,"value":1667},"Custom Theming",{"type":48,"tag":57,"props":1669,"children":1670},{},[1671],{"type":54,"value":1672},"Override CSS variables in your stylesheet:",{"type":48,"tag":209,"props":1674,"children":1676},{"className":1438,"code":1675,"language":1440,"meta":214,"style":214},":root {\n  --primary: oklch(0.7 0.15 250);\n  --primary-foreground: oklch(0.98 0 0);\n  --background: oklch(1 0 0);\n  --foreground: oklch(0.1 0 0);\n  --card: oklch(1 0 0);\n  --card-foreground: oklch(0.1 0 0);\n  --border: oklch(0.9 0 0);\n  --input: oklch(0.9 0 0);\n  --ring: oklch(0.7 0 0);\n  --radius: 0.5rem;\n  \u002F* See theme.css for full list *\u002F\n}\n\n.dark {\n  --background: oklch(0.15 0 0);\n  --foreground: oklch(0.98 0 0);\n  \u002F* Dark mode overrides *\u002F\n}\n",[1677],{"type":48,"tag":100,"props":1678,"children":1679},{"__ignoreMap":214},[1680,1695,1737,1775,1812,1849,1885,1921,1958,1994,2030,2051,2059,2066,2073,2089,2125,2160,2168],{"type":48,"tag":220,"props":1681,"children":1682},{"class":222,"line":223},[1683,1687,1691],{"type":48,"tag":220,"props":1684,"children":1685},{"style":276},[1686],{"type":54,"value":467},{"type":48,"tag":220,"props":1688,"children":1689},{"style":378},[1690],{"type":54,"value":45},{"type":48,"tag":220,"props":1692,"children":1693},{"style":276},[1694],{"type":54,"value":812},{"type":48,"tag":220,"props":1696,"children":1697},{"class":222,"line":318},[1698,1703,1707,1712,1716,1722,1727,1732],{"type":48,"tag":220,"props":1699,"children":1700},{"style":282},[1701],{"type":54,"value":1702},"  --primary",{"type":48,"tag":220,"props":1704,"children":1705},{"style":276},[1706],{"type":54,"value":467},{"type":48,"tag":220,"props":1708,"children":1709},{"style":394},[1710],{"type":54,"value":1711}," oklch",{"type":48,"tag":220,"props":1713,"children":1714},{"style":276},[1715],{"type":54,"value":969},{"type":48,"tag":220,"props":1717,"children":1719},{"style":1718},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[1720],{"type":54,"value":1721},"0.7",{"type":48,"tag":220,"props":1723,"children":1724},{"style":1718},[1725],{"type":54,"value":1726}," 0.15",{"type":48,"tag":220,"props":1728,"children":1729},{"style":1718},[1730],{"type":54,"value":1731}," 250",{"type":48,"tag":220,"props":1733,"children":1734},{"style":276},[1735],{"type":54,"value":1736},");\n",{"type":48,"tag":220,"props":1738,"children":1739},{"class":222,"line":359},[1740,1745,1749,1753,1757,1762,1767,1771],{"type":48,"tag":220,"props":1741,"children":1742},{"style":282},[1743],{"type":54,"value":1744},"  --primary-foreground",{"type":48,"tag":220,"props":1746,"children":1747},{"style":276},[1748],{"type":54,"value":467},{"type":48,"tag":220,"props":1750,"children":1751},{"style":394},[1752],{"type":54,"value":1711},{"type":48,"tag":220,"props":1754,"children":1755},{"style":276},[1756],{"type":54,"value":969},{"type":48,"tag":220,"props":1758,"children":1759},{"style":1718},[1760],{"type":54,"value":1761},"0.98",{"type":48,"tag":220,"props":1763,"children":1764},{"style":1718},[1765],{"type":54,"value":1766}," 0",{"type":48,"tag":220,"props":1768,"children":1769},{"style":1718},[1770],{"type":54,"value":1766},{"type":48,"tag":220,"props":1772,"children":1773},{"style":276},[1774],{"type":54,"value":1736},{"type":48,"tag":220,"props":1776,"children":1777},{"class":222,"line":369},[1778,1783,1787,1791,1795,1800,1804,1808],{"type":48,"tag":220,"props":1779,"children":1780},{"style":282},[1781],{"type":54,"value":1782},"  --background",{"type":48,"tag":220,"props":1784,"children":1785},{"style":276},[1786],{"type":54,"value":467},{"type":48,"tag":220,"props":1788,"children":1789},{"style":394},[1790],{"type":54,"value":1711},{"type":48,"tag":220,"props":1792,"children":1793},{"style":276},[1794],{"type":54,"value":969},{"type":48,"tag":220,"props":1796,"children":1797},{"style":1718},[1798],{"type":54,"value":1799},"1",{"type":48,"tag":220,"props":1801,"children":1802},{"style":1718},[1803],{"type":54,"value":1766},{"type":48,"tag":220,"props":1805,"children":1806},{"style":1718},[1807],{"type":54,"value":1766},{"type":48,"tag":220,"props":1809,"children":1810},{"style":276},[1811],{"type":54,"value":1736},{"type":48,"tag":220,"props":1813,"children":1814},{"class":222,"line":404},[1815,1820,1824,1828,1832,1837,1841,1845],{"type":48,"tag":220,"props":1816,"children":1817},{"style":282},[1818],{"type":54,"value":1819},"  --foreground",{"type":48,"tag":220,"props":1821,"children":1822},{"style":276},[1823],{"type":54,"value":467},{"type":48,"tag":220,"props":1825,"children":1826},{"style":394},[1827],{"type":54,"value":1711},{"type":48,"tag":220,"props":1829,"children":1830},{"style":276},[1831],{"type":54,"value":969},{"type":48,"tag":220,"props":1833,"children":1834},{"style":1718},[1835],{"type":54,"value":1836},"0.1",{"type":48,"tag":220,"props":1838,"children":1839},{"style":1718},[1840],{"type":54,"value":1766},{"type":48,"tag":220,"props":1842,"children":1843},{"style":1718},[1844],{"type":54,"value":1766},{"type":48,"tag":220,"props":1846,"children":1847},{"style":276},[1848],{"type":54,"value":1736},{"type":48,"tag":220,"props":1850,"children":1851},{"class":222,"line":446},[1852,1857,1861,1865,1869,1873,1877,1881],{"type":48,"tag":220,"props":1853,"children":1854},{"style":282},[1855],{"type":54,"value":1856},"  --card",{"type":48,"tag":220,"props":1858,"children":1859},{"style":276},[1860],{"type":54,"value":467},{"type":48,"tag":220,"props":1862,"children":1863},{"style":394},[1864],{"type":54,"value":1711},{"type":48,"tag":220,"props":1866,"children":1867},{"style":276},[1868],{"type":54,"value":969},{"type":48,"tag":220,"props":1870,"children":1871},{"style":1718},[1872],{"type":54,"value":1799},{"type":48,"tag":220,"props":1874,"children":1875},{"style":1718},[1876],{"type":54,"value":1766},{"type":48,"tag":220,"props":1878,"children":1879},{"style":1718},[1880],{"type":54,"value":1766},{"type":48,"tag":220,"props":1882,"children":1883},{"style":276},[1884],{"type":54,"value":1736},{"type":48,"tag":220,"props":1886,"children":1887},{"class":222,"line":455},[1888,1893,1897,1901,1905,1909,1913,1917],{"type":48,"tag":220,"props":1889,"children":1890},{"style":282},[1891],{"type":54,"value":1892},"  --card-foreground",{"type":48,"tag":220,"props":1894,"children":1895},{"style":276},[1896],{"type":54,"value":467},{"type":48,"tag":220,"props":1898,"children":1899},{"style":394},[1900],{"type":54,"value":1711},{"type":48,"tag":220,"props":1902,"children":1903},{"style":276},[1904],{"type":54,"value":969},{"type":48,"tag":220,"props":1906,"children":1907},{"style":1718},[1908],{"type":54,"value":1836},{"type":48,"tag":220,"props":1910,"children":1911},{"style":1718},[1912],{"type":54,"value":1766},{"type":48,"tag":220,"props":1914,"children":1915},{"style":1718},[1916],{"type":54,"value":1766},{"type":48,"tag":220,"props":1918,"children":1919},{"style":276},[1920],{"type":54,"value":1736},{"type":48,"tag":220,"props":1922,"children":1923},{"class":222,"line":482},[1924,1929,1933,1937,1941,1946,1950,1954],{"type":48,"tag":220,"props":1925,"children":1926},{"style":282},[1927],{"type":54,"value":1928},"  --border",{"type":48,"tag":220,"props":1930,"children":1931},{"style":276},[1932],{"type":54,"value":467},{"type":48,"tag":220,"props":1934,"children":1935},{"style":394},[1936],{"type":54,"value":1711},{"type":48,"tag":220,"props":1938,"children":1939},{"style":276},[1940],{"type":54,"value":969},{"type":48,"tag":220,"props":1942,"children":1943},{"style":1718},[1944],{"type":54,"value":1945},"0.9",{"type":48,"tag":220,"props":1947,"children":1948},{"style":1718},[1949],{"type":54,"value":1766},{"type":48,"tag":220,"props":1951,"children":1952},{"style":1718},[1953],{"type":54,"value":1766},{"type":48,"tag":220,"props":1955,"children":1956},{"style":276},[1957],{"type":54,"value":1736},{"type":48,"tag":220,"props":1959,"children":1960},{"class":222,"line":497},[1961,1966,1970,1974,1978,1982,1986,1990],{"type":48,"tag":220,"props":1962,"children":1963},{"style":282},[1964],{"type":54,"value":1965},"  --input",{"type":48,"tag":220,"props":1967,"children":1968},{"style":276},[1969],{"type":54,"value":467},{"type":48,"tag":220,"props":1971,"children":1972},{"style":394},[1973],{"type":54,"value":1711},{"type":48,"tag":220,"props":1975,"children":1976},{"style":276},[1977],{"type":54,"value":969},{"type":48,"tag":220,"props":1979,"children":1980},{"style":1718},[1981],{"type":54,"value":1945},{"type":48,"tag":220,"props":1983,"children":1984},{"style":1718},[1985],{"type":54,"value":1766},{"type":48,"tag":220,"props":1987,"children":1988},{"style":1718},[1989],{"type":54,"value":1766},{"type":48,"tag":220,"props":1991,"children":1992},{"style":276},[1993],{"type":54,"value":1736},{"type":48,"tag":220,"props":1995,"children":1996},{"class":222,"line":28},[1997,2002,2006,2010,2014,2018,2022,2026],{"type":48,"tag":220,"props":1998,"children":1999},{"style":282},[2000],{"type":54,"value":2001},"  --ring",{"type":48,"tag":220,"props":2003,"children":2004},{"style":276},[2005],{"type":54,"value":467},{"type":48,"tag":220,"props":2007,"children":2008},{"style":394},[2009],{"type":54,"value":1711},{"type":48,"tag":220,"props":2011,"children":2012},{"style":276},[2013],{"type":54,"value":969},{"type":48,"tag":220,"props":2015,"children":2016},{"style":1718},[2017],{"type":54,"value":1721},{"type":48,"tag":220,"props":2019,"children":2020},{"style":1718},[2021],{"type":54,"value":1766},{"type":48,"tag":220,"props":2023,"children":2024},{"style":1718},[2025],{"type":54,"value":1766},{"type":48,"tag":220,"props":2027,"children":2028},{"style":276},[2029],{"type":54,"value":1736},{"type":48,"tag":220,"props":2031,"children":2032},{"class":222,"line":845},[2033,2038,2042,2047],{"type":48,"tag":220,"props":2034,"children":2035},{"style":282},[2036],{"type":54,"value":2037},"  --radius",{"type":48,"tag":220,"props":2039,"children":2040},{"style":276},[2041],{"type":54,"value":467},{"type":48,"tag":220,"props":2043,"children":2044},{"style":1718},[2045],{"type":54,"value":2046}," 0.5rem",{"type":48,"tag":220,"props":2048,"children":2049},{"style":276},[2050],{"type":54,"value":315},{"type":48,"tag":220,"props":2052,"children":2053},{"class":222,"line":853},[2054],{"type":48,"tag":220,"props":2055,"children":2056},{"style":486},[2057],{"type":54,"value":2058},"  \u002F* See theme.css for full list *\u002F\n",{"type":48,"tag":220,"props":2060,"children":2061},{"class":222,"line":867},[2062],{"type":48,"tag":220,"props":2063,"children":2064},{"style":276},[2065],{"type":54,"value":902},{"type":48,"tag":220,"props":2067,"children":2068},{"class":222,"line":881},[2069],{"type":48,"tag":220,"props":2070,"children":2071},{"emptyLinePlaceholder":363},[2072],{"type":54,"value":366},{"type":48,"tag":220,"props":2074,"children":2075},{"class":222,"line":24},[2076,2080,2085],{"type":48,"tag":220,"props":2077,"children":2078},{"style":276},[2079],{"type":54,"value":415},{"type":48,"tag":220,"props":2081,"children":2082},{"style":227},[2083],{"type":54,"value":2084},"dark",{"type":48,"tag":220,"props":2086,"children":2087},{"style":276},[2088],{"type":54,"value":812},{"type":48,"tag":220,"props":2090,"children":2091},{"class":222,"line":926},[2092,2096,2100,2104,2108,2113,2117,2121],{"type":48,"tag":220,"props":2093,"children":2094},{"style":282},[2095],{"type":54,"value":1782},{"type":48,"tag":220,"props":2097,"children":2098},{"style":276},[2099],{"type":54,"value":467},{"type":48,"tag":220,"props":2101,"children":2102},{"style":394},[2103],{"type":54,"value":1711},{"type":48,"tag":220,"props":2105,"children":2106},{"style":276},[2107],{"type":54,"value":969},{"type":48,"tag":220,"props":2109,"children":2110},{"style":1718},[2111],{"type":54,"value":2112},"0.15",{"type":48,"tag":220,"props":2114,"children":2115},{"style":1718},[2116],{"type":54,"value":1766},{"type":48,"tag":220,"props":2118,"children":2119},{"style":1718},[2120],{"type":54,"value":1766},{"type":48,"tag":220,"props":2122,"children":2123},{"style":276},[2124],{"type":54,"value":1736},{"type":48,"tag":220,"props":2126,"children":2127},{"class":222,"line":954},[2128,2132,2136,2140,2144,2148,2152,2156],{"type":48,"tag":220,"props":2129,"children":2130},{"style":282},[2131],{"type":54,"value":1819},{"type":48,"tag":220,"props":2133,"children":2134},{"style":276},[2135],{"type":54,"value":467},{"type":48,"tag":220,"props":2137,"children":2138},{"style":394},[2139],{"type":54,"value":1711},{"type":48,"tag":220,"props":2141,"children":2142},{"style":276},[2143],{"type":54,"value":969},{"type":48,"tag":220,"props":2145,"children":2146},{"style":1718},[2147],{"type":54,"value":1761},{"type":48,"tag":220,"props":2149,"children":2150},{"style":1718},[2151],{"type":54,"value":1766},{"type":48,"tag":220,"props":2153,"children":2154},{"style":1718},[2155],{"type":54,"value":1766},{"type":48,"tag":220,"props":2157,"children":2158},{"style":276},[2159],{"type":54,"value":1736},{"type":48,"tag":220,"props":2161,"children":2162},{"class":222,"line":1039},[2163],{"type":48,"tag":220,"props":2164,"children":2165},{"style":486},[2166],{"type":54,"value":2167},"  \u002F* Dark mode overrides *\u002F\n",{"type":48,"tag":220,"props":2169,"children":2170},{"class":222,"line":1048},[2171],{"type":48,"tag":220,"props":2172,"children":2173},{"style":276},[2174],{"type":54,"value":902},{"type":48,"tag":1411,"props":2176,"children":2177},{},[],{"type":48,"tag":63,"props":2179,"children":2181},{"id":2180},"neonauthuiprovider-props",[2182],{"type":54,"value":2183},"NeonAuthUIProvider Props",{"type":48,"tag":57,"props":2185,"children":2186},{},[2187],{"type":54,"value":2188},"Full configuration options:",{"type":48,"tag":209,"props":2190,"children":2192},{"className":258,"code":2191,"language":260,"meta":214,"style":214},"\u003CNeonAuthUIProvider\n  \u002F\u002F Required\n  authClient={authClient}\n\n  \u002F\u002F Navigation (required for React Router)\n  navigate={navigate}           \u002F\u002F Router's navigate function\n  Link={({href, children}) => \u003CLink to={href}>{children}\u003C\u002FLink>}                   \u002F\u002F Router's Link component\n  redirectTo=\"\u002Fdashboard\"       \u002F\u002F Where to redirect after auth\n\n  \u002F\u002F Social\u002FOAuth Providers\n  social={{\n    providers: ['google'],\n  }}\n\n  \u002F\u002F Feature Flags\n  emailOTP={true}               \u002F\u002F Enable email OTP sign-in\n  emailVerification={true}      \u002F\u002F Require email verification\n  magicLink={false}             \u002F\u002F Magic link (disabled by default)\n  multiSession={false}          \u002F\u002F Multiple sessions (disabled)\n\n  \u002F\u002F Credentials Configuration\n  credentials={{\n    forgotPassword: true,       \u002F\u002F Show forgot password link\n  }}\n\n  \u002F\u002F Sign Up Fields\n  signUp={{\n    fields: ['name'],           \u002F\u002F Additional fields: 'name', 'username', etc.\n  }}\n\n  \u002F\u002F Account Settings Fields\n  account={{\n    fields: ['image', 'name', 'company', 'age', 'newsletter'],\n  }}\n\n  \u002F\u002F Avatar Configuration\n  avatar={{\n    size: 256,\n    extension: 'webp',\n  }}\n\n  \u002F\u002F Organization Features\n  organization={{}}             \u002F\u002F Enable org features\n\n  \u002F\u002F Dark Mode\n  defaultTheme=\"system\"         \u002F\u002F 'light' | 'dark' | 'system'\n\n  \u002F\u002F Custom Labels\n  localization={{\n    SIGN_IN: 'Welcome Back',\n    SIGN_IN_DESCRIPTION: 'Sign in to your account',\n    SIGN_UP: 'Create Account',\n    SIGN_UP_DESCRIPTION: 'Join us today',\n    FORGOT_PASSWORD: 'Forgot Password?',\n    OR_CONTINUE_WITH: 'or continue with',\n    \u002F\u002F See better-auth-ui docs for full list\n  }}\n>\n  {children}\n\u003C\u002FNeonAuthUIProvider>\n",[2193],{"type":48,"tag":100,"props":2194,"children":2195},{"__ignoreMap":214},[2196,2207,2215,2234,2241,2249,2275,2350,2379,2386,2394,2407,2446,2454,2461,2469,2495,2520,2546,2571,2578,2586,2598,2626,2634,2642,2651,2664,2707,2715,2723,2732,2745,2849,2857,2865,2874,2887,2909,2939,2947,2955,2964,2983,2991,3000,3029,3037,3046,3059,3089,3119,3149,3179,3209,3239,3248,3256,3264,3281],{"type":48,"tag":220,"props":2197,"children":2198},{"class":222,"line":223},[2199,2203],{"type":48,"tag":220,"props":2200,"children":2201},{"style":276},[2202],{"type":54,"value":1592},{"type":48,"tag":220,"props":2204,"children":2205},{"style":282},[2206],{"type":54,"value":878},{"type":48,"tag":220,"props":2208,"children":2209},{"class":222,"line":318},[2210],{"type":48,"tag":220,"props":2211,"children":2212},{"style":486},[2213],{"type":54,"value":2214},"  \u002F\u002F Required\n",{"type":48,"tag":220,"props":2216,"children":2217},{"class":222,"line":359},[2218,2222,2226,2230],{"type":48,"tag":220,"props":2219,"children":2220},{"style":282},[2221],{"type":54,"value":1604},{"type":48,"tag":220,"props":2223,"children":2224},{"style":276},[2225],{"type":54,"value":892},{"type":48,"tag":220,"props":2227,"children":2228},{"style":282},[2229],{"type":54,"value":897},{"type":48,"tag":220,"props":2231,"children":2232},{"style":276},[2233],{"type":54,"value":902},{"type":48,"tag":220,"props":2235,"children":2236},{"class":222,"line":369},[2237],{"type":48,"tag":220,"props":2238,"children":2239},{"emptyLinePlaceholder":363},[2240],{"type":54,"value":366},{"type":48,"tag":220,"props":2242,"children":2243},{"class":222,"line":404},[2244],{"type":48,"tag":220,"props":2245,"children":2246},{"style":486},[2247],{"type":54,"value":2248},"  \u002F\u002F Navigation (required for React Router)\n",{"type":48,"tag":220,"props":2250,"children":2251},{"class":222,"line":446},[2252,2257,2261,2265,2270],{"type":48,"tag":220,"props":2253,"children":2254},{"style":282},[2255],{"type":54,"value":2256},"  navigate",{"type":48,"tag":220,"props":2258,"children":2259},{"style":276},[2260],{"type":54,"value":892},{"type":48,"tag":220,"props":2262,"children":2263},{"style":282},[2264],{"type":54,"value":919},{"type":48,"tag":220,"props":2266,"children":2267},{"style":276},[2268],{"type":54,"value":2269},"}",{"type":48,"tag":220,"props":2271,"children":2272},{"style":486},[2273],{"type":54,"value":2274},"           \u002F\u002F Router's navigate function\n",{"type":48,"tag":220,"props":2276,"children":2277},{"class":222,"line":455},[2278,2283,2287,2291,2295,2299,2303,2307,2311,2316,2320,2324,2328,2332,2336,2340,2345],{"type":48,"tag":220,"props":2279,"children":2280},{"style":282},[2281],{"type":54,"value":2282},"  Link",{"type":48,"tag":220,"props":2284,"children":2285},{"style":276},[2286],{"type":54,"value":892},{"type":48,"tag":220,"props":2288,"children":2289},{"style":282},[2290],{"type":54,"value":969},{"type":48,"tag":220,"props":2292,"children":2293},{"style":276},[2294],{"type":54,"value":974},{"type":48,"tag":220,"props":2296,"children":2297},{"style":282},[2298],{"type":54,"value":1011},{"type":48,"tag":220,"props":2300,"children":2301},{"style":276},[2302],{"type":54,"value":983},{"type":48,"tag":220,"props":2304,"children":2305},{"style":282},[2306],{"type":54,"value":771},{"type":48,"tag":220,"props":2308,"children":2309},{"style":276},[2310],{"type":54,"value":2269},{"type":48,"tag":220,"props":2312,"children":2313},{"style":282},[2314],{"type":54,"value":2315},") => \u003CLink to",{"type":48,"tag":220,"props":2317,"children":2318},{"style":276},[2319],{"type":54,"value":892},{"type":48,"tag":220,"props":2321,"children":2322},{"style":282},[2323],{"type":54,"value":1011},{"type":48,"tag":220,"props":2325,"children":2326},{"style":276},[2327],{"type":54,"value":1016},{"type":48,"tag":220,"props":2329,"children":2330},{"style":282},[2331],{"type":54,"value":1021},{"type":48,"tag":220,"props":2333,"children":2334},{"style":276},[2335],{"type":54,"value":1026},{"type":48,"tag":220,"props":2337,"children":2338},{"style":282},[2339],{"type":54,"value":1031},{"type":48,"tag":220,"props":2341,"children":2342},{"style":276},[2343],{"type":54,"value":2344},">}",{"type":48,"tag":220,"props":2346,"children":2347},{"style":486},[2348],{"type":54,"value":2349},"                   \u002F\u002F Router's Link component\n",{"type":48,"tag":220,"props":2351,"children":2352},{"class":222,"line":482},[2353,2358,2362,2366,2370,2374],{"type":48,"tag":220,"props":2354,"children":2355},{"style":282},[2356],{"type":54,"value":2357},"  redirectTo",{"type":48,"tag":220,"props":2359,"children":2360},{"style":276},[2361],{"type":54,"value":391},{"type":48,"tag":220,"props":2363,"children":2364},{"style":276},[2365],{"type":54,"value":941},{"type":48,"tag":220,"props":2367,"children":2368},{"style":233},[2369],{"type":54,"value":946},{"type":48,"tag":220,"props":2371,"children":2372},{"style":276},[2373],{"type":54,"value":941},{"type":48,"tag":220,"props":2375,"children":2376},{"style":486},[2377],{"type":54,"value":2378},"       \u002F\u002F Where to redirect after auth\n",{"type":48,"tag":220,"props":2380,"children":2381},{"class":222,"line":497},[2382],{"type":48,"tag":220,"props":2383,"children":2384},{"emptyLinePlaceholder":363},[2385],{"type":54,"value":366},{"type":48,"tag":220,"props":2387,"children":2388},{"class":222,"line":28},[2389],{"type":48,"tag":220,"props":2390,"children":2391},{"style":486},[2392],{"type":54,"value":2393},"  \u002F\u002F Social\u002FOAuth Providers\n",{"type":48,"tag":220,"props":2395,"children":2396},{"class":222,"line":845},[2397,2402],{"type":48,"tag":220,"props":2398,"children":2399},{"style":282},[2400],{"type":54,"value":2401},"  social",{"type":48,"tag":220,"props":2403,"children":2404},{"style":276},[2405],{"type":54,"value":2406},"={{\n",{"type":48,"tag":220,"props":2408,"children":2409},{"class":222,"line":853},[2410,2415,2419,2424,2428,2433,2437,2442],{"type":48,"tag":220,"props":2411,"children":2412},{"style":227},[2413],{"type":54,"value":2414},"    providers",{"type":48,"tag":220,"props":2416,"children":2417},{"style":276},[2418],{"type":54,"value":467},{"type":48,"tag":220,"props":2420,"children":2421},{"style":459},[2422],{"type":54,"value":2423}," [",{"type":48,"tag":220,"props":2425,"children":2426},{"style":276},[2427],{"type":54,"value":310},{"type":48,"tag":220,"props":2429,"children":2430},{"style":233},[2431],{"type":54,"value":2432},"google",{"type":48,"tag":220,"props":2434,"children":2435},{"style":276},[2436],{"type":54,"value":310},{"type":48,"tag":220,"props":2438,"children":2439},{"style":459},[2440],{"type":54,"value":2441},"]",{"type":48,"tag":220,"props":2443,"children":2444},{"style":276},[2445],{"type":54,"value":443},{"type":48,"tag":220,"props":2447,"children":2448},{"class":222,"line":867},[2449],{"type":48,"tag":220,"props":2450,"children":2451},{"style":276},[2452],{"type":54,"value":2453},"  }}\n",{"type":48,"tag":220,"props":2455,"children":2456},{"class":222,"line":881},[2457],{"type":48,"tag":220,"props":2458,"children":2459},{"emptyLinePlaceholder":363},[2460],{"type":54,"value":366},{"type":48,"tag":220,"props":2462,"children":2463},{"class":222,"line":24},[2464],{"type":48,"tag":220,"props":2465,"children":2466},{"style":486},[2467],{"type":54,"value":2468},"  \u002F\u002F Feature Flags\n",{"type":48,"tag":220,"props":2470,"children":2471},{"class":222,"line":926},[2472,2477,2481,2486,2490],{"type":48,"tag":220,"props":2473,"children":2474},{"style":282},[2475],{"type":54,"value":2476},"  emailOTP",{"type":48,"tag":220,"props":2478,"children":2479},{"style":276},[2480],{"type":54,"value":892},{"type":48,"tag":220,"props":2482,"children":2483},{"style":282},[2484],{"type":54,"value":2485},"true",{"type":48,"tag":220,"props":2487,"children":2488},{"style":276},[2489],{"type":54,"value":2269},{"type":48,"tag":220,"props":2491,"children":2492},{"style":486},[2493],{"type":54,"value":2494},"               \u002F\u002F Enable email OTP sign-in\n",{"type":48,"tag":220,"props":2496,"children":2497},{"class":222,"line":954},[2498,2503,2507,2511,2515],{"type":48,"tag":220,"props":2499,"children":2500},{"style":282},[2501],{"type":54,"value":2502},"  emailVerification",{"type":48,"tag":220,"props":2504,"children":2505},{"style":276},[2506],{"type":54,"value":892},{"type":48,"tag":220,"props":2508,"children":2509},{"style":282},[2510],{"type":54,"value":2485},{"type":48,"tag":220,"props":2512,"children":2513},{"style":276},[2514],{"type":54,"value":2269},{"type":48,"tag":220,"props":2516,"children":2517},{"style":486},[2518],{"type":54,"value":2519},"      \u002F\u002F Require email verification\n",{"type":48,"tag":220,"props":2521,"children":2522},{"class":222,"line":1039},[2523,2528,2532,2537,2541],{"type":48,"tag":220,"props":2524,"children":2525},{"style":282},[2526],{"type":54,"value":2527},"  magicLink",{"type":48,"tag":220,"props":2529,"children":2530},{"style":276},[2531],{"type":54,"value":892},{"type":48,"tag":220,"props":2533,"children":2534},{"style":282},[2535],{"type":54,"value":2536},"false",{"type":48,"tag":220,"props":2538,"children":2539},{"style":276},[2540],{"type":54,"value":2269},{"type":48,"tag":220,"props":2542,"children":2543},{"style":486},[2544],{"type":54,"value":2545},"             \u002F\u002F Magic link (disabled by default)\n",{"type":48,"tag":220,"props":2547,"children":2548},{"class":222,"line":1048},[2549,2554,2558,2562,2566],{"type":48,"tag":220,"props":2550,"children":2551},{"style":282},[2552],{"type":54,"value":2553},"  multiSession",{"type":48,"tag":220,"props":2555,"children":2556},{"style":276},[2557],{"type":54,"value":892},{"type":48,"tag":220,"props":2559,"children":2560},{"style":282},[2561],{"type":54,"value":2536},{"type":48,"tag":220,"props":2563,"children":2564},{"style":276},[2565],{"type":54,"value":2269},{"type":48,"tag":220,"props":2567,"children":2568},{"style":486},[2569],{"type":54,"value":2570},"          \u002F\u002F Multiple sessions (disabled)\n",{"type":48,"tag":220,"props":2572,"children":2573},{"class":222,"line":1065},[2574],{"type":48,"tag":220,"props":2575,"children":2576},{"emptyLinePlaceholder":363},[2577],{"type":54,"value":366},{"type":48,"tag":220,"props":2579,"children":2580},{"class":222,"line":1084},[2581],{"type":48,"tag":220,"props":2582,"children":2583},{"style":486},[2584],{"type":54,"value":2585},"  \u002F\u002F Credentials Configuration\n",{"type":48,"tag":220,"props":2587,"children":2588},{"class":222,"line":1097},[2589,2594],{"type":48,"tag":220,"props":2590,"children":2591},{"style":282},[2592],{"type":54,"value":2593},"  credentials",{"type":48,"tag":220,"props":2595,"children":2596},{"style":276},[2597],{"type":54,"value":2406},{"type":48,"tag":220,"props":2599,"children":2601},{"class":222,"line":2600},23,[2602,2607,2611,2617,2621],{"type":48,"tag":220,"props":2603,"children":2604},{"style":227},[2605],{"type":54,"value":2606},"    forgotPassword",{"type":48,"tag":220,"props":2608,"children":2609},{"style":276},[2610],{"type":54,"value":467},{"type":48,"tag":220,"props":2612,"children":2614},{"style":2613},"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC",[2615],{"type":54,"value":2616}," true",{"type":48,"tag":220,"props":2618,"children":2619},{"style":276},[2620],{"type":54,"value":983},{"type":48,"tag":220,"props":2622,"children":2623},{"style":486},[2624],{"type":54,"value":2625},"       \u002F\u002F Show forgot password link\n",{"type":48,"tag":220,"props":2627,"children":2629},{"class":222,"line":2628},24,[2630],{"type":48,"tag":220,"props":2631,"children":2632},{"style":276},[2633],{"type":54,"value":2453},{"type":48,"tag":220,"props":2635,"children":2637},{"class":222,"line":2636},25,[2638],{"type":48,"tag":220,"props":2639,"children":2640},{"emptyLinePlaceholder":363},[2641],{"type":54,"value":366},{"type":48,"tag":220,"props":2643,"children":2645},{"class":222,"line":2644},26,[2646],{"type":48,"tag":220,"props":2647,"children":2648},{"style":486},[2649],{"type":54,"value":2650},"  \u002F\u002F Sign Up Fields\n",{"type":48,"tag":220,"props":2652,"children":2654},{"class":222,"line":2653},27,[2655,2660],{"type":48,"tag":220,"props":2656,"children":2657},{"style":282},[2658],{"type":54,"value":2659},"  signUp",{"type":48,"tag":220,"props":2661,"children":2662},{"style":276},[2663],{"type":54,"value":2406},{"type":48,"tag":220,"props":2665,"children":2667},{"class":222,"line":2666},28,[2668,2673,2677,2681,2685,2690,2694,2698,2702],{"type":48,"tag":220,"props":2669,"children":2670},{"style":227},[2671],{"type":54,"value":2672},"    fields",{"type":48,"tag":220,"props":2674,"children":2675},{"style":276},[2676],{"type":54,"value":467},{"type":48,"tag":220,"props":2678,"children":2679},{"style":459},[2680],{"type":54,"value":2423},{"type":48,"tag":220,"props":2682,"children":2683},{"style":276},[2684],{"type":54,"value":310},{"type":48,"tag":220,"props":2686,"children":2687},{"style":233},[2688],{"type":54,"value":2689},"name",{"type":48,"tag":220,"props":2691,"children":2692},{"style":276},[2693],{"type":54,"value":310},{"type":48,"tag":220,"props":2695,"children":2696},{"style":459},[2697],{"type":54,"value":2441},{"type":48,"tag":220,"props":2699,"children":2700},{"style":276},[2701],{"type":54,"value":983},{"type":48,"tag":220,"props":2703,"children":2704},{"style":486},[2705],{"type":54,"value":2706},"           \u002F\u002F Additional fields: 'name', 'username', etc.\n",{"type":48,"tag":220,"props":2708,"children":2710},{"class":222,"line":2709},29,[2711],{"type":48,"tag":220,"props":2712,"children":2713},{"style":276},[2714],{"type":54,"value":2453},{"type":48,"tag":220,"props":2716,"children":2718},{"class":222,"line":2717},30,[2719],{"type":48,"tag":220,"props":2720,"children":2721},{"emptyLinePlaceholder":363},[2722],{"type":54,"value":366},{"type":48,"tag":220,"props":2724,"children":2726},{"class":222,"line":2725},31,[2727],{"type":48,"tag":220,"props":2728,"children":2729},{"style":486},[2730],{"type":54,"value":2731},"  \u002F\u002F Account Settings Fields\n",{"type":48,"tag":220,"props":2733,"children":2735},{"class":222,"line":2734},32,[2736,2741],{"type":48,"tag":220,"props":2737,"children":2738},{"style":282},[2739],{"type":54,"value":2740},"  account",{"type":48,"tag":220,"props":2742,"children":2743},{"style":276},[2744],{"type":54,"value":2406},{"type":48,"tag":220,"props":2746,"children":2748},{"class":222,"line":2747},33,[2749,2753,2757,2761,2765,2770,2774,2778,2782,2786,2790,2794,2798,2803,2807,2811,2815,2820,2824,2828,2832,2837,2841,2845],{"type":48,"tag":220,"props":2750,"children":2751},{"style":227},[2752],{"type":54,"value":2672},{"type":48,"tag":220,"props":2754,"children":2755},{"style":276},[2756],{"type":54,"value":467},{"type":48,"tag":220,"props":2758,"children":2759},{"style":459},[2760],{"type":54,"value":2423},{"type":48,"tag":220,"props":2762,"children":2763},{"style":276},[2764],{"type":54,"value":310},{"type":48,"tag":220,"props":2766,"children":2767},{"style":233},[2768],{"type":54,"value":2769},"image",{"type":48,"tag":220,"props":2771,"children":2772},{"style":276},[2773],{"type":54,"value":310},{"type":48,"tag":220,"props":2775,"children":2776},{"style":276},[2777],{"type":54,"value":983},{"type":48,"tag":220,"props":2779,"children":2780},{"style":276},[2781],{"type":54,"value":300},{"type":48,"tag":220,"props":2783,"children":2784},{"style":233},[2785],{"type":54,"value":2689},{"type":48,"tag":220,"props":2787,"children":2788},{"style":276},[2789],{"type":54,"value":310},{"type":48,"tag":220,"props":2791,"children":2792},{"style":276},[2793],{"type":54,"value":983},{"type":48,"tag":220,"props":2795,"children":2796},{"style":276},[2797],{"type":54,"value":300},{"type":48,"tag":220,"props":2799,"children":2800},{"style":233},[2801],{"type":54,"value":2802},"company",{"type":48,"tag":220,"props":2804,"children":2805},{"style":276},[2806],{"type":54,"value":310},{"type":48,"tag":220,"props":2808,"children":2809},{"style":276},[2810],{"type":54,"value":983},{"type":48,"tag":220,"props":2812,"children":2813},{"style":276},[2814],{"type":54,"value":300},{"type":48,"tag":220,"props":2816,"children":2817},{"style":233},[2818],{"type":54,"value":2819},"age",{"type":48,"tag":220,"props":2821,"children":2822},{"style":276},[2823],{"type":54,"value":310},{"type":48,"tag":220,"props":2825,"children":2826},{"style":276},[2827],{"type":54,"value":983},{"type":48,"tag":220,"props":2829,"children":2830},{"style":276},[2831],{"type":54,"value":300},{"type":48,"tag":220,"props":2833,"children":2834},{"style":233},[2835],{"type":54,"value":2836},"newsletter",{"type":48,"tag":220,"props":2838,"children":2839},{"style":276},[2840],{"type":54,"value":310},{"type":48,"tag":220,"props":2842,"children":2843},{"style":459},[2844],{"type":54,"value":2441},{"type":48,"tag":220,"props":2846,"children":2847},{"style":276},[2848],{"type":54,"value":443},{"type":48,"tag":220,"props":2850,"children":2852},{"class":222,"line":2851},34,[2853],{"type":48,"tag":220,"props":2854,"children":2855},{"style":276},[2856],{"type":54,"value":2453},{"type":48,"tag":220,"props":2858,"children":2860},{"class":222,"line":2859},35,[2861],{"type":48,"tag":220,"props":2862,"children":2863},{"emptyLinePlaceholder":363},[2864],{"type":54,"value":366},{"type":48,"tag":220,"props":2866,"children":2868},{"class":222,"line":2867},36,[2869],{"type":48,"tag":220,"props":2870,"children":2871},{"style":486},[2872],{"type":54,"value":2873},"  \u002F\u002F Avatar Configuration\n",{"type":48,"tag":220,"props":2875,"children":2877},{"class":222,"line":2876},37,[2878,2883],{"type":48,"tag":220,"props":2879,"children":2880},{"style":282},[2881],{"type":54,"value":2882},"  avatar",{"type":48,"tag":220,"props":2884,"children":2885},{"style":276},[2886],{"type":54,"value":2406},{"type":48,"tag":220,"props":2888,"children":2890},{"class":222,"line":2889},38,[2891,2896,2900,2905],{"type":48,"tag":220,"props":2892,"children":2893},{"style":227},[2894],{"type":54,"value":2895},"    size",{"type":48,"tag":220,"props":2897,"children":2898},{"style":276},[2899],{"type":54,"value":467},{"type":48,"tag":220,"props":2901,"children":2902},{"style":1718},[2903],{"type":54,"value":2904}," 256",{"type":48,"tag":220,"props":2906,"children":2907},{"style":276},[2908],{"type":54,"value":443},{"type":48,"tag":220,"props":2910,"children":2912},{"class":222,"line":2911},39,[2913,2918,2922,2926,2931,2935],{"type":48,"tag":220,"props":2914,"children":2915},{"style":227},[2916],{"type":54,"value":2917},"    extension",{"type":48,"tag":220,"props":2919,"children":2920},{"style":276},[2921],{"type":54,"value":467},{"type":48,"tag":220,"props":2923,"children":2924},{"style":276},[2925],{"type":54,"value":300},{"type":48,"tag":220,"props":2927,"children":2928},{"style":233},[2929],{"type":54,"value":2930},"webp",{"type":48,"tag":220,"props":2932,"children":2933},{"style":276},[2934],{"type":54,"value":310},{"type":48,"tag":220,"props":2936,"children":2937},{"style":276},[2938],{"type":54,"value":443},{"type":48,"tag":220,"props":2940,"children":2942},{"class":222,"line":2941},40,[2943],{"type":48,"tag":220,"props":2944,"children":2945},{"style":276},[2946],{"type":54,"value":2453},{"type":48,"tag":220,"props":2948,"children":2950},{"class":222,"line":2949},41,[2951],{"type":48,"tag":220,"props":2952,"children":2953},{"emptyLinePlaceholder":363},[2954],{"type":54,"value":366},{"type":48,"tag":220,"props":2956,"children":2958},{"class":222,"line":2957},42,[2959],{"type":48,"tag":220,"props":2960,"children":2961},{"style":486},[2962],{"type":54,"value":2963},"  \u002F\u002F Organization Features\n",{"type":48,"tag":220,"props":2965,"children":2967},{"class":222,"line":2966},43,[2968,2973,2978],{"type":48,"tag":220,"props":2969,"children":2970},{"style":282},[2971],{"type":54,"value":2972},"  organization",{"type":48,"tag":220,"props":2974,"children":2975},{"style":276},[2976],{"type":54,"value":2977},"={{}}",{"type":48,"tag":220,"props":2979,"children":2980},{"style":486},[2981],{"type":54,"value":2982},"             \u002F\u002F Enable org features\n",{"type":48,"tag":220,"props":2984,"children":2986},{"class":222,"line":2985},44,[2987],{"type":48,"tag":220,"props":2988,"children":2989},{"emptyLinePlaceholder":363},[2990],{"type":54,"value":366},{"type":48,"tag":220,"props":2992,"children":2994},{"class":222,"line":2993},45,[2995],{"type":48,"tag":220,"props":2996,"children":2997},{"style":486},[2998],{"type":54,"value":2999},"  \u002F\u002F Dark Mode\n",{"type":48,"tag":220,"props":3001,"children":3003},{"class":222,"line":3002},46,[3004,3008,3012,3016,3020,3024],{"type":48,"tag":220,"props":3005,"children":3006},{"style":282},[3007],{"type":54,"value":1624},{"type":48,"tag":220,"props":3009,"children":3010},{"style":276},[3011],{"type":54,"value":391},{"type":48,"tag":220,"props":3013,"children":3014},{"style":276},[3015],{"type":54,"value":941},{"type":48,"tag":220,"props":3017,"children":3018},{"style":233},[3019],{"type":54,"value":1637},{"type":48,"tag":220,"props":3021,"children":3022},{"style":276},[3023],{"type":54,"value":941},{"type":48,"tag":220,"props":3025,"children":3026},{"style":486},[3027],{"type":54,"value":3028},"         \u002F\u002F 'light' | 'dark' | 'system'\n",{"type":48,"tag":220,"props":3030,"children":3032},{"class":222,"line":3031},47,[3033],{"type":48,"tag":220,"props":3034,"children":3035},{"emptyLinePlaceholder":363},[3036],{"type":54,"value":366},{"type":48,"tag":220,"props":3038,"children":3040},{"class":222,"line":3039},48,[3041],{"type":48,"tag":220,"props":3042,"children":3043},{"style":486},[3044],{"type":54,"value":3045},"  \u002F\u002F Custom Labels\n",{"type":48,"tag":220,"props":3047,"children":3049},{"class":222,"line":3048},49,[3050,3055],{"type":48,"tag":220,"props":3051,"children":3052},{"style":282},[3053],{"type":54,"value":3054},"  localization",{"type":48,"tag":220,"props":3056,"children":3057},{"style":276},[3058],{"type":54,"value":2406},{"type":48,"tag":220,"props":3060,"children":3062},{"class":222,"line":3061},50,[3063,3068,3072,3076,3081,3085],{"type":48,"tag":220,"props":3064,"children":3065},{"style":227},[3066],{"type":54,"value":3067},"    SIGN_IN",{"type":48,"tag":220,"props":3069,"children":3070},{"style":276},[3071],{"type":54,"value":467},{"type":48,"tag":220,"props":3073,"children":3074},{"style":276},[3075],{"type":54,"value":300},{"type":48,"tag":220,"props":3077,"children":3078},{"style":233},[3079],{"type":54,"value":3080},"Welcome Back",{"type":48,"tag":220,"props":3082,"children":3083},{"style":276},[3084],{"type":54,"value":310},{"type":48,"tag":220,"props":3086,"children":3087},{"style":276},[3088],{"type":54,"value":443},{"type":48,"tag":220,"props":3090,"children":3092},{"class":222,"line":3091},51,[3093,3098,3102,3106,3111,3115],{"type":48,"tag":220,"props":3094,"children":3095},{"style":227},[3096],{"type":54,"value":3097},"    SIGN_IN_DESCRIPTION",{"type":48,"tag":220,"props":3099,"children":3100},{"style":276},[3101],{"type":54,"value":467},{"type":48,"tag":220,"props":3103,"children":3104},{"style":276},[3105],{"type":54,"value":300},{"type":48,"tag":220,"props":3107,"children":3108},{"style":233},[3109],{"type":54,"value":3110},"Sign in to your account",{"type":48,"tag":220,"props":3112,"children":3113},{"style":276},[3114],{"type":54,"value":310},{"type":48,"tag":220,"props":3116,"children":3117},{"style":276},[3118],{"type":54,"value":443},{"type":48,"tag":220,"props":3120,"children":3122},{"class":222,"line":3121},52,[3123,3128,3132,3136,3141,3145],{"type":48,"tag":220,"props":3124,"children":3125},{"style":227},[3126],{"type":54,"value":3127},"    SIGN_UP",{"type":48,"tag":220,"props":3129,"children":3130},{"style":276},[3131],{"type":54,"value":467},{"type":48,"tag":220,"props":3133,"children":3134},{"style":276},[3135],{"type":54,"value":300},{"type":48,"tag":220,"props":3137,"children":3138},{"style":233},[3139],{"type":54,"value":3140},"Create Account",{"type":48,"tag":220,"props":3142,"children":3143},{"style":276},[3144],{"type":54,"value":310},{"type":48,"tag":220,"props":3146,"children":3147},{"style":276},[3148],{"type":54,"value":443},{"type":48,"tag":220,"props":3150,"children":3152},{"class":222,"line":3151},53,[3153,3158,3162,3166,3171,3175],{"type":48,"tag":220,"props":3154,"children":3155},{"style":227},[3156],{"type":54,"value":3157},"    SIGN_UP_DESCRIPTION",{"type":48,"tag":220,"props":3159,"children":3160},{"style":276},[3161],{"type":54,"value":467},{"type":48,"tag":220,"props":3163,"children":3164},{"style":276},[3165],{"type":54,"value":300},{"type":48,"tag":220,"props":3167,"children":3168},{"style":233},[3169],{"type":54,"value":3170},"Join us today",{"type":48,"tag":220,"props":3172,"children":3173},{"style":276},[3174],{"type":54,"value":310},{"type":48,"tag":220,"props":3176,"children":3177},{"style":276},[3178],{"type":54,"value":443},{"type":48,"tag":220,"props":3180,"children":3182},{"class":222,"line":3181},54,[3183,3188,3192,3196,3201,3205],{"type":48,"tag":220,"props":3184,"children":3185},{"style":227},[3186],{"type":54,"value":3187},"    FORGOT_PASSWORD",{"type":48,"tag":220,"props":3189,"children":3190},{"style":276},[3191],{"type":54,"value":467},{"type":48,"tag":220,"props":3193,"children":3194},{"style":276},[3195],{"type":54,"value":300},{"type":48,"tag":220,"props":3197,"children":3198},{"style":233},[3199],{"type":54,"value":3200},"Forgot Password?",{"type":48,"tag":220,"props":3202,"children":3203},{"style":276},[3204],{"type":54,"value":310},{"type":48,"tag":220,"props":3206,"children":3207},{"style":276},[3208],{"type":54,"value":443},{"type":48,"tag":220,"props":3210,"children":3212},{"class":222,"line":3211},55,[3213,3218,3222,3226,3231,3235],{"type":48,"tag":220,"props":3214,"children":3215},{"style":227},[3216],{"type":54,"value":3217},"    OR_CONTINUE_WITH",{"type":48,"tag":220,"props":3219,"children":3220},{"style":276},[3221],{"type":54,"value":467},{"type":48,"tag":220,"props":3223,"children":3224},{"style":276},[3225],{"type":54,"value":300},{"type":48,"tag":220,"props":3227,"children":3228},{"style":233},[3229],{"type":54,"value":3230},"or continue with",{"type":48,"tag":220,"props":3232,"children":3233},{"style":276},[3234],{"type":54,"value":310},{"type":48,"tag":220,"props":3236,"children":3237},{"style":276},[3238],{"type":54,"value":443},{"type":48,"tag":220,"props":3240,"children":3242},{"class":222,"line":3241},56,[3243],{"type":48,"tag":220,"props":3244,"children":3245},{"style":486},[3246],{"type":54,"value":3247},"    \u002F\u002F See better-auth-ui docs for full list\n",{"type":48,"tag":220,"props":3249,"children":3251},{"class":222,"line":3250},57,[3252],{"type":48,"tag":220,"props":3253,"children":3254},{"style":276},[3255],{"type":54,"value":2453},{"type":48,"tag":220,"props":3257,"children":3259},{"class":222,"line":3258},58,[3260],{"type":48,"tag":220,"props":3261,"children":3262},{"style":276},[3263],{"type":54,"value":1081},{"type":48,"tag":220,"props":3265,"children":3267},{"class":222,"line":3266},59,[3268,3273,3277],{"type":48,"tag":220,"props":3269,"children":3270},{"style":276},[3271],{"type":54,"value":3272},"  {",{"type":48,"tag":220,"props":3274,"children":3275},{"style":282},[3276],{"type":54,"value":1021},{"type":48,"tag":220,"props":3278,"children":3279},{"style":276},[3280],{"type":54,"value":902},{"type":48,"tag":220,"props":3282,"children":3284},{"class":222,"line":3283},60,[3285,3290,3294],{"type":48,"tag":220,"props":3286,"children":3287},{"style":276},[3288],{"type":54,"value":3289},"\u003C\u002F",{"type":48,"tag":220,"props":3291,"children":3292},{"style":282},[3293],{"type":54,"value":1076},{"type":48,"tag":220,"props":3295,"children":3296},{"style":276},[3297],{"type":54,"value":1081},{"type":48,"tag":1411,"props":3299,"children":3300},{},[],{"type":48,"tag":63,"props":3302,"children":3304},{"id":3303},"ui-components",[3305],{"type":54,"value":3306},"UI Components",{"type":48,"tag":202,"props":3308,"children":3310},{"id":3309},"authview-main-auth-interface",[3311],{"type":54,"value":3312},"AuthView - Main Auth Interface",{"type":48,"tag":57,"props":3314,"children":3315},{},[3316],{"type":54,"value":3317},"Handles sign-in, sign-up, forgot password, and callback routes:",{"type":48,"tag":209,"props":3319,"children":3321},{"className":258,"code":3320,"language":260,"meta":214,"style":214},"import { AuthView } from '@neondatabase\u002Fauth\u002Freact\u002Fui';\n\n\u002F\u002F Route: \u002Fauth\u002F:pathname\nfunction AuthPage() {\n  const { pathname } = useParams(); \u002F\u002F 'sign-in', 'sign-up', 'forgot-password', etc.\n\n  return \u003CAuthView pathname={pathname} \u002F>;\n}\n",[3322],{"type":48,"tag":100,"props":3323,"children":3324},{"__ignoreMap":214},[3325,3365,3372,3380,3401,3444,3451,3498],{"type":48,"tag":220,"props":3326,"children":3327},{"class":222,"line":223},[3328,3332,3336,3341,3345,3349,3353,3357,3361],{"type":48,"tag":220,"props":3329,"children":3330},{"style":270},[3331],{"type":54,"value":273},{"type":48,"tag":220,"props":3333,"children":3334},{"style":276},[3335],{"type":54,"value":279},{"type":48,"tag":220,"props":3337,"children":3338},{"style":282},[3339],{"type":54,"value":3340}," AuthView",{"type":48,"tag":220,"props":3342,"children":3343},{"style":276},[3344],{"type":54,"value":290},{"type":48,"tag":220,"props":3346,"children":3347},{"style":270},[3348],{"type":54,"value":295},{"type":48,"tag":220,"props":3350,"children":3351},{"style":276},[3352],{"type":54,"value":300},{"type":48,"tag":220,"props":3354,"children":3355},{"style":233},[3356],{"type":54,"value":567},{"type":48,"tag":220,"props":3358,"children":3359},{"style":276},[3360],{"type":54,"value":310},{"type":48,"tag":220,"props":3362,"children":3363},{"style":276},[3364],{"type":54,"value":315},{"type":48,"tag":220,"props":3366,"children":3367},{"class":222,"line":318},[3368],{"type":48,"tag":220,"props":3369,"children":3370},{"emptyLinePlaceholder":363},[3371],{"type":54,"value":366},{"type":48,"tag":220,"props":3373,"children":3374},{"class":222,"line":359},[3375],{"type":48,"tag":220,"props":3376,"children":3377},{"style":486},[3378],{"type":54,"value":3379},"\u002F\u002F Route: \u002Fauth\u002F:pathname\n",{"type":48,"tag":220,"props":3381,"children":3382},{"class":222,"line":369},[3383,3388,3393,3397],{"type":48,"tag":220,"props":3384,"children":3385},{"style":378},[3386],{"type":54,"value":3387},"function",{"type":48,"tag":220,"props":3389,"children":3390},{"style":394},[3391],{"type":54,"value":3392}," AuthPage",{"type":48,"tag":220,"props":3394,"children":3395},{"style":276},[3396],{"type":54,"value":134},{"type":48,"tag":220,"props":3398,"children":3399},{"style":276},[3400],{"type":54,"value":812},{"type":48,"tag":220,"props":3402,"children":3403},{"class":222,"line":404},[3404,3408,3412,3417,3421,3425,3430,3434,3439],{"type":48,"tag":220,"props":3405,"children":3406},{"style":378},[3407],{"type":54,"value":820},{"type":48,"tag":220,"props":3409,"children":3410},{"style":276},[3411],{"type":54,"value":279},{"type":48,"tag":220,"props":3413,"children":3414},{"style":282},[3415],{"type":54,"value":3416}," pathname",{"type":48,"tag":220,"props":3418,"children":3419},{"style":276},[3420],{"type":54,"value":290},{"type":48,"tag":220,"props":3422,"children":3423},{"style":276},[3424],{"type":54,"value":830},{"type":48,"tag":220,"props":3426,"children":3427},{"style":394},[3428],{"type":54,"value":3429}," useParams",{"type":48,"tag":220,"props":3431,"children":3432},{"style":459},[3433],{"type":54,"value":134},{"type":48,"tag":220,"props":3435,"children":3436},{"style":276},[3437],{"type":54,"value":3438},";",{"type":48,"tag":220,"props":3440,"children":3441},{"style":486},[3442],{"type":54,"value":3443}," \u002F\u002F 'sign-in', 'sign-up', 'forgot-password', etc.\n",{"type":48,"tag":220,"props":3445,"children":3446},{"class":222,"line":446},[3447],{"type":48,"tag":220,"props":3448,"children":3449},{"emptyLinePlaceholder":363},[3450],{"type":54,"value":366},{"type":48,"tag":220,"props":3452,"children":3453},{"class":222,"line":455},[3454,3458,3463,3468,3472,3476,3480,3485,3489,3494],{"type":48,"tag":220,"props":3455,"children":3456},{"style":270},[3457],{"type":54,"value":859},{"type":48,"tag":220,"props":3459,"children":3460},{"style":459},[3461],{"type":54,"value":3462}," \u003C",{"type":48,"tag":220,"props":3464,"children":3465},{"style":227},[3466],{"type":54,"value":3467},"AuthView",{"type":48,"tag":220,"props":3469,"children":3470},{"style":227},[3471],{"type":54,"value":3416},{"type":48,"tag":220,"props":3473,"children":3474},{"style":459},[3475],{"type":54,"value":391},{"type":48,"tag":220,"props":3477,"children":3478},{"style":276},[3479],{"type":54,"value":974},{"type":48,"tag":220,"props":3481,"children":3482},{"style":459},[3483],{"type":54,"value":3484},"pathname",{"type":48,"tag":220,"props":3486,"children":3487},{"style":276},[3488],{"type":54,"value":2269},{"type":48,"tag":220,"props":3490,"children":3491},{"style":459},[3492],{"type":54,"value":3493}," \u002F>",{"type":48,"tag":220,"props":3495,"children":3496},{"style":276},[3497],{"type":54,"value":315},{"type":48,"tag":220,"props":3499,"children":3500},{"class":222,"line":482},[3501],{"type":48,"tag":220,"props":3502,"children":3503},{"style":276},[3504],{"type":54,"value":902},{"type":48,"tag":57,"props":3506,"children":3507},{},[3508,3513,3514,3520,3522,3528,3529,3535,3536,3542,3543,3549,3550],{"type":48,"tag":122,"props":3509,"children":3510},{},[3511],{"type":54,"value":3512},"Supported pathnames",{"type":54,"value":162},{"type":48,"tag":100,"props":3515,"children":3517},{"className":3516},[],[3518],{"type":54,"value":3519},"sign-in",{"type":54,"value":3521},", ",{"type":48,"tag":100,"props":3523,"children":3525},{"className":3524},[],[3526],{"type":54,"value":3527},"sign-up",{"type":54,"value":3521},{"type":48,"tag":100,"props":3530,"children":3532},{"className":3531},[],[3533],{"type":54,"value":3534},"forgot-password",{"type":54,"value":3521},{"type":48,"tag":100,"props":3537,"children":3539},{"className":3538},[],[3540],{"type":54,"value":3541},"reset-password",{"type":54,"value":3521},{"type":48,"tag":100,"props":3544,"children":3546},{"className":3545},[],[3547],{"type":54,"value":3548},"callback",{"type":54,"value":3521},{"type":48,"tag":100,"props":3551,"children":3553},{"className":3552},[],[3554],{"type":54,"value":3555},"sign-out",{"type":48,"tag":202,"props":3557,"children":3559},{"id":3558},"conditional-rendering",[3560],{"type":54,"value":3561},"Conditional Rendering",{"type":48,"tag":209,"props":3563,"children":3565},{"className":258,"code":3564,"language":260,"meta":214,"style":214},"import {\n  SignedIn,\n  SignedOut,\n  AuthLoading,\n  RedirectToSignIn\n} from '@neondatabase\u002Fauth\u002Freact\u002Fui';\n\nfunction MyPage() {\n  return (\n    \u003C>\n      {\u002F* Show while checking auth state *\u002F}\n      \u003CAuthLoading>\n        \u003CLoadingSpinner \u002F>\n      \u003C\u002FAuthLoading>\n\n      {\u002F* Show only when authenticated *\u002F}\n      \u003CSignedIn>\n        \u003CDashboard \u002F>\n      \u003C\u002FSignedIn>\n\n      {\u002F* Show only when NOT authenticated *\u002F}\n      \u003CSignedOut>\n        \u003CLandingPage \u002F>\n      \u003C\u002FSignedOut>\n\n      {\u002F* Redirect to sign-in if not authenticated *\u002F}\n      \u003CRedirectToSignIn \u002F>\n    \u003C\u002F>\n  );\n}\n",[3566],{"type":48,"tag":100,"props":3567,"children":3568},{"__ignoreMap":214},[3569,3580,3592,3604,3616,3624,3651,3658,3678,3689,3697,3713,3729,3747,3763,3770,3786,3802,3818,3833,3840,3856,3872,3888,3903,3910,3926,3942,3950,3961],{"type":48,"tag":220,"props":3570,"children":3571},{"class":222,"line":223},[3572,3576],{"type":48,"tag":220,"props":3573,"children":3574},{"style":270},[3575],{"type":54,"value":273},{"type":48,"tag":220,"props":3577,"children":3578},{"style":276},[3579],{"type":54,"value":812},{"type":48,"tag":220,"props":3581,"children":3582},{"class":222,"line":318},[3583,3588],{"type":48,"tag":220,"props":3584,"children":3585},{"style":282},[3586],{"type":54,"value":3587},"  SignedIn",{"type":48,"tag":220,"props":3589,"children":3590},{"style":276},[3591],{"type":54,"value":443},{"type":48,"tag":220,"props":3593,"children":3594},{"class":222,"line":359},[3595,3600],{"type":48,"tag":220,"props":3596,"children":3597},{"style":282},[3598],{"type":54,"value":3599},"  SignedOut",{"type":48,"tag":220,"props":3601,"children":3602},{"style":276},[3603],{"type":54,"value":443},{"type":48,"tag":220,"props":3605,"children":3606},{"class":222,"line":369},[3607,3612],{"type":48,"tag":220,"props":3608,"children":3609},{"style":282},[3610],{"type":54,"value":3611},"  AuthLoading",{"type":48,"tag":220,"props":3613,"children":3614},{"style":276},[3615],{"type":54,"value":443},{"type":48,"tag":220,"props":3617,"children":3618},{"class":222,"line":404},[3619],{"type":48,"tag":220,"props":3620,"children":3621},{"style":282},[3622],{"type":54,"value":3623},"  RedirectToSignIn\n",{"type":48,"tag":220,"props":3625,"children":3626},{"class":222,"line":446},[3627,3631,3635,3639,3643,3647],{"type":48,"tag":220,"props":3628,"children":3629},{"style":276},[3630],{"type":54,"value":2269},{"type":48,"tag":220,"props":3632,"children":3633},{"style":270},[3634],{"type":54,"value":295},{"type":48,"tag":220,"props":3636,"children":3637},{"style":276},[3638],{"type":54,"value":300},{"type":48,"tag":220,"props":3640,"children":3641},{"style":233},[3642],{"type":54,"value":567},{"type":48,"tag":220,"props":3644,"children":3645},{"style":276},[3646],{"type":54,"value":310},{"type":48,"tag":220,"props":3648,"children":3649},{"style":276},[3650],{"type":54,"value":315},{"type":48,"tag":220,"props":3652,"children":3653},{"class":222,"line":455},[3654],{"type":48,"tag":220,"props":3655,"children":3656},{"emptyLinePlaceholder":363},[3657],{"type":54,"value":366},{"type":48,"tag":220,"props":3659,"children":3660},{"class":222,"line":482},[3661,3665,3670,3674],{"type":48,"tag":220,"props":3662,"children":3663},{"style":378},[3664],{"type":54,"value":3387},{"type":48,"tag":220,"props":3666,"children":3667},{"style":394},[3668],{"type":54,"value":3669}," MyPage",{"type":48,"tag":220,"props":3671,"children":3672},{"style":276},[3673],{"type":54,"value":134},{"type":48,"tag":220,"props":3675,"children":3676},{"style":276},[3677],{"type":54,"value":812},{"type":48,"tag":220,"props":3679,"children":3680},{"class":222,"line":497},[3681,3685],{"type":48,"tag":220,"props":3682,"children":3683},{"style":270},[3684],{"type":54,"value":859},{"type":48,"tag":220,"props":3686,"children":3687},{"style":459},[3688],{"type":54,"value":864},{"type":48,"tag":220,"props":3690,"children":3691},{"class":222,"line":28},[3692],{"type":48,"tag":220,"props":3693,"children":3694},{"style":276},[3695],{"type":54,"value":3696},"    \u003C>\n",{"type":48,"tag":220,"props":3698,"children":3699},{"class":222,"line":845},[3700,3704,3709],{"type":48,"tag":220,"props":3701,"children":3702},{"style":276},[3703],{"type":54,"value":1054},{"type":48,"tag":220,"props":3705,"children":3706},{"style":486},[3707],{"type":54,"value":3708},"\u002F* Show while checking auth state *\u002F",{"type":48,"tag":220,"props":3710,"children":3711},{"style":276},[3712],{"type":54,"value":902},{"type":48,"tag":220,"props":3714,"children":3715},{"class":222,"line":853},[3716,3720,3725],{"type":48,"tag":220,"props":3717,"children":3718},{"style":459},[3719],{"type":54,"value":1357},{"type":48,"tag":220,"props":3721,"children":3722},{"style":227},[3723],{"type":54,"value":3724},"AuthLoading",{"type":48,"tag":220,"props":3726,"children":3727},{"style":459},[3728],{"type":54,"value":1081},{"type":48,"tag":220,"props":3730,"children":3731},{"class":222,"line":867},[3732,3737,3742],{"type":48,"tag":220,"props":3733,"children":3734},{"style":276},[3735],{"type":54,"value":3736},"        \u003C",{"type":48,"tag":220,"props":3738,"children":3739},{"style":282},[3740],{"type":54,"value":3741},"LoadingSpinner",{"type":48,"tag":220,"props":3743,"children":3744},{"style":276},[3745],{"type":54,"value":3746}," \u002F>\n",{"type":48,"tag":220,"props":3748,"children":3749},{"class":222,"line":881},[3750,3755,3759],{"type":48,"tag":220,"props":3751,"children":3752},{"style":276},[3753],{"type":54,"value":3754},"      \u003C\u002F",{"type":48,"tag":220,"props":3756,"children":3757},{"style":282},[3758],{"type":54,"value":3724},{"type":48,"tag":220,"props":3760,"children":3761},{"style":276},[3762],{"type":54,"value":1081},{"type":48,"tag":220,"props":3764,"children":3765},{"class":222,"line":24},[3766],{"type":48,"tag":220,"props":3767,"children":3768},{"emptyLinePlaceholder":363},[3769],{"type":54,"value":366},{"type":48,"tag":220,"props":3771,"children":3772},{"class":222,"line":926},[3773,3777,3782],{"type":48,"tag":220,"props":3774,"children":3775},{"style":276},[3776],{"type":54,"value":1054},{"type":48,"tag":220,"props":3778,"children":3779},{"style":486},[3780],{"type":54,"value":3781},"\u002F* Show only when authenticated *\u002F",{"type":48,"tag":220,"props":3783,"children":3784},{"style":276},[3785],{"type":54,"value":902},{"type":48,"tag":220,"props":3787,"children":3788},{"class":222,"line":954},[3789,3793,3798],{"type":48,"tag":220,"props":3790,"children":3791},{"style":459},[3792],{"type":54,"value":1357},{"type":48,"tag":220,"props":3794,"children":3795},{"style":227},[3796],{"type":54,"value":3797},"SignedIn",{"type":48,"tag":220,"props":3799,"children":3800},{"style":459},[3801],{"type":54,"value":1081},{"type":48,"tag":220,"props":3803,"children":3804},{"class":222,"line":1039},[3805,3809,3814],{"type":48,"tag":220,"props":3806,"children":3807},{"style":276},[3808],{"type":54,"value":3736},{"type":48,"tag":220,"props":3810,"children":3811},{"style":282},[3812],{"type":54,"value":3813},"Dashboard",{"type":48,"tag":220,"props":3815,"children":3816},{"style":276},[3817],{"type":54,"value":3746},{"type":48,"tag":220,"props":3819,"children":3820},{"class":222,"line":1048},[3821,3825,3829],{"type":48,"tag":220,"props":3822,"children":3823},{"style":276},[3824],{"type":54,"value":3754},{"type":48,"tag":220,"props":3826,"children":3827},{"style":282},[3828],{"type":54,"value":3797},{"type":48,"tag":220,"props":3830,"children":3831},{"style":276},[3832],{"type":54,"value":1081},{"type":48,"tag":220,"props":3834,"children":3835},{"class":222,"line":1065},[3836],{"type":48,"tag":220,"props":3837,"children":3838},{"emptyLinePlaceholder":363},[3839],{"type":54,"value":366},{"type":48,"tag":220,"props":3841,"children":3842},{"class":222,"line":1084},[3843,3847,3852],{"type":48,"tag":220,"props":3844,"children":3845},{"style":276},[3846],{"type":54,"value":1054},{"type":48,"tag":220,"props":3848,"children":3849},{"style":486},[3850],{"type":54,"value":3851},"\u002F* Show only when NOT authenticated *\u002F",{"type":48,"tag":220,"props":3853,"children":3854},{"style":276},[3855],{"type":54,"value":902},{"type":48,"tag":220,"props":3857,"children":3858},{"class":222,"line":1097},[3859,3863,3868],{"type":48,"tag":220,"props":3860,"children":3861},{"style":459},[3862],{"type":54,"value":1357},{"type":48,"tag":220,"props":3864,"children":3865},{"style":227},[3866],{"type":54,"value":3867},"SignedOut",{"type":48,"tag":220,"props":3869,"children":3870},{"style":459},[3871],{"type":54,"value":1081},{"type":48,"tag":220,"props":3873,"children":3874},{"class":222,"line":2600},[3875,3879,3884],{"type":48,"tag":220,"props":3876,"children":3877},{"style":276},[3878],{"type":54,"value":3736},{"type":48,"tag":220,"props":3880,"children":3881},{"style":282},[3882],{"type":54,"value":3883},"LandingPage",{"type":48,"tag":220,"props":3885,"children":3886},{"style":276},[3887],{"type":54,"value":3746},{"type":48,"tag":220,"props":3889,"children":3890},{"class":222,"line":2628},[3891,3895,3899],{"type":48,"tag":220,"props":3892,"children":3893},{"style":276},[3894],{"type":54,"value":3754},{"type":48,"tag":220,"props":3896,"children":3897},{"style":282},[3898],{"type":54,"value":3867},{"type":48,"tag":220,"props":3900,"children":3901},{"style":276},[3902],{"type":54,"value":1081},{"type":48,"tag":220,"props":3904,"children":3905},{"class":222,"line":2636},[3906],{"type":48,"tag":220,"props":3907,"children":3908},{"emptyLinePlaceholder":363},[3909],{"type":54,"value":366},{"type":48,"tag":220,"props":3911,"children":3912},{"class":222,"line":2644},[3913,3917,3922],{"type":48,"tag":220,"props":3914,"children":3915},{"style":276},[3916],{"type":54,"value":1054},{"type":48,"tag":220,"props":3918,"children":3919},{"style":486},[3920],{"type":54,"value":3921},"\u002F* Redirect to sign-in if not authenticated *\u002F",{"type":48,"tag":220,"props":3923,"children":3924},{"style":276},[3925],{"type":54,"value":902},{"type":48,"tag":220,"props":3927,"children":3928},{"class":222,"line":2653},[3929,3933,3938],{"type":48,"tag":220,"props":3930,"children":3931},{"style":276},[3932],{"type":54,"value":1357},{"type":48,"tag":220,"props":3934,"children":3935},{"style":282},[3936],{"type":54,"value":3937},"RedirectToSignIn",{"type":48,"tag":220,"props":3939,"children":3940},{"style":276},[3941],{"type":54,"value":3746},{"type":48,"tag":220,"props":3943,"children":3944},{"class":222,"line":2666},[3945],{"type":48,"tag":220,"props":3946,"children":3947},{"style":276},[3948],{"type":54,"value":3949},"    \u003C\u002F>\n",{"type":48,"tag":220,"props":3951,"children":3952},{"class":222,"line":2709},[3953,3957],{"type":48,"tag":220,"props":3954,"children":3955},{"style":459},[3956],{"type":54,"value":1090},{"type":48,"tag":220,"props":3958,"children":3959},{"style":276},[3960],{"type":54,"value":315},{"type":48,"tag":220,"props":3962,"children":3963},{"class":222,"line":2717},[3964],{"type":48,"tag":220,"props":3965,"children":3966},{"style":276},[3967],{"type":54,"value":902},{"type":48,"tag":202,"props":3969,"children":3971},{"id":3970},"userbutton",[3972],{"type":54,"value":3973},"UserButton",{"type":48,"tag":57,"props":3975,"children":3976},{},[3977],{"type":54,"value":3978},"Dropdown menu with user avatar, name, and sign-out:",{"type":48,"tag":209,"props":3980,"children":3982},{"className":258,"code":3981,"language":260,"meta":214,"style":214},"import { UserButton } from '@neondatabase\u002Fauth\u002Freact\u002Fui';\n\nfunction Header() {\n  return (\n    \u003Cheader>\n      \u003Cnav>...\u003C\u002Fnav>\n      \u003CUserButton \u002F>\n    \u003C\u002Fheader>\n  );\n}\n",[3983],{"type":48,"tag":100,"props":3984,"children":3985},{"__ignoreMap":214},[3986,4026,4033,4053,4064,4080,4110,4125,4140,4151],{"type":48,"tag":220,"props":3987,"children":3988},{"class":222,"line":223},[3989,3993,3997,4002,4006,4010,4014,4018,4022],{"type":48,"tag":220,"props":3990,"children":3991},{"style":270},[3992],{"type":54,"value":273},{"type":48,"tag":220,"props":3994,"children":3995},{"style":276},[3996],{"type":54,"value":279},{"type":48,"tag":220,"props":3998,"children":3999},{"style":282},[4000],{"type":54,"value":4001}," UserButton",{"type":48,"tag":220,"props":4003,"children":4004},{"style":276},[4005],{"type":54,"value":290},{"type":48,"tag":220,"props":4007,"children":4008},{"style":270},[4009],{"type":54,"value":295},{"type":48,"tag":220,"props":4011,"children":4012},{"style":276},[4013],{"type":54,"value":300},{"type":48,"tag":220,"props":4015,"children":4016},{"style":233},[4017],{"type":54,"value":567},{"type":48,"tag":220,"props":4019,"children":4020},{"style":276},[4021],{"type":54,"value":310},{"type":48,"tag":220,"props":4023,"children":4024},{"style":276},[4025],{"type":54,"value":315},{"type":48,"tag":220,"props":4027,"children":4028},{"class":222,"line":318},[4029],{"type":48,"tag":220,"props":4030,"children":4031},{"emptyLinePlaceholder":363},[4032],{"type":54,"value":366},{"type":48,"tag":220,"props":4034,"children":4035},{"class":222,"line":359},[4036,4040,4045,4049],{"type":48,"tag":220,"props":4037,"children":4038},{"style":378},[4039],{"type":54,"value":3387},{"type":48,"tag":220,"props":4041,"children":4042},{"style":394},[4043],{"type":54,"value":4044}," Header",{"type":48,"tag":220,"props":4046,"children":4047},{"style":276},[4048],{"type":54,"value":134},{"type":48,"tag":220,"props":4050,"children":4051},{"style":276},[4052],{"type":54,"value":812},{"type":48,"tag":220,"props":4054,"children":4055},{"class":222,"line":369},[4056,4060],{"type":48,"tag":220,"props":4057,"children":4058},{"style":270},[4059],{"type":54,"value":859},{"type":48,"tag":220,"props":4061,"children":4062},{"style":459},[4063],{"type":54,"value":864},{"type":48,"tag":220,"props":4065,"children":4066},{"class":222,"line":404},[4067,4071,4076],{"type":48,"tag":220,"props":4068,"children":4069},{"style":459},[4070],{"type":54,"value":873},{"type":48,"tag":220,"props":4072,"children":4073},{"style":227},[4074],{"type":54,"value":4075},"header",{"type":48,"tag":220,"props":4077,"children":4078},{"style":459},[4079],{"type":54,"value":1081},{"type":48,"tag":220,"props":4081,"children":4082},{"class":222,"line":446},[4083,4087,4092,4097,4102,4106],{"type":48,"tag":220,"props":4084,"children":4085},{"style":459},[4086],{"type":54,"value":1357},{"type":48,"tag":220,"props":4088,"children":4089},{"style":227},[4090],{"type":54,"value":4091},"nav",{"type":48,"tag":220,"props":4093,"children":4094},{"style":459},[4095],{"type":54,"value":4096},">",{"type":48,"tag":220,"props":4098,"children":4099},{"style":276},[4100],{"type":54,"value":4101},"...\u003C\u002F",{"type":48,"tag":220,"props":4103,"children":4104},{"style":282},[4105],{"type":54,"value":4091},{"type":48,"tag":220,"props":4107,"children":4108},{"style":276},[4109],{"type":54,"value":1081},{"type":48,"tag":220,"props":4111,"children":4112},{"class":222,"line":455},[4113,4117,4121],{"type":48,"tag":220,"props":4114,"children":4115},{"style":276},[4116],{"type":54,"value":1357},{"type":48,"tag":220,"props":4118,"children":4119},{"style":282},[4120],{"type":54,"value":3973},{"type":48,"tag":220,"props":4122,"children":4123},{"style":276},[4124],{"type":54,"value":3746},{"type":48,"tag":220,"props":4126,"children":4127},{"class":222,"line":482},[4128,4132,4136],{"type":48,"tag":220,"props":4129,"children":4130},{"style":276},[4131],{"type":54,"value":1071},{"type":48,"tag":220,"props":4133,"children":4134},{"style":282},[4135],{"type":54,"value":4075},{"type":48,"tag":220,"props":4137,"children":4138},{"style":276},[4139],{"type":54,"value":1081},{"type":48,"tag":220,"props":4141,"children":4142},{"class":222,"line":497},[4143,4147],{"type":48,"tag":220,"props":4144,"children":4145},{"style":459},[4146],{"type":54,"value":1090},{"type":48,"tag":220,"props":4148,"children":4149},{"style":276},[4150],{"type":54,"value":315},{"type":48,"tag":220,"props":4152,"children":4153},{"class":222,"line":28},[4154],{"type":48,"tag":220,"props":4155,"children":4156},{"style":276},[4157],{"type":54,"value":902},{"type":48,"tag":202,"props":4159,"children":4161},{"id":4160},"account-management-components",[4162],{"type":54,"value":4163},"Account Management Components",{"type":48,"tag":209,"props":4165,"children":4167},{"className":258,"code":4166,"language":260,"meta":214,"style":214},"import {\n  AccountSettingsCards,   \u002F\u002F Profile info (avatar, name, email)\n  SecuritySettingsCards,  \u002F\u002F Security options (linked accounts)\n  SessionsCard,           \u002F\u002F Active sessions management\n  ChangePasswordCard,     \u002F\u002F Password change form\n  ChangeEmailCard,        \u002F\u002F Email change form\n  DeleteAccountCard,      \u002F\u002F Account deletion\n  ProvidersCard,          \u002F\u002F Linked OAuth providers\n} from '@neondatabase\u002Fauth\u002Freact\u002Fui';\n\nfunction AccountPage() {\n  const { view } = useParams(); \u002F\u002F 'settings', 'security', 'sessions'\n\n  return (\n    \u003C>\n      \u003CRedirectToSignIn \u002F>\n      \u003CSignedIn>\n        {view === 'settings' && \u003CAccountSettingsCards \u002F>}\n        {view === 'security' && (\n          \u003C>\n            \u003CChangePasswordCard \u002F>\n            \u003CSecuritySettingsCards \u002F>\n          \u003C\u002F>\n        )}\n        {view === 'sessions' && \u003CSessionsCard \u002F>}\n      \u003C\u002FSignedIn>\n    \u003C\u002F>\n  );\n}\n",[4168],{"type":48,"tag":100,"props":4169,"children":4170},{"__ignoreMap":214},[4171,4182,4199,4216,4233,4250,4267,4284,4301,4328,4335,4355,4396,4403,4414,4421,4436,4451,4492,4517,4525,4542,4558,4566,4578,4615,4630,4637,4648],{"type":48,"tag":220,"props":4172,"children":4173},{"class":222,"line":223},[4174,4178],{"type":48,"tag":220,"props":4175,"children":4176},{"style":270},[4177],{"type":54,"value":273},{"type":48,"tag":220,"props":4179,"children":4180},{"style":276},[4181],{"type":54,"value":812},{"type":48,"tag":220,"props":4183,"children":4184},{"class":222,"line":318},[4185,4190,4194],{"type":48,"tag":220,"props":4186,"children":4187},{"style":282},[4188],{"type":54,"value":4189},"  AccountSettingsCards",{"type":48,"tag":220,"props":4191,"children":4192},{"style":276},[4193],{"type":54,"value":983},{"type":48,"tag":220,"props":4195,"children":4196},{"style":486},[4197],{"type":54,"value":4198},"   \u002F\u002F Profile info (avatar, name, email)\n",{"type":48,"tag":220,"props":4200,"children":4201},{"class":222,"line":359},[4202,4207,4211],{"type":48,"tag":220,"props":4203,"children":4204},{"style":282},[4205],{"type":54,"value":4206},"  SecuritySettingsCards",{"type":48,"tag":220,"props":4208,"children":4209},{"style":276},[4210],{"type":54,"value":983},{"type":48,"tag":220,"props":4212,"children":4213},{"style":486},[4214],{"type":54,"value":4215},"  \u002F\u002F Security options (linked accounts)\n",{"type":48,"tag":220,"props":4217,"children":4218},{"class":222,"line":369},[4219,4224,4228],{"type":48,"tag":220,"props":4220,"children":4221},{"style":282},[4222],{"type":54,"value":4223},"  SessionsCard",{"type":48,"tag":220,"props":4225,"children":4226},{"style":276},[4227],{"type":54,"value":983},{"type":48,"tag":220,"props":4229,"children":4230},{"style":486},[4231],{"type":54,"value":4232},"           \u002F\u002F Active sessions management\n",{"type":48,"tag":220,"props":4234,"children":4235},{"class":222,"line":404},[4236,4241,4245],{"type":48,"tag":220,"props":4237,"children":4238},{"style":282},[4239],{"type":54,"value":4240},"  ChangePasswordCard",{"type":48,"tag":220,"props":4242,"children":4243},{"style":276},[4244],{"type":54,"value":983},{"type":48,"tag":220,"props":4246,"children":4247},{"style":486},[4248],{"type":54,"value":4249},"     \u002F\u002F Password change form\n",{"type":48,"tag":220,"props":4251,"children":4252},{"class":222,"line":446},[4253,4258,4262],{"type":48,"tag":220,"props":4254,"children":4255},{"style":282},[4256],{"type":54,"value":4257},"  ChangeEmailCard",{"type":48,"tag":220,"props":4259,"children":4260},{"style":276},[4261],{"type":54,"value":983},{"type":48,"tag":220,"props":4263,"children":4264},{"style":486},[4265],{"type":54,"value":4266},"        \u002F\u002F Email change form\n",{"type":48,"tag":220,"props":4268,"children":4269},{"class":222,"line":455},[4270,4275,4279],{"type":48,"tag":220,"props":4271,"children":4272},{"style":282},[4273],{"type":54,"value":4274},"  DeleteAccountCard",{"type":48,"tag":220,"props":4276,"children":4277},{"style":276},[4278],{"type":54,"value":983},{"type":48,"tag":220,"props":4280,"children":4281},{"style":486},[4282],{"type":54,"value":4283},"      \u002F\u002F Account deletion\n",{"type":48,"tag":220,"props":4285,"children":4286},{"class":222,"line":482},[4287,4292,4296],{"type":48,"tag":220,"props":4288,"children":4289},{"style":282},[4290],{"type":54,"value":4291},"  ProvidersCard",{"type":48,"tag":220,"props":4293,"children":4294},{"style":276},[4295],{"type":54,"value":983},{"type":48,"tag":220,"props":4297,"children":4298},{"style":486},[4299],{"type":54,"value":4300},"          \u002F\u002F Linked OAuth providers\n",{"type":48,"tag":220,"props":4302,"children":4303},{"class":222,"line":497},[4304,4308,4312,4316,4320,4324],{"type":48,"tag":220,"props":4305,"children":4306},{"style":276},[4307],{"type":54,"value":2269},{"type":48,"tag":220,"props":4309,"children":4310},{"style":270},[4311],{"type":54,"value":295},{"type":48,"tag":220,"props":4313,"children":4314},{"style":276},[4315],{"type":54,"value":300},{"type":48,"tag":220,"props":4317,"children":4318},{"style":233},[4319],{"type":54,"value":567},{"type":48,"tag":220,"props":4321,"children":4322},{"style":276},[4323],{"type":54,"value":310},{"type":48,"tag":220,"props":4325,"children":4326},{"style":276},[4327],{"type":54,"value":315},{"type":48,"tag":220,"props":4329,"children":4330},{"class":222,"line":28},[4331],{"type":48,"tag":220,"props":4332,"children":4333},{"emptyLinePlaceholder":363},[4334],{"type":54,"value":366},{"type":48,"tag":220,"props":4336,"children":4337},{"class":222,"line":845},[4338,4342,4347,4351],{"type":48,"tag":220,"props":4339,"children":4340},{"style":378},[4341],{"type":54,"value":3387},{"type":48,"tag":220,"props":4343,"children":4344},{"style":394},[4345],{"type":54,"value":4346}," AccountPage",{"type":48,"tag":220,"props":4348,"children":4349},{"style":276},[4350],{"type":54,"value":134},{"type":48,"tag":220,"props":4352,"children":4353},{"style":276},[4354],{"type":54,"value":812},{"type":48,"tag":220,"props":4356,"children":4357},{"class":222,"line":853},[4358,4362,4366,4371,4375,4379,4383,4387,4391],{"type":48,"tag":220,"props":4359,"children":4360},{"style":378},[4361],{"type":54,"value":820},{"type":48,"tag":220,"props":4363,"children":4364},{"style":276},[4365],{"type":54,"value":279},{"type":48,"tag":220,"props":4367,"children":4368},{"style":282},[4369],{"type":54,"value":4370}," view",{"type":48,"tag":220,"props":4372,"children":4373},{"style":276},[4374],{"type":54,"value":290},{"type":48,"tag":220,"props":4376,"children":4377},{"style":276},[4378],{"type":54,"value":830},{"type":48,"tag":220,"props":4380,"children":4381},{"style":394},[4382],{"type":54,"value":3429},{"type":48,"tag":220,"props":4384,"children":4385},{"style":459},[4386],{"type":54,"value":134},{"type":48,"tag":220,"props":4388,"children":4389},{"style":276},[4390],{"type":54,"value":3438},{"type":48,"tag":220,"props":4392,"children":4393},{"style":486},[4394],{"type":54,"value":4395}," \u002F\u002F 'settings', 'security', 'sessions'\n",{"type":48,"tag":220,"props":4397,"children":4398},{"class":222,"line":867},[4399],{"type":48,"tag":220,"props":4400,"children":4401},{"emptyLinePlaceholder":363},[4402],{"type":54,"value":366},{"type":48,"tag":220,"props":4404,"children":4405},{"class":222,"line":881},[4406,4410],{"type":48,"tag":220,"props":4407,"children":4408},{"style":270},[4409],{"type":54,"value":859},{"type":48,"tag":220,"props":4411,"children":4412},{"style":459},[4413],{"type":54,"value":864},{"type":48,"tag":220,"props":4415,"children":4416},{"class":222,"line":24},[4417],{"type":48,"tag":220,"props":4418,"children":4419},{"style":276},[4420],{"type":54,"value":3696},{"type":48,"tag":220,"props":4422,"children":4423},{"class":222,"line":926},[4424,4428,4432],{"type":48,"tag":220,"props":4425,"children":4426},{"style":276},[4427],{"type":54,"value":1357},{"type":48,"tag":220,"props":4429,"children":4430},{"style":282},[4431],{"type":54,"value":3937},{"type":48,"tag":220,"props":4433,"children":4434},{"style":276},[4435],{"type":54,"value":3746},{"type":48,"tag":220,"props":4437,"children":4438},{"class":222,"line":954},[4439,4443,4447],{"type":48,"tag":220,"props":4440,"children":4441},{"style":459},[4442],{"type":54,"value":1357},{"type":48,"tag":220,"props":4444,"children":4445},{"style":227},[4446],{"type":54,"value":3797},{"type":48,"tag":220,"props":4448,"children":4449},{"style":459},[4450],{"type":54,"value":1081},{"type":48,"tag":220,"props":4452,"children":4453},{"class":222,"line":1039},[4454,4459,4464,4469,4474,4479,4484,4488],{"type":48,"tag":220,"props":4455,"children":4456},{"style":276},[4457],{"type":54,"value":4458},"        {",{"type":48,"tag":220,"props":4460,"children":4461},{"style":768},[4462],{"type":54,"value":4463},"view",{"type":48,"tag":220,"props":4465,"children":4466},{"style":459},[4467],{"type":54,"value":4468}," === '",{"type":48,"tag":220,"props":4470,"children":4471},{"style":768},[4472],{"type":54,"value":4473},"settings",{"type":48,"tag":220,"props":4475,"children":4476},{"style":459},[4477],{"type":54,"value":4478},"' && \u003C",{"type":48,"tag":220,"props":4480,"children":4481},{"style":768},[4482],{"type":54,"value":4483},"AccountSettingsCards",{"type":48,"tag":220,"props":4485,"children":4486},{"style":459},[4487],{"type":54,"value":3493},{"type":48,"tag":220,"props":4489,"children":4490},{"style":276},[4491],{"type":54,"value":902},{"type":48,"tag":220,"props":4493,"children":4494},{"class":222,"line":1048},[4495,4499,4503,4507,4512],{"type":48,"tag":220,"props":4496,"children":4497},{"style":276},[4498],{"type":54,"value":4458},{"type":48,"tag":220,"props":4500,"children":4501},{"style":768},[4502],{"type":54,"value":4463},{"type":48,"tag":220,"props":4504,"children":4505},{"style":459},[4506],{"type":54,"value":4468},{"type":48,"tag":220,"props":4508,"children":4509},{"style":768},[4510],{"type":54,"value":4511},"security",{"type":48,"tag":220,"props":4513,"children":4514},{"style":459},[4515],{"type":54,"value":4516},"' && (\n",{"type":48,"tag":220,"props":4518,"children":4519},{"class":222,"line":1065},[4520],{"type":48,"tag":220,"props":4521,"children":4522},{"style":459},[4523],{"type":54,"value":4524},"          \u003C>\n",{"type":48,"tag":220,"props":4526,"children":4527},{"class":222,"line":1084},[4528,4533,4538],{"type":48,"tag":220,"props":4529,"children":4530},{"style":459},[4531],{"type":54,"value":4532},"            \u003C",{"type":48,"tag":220,"props":4534,"children":4535},{"style":768},[4536],{"type":54,"value":4537},"ChangePasswordCard",{"type":48,"tag":220,"props":4539,"children":4540},{"style":459},[4541],{"type":54,"value":3746},{"type":48,"tag":220,"props":4543,"children":4544},{"class":222,"line":1097},[4545,4549,4554],{"type":48,"tag":220,"props":4546,"children":4547},{"style":459},[4548],{"type":54,"value":4532},{"type":48,"tag":220,"props":4550,"children":4551},{"style":768},[4552],{"type":54,"value":4553},"SecuritySettingsCards",{"type":48,"tag":220,"props":4555,"children":4556},{"style":459},[4557],{"type":54,"value":3746},{"type":48,"tag":220,"props":4559,"children":4560},{"class":222,"line":2600},[4561],{"type":48,"tag":220,"props":4562,"children":4563},{"style":459},[4564],{"type":54,"value":4565},"          \u003C\u002F>\n",{"type":48,"tag":220,"props":4567,"children":4568},{"class":222,"line":2628},[4569,4574],{"type":48,"tag":220,"props":4570,"children":4571},{"style":459},[4572],{"type":54,"value":4573},"        )",{"type":48,"tag":220,"props":4575,"children":4576},{"style":276},[4577],{"type":54,"value":902},{"type":48,"tag":220,"props":4579,"children":4580},{"class":222,"line":2636},[4581,4585,4589,4593,4598,4602,4607,4611],{"type":48,"tag":220,"props":4582,"children":4583},{"style":276},[4584],{"type":54,"value":4458},{"type":48,"tag":220,"props":4586,"children":4587},{"style":768},[4588],{"type":54,"value":4463},{"type":48,"tag":220,"props":4590,"children":4591},{"style":459},[4592],{"type":54,"value":4468},{"type":48,"tag":220,"props":4594,"children":4595},{"style":768},[4596],{"type":54,"value":4597},"sessions",{"type":48,"tag":220,"props":4599,"children":4600},{"style":459},[4601],{"type":54,"value":4478},{"type":48,"tag":220,"props":4603,"children":4604},{"style":768},[4605],{"type":54,"value":4606},"SessionsCard",{"type":48,"tag":220,"props":4608,"children":4609},{"style":459},[4610],{"type":54,"value":3493},{"type":48,"tag":220,"props":4612,"children":4613},{"style":276},[4614],{"type":54,"value":902},{"type":48,"tag":220,"props":4616,"children":4617},{"class":222,"line":2644},[4618,4622,4626],{"type":48,"tag":220,"props":4619,"children":4620},{"style":276},[4621],{"type":54,"value":3754},{"type":48,"tag":220,"props":4623,"children":4624},{"style":282},[4625],{"type":54,"value":3797},{"type":48,"tag":220,"props":4627,"children":4628},{"style":276},[4629],{"type":54,"value":1081},{"type":48,"tag":220,"props":4631,"children":4632},{"class":222,"line":2653},[4633],{"type":48,"tag":220,"props":4634,"children":4635},{"style":276},[4636],{"type":54,"value":3949},{"type":48,"tag":220,"props":4638,"children":4639},{"class":222,"line":2666},[4640,4644],{"type":48,"tag":220,"props":4641,"children":4642},{"style":459},[4643],{"type":54,"value":1090},{"type":48,"tag":220,"props":4645,"children":4646},{"style":276},[4647],{"type":54,"value":315},{"type":48,"tag":220,"props":4649,"children":4650},{"class":222,"line":2709},[4651],{"type":48,"tag":220,"props":4652,"children":4653},{"style":276},[4654],{"type":54,"value":902},{"type":48,"tag":202,"props":4656,"children":4658},{"id":4657},"organization-components",[4659],{"type":54,"value":4660},"Organization Components",{"type":48,"tag":209,"props":4662,"children":4664},{"className":258,"code":4663,"language":260,"meta":214,"style":214},"import {\n  OrganizationSwitcher,       \u002F\u002F Switch between orgs\n  OrganizationSettingsCards,  \u002F\u002F Org settings\n  OrganizationMembersCard,    \u002F\u002F Member management\n  AcceptInvitationCard,       \u002F\u002F Accept org invite\n} from '@neondatabase\u002Fauth\u002Freact\u002Fui';\n",[4665],{"type":48,"tag":100,"props":4666,"children":4667},{"__ignoreMap":214},[4668,4679,4696,4713,4730,4747],{"type":48,"tag":220,"props":4669,"children":4670},{"class":222,"line":223},[4671,4675],{"type":48,"tag":220,"props":4672,"children":4673},{"style":270},[4674],{"type":54,"value":273},{"type":48,"tag":220,"props":4676,"children":4677},{"style":276},[4678],{"type":54,"value":812},{"type":48,"tag":220,"props":4680,"children":4681},{"class":222,"line":318},[4682,4687,4691],{"type":48,"tag":220,"props":4683,"children":4684},{"style":282},[4685],{"type":54,"value":4686},"  OrganizationSwitcher",{"type":48,"tag":220,"props":4688,"children":4689},{"style":276},[4690],{"type":54,"value":983},{"type":48,"tag":220,"props":4692,"children":4693},{"style":486},[4694],{"type":54,"value":4695},"       \u002F\u002F Switch between orgs\n",{"type":48,"tag":220,"props":4697,"children":4698},{"class":222,"line":359},[4699,4704,4708],{"type":48,"tag":220,"props":4700,"children":4701},{"style":282},[4702],{"type":54,"value":4703},"  OrganizationSettingsCards",{"type":48,"tag":220,"props":4705,"children":4706},{"style":276},[4707],{"type":54,"value":983},{"type":48,"tag":220,"props":4709,"children":4710},{"style":486},[4711],{"type":54,"value":4712},"  \u002F\u002F Org settings\n",{"type":48,"tag":220,"props":4714,"children":4715},{"class":222,"line":369},[4716,4721,4725],{"type":48,"tag":220,"props":4717,"children":4718},{"style":282},[4719],{"type":54,"value":4720},"  OrganizationMembersCard",{"type":48,"tag":220,"props":4722,"children":4723},{"style":276},[4724],{"type":54,"value":983},{"type":48,"tag":220,"props":4726,"children":4727},{"style":486},[4728],{"type":54,"value":4729},"    \u002F\u002F Member management\n",{"type":48,"tag":220,"props":4731,"children":4732},{"class":222,"line":404},[4733,4738,4742],{"type":48,"tag":220,"props":4734,"children":4735},{"style":282},[4736],{"type":54,"value":4737},"  AcceptInvitationCard",{"type":48,"tag":220,"props":4739,"children":4740},{"style":276},[4741],{"type":54,"value":983},{"type":48,"tag":220,"props":4743,"children":4744},{"style":486},[4745],{"type":54,"value":4746},"       \u002F\u002F Accept org invite\n",{"type":48,"tag":220,"props":4748,"children":4749},{"class":222,"line":446},[4750,4754,4758,4762,4766,4770],{"type":48,"tag":220,"props":4751,"children":4752},{"style":276},[4753],{"type":54,"value":2269},{"type":48,"tag":220,"props":4755,"children":4756},{"style":270},[4757],{"type":54,"value":295},{"type":48,"tag":220,"props":4759,"children":4760},{"style":276},[4761],{"type":54,"value":300},{"type":48,"tag":220,"props":4763,"children":4764},{"style":233},[4765],{"type":54,"value":567},{"type":48,"tag":220,"props":4767,"children":4768},{"style":276},[4769],{"type":54,"value":310},{"type":48,"tag":220,"props":4771,"children":4772},{"style":276},[4773],{"type":54,"value":315},{"type":48,"tag":1411,"props":4775,"children":4776},{},[],{"type":48,"tag":63,"props":4778,"children":4780},{"id":4779},"adapter-options",[4781],{"type":54,"value":4782},"Adapter Options",{"type":48,"tag":202,"props":4784,"children":4786},{"id":4785},"betterauthreactadapter-recommended-for-react",[4787],{"type":54,"value":4788},"BetterAuthReactAdapter (Recommended for React)",{"type":48,"tag":57,"props":4790,"children":4791},{},[4792],{"type":54,"value":4793},"Native Better Auth API with React hooks:",{"type":48,"tag":209,"props":4795,"children":4797},{"className":258,"code":4796,"language":260,"meta":214,"style":214},"import { BetterAuthReactAdapter } from '@neondatabase\u002Fauth\u002Freact\u002Fadapters';\n\nconst authClient = createAuthClient(url, {\n  adapter: BetterAuthReactAdapter(),\n});\n\n\u002F\u002F Methods\nawait authClient.signIn.email({ email, password });\nawait authClient.signUp.email({ email, password, name });\nawait authClient.signIn.social({ provider: 'google', callbackURL: '\u002Fdashboard' });\nawait authClient.signOut();\nconst session = await authClient.getSession();\n\n\u002F\u002F React Hook\nconst { data, isPending, error } = authClient.useSession();\n",[4798],{"type":48,"tag":100,"props":4799,"children":4800},{"__ignoreMap":214},[4801,4840,4847,4880,4904,4919,4926,4934,4998,5068,5162,5190,5232,5239,5247],{"type":48,"tag":220,"props":4802,"children":4803},{"class":222,"line":223},[4804,4808,4812,4816,4820,4824,4828,4832,4836],{"type":48,"tag":220,"props":4805,"children":4806},{"style":270},[4807],{"type":54,"value":273},{"type":48,"tag":220,"props":4809,"children":4810},{"style":276},[4811],{"type":54,"value":279},{"type":48,"tag":220,"props":4813,"children":4814},{"style":282},[4815],{"type":54,"value":332},{"type":48,"tag":220,"props":4817,"children":4818},{"style":276},[4819],{"type":54,"value":290},{"type":48,"tag":220,"props":4821,"children":4822},{"style":270},[4823],{"type":54,"value":295},{"type":48,"tag":220,"props":4825,"children":4826},{"style":276},[4827],{"type":54,"value":300},{"type":48,"tag":220,"props":4829,"children":4830},{"style":233},[4831],{"type":54,"value":152},{"type":48,"tag":220,"props":4833,"children":4834},{"style":276},[4835],{"type":54,"value":310},{"type":48,"tag":220,"props":4837,"children":4838},{"style":276},[4839],{"type":54,"value":315},{"type":48,"tag":220,"props":4841,"children":4842},{"class":222,"line":318},[4843],{"type":48,"tag":220,"props":4844,"children":4845},{"emptyLinePlaceholder":363},[4846],{"type":54,"value":366},{"type":48,"tag":220,"props":4848,"children":4849},{"class":222,"line":359},[4850,4855,4859,4863,4867,4872,4876],{"type":48,"tag":220,"props":4851,"children":4852},{"style":378},[4853],{"type":54,"value":4854},"const",{"type":48,"tag":220,"props":4856,"children":4857},{"style":282},[4858],{"type":54,"value":386},{"type":48,"tag":220,"props":4860,"children":4861},{"style":276},[4862],{"type":54,"value":391},{"type":48,"tag":220,"props":4864,"children":4865},{"style":394},[4866],{"type":54,"value":285},{"type":48,"tag":220,"props":4868,"children":4869},{"style":282},[4870],{"type":54,"value":4871},"(url",{"type":48,"tag":220,"props":4873,"children":4874},{"style":276},[4875],{"type":54,"value":983},{"type":48,"tag":220,"props":4877,"children":4878},{"style":276},[4879],{"type":54,"value":812},{"type":48,"tag":220,"props":4881,"children":4882},{"class":222,"line":369},[4883,4888,4892,4896,4900],{"type":48,"tag":220,"props":4884,"children":4885},{"style":459},[4886],{"type":54,"value":4887},"  adapter",{"type":48,"tag":220,"props":4889,"children":4890},{"style":276},[4891],{"type":54,"value":467},{"type":48,"tag":220,"props":4893,"children":4894},{"style":394},[4895],{"type":54,"value":332},{"type":48,"tag":220,"props":4897,"children":4898},{"style":282},[4899],{"type":54,"value":134},{"type":48,"tag":220,"props":4901,"children":4902},{"style":276},[4903],{"type":54,"value":443},{"type":48,"tag":220,"props":4905,"children":4906},{"class":222,"line":404},[4907,4911,4915],{"type":48,"tag":220,"props":4908,"children":4909},{"style":276},[4910],{"type":54,"value":2269},{"type":48,"tag":220,"props":4912,"children":4913},{"style":282},[4914],{"type":54,"value":255},{"type":48,"tag":220,"props":4916,"children":4917},{"style":276},[4918],{"type":54,"value":315},{"type":48,"tag":220,"props":4920,"children":4921},{"class":222,"line":446},[4922],{"type":48,"tag":220,"props":4923,"children":4924},{"emptyLinePlaceholder":363},[4925],{"type":54,"value":366},{"type":48,"tag":220,"props":4927,"children":4928},{"class":222,"line":455},[4929],{"type":48,"tag":220,"props":4930,"children":4931},{"style":486},[4932],{"type":54,"value":4933},"\u002F\u002F Methods\n",{"type":48,"tag":220,"props":4935,"children":4936},{"class":222,"line":482},[4937,4942,4946,4950,4955,4959,4964,4968,4972,4977,4981,4986,4990,4994],{"type":48,"tag":220,"props":4938,"children":4939},{"style":270},[4940],{"type":54,"value":4941},"await",{"type":48,"tag":220,"props":4943,"children":4944},{"style":282},[4945],{"type":54,"value":672},{"type":48,"tag":220,"props":4947,"children":4948},{"style":276},[4949],{"type":54,"value":415},{"type":48,"tag":220,"props":4951,"children":4952},{"style":282},[4953],{"type":54,"value":4954},"signIn",{"type":48,"tag":220,"props":4956,"children":4957},{"style":276},[4958],{"type":54,"value":415},{"type":48,"tag":220,"props":4960,"children":4961},{"style":394},[4962],{"type":54,"value":4963},"email",{"type":48,"tag":220,"props":4965,"children":4966},{"style":282},[4967],{"type":54,"value":969},{"type":48,"tag":220,"props":4969,"children":4970},{"style":276},[4971],{"type":54,"value":974},{"type":48,"tag":220,"props":4973,"children":4974},{"style":282},[4975],{"type":54,"value":4976}," email",{"type":48,"tag":220,"props":4978,"children":4979},{"style":276},[4980],{"type":54,"value":983},{"type":48,"tag":220,"props":4982,"children":4983},{"style":282},[4984],{"type":54,"value":4985}," password ",{"type":48,"tag":220,"props":4987,"children":4988},{"style":276},[4989],{"type":54,"value":2269},{"type":48,"tag":220,"props":4991,"children":4992},{"style":282},[4993],{"type":54,"value":255},{"type":48,"tag":220,"props":4995,"children":4996},{"style":276},[4997],{"type":54,"value":315},{"type":48,"tag":220,"props":4999,"children":5000},{"class":222,"line":497},[5001,5005,5009,5013,5018,5022,5026,5030,5034,5038,5042,5047,5051,5056,5060,5064],{"type":48,"tag":220,"props":5002,"children":5003},{"style":270},[5004],{"type":54,"value":4941},{"type":48,"tag":220,"props":5006,"children":5007},{"style":282},[5008],{"type":54,"value":672},{"type":48,"tag":220,"props":5010,"children":5011},{"style":276},[5012],{"type":54,"value":415},{"type":48,"tag":220,"props":5014,"children":5015},{"style":282},[5016],{"type":54,"value":5017},"signUp",{"type":48,"tag":220,"props":5019,"children":5020},{"style":276},[5021],{"type":54,"value":415},{"type":48,"tag":220,"props":5023,"children":5024},{"style":394},[5025],{"type":54,"value":4963},{"type":48,"tag":220,"props":5027,"children":5028},{"style":282},[5029],{"type":54,"value":969},{"type":48,"tag":220,"props":5031,"children":5032},{"style":276},[5033],{"type":54,"value":974},{"type":48,"tag":220,"props":5035,"children":5036},{"style":282},[5037],{"type":54,"value":4976},{"type":48,"tag":220,"props":5039,"children":5040},{"style":276},[5041],{"type":54,"value":983},{"type":48,"tag":220,"props":5043,"children":5044},{"style":282},[5045],{"type":54,"value":5046}," password",{"type":48,"tag":220,"props":5048,"children":5049},{"style":276},[5050],{"type":54,"value":983},{"type":48,"tag":220,"props":5052,"children":5053},{"style":282},[5054],{"type":54,"value":5055}," name ",{"type":48,"tag":220,"props":5057,"children":5058},{"style":276},[5059],{"type":54,"value":2269},{"type":48,"tag":220,"props":5061,"children":5062},{"style":282},[5063],{"type":54,"value":255},{"type":48,"tag":220,"props":5065,"children":5066},{"style":276},[5067],{"type":54,"value":315},{"type":48,"tag":220,"props":5069,"children":5070},{"class":222,"line":28},[5071,5075,5079,5083,5087,5091,5096,5100,5104,5109,5113,5117,5121,5125,5129,5134,5138,5142,5146,5150,5154,5158],{"type":48,"tag":220,"props":5072,"children":5073},{"style":270},[5074],{"type":54,"value":4941},{"type":48,"tag":220,"props":5076,"children":5077},{"style":282},[5078],{"type":54,"value":672},{"type":48,"tag":220,"props":5080,"children":5081},{"style":276},[5082],{"type":54,"value":415},{"type":48,"tag":220,"props":5084,"children":5085},{"style":282},[5086],{"type":54,"value":4954},{"type":48,"tag":220,"props":5088,"children":5089},{"style":276},[5090],{"type":54,"value":415},{"type":48,"tag":220,"props":5092,"children":5093},{"style":394},[5094],{"type":54,"value":5095},"social",{"type":48,"tag":220,"props":5097,"children":5098},{"style":282},[5099],{"type":54,"value":969},{"type":48,"tag":220,"props":5101,"children":5102},{"style":276},[5103],{"type":54,"value":974},{"type":48,"tag":220,"props":5105,"children":5106},{"style":459},[5107],{"type":54,"value":5108}," provider",{"type":48,"tag":220,"props":5110,"children":5111},{"style":276},[5112],{"type":54,"value":467},{"type":48,"tag":220,"props":5114,"children":5115},{"style":276},[5116],{"type":54,"value":300},{"type":48,"tag":220,"props":5118,"children":5119},{"style":233},[5120],{"type":54,"value":2432},{"type":48,"tag":220,"props":5122,"children":5123},{"style":276},[5124],{"type":54,"value":310},{"type":48,"tag":220,"props":5126,"children":5127},{"style":276},[5128],{"type":54,"value":983},{"type":48,"tag":220,"props":5130,"children":5131},{"style":459},[5132],{"type":54,"value":5133}," callbackURL",{"type":48,"tag":220,"props":5135,"children":5136},{"style":276},[5137],{"type":54,"value":467},{"type":48,"tag":220,"props":5139,"children":5140},{"style":276},[5141],{"type":54,"value":300},{"type":48,"tag":220,"props":5143,"children":5144},{"style":233},[5145],{"type":54,"value":946},{"type":48,"tag":220,"props":5147,"children":5148},{"style":276},[5149],{"type":54,"value":310},{"type":48,"tag":220,"props":5151,"children":5152},{"style":276},[5153],{"type":54,"value":290},{"type":48,"tag":220,"props":5155,"children":5156},{"style":282},[5157],{"type":54,"value":255},{"type":48,"tag":220,"props":5159,"children":5160},{"style":276},[5161],{"type":54,"value":315},{"type":48,"tag":220,"props":5163,"children":5164},{"class":222,"line":845},[5165,5169,5173,5177,5182,5186],{"type":48,"tag":220,"props":5166,"children":5167},{"style":270},[5168],{"type":54,"value":4941},{"type":48,"tag":220,"props":5170,"children":5171},{"style":282},[5172],{"type":54,"value":672},{"type":48,"tag":220,"props":5174,"children":5175},{"style":276},[5176],{"type":54,"value":415},{"type":48,"tag":220,"props":5178,"children":5179},{"style":394},[5180],{"type":54,"value":5181},"signOut",{"type":48,"tag":220,"props":5183,"children":5184},{"style":282},[5185],{"type":54,"value":134},{"type":48,"tag":220,"props":5187,"children":5188},{"style":276},[5189],{"type":54,"value":315},{"type":48,"tag":220,"props":5191,"children":5192},{"class":222,"line":853},[5193,5197,5202,5206,5211,5215,5219,5224,5228],{"type":48,"tag":220,"props":5194,"children":5195},{"style":378},[5196],{"type":54,"value":4854},{"type":48,"tag":220,"props":5198,"children":5199},{"style":282},[5200],{"type":54,"value":5201}," session ",{"type":48,"tag":220,"props":5203,"children":5204},{"style":276},[5205],{"type":54,"value":391},{"type":48,"tag":220,"props":5207,"children":5208},{"style":270},[5209],{"type":54,"value":5210}," await",{"type":48,"tag":220,"props":5212,"children":5213},{"style":282},[5214],{"type":54,"value":672},{"type":48,"tag":220,"props":5216,"children":5217},{"style":276},[5218],{"type":54,"value":415},{"type":48,"tag":220,"props":5220,"children":5221},{"style":394},[5222],{"type":54,"value":5223},"getSession",{"type":48,"tag":220,"props":5225,"children":5226},{"style":282},[5227],{"type":54,"value":134},{"type":48,"tag":220,"props":5229,"children":5230},{"style":276},[5231],{"type":54,"value":315},{"type":48,"tag":220,"props":5233,"children":5234},{"class":222,"line":867},[5235],{"type":48,"tag":220,"props":5236,"children":5237},{"emptyLinePlaceholder":363},[5238],{"type":54,"value":366},{"type":48,"tag":220,"props":5240,"children":5241},{"class":222,"line":881},[5242],{"type":48,"tag":220,"props":5243,"children":5244},{"style":486},[5245],{"type":54,"value":5246},"\u002F\u002F React Hook\n",{"type":48,"tag":220,"props":5248,"children":5249},{"class":222,"line":24},[5250,5254,5258,5263,5267,5272,5276,5281,5285,5289,5293,5297,5302,5306],{"type":48,"tag":220,"props":5251,"children":5252},{"style":378},[5253],{"type":54,"value":4854},{"type":48,"tag":220,"props":5255,"children":5256},{"style":276},[5257],{"type":54,"value":279},{"type":48,"tag":220,"props":5259,"children":5260},{"style":282},[5261],{"type":54,"value":5262}," data",{"type":48,"tag":220,"props":5264,"children":5265},{"style":276},[5266],{"type":54,"value":983},{"type":48,"tag":220,"props":5268,"children":5269},{"style":282},[5270],{"type":54,"value":5271}," isPending",{"type":48,"tag":220,"props":5273,"children":5274},{"style":276},[5275],{"type":54,"value":983},{"type":48,"tag":220,"props":5277,"children":5278},{"style":282},[5279],{"type":54,"value":5280}," error ",{"type":48,"tag":220,"props":5282,"children":5283},{"style":276},[5284],{"type":54,"value":2269},{"type":48,"tag":220,"props":5286,"children":5287},{"style":276},[5288],{"type":54,"value":830},{"type":48,"tag":220,"props":5290,"children":5291},{"style":282},[5292],{"type":54,"value":672},{"type":48,"tag":220,"props":5294,"children":5295},{"style":276},[5296],{"type":54,"value":415},{"type":48,"tag":220,"props":5298,"children":5299},{"style":394},[5300],{"type":54,"value":5301},"useSession",{"type":48,"tag":220,"props":5303,"children":5304},{"style":282},[5305],{"type":54,"value":134},{"type":48,"tag":220,"props":5307,"children":5308},{"style":276},[5309],{"type":54,"value":315},{"type":48,"tag":202,"props":5311,"children":5313},{"id":5312},"supabaseauthadapter-supabase-compatible-api",[5314],{"type":54,"value":5315},"SupabaseAuthAdapter (Supabase-compatible API)",{"type":48,"tag":57,"props":5317,"children":5318},{},[5319],{"type":54,"value":5320},"For migrating from Supabase or familiar API:",{"type":48,"tag":209,"props":5322,"children":5324},{"className":258,"code":5323,"language":260,"meta":214,"style":214},"import { SupabaseAuthAdapter } from '@neondatabase\u002Fauth\u002Fvanilla\u002Fadapters';\n\nconst authClient = createAuthClient(url, {\n  adapter: SupabaseAuthAdapter(),\n});\n\n\u002F\u002F Supabase-style methods\nawait authClient.signUp({ email, password, options: { data: { name } } });\nawait authClient.signInWithPassword({ email, password });\nawait authClient.signInWithOAuth({ provider: 'google', options: { redirectTo } });\nawait authClient.signOut();\nconst { data: session } = await authClient.getSession();\n\n\u002F\u002F Event listener\nauthClient.onAuthStateChange((event, session) => {\n  console.log(event); \u002F\u002F 'SIGNED_IN', 'SIGNED_OUT', 'TOKEN_REFRESHED', 'USER_UPDATED'\n});\n",[5325],{"type":48,"tag":100,"props":5326,"children":5327},{"__ignoreMap":214},[5328,5369,5376,5407,5430,5445,5452,5460,5552,5604,5689,5716,5771,5778,5786,5837,5875],{"type":48,"tag":220,"props":5329,"children":5330},{"class":222,"line":223},[5331,5335,5339,5344,5348,5352,5356,5361,5365],{"type":48,"tag":220,"props":5332,"children":5333},{"style":270},[5334],{"type":54,"value":273},{"type":48,"tag":220,"props":5336,"children":5337},{"style":276},[5338],{"type":54,"value":279},{"type":48,"tag":220,"props":5340,"children":5341},{"style":282},[5342],{"type":54,"value":5343}," SupabaseAuthAdapter",{"type":48,"tag":220,"props":5345,"children":5346},{"style":276},[5347],{"type":54,"value":290},{"type":48,"tag":220,"props":5349,"children":5350},{"style":270},[5351],{"type":54,"value":295},{"type":48,"tag":220,"props":5353,"children":5354},{"style":276},[5355],{"type":54,"value":300},{"type":48,"tag":220,"props":5357,"children":5358},{"style":233},[5359],{"type":54,"value":5360},"@neondatabase\u002Fauth\u002Fvanilla\u002Fadapters",{"type":48,"tag":220,"props":5362,"children":5363},{"style":276},[5364],{"type":54,"value":310},{"type":48,"tag":220,"props":5366,"children":5367},{"style":276},[5368],{"type":54,"value":315},{"type":48,"tag":220,"props":5370,"children":5371},{"class":222,"line":318},[5372],{"type":48,"tag":220,"props":5373,"children":5374},{"emptyLinePlaceholder":363},[5375],{"type":54,"value":366},{"type":48,"tag":220,"props":5377,"children":5378},{"class":222,"line":359},[5379,5383,5387,5391,5395,5399,5403],{"type":48,"tag":220,"props":5380,"children":5381},{"style":378},[5382],{"type":54,"value":4854},{"type":48,"tag":220,"props":5384,"children":5385},{"style":282},[5386],{"type":54,"value":386},{"type":48,"tag":220,"props":5388,"children":5389},{"style":276},[5390],{"type":54,"value":391},{"type":48,"tag":220,"props":5392,"children":5393},{"style":394},[5394],{"type":54,"value":285},{"type":48,"tag":220,"props":5396,"children":5397},{"style":282},[5398],{"type":54,"value":4871},{"type":48,"tag":220,"props":5400,"children":5401},{"style":276},[5402],{"type":54,"value":983},{"type":48,"tag":220,"props":5404,"children":5405},{"style":276},[5406],{"type":54,"value":812},{"type":48,"tag":220,"props":5408,"children":5409},{"class":222,"line":369},[5410,5414,5418,5422,5426],{"type":48,"tag":220,"props":5411,"children":5412},{"style":459},[5413],{"type":54,"value":4887},{"type":48,"tag":220,"props":5415,"children":5416},{"style":276},[5417],{"type":54,"value":467},{"type":48,"tag":220,"props":5419,"children":5420},{"style":394},[5421],{"type":54,"value":5343},{"type":48,"tag":220,"props":5423,"children":5424},{"style":282},[5425],{"type":54,"value":134},{"type":48,"tag":220,"props":5427,"children":5428},{"style":276},[5429],{"type":54,"value":443},{"type":48,"tag":220,"props":5431,"children":5432},{"class":222,"line":404},[5433,5437,5441],{"type":48,"tag":220,"props":5434,"children":5435},{"style":276},[5436],{"type":54,"value":2269},{"type":48,"tag":220,"props":5438,"children":5439},{"style":282},[5440],{"type":54,"value":255},{"type":48,"tag":220,"props":5442,"children":5443},{"style":276},[5444],{"type":54,"value":315},{"type":48,"tag":220,"props":5446,"children":5447},{"class":222,"line":446},[5448],{"type":48,"tag":220,"props":5449,"children":5450},{"emptyLinePlaceholder":363},[5451],{"type":54,"value":366},{"type":48,"tag":220,"props":5453,"children":5454},{"class":222,"line":455},[5455],{"type":48,"tag":220,"props":5456,"children":5457},{"style":486},[5458],{"type":54,"value":5459},"\u002F\u002F Supabase-style methods\n",{"type":48,"tag":220,"props":5461,"children":5462},{"class":222,"line":482},[5463,5467,5471,5475,5479,5483,5487,5491,5495,5499,5503,5508,5512,5516,5520,5524,5528,5532,5536,5540,5544,5548],{"type":48,"tag":220,"props":5464,"children":5465},{"style":270},[5466],{"type":54,"value":4941},{"type":48,"tag":220,"props":5468,"children":5469},{"style":282},[5470],{"type":54,"value":672},{"type":48,"tag":220,"props":5472,"children":5473},{"style":276},[5474],{"type":54,"value":415},{"type":48,"tag":220,"props":5476,"children":5477},{"style":394},[5478],{"type":54,"value":5017},{"type":48,"tag":220,"props":5480,"children":5481},{"style":282},[5482],{"type":54,"value":969},{"type":48,"tag":220,"props":5484,"children":5485},{"style":276},[5486],{"type":54,"value":974},{"type":48,"tag":220,"props":5488,"children":5489},{"style":282},[5490],{"type":54,"value":4976},{"type":48,"tag":220,"props":5492,"children":5493},{"style":276},[5494],{"type":54,"value":983},{"type":48,"tag":220,"props":5496,"children":5497},{"style":282},[5498],{"type":54,"value":5046},{"type":48,"tag":220,"props":5500,"children":5501},{"style":276},[5502],{"type":54,"value":983},{"type":48,"tag":220,"props":5504,"children":5505},{"style":459},[5506],{"type":54,"value":5507}," options",{"type":48,"tag":220,"props":5509,"children":5510},{"style":276},[5511],{"type":54,"value":467},{"type":48,"tag":220,"props":5513,"children":5514},{"style":276},[5515],{"type":54,"value":279},{"type":48,"tag":220,"props":5517,"children":5518},{"style":459},[5519],{"type":54,"value":5262},{"type":48,"tag":220,"props":5521,"children":5522},{"style":276},[5523],{"type":54,"value":467},{"type":48,"tag":220,"props":5525,"children":5526},{"style":276},[5527],{"type":54,"value":279},{"type":48,"tag":220,"props":5529,"children":5530},{"style":282},[5531],{"type":54,"value":5055},{"type":48,"tag":220,"props":5533,"children":5534},{"style":276},[5535],{"type":54,"value":2269},{"type":48,"tag":220,"props":5537,"children":5538},{"style":276},[5539],{"type":54,"value":290},{"type":48,"tag":220,"props":5541,"children":5542},{"style":276},[5543],{"type":54,"value":290},{"type":48,"tag":220,"props":5545,"children":5546},{"style":282},[5547],{"type":54,"value":255},{"type":48,"tag":220,"props":5549,"children":5550},{"style":276},[5551],{"type":54,"value":315},{"type":48,"tag":220,"props":5553,"children":5554},{"class":222,"line":497},[5555,5559,5563,5567,5572,5576,5580,5584,5588,5592,5596,5600],{"type":48,"tag":220,"props":5556,"children":5557},{"style":270},[5558],{"type":54,"value":4941},{"type":48,"tag":220,"props":5560,"children":5561},{"style":282},[5562],{"type":54,"value":672},{"type":48,"tag":220,"props":5564,"children":5565},{"style":276},[5566],{"type":54,"value":415},{"type":48,"tag":220,"props":5568,"children":5569},{"style":394},[5570],{"type":54,"value":5571},"signInWithPassword",{"type":48,"tag":220,"props":5573,"children":5574},{"style":282},[5575],{"type":54,"value":969},{"type":48,"tag":220,"props":5577,"children":5578},{"style":276},[5579],{"type":54,"value":974},{"type":48,"tag":220,"props":5581,"children":5582},{"style":282},[5583],{"type":54,"value":4976},{"type":48,"tag":220,"props":5585,"children":5586},{"style":276},[5587],{"type":54,"value":983},{"type":48,"tag":220,"props":5589,"children":5590},{"style":282},[5591],{"type":54,"value":4985},{"type":48,"tag":220,"props":5593,"children":5594},{"style":276},[5595],{"type":54,"value":2269},{"type":48,"tag":220,"props":5597,"children":5598},{"style":282},[5599],{"type":54,"value":255},{"type":48,"tag":220,"props":5601,"children":5602},{"style":276},[5603],{"type":54,"value":315},{"type":48,"tag":220,"props":5605,"children":5606},{"class":222,"line":28},[5607,5611,5615,5619,5624,5628,5632,5636,5640,5644,5648,5652,5656,5660,5664,5668,5673,5677,5681,5685],{"type":48,"tag":220,"props":5608,"children":5609},{"style":270},[5610],{"type":54,"value":4941},{"type":48,"tag":220,"props":5612,"children":5613},{"style":282},[5614],{"type":54,"value":672},{"type":48,"tag":220,"props":5616,"children":5617},{"style":276},[5618],{"type":54,"value":415},{"type":48,"tag":220,"props":5620,"children":5621},{"style":394},[5622],{"type":54,"value":5623},"signInWithOAuth",{"type":48,"tag":220,"props":5625,"children":5626},{"style":282},[5627],{"type":54,"value":969},{"type":48,"tag":220,"props":5629,"children":5630},{"style":276},[5631],{"type":54,"value":974},{"type":48,"tag":220,"props":5633,"children":5634},{"style":459},[5635],{"type":54,"value":5108},{"type":48,"tag":220,"props":5637,"children":5638},{"style":276},[5639],{"type":54,"value":467},{"type":48,"tag":220,"props":5641,"children":5642},{"style":276},[5643],{"type":54,"value":300},{"type":48,"tag":220,"props":5645,"children":5646},{"style":233},[5647],{"type":54,"value":2432},{"type":48,"tag":220,"props":5649,"children":5650},{"style":276},[5651],{"type":54,"value":310},{"type":48,"tag":220,"props":5653,"children":5654},{"style":276},[5655],{"type":54,"value":983},{"type":48,"tag":220,"props":5657,"children":5658},{"style":459},[5659],{"type":54,"value":5507},{"type":48,"tag":220,"props":5661,"children":5662},{"style":276},[5663],{"type":54,"value":467},{"type":48,"tag":220,"props":5665,"children":5666},{"style":276},[5667],{"type":54,"value":279},{"type":48,"tag":220,"props":5669,"children":5670},{"style":282},[5671],{"type":54,"value":5672}," redirectTo ",{"type":48,"tag":220,"props":5674,"children":5675},{"style":276},[5676],{"type":54,"value":2269},{"type":48,"tag":220,"props":5678,"children":5679},{"style":276},[5680],{"type":54,"value":290},{"type":48,"tag":220,"props":5682,"children":5683},{"style":282},[5684],{"type":54,"value":255},{"type":48,"tag":220,"props":5686,"children":5687},{"style":276},[5688],{"type":54,"value":315},{"type":48,"tag":220,"props":5690,"children":5691},{"class":222,"line":845},[5692,5696,5700,5704,5708,5712],{"type":48,"tag":220,"props":5693,"children":5694},{"style":270},[5695],{"type":54,"value":4941},{"type":48,"tag":220,"props":5697,"children":5698},{"style":282},[5699],{"type":54,"value":672},{"type":48,"tag":220,"props":5701,"children":5702},{"style":276},[5703],{"type":54,"value":415},{"type":48,"tag":220,"props":5705,"children":5706},{"style":394},[5707],{"type":54,"value":5181},{"type":48,"tag":220,"props":5709,"children":5710},{"style":282},[5711],{"type":54,"value":134},{"type":48,"tag":220,"props":5713,"children":5714},{"style":276},[5715],{"type":54,"value":315},{"type":48,"tag":220,"props":5717,"children":5718},{"class":222,"line":853},[5719,5723,5727,5731,5735,5739,5743,5747,5751,5755,5759,5763,5767],{"type":48,"tag":220,"props":5720,"children":5721},{"style":378},[5722],{"type":54,"value":4854},{"type":48,"tag":220,"props":5724,"children":5725},{"style":276},[5726],{"type":54,"value":279},{"type":48,"tag":220,"props":5728,"children":5729},{"style":459},[5730],{"type":54,"value":5262},{"type":48,"tag":220,"props":5732,"children":5733},{"style":276},[5734],{"type":54,"value":467},{"type":48,"tag":220,"props":5736,"children":5737},{"style":282},[5738],{"type":54,"value":5201},{"type":48,"tag":220,"props":5740,"children":5741},{"style":276},[5742],{"type":54,"value":2269},{"type":48,"tag":220,"props":5744,"children":5745},{"style":276},[5746],{"type":54,"value":830},{"type":48,"tag":220,"props":5748,"children":5749},{"style":270},[5750],{"type":54,"value":5210},{"type":48,"tag":220,"props":5752,"children":5753},{"style":282},[5754],{"type":54,"value":672},{"type":48,"tag":220,"props":5756,"children":5757},{"style":276},[5758],{"type":54,"value":415},{"type":48,"tag":220,"props":5760,"children":5761},{"style":394},[5762],{"type":54,"value":5223},{"type":48,"tag":220,"props":5764,"children":5765},{"style":282},[5766],{"type":54,"value":134},{"type":48,"tag":220,"props":5768,"children":5769},{"style":276},[5770],{"type":54,"value":315},{"type":48,"tag":220,"props":5772,"children":5773},{"class":222,"line":867},[5774],{"type":48,"tag":220,"props":5775,"children":5776},{"emptyLinePlaceholder":363},[5777],{"type":54,"value":366},{"type":48,"tag":220,"props":5779,"children":5780},{"class":222,"line":881},[5781],{"type":48,"tag":220,"props":5782,"children":5783},{"style":486},[5784],{"type":54,"value":5785},"\u002F\u002F Event listener\n",{"type":48,"tag":220,"props":5787,"children":5788},{"class":222,"line":24},[5789,5793,5797,5802,5806,5810,5815,5819,5824,5828,5833],{"type":48,"tag":220,"props":5790,"children":5791},{"style":282},[5792],{"type":54,"value":897},{"type":48,"tag":220,"props":5794,"children":5795},{"style":276},[5796],{"type":54,"value":415},{"type":48,"tag":220,"props":5798,"children":5799},{"style":394},[5800],{"type":54,"value":5801},"onAuthStateChange",{"type":48,"tag":220,"props":5803,"children":5804},{"style":282},[5805],{"type":54,"value":969},{"type":48,"tag":220,"props":5807,"children":5808},{"style":276},[5809],{"type":54,"value":969},{"type":48,"tag":220,"props":5811,"children":5812},{"style":768},[5813],{"type":54,"value":5814},"event",{"type":48,"tag":220,"props":5816,"children":5817},{"style":276},[5818],{"type":54,"value":983},{"type":48,"tag":220,"props":5820,"children":5821},{"style":768},[5822],{"type":54,"value":5823}," session",{"type":48,"tag":220,"props":5825,"children":5826},{"style":276},[5827],{"type":54,"value":255},{"type":48,"tag":220,"props":5829,"children":5830},{"style":378},[5831],{"type":54,"value":5832}," =>",{"type":48,"tag":220,"props":5834,"children":5835},{"style":276},[5836],{"type":54,"value":812},{"type":48,"tag":220,"props":5838,"children":5839},{"class":222,"line":926},[5840,5845,5849,5854,5858,5862,5866,5870],{"type":48,"tag":220,"props":5841,"children":5842},{"style":282},[5843],{"type":54,"value":5844},"  console",{"type":48,"tag":220,"props":5846,"children":5847},{"style":276},[5848],{"type":54,"value":415},{"type":48,"tag":220,"props":5850,"children":5851},{"style":394},[5852],{"type":54,"value":5853},"log",{"type":48,"tag":220,"props":5855,"children":5856},{"style":459},[5857],{"type":54,"value":969},{"type":48,"tag":220,"props":5859,"children":5860},{"style":282},[5861],{"type":54,"value":5814},{"type":48,"tag":220,"props":5863,"children":5864},{"style":459},[5865],{"type":54,"value":255},{"type":48,"tag":220,"props":5867,"children":5868},{"style":276},[5869],{"type":54,"value":3438},{"type":48,"tag":220,"props":5871,"children":5872},{"style":486},[5873],{"type":54,"value":5874}," \u002F\u002F 'SIGNED_IN', 'SIGNED_OUT', 'TOKEN_REFRESHED', 'USER_UPDATED'\n",{"type":48,"tag":220,"props":5876,"children":5877},{"class":222,"line":954},[5878,5882,5886],{"type":48,"tag":220,"props":5879,"children":5880},{"style":276},[5881],{"type":54,"value":2269},{"type":48,"tag":220,"props":5883,"children":5884},{"style":282},[5885],{"type":54,"value":255},{"type":48,"tag":220,"props":5887,"children":5888},{"style":276},[5889],{"type":54,"value":315},{"type":48,"tag":202,"props":5891,"children":5893},{"id":5892},"betterauthvanillaadapter-non-react",[5894],{"type":54,"value":5895},"BetterAuthVanillaAdapter (Non-React)",{"type":48,"tag":57,"props":5897,"children":5898},{},[5899],{"type":54,"value":5900},"For vanilla JS\u002FTS without React hooks:",{"type":48,"tag":209,"props":5902,"children":5904},{"className":258,"code":5903,"language":260,"meta":214,"style":214},"import { BetterAuthVanillaAdapter } from '@neondatabase\u002Fauth\u002Fvanilla\u002Fadapters';\n\nconst authClient = createAuthClient(url, {\n  adapter: BetterAuthVanillaAdapter(),\n});\n\n\u002F\u002F Same API as BetterAuthReactAdapter, but no useSession() hook\n",[5905],{"type":48,"tag":100,"props":5906,"children":5907},{"__ignoreMap":214},[5908,5948,5955,5986,6009,6024,6031],{"type":48,"tag":220,"props":5909,"children":5910},{"class":222,"line":223},[5911,5915,5919,5924,5928,5932,5936,5940,5944],{"type":48,"tag":220,"props":5912,"children":5913},{"style":270},[5914],{"type":54,"value":273},{"type":48,"tag":220,"props":5916,"children":5917},{"style":276},[5918],{"type":54,"value":279},{"type":48,"tag":220,"props":5920,"children":5921},{"style":282},[5922],{"type":54,"value":5923}," BetterAuthVanillaAdapter",{"type":48,"tag":220,"props":5925,"children":5926},{"style":276},[5927],{"type":54,"value":290},{"type":48,"tag":220,"props":5929,"children":5930},{"style":270},[5931],{"type":54,"value":295},{"type":48,"tag":220,"props":5933,"children":5934},{"style":276},[5935],{"type":54,"value":300},{"type":48,"tag":220,"props":5937,"children":5938},{"style":233},[5939],{"type":54,"value":5360},{"type":48,"tag":220,"props":5941,"children":5942},{"style":276},[5943],{"type":54,"value":310},{"type":48,"tag":220,"props":5945,"children":5946},{"style":276},[5947],{"type":54,"value":315},{"type":48,"tag":220,"props":5949,"children":5950},{"class":222,"line":318},[5951],{"type":48,"tag":220,"props":5952,"children":5953},{"emptyLinePlaceholder":363},[5954],{"type":54,"value":366},{"type":48,"tag":220,"props":5956,"children":5957},{"class":222,"line":359},[5958,5962,5966,5970,5974,5978,5982],{"type":48,"tag":220,"props":5959,"children":5960},{"style":378},[5961],{"type":54,"value":4854},{"type":48,"tag":220,"props":5963,"children":5964},{"style":282},[5965],{"type":54,"value":386},{"type":48,"tag":220,"props":5967,"children":5968},{"style":276},[5969],{"type":54,"value":391},{"type":48,"tag":220,"props":5971,"children":5972},{"style":394},[5973],{"type":54,"value":285},{"type":48,"tag":220,"props":5975,"children":5976},{"style":282},[5977],{"type":54,"value":4871},{"type":48,"tag":220,"props":5979,"children":5980},{"style":276},[5981],{"type":54,"value":983},{"type":48,"tag":220,"props":5983,"children":5984},{"style":276},[5985],{"type":54,"value":812},{"type":48,"tag":220,"props":5987,"children":5988},{"class":222,"line":369},[5989,5993,5997,6001,6005],{"type":48,"tag":220,"props":5990,"children":5991},{"style":459},[5992],{"type":54,"value":4887},{"type":48,"tag":220,"props":5994,"children":5995},{"style":276},[5996],{"type":54,"value":467},{"type":48,"tag":220,"props":5998,"children":5999},{"style":394},[6000],{"type":54,"value":5923},{"type":48,"tag":220,"props":6002,"children":6003},{"style":282},[6004],{"type":54,"value":134},{"type":48,"tag":220,"props":6006,"children":6007},{"style":276},[6008],{"type":54,"value":443},{"type":48,"tag":220,"props":6010,"children":6011},{"class":222,"line":404},[6012,6016,6020],{"type":48,"tag":220,"props":6013,"children":6014},{"style":276},[6015],{"type":54,"value":2269},{"type":48,"tag":220,"props":6017,"children":6018},{"style":282},[6019],{"type":54,"value":255},{"type":48,"tag":220,"props":6021,"children":6022},{"style":276},[6023],{"type":54,"value":315},{"type":48,"tag":220,"props":6025,"children":6026},{"class":222,"line":446},[6027],{"type":48,"tag":220,"props":6028,"children":6029},{"emptyLinePlaceholder":363},[6030],{"type":54,"value":366},{"type":48,"tag":220,"props":6032,"children":6033},{"class":222,"line":455},[6034],{"type":48,"tag":220,"props":6035,"children":6036},{"style":486},[6037],{"type":54,"value":6038},"\u002F\u002F Same API as BetterAuthReactAdapter, but no useSession() hook\n",{"type":48,"tag":1411,"props":6040,"children":6041},{},[],{"type":48,"tag":63,"props":6043,"children":6045},{"id":6044},"socialoauth-providers",[6046],{"type":54,"value":6047},"Social\u002FOAuth Providers",{"type":48,"tag":202,"props":6049,"children":6051},{"id":6050},"configuration",[6052],{"type":54,"value":6053},"Configuration",{"type":48,"tag":57,"props":6055,"children":6056},{},[6057],{"type":54,"value":6058},"Enable providers in NeonAuthUIProvider:",{"type":48,"tag":209,"props":6060,"children":6062},{"className":258,"code":6061,"language":260,"meta":214,"style":214},"\u003CNeonAuthUIProvider\n  social={{\n    providers: ['google'],\n  }}\n>\n",[6063],{"type":48,"tag":100,"props":6064,"children":6065},{"__ignoreMap":214},[6066,6077,6088,6123,6130],{"type":48,"tag":220,"props":6067,"children":6068},{"class":222,"line":223},[6069,6073],{"type":48,"tag":220,"props":6070,"children":6071},{"style":276},[6072],{"type":54,"value":1592},{"type":48,"tag":220,"props":6074,"children":6075},{"style":282},[6076],{"type":54,"value":878},{"type":48,"tag":220,"props":6078,"children":6079},{"class":222,"line":318},[6080,6084],{"type":48,"tag":220,"props":6081,"children":6082},{"style":282},[6083],{"type":54,"value":2401},{"type":48,"tag":220,"props":6085,"children":6086},{"style":276},[6087],{"type":54,"value":2406},{"type":48,"tag":220,"props":6089,"children":6090},{"class":222,"line":359},[6091,6095,6099,6103,6107,6111,6115,6119],{"type":48,"tag":220,"props":6092,"children":6093},{"style":227},[6094],{"type":54,"value":2414},{"type":48,"tag":220,"props":6096,"children":6097},{"style":276},[6098],{"type":54,"value":467},{"type":48,"tag":220,"props":6100,"children":6101},{"style":459},[6102],{"type":54,"value":2423},{"type":48,"tag":220,"props":6104,"children":6105},{"style":276},[6106],{"type":54,"value":310},{"type":48,"tag":220,"props":6108,"children":6109},{"style":233},[6110],{"type":54,"value":2432},{"type":48,"tag":220,"props":6112,"children":6113},{"style":276},[6114],{"type":54,"value":310},{"type":48,"tag":220,"props":6116,"children":6117},{"style":459},[6118],{"type":54,"value":2441},{"type":48,"tag":220,"props":6120,"children":6121},{"style":276},[6122],{"type":54,"value":443},{"type":48,"tag":220,"props":6124,"children":6125},{"class":222,"line":369},[6126],{"type":48,"tag":220,"props":6127,"children":6128},{"style":276},[6129],{"type":54,"value":2453},{"type":48,"tag":220,"props":6131,"children":6132},{"class":222,"line":404},[6133],{"type":48,"tag":220,"props":6134,"children":6135},{"style":276},[6136],{"type":54,"value":1081},{"type":48,"tag":202,"props":6138,"children":6140},{"id":6139},"programmatic-oauth-sign-in",[6141],{"type":54,"value":6142},"Programmatic OAuth Sign-In",{"type":48,"tag":209,"props":6144,"children":6146},{"className":258,"code":6145,"language":260,"meta":214,"style":214},"\u002F\u002F BetterAuth API\nawait authClient.signIn.social({\n  provider: 'google',\n  callbackURL: '\u002Fdashboard',\n  scopes: ['email', 'profile'], \u002F\u002F Optional\n});\n\n\u002F\u002F Supabase API\nawait authClient.signInWithOAuth({\n  provider: 'google',\n  options: {\n    redirectTo: '\u002Fdashboard',\n    scopes: 'email profile',\n  },\n});\n",[6147],{"type":48,"tag":100,"props":6148,"children":6149},{"__ignoreMap":214},[6150,6158,6194,6222,6250,6308,6323,6330,6338,6365,6392,6408,6436,6465,6473],{"type":48,"tag":220,"props":6151,"children":6152},{"class":222,"line":223},[6153],{"type":48,"tag":220,"props":6154,"children":6155},{"style":486},[6156],{"type":54,"value":6157},"\u002F\u002F BetterAuth API\n",{"type":48,"tag":220,"props":6159,"children":6160},{"class":222,"line":318},[6161,6165,6169,6173,6177,6181,6185,6189],{"type":48,"tag":220,"props":6162,"children":6163},{"style":270},[6164],{"type":54,"value":4941},{"type":48,"tag":220,"props":6166,"children":6167},{"style":282},[6168],{"type":54,"value":672},{"type":48,"tag":220,"props":6170,"children":6171},{"style":276},[6172],{"type":54,"value":415},{"type":48,"tag":220,"props":6174,"children":6175},{"style":282},[6176],{"type":54,"value":4954},{"type":48,"tag":220,"props":6178,"children":6179},{"style":276},[6180],{"type":54,"value":415},{"type":48,"tag":220,"props":6182,"children":6183},{"style":394},[6184],{"type":54,"value":5095},{"type":48,"tag":220,"props":6186,"children":6187},{"style":282},[6188],{"type":54,"value":969},{"type":48,"tag":220,"props":6190,"children":6191},{"style":276},[6192],{"type":54,"value":6193},"{\n",{"type":48,"tag":220,"props":6195,"children":6196},{"class":222,"line":359},[6197,6202,6206,6210,6214,6218],{"type":48,"tag":220,"props":6198,"children":6199},{"style":459},[6200],{"type":54,"value":6201},"  provider",{"type":48,"tag":220,"props":6203,"children":6204},{"style":276},[6205],{"type":54,"value":467},{"type":48,"tag":220,"props":6207,"children":6208},{"style":276},[6209],{"type":54,"value":300},{"type":48,"tag":220,"props":6211,"children":6212},{"style":233},[6213],{"type":54,"value":2432},{"type":48,"tag":220,"props":6215,"children":6216},{"style":276},[6217],{"type":54,"value":310},{"type":48,"tag":220,"props":6219,"children":6220},{"style":276},[6221],{"type":54,"value":443},{"type":48,"tag":220,"props":6223,"children":6224},{"class":222,"line":369},[6225,6230,6234,6238,6242,6246],{"type":48,"tag":220,"props":6226,"children":6227},{"style":459},[6228],{"type":54,"value":6229},"  callbackURL",{"type":48,"tag":220,"props":6231,"children":6232},{"style":276},[6233],{"type":54,"value":467},{"type":48,"tag":220,"props":6235,"children":6236},{"style":276},[6237],{"type":54,"value":300},{"type":48,"tag":220,"props":6239,"children":6240},{"style":233},[6241],{"type":54,"value":946},{"type":48,"tag":220,"props":6243,"children":6244},{"style":276},[6245],{"type":54,"value":310},{"type":48,"tag":220,"props":6247,"children":6248},{"style":276},[6249],{"type":54,"value":443},{"type":48,"tag":220,"props":6251,"children":6252},{"class":222,"line":404},[6253,6258,6262,6266,6270,6274,6278,6282,6286,6291,6295,6299,6303],{"type":48,"tag":220,"props":6254,"children":6255},{"style":459},[6256],{"type":54,"value":6257},"  scopes",{"type":48,"tag":220,"props":6259,"children":6260},{"style":276},[6261],{"type":54,"value":467},{"type":48,"tag":220,"props":6263,"children":6264},{"style":282},[6265],{"type":54,"value":2423},{"type":48,"tag":220,"props":6267,"children":6268},{"style":276},[6269],{"type":54,"value":310},{"type":48,"tag":220,"props":6271,"children":6272},{"style":233},[6273],{"type":54,"value":4963},{"type":48,"tag":220,"props":6275,"children":6276},{"style":276},[6277],{"type":54,"value":310},{"type":48,"tag":220,"props":6279,"children":6280},{"style":276},[6281],{"type":54,"value":983},{"type":48,"tag":220,"props":6283,"children":6284},{"style":276},[6285],{"type":54,"value":300},{"type":48,"tag":220,"props":6287,"children":6288},{"style":233},[6289],{"type":54,"value":6290},"profile",{"type":48,"tag":220,"props":6292,"children":6293},{"style":276},[6294],{"type":54,"value":310},{"type":48,"tag":220,"props":6296,"children":6297},{"style":282},[6298],{"type":54,"value":2441},{"type":48,"tag":220,"props":6300,"children":6301},{"style":276},[6302],{"type":54,"value":983},{"type":48,"tag":220,"props":6304,"children":6305},{"style":486},[6306],{"type":54,"value":6307}," \u002F\u002F Optional\n",{"type":48,"tag":220,"props":6309,"children":6310},{"class":222,"line":446},[6311,6315,6319],{"type":48,"tag":220,"props":6312,"children":6313},{"style":276},[6314],{"type":54,"value":2269},{"type":48,"tag":220,"props":6316,"children":6317},{"style":282},[6318],{"type":54,"value":255},{"type":48,"tag":220,"props":6320,"children":6321},{"style":276},[6322],{"type":54,"value":315},{"type":48,"tag":220,"props":6324,"children":6325},{"class":222,"line":455},[6326],{"type":48,"tag":220,"props":6327,"children":6328},{"emptyLinePlaceholder":363},[6329],{"type":54,"value":366},{"type":48,"tag":220,"props":6331,"children":6332},{"class":222,"line":482},[6333],{"type":48,"tag":220,"props":6334,"children":6335},{"style":486},[6336],{"type":54,"value":6337},"\u002F\u002F Supabase API\n",{"type":48,"tag":220,"props":6339,"children":6340},{"class":222,"line":497},[6341,6345,6349,6353,6357,6361],{"type":48,"tag":220,"props":6342,"children":6343},{"style":270},[6344],{"type":54,"value":4941},{"type":48,"tag":220,"props":6346,"children":6347},{"style":282},[6348],{"type":54,"value":672},{"type":48,"tag":220,"props":6350,"children":6351},{"style":276},[6352],{"type":54,"value":415},{"type":48,"tag":220,"props":6354,"children":6355},{"style":394},[6356],{"type":54,"value":5623},{"type":48,"tag":220,"props":6358,"children":6359},{"style":282},[6360],{"type":54,"value":969},{"type":48,"tag":220,"props":6362,"children":6363},{"style":276},[6364],{"type":54,"value":6193},{"type":48,"tag":220,"props":6366,"children":6367},{"class":222,"line":28},[6368,6372,6376,6380,6384,6388],{"type":48,"tag":220,"props":6369,"children":6370},{"style":459},[6371],{"type":54,"value":6201},{"type":48,"tag":220,"props":6373,"children":6374},{"style":276},[6375],{"type":54,"value":467},{"type":48,"tag":220,"props":6377,"children":6378},{"style":276},[6379],{"type":54,"value":300},{"type":48,"tag":220,"props":6381,"children":6382},{"style":233},[6383],{"type":54,"value":2432},{"type":48,"tag":220,"props":6385,"children":6386},{"style":276},[6387],{"type":54,"value":310},{"type":48,"tag":220,"props":6389,"children":6390},{"style":276},[6391],{"type":54,"value":443},{"type":48,"tag":220,"props":6393,"children":6394},{"class":222,"line":845},[6395,6400,6404],{"type":48,"tag":220,"props":6396,"children":6397},{"style":459},[6398],{"type":54,"value":6399},"  options",{"type":48,"tag":220,"props":6401,"children":6402},{"style":276},[6403],{"type":54,"value":467},{"type":48,"tag":220,"props":6405,"children":6406},{"style":276},[6407],{"type":54,"value":812},{"type":48,"tag":220,"props":6409,"children":6410},{"class":222,"line":853},[6411,6416,6420,6424,6428,6432],{"type":48,"tag":220,"props":6412,"children":6413},{"style":459},[6414],{"type":54,"value":6415},"    redirectTo",{"type":48,"tag":220,"props":6417,"children":6418},{"style":276},[6419],{"type":54,"value":467},{"type":48,"tag":220,"props":6421,"children":6422},{"style":276},[6423],{"type":54,"value":300},{"type":48,"tag":220,"props":6425,"children":6426},{"style":233},[6427],{"type":54,"value":946},{"type":48,"tag":220,"props":6429,"children":6430},{"style":276},[6431],{"type":54,"value":310},{"type":48,"tag":220,"props":6433,"children":6434},{"style":276},[6435],{"type":54,"value":443},{"type":48,"tag":220,"props":6437,"children":6438},{"class":222,"line":867},[6439,6444,6448,6452,6457,6461],{"type":48,"tag":220,"props":6440,"children":6441},{"style":459},[6442],{"type":54,"value":6443},"    scopes",{"type":48,"tag":220,"props":6445,"children":6446},{"style":276},[6447],{"type":54,"value":467},{"type":48,"tag":220,"props":6449,"children":6450},{"style":276},[6451],{"type":54,"value":300},{"type":48,"tag":220,"props":6453,"children":6454},{"style":233},[6455],{"type":54,"value":6456},"email profile",{"type":48,"tag":220,"props":6458,"children":6459},{"style":276},[6460],{"type":54,"value":310},{"type":48,"tag":220,"props":6462,"children":6463},{"style":276},[6464],{"type":54,"value":443},{"type":48,"tag":220,"props":6466,"children":6467},{"class":222,"line":881},[6468],{"type":48,"tag":220,"props":6469,"children":6470},{"style":276},[6471],{"type":54,"value":6472},"  },\n",{"type":48,"tag":220,"props":6474,"children":6475},{"class":222,"line":24},[6476,6480,6484],{"type":48,"tag":220,"props":6477,"children":6478},{"style":276},[6479],{"type":54,"value":2269},{"type":48,"tag":220,"props":6481,"children":6482},{"style":282},[6483],{"type":54,"value":255},{"type":48,"tag":220,"props":6485,"children":6486},{"style":276},[6487],{"type":54,"value":315},{"type":48,"tag":202,"props":6489,"children":6491},{"id":6490},"supported-providers",[6492],{"type":54,"value":6493},"Supported Providers",{"type":48,"tag":57,"props":6495,"children":6496},{},[6497,6502,6503,6509,6510,6516,6517,6523,6524,6530,6531,6537,6538,6544,6545,6551,6552,6558,6559,6565,6566,6572,6573],{"type":48,"tag":100,"props":6498,"children":6500},{"className":6499},[],[6501],{"type":54,"value":2432},{"type":54,"value":3521},{"type":48,"tag":100,"props":6504,"children":6506},{"className":6505},[],[6507],{"type":54,"value":6508},"github",{"type":54,"value":3521},{"type":48,"tag":100,"props":6511,"children":6513},{"className":6512},[],[6514],{"type":54,"value":6515},"twitter",{"type":54,"value":3521},{"type":48,"tag":100,"props":6518,"children":6520},{"className":6519},[],[6521],{"type":54,"value":6522},"discord",{"type":54,"value":3521},{"type":48,"tag":100,"props":6525,"children":6527},{"className":6526},[],[6528],{"type":54,"value":6529},"apple",{"type":54,"value":3521},{"type":48,"tag":100,"props":6532,"children":6534},{"className":6533},[],[6535],{"type":54,"value":6536},"microsoft",{"type":54,"value":3521},{"type":48,"tag":100,"props":6539,"children":6541},{"className":6540},[],[6542],{"type":54,"value":6543},"facebook",{"type":54,"value":3521},{"type":48,"tag":100,"props":6546,"children":6548},{"className":6547},[],[6549],{"type":54,"value":6550},"linkedin",{"type":54,"value":3521},{"type":48,"tag":100,"props":6553,"children":6555},{"className":6554},[],[6556],{"type":54,"value":6557},"spotify",{"type":54,"value":3521},{"type":48,"tag":100,"props":6560,"children":6562},{"className":6561},[],[6563],{"type":54,"value":6564},"twitch",{"type":54,"value":3521},{"type":48,"tag":100,"props":6567,"children":6569},{"className":6568},[],[6570],{"type":54,"value":6571},"gitlab",{"type":54,"value":3521},{"type":48,"tag":100,"props":6574,"children":6576},{"className":6575},[],[6577],{"type":54,"value":6578},"bitbucket",{"type":48,"tag":202,"props":6580,"children":6582},{"id":6581},"oauth-in-iframes",[6583],{"type":54,"value":6584},"OAuth in Iframes",{"type":48,"tag":57,"props":6586,"children":6587},{},[6588],{"type":54,"value":6589},"OAuth automatically uses popup flow when running in iframes (due to X-Frame-Options restrictions). No configuration needed.",{"type":48,"tag":1411,"props":6591,"children":6592},{},[],{"type":48,"tag":63,"props":6594,"children":6596},{"id":6595},"session-hook",[6597],{"type":54,"value":6598},"Session Hook",{"type":48,"tag":209,"props":6600,"children":6602},{"className":258,"code":6601,"language":260,"meta":214,"style":214},"function MyComponent() {\n  const { data: session, isPending, error, refetch } = authClient.useSession();\n\n  if (isPending) return \u003Cdiv>Loading...\u003C\u002Fdiv>;\n  if (error) return \u003Cdiv>Error: {error.message}\u003C\u002Fdiv>;\n  if (!session) return \u003Cdiv>Not signed in\u003C\u002Fdiv>;\n\n  return (\n    \u003Cdiv>\n      \u003Cp>Hello, {session.user.name}\u003C\u002Fp>\n      \u003Cp>Email: {session.user.email}\u003C\u002Fp>\n      \u003Cp>ID: {session.user.id}\u003C\u002Fp>\n      \u003Cimg src={session.user.image} alt=\"Avatar\" \u002F>\n    \u003C\u002Fdiv>\n  );\n}\n",[6603],{"type":48,"tag":100,"props":6604,"children":6605},{"__ignoreMap":214},[6606,6626,6703,6710,6769,6840,6903,6910,6921,6936,6997,7063,7128,7188,7203,7214],{"type":48,"tag":220,"props":6607,"children":6608},{"class":222,"line":223},[6609,6613,6618,6622],{"type":48,"tag":220,"props":6610,"children":6611},{"style":378},[6612],{"type":54,"value":3387},{"type":48,"tag":220,"props":6614,"children":6615},{"style":394},[6616],{"type":54,"value":6617}," MyComponent",{"type":48,"tag":220,"props":6619,"children":6620},{"style":276},[6621],{"type":54,"value":134},{"type":48,"tag":220,"props":6623,"children":6624},{"style":276},[6625],{"type":54,"value":812},{"type":48,"tag":220,"props":6627,"children":6628},{"class":222,"line":318},[6629,6633,6637,6641,6645,6649,6653,6657,6661,6666,6670,6675,6679,6683,6687,6691,6695,6699],{"type":48,"tag":220,"props":6630,"children":6631},{"style":378},[6632],{"type":54,"value":820},{"type":48,"tag":220,"props":6634,"children":6635},{"style":276},[6636],{"type":54,"value":279},{"type":48,"tag":220,"props":6638,"children":6639},{"style":459},[6640],{"type":54,"value":5262},{"type":48,"tag":220,"props":6642,"children":6643},{"style":276},[6644],{"type":54,"value":467},{"type":48,"tag":220,"props":6646,"children":6647},{"style":282},[6648],{"type":54,"value":5823},{"type":48,"tag":220,"props":6650,"children":6651},{"style":276},[6652],{"type":54,"value":983},{"type":48,"tag":220,"props":6654,"children":6655},{"style":282},[6656],{"type":54,"value":5271},{"type":48,"tag":220,"props":6658,"children":6659},{"style":276},[6660],{"type":54,"value":983},{"type":48,"tag":220,"props":6662,"children":6663},{"style":282},[6664],{"type":54,"value":6665}," error",{"type":48,"tag":220,"props":6667,"children":6668},{"style":276},[6669],{"type":54,"value":983},{"type":48,"tag":220,"props":6671,"children":6672},{"style":282},[6673],{"type":54,"value":6674}," refetch",{"type":48,"tag":220,"props":6676,"children":6677},{"style":276},[6678],{"type":54,"value":290},{"type":48,"tag":220,"props":6680,"children":6681},{"style":276},[6682],{"type":54,"value":830},{"type":48,"tag":220,"props":6684,"children":6685},{"style":282},[6686],{"type":54,"value":672},{"type":48,"tag":220,"props":6688,"children":6689},{"style":276},[6690],{"type":54,"value":415},{"type":48,"tag":220,"props":6692,"children":6693},{"style":394},[6694],{"type":54,"value":5301},{"type":48,"tag":220,"props":6696,"children":6697},{"style":459},[6698],{"type":54,"value":134},{"type":48,"tag":220,"props":6700,"children":6701},{"style":276},[6702],{"type":54,"value":315},{"type":48,"tag":220,"props":6704,"children":6705},{"class":222,"line":359},[6706],{"type":48,"tag":220,"props":6707,"children":6708},{"emptyLinePlaceholder":363},[6709],{"type":54,"value":366},{"type":48,"tag":220,"props":6711,"children":6712},{"class":222,"line":369},[6713,6718,6723,6728,6733,6738,6742,6747,6751,6756,6760,6764],{"type":48,"tag":220,"props":6714,"children":6715},{"style":270},[6716],{"type":54,"value":6717},"  if",{"type":48,"tag":220,"props":6719,"children":6720},{"style":459},[6721],{"type":54,"value":6722}," (",{"type":48,"tag":220,"props":6724,"children":6725},{"style":282},[6726],{"type":54,"value":6727},"isPending",{"type":48,"tag":220,"props":6729,"children":6730},{"style":459},[6731],{"type":54,"value":6732},") ",{"type":48,"tag":220,"props":6734,"children":6735},{"style":270},[6736],{"type":54,"value":6737},"return",{"type":48,"tag":220,"props":6739,"children":6740},{"style":459},[6741],{"type":54,"value":3462},{"type":48,"tag":220,"props":6743,"children":6744},{"style":227},[6745],{"type":54,"value":6746},"div",{"type":48,"tag":220,"props":6748,"children":6749},{"style":459},[6750],{"type":54,"value":4096},{"type":48,"tag":220,"props":6752,"children":6753},{"style":282},[6754],{"type":54,"value":6755},"Loading",{"type":48,"tag":220,"props":6757,"children":6758},{"style":276},[6759],{"type":54,"value":4101},{"type":48,"tag":220,"props":6761,"children":6762},{"style":282},[6763],{"type":54,"value":6746},{"type":48,"tag":220,"props":6765,"children":6766},{"style":276},[6767],{"type":54,"value":6768},">;\n",{"type":48,"tag":220,"props":6770,"children":6771},{"class":222,"line":404},[6772,6776,6780,6785,6789,6793,6797,6801,6805,6810,6814,6818,6823,6828,6832,6836],{"type":48,"tag":220,"props":6773,"children":6774},{"style":270},[6775],{"type":54,"value":6717},{"type":48,"tag":220,"props":6777,"children":6778},{"style":459},[6779],{"type":54,"value":6722},{"type":48,"tag":220,"props":6781,"children":6782},{"style":282},[6783],{"type":54,"value":6784},"error",{"type":48,"tag":220,"props":6786,"children":6787},{"style":459},[6788],{"type":54,"value":6732},{"type":48,"tag":220,"props":6790,"children":6791},{"style":270},[6792],{"type":54,"value":6737},{"type":48,"tag":220,"props":6794,"children":6795},{"style":459},[6796],{"type":54,"value":3462},{"type":48,"tag":220,"props":6798,"children":6799},{"style":227},[6800],{"type":54,"value":6746},{"type":48,"tag":220,"props":6802,"children":6803},{"style":459},[6804],{"type":54,"value":4096},{"type":48,"tag":220,"props":6806,"children":6807},{"style":282},[6808],{"type":54,"value":6809},"Error",{"type":48,"tag":220,"props":6811,"children":6812},{"style":459},[6813],{"type":54,"value":162},{"type":48,"tag":220,"props":6815,"children":6816},{"style":276},[6817],{"type":54,"value":974},{"type":48,"tag":220,"props":6819,"children":6820},{"style":459},[6821],{"type":54,"value":6822},"error.",{"type":48,"tag":220,"props":6824,"children":6825},{"style":282},[6826],{"type":54,"value":6827},"message",{"type":48,"tag":220,"props":6829,"children":6830},{"style":276},[6831],{"type":54,"value":1026},{"type":48,"tag":220,"props":6833,"children":6834},{"style":282},[6835],{"type":54,"value":6746},{"type":48,"tag":220,"props":6837,"children":6838},{"style":276},[6839],{"type":54,"value":6768},{"type":48,"tag":220,"props":6841,"children":6842},{"class":222,"line":446},[6843,6847,6851,6855,6860,6864,6868,6872,6876,6880,6885,6890,6895,6899],{"type":48,"tag":220,"props":6844,"children":6845},{"style":270},[6846],{"type":54,"value":6717},{"type":48,"tag":220,"props":6848,"children":6849},{"style":459},[6850],{"type":54,"value":6722},{"type":48,"tag":220,"props":6852,"children":6853},{"style":276},[6854],{"type":54,"value":1299},{"type":48,"tag":220,"props":6856,"children":6857},{"style":282},[6858],{"type":54,"value":6859},"session",{"type":48,"tag":220,"props":6861,"children":6862},{"style":459},[6863],{"type":54,"value":6732},{"type":48,"tag":220,"props":6865,"children":6866},{"style":270},[6867],{"type":54,"value":6737},{"type":48,"tag":220,"props":6869,"children":6870},{"style":459},[6871],{"type":54,"value":3462},{"type":48,"tag":220,"props":6873,"children":6874},{"style":227},[6875],{"type":54,"value":6746},{"type":48,"tag":220,"props":6877,"children":6878},{"style":459},[6879],{"type":54,"value":4096},{"type":48,"tag":220,"props":6881,"children":6882},{"style":282},[6883],{"type":54,"value":6884},"Not",{"type":48,"tag":220,"props":6886,"children":6887},{"style":282},[6888],{"type":54,"value":6889}," signed",{"type":48,"tag":220,"props":6891,"children":6892},{"style":276},[6893],{"type":54,"value":6894}," in\u003C\u002F",{"type":48,"tag":220,"props":6896,"children":6897},{"style":282},[6898],{"type":54,"value":6746},{"type":48,"tag":220,"props":6900,"children":6901},{"style":276},[6902],{"type":54,"value":6768},{"type":48,"tag":220,"props":6904,"children":6905},{"class":222,"line":455},[6906],{"type":48,"tag":220,"props":6907,"children":6908},{"emptyLinePlaceholder":363},[6909],{"type":54,"value":366},{"type":48,"tag":220,"props":6911,"children":6912},{"class":222,"line":482},[6913,6917],{"type":48,"tag":220,"props":6914,"children":6915},{"style":270},[6916],{"type":54,"value":859},{"type":48,"tag":220,"props":6918,"children":6919},{"style":459},[6920],{"type":54,"value":864},{"type":48,"tag":220,"props":6922,"children":6923},{"class":222,"line":497},[6924,6928,6932],{"type":48,"tag":220,"props":6925,"children":6926},{"style":459},[6927],{"type":54,"value":873},{"type":48,"tag":220,"props":6929,"children":6930},{"style":227},[6931],{"type":54,"value":6746},{"type":48,"tag":220,"props":6933,"children":6934},{"style":459},[6935],{"type":54,"value":1081},{"type":48,"tag":220,"props":6937,"children":6938},{"class":222,"line":28},[6939,6943,6947,6951,6956,6960,6964,6968,6972,6977,6981,6985,6989,6993],{"type":48,"tag":220,"props":6940,"children":6941},{"style":459},[6942],{"type":54,"value":1357},{"type":48,"tag":220,"props":6944,"children":6945},{"style":227},[6946],{"type":54,"value":57},{"type":48,"tag":220,"props":6948,"children":6949},{"style":459},[6950],{"type":54,"value":4096},{"type":48,"tag":220,"props":6952,"children":6953},{"style":768},[6954],{"type":54,"value":6955},"Hello",{"type":48,"tag":220,"props":6957,"children":6958},{"style":276},[6959],{"type":54,"value":983},{"type":48,"tag":220,"props":6961,"children":6962},{"style":276},[6963],{"type":54,"value":279},{"type":48,"tag":220,"props":6965,"children":6966},{"style":768},[6967],{"type":54,"value":6859},{"type":48,"tag":220,"props":6969,"children":6970},{"style":459},[6971],{"type":54,"value":415},{"type":48,"tag":220,"props":6973,"children":6974},{"style":768},[6975],{"type":54,"value":6976},"user",{"type":48,"tag":220,"props":6978,"children":6979},{"style":459},[6980],{"type":54,"value":415},{"type":48,"tag":220,"props":6982,"children":6983},{"style":768},[6984],{"type":54,"value":2689},{"type":48,"tag":220,"props":6986,"children":6987},{"style":276},[6988],{"type":54,"value":1026},{"type":48,"tag":220,"props":6990,"children":6991},{"style":282},[6992],{"type":54,"value":57},{"type":48,"tag":220,"props":6994,"children":6995},{"style":276},[6996],{"type":54,"value":1081},{"type":48,"tag":220,"props":6998,"children":6999},{"class":222,"line":845},[7000,7004,7008,7012,7017,7021,7025,7029,7033,7037,7041,7045,7050,7055,7059],{"type":48,"tag":220,"props":7001,"children":7002},{"style":459},[7003],{"type":54,"value":1357},{"type":48,"tag":220,"props":7005,"children":7006},{"style":227},[7007],{"type":54,"value":57},{"type":48,"tag":220,"props":7009,"children":7010},{"style":459},[7011],{"type":54,"value":4096},{"type":48,"tag":220,"props":7013,"children":7014},{"style":768},[7015],{"type":54,"value":7016},"Email",{"type":48,"tag":220,"props":7018,"children":7019},{"style":276},[7020],{"type":54,"value":467},{"type":48,"tag":220,"props":7022,"children":7023},{"style":276},[7024],{"type":54,"value":279},{"type":48,"tag":220,"props":7026,"children":7027},{"style":227},[7028],{"type":54,"value":6859},{"type":48,"tag":220,"props":7030,"children":7031},{"style":276},[7032],{"type":54,"value":415},{"type":48,"tag":220,"props":7034,"children":7035},{"style":227},[7036],{"type":54,"value":6976},{"type":48,"tag":220,"props":7038,"children":7039},{"style":276},[7040],{"type":54,"value":415},{"type":48,"tag":220,"props":7042,"children":7043},{"style":459},[7044],{"type":54,"value":4963},{"type":48,"tag":220,"props":7046,"children":7047},{"style":276},[7048],{"type":54,"value":7049},"}\u003C",{"type":48,"tag":220,"props":7051,"children":7052},{"style":459},[7053],{"type":54,"value":7054},"\u002F",{"type":48,"tag":220,"props":7056,"children":7057},{"style":227},[7058],{"type":54,"value":57},{"type":48,"tag":220,"props":7060,"children":7061},{"style":276},[7062],{"type":54,"value":1081},{"type":48,"tag":220,"props":7064,"children":7065},{"class":222,"line":853},[7066,7070,7074,7078,7083,7087,7091,7095,7099,7103,7107,7112,7116,7120,7124],{"type":48,"tag":220,"props":7067,"children":7068},{"style":459},[7069],{"type":54,"value":1357},{"type":48,"tag":220,"props":7071,"children":7072},{"style":227},[7073],{"type":54,"value":57},{"type":48,"tag":220,"props":7075,"children":7076},{"style":459},[7077],{"type":54,"value":4096},{"type":48,"tag":220,"props":7079,"children":7080},{"style":768},[7081],{"type":54,"value":7082},"ID",{"type":48,"tag":220,"props":7084,"children":7085},{"style":276},[7086],{"type":54,"value":467},{"type":48,"tag":220,"props":7088,"children":7089},{"style":276},[7090],{"type":54,"value":279},{"type":48,"tag":220,"props":7092,"children":7093},{"style":227},[7094],{"type":54,"value":6859},{"type":48,"tag":220,"props":7096,"children":7097},{"style":276},[7098],{"type":54,"value":415},{"type":48,"tag":220,"props":7100,"children":7101},{"style":227},[7102],{"type":54,"value":6976},{"type":48,"tag":220,"props":7104,"children":7105},{"style":276},[7106],{"type":54,"value":415},{"type":48,"tag":220,"props":7108,"children":7109},{"style":459},[7110],{"type":54,"value":7111},"id",{"type":48,"tag":220,"props":7113,"children":7114},{"style":276},[7115],{"type":54,"value":7049},{"type":48,"tag":220,"props":7117,"children":7118},{"style":459},[7119],{"type":54,"value":7054},{"type":48,"tag":220,"props":7121,"children":7122},{"style":227},[7123],{"type":54,"value":57},{"type":48,"tag":220,"props":7125,"children":7126},{"style":276},[7127],{"type":54,"value":1081},{"type":48,"tag":220,"props":7129,"children":7130},{"class":222,"line":867},[7131,7135,7140,7145,7149,7154,7158,7162,7167,7171,7175,7180,7184],{"type":48,"tag":220,"props":7132,"children":7133},{"style":276},[7134],{"type":54,"value":1357},{"type":48,"tag":220,"props":7136,"children":7137},{"style":282},[7138],{"type":54,"value":7139},"img",{"type":48,"tag":220,"props":7141,"children":7142},{"style":282},[7143],{"type":54,"value":7144}," src",{"type":48,"tag":220,"props":7146,"children":7147},{"style":276},[7148],{"type":54,"value":892},{"type":48,"tag":220,"props":7150,"children":7151},{"style":459},[7152],{"type":54,"value":7153},"session.user.",{"type":48,"tag":220,"props":7155,"children":7156},{"style":282},[7157],{"type":54,"value":2769},{"type":48,"tag":220,"props":7159,"children":7160},{"style":276},[7161],{"type":54,"value":2269},{"type":48,"tag":220,"props":7163,"children":7164},{"style":282},[7165],{"type":54,"value":7166}," alt",{"type":48,"tag":220,"props":7168,"children":7169},{"style":276},[7170],{"type":54,"value":391},{"type":48,"tag":220,"props":7172,"children":7173},{"style":276},[7174],{"type":54,"value":941},{"type":48,"tag":220,"props":7176,"children":7177},{"style":233},[7178],{"type":54,"value":7179},"Avatar",{"type":48,"tag":220,"props":7181,"children":7182},{"style":276},[7183],{"type":54,"value":941},{"type":48,"tag":220,"props":7185,"children":7186},{"style":276},[7187],{"type":54,"value":3746},{"type":48,"tag":220,"props":7189,"children":7190},{"class":222,"line":881},[7191,7195,7199],{"type":48,"tag":220,"props":7192,"children":7193},{"style":276},[7194],{"type":54,"value":1071},{"type":48,"tag":220,"props":7196,"children":7197},{"style":282},[7198],{"type":54,"value":6746},{"type":48,"tag":220,"props":7200,"children":7201},{"style":276},[7202],{"type":54,"value":1081},{"type":48,"tag":220,"props":7204,"children":7205},{"class":222,"line":24},[7206,7210],{"type":48,"tag":220,"props":7207,"children":7208},{"style":459},[7209],{"type":54,"value":1090},{"type":48,"tag":220,"props":7211,"children":7212},{"style":276},[7213],{"type":54,"value":315},{"type":48,"tag":220,"props":7215,"children":7216},{"class":222,"line":926},[7217],{"type":48,"tag":220,"props":7218,"children":7219},{"style":276},[7220],{"type":54,"value":902},{"type":48,"tag":57,"props":7222,"children":7223},{},[7224],{"type":48,"tag":122,"props":7225,"children":7226},{},[7227],{"type":54,"value":7228},"Session object shape:",{"type":48,"tag":209,"props":7230,"children":7232},{"className":258,"code":7231,"language":260,"meta":214,"style":214},"{\n  user: {\n    id: string;\n    email: string;\n    name: string;\n    image?: string;\n    emailVerified: boolean;\n    createdAt: Date;\n    updatedAt: Date;\n  };\n  session: {\n    id: string;\n    token: string;        \u002F\u002F JWT token\n    expiresAt: Date;\n    ipAddress?: string;\n    userAgent?: string;\n  };\n}\n",[7233],{"type":48,"tag":100,"props":7234,"children":7235},{"__ignoreMap":214},[7236,7243,7259,7280,7300,7320,7341,7362,7383,7403,7411,7427,7446,7471,7491,7511,7531,7538],{"type":48,"tag":220,"props":7237,"children":7238},{"class":222,"line":223},[7239],{"type":48,"tag":220,"props":7240,"children":7241},{"style":276},[7242],{"type":54,"value":6193},{"type":48,"tag":220,"props":7244,"children":7245},{"class":222,"line":318},[7246,7251,7255],{"type":48,"tag":220,"props":7247,"children":7248},{"style":227},[7249],{"type":54,"value":7250},"  user",{"type":48,"tag":220,"props":7252,"children":7253},{"style":276},[7254],{"type":54,"value":467},{"type":48,"tag":220,"props":7256,"children":7257},{"style":276},[7258],{"type":54,"value":812},{"type":48,"tag":220,"props":7260,"children":7261},{"class":222,"line":359},[7262,7267,7271,7276],{"type":48,"tag":220,"props":7263,"children":7264},{"style":227},[7265],{"type":54,"value":7266},"    id",{"type":48,"tag":220,"props":7268,"children":7269},{"style":276},[7270],{"type":54,"value":467},{"type":48,"tag":220,"props":7272,"children":7273},{"style":282},[7274],{"type":54,"value":7275}," string",{"type":48,"tag":220,"props":7277,"children":7278},{"style":276},[7279],{"type":54,"value":315},{"type":48,"tag":220,"props":7281,"children":7282},{"class":222,"line":369},[7283,7288,7292,7296],{"type":48,"tag":220,"props":7284,"children":7285},{"style":227},[7286],{"type":54,"value":7287},"    email",{"type":48,"tag":220,"props":7289,"children":7290},{"style":276},[7291],{"type":54,"value":467},{"type":48,"tag":220,"props":7293,"children":7294},{"style":282},[7295],{"type":54,"value":7275},{"type":48,"tag":220,"props":7297,"children":7298},{"style":276},[7299],{"type":54,"value":315},{"type":48,"tag":220,"props":7301,"children":7302},{"class":222,"line":404},[7303,7308,7312,7316],{"type":48,"tag":220,"props":7304,"children":7305},{"style":227},[7306],{"type":54,"value":7307},"    name",{"type":48,"tag":220,"props":7309,"children":7310},{"style":276},[7311],{"type":54,"value":467},{"type":48,"tag":220,"props":7313,"children":7314},{"style":282},[7315],{"type":54,"value":7275},{"type":48,"tag":220,"props":7317,"children":7318},{"style":276},[7319],{"type":54,"value":315},{"type":48,"tag":220,"props":7321,"children":7322},{"class":222,"line":446},[7323,7328,7333,7337],{"type":48,"tag":220,"props":7324,"children":7325},{"style":282},[7326],{"type":54,"value":7327},"    image",{"type":48,"tag":220,"props":7329,"children":7330},{"style":276},[7331],{"type":54,"value":7332},"?:",{"type":48,"tag":220,"props":7334,"children":7335},{"style":282},[7336],{"type":54,"value":7275},{"type":48,"tag":220,"props":7338,"children":7339},{"style":276},[7340],{"type":54,"value":315},{"type":48,"tag":220,"props":7342,"children":7343},{"class":222,"line":455},[7344,7349,7353,7358],{"type":48,"tag":220,"props":7345,"children":7346},{"style":227},[7347],{"type":54,"value":7348},"    emailVerified",{"type":48,"tag":220,"props":7350,"children":7351},{"style":276},[7352],{"type":54,"value":467},{"type":48,"tag":220,"props":7354,"children":7355},{"style":282},[7356],{"type":54,"value":7357}," boolean",{"type":48,"tag":220,"props":7359,"children":7360},{"style":276},[7361],{"type":54,"value":315},{"type":48,"tag":220,"props":7363,"children":7364},{"class":222,"line":482},[7365,7370,7374,7379],{"type":48,"tag":220,"props":7366,"children":7367},{"style":227},[7368],{"type":54,"value":7369},"    createdAt",{"type":48,"tag":220,"props":7371,"children":7372},{"style":276},[7373],{"type":54,"value":467},{"type":48,"tag":220,"props":7375,"children":7376},{"style":282},[7377],{"type":54,"value":7378}," Date",{"type":48,"tag":220,"props":7380,"children":7381},{"style":276},[7382],{"type":54,"value":315},{"type":48,"tag":220,"props":7384,"children":7385},{"class":222,"line":497},[7386,7391,7395,7399],{"type":48,"tag":220,"props":7387,"children":7388},{"style":227},[7389],{"type":54,"value":7390},"    updatedAt",{"type":48,"tag":220,"props":7392,"children":7393},{"style":276},[7394],{"type":54,"value":467},{"type":48,"tag":220,"props":7396,"children":7397},{"style":282},[7398],{"type":54,"value":7378},{"type":48,"tag":220,"props":7400,"children":7401},{"style":276},[7402],{"type":54,"value":315},{"type":48,"tag":220,"props":7404,"children":7405},{"class":222,"line":28},[7406],{"type":48,"tag":220,"props":7407,"children":7408},{"style":276},[7409],{"type":54,"value":7410},"  };\n",{"type":48,"tag":220,"props":7412,"children":7413},{"class":222,"line":845},[7414,7419,7423],{"type":48,"tag":220,"props":7415,"children":7416},{"style":227},[7417],{"type":54,"value":7418},"  session",{"type":48,"tag":220,"props":7420,"children":7421},{"style":276},[7422],{"type":54,"value":467},{"type":48,"tag":220,"props":7424,"children":7425},{"style":276},[7426],{"type":54,"value":812},{"type":48,"tag":220,"props":7428,"children":7429},{"class":222,"line":853},[7430,7434,7438,7442],{"type":48,"tag":220,"props":7431,"children":7432},{"style":227},[7433],{"type":54,"value":7266},{"type":48,"tag":220,"props":7435,"children":7436},{"style":276},[7437],{"type":54,"value":467},{"type":48,"tag":220,"props":7439,"children":7440},{"style":282},[7441],{"type":54,"value":7275},{"type":48,"tag":220,"props":7443,"children":7444},{"style":276},[7445],{"type":54,"value":315},{"type":48,"tag":220,"props":7447,"children":7448},{"class":222,"line":867},[7449,7454,7458,7462,7466],{"type":48,"tag":220,"props":7450,"children":7451},{"style":227},[7452],{"type":54,"value":7453},"    token",{"type":48,"tag":220,"props":7455,"children":7456},{"style":276},[7457],{"type":54,"value":467},{"type":48,"tag":220,"props":7459,"children":7460},{"style":282},[7461],{"type":54,"value":7275},{"type":48,"tag":220,"props":7463,"children":7464},{"style":276},[7465],{"type":54,"value":3438},{"type":48,"tag":220,"props":7467,"children":7468},{"style":486},[7469],{"type":54,"value":7470},"        \u002F\u002F JWT token\n",{"type":48,"tag":220,"props":7472,"children":7473},{"class":222,"line":881},[7474,7479,7483,7487],{"type":48,"tag":220,"props":7475,"children":7476},{"style":227},[7477],{"type":54,"value":7478},"    expiresAt",{"type":48,"tag":220,"props":7480,"children":7481},{"style":276},[7482],{"type":54,"value":467},{"type":48,"tag":220,"props":7484,"children":7485},{"style":282},[7486],{"type":54,"value":7378},{"type":48,"tag":220,"props":7488,"children":7489},{"style":276},[7490],{"type":54,"value":315},{"type":48,"tag":220,"props":7492,"children":7493},{"class":222,"line":24},[7494,7499,7503,7507],{"type":48,"tag":220,"props":7495,"children":7496},{"style":282},[7497],{"type":54,"value":7498},"    ipAddress",{"type":48,"tag":220,"props":7500,"children":7501},{"style":276},[7502],{"type":54,"value":7332},{"type":48,"tag":220,"props":7504,"children":7505},{"style":282},[7506],{"type":54,"value":7275},{"type":48,"tag":220,"props":7508,"children":7509},{"style":276},[7510],{"type":54,"value":315},{"type":48,"tag":220,"props":7512,"children":7513},{"class":222,"line":926},[7514,7519,7523,7527],{"type":48,"tag":220,"props":7515,"children":7516},{"style":282},[7517],{"type":54,"value":7518},"    userAgent",{"type":48,"tag":220,"props":7520,"children":7521},{"style":276},[7522],{"type":54,"value":7332},{"type":48,"tag":220,"props":7524,"children":7525},{"style":282},[7526],{"type":54,"value":7275},{"type":48,"tag":220,"props":7528,"children":7529},{"style":276},[7530],{"type":54,"value":315},{"type":48,"tag":220,"props":7532,"children":7533},{"class":222,"line":954},[7534],{"type":48,"tag":220,"props":7535,"children":7536},{"style":276},[7537],{"type":54,"value":7410},{"type":48,"tag":220,"props":7539,"children":7540},{"class":222,"line":1039},[7541],{"type":48,"tag":220,"props":7542,"children":7543},{"style":276},[7544],{"type":54,"value":902},{"type":48,"tag":1411,"props":7546,"children":7547},{},[],{"type":48,"tag":63,"props":7549,"children":7551},{"id":7550},"advanced-features",[7552],{"type":54,"value":7553},"Advanced Features",{"type":48,"tag":202,"props":7555,"children":7557},{"id":7556},"anonymous-access",[7558],{"type":54,"value":7559},"Anonymous Access",{"type":48,"tag":57,"props":7561,"children":7562},{},[7563],{"type":54,"value":7564},"Enable RLS-based data access for unauthenticated users:",{"type":48,"tag":209,"props":7566,"children":7568},{"className":258,"code":7567,"language":260,"meta":214,"style":214},"\u002F\u002F Client setup\nconst authClient = createAuthClient(url, {\n  adapter: BetterAuthReactAdapter(),\n  allowAnonymous: true,\n});\n\n\u002F\u002F Get token (returns anonymous JWT if not signed in)\nconst token = await authClient.getJWTToken?.();\n",[7569],{"type":48,"tag":100,"props":7570,"children":7571},{"__ignoreMap":214},[7572,7580,7611,7634,7654,7669,7676,7684],{"type":48,"tag":220,"props":7573,"children":7574},{"class":222,"line":223},[7575],{"type":48,"tag":220,"props":7576,"children":7577},{"style":486},[7578],{"type":54,"value":7579},"\u002F\u002F Client setup\n",{"type":48,"tag":220,"props":7581,"children":7582},{"class":222,"line":318},[7583,7587,7591,7595,7599,7603,7607],{"type":48,"tag":220,"props":7584,"children":7585},{"style":378},[7586],{"type":54,"value":4854},{"type":48,"tag":220,"props":7588,"children":7589},{"style":282},[7590],{"type":54,"value":386},{"type":48,"tag":220,"props":7592,"children":7593},{"style":276},[7594],{"type":54,"value":391},{"type":48,"tag":220,"props":7596,"children":7597},{"style":394},[7598],{"type":54,"value":285},{"type":48,"tag":220,"props":7600,"children":7601},{"style":282},[7602],{"type":54,"value":4871},{"type":48,"tag":220,"props":7604,"children":7605},{"style":276},[7606],{"type":54,"value":983},{"type":48,"tag":220,"props":7608,"children":7609},{"style":276},[7610],{"type":54,"value":812},{"type":48,"tag":220,"props":7612,"children":7613},{"class":222,"line":359},[7614,7618,7622,7626,7630],{"type":48,"tag":220,"props":7615,"children":7616},{"style":459},[7617],{"type":54,"value":4887},{"type":48,"tag":220,"props":7619,"children":7620},{"style":276},[7621],{"type":54,"value":467},{"type":48,"tag":220,"props":7623,"children":7624},{"style":394},[7625],{"type":54,"value":332},{"type":48,"tag":220,"props":7627,"children":7628},{"style":282},[7629],{"type":54,"value":134},{"type":48,"tag":220,"props":7631,"children":7632},{"style":276},[7633],{"type":54,"value":443},{"type":48,"tag":220,"props":7635,"children":7636},{"class":222,"line":369},[7637,7642,7646,7650],{"type":48,"tag":220,"props":7638,"children":7639},{"style":459},[7640],{"type":54,"value":7641},"  allowAnonymous",{"type":48,"tag":220,"props":7643,"children":7644},{"style":276},[7645],{"type":54,"value":467},{"type":48,"tag":220,"props":7647,"children":7648},{"style":2613},[7649],{"type":54,"value":2616},{"type":48,"tag":220,"props":7651,"children":7652},{"style":276},[7653],{"type":54,"value":443},{"type":48,"tag":220,"props":7655,"children":7656},{"class":222,"line":404},[7657,7661,7665],{"type":48,"tag":220,"props":7658,"children":7659},{"style":276},[7660],{"type":54,"value":2269},{"type":48,"tag":220,"props":7662,"children":7663},{"style":282},[7664],{"type":54,"value":255},{"type":48,"tag":220,"props":7666,"children":7667},{"style":276},[7668],{"type":54,"value":315},{"type":48,"tag":220,"props":7670,"children":7671},{"class":222,"line":446},[7672],{"type":48,"tag":220,"props":7673,"children":7674},{"emptyLinePlaceholder":363},[7675],{"type":54,"value":366},{"type":48,"tag":220,"props":7677,"children":7678},{"class":222,"line":455},[7679],{"type":48,"tag":220,"props":7680,"children":7681},{"style":486},[7682],{"type":54,"value":7683},"\u002F\u002F Get token (returns anonymous JWT if not signed in)\n",{"type":48,"tag":220,"props":7685,"children":7686},{"class":222,"line":482},[7687,7691,7696,7700,7704,7708,7712,7717,7722,7726],{"type":48,"tag":220,"props":7688,"children":7689},{"style":378},[7690],{"type":54,"value":4854},{"type":48,"tag":220,"props":7692,"children":7693},{"style":282},[7694],{"type":54,"value":7695}," token ",{"type":48,"tag":220,"props":7697,"children":7698},{"style":276},[7699],{"type":54,"value":391},{"type":48,"tag":220,"props":7701,"children":7702},{"style":270},[7703],{"type":54,"value":5210},{"type":48,"tag":220,"props":7705,"children":7706},{"style":282},[7707],{"type":54,"value":672},{"type":48,"tag":220,"props":7709,"children":7710},{"style":276},[7711],{"type":54,"value":415},{"type":48,"tag":220,"props":7713,"children":7714},{"style":394},[7715],{"type":54,"value":7716},"getJWTToken",{"type":48,"tag":220,"props":7718,"children":7719},{"style":276},[7720],{"type":54,"value":7721},"?.",{"type":48,"tag":220,"props":7723,"children":7724},{"style":282},[7725],{"type":54,"value":134},{"type":48,"tag":220,"props":7727,"children":7728},{"style":276},[7729],{"type":54,"value":315},{"type":48,"tag":202,"props":7731,"children":7733},{"id":7732},"get-jwt-token-for-api-calls",[7734],{"type":54,"value":7735},"Get JWT Token (for API calls)",{"type":48,"tag":209,"props":7737,"children":7739},{"className":258,"code":7738,"language":260,"meta":214,"style":214},"const token = await authClient.getJWTToken();\n\nconst response = await fetch('\u002Fapi\u002Fdata', {\n  headers: {\n    Authorization: `Bearer ${token}`,\n  },\n});\n",[7740],{"type":48,"tag":100,"props":7741,"children":7742},{"__ignoreMap":214},[7743,7782,7789,7839,7855,7896,7903],{"type":48,"tag":220,"props":7744,"children":7745},{"class":222,"line":223},[7746,7750,7754,7758,7762,7766,7770,7774,7778],{"type":48,"tag":220,"props":7747,"children":7748},{"style":378},[7749],{"type":54,"value":4854},{"type":48,"tag":220,"props":7751,"children":7752},{"style":282},[7753],{"type":54,"value":7695},{"type":48,"tag":220,"props":7755,"children":7756},{"style":276},[7757],{"type":54,"value":391},{"type":48,"tag":220,"props":7759,"children":7760},{"style":270},[7761],{"type":54,"value":5210},{"type":48,"tag":220,"props":7763,"children":7764},{"style":282},[7765],{"type":54,"value":672},{"type":48,"tag":220,"props":7767,"children":7768},{"style":276},[7769],{"type":54,"value":415},{"type":48,"tag":220,"props":7771,"children":7772},{"style":394},[7773],{"type":54,"value":7716},{"type":48,"tag":220,"props":7775,"children":7776},{"style":282},[7777],{"type":54,"value":134},{"type":48,"tag":220,"props":7779,"children":7780},{"style":276},[7781],{"type":54,"value":315},{"type":48,"tag":220,"props":7783,"children":7784},{"class":222,"line":318},[7785],{"type":48,"tag":220,"props":7786,"children":7787},{"emptyLinePlaceholder":363},[7788],{"type":54,"value":366},{"type":48,"tag":220,"props":7790,"children":7791},{"class":222,"line":359},[7792,7796,7801,7805,7809,7814,7818,7822,7827,7831,7835],{"type":48,"tag":220,"props":7793,"children":7794},{"style":378},[7795],{"type":54,"value":4854},{"type":48,"tag":220,"props":7797,"children":7798},{"style":282},[7799],{"type":54,"value":7800}," response ",{"type":48,"tag":220,"props":7802,"children":7803},{"style":276},[7804],{"type":54,"value":391},{"type":48,"tag":220,"props":7806,"children":7807},{"style":270},[7808],{"type":54,"value":5210},{"type":48,"tag":220,"props":7810,"children":7811},{"style":394},[7812],{"type":54,"value":7813}," fetch",{"type":48,"tag":220,"props":7815,"children":7816},{"style":282},[7817],{"type":54,"value":969},{"type":48,"tag":220,"props":7819,"children":7820},{"style":276},[7821],{"type":54,"value":310},{"type":48,"tag":220,"props":7823,"children":7824},{"style":233},[7825],{"type":54,"value":7826},"\u002Fapi\u002Fdata",{"type":48,"tag":220,"props":7828,"children":7829},{"style":276},[7830],{"type":54,"value":310},{"type":48,"tag":220,"props":7832,"children":7833},{"style":276},[7834],{"type":54,"value":983},{"type":48,"tag":220,"props":7836,"children":7837},{"style":276},[7838],{"type":54,"value":812},{"type":48,"tag":220,"props":7840,"children":7841},{"class":222,"line":369},[7842,7847,7851],{"type":48,"tag":220,"props":7843,"children":7844},{"style":459},[7845],{"type":54,"value":7846},"  headers",{"type":48,"tag":220,"props":7848,"children":7849},{"style":276},[7850],{"type":54,"value":467},{"type":48,"tag":220,"props":7852,"children":7853},{"style":276},[7854],{"type":54,"value":812},{"type":48,"tag":220,"props":7856,"children":7857},{"class":222,"line":404},[7858,7863,7867,7872,7877,7882,7887,7892],{"type":48,"tag":220,"props":7859,"children":7860},{"style":459},[7861],{"type":54,"value":7862},"    Authorization",{"type":48,"tag":220,"props":7864,"children":7865},{"style":276},[7866],{"type":54,"value":467},{"type":48,"tag":220,"props":7868,"children":7869},{"style":276},[7870],{"type":54,"value":7871}," `",{"type":48,"tag":220,"props":7873,"children":7874},{"style":233},[7875],{"type":54,"value":7876},"Bearer ",{"type":48,"tag":220,"props":7878,"children":7879},{"style":276},[7880],{"type":54,"value":7881},"${",{"type":48,"tag":220,"props":7883,"children":7884},{"style":282},[7885],{"type":54,"value":7886},"token",{"type":48,"tag":220,"props":7888,"children":7889},{"style":276},[7890],{"type":54,"value":7891},"}`",{"type":48,"tag":220,"props":7893,"children":7894},{"style":276},[7895],{"type":54,"value":443},{"type":48,"tag":220,"props":7897,"children":7898},{"class":222,"line":446},[7899],{"type":48,"tag":220,"props":7900,"children":7901},{"style":276},[7902],{"type":54,"value":6472},{"type":48,"tag":220,"props":7904,"children":7905},{"class":222,"line":455},[7906,7910,7914],{"type":48,"tag":220,"props":7907,"children":7908},{"style":276},[7909],{"type":54,"value":2269},{"type":48,"tag":220,"props":7911,"children":7912},{"style":282},[7913],{"type":54,"value":255},{"type":48,"tag":220,"props":7915,"children":7916},{"style":276},[7917],{"type":54,"value":315},{"type":48,"tag":202,"props":7919,"children":7921},{"id":7920},"password-reset-flow",[7922],{"type":54,"value":7923},"Password Reset Flow",{"type":48,"tag":209,"props":7925,"children":7927},{"className":258,"code":7926,"language":260,"meta":214,"style":214},"\u002F\u002F 1. Request reset email (Supabase API)\nawait authClient.resetPasswordForEmail(email, {\n  redirectTo: '\u002Fauth\u002Freset-password',\n});\n\n\u002F\u002F 2. User clicks link, lands on reset page\n\u002F\u002F 3. Verify OTP and set new password\nawait authClient.verifyOtp({\n  email,\n  token: otpFromUrl,\n  type: 'recovery',\n});\n\n\u002F\u002F Then call password update\nawait authClient.updateUser({ password: newPassword });\n",[7928],{"type":48,"tag":100,"props":7929,"children":7930},{"__ignoreMap":214},[7931,7939,7972,8000,8015,8022,8030,8038,8066,8078,8099,8128,8143,8150,8158],{"type":48,"tag":220,"props":7932,"children":7933},{"class":222,"line":223},[7934],{"type":48,"tag":220,"props":7935,"children":7936},{"style":486},[7937],{"type":54,"value":7938},"\u002F\u002F 1. Request reset email (Supabase API)\n",{"type":48,"tag":220,"props":7940,"children":7941},{"class":222,"line":318},[7942,7946,7950,7954,7959,7964,7968],{"type":48,"tag":220,"props":7943,"children":7944},{"style":270},[7945],{"type":54,"value":4941},{"type":48,"tag":220,"props":7947,"children":7948},{"style":282},[7949],{"type":54,"value":672},{"type":48,"tag":220,"props":7951,"children":7952},{"style":276},[7953],{"type":54,"value":415},{"type":48,"tag":220,"props":7955,"children":7956},{"style":394},[7957],{"type":54,"value":7958},"resetPasswordForEmail",{"type":48,"tag":220,"props":7960,"children":7961},{"style":282},[7962],{"type":54,"value":7963},"(email",{"type":48,"tag":220,"props":7965,"children":7966},{"style":276},[7967],{"type":54,"value":983},{"type":48,"tag":220,"props":7969,"children":7970},{"style":276},[7971],{"type":54,"value":812},{"type":48,"tag":220,"props":7973,"children":7974},{"class":222,"line":359},[7975,7979,7983,7987,7992,7996],{"type":48,"tag":220,"props":7976,"children":7977},{"style":459},[7978],{"type":54,"value":2357},{"type":48,"tag":220,"props":7980,"children":7981},{"style":276},[7982],{"type":54,"value":467},{"type":48,"tag":220,"props":7984,"children":7985},{"style":276},[7986],{"type":54,"value":300},{"type":48,"tag":220,"props":7988,"children":7989},{"style":233},[7990],{"type":54,"value":7991},"\u002Fauth\u002Freset-password",{"type":48,"tag":220,"props":7993,"children":7994},{"style":276},[7995],{"type":54,"value":310},{"type":48,"tag":220,"props":7997,"children":7998},{"style":276},[7999],{"type":54,"value":443},{"type":48,"tag":220,"props":8001,"children":8002},{"class":222,"line":369},[8003,8007,8011],{"type":48,"tag":220,"props":8004,"children":8005},{"style":276},[8006],{"type":54,"value":2269},{"type":48,"tag":220,"props":8008,"children":8009},{"style":282},[8010],{"type":54,"value":255},{"type":48,"tag":220,"props":8012,"children":8013},{"style":276},[8014],{"type":54,"value":315},{"type":48,"tag":220,"props":8016,"children":8017},{"class":222,"line":404},[8018],{"type":48,"tag":220,"props":8019,"children":8020},{"emptyLinePlaceholder":363},[8021],{"type":54,"value":366},{"type":48,"tag":220,"props":8023,"children":8024},{"class":222,"line":446},[8025],{"type":48,"tag":220,"props":8026,"children":8027},{"style":486},[8028],{"type":54,"value":8029},"\u002F\u002F 2. User clicks link, lands on reset page\n",{"type":48,"tag":220,"props":8031,"children":8032},{"class":222,"line":455},[8033],{"type":48,"tag":220,"props":8034,"children":8035},{"style":486},[8036],{"type":54,"value":8037},"\u002F\u002F 3. Verify OTP and set new password\n",{"type":48,"tag":220,"props":8039,"children":8040},{"class":222,"line":482},[8041,8045,8049,8053,8058,8062],{"type":48,"tag":220,"props":8042,"children":8043},{"style":270},[8044],{"type":54,"value":4941},{"type":48,"tag":220,"props":8046,"children":8047},{"style":282},[8048],{"type":54,"value":672},{"type":48,"tag":220,"props":8050,"children":8051},{"style":276},[8052],{"type":54,"value":415},{"type":48,"tag":220,"props":8054,"children":8055},{"style":394},[8056],{"type":54,"value":8057},"verifyOtp",{"type":48,"tag":220,"props":8059,"children":8060},{"style":282},[8061],{"type":54,"value":969},{"type":48,"tag":220,"props":8063,"children":8064},{"style":276},[8065],{"type":54,"value":6193},{"type":48,"tag":220,"props":8067,"children":8068},{"class":222,"line":497},[8069,8074],{"type":48,"tag":220,"props":8070,"children":8071},{"style":282},[8072],{"type":54,"value":8073},"  email",{"type":48,"tag":220,"props":8075,"children":8076},{"style":276},[8077],{"type":54,"value":443},{"type":48,"tag":220,"props":8079,"children":8080},{"class":222,"line":28},[8081,8086,8090,8095],{"type":48,"tag":220,"props":8082,"children":8083},{"style":459},[8084],{"type":54,"value":8085},"  token",{"type":48,"tag":220,"props":8087,"children":8088},{"style":276},[8089],{"type":54,"value":467},{"type":48,"tag":220,"props":8091,"children":8092},{"style":282},[8093],{"type":54,"value":8094}," otpFromUrl",{"type":48,"tag":220,"props":8096,"children":8097},{"style":276},[8098],{"type":54,"value":443},{"type":48,"tag":220,"props":8100,"children":8101},{"class":222,"line":845},[8102,8107,8111,8115,8120,8124],{"type":48,"tag":220,"props":8103,"children":8104},{"style":459},[8105],{"type":54,"value":8106},"  type",{"type":48,"tag":220,"props":8108,"children":8109},{"style":276},[8110],{"type":54,"value":467},{"type":48,"tag":220,"props":8112,"children":8113},{"style":276},[8114],{"type":54,"value":300},{"type":48,"tag":220,"props":8116,"children":8117},{"style":233},[8118],{"type":54,"value":8119},"recovery",{"type":48,"tag":220,"props":8121,"children":8122},{"style":276},[8123],{"type":54,"value":310},{"type":48,"tag":220,"props":8125,"children":8126},{"style":276},[8127],{"type":54,"value":443},{"type":48,"tag":220,"props":8129,"children":8130},{"class":222,"line":853},[8131,8135,8139],{"type":48,"tag":220,"props":8132,"children":8133},{"style":276},[8134],{"type":54,"value":2269},{"type":48,"tag":220,"props":8136,"children":8137},{"style":282},[8138],{"type":54,"value":255},{"type":48,"tag":220,"props":8140,"children":8141},{"style":276},[8142],{"type":54,"value":315},{"type":48,"tag":220,"props":8144,"children":8145},{"class":222,"line":867},[8146],{"type":48,"tag":220,"props":8147,"children":8148},{"emptyLinePlaceholder":363},[8149],{"type":54,"value":366},{"type":48,"tag":220,"props":8151,"children":8152},{"class":222,"line":881},[8153],{"type":48,"tag":220,"props":8154,"children":8155},{"style":486},[8156],{"type":54,"value":8157},"\u002F\u002F Then call password update\n",{"type":48,"tag":220,"props":8159,"children":8160},{"class":222,"line":24},[8161,8165,8169,8173,8178,8182,8186,8190,8194,8199,8203,8207],{"type":48,"tag":220,"props":8162,"children":8163},{"style":270},[8164],{"type":54,"value":4941},{"type":48,"tag":220,"props":8166,"children":8167},{"style":282},[8168],{"type":54,"value":672},{"type":48,"tag":220,"props":8170,"children":8171},{"style":276},[8172],{"type":54,"value":415},{"type":48,"tag":220,"props":8174,"children":8175},{"style":394},[8176],{"type":54,"value":8177},"updateUser",{"type":48,"tag":220,"props":8179,"children":8180},{"style":282},[8181],{"type":54,"value":969},{"type":48,"tag":220,"props":8183,"children":8184},{"style":276},[8185],{"type":54,"value":974},{"type":48,"tag":220,"props":8187,"children":8188},{"style":459},[8189],{"type":54,"value":5046},{"type":48,"tag":220,"props":8191,"children":8192},{"style":276},[8193],{"type":54,"value":467},{"type":48,"tag":220,"props":8195,"children":8196},{"style":282},[8197],{"type":54,"value":8198}," newPassword ",{"type":48,"tag":220,"props":8200,"children":8201},{"style":276},[8202],{"type":54,"value":2269},{"type":48,"tag":220,"props":8204,"children":8205},{"style":282},[8206],{"type":54,"value":255},{"type":48,"tag":220,"props":8208,"children":8209},{"style":276},[8210],{"type":54,"value":315},{"type":48,"tag":202,"props":8212,"children":8214},{"id":8213},"update-user-profile",[8215],{"type":54,"value":8216},"Update User Profile",{"type":48,"tag":209,"props":8218,"children":8220},{"className":258,"code":8219,"language":260,"meta":214,"style":214},"\u002F\u002F BetterAuth API\nawait authClient.updateUser({\n  name: 'New Name',\n  image: 'https:\u002F\u002F...',\n  \u002F\u002F Custom fields defined in account.fields\n});\n\n\u002F\u002F Supabase API\nawait authClient.updateUser({\n  data: {\n    name: 'New Name',\n    avatar_url: 'https:\u002F\u002F...',\n  },\n});\n",[8221],{"type":48,"tag":100,"props":8222,"children":8223},{"__ignoreMap":214},[8224,8231,8258,8287,8316,8324,8339,8346,8353,8380,8396,8423,8451,8458],{"type":48,"tag":220,"props":8225,"children":8226},{"class":222,"line":223},[8227],{"type":48,"tag":220,"props":8228,"children":8229},{"style":486},[8230],{"type":54,"value":6157},{"type":48,"tag":220,"props":8232,"children":8233},{"class":222,"line":318},[8234,8238,8242,8246,8250,8254],{"type":48,"tag":220,"props":8235,"children":8236},{"style":270},[8237],{"type":54,"value":4941},{"type":48,"tag":220,"props":8239,"children":8240},{"style":282},[8241],{"type":54,"value":672},{"type":48,"tag":220,"props":8243,"children":8244},{"style":276},[8245],{"type":54,"value":415},{"type":48,"tag":220,"props":8247,"children":8248},{"style":394},[8249],{"type":54,"value":8177},{"type":48,"tag":220,"props":8251,"children":8252},{"style":282},[8253],{"type":54,"value":969},{"type":48,"tag":220,"props":8255,"children":8256},{"style":276},[8257],{"type":54,"value":6193},{"type":48,"tag":220,"props":8259,"children":8260},{"class":222,"line":359},[8261,8266,8270,8274,8279,8283],{"type":48,"tag":220,"props":8262,"children":8263},{"style":459},[8264],{"type":54,"value":8265},"  name",{"type":48,"tag":220,"props":8267,"children":8268},{"style":276},[8269],{"type":54,"value":467},{"type":48,"tag":220,"props":8271,"children":8272},{"style":276},[8273],{"type":54,"value":300},{"type":48,"tag":220,"props":8275,"children":8276},{"style":233},[8277],{"type":54,"value":8278},"New Name",{"type":48,"tag":220,"props":8280,"children":8281},{"style":276},[8282],{"type":54,"value":310},{"type":48,"tag":220,"props":8284,"children":8285},{"style":276},[8286],{"type":54,"value":443},{"type":48,"tag":220,"props":8288,"children":8289},{"class":222,"line":369},[8290,8295,8299,8303,8308,8312],{"type":48,"tag":220,"props":8291,"children":8292},{"style":459},[8293],{"type":54,"value":8294},"  image",{"type":48,"tag":220,"props":8296,"children":8297},{"style":276},[8298],{"type":54,"value":467},{"type":48,"tag":220,"props":8300,"children":8301},{"style":276},[8302],{"type":54,"value":300},{"type":48,"tag":220,"props":8304,"children":8305},{"style":233},[8306],{"type":54,"value":8307},"https:\u002F\u002F...",{"type":48,"tag":220,"props":8309,"children":8310},{"style":276},[8311],{"type":54,"value":310},{"type":48,"tag":220,"props":8313,"children":8314},{"style":276},[8315],{"type":54,"value":443},{"type":48,"tag":220,"props":8317,"children":8318},{"class":222,"line":404},[8319],{"type":48,"tag":220,"props":8320,"children":8321},{"style":486},[8322],{"type":54,"value":8323},"  \u002F\u002F Custom fields defined in account.fields\n",{"type":48,"tag":220,"props":8325,"children":8326},{"class":222,"line":446},[8327,8331,8335],{"type":48,"tag":220,"props":8328,"children":8329},{"style":276},[8330],{"type":54,"value":2269},{"type":48,"tag":220,"props":8332,"children":8333},{"style":282},[8334],{"type":54,"value":255},{"type":48,"tag":220,"props":8336,"children":8337},{"style":276},[8338],{"type":54,"value":315},{"type":48,"tag":220,"props":8340,"children":8341},{"class":222,"line":455},[8342],{"type":48,"tag":220,"props":8343,"children":8344},{"emptyLinePlaceholder":363},[8345],{"type":54,"value":366},{"type":48,"tag":220,"props":8347,"children":8348},{"class":222,"line":482},[8349],{"type":48,"tag":220,"props":8350,"children":8351},{"style":486},[8352],{"type":54,"value":6337},{"type":48,"tag":220,"props":8354,"children":8355},{"class":222,"line":497},[8356,8360,8364,8368,8372,8376],{"type":48,"tag":220,"props":8357,"children":8358},{"style":270},[8359],{"type":54,"value":4941},{"type":48,"tag":220,"props":8361,"children":8362},{"style":282},[8363],{"type":54,"value":672},{"type":48,"tag":220,"props":8365,"children":8366},{"style":276},[8367],{"type":54,"value":415},{"type":48,"tag":220,"props":8369,"children":8370},{"style":394},[8371],{"type":54,"value":8177},{"type":48,"tag":220,"props":8373,"children":8374},{"style":282},[8375],{"type":54,"value":969},{"type":48,"tag":220,"props":8377,"children":8378},{"style":276},[8379],{"type":54,"value":6193},{"type":48,"tag":220,"props":8381,"children":8382},{"class":222,"line":28},[8383,8388,8392],{"type":48,"tag":220,"props":8384,"children":8385},{"style":459},[8386],{"type":54,"value":8387},"  data",{"type":48,"tag":220,"props":8389,"children":8390},{"style":276},[8391],{"type":54,"value":467},{"type":48,"tag":220,"props":8393,"children":8394},{"style":276},[8395],{"type":54,"value":812},{"type":48,"tag":220,"props":8397,"children":8398},{"class":222,"line":845},[8399,8403,8407,8411,8415,8419],{"type":48,"tag":220,"props":8400,"children":8401},{"style":459},[8402],{"type":54,"value":7307},{"type":48,"tag":220,"props":8404,"children":8405},{"style":276},[8406],{"type":54,"value":467},{"type":48,"tag":220,"props":8408,"children":8409},{"style":276},[8410],{"type":54,"value":300},{"type":48,"tag":220,"props":8412,"children":8413},{"style":233},[8414],{"type":54,"value":8278},{"type":48,"tag":220,"props":8416,"children":8417},{"style":276},[8418],{"type":54,"value":310},{"type":48,"tag":220,"props":8420,"children":8421},{"style":276},[8422],{"type":54,"value":443},{"type":48,"tag":220,"props":8424,"children":8425},{"class":222,"line":853},[8426,8431,8435,8439,8443,8447],{"type":48,"tag":220,"props":8427,"children":8428},{"style":459},[8429],{"type":54,"value":8430},"    avatar_url",{"type":48,"tag":220,"props":8432,"children":8433},{"style":276},[8434],{"type":54,"value":467},{"type":48,"tag":220,"props":8436,"children":8437},{"style":276},[8438],{"type":54,"value":300},{"type":48,"tag":220,"props":8440,"children":8441},{"style":233},[8442],{"type":54,"value":8307},{"type":48,"tag":220,"props":8444,"children":8445},{"style":276},[8446],{"type":54,"value":310},{"type":48,"tag":220,"props":8448,"children":8449},{"style":276},[8450],{"type":54,"value":443},{"type":48,"tag":220,"props":8452,"children":8453},{"class":222,"line":867},[8454],{"type":48,"tag":220,"props":8455,"children":8456},{"style":276},[8457],{"type":54,"value":6472},{"type":48,"tag":220,"props":8459,"children":8460},{"class":222,"line":881},[8461,8465,8469],{"type":48,"tag":220,"props":8462,"children":8463},{"style":276},[8464],{"type":54,"value":2269},{"type":48,"tag":220,"props":8466,"children":8467},{"style":282},[8468],{"type":54,"value":255},{"type":48,"tag":220,"props":8470,"children":8471},{"style":276},[8472],{"type":54,"value":315},{"type":48,"tag":202,"props":8474,"children":8476},{"id":8475},"identityaccount-linking",[8477],{"type":54,"value":8478},"Identity\u002FAccount Linking",{"type":48,"tag":209,"props":8480,"children":8482},{"className":258,"code":8481,"language":260,"meta":214,"style":214},"\u002F\u002F List linked accounts\nconst { data } = await authClient.getUserIdentities();\n\u002F\u002F Returns: { identities: [{ provider: 'google', ... }] }\n\n\u002F\u002F Link new provider\nawait authClient.linkIdentity({\n  provider: 'google',\n  options: { redirectTo: '\u002Faccount\u002Fsecurity' },\n});\n\n\u002F\u002F Unlink provider\nawait authClient.unlinkIdentity({\n  identity_id: 'identity-uuid',\n});\n",[8483],{"type":48,"tag":100,"props":8484,"children":8485},{"__ignoreMap":214},[8486,8494,8543,8551,8558,8566,8594,8621,8663,8678,8685,8693,8721,8750],{"type":48,"tag":220,"props":8487,"children":8488},{"class":222,"line":223},[8489],{"type":48,"tag":220,"props":8490,"children":8491},{"style":486},[8492],{"type":54,"value":8493},"\u002F\u002F List linked accounts\n",{"type":48,"tag":220,"props":8495,"children":8496},{"class":222,"line":318},[8497,8501,8505,8510,8514,8518,8522,8526,8530,8535,8539],{"type":48,"tag":220,"props":8498,"children":8499},{"style":378},[8500],{"type":54,"value":4854},{"type":48,"tag":220,"props":8502,"children":8503},{"style":276},[8504],{"type":54,"value":279},{"type":48,"tag":220,"props":8506,"children":8507},{"style":282},[8508],{"type":54,"value":8509}," data ",{"type":48,"tag":220,"props":8511,"children":8512},{"style":276},[8513],{"type":54,"value":2269},{"type":48,"tag":220,"props":8515,"children":8516},{"style":276},[8517],{"type":54,"value":830},{"type":48,"tag":220,"props":8519,"children":8520},{"style":270},[8521],{"type":54,"value":5210},{"type":48,"tag":220,"props":8523,"children":8524},{"style":282},[8525],{"type":54,"value":672},{"type":48,"tag":220,"props":8527,"children":8528},{"style":276},[8529],{"type":54,"value":415},{"type":48,"tag":220,"props":8531,"children":8532},{"style":394},[8533],{"type":54,"value":8534},"getUserIdentities",{"type":48,"tag":220,"props":8536,"children":8537},{"style":282},[8538],{"type":54,"value":134},{"type":48,"tag":220,"props":8540,"children":8541},{"style":276},[8542],{"type":54,"value":315},{"type":48,"tag":220,"props":8544,"children":8545},{"class":222,"line":359},[8546],{"type":48,"tag":220,"props":8547,"children":8548},{"style":486},[8549],{"type":54,"value":8550},"\u002F\u002F Returns: { identities: [{ provider: 'google', ... }] }\n",{"type":48,"tag":220,"props":8552,"children":8553},{"class":222,"line":369},[8554],{"type":48,"tag":220,"props":8555,"children":8556},{"emptyLinePlaceholder":363},[8557],{"type":54,"value":366},{"type":48,"tag":220,"props":8559,"children":8560},{"class":222,"line":404},[8561],{"type":48,"tag":220,"props":8562,"children":8563},{"style":486},[8564],{"type":54,"value":8565},"\u002F\u002F Link new provider\n",{"type":48,"tag":220,"props":8567,"children":8568},{"class":222,"line":446},[8569,8573,8577,8581,8586,8590],{"type":48,"tag":220,"props":8570,"children":8571},{"style":270},[8572],{"type":54,"value":4941},{"type":48,"tag":220,"props":8574,"children":8575},{"style":282},[8576],{"type":54,"value":672},{"type":48,"tag":220,"props":8578,"children":8579},{"style":276},[8580],{"type":54,"value":415},{"type":48,"tag":220,"props":8582,"children":8583},{"style":394},[8584],{"type":54,"value":8585},"linkIdentity",{"type":48,"tag":220,"props":8587,"children":8588},{"style":282},[8589],{"type":54,"value":969},{"type":48,"tag":220,"props":8591,"children":8592},{"style":276},[8593],{"type":54,"value":6193},{"type":48,"tag":220,"props":8595,"children":8596},{"class":222,"line":455},[8597,8601,8605,8609,8613,8617],{"type":48,"tag":220,"props":8598,"children":8599},{"style":459},[8600],{"type":54,"value":6201},{"type":48,"tag":220,"props":8602,"children":8603},{"style":276},[8604],{"type":54,"value":467},{"type":48,"tag":220,"props":8606,"children":8607},{"style":276},[8608],{"type":54,"value":300},{"type":48,"tag":220,"props":8610,"children":8611},{"style":233},[8612],{"type":54,"value":2432},{"type":48,"tag":220,"props":8614,"children":8615},{"style":276},[8616],{"type":54,"value":310},{"type":48,"tag":220,"props":8618,"children":8619},{"style":276},[8620],{"type":54,"value":443},{"type":48,"tag":220,"props":8622,"children":8623},{"class":222,"line":482},[8624,8628,8632,8636,8641,8645,8649,8654,8658],{"type":48,"tag":220,"props":8625,"children":8626},{"style":459},[8627],{"type":54,"value":6399},{"type":48,"tag":220,"props":8629,"children":8630},{"style":276},[8631],{"type":54,"value":467},{"type":48,"tag":220,"props":8633,"children":8634},{"style":276},[8635],{"type":54,"value":279},{"type":48,"tag":220,"props":8637,"children":8638},{"style":459},[8639],{"type":54,"value":8640}," redirectTo",{"type":48,"tag":220,"props":8642,"children":8643},{"style":276},[8644],{"type":54,"value":467},{"type":48,"tag":220,"props":8646,"children":8647},{"style":276},[8648],{"type":54,"value":300},{"type":48,"tag":220,"props":8650,"children":8651},{"style":233},[8652],{"type":54,"value":8653},"\u002Faccount\u002Fsecurity",{"type":48,"tag":220,"props":8655,"children":8656},{"style":276},[8657],{"type":54,"value":310},{"type":48,"tag":220,"props":8659,"children":8660},{"style":276},[8661],{"type":54,"value":8662}," },\n",{"type":48,"tag":220,"props":8664,"children":8665},{"class":222,"line":497},[8666,8670,8674],{"type":48,"tag":220,"props":8667,"children":8668},{"style":276},[8669],{"type":54,"value":2269},{"type":48,"tag":220,"props":8671,"children":8672},{"style":282},[8673],{"type":54,"value":255},{"type":48,"tag":220,"props":8675,"children":8676},{"style":276},[8677],{"type":54,"value":315},{"type":48,"tag":220,"props":8679,"children":8680},{"class":222,"line":28},[8681],{"type":48,"tag":220,"props":8682,"children":8683},{"emptyLinePlaceholder":363},[8684],{"type":54,"value":366},{"type":48,"tag":220,"props":8686,"children":8687},{"class":222,"line":845},[8688],{"type":48,"tag":220,"props":8689,"children":8690},{"style":486},[8691],{"type":54,"value":8692},"\u002F\u002F Unlink provider\n",{"type":48,"tag":220,"props":8694,"children":8695},{"class":222,"line":853},[8696,8700,8704,8708,8713,8717],{"type":48,"tag":220,"props":8697,"children":8698},{"style":270},[8699],{"type":54,"value":4941},{"type":48,"tag":220,"props":8701,"children":8702},{"style":282},[8703],{"type":54,"value":672},{"type":48,"tag":220,"props":8705,"children":8706},{"style":276},[8707],{"type":54,"value":415},{"type":48,"tag":220,"props":8709,"children":8710},{"style":394},[8711],{"type":54,"value":8712},"unlinkIdentity",{"type":48,"tag":220,"props":8714,"children":8715},{"style":282},[8716],{"type":54,"value":969},{"type":48,"tag":220,"props":8718,"children":8719},{"style":276},[8720],{"type":54,"value":6193},{"type":48,"tag":220,"props":8722,"children":8723},{"class":222,"line":867},[8724,8729,8733,8737,8742,8746],{"type":48,"tag":220,"props":8725,"children":8726},{"style":459},[8727],{"type":54,"value":8728},"  identity_id",{"type":48,"tag":220,"props":8730,"children":8731},{"style":276},[8732],{"type":54,"value":467},{"type":48,"tag":220,"props":8734,"children":8735},{"style":276},[8736],{"type":54,"value":300},{"type":48,"tag":220,"props":8738,"children":8739},{"style":233},[8740],{"type":54,"value":8741},"identity-uuid",{"type":48,"tag":220,"props":8743,"children":8744},{"style":276},[8745],{"type":54,"value":310},{"type":48,"tag":220,"props":8747,"children":8748},{"style":276},[8749],{"type":54,"value":443},{"type":48,"tag":220,"props":8751,"children":8752},{"class":222,"line":881},[8753,8757,8761],{"type":48,"tag":220,"props":8754,"children":8755},{"style":276},[8756],{"type":54,"value":2269},{"type":48,"tag":220,"props":8758,"children":8759},{"style":282},[8760],{"type":54,"value":255},{"type":48,"tag":220,"props":8762,"children":8763},{"style":276},[8764],{"type":54,"value":315},{"type":48,"tag":202,"props":8766,"children":8768},{"id":8767},"auth-state-events-supabase-adapter",[8769],{"type":54,"value":8770},"Auth State Events (Supabase Adapter)",{"type":48,"tag":209,"props":8772,"children":8774},{"className":258,"code":8773,"language":260,"meta":214,"style":214},"const { data: { subscription } } = authClient.onAuthStateChange((event, session) => {\n  switch (event) {\n    case 'SIGNED_IN':\n      console.log('User signed in:', session?.user);\n      break;\n    case 'SIGNED_OUT':\n      console.log('User signed out');\n      break;\n    case 'TOKEN_REFRESHED':\n      console.log('Token refreshed');\n      break;\n    case 'USER_UPDATED':\n      console.log('User profile updated');\n      break;\n  }\n});\n\n\u002F\u002F Cleanup\nsubscription.unsubscribe();\n",[8775],{"type":48,"tag":100,"props":8776,"children":8777},{"__ignoreMap":214},[8778,8862,8886,8912,8969,8981,9005,9045,9056,9080,9120,9131,9155,9195,9206,9213,9228,9235,9243],{"type":48,"tag":220,"props":8779,"children":8780},{"class":222,"line":223},[8781,8785,8789,8793,8797,8801,8806,8810,8814,8818,8822,8826,8830,8834,8838,8842,8846,8850,8854,8858],{"type":48,"tag":220,"props":8782,"children":8783},{"style":378},[8784],{"type":54,"value":4854},{"type":48,"tag":220,"props":8786,"children":8787},{"style":276},[8788],{"type":54,"value":279},{"type":48,"tag":220,"props":8790,"children":8791},{"style":459},[8792],{"type":54,"value":5262},{"type":48,"tag":220,"props":8794,"children":8795},{"style":276},[8796],{"type":54,"value":467},{"type":48,"tag":220,"props":8798,"children":8799},{"style":276},[8800],{"type":54,"value":279},{"type":48,"tag":220,"props":8802,"children":8803},{"style":282},[8804],{"type":54,"value":8805}," subscription ",{"type":48,"tag":220,"props":8807,"children":8808},{"style":276},[8809],{"type":54,"value":2269},{"type":48,"tag":220,"props":8811,"children":8812},{"style":276},[8813],{"type":54,"value":290},{"type":48,"tag":220,"props":8815,"children":8816},{"style":276},[8817],{"type":54,"value":830},{"type":48,"tag":220,"props":8819,"children":8820},{"style":282},[8821],{"type":54,"value":672},{"type":48,"tag":220,"props":8823,"children":8824},{"style":276},[8825],{"type":54,"value":415},{"type":48,"tag":220,"props":8827,"children":8828},{"style":394},[8829],{"type":54,"value":5801},{"type":48,"tag":220,"props":8831,"children":8832},{"style":282},[8833],{"type":54,"value":969},{"type":48,"tag":220,"props":8835,"children":8836},{"style":276},[8837],{"type":54,"value":969},{"type":48,"tag":220,"props":8839,"children":8840},{"style":768},[8841],{"type":54,"value":5814},{"type":48,"tag":220,"props":8843,"children":8844},{"style":276},[8845],{"type":54,"value":983},{"type":48,"tag":220,"props":8847,"children":8848},{"style":768},[8849],{"type":54,"value":5823},{"type":48,"tag":220,"props":8851,"children":8852},{"style":276},[8853],{"type":54,"value":255},{"type":48,"tag":220,"props":8855,"children":8856},{"style":378},[8857],{"type":54,"value":5832},{"type":48,"tag":220,"props":8859,"children":8860},{"style":276},[8861],{"type":54,"value":812},{"type":48,"tag":220,"props":8863,"children":8864},{"class":222,"line":318},[8865,8870,8874,8878,8882],{"type":48,"tag":220,"props":8866,"children":8867},{"style":270},[8868],{"type":54,"value":8869},"  switch",{"type":48,"tag":220,"props":8871,"children":8872},{"style":459},[8873],{"type":54,"value":6722},{"type":48,"tag":220,"props":8875,"children":8876},{"style":282},[8877],{"type":54,"value":5814},{"type":48,"tag":220,"props":8879,"children":8880},{"style":459},[8881],{"type":54,"value":6732},{"type":48,"tag":220,"props":8883,"children":8884},{"style":276},[8885],{"type":54,"value":6193},{"type":48,"tag":220,"props":8887,"children":8888},{"class":222,"line":359},[8889,8894,8898,8903,8907],{"type":48,"tag":220,"props":8890,"children":8891},{"style":270},[8892],{"type":54,"value":8893},"    case",{"type":48,"tag":220,"props":8895,"children":8896},{"style":276},[8897],{"type":54,"value":300},{"type":48,"tag":220,"props":8899,"children":8900},{"style":233},[8901],{"type":54,"value":8902},"SIGNED_IN",{"type":48,"tag":220,"props":8904,"children":8905},{"style":276},[8906],{"type":54,"value":310},{"type":48,"tag":220,"props":8908,"children":8909},{"style":276},[8910],{"type":54,"value":8911},":\n",{"type":48,"tag":220,"props":8913,"children":8914},{"class":222,"line":369},[8915,8920,8924,8928,8932,8936,8941,8945,8949,8953,8957,8961,8965],{"type":48,"tag":220,"props":8916,"children":8917},{"style":282},[8918],{"type":54,"value":8919},"      console",{"type":48,"tag":220,"props":8921,"children":8922},{"style":276},[8923],{"type":54,"value":415},{"type":48,"tag":220,"props":8925,"children":8926},{"style":394},[8927],{"type":54,"value":5853},{"type":48,"tag":220,"props":8929,"children":8930},{"style":459},[8931],{"type":54,"value":969},{"type":48,"tag":220,"props":8933,"children":8934},{"style":276},[8935],{"type":54,"value":310},{"type":48,"tag":220,"props":8937,"children":8938},{"style":233},[8939],{"type":54,"value":8940},"User signed in:",{"type":48,"tag":220,"props":8942,"children":8943},{"style":276},[8944],{"type":54,"value":310},{"type":48,"tag":220,"props":8946,"children":8947},{"style":276},[8948],{"type":54,"value":983},{"type":48,"tag":220,"props":8950,"children":8951},{"style":282},[8952],{"type":54,"value":5823},{"type":48,"tag":220,"props":8954,"children":8955},{"style":276},[8956],{"type":54,"value":7721},{"type":48,"tag":220,"props":8958,"children":8959},{"style":282},[8960],{"type":54,"value":6976},{"type":48,"tag":220,"props":8962,"children":8963},{"style":459},[8964],{"type":54,"value":255},{"type":48,"tag":220,"props":8966,"children":8967},{"style":276},[8968],{"type":54,"value":315},{"type":48,"tag":220,"props":8970,"children":8971},{"class":222,"line":404},[8972,8977],{"type":48,"tag":220,"props":8973,"children":8974},{"style":270},[8975],{"type":54,"value":8976},"      break",{"type":48,"tag":220,"props":8978,"children":8979},{"style":276},[8980],{"type":54,"value":315},{"type":48,"tag":220,"props":8982,"children":8983},{"class":222,"line":446},[8984,8988,8992,8997,9001],{"type":48,"tag":220,"props":8985,"children":8986},{"style":270},[8987],{"type":54,"value":8893},{"type":48,"tag":220,"props":8989,"children":8990},{"style":276},[8991],{"type":54,"value":300},{"type":48,"tag":220,"props":8993,"children":8994},{"style":233},[8995],{"type":54,"value":8996},"SIGNED_OUT",{"type":48,"tag":220,"props":8998,"children":8999},{"style":276},[9000],{"type":54,"value":310},{"type":48,"tag":220,"props":9002,"children":9003},{"style":276},[9004],{"type":54,"value":8911},{"type":48,"tag":220,"props":9006,"children":9007},{"class":222,"line":455},[9008,9012,9016,9020,9024,9028,9033,9037,9041],{"type":48,"tag":220,"props":9009,"children":9010},{"style":282},[9011],{"type":54,"value":8919},{"type":48,"tag":220,"props":9013,"children":9014},{"style":276},[9015],{"type":54,"value":415},{"type":48,"tag":220,"props":9017,"children":9018},{"style":394},[9019],{"type":54,"value":5853},{"type":48,"tag":220,"props":9021,"children":9022},{"style":459},[9023],{"type":54,"value":969},{"type":48,"tag":220,"props":9025,"children":9026},{"style":276},[9027],{"type":54,"value":310},{"type":48,"tag":220,"props":9029,"children":9030},{"style":233},[9031],{"type":54,"value":9032},"User signed out",{"type":48,"tag":220,"props":9034,"children":9035},{"style":276},[9036],{"type":54,"value":310},{"type":48,"tag":220,"props":9038,"children":9039},{"style":459},[9040],{"type":54,"value":255},{"type":48,"tag":220,"props":9042,"children":9043},{"style":276},[9044],{"type":54,"value":315},{"type":48,"tag":220,"props":9046,"children":9047},{"class":222,"line":482},[9048,9052],{"type":48,"tag":220,"props":9049,"children":9050},{"style":270},[9051],{"type":54,"value":8976},{"type":48,"tag":220,"props":9053,"children":9054},{"style":276},[9055],{"type":54,"value":315},{"type":48,"tag":220,"props":9057,"children":9058},{"class":222,"line":497},[9059,9063,9067,9072,9076],{"type":48,"tag":220,"props":9060,"children":9061},{"style":270},[9062],{"type":54,"value":8893},{"type":48,"tag":220,"props":9064,"children":9065},{"style":276},[9066],{"type":54,"value":300},{"type":48,"tag":220,"props":9068,"children":9069},{"style":233},[9070],{"type":54,"value":9071},"TOKEN_REFRESHED",{"type":48,"tag":220,"props":9073,"children":9074},{"style":276},[9075],{"type":54,"value":310},{"type":48,"tag":220,"props":9077,"children":9078},{"style":276},[9079],{"type":54,"value":8911},{"type":48,"tag":220,"props":9081,"children":9082},{"class":222,"line":28},[9083,9087,9091,9095,9099,9103,9108,9112,9116],{"type":48,"tag":220,"props":9084,"children":9085},{"style":282},[9086],{"type":54,"value":8919},{"type":48,"tag":220,"props":9088,"children":9089},{"style":276},[9090],{"type":54,"value":415},{"type":48,"tag":220,"props":9092,"children":9093},{"style":394},[9094],{"type":54,"value":5853},{"type":48,"tag":220,"props":9096,"children":9097},{"style":459},[9098],{"type":54,"value":969},{"type":48,"tag":220,"props":9100,"children":9101},{"style":276},[9102],{"type":54,"value":310},{"type":48,"tag":220,"props":9104,"children":9105},{"style":233},[9106],{"type":54,"value":9107},"Token refreshed",{"type":48,"tag":220,"props":9109,"children":9110},{"style":276},[9111],{"type":54,"value":310},{"type":48,"tag":220,"props":9113,"children":9114},{"style":459},[9115],{"type":54,"value":255},{"type":48,"tag":220,"props":9117,"children":9118},{"style":276},[9119],{"type":54,"value":315},{"type":48,"tag":220,"props":9121,"children":9122},{"class":222,"line":845},[9123,9127],{"type":48,"tag":220,"props":9124,"children":9125},{"style":270},[9126],{"type":54,"value":8976},{"type":48,"tag":220,"props":9128,"children":9129},{"style":276},[9130],{"type":54,"value":315},{"type":48,"tag":220,"props":9132,"children":9133},{"class":222,"line":853},[9134,9138,9142,9147,9151],{"type":48,"tag":220,"props":9135,"children":9136},{"style":270},[9137],{"type":54,"value":8893},{"type":48,"tag":220,"props":9139,"children":9140},{"style":276},[9141],{"type":54,"value":300},{"type":48,"tag":220,"props":9143,"children":9144},{"style":233},[9145],{"type":54,"value":9146},"USER_UPDATED",{"type":48,"tag":220,"props":9148,"children":9149},{"style":276},[9150],{"type":54,"value":310},{"type":48,"tag":220,"props":9152,"children":9153},{"style":276},[9154],{"type":54,"value":8911},{"type":48,"tag":220,"props":9156,"children":9157},{"class":222,"line":867},[9158,9162,9166,9170,9174,9178,9183,9187,9191],{"type":48,"tag":220,"props":9159,"children":9160},{"style":282},[9161],{"type":54,"value":8919},{"type":48,"tag":220,"props":9163,"children":9164},{"style":276},[9165],{"type":54,"value":415},{"type":48,"tag":220,"props":9167,"children":9168},{"style":394},[9169],{"type":54,"value":5853},{"type":48,"tag":220,"props":9171,"children":9172},{"style":459},[9173],{"type":54,"value":969},{"type":48,"tag":220,"props":9175,"children":9176},{"style":276},[9177],{"type":54,"value":310},{"type":48,"tag":220,"props":9179,"children":9180},{"style":233},[9181],{"type":54,"value":9182},"User profile updated",{"type":48,"tag":220,"props":9184,"children":9185},{"style":276},[9186],{"type":54,"value":310},{"type":48,"tag":220,"props":9188,"children":9189},{"style":459},[9190],{"type":54,"value":255},{"type":48,"tag":220,"props":9192,"children":9193},{"style":276},[9194],{"type":54,"value":315},{"type":48,"tag":220,"props":9196,"children":9197},{"class":222,"line":881},[9198,9202],{"type":48,"tag":220,"props":9199,"children":9200},{"style":270},[9201],{"type":54,"value":8976},{"type":48,"tag":220,"props":9203,"children":9204},{"style":276},[9205],{"type":54,"value":315},{"type":48,"tag":220,"props":9207,"children":9208},{"class":222,"line":24},[9209],{"type":48,"tag":220,"props":9210,"children":9211},{"style":276},[9212],{"type":54,"value":503},{"type":48,"tag":220,"props":9214,"children":9215},{"class":222,"line":926},[9216,9220,9224],{"type":48,"tag":220,"props":9217,"children":9218},{"style":276},[9219],{"type":54,"value":2269},{"type":48,"tag":220,"props":9221,"children":9222},{"style":282},[9223],{"type":54,"value":255},{"type":48,"tag":220,"props":9225,"children":9226},{"style":276},[9227],{"type":54,"value":315},{"type":48,"tag":220,"props":9229,"children":9230},{"class":222,"line":954},[9231],{"type":48,"tag":220,"props":9232,"children":9233},{"emptyLinePlaceholder":363},[9234],{"type":54,"value":366},{"type":48,"tag":220,"props":9236,"children":9237},{"class":222,"line":1039},[9238],{"type":48,"tag":220,"props":9239,"children":9240},{"style":486},[9241],{"type":54,"value":9242},"\u002F\u002F Cleanup\n",{"type":48,"tag":220,"props":9244,"children":9245},{"class":222,"line":1048},[9246,9251,9255,9260,9264],{"type":48,"tag":220,"props":9247,"children":9248},{"style":282},[9249],{"type":54,"value":9250},"subscription",{"type":48,"tag":220,"props":9252,"children":9253},{"style":276},[9254],{"type":54,"value":415},{"type":48,"tag":220,"props":9256,"children":9257},{"style":394},[9258],{"type":54,"value":9259},"unsubscribe",{"type":48,"tag":220,"props":9261,"children":9262},{"style":282},[9263],{"type":54,"value":134},{"type":48,"tag":220,"props":9265,"children":9266},{"style":276},[9267],{"type":54,"value":315},{"type":48,"tag":202,"props":9269,"children":9271},{"id":9270},"cross-tab-synchronization",[9272],{"type":54,"value":9273},"Cross-Tab Synchronization",{"type":48,"tag":57,"props":9275,"children":9276},{},[9277],{"type":54,"value":9278},"Automatic via BroadcastChannel. Sign out in one tab signs out all tabs.",{"type":48,"tag":1411,"props":9280,"children":9281},{},[],{"type":48,"tag":63,"props":9283,"children":9285},{"id":9284},"protected-routes",[9286],{"type":54,"value":9287},"Protected Routes",{"type":48,"tag":202,"props":9289,"children":9291},{"id":9290},"pattern-with-react-router",[9292],{"type":54,"value":9293},"Pattern with React Router",{"type":48,"tag":209,"props":9295,"children":9297},{"className":258,"code":9296,"language":260,"meta":214,"style":214},"\u002F\u002F routes.tsx\nimport { Routes, Route } from 'react-router-dom';\n\nexport function AppRoutes() {\n  return (\n    \u003CRoutes>\n      {\u002F* Public *\u002F}\n      \u003CRoute path=\"\u002F\" element={\u003CHomePage \u002F>} \u002F>\n\n      {\u002F* Auth routes *\u002F}\n      \u003CRoute path=\"\u002Fauth\u002F:pathname\" element={\u003CAuthPage \u002F>} \u002F>\n\n      {\u002F* Protected *\u002F}\n      \u003CRoute path=\"\u002Fdashboard\" element={\u003CProtectedRoute>\u003CDashboard \u002F>\u003C\u002FProtectedRoute>} \u002F>\n      \u003CRoute path=\"\u002Faccount\u002F:view?\" element={\u003CProtectedRoute>\u003CAccountPage \u002F>\u003C\u002FProtectedRoute>} \u002F>\n    \u003C\u002FRoutes>\n  );\n}\n\n\u002F\u002F ProtectedRoute.tsx\nfunction ProtectedRoute({ children }: { children: React.ReactNode }) {\n  return (\n    \u003C>\n      \u003CAuthLoading>\n        \u003CLoadingSpinner \u002F>\n      \u003C\u002FAuthLoading>\n      \u003CRedirectToSignIn \u002F>\n      \u003CSignedIn>\n        {children}\n      \u003C\u002FSignedIn>\n    \u003C\u002F>\n  );\n}\n",[9298],{"type":48,"tag":100,"props":9299,"children":9300},{"__ignoreMap":214},[9301,9309,9358,9365,9389,9400,9416,9432,9487,9494,9510,9563,9570,9586,9638,9691,9706,9717,9724,9731,9739,9795,9806,9813,9828,9843,9858,9873,9888,9903,9918,9925,9936],{"type":48,"tag":220,"props":9302,"children":9303},{"class":222,"line":223},[9304],{"type":48,"tag":220,"props":9305,"children":9306},{"style":486},[9307],{"type":54,"value":9308},"\u002F\u002F routes.tsx\n",{"type":48,"tag":220,"props":9310,"children":9311},{"class":222,"line":318},[9312,9316,9320,9325,9329,9334,9338,9342,9346,9350,9354],{"type":48,"tag":220,"props":9313,"children":9314},{"style":270},[9315],{"type":54,"value":273},{"type":48,"tag":220,"props":9317,"children":9318},{"style":276},[9319],{"type":54,"value":279},{"type":48,"tag":220,"props":9321,"children":9322},{"style":282},[9323],{"type":54,"value":9324}," Routes",{"type":48,"tag":220,"props":9326,"children":9327},{"style":276},[9328],{"type":54,"value":983},{"type":48,"tag":220,"props":9330,"children":9331},{"style":282},[9332],{"type":54,"value":9333}," Route",{"type":48,"tag":220,"props":9335,"children":9336},{"style":276},[9337],{"type":54,"value":290},{"type":48,"tag":220,"props":9339,"children":9340},{"style":270},[9341],{"type":54,"value":295},{"type":48,"tag":220,"props":9343,"children":9344},{"style":276},[9345],{"type":54,"value":300},{"type":48,"tag":220,"props":9347,"children":9348},{"style":233},[9349],{"type":54,"value":608},{"type":48,"tag":220,"props":9351,"children":9352},{"style":276},[9353],{"type":54,"value":310},{"type":48,"tag":220,"props":9355,"children":9356},{"style":276},[9357],{"type":54,"value":315},{"type":48,"tag":220,"props":9359,"children":9360},{"class":222,"line":359},[9361],{"type":48,"tag":220,"props":9362,"children":9363},{"emptyLinePlaceholder":363},[9364],{"type":54,"value":366},{"type":48,"tag":220,"props":9366,"children":9367},{"class":222,"line":369},[9368,9372,9376,9381,9385],{"type":48,"tag":220,"props":9369,"children":9370},{"style":270},[9371],{"type":54,"value":375},{"type":48,"tag":220,"props":9373,"children":9374},{"style":378},[9375],{"type":54,"value":755},{"type":48,"tag":220,"props":9377,"children":9378},{"style":394},[9379],{"type":54,"value":9380}," AppRoutes",{"type":48,"tag":220,"props":9382,"children":9383},{"style":276},[9384],{"type":54,"value":134},{"type":48,"tag":220,"props":9386,"children":9387},{"style":276},[9388],{"type":54,"value":812},{"type":48,"tag":220,"props":9390,"children":9391},{"class":222,"line":404},[9392,9396],{"type":48,"tag":220,"props":9393,"children":9394},{"style":270},[9395],{"type":54,"value":859},{"type":48,"tag":220,"props":9397,"children":9398},{"style":459},[9399],{"type":54,"value":864},{"type":48,"tag":220,"props":9401,"children":9402},{"class":222,"line":446},[9403,9407,9412],{"type":48,"tag":220,"props":9404,"children":9405},{"style":459},[9406],{"type":54,"value":873},{"type":48,"tag":220,"props":9408,"children":9409},{"style":227},[9410],{"type":54,"value":9411},"Routes",{"type":48,"tag":220,"props":9413,"children":9414},{"style":459},[9415],{"type":54,"value":1081},{"type":48,"tag":220,"props":9417,"children":9418},{"class":222,"line":455},[9419,9423,9428],{"type":48,"tag":220,"props":9420,"children":9421},{"style":276},[9422],{"type":54,"value":1054},{"type":48,"tag":220,"props":9424,"children":9425},{"style":486},[9426],{"type":54,"value":9427},"\u002F* Public *\u002F",{"type":48,"tag":220,"props":9429,"children":9430},{"style":276},[9431],{"type":54,"value":902},{"type":48,"tag":220,"props":9433,"children":9434},{"class":222,"line":482},[9435,9439,9444,9449,9453,9457,9461,9465,9470,9474,9479,9483],{"type":48,"tag":220,"props":9436,"children":9437},{"style":276},[9438],{"type":54,"value":1357},{"type":48,"tag":220,"props":9440,"children":9441},{"style":282},[9442],{"type":54,"value":9443},"Route",{"type":48,"tag":220,"props":9445,"children":9446},{"style":282},[9447],{"type":54,"value":9448}," path",{"type":48,"tag":220,"props":9450,"children":9451},{"style":276},[9452],{"type":54,"value":391},{"type":48,"tag":220,"props":9454,"children":9455},{"style":276},[9456],{"type":54,"value":941},{"type":48,"tag":220,"props":9458,"children":9459},{"style":233},[9460],{"type":54,"value":7054},{"type":48,"tag":220,"props":9462,"children":9463},{"style":276},[9464],{"type":54,"value":941},{"type":48,"tag":220,"props":9466,"children":9467},{"style":282},[9468],{"type":54,"value":9469}," element",{"type":48,"tag":220,"props":9471,"children":9472},{"style":276},[9473],{"type":54,"value":892},{"type":48,"tag":220,"props":9475,"children":9476},{"style":459},[9477],{"type":54,"value":9478},"\u003CHomePage \u002F>",{"type":48,"tag":220,"props":9480,"children":9481},{"style":276},[9482],{"type":54,"value":2269},{"type":48,"tag":220,"props":9484,"children":9485},{"style":276},[9486],{"type":54,"value":3746},{"type":48,"tag":220,"props":9488,"children":9489},{"class":222,"line":497},[9490],{"type":48,"tag":220,"props":9491,"children":9492},{"emptyLinePlaceholder":363},[9493],{"type":54,"value":366},{"type":48,"tag":220,"props":9495,"children":9496},{"class":222,"line":28},[9497,9501,9506],{"type":48,"tag":220,"props":9498,"children":9499},{"style":276},[9500],{"type":54,"value":1054},{"type":48,"tag":220,"props":9502,"children":9503},{"style":486},[9504],{"type":54,"value":9505},"\u002F* Auth routes *\u002F",{"type":48,"tag":220,"props":9507,"children":9508},{"style":276},[9509],{"type":54,"value":902},{"type":48,"tag":220,"props":9511,"children":9512},{"class":222,"line":845},[9513,9517,9521,9525,9529,9533,9538,9542,9546,9550,9555,9559],{"type":48,"tag":220,"props":9514,"children":9515},{"style":276},[9516],{"type":54,"value":1357},{"type":48,"tag":220,"props":9518,"children":9519},{"style":282},[9520],{"type":54,"value":9443},{"type":48,"tag":220,"props":9522,"children":9523},{"style":282},[9524],{"type":54,"value":9448},{"type":48,"tag":220,"props":9526,"children":9527},{"style":276},[9528],{"type":54,"value":391},{"type":48,"tag":220,"props":9530,"children":9531},{"style":276},[9532],{"type":54,"value":941},{"type":48,"tag":220,"props":9534,"children":9535},{"style":233},[9536],{"type":54,"value":9537},"\u002Fauth\u002F:pathname",{"type":48,"tag":220,"props":9539,"children":9540},{"style":276},[9541],{"type":54,"value":941},{"type":48,"tag":220,"props":9543,"children":9544},{"style":282},[9545],{"type":54,"value":9469},{"type":48,"tag":220,"props":9547,"children":9548},{"style":276},[9549],{"type":54,"value":892},{"type":48,"tag":220,"props":9551,"children":9552},{"style":459},[9553],{"type":54,"value":9554},"\u003CAuthPage \u002F>",{"type":48,"tag":220,"props":9556,"children":9557},{"style":276},[9558],{"type":54,"value":2269},{"type":48,"tag":220,"props":9560,"children":9561},{"style":276},[9562],{"type":54,"value":3746},{"type":48,"tag":220,"props":9564,"children":9565},{"class":222,"line":853},[9566],{"type":48,"tag":220,"props":9567,"children":9568},{"emptyLinePlaceholder":363},[9569],{"type":54,"value":366},{"type":48,"tag":220,"props":9571,"children":9572},{"class":222,"line":867},[9573,9577,9582],{"type":48,"tag":220,"props":9574,"children":9575},{"style":276},[9576],{"type":54,"value":1054},{"type":48,"tag":220,"props":9578,"children":9579},{"style":486},[9580],{"type":54,"value":9581},"\u002F* Protected *\u002F",{"type":48,"tag":220,"props":9583,"children":9584},{"style":276},[9585],{"type":54,"value":902},{"type":48,"tag":220,"props":9587,"children":9588},{"class":222,"line":881},[9589,9593,9597,9601,9605,9609,9613,9617,9621,9625,9630,9634],{"type":48,"tag":220,"props":9590,"children":9591},{"style":276},[9592],{"type":54,"value":1357},{"type":48,"tag":220,"props":9594,"children":9595},{"style":282},[9596],{"type":54,"value":9443},{"type":48,"tag":220,"props":9598,"children":9599},{"style":282},[9600],{"type":54,"value":9448},{"type":48,"tag":220,"props":9602,"children":9603},{"style":276},[9604],{"type":54,"value":391},{"type":48,"tag":220,"props":9606,"children":9607},{"style":276},[9608],{"type":54,"value":941},{"type":48,"tag":220,"props":9610,"children":9611},{"style":233},[9612],{"type":54,"value":946},{"type":48,"tag":220,"props":9614,"children":9615},{"style":276},[9616],{"type":54,"value":941},{"type":48,"tag":220,"props":9618,"children":9619},{"style":282},[9620],{"type":54,"value":9469},{"type":48,"tag":220,"props":9622,"children":9623},{"style":276},[9624],{"type":54,"value":892},{"type":48,"tag":220,"props":9626,"children":9627},{"style":459},[9628],{"type":54,"value":9629},"\u003CProtectedRoute>\u003CDashboard \u002F>\u003C\u002FProtectedRoute>",{"type":48,"tag":220,"props":9631,"children":9632},{"style":276},[9633],{"type":54,"value":2269},{"type":48,"tag":220,"props":9635,"children":9636},{"style":276},[9637],{"type":54,"value":3746},{"type":48,"tag":220,"props":9639,"children":9640},{"class":222,"line":24},[9641,9645,9649,9653,9657,9661,9666,9670,9674,9678,9683,9687],{"type":48,"tag":220,"props":9642,"children":9643},{"style":276},[9644],{"type":54,"value":1357},{"type":48,"tag":220,"props":9646,"children":9647},{"style":282},[9648],{"type":54,"value":9443},{"type":48,"tag":220,"props":9650,"children":9651},{"style":282},[9652],{"type":54,"value":9448},{"type":48,"tag":220,"props":9654,"children":9655},{"style":276},[9656],{"type":54,"value":391},{"type":48,"tag":220,"props":9658,"children":9659},{"style":276},[9660],{"type":54,"value":941},{"type":48,"tag":220,"props":9662,"children":9663},{"style":233},[9664],{"type":54,"value":9665},"\u002Faccount\u002F:view?",{"type":48,"tag":220,"props":9667,"children":9668},{"style":276},[9669],{"type":54,"value":941},{"type":48,"tag":220,"props":9671,"children":9672},{"style":282},[9673],{"type":54,"value":9469},{"type":48,"tag":220,"props":9675,"children":9676},{"style":276},[9677],{"type":54,"value":892},{"type":48,"tag":220,"props":9679,"children":9680},{"style":459},[9681],{"type":54,"value":9682},"\u003CProtectedRoute>\u003CAccountPage \u002F>\u003C\u002FProtectedRoute>",{"type":48,"tag":220,"props":9684,"children":9685},{"style":276},[9686],{"type":54,"value":2269},{"type":48,"tag":220,"props":9688,"children":9689},{"style":276},[9690],{"type":54,"value":3746},{"type":48,"tag":220,"props":9692,"children":9693},{"class":222,"line":926},[9694,9698,9702],{"type":48,"tag":220,"props":9695,"children":9696},{"style":276},[9697],{"type":54,"value":1071},{"type":48,"tag":220,"props":9699,"children":9700},{"style":282},[9701],{"type":54,"value":9411},{"type":48,"tag":220,"props":9703,"children":9704},{"style":276},[9705],{"type":54,"value":1081},{"type":48,"tag":220,"props":9707,"children":9708},{"class":222,"line":954},[9709,9713],{"type":48,"tag":220,"props":9710,"children":9711},{"style":459},[9712],{"type":54,"value":1090},{"type":48,"tag":220,"props":9714,"children":9715},{"style":276},[9716],{"type":54,"value":315},{"type":48,"tag":220,"props":9718,"children":9719},{"class":222,"line":1039},[9720],{"type":48,"tag":220,"props":9721,"children":9722},{"style":276},[9723],{"type":54,"value":902},{"type":48,"tag":220,"props":9725,"children":9726},{"class":222,"line":1048},[9727],{"type":48,"tag":220,"props":9728,"children":9729},{"emptyLinePlaceholder":363},[9730],{"type":54,"value":366},{"type":48,"tag":220,"props":9732,"children":9733},{"class":222,"line":1065},[9734],{"type":48,"tag":220,"props":9735,"children":9736},{"style":486},[9737],{"type":54,"value":9738},"\u002F\u002F ProtectedRoute.tsx\n",{"type":48,"tag":220,"props":9740,"children":9741},{"class":222,"line":1084},[9742,9746,9751,9755,9759,9763,9767,9771,9775,9779,9783,9787,9791],{"type":48,"tag":220,"props":9743,"children":9744},{"style":378},[9745],{"type":54,"value":3387},{"type":48,"tag":220,"props":9747,"children":9748},{"style":394},[9749],{"type":54,"value":9750}," ProtectedRoute",{"type":48,"tag":220,"props":9752,"children":9753},{"style":276},[9754],{"type":54,"value":765},{"type":48,"tag":220,"props":9756,"children":9757},{"style":768},[9758],{"type":54,"value":771},{"type":48,"tag":220,"props":9760,"children":9761},{"style":276},[9762],{"type":54,"value":776},{"type":48,"tag":220,"props":9764,"children":9765},{"style":276},[9766],{"type":54,"value":279},{"type":48,"tag":220,"props":9768,"children":9769},{"style":459},[9770],{"type":54,"value":771},{"type":48,"tag":220,"props":9772,"children":9773},{"style":276},[9774],{"type":54,"value":467},{"type":48,"tag":220,"props":9776,"children":9777},{"style":227},[9778],{"type":54,"value":793},{"type":48,"tag":220,"props":9780,"children":9781},{"style":276},[9782],{"type":54,"value":415},{"type":48,"tag":220,"props":9784,"children":9785},{"style":227},[9786],{"type":54,"value":802},{"type":48,"tag":220,"props":9788,"children":9789},{"style":276},[9790],{"type":54,"value":807},{"type":48,"tag":220,"props":9792,"children":9793},{"style":276},[9794],{"type":54,"value":812},{"type":48,"tag":220,"props":9796,"children":9797},{"class":222,"line":1097},[9798,9802],{"type":48,"tag":220,"props":9799,"children":9800},{"style":270},[9801],{"type":54,"value":859},{"type":48,"tag":220,"props":9803,"children":9804},{"style":459},[9805],{"type":54,"value":864},{"type":48,"tag":220,"props":9807,"children":9808},{"class":222,"line":2600},[9809],{"type":48,"tag":220,"props":9810,"children":9811},{"style":276},[9812],{"type":54,"value":3696},{"type":48,"tag":220,"props":9814,"children":9815},{"class":222,"line":2628},[9816,9820,9824],{"type":48,"tag":220,"props":9817,"children":9818},{"style":459},[9819],{"type":54,"value":1357},{"type":48,"tag":220,"props":9821,"children":9822},{"style":227},[9823],{"type":54,"value":3724},{"type":48,"tag":220,"props":9825,"children":9826},{"style":459},[9827],{"type":54,"value":1081},{"type":48,"tag":220,"props":9829,"children":9830},{"class":222,"line":2636},[9831,9835,9839],{"type":48,"tag":220,"props":9832,"children":9833},{"style":276},[9834],{"type":54,"value":3736},{"type":48,"tag":220,"props":9836,"children":9837},{"style":282},[9838],{"type":54,"value":3741},{"type":48,"tag":220,"props":9840,"children":9841},{"style":276},[9842],{"type":54,"value":3746},{"type":48,"tag":220,"props":9844,"children":9845},{"class":222,"line":2644},[9846,9850,9854],{"type":48,"tag":220,"props":9847,"children":9848},{"style":276},[9849],{"type":54,"value":3754},{"type":48,"tag":220,"props":9851,"children":9852},{"style":282},[9853],{"type":54,"value":3724},{"type":48,"tag":220,"props":9855,"children":9856},{"style":276},[9857],{"type":54,"value":1081},{"type":48,"tag":220,"props":9859,"children":9860},{"class":222,"line":2653},[9861,9865,9869],{"type":48,"tag":220,"props":9862,"children":9863},{"style":276},[9864],{"type":54,"value":1357},{"type":48,"tag":220,"props":9866,"children":9867},{"style":282},[9868],{"type":54,"value":3937},{"type":48,"tag":220,"props":9870,"children":9871},{"style":276},[9872],{"type":54,"value":3746},{"type":48,"tag":220,"props":9874,"children":9875},{"class":222,"line":2666},[9876,9880,9884],{"type":48,"tag":220,"props":9877,"children":9878},{"style":459},[9879],{"type":54,"value":1357},{"type":48,"tag":220,"props":9881,"children":9882},{"style":227},[9883],{"type":54,"value":3797},{"type":48,"tag":220,"props":9885,"children":9886},{"style":459},[9887],{"type":54,"value":1081},{"type":48,"tag":220,"props":9889,"children":9890},{"class":222,"line":2709},[9891,9895,9899],{"type":48,"tag":220,"props":9892,"children":9893},{"style":276},[9894],{"type":54,"value":4458},{"type":48,"tag":220,"props":9896,"children":9897},{"style":768},[9898],{"type":54,"value":1021},{"type":48,"tag":220,"props":9900,"children":9901},{"style":276},[9902],{"type":54,"value":902},{"type":48,"tag":220,"props":9904,"children":9905},{"class":222,"line":2717},[9906,9910,9914],{"type":48,"tag":220,"props":9907,"children":9908},{"style":276},[9909],{"type":54,"value":3754},{"type":48,"tag":220,"props":9911,"children":9912},{"style":282},[9913],{"type":54,"value":3797},{"type":48,"tag":220,"props":9915,"children":9916},{"style":276},[9917],{"type":54,"value":1081},{"type":48,"tag":220,"props":9919,"children":9920},{"class":222,"line":2725},[9921],{"type":48,"tag":220,"props":9922,"children":9923},{"style":276},[9924],{"type":54,"value":3949},{"type":48,"tag":220,"props":9926,"children":9927},{"class":222,"line":2734},[9928,9932],{"type":48,"tag":220,"props":9929,"children":9930},{"style":459},[9931],{"type":54,"value":1090},{"type":48,"tag":220,"props":9933,"children":9934},{"style":276},[9935],{"type":54,"value":315},{"type":48,"tag":220,"props":9937,"children":9938},{"class":222,"line":2747},[9939],{"type":48,"tag":220,"props":9940,"children":9941},{"style":276},[9942],{"type":54,"value":902},{"type":48,"tag":202,"props":9944,"children":9946},{"id":9945},"auth-page-setup",[9947],{"type":54,"value":9948},"Auth Page Setup",{"type":48,"tag":209,"props":9950,"children":9952},{"className":258,"code":9951,"language":260,"meta":214,"style":214},"\u002F\u002F pages\u002FAuthPage.tsx\nimport { useParams } from 'react-router-dom';\nimport { AuthView } from '@neondatabase\u002Fauth\u002Freact\u002Fui';\n\nexport function AuthPage() {\n  const { pathname } = useParams();\n  return \u003CAuthView pathname={pathname} \u002F>;\n}\n",[9953],{"type":48,"tag":100,"props":9954,"children":9955},{"__ignoreMap":214},[9956,9964,10003,10042,10049,10072,10107,10150],{"type":48,"tag":220,"props":9957,"children":9958},{"class":222,"line":223},[9959],{"type":48,"tag":220,"props":9960,"children":9961},{"style":486},[9962],{"type":54,"value":9963},"\u002F\u002F pages\u002FAuthPage.tsx\n",{"type":48,"tag":220,"props":9965,"children":9966},{"class":222,"line":318},[9967,9971,9975,9979,9983,9987,9991,9995,9999],{"type":48,"tag":220,"props":9968,"children":9969},{"style":270},[9970],{"type":54,"value":273},{"type":48,"tag":220,"props":9972,"children":9973},{"style":276},[9974],{"type":54,"value":279},{"type":48,"tag":220,"props":9976,"children":9977},{"style":282},[9978],{"type":54,"value":3429},{"type":48,"tag":220,"props":9980,"children":9981},{"style":276},[9982],{"type":54,"value":290},{"type":48,"tag":220,"props":9984,"children":9985},{"style":270},[9986],{"type":54,"value":295},{"type":48,"tag":220,"props":9988,"children":9989},{"style":276},[9990],{"type":54,"value":300},{"type":48,"tag":220,"props":9992,"children":9993},{"style":233},[9994],{"type":54,"value":608},{"type":48,"tag":220,"props":9996,"children":9997},{"style":276},[9998],{"type":54,"value":310},{"type":48,"tag":220,"props":10000,"children":10001},{"style":276},[10002],{"type":54,"value":315},{"type":48,"tag":220,"props":10004,"children":10005},{"class":222,"line":359},[10006,10010,10014,10018,10022,10026,10030,10034,10038],{"type":48,"tag":220,"props":10007,"children":10008},{"style":270},[10009],{"type":54,"value":273},{"type":48,"tag":220,"props":10011,"children":10012},{"style":276},[10013],{"type":54,"value":279},{"type":48,"tag":220,"props":10015,"children":10016},{"style":282},[10017],{"type":54,"value":3340},{"type":48,"tag":220,"props":10019,"children":10020},{"style":276},[10021],{"type":54,"value":290},{"type":48,"tag":220,"props":10023,"children":10024},{"style":270},[10025],{"type":54,"value":295},{"type":48,"tag":220,"props":10027,"children":10028},{"style":276},[10029],{"type":54,"value":300},{"type":48,"tag":220,"props":10031,"children":10032},{"style":233},[10033],{"type":54,"value":567},{"type":48,"tag":220,"props":10035,"children":10036},{"style":276},[10037],{"type":54,"value":310},{"type":48,"tag":220,"props":10039,"children":10040},{"style":276},[10041],{"type":54,"value":315},{"type":48,"tag":220,"props":10043,"children":10044},{"class":222,"line":369},[10045],{"type":48,"tag":220,"props":10046,"children":10047},{"emptyLinePlaceholder":363},[10048],{"type":54,"value":366},{"type":48,"tag":220,"props":10050,"children":10051},{"class":222,"line":404},[10052,10056,10060,10064,10068],{"type":48,"tag":220,"props":10053,"children":10054},{"style":270},[10055],{"type":54,"value":375},{"type":48,"tag":220,"props":10057,"children":10058},{"style":378},[10059],{"type":54,"value":755},{"type":48,"tag":220,"props":10061,"children":10062},{"style":394},[10063],{"type":54,"value":3392},{"type":48,"tag":220,"props":10065,"children":10066},{"style":276},[10067],{"type":54,"value":134},{"type":48,"tag":220,"props":10069,"children":10070},{"style":276},[10071],{"type":54,"value":812},{"type":48,"tag":220,"props":10073,"children":10074},{"class":222,"line":446},[10075,10079,10083,10087,10091,10095,10099,10103],{"type":48,"tag":220,"props":10076,"children":10077},{"style":378},[10078],{"type":54,"value":820},{"type":48,"tag":220,"props":10080,"children":10081},{"style":276},[10082],{"type":54,"value":279},{"type":48,"tag":220,"props":10084,"children":10085},{"style":282},[10086],{"type":54,"value":3416},{"type":48,"tag":220,"props":10088,"children":10089},{"style":276},[10090],{"type":54,"value":290},{"type":48,"tag":220,"props":10092,"children":10093},{"style":276},[10094],{"type":54,"value":830},{"type":48,"tag":220,"props":10096,"children":10097},{"style":394},[10098],{"type":54,"value":3429},{"type":48,"tag":220,"props":10100,"children":10101},{"style":459},[10102],{"type":54,"value":134},{"type":48,"tag":220,"props":10104,"children":10105},{"style":276},[10106],{"type":54,"value":315},{"type":48,"tag":220,"props":10108,"children":10109},{"class":222,"line":455},[10110,10114,10118,10122,10126,10130,10134,10138,10142,10146],{"type":48,"tag":220,"props":10111,"children":10112},{"style":270},[10113],{"type":54,"value":859},{"type":48,"tag":220,"props":10115,"children":10116},{"style":459},[10117],{"type":54,"value":3462},{"type":48,"tag":220,"props":10119,"children":10120},{"style":227},[10121],{"type":54,"value":3467},{"type":48,"tag":220,"props":10123,"children":10124},{"style":227},[10125],{"type":54,"value":3416},{"type":48,"tag":220,"props":10127,"children":10128},{"style":459},[10129],{"type":54,"value":391},{"type":48,"tag":220,"props":10131,"children":10132},{"style":276},[10133],{"type":54,"value":974},{"type":48,"tag":220,"props":10135,"children":10136},{"style":459},[10137],{"type":54,"value":3484},{"type":48,"tag":220,"props":10139,"children":10140},{"style":276},[10141],{"type":54,"value":2269},{"type":48,"tag":220,"props":10143,"children":10144},{"style":459},[10145],{"type":54,"value":3493},{"type":48,"tag":220,"props":10147,"children":10148},{"style":276},[10149],{"type":54,"value":315},{"type":48,"tag":220,"props":10151,"children":10152},{"class":222,"line":482},[10153],{"type":48,"tag":220,"props":10154,"children":10155},{"style":276},[10156],{"type":54,"value":902},{"type":48,"tag":202,"props":10158,"children":10160},{"id":10159},"account-page-setup",[10161],{"type":54,"value":10162},"Account Page Setup",{"type":48,"tag":209,"props":10164,"children":10166},{"className":258,"code":10165,"language":260,"meta":214,"style":214},"\u002F\u002F pages\u002FAccountPage.tsx\nimport { useParams } from 'react-router-dom';\nimport {\n  SignedIn,\n  RedirectToSignIn,\n  AccountSettingsCards,\n  SecuritySettingsCards,\n  SessionsCard,\n  ChangePasswordCard,\n} from '@neondatabase\u002Fauth\u002Freact\u002Fui';\n\nexport function AccountPage() {\n  const { view = 'settings' } = useParams();\n\n  return (\n    \u003C>\n      \u003CRedirectToSignIn \u002F>\n      \u003CSignedIn>\n        {view === 'settings' && \u003CAccountSettingsCards \u002F>}\n        {view === 'security' && (\n          \u003C>\n            \u003CChangePasswordCard \u002F>\n            \u003CSecuritySettingsCards \u002F>\n          \u003C\u002F>\n        )}\n        {view === 'sessions' && \u003CSessionsCard \u002F>}\n      \u003C\u002FSignedIn>\n    \u003C\u002F>\n  );\n}\n",[10167],{"type":48,"tag":100,"props":10168,"children":10169},{"__ignoreMap":214},[10170,10178,10217,10228,10239,10251,10262,10273,10284,10295,10322,10329,10352,10403,10410,10421,10428,10443,10458,10493,10516,10523,10538,10553,10560,10571,10606,10621,10628,10639],{"type":48,"tag":220,"props":10171,"children":10172},{"class":222,"line":223},[10173],{"type":48,"tag":220,"props":10174,"children":10175},{"style":486},[10176],{"type":54,"value":10177},"\u002F\u002F pages\u002FAccountPage.tsx\n",{"type":48,"tag":220,"props":10179,"children":10180},{"class":222,"line":318},[10181,10185,10189,10193,10197,10201,10205,10209,10213],{"type":48,"tag":220,"props":10182,"children":10183},{"style":270},[10184],{"type":54,"value":273},{"type":48,"tag":220,"props":10186,"children":10187},{"style":276},[10188],{"type":54,"value":279},{"type":48,"tag":220,"props":10190,"children":10191},{"style":282},[10192],{"type":54,"value":3429},{"type":48,"tag":220,"props":10194,"children":10195},{"style":276},[10196],{"type":54,"value":290},{"type":48,"tag":220,"props":10198,"children":10199},{"style":270},[10200],{"type":54,"value":295},{"type":48,"tag":220,"props":10202,"children":10203},{"style":276},[10204],{"type":54,"value":300},{"type":48,"tag":220,"props":10206,"children":10207},{"style":233},[10208],{"type":54,"value":608},{"type":48,"tag":220,"props":10210,"children":10211},{"style":276},[10212],{"type":54,"value":310},{"type":48,"tag":220,"props":10214,"children":10215},{"style":276},[10216],{"type":54,"value":315},{"type":48,"tag":220,"props":10218,"children":10219},{"class":222,"line":359},[10220,10224],{"type":48,"tag":220,"props":10221,"children":10222},{"style":270},[10223],{"type":54,"value":273},{"type":48,"tag":220,"props":10225,"children":10226},{"style":276},[10227],{"type":54,"value":812},{"type":48,"tag":220,"props":10229,"children":10230},{"class":222,"line":369},[10231,10235],{"type":48,"tag":220,"props":10232,"children":10233},{"style":282},[10234],{"type":54,"value":3587},{"type":48,"tag":220,"props":10236,"children":10237},{"style":276},[10238],{"type":54,"value":443},{"type":48,"tag":220,"props":10240,"children":10241},{"class":222,"line":404},[10242,10247],{"type":48,"tag":220,"props":10243,"children":10244},{"style":282},[10245],{"type":54,"value":10246},"  RedirectToSignIn",{"type":48,"tag":220,"props":10248,"children":10249},{"style":276},[10250],{"type":54,"value":443},{"type":48,"tag":220,"props":10252,"children":10253},{"class":222,"line":446},[10254,10258],{"type":48,"tag":220,"props":10255,"children":10256},{"style":282},[10257],{"type":54,"value":4189},{"type":48,"tag":220,"props":10259,"children":10260},{"style":276},[10261],{"type":54,"value":443},{"type":48,"tag":220,"props":10263,"children":10264},{"class":222,"line":455},[10265,10269],{"type":48,"tag":220,"props":10266,"children":10267},{"style":282},[10268],{"type":54,"value":4206},{"type":48,"tag":220,"props":10270,"children":10271},{"style":276},[10272],{"type":54,"value":443},{"type":48,"tag":220,"props":10274,"children":10275},{"class":222,"line":482},[10276,10280],{"type":48,"tag":220,"props":10277,"children":10278},{"style":282},[10279],{"type":54,"value":4223},{"type":48,"tag":220,"props":10281,"children":10282},{"style":276},[10283],{"type":54,"value":443},{"type":48,"tag":220,"props":10285,"children":10286},{"class":222,"line":497},[10287,10291],{"type":48,"tag":220,"props":10288,"children":10289},{"style":282},[10290],{"type":54,"value":4240},{"type":48,"tag":220,"props":10292,"children":10293},{"style":276},[10294],{"type":54,"value":443},{"type":48,"tag":220,"props":10296,"children":10297},{"class":222,"line":28},[10298,10302,10306,10310,10314,10318],{"type":48,"tag":220,"props":10299,"children":10300},{"style":276},[10301],{"type":54,"value":2269},{"type":48,"tag":220,"props":10303,"children":10304},{"style":270},[10305],{"type":54,"value":295},{"type":48,"tag":220,"props":10307,"children":10308},{"style":276},[10309],{"type":54,"value":300},{"type":48,"tag":220,"props":10311,"children":10312},{"style":233},[10313],{"type":54,"value":567},{"type":48,"tag":220,"props":10315,"children":10316},{"style":276},[10317],{"type":54,"value":310},{"type":48,"tag":220,"props":10319,"children":10320},{"style":276},[10321],{"type":54,"value":315},{"type":48,"tag":220,"props":10323,"children":10324},{"class":222,"line":845},[10325],{"type":48,"tag":220,"props":10326,"children":10327},{"emptyLinePlaceholder":363},[10328],{"type":54,"value":366},{"type":48,"tag":220,"props":10330,"children":10331},{"class":222,"line":853},[10332,10336,10340,10344,10348],{"type":48,"tag":220,"props":10333,"children":10334},{"style":270},[10335],{"type":54,"value":375},{"type":48,"tag":220,"props":10337,"children":10338},{"style":378},[10339],{"type":54,"value":755},{"type":48,"tag":220,"props":10341,"children":10342},{"style":394},[10343],{"type":54,"value":4346},{"type":48,"tag":220,"props":10345,"children":10346},{"style":276},[10347],{"type":54,"value":134},{"type":48,"tag":220,"props":10349,"children":10350},{"style":276},[10351],{"type":54,"value":812},{"type":48,"tag":220,"props":10353,"children":10354},{"class":222,"line":867},[10355,10359,10363,10367,10371,10375,10379,10383,10387,10391,10395,10399],{"type":48,"tag":220,"props":10356,"children":10357},{"style":378},[10358],{"type":54,"value":820},{"type":48,"tag":220,"props":10360,"children":10361},{"style":276},[10362],{"type":54,"value":279},{"type":48,"tag":220,"props":10364,"children":10365},{"style":282},[10366],{"type":54,"value":4370},{"type":48,"tag":220,"props":10368,"children":10369},{"style":276},[10370],{"type":54,"value":830},{"type":48,"tag":220,"props":10372,"children":10373},{"style":276},[10374],{"type":54,"value":300},{"type":48,"tag":220,"props":10376,"children":10377},{"style":233},[10378],{"type":54,"value":4473},{"type":48,"tag":220,"props":10380,"children":10381},{"style":276},[10382],{"type":54,"value":310},{"type":48,"tag":220,"props":10384,"children":10385},{"style":276},[10386],{"type":54,"value":290},{"type":48,"tag":220,"props":10388,"children":10389},{"style":276},[10390],{"type":54,"value":830},{"type":48,"tag":220,"props":10392,"children":10393},{"style":394},[10394],{"type":54,"value":3429},{"type":48,"tag":220,"props":10396,"children":10397},{"style":459},[10398],{"type":54,"value":134},{"type":48,"tag":220,"props":10400,"children":10401},{"style":276},[10402],{"type":54,"value":315},{"type":48,"tag":220,"props":10404,"children":10405},{"class":222,"line":881},[10406],{"type":48,"tag":220,"props":10407,"children":10408},{"emptyLinePlaceholder":363},[10409],{"type":54,"value":366},{"type":48,"tag":220,"props":10411,"children":10412},{"class":222,"line":24},[10413,10417],{"type":48,"tag":220,"props":10414,"children":10415},{"style":270},[10416],{"type":54,"value":859},{"type":48,"tag":220,"props":10418,"children":10419},{"style":459},[10420],{"type":54,"value":864},{"type":48,"tag":220,"props":10422,"children":10423},{"class":222,"line":926},[10424],{"type":48,"tag":220,"props":10425,"children":10426},{"style":276},[10427],{"type":54,"value":3696},{"type":48,"tag":220,"props":10429,"children":10430},{"class":222,"line":954},[10431,10435,10439],{"type":48,"tag":220,"props":10432,"children":10433},{"style":276},[10434],{"type":54,"value":1357},{"type":48,"tag":220,"props":10436,"children":10437},{"style":282},[10438],{"type":54,"value":3937},{"type":48,"tag":220,"props":10440,"children":10441},{"style":276},[10442],{"type":54,"value":3746},{"type":48,"tag":220,"props":10444,"children":10445},{"class":222,"line":1039},[10446,10450,10454],{"type":48,"tag":220,"props":10447,"children":10448},{"style":459},[10449],{"type":54,"value":1357},{"type":48,"tag":220,"props":10451,"children":10452},{"style":227},[10453],{"type":54,"value":3797},{"type":48,"tag":220,"props":10455,"children":10456},{"style":459},[10457],{"type":54,"value":1081},{"type":48,"tag":220,"props":10459,"children":10460},{"class":222,"line":1048},[10461,10465,10469,10473,10477,10481,10485,10489],{"type":48,"tag":220,"props":10462,"children":10463},{"style":276},[10464],{"type":54,"value":4458},{"type":48,"tag":220,"props":10466,"children":10467},{"style":768},[10468],{"type":54,"value":4463},{"type":48,"tag":220,"props":10470,"children":10471},{"style":459},[10472],{"type":54,"value":4468},{"type":48,"tag":220,"props":10474,"children":10475},{"style":768},[10476],{"type":54,"value":4473},{"type":48,"tag":220,"props":10478,"children":10479},{"style":459},[10480],{"type":54,"value":4478},{"type":48,"tag":220,"props":10482,"children":10483},{"style":768},[10484],{"type":54,"value":4483},{"type":48,"tag":220,"props":10486,"children":10487},{"style":459},[10488],{"type":54,"value":3493},{"type":48,"tag":220,"props":10490,"children":10491},{"style":276},[10492],{"type":54,"value":902},{"type":48,"tag":220,"props":10494,"children":10495},{"class":222,"line":1065},[10496,10500,10504,10508,10512],{"type":48,"tag":220,"props":10497,"children":10498},{"style":276},[10499],{"type":54,"value":4458},{"type":48,"tag":220,"props":10501,"children":10502},{"style":768},[10503],{"type":54,"value":4463},{"type":48,"tag":220,"props":10505,"children":10506},{"style":459},[10507],{"type":54,"value":4468},{"type":48,"tag":220,"props":10509,"children":10510},{"style":768},[10511],{"type":54,"value":4511},{"type":48,"tag":220,"props":10513,"children":10514},{"style":459},[10515],{"type":54,"value":4516},{"type":48,"tag":220,"props":10517,"children":10518},{"class":222,"line":1084},[10519],{"type":48,"tag":220,"props":10520,"children":10521},{"style":459},[10522],{"type":54,"value":4524},{"type":48,"tag":220,"props":10524,"children":10525},{"class":222,"line":1097},[10526,10530,10534],{"type":48,"tag":220,"props":10527,"children":10528},{"style":459},[10529],{"type":54,"value":4532},{"type":48,"tag":220,"props":10531,"children":10532},{"style":768},[10533],{"type":54,"value":4537},{"type":48,"tag":220,"props":10535,"children":10536},{"style":459},[10537],{"type":54,"value":3746},{"type":48,"tag":220,"props":10539,"children":10540},{"class":222,"line":2600},[10541,10545,10549],{"type":48,"tag":220,"props":10542,"children":10543},{"style":459},[10544],{"type":54,"value":4532},{"type":48,"tag":220,"props":10546,"children":10547},{"style":768},[10548],{"type":54,"value":4553},{"type":48,"tag":220,"props":10550,"children":10551},{"style":459},[10552],{"type":54,"value":3746},{"type":48,"tag":220,"props":10554,"children":10555},{"class":222,"line":2628},[10556],{"type":48,"tag":220,"props":10557,"children":10558},{"style":459},[10559],{"type":54,"value":4565},{"type":48,"tag":220,"props":10561,"children":10562},{"class":222,"line":2636},[10563,10567],{"type":48,"tag":220,"props":10564,"children":10565},{"style":459},[10566],{"type":54,"value":4573},{"type":48,"tag":220,"props":10568,"children":10569},{"style":276},[10570],{"type":54,"value":902},{"type":48,"tag":220,"props":10572,"children":10573},{"class":222,"line":2644},[10574,10578,10582,10586,10590,10594,10598,10602],{"type":48,"tag":220,"props":10575,"children":10576},{"style":276},[10577],{"type":54,"value":4458},{"type":48,"tag":220,"props":10579,"children":10580},{"style":768},[10581],{"type":54,"value":4463},{"type":48,"tag":220,"props":10583,"children":10584},{"style":459},[10585],{"type":54,"value":4468},{"type":48,"tag":220,"props":10587,"children":10588},{"style":768},[10589],{"type":54,"value":4597},{"type":48,"tag":220,"props":10591,"children":10592},{"style":459},[10593],{"type":54,"value":4478},{"type":48,"tag":220,"props":10595,"children":10596},{"style":768},[10597],{"type":54,"value":4606},{"type":48,"tag":220,"props":10599,"children":10600},{"style":459},[10601],{"type":54,"value":3493},{"type":48,"tag":220,"props":10603,"children":10604},{"style":276},[10605],{"type":54,"value":902},{"type":48,"tag":220,"props":10607,"children":10608},{"class":222,"line":2653},[10609,10613,10617],{"type":48,"tag":220,"props":10610,"children":10611},{"style":276},[10612],{"type":54,"value":3754},{"type":48,"tag":220,"props":10614,"children":10615},{"style":282},[10616],{"type":54,"value":3797},{"type":48,"tag":220,"props":10618,"children":10619},{"style":276},[10620],{"type":54,"value":1081},{"type":48,"tag":220,"props":10622,"children":10623},{"class":222,"line":2666},[10624],{"type":48,"tag":220,"props":10625,"children":10626},{"style":276},[10627],{"type":54,"value":3949},{"type":48,"tag":220,"props":10629,"children":10630},{"class":222,"line":2709},[10631,10635],{"type":48,"tag":220,"props":10632,"children":10633},{"style":459},[10634],{"type":54,"value":1090},{"type":48,"tag":220,"props":10636,"children":10637},{"style":276},[10638],{"type":54,"value":315},{"type":48,"tag":220,"props":10640,"children":10641},{"class":222,"line":2717},[10642],{"type":48,"tag":220,"props":10643,"children":10644},{"style":276},[10645],{"type":54,"value":902},{"type":48,"tag":1411,"props":10647,"children":10648},{},[],{"type":48,"tag":63,"props":10650,"children":10652},{"id":10651},"error-handling",[10653],{"type":54,"value":10654},"Error Handling",{"type":48,"tag":202,"props":10656,"children":10658},{"id":10657},"error-response-shape",[10659],{"type":54,"value":10660},"Error Response Shape",{"type":48,"tag":209,"props":10662,"children":10664},{"className":258,"code":10663,"language":260,"meta":214,"style":214},"const result = await authClient.signIn.email({ email, password });\n\nif (result.error) {\n  console.error(result.error.message);  \u002F\u002F Human-readable message\n  console.error(result.error.status);   \u002F\u002F HTTP status code\n}\n",[10665],{"type":48,"tag":100,"props":10666,"children":10667},{"__ignoreMap":214},[10668,10740,10747,10773,10826,10879],{"type":48,"tag":220,"props":10669,"children":10670},{"class":222,"line":223},[10671,10675,10680,10684,10688,10692,10696,10700,10704,10708,10712,10716,10720,10724,10728,10732,10736],{"type":48,"tag":220,"props":10672,"children":10673},{"style":378},[10674],{"type":54,"value":4854},{"type":48,"tag":220,"props":10676,"children":10677},{"style":282},[10678],{"type":54,"value":10679}," result ",{"type":48,"tag":220,"props":10681,"children":10682},{"style":276},[10683],{"type":54,"value":391},{"type":48,"tag":220,"props":10685,"children":10686},{"style":270},[10687],{"type":54,"value":5210},{"type":48,"tag":220,"props":10689,"children":10690},{"style":282},[10691],{"type":54,"value":672},{"type":48,"tag":220,"props":10693,"children":10694},{"style":276},[10695],{"type":54,"value":415},{"type":48,"tag":220,"props":10697,"children":10698},{"style":282},[10699],{"type":54,"value":4954},{"type":48,"tag":220,"props":10701,"children":10702},{"style":276},[10703],{"type":54,"value":415},{"type":48,"tag":220,"props":10705,"children":10706},{"style":394},[10707],{"type":54,"value":4963},{"type":48,"tag":220,"props":10709,"children":10710},{"style":282},[10711],{"type":54,"value":969},{"type":48,"tag":220,"props":10713,"children":10714},{"style":276},[10715],{"type":54,"value":974},{"type":48,"tag":220,"props":10717,"children":10718},{"style":282},[10719],{"type":54,"value":4976},{"type":48,"tag":220,"props":10721,"children":10722},{"style":276},[10723],{"type":54,"value":983},{"type":48,"tag":220,"props":10725,"children":10726},{"style":282},[10727],{"type":54,"value":4985},{"type":48,"tag":220,"props":10729,"children":10730},{"style":276},[10731],{"type":54,"value":2269},{"type":48,"tag":220,"props":10733,"children":10734},{"style":282},[10735],{"type":54,"value":255},{"type":48,"tag":220,"props":10737,"children":10738},{"style":276},[10739],{"type":54,"value":315},{"type":48,"tag":220,"props":10741,"children":10742},{"class":222,"line":318},[10743],{"type":48,"tag":220,"props":10744,"children":10745},{"emptyLinePlaceholder":363},[10746],{"type":54,"value":366},{"type":48,"tag":220,"props":10748,"children":10749},{"class":222,"line":359},[10750,10755,10760,10764,10769],{"type":48,"tag":220,"props":10751,"children":10752},{"style":270},[10753],{"type":54,"value":10754},"if",{"type":48,"tag":220,"props":10756,"children":10757},{"style":282},[10758],{"type":54,"value":10759}," (result",{"type":48,"tag":220,"props":10761,"children":10762},{"style":276},[10763],{"type":54,"value":415},{"type":48,"tag":220,"props":10765,"children":10766},{"style":282},[10767],{"type":54,"value":10768},"error) ",{"type":48,"tag":220,"props":10770,"children":10771},{"style":276},[10772],{"type":54,"value":6193},{"type":48,"tag":220,"props":10774,"children":10775},{"class":222,"line":369},[10776,10780,10784,10788,10792,10797,10801,10805,10809,10813,10817,10821],{"type":48,"tag":220,"props":10777,"children":10778},{"style":282},[10779],{"type":54,"value":5844},{"type":48,"tag":220,"props":10781,"children":10782},{"style":276},[10783],{"type":54,"value":415},{"type":48,"tag":220,"props":10785,"children":10786},{"style":394},[10787],{"type":54,"value":6784},{"type":48,"tag":220,"props":10789,"children":10790},{"style":459},[10791],{"type":54,"value":969},{"type":48,"tag":220,"props":10793,"children":10794},{"style":282},[10795],{"type":54,"value":10796},"result",{"type":48,"tag":220,"props":10798,"children":10799},{"style":276},[10800],{"type":54,"value":415},{"type":48,"tag":220,"props":10802,"children":10803},{"style":282},[10804],{"type":54,"value":6784},{"type":48,"tag":220,"props":10806,"children":10807},{"style":276},[10808],{"type":54,"value":415},{"type":48,"tag":220,"props":10810,"children":10811},{"style":282},[10812],{"type":54,"value":6827},{"type":48,"tag":220,"props":10814,"children":10815},{"style":459},[10816],{"type":54,"value":255},{"type":48,"tag":220,"props":10818,"children":10819},{"style":276},[10820],{"type":54,"value":3438},{"type":48,"tag":220,"props":10822,"children":10823},{"style":486},[10824],{"type":54,"value":10825},"  \u002F\u002F Human-readable message\n",{"type":48,"tag":220,"props":10827,"children":10828},{"class":222,"line":404},[10829,10833,10837,10841,10845,10849,10853,10857,10861,10866,10870,10874],{"type":48,"tag":220,"props":10830,"children":10831},{"style":282},[10832],{"type":54,"value":5844},{"type":48,"tag":220,"props":10834,"children":10835},{"style":276},[10836],{"type":54,"value":415},{"type":48,"tag":220,"props":10838,"children":10839},{"style":394},[10840],{"type":54,"value":6784},{"type":48,"tag":220,"props":10842,"children":10843},{"style":459},[10844],{"type":54,"value":969},{"type":48,"tag":220,"props":10846,"children":10847},{"style":282},[10848],{"type":54,"value":10796},{"type":48,"tag":220,"props":10850,"children":10851},{"style":276},[10852],{"type":54,"value":415},{"type":48,"tag":220,"props":10854,"children":10855},{"style":282},[10856],{"type":54,"value":6784},{"type":48,"tag":220,"props":10858,"children":10859},{"style":276},[10860],{"type":54,"value":415},{"type":48,"tag":220,"props":10862,"children":10863},{"style":282},[10864],{"type":54,"value":10865},"status",{"type":48,"tag":220,"props":10867,"children":10868},{"style":459},[10869],{"type":54,"value":255},{"type":48,"tag":220,"props":10871,"children":10872},{"style":276},[10873],{"type":54,"value":3438},{"type":48,"tag":220,"props":10875,"children":10876},{"style":486},[10877],{"type":54,"value":10878},"   \u002F\u002F HTTP status code\n",{"type":48,"tag":220,"props":10880,"children":10881},{"class":222,"line":446},[10882],{"type":48,"tag":220,"props":10883,"children":10884},{"style":276},[10885],{"type":54,"value":902},{"type":48,"tag":202,"props":10887,"children":10889},{"id":10888},"common-errors",[10890],{"type":54,"value":10891},"Common Errors",{"type":48,"tag":10893,"props":10894,"children":10895},"table",{},[10896,10914],{"type":48,"tag":10897,"props":10898,"children":10899},"thead",{},[10900],{"type":48,"tag":10901,"props":10902,"children":10903},"tr",{},[10904,10909],{"type":48,"tag":10905,"props":10906,"children":10907},"th",{},[10908],{"type":54,"value":6809},{"type":48,"tag":10905,"props":10910,"children":10911},{},[10912],{"type":54,"value":10913},"Cause",{"type":48,"tag":10915,"props":10916,"children":10917},"tbody",{},[10918,10936,10953,10970,10987],{"type":48,"tag":10901,"props":10919,"children":10920},{},[10921,10931],{"type":48,"tag":10922,"props":10923,"children":10924},"td",{},[10925],{"type":48,"tag":100,"props":10926,"children":10928},{"className":10927},[],[10929],{"type":54,"value":10930},"Invalid credentials",{"type":48,"tag":10922,"props":10932,"children":10933},{},[10934],{"type":54,"value":10935},"Wrong email\u002Fpassword",{"type":48,"tag":10901,"props":10937,"children":10938},{},[10939,10948],{"type":48,"tag":10922,"props":10940,"children":10941},{},[10942],{"type":48,"tag":100,"props":10943,"children":10945},{"className":10944},[],[10946],{"type":54,"value":10947},"User already exists",{"type":48,"tag":10922,"props":10949,"children":10950},{},[10951],{"type":54,"value":10952},"Email already registered",{"type":48,"tag":10901,"props":10954,"children":10955},{},[10956,10965],{"type":48,"tag":10922,"props":10957,"children":10958},{},[10959],{"type":48,"tag":100,"props":10960,"children":10962},{"className":10961},[],[10963],{"type":54,"value":10964},"Email not verified",{"type":48,"tag":10922,"props":10966,"children":10967},{},[10968],{"type":54,"value":10969},"Verification required",{"type":48,"tag":10901,"props":10971,"children":10972},{},[10973,10982],{"type":48,"tag":10922,"props":10974,"children":10975},{},[10976],{"type":48,"tag":100,"props":10977,"children":10979},{"className":10978},[],[10980],{"type":54,"value":10981},"Session not found",{"type":48,"tag":10922,"props":10983,"children":10984},{},[10985],{"type":54,"value":10986},"Expired or invalid session",{"type":48,"tag":10901,"props":10988,"children":10989},{},[10990,10999],{"type":48,"tag":10922,"props":10991,"children":10992},{},[10993],{"type":48,"tag":100,"props":10994,"children":10996},{"className":10995},[],[10997],{"type":54,"value":10998},"Rate limited",{"type":48,"tag":10922,"props":11000,"children":11001},{},[11002],{"type":54,"value":11003},"Too many requests",{"type":48,"tag":202,"props":11005,"children":11007},{"id":11006},"try-catch-pattern",[11008],{"type":54,"value":11009},"Try-Catch Pattern",{"type":48,"tag":209,"props":11011,"children":11013},{"className":258,"code":11012,"language":260,"meta":214,"style":214},"try {\n  const { error } = await authClient.signIn.email({ email, password });\n\n  if (error) {\n    \u002F\u002F Handle auth-specific errors\n    toast.error(error.message);\n    return;\n  }\n\n  \u002F\u002F Success - redirect\n  navigate('\u002Fdashboard');\n} catch (err) {\n  \u002F\u002F Handle network\u002Funexpected errors\n  toast.error('Something went wrong');\n}\n",[11014],{"type":48,"tag":100,"props":11015,"children":11016},{"__ignoreMap":214},[11017,11029,11108,11115,11138,11146,11186,11198,11205,11212,11220,11251,11272,11280,11321],{"type":48,"tag":220,"props":11018,"children":11019},{"class":222,"line":223},[11020,11025],{"type":48,"tag":220,"props":11021,"children":11022},{"style":270},[11023],{"type":54,"value":11024},"try",{"type":48,"tag":220,"props":11026,"children":11027},{"style":276},[11028],{"type":54,"value":812},{"type":48,"tag":220,"props":11030,"children":11031},{"class":222,"line":318},[11032,11036,11040,11044,11048,11052,11056,11060,11064,11068,11072,11076,11080,11084,11088,11092,11096,11100,11104],{"type":48,"tag":220,"props":11033,"children":11034},{"style":378},[11035],{"type":54,"value":820},{"type":48,"tag":220,"props":11037,"children":11038},{"style":276},[11039],{"type":54,"value":279},{"type":48,"tag":220,"props":11041,"children":11042},{"style":282},[11043],{"type":54,"value":6665},{"type":48,"tag":220,"props":11045,"children":11046},{"style":276},[11047],{"type":54,"value":290},{"type":48,"tag":220,"props":11049,"children":11050},{"style":276},[11051],{"type":54,"value":830},{"type":48,"tag":220,"props":11053,"children":11054},{"style":270},[11055],{"type":54,"value":5210},{"type":48,"tag":220,"props":11057,"children":11058},{"style":282},[11059],{"type":54,"value":672},{"type":48,"tag":220,"props":11061,"children":11062},{"style":276},[11063],{"type":54,"value":415},{"type":48,"tag":220,"props":11065,"children":11066},{"style":282},[11067],{"type":54,"value":4954},{"type":48,"tag":220,"props":11069,"children":11070},{"style":276},[11071],{"type":54,"value":415},{"type":48,"tag":220,"props":11073,"children":11074},{"style":394},[11075],{"type":54,"value":4963},{"type":48,"tag":220,"props":11077,"children":11078},{"style":459},[11079],{"type":54,"value":969},{"type":48,"tag":220,"props":11081,"children":11082},{"style":276},[11083],{"type":54,"value":974},{"type":48,"tag":220,"props":11085,"children":11086},{"style":282},[11087],{"type":54,"value":4976},{"type":48,"tag":220,"props":11089,"children":11090},{"style":276},[11091],{"type":54,"value":983},{"type":48,"tag":220,"props":11093,"children":11094},{"style":282},[11095],{"type":54,"value":5046},{"type":48,"tag":220,"props":11097,"children":11098},{"style":276},[11099],{"type":54,"value":290},{"type":48,"tag":220,"props":11101,"children":11102},{"style":459},[11103],{"type":54,"value":255},{"type":48,"tag":220,"props":11105,"children":11106},{"style":276},[11107],{"type":54,"value":315},{"type":48,"tag":220,"props":11109,"children":11110},{"class":222,"line":359},[11111],{"type":48,"tag":220,"props":11112,"children":11113},{"emptyLinePlaceholder":363},[11114],{"type":54,"value":366},{"type":48,"tag":220,"props":11116,"children":11117},{"class":222,"line":369},[11118,11122,11126,11130,11134],{"type":48,"tag":220,"props":11119,"children":11120},{"style":270},[11121],{"type":54,"value":6717},{"type":48,"tag":220,"props":11123,"children":11124},{"style":459},[11125],{"type":54,"value":6722},{"type":48,"tag":220,"props":11127,"children":11128},{"style":282},[11129],{"type":54,"value":6784},{"type":48,"tag":220,"props":11131,"children":11132},{"style":459},[11133],{"type":54,"value":6732},{"type":48,"tag":220,"props":11135,"children":11136},{"style":276},[11137],{"type":54,"value":6193},{"type":48,"tag":220,"props":11139,"children":11140},{"class":222,"line":404},[11141],{"type":48,"tag":220,"props":11142,"children":11143},{"style":486},[11144],{"type":54,"value":11145},"    \u002F\u002F Handle auth-specific errors\n",{"type":48,"tag":220,"props":11147,"children":11148},{"class":222,"line":446},[11149,11154,11158,11162,11166,11170,11174,11178,11182],{"type":48,"tag":220,"props":11150,"children":11151},{"style":282},[11152],{"type":54,"value":11153},"    toast",{"type":48,"tag":220,"props":11155,"children":11156},{"style":276},[11157],{"type":54,"value":415},{"type":48,"tag":220,"props":11159,"children":11160},{"style":394},[11161],{"type":54,"value":6784},{"type":48,"tag":220,"props":11163,"children":11164},{"style":459},[11165],{"type":54,"value":969},{"type":48,"tag":220,"props":11167,"children":11168},{"style":282},[11169],{"type":54,"value":6784},{"type":48,"tag":220,"props":11171,"children":11172},{"style":276},[11173],{"type":54,"value":415},{"type":48,"tag":220,"props":11175,"children":11176},{"style":282},[11177],{"type":54,"value":6827},{"type":48,"tag":220,"props":11179,"children":11180},{"style":459},[11181],{"type":54,"value":255},{"type":48,"tag":220,"props":11183,"children":11184},{"style":276},[11185],{"type":54,"value":315},{"type":48,"tag":220,"props":11187,"children":11188},{"class":222,"line":455},[11189,11194],{"type":48,"tag":220,"props":11190,"children":11191},{"style":270},[11192],{"type":54,"value":11193},"    return",{"type":48,"tag":220,"props":11195,"children":11196},{"style":276},[11197],{"type":54,"value":315},{"type":48,"tag":220,"props":11199,"children":11200},{"class":222,"line":482},[11201],{"type":48,"tag":220,"props":11202,"children":11203},{"style":276},[11204],{"type":54,"value":503},{"type":48,"tag":220,"props":11206,"children":11207},{"class":222,"line":497},[11208],{"type":48,"tag":220,"props":11209,"children":11210},{"emptyLinePlaceholder":363},[11211],{"type":54,"value":366},{"type":48,"tag":220,"props":11213,"children":11214},{"class":222,"line":28},[11215],{"type":48,"tag":220,"props":11216,"children":11217},{"style":486},[11218],{"type":54,"value":11219},"  \u002F\u002F Success - redirect\n",{"type":48,"tag":220,"props":11221,"children":11222},{"class":222,"line":845},[11223,11227,11231,11235,11239,11243,11247],{"type":48,"tag":220,"props":11224,"children":11225},{"style":394},[11226],{"type":54,"value":2256},{"type":48,"tag":220,"props":11228,"children":11229},{"style":459},[11230],{"type":54,"value":969},{"type":48,"tag":220,"props":11232,"children":11233},{"style":276},[11234],{"type":54,"value":310},{"type":48,"tag":220,"props":11236,"children":11237},{"style":233},[11238],{"type":54,"value":946},{"type":48,"tag":220,"props":11240,"children":11241},{"style":276},[11242],{"type":54,"value":310},{"type":48,"tag":220,"props":11244,"children":11245},{"style":459},[11246],{"type":54,"value":255},{"type":48,"tag":220,"props":11248,"children":11249},{"style":276},[11250],{"type":54,"value":315},{"type":48,"tag":220,"props":11252,"children":11253},{"class":222,"line":853},[11254,11258,11263,11268],{"type":48,"tag":220,"props":11255,"children":11256},{"style":276},[11257],{"type":54,"value":2269},{"type":48,"tag":220,"props":11259,"children":11260},{"style":270},[11261],{"type":54,"value":11262}," catch",{"type":48,"tag":220,"props":11264,"children":11265},{"style":282},[11266],{"type":54,"value":11267}," (err) ",{"type":48,"tag":220,"props":11269,"children":11270},{"style":276},[11271],{"type":54,"value":6193},{"type":48,"tag":220,"props":11273,"children":11274},{"class":222,"line":867},[11275],{"type":48,"tag":220,"props":11276,"children":11277},{"style":486},[11278],{"type":54,"value":11279},"  \u002F\u002F Handle network\u002Funexpected errors\n",{"type":48,"tag":220,"props":11281,"children":11282},{"class":222,"line":881},[11283,11288,11292,11296,11300,11304,11309,11313,11317],{"type":48,"tag":220,"props":11284,"children":11285},{"style":282},[11286],{"type":54,"value":11287},"  toast",{"type":48,"tag":220,"props":11289,"children":11290},{"style":276},[11291],{"type":54,"value":415},{"type":48,"tag":220,"props":11293,"children":11294},{"style":394},[11295],{"type":54,"value":6784},{"type":48,"tag":220,"props":11297,"children":11298},{"style":459},[11299],{"type":54,"value":969},{"type":48,"tag":220,"props":11301,"children":11302},{"style":276},[11303],{"type":54,"value":310},{"type":48,"tag":220,"props":11305,"children":11306},{"style":233},[11307],{"type":54,"value":11308},"Something went wrong",{"type":48,"tag":220,"props":11310,"children":11311},{"style":276},[11312],{"type":54,"value":310},{"type":48,"tag":220,"props":11314,"children":11315},{"style":459},[11316],{"type":54,"value":255},{"type":48,"tag":220,"props":11318,"children":11319},{"style":276},[11320],{"type":54,"value":315},{"type":48,"tag":220,"props":11322,"children":11323},{"class":222,"line":24},[11324],{"type":48,"tag":220,"props":11325,"children":11326},{"style":276},[11327],{"type":54,"value":902},{"type":48,"tag":1411,"props":11329,"children":11330},{},[],{"type":48,"tag":63,"props":11332,"children":11334},{"id":11333},"performance-notes",[11335],{"type":54,"value":11336},"Performance Notes",{"type":48,"tag":75,"props":11338,"children":11339},{},[11340,11350,11360,11370],{"type":48,"tag":79,"props":11341,"children":11342},{},[11343,11348],{"type":48,"tag":122,"props":11344,"children":11345},{},[11346],{"type":54,"value":11347},"Session caching",{"type":54,"value":11349},": 60-second TTL, automatic JWT expiration handling",{"type":48,"tag":79,"props":11351,"children":11352},{},[11353,11358],{"type":48,"tag":122,"props":11354,"children":11355},{},[11356],{"type":54,"value":11357},"Request deduplication",{"type":54,"value":11359},": Concurrent calls share single network request",{"type":48,"tag":79,"props":11361,"children":11362},{},[11363,11368],{"type":48,"tag":122,"props":11364,"children":11365},{},[11366],{"type":54,"value":11367},"Cold start",{"type":54,"value":11369},": ~200ms (single request)",{"type":48,"tag":79,"props":11371,"children":11372},{},[11373,11378],{"type":48,"tag":122,"props":11374,"children":11375},{},[11376],{"type":54,"value":11377},"Cross-tab sync",{"type":54,"value":11379},": \u003C50ms via BroadcastChannel",{"type":48,"tag":1411,"props":11381,"children":11382},{},[],{"type":48,"tag":63,"props":11384,"children":11386},{"id":11385},"faq-troubleshooting",[11387],{"type":54,"value":11388},"FAQ \u002F Troubleshooting",{"type":48,"tag":202,"props":11390,"children":11392},{"id":11391},"anonymous-access-not-working",[11393],{"type":54,"value":11394},"Anonymous access not working?",{"type":48,"tag":57,"props":11396,"children":11397},{},[11398,11400,11406,11408,11414],{"type":54,"value":11399},"When using ",{"type":48,"tag":100,"props":11401,"children":11403},{"className":11402},[],[11404],{"type":54,"value":11405},"allowAnonymous: true",{"type":54,"value":11407},", you must grant permissions to the ",{"type":48,"tag":100,"props":11409,"children":11411},{"className":11410},[],[11412],{"type":54,"value":11413},"anonymous",{"type":54,"value":11415}," role in your database:",{"type":48,"tag":209,"props":11417,"children":11421},{"className":11418,"code":11419,"language":11420,"meta":214,"style":214},"language-sql shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","-- Grant SELECT on specific tables\nGRANT SELECT ON public.posts TO anonymous;\nGRANT SELECT ON public.products TO anonymous;\n\n-- Or grant on all tables in schema (be careful!)\nGRANT SELECT ON ALL TABLES IN SCHEMA public TO anonymous;\n\n-- For INSERT\u002FUPDATE\u002FDELETE (if needed)\nGRANT INSERT, UPDATE ON public.comments TO anonymous;\n","sql",[11422],{"type":48,"tag":100,"props":11423,"children":11424},{"__ignoreMap":214},[11425,11433,11441,11449,11456,11464,11472,11479,11487],{"type":48,"tag":220,"props":11426,"children":11427},{"class":222,"line":223},[11428],{"type":48,"tag":220,"props":11429,"children":11430},{},[11431],{"type":54,"value":11432},"-- Grant SELECT on specific tables\n",{"type":48,"tag":220,"props":11434,"children":11435},{"class":222,"line":318},[11436],{"type":48,"tag":220,"props":11437,"children":11438},{},[11439],{"type":54,"value":11440},"GRANT SELECT ON public.posts TO anonymous;\n",{"type":48,"tag":220,"props":11442,"children":11443},{"class":222,"line":359},[11444],{"type":48,"tag":220,"props":11445,"children":11446},{},[11447],{"type":54,"value":11448},"GRANT SELECT ON public.products TO anonymous;\n",{"type":48,"tag":220,"props":11450,"children":11451},{"class":222,"line":369},[11452],{"type":48,"tag":220,"props":11453,"children":11454},{"emptyLinePlaceholder":363},[11455],{"type":54,"value":366},{"type":48,"tag":220,"props":11457,"children":11458},{"class":222,"line":404},[11459],{"type":48,"tag":220,"props":11460,"children":11461},{},[11462],{"type":54,"value":11463},"-- Or grant on all tables in schema (be careful!)\n",{"type":48,"tag":220,"props":11465,"children":11466},{"class":222,"line":446},[11467],{"type":48,"tag":220,"props":11468,"children":11469},{},[11470],{"type":54,"value":11471},"GRANT SELECT ON ALL TABLES IN SCHEMA public TO anonymous;\n",{"type":48,"tag":220,"props":11473,"children":11474},{"class":222,"line":455},[11475],{"type":48,"tag":220,"props":11476,"children":11477},{"emptyLinePlaceholder":363},[11478],{"type":54,"value":366},{"type":48,"tag":220,"props":11480,"children":11481},{"class":222,"line":482},[11482],{"type":48,"tag":220,"props":11483,"children":11484},{},[11485],{"type":54,"value":11486},"-- For INSERT\u002FUPDATE\u002FDELETE (if needed)\n",{"type":48,"tag":220,"props":11488,"children":11489},{"class":222,"line":497},[11490],{"type":48,"tag":220,"props":11491,"children":11492},{},[11493],{"type":54,"value":11494},"GRANT INSERT, UPDATE ON public.comments TO anonymous;\n",{"type":48,"tag":57,"props":11496,"children":11497},{},[11498],{"type":54,"value":11499},"Your RLS policies must also allow the anonymous role:",{"type":48,"tag":209,"props":11501,"children":11503},{"className":11418,"code":11502,"language":11420,"meta":214,"style":214},"-- Example: Allow anonymous users to read published posts\nCREATE POLICY \"Anyone can read published posts\"\n  ON public.posts FOR SELECT\n  USING (published = true);\n\n-- Example: Allow anonymous users to read products\nCREATE POLICY \"Anyone can read products\"\n  ON public.products FOR SELECT\n  USING (true);\n",[11504],{"type":48,"tag":100,"props":11505,"children":11506},{"__ignoreMap":214},[11507,11515,11523,11531,11539,11546,11554,11562,11570],{"type":48,"tag":220,"props":11508,"children":11509},{"class":222,"line":223},[11510],{"type":48,"tag":220,"props":11511,"children":11512},{},[11513],{"type":54,"value":11514},"-- Example: Allow anonymous users to read published posts\n",{"type":48,"tag":220,"props":11516,"children":11517},{"class":222,"line":318},[11518],{"type":48,"tag":220,"props":11519,"children":11520},{},[11521],{"type":54,"value":11522},"CREATE POLICY \"Anyone can read published posts\"\n",{"type":48,"tag":220,"props":11524,"children":11525},{"class":222,"line":359},[11526],{"type":48,"tag":220,"props":11527,"children":11528},{},[11529],{"type":54,"value":11530},"  ON public.posts FOR SELECT\n",{"type":48,"tag":220,"props":11532,"children":11533},{"class":222,"line":369},[11534],{"type":48,"tag":220,"props":11535,"children":11536},{},[11537],{"type":54,"value":11538},"  USING (published = true);\n",{"type":48,"tag":220,"props":11540,"children":11541},{"class":222,"line":404},[11542],{"type":48,"tag":220,"props":11543,"children":11544},{"emptyLinePlaceholder":363},[11545],{"type":54,"value":366},{"type":48,"tag":220,"props":11547,"children":11548},{"class":222,"line":446},[11549],{"type":48,"tag":220,"props":11550,"children":11551},{},[11552],{"type":54,"value":11553},"-- Example: Allow anonymous users to read products\n",{"type":48,"tag":220,"props":11555,"children":11556},{"class":222,"line":455},[11557],{"type":48,"tag":220,"props":11558,"children":11559},{},[11560],{"type":54,"value":11561},"CREATE POLICY \"Anyone can read products\"\n",{"type":48,"tag":220,"props":11563,"children":11564},{"class":222,"line":482},[11565],{"type":48,"tag":220,"props":11566,"children":11567},{},[11568],{"type":54,"value":11569},"  ON public.products FOR SELECT\n",{"type":48,"tag":220,"props":11571,"children":11572},{"class":222,"line":497},[11573],{"type":48,"tag":220,"props":11574,"children":11575},{},[11576],{"type":54,"value":11577},"  USING (true);\n",{"type":48,"tag":202,"props":11579,"children":11581},{"id":11580},"oauth-redirect-not-working-in-iframe",[11582],{"type":54,"value":11583},"OAuth redirect not working in iframe?",{"type":48,"tag":57,"props":11585,"children":11586},{},[11587],{"type":54,"value":11588},"OAuth automatically uses popup flow in iframes. Make sure:",{"type":48,"tag":115,"props":11590,"children":11591},{},[11592,11597],{"type":48,"tag":79,"props":11593,"children":11594},{},[11595],{"type":54,"value":11596},"Your auth server allows the popup callback URL",{"type":48,"tag":79,"props":11598,"children":11599},{},[11600],{"type":54,"value":11601},"Popups aren't blocked by the browser",{"type":48,"tag":202,"props":11603,"children":11605},{"id":11604},"session-not-persisting-after-refresh",[11606],{"type":54,"value":11607},"Session not persisting after refresh?",{"type":48,"tag":57,"props":11609,"children":11610},{},[11611],{"type":54,"value":11612},"Check that:",{"type":48,"tag":115,"props":11614,"children":11615},{},[11616,11621,11626],{"type":48,"tag":79,"props":11617,"children":11618},{},[11619],{"type":54,"value":11620},"Cookies are enabled",{"type":48,"tag":79,"props":11622,"children":11623},{},[11624],{"type":54,"value":11625},"Your auth server URL matches your domain (or has proper CORS)",{"type":48,"tag":79,"props":11627,"children":11628},{},[11629],{"type":54,"value":11630},"You're not in incognito mode with cookies blocked",{"type":48,"tag":202,"props":11632,"children":11634},{"id":11633},"invalid-credentials-but-password-is-correct",[11635],{"type":54,"value":11636},"\"Invalid credentials\" but password is correct?",{"type":48,"tag":75,"props":11638,"children":11639},{},[11640,11653,11658],{"type":48,"tag":79,"props":11641,"children":11642},{},[11643,11645,11651],{"type":54,"value":11644},"Email might not be verified (check ",{"type":48,"tag":100,"props":11646,"children":11648},{"className":11647},[],[11649],{"type":54,"value":11650},"emailVerification",{"type":54,"value":11652}," setting)",{"type":48,"tag":79,"props":11654,"children":11655},{},[11656],{"type":54,"value":11657},"Account might be locked after too many failed attempts",{"type":48,"tag":79,"props":11659,"children":11660},{},[11661],{"type":54,"value":11662},"Check if using correct adapter API (Supabase vs BetterAuth style)",{"type":48,"tag":11664,"props":11665,"children":11666},"style",{},[11667],{"type":54,"value":11668},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":11670,"total":359},[11671,11682,11689],{"slug":105,"name":105,"fn":11672,"description":11673,"org":11674,"tags":11675,"stars":24,"repoUrl":25,"updatedAt":11681},"set up Neon Auth in Next.js","Sets up Neon Auth in Next.js App Router applications. Configures API routes, middleware, server components, and UI. Use when adding auth-only to Next.js apps (no database needed).",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11676,11677,11678],{"name":19,"slug":20,"type":14},{"name":9,"slug":8,"type":14},{"name":11679,"slug":11680,"type":14},"Next.js","next-js","2026-04-06T18:39:05.461807",{"slug":4,"name":4,"fn":5,"description":6,"org":11683,"tags":11684,"stars":24,"repoUrl":25,"updatedAt":26},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11685,11686,11687,11688],{"name":19,"slug":20,"type":14},{"name":22,"slug":23,"type":14},{"name":9,"slug":8,"type":14},{"name":16,"slug":17,"type":14},{"slug":11690,"name":11690,"fn":11691,"description":11692,"org":11693,"tags":11694,"stars":24,"repoUrl":25,"updatedAt":11701},"neon-js-react","set up Neon SDK in React apps","Sets up the full Neon SDK with authentication AND database queries in React apps (Vite, CRA). Creates typed client, generates database types, and configures auth UI. Use for auth + database integration.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11695,11696,11699,11700],{"name":19,"slug":20,"type":14},{"name":11697,"slug":11698,"type":14},"Database","database",{"name":9,"slug":8,"type":14},{"name":16,"slug":17,"type":14},"2026-04-06T18:39:02.870541",{"items":11703,"total":1048},[11704,11721,11735,11745,11761,11773,11787,11802,11814,11833,11851,11868],{"slug":11705,"name":11705,"fn":11706,"description":11707,"org":11708,"tags":11709,"stars":11718,"repoUrl":11719,"updatedAt":11720},"neon-postgres","build apps with Neon serverless Postgres","Guides and best practices for working with Neon Serverless Postgres. Covers setup, connection methods and drivers, pooled vs direct connections, branching, autoscaling, scale-to-zero, instant restore, read replicas, connection pooling, IP allow lists, and logical replication. Use when users ask about \"Neon setup\", \"connect to Neon\", \"Neon project\", \"DATABASE_URL\", \"serverless Postgres\", \"Neon CLI\", \"neon\", \"Neon MCP\", \"Neon Auth\", \"@neondatabase\u002Fserverless\", \"@neondatabase\u002Fneon-js\", \"scale to zero\", \"Neon autoscaling\", \"Neon read replica\", or \"Neon connection pooling\".",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11710,11711,11712,11715],{"name":11697,"slug":11698,"type":14},{"name":9,"slug":8,"type":14},{"name":11713,"slug":11714,"type":14},"PostgreSQL","postgresql",{"name":11716,"slug":11717,"type":14},"Serverless","serverless",321,"https:\u002F\u002Fgithub.com\u002Fneondatabase\u002Fwebsite","2026-07-27T06:08:14.168734",{"slug":11722,"name":11722,"fn":11723,"description":11724,"org":11725,"tags":11726,"stars":11732,"repoUrl":11733,"updatedAt":11734},"add-neon-docs","add Neon docs to project AI docs","Use this skill when the user asks to add documentation, add docs, add references, or install documentation about Neon. Adds Neon best practices reference links to project AI documentation (CLAUDE.md, AGENTS.md, or Cursor rules). Does not install packages or modify code.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11727,11728,11731],{"name":11697,"slug":11698,"type":14},{"name":11729,"slug":11730,"type":14},"Documentation","documentation",{"name":9,"slug":8,"type":14},86,"https:\u002F\u002Fgithub.com\u002Fneondatabase\u002Fai-rules","2026-04-06T18:38:53.722898",{"slug":11736,"name":11736,"fn":11737,"description":11738,"org":11739,"tags":11740,"stars":11732,"repoUrl":11733,"updatedAt":11744},"neon-auth","set up Neon Auth for apps","Sets up Neon Auth for your application. Configures authentication, creates auth routes, and generates UI components. Use when adding authentication to Next.js, React SPA, or Node.js projects.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11741,11742,11743],{"name":19,"slug":20,"type":14},{"name":11697,"slug":11698,"type":14},{"name":9,"slug":8,"type":14},"2026-04-06T18:38:52.386193",{"slug":11746,"name":11746,"fn":11747,"description":11748,"org":11749,"tags":11750,"stars":11732,"repoUrl":11733,"updatedAt":11760},"neon-drizzle","set up Drizzle ORM with Neon","Creates a fully functional Drizzle ORM setup with a provisioned Neon database. Installs dependencies, provisions database credentials, configures connections, generates schemas, and runs migrations. Results in working code that can immediately connect to and query the database. Use when creating new projects with Drizzle, adding ORM to existing applications, or modifying database schemas.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11751,11752,11755,11756,11759],{"name":11697,"slug":11698,"type":14},{"name":11753,"slug":11754,"type":14},"Drizzle","drizzle",{"name":9,"slug":8,"type":14},{"name":11757,"slug":11758,"type":14},"ORM","orm",{"name":11713,"slug":11714,"type":14},"2026-04-06T18:38:56.217495",{"slug":11762,"name":11762,"fn":11763,"description":11764,"org":11765,"tags":11766,"stars":11732,"repoUrl":11733,"updatedAt":11772},"neon-js","set up the Neon JS SDK for auth and queries","Sets up the full Neon JS SDK with unified auth and PostgREST-style database queries. Configures auth client, data client, and type generation. Use when building apps that need both authentication and database access in one SDK.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11767,11768,11769,11770],{"name":19,"slug":20,"type":14},{"name":11697,"slug":11698,"type":14},{"name":9,"slug":8,"type":14},{"name":11771,"slug":260,"type":14},"TypeScript","2026-04-06T18:38:51.116041",{"slug":11774,"name":11774,"fn":11775,"description":11776,"org":11777,"tags":11778,"stars":11732,"repoUrl":11733,"updatedAt":11786},"neon-serverless","configure Neon serverless driver","Configures Neon Serverless Driver for Next.js, Vercel Edge Functions, AWS Lambda, and other serverless environments. Installs @neondatabase\u002Fserverless, sets up environment variables, and creates working API route examples with TypeScript types. Use when users need to connect their application to Neon, fetch or query data from a Neon database, integrate Neon with Next.js or serverless frameworks, or set up database access in edge\u002Fserverless environments where traditional PostgreSQL clients don't work.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11779,11780,11783,11784,11785],{"name":11697,"slug":11698,"type":14},{"name":11781,"slug":11782,"type":14},"Edge Functions","edge-functions",{"name":9,"slug":8,"type":14},{"name":11713,"slug":11714,"type":14},{"name":11716,"slug":11717,"type":14},"2026-04-06T18:38:54.97085",{"slug":11788,"name":11788,"fn":11789,"description":11790,"org":11791,"tags":11792,"stars":11732,"repoUrl":11733,"updatedAt":11801},"neon-toolkit","create ephemeral Neon databases for testing","Creates and manages ephemeral Neon databases for testing, CI\u002FCD pipelines, and isolated development environments. Use when building temporary databases for automated tests or rapid prototyping.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11793,11796,11797,11798],{"name":11794,"slug":11795,"type":14},"CI\u002FCD","cicd",{"name":11697,"slug":11698,"type":14},{"name":9,"slug":8,"type":14},{"name":11799,"slug":11800,"type":14},"Testing","testing","2026-04-06T18:38:57.490782",{"slug":11803,"name":11803,"fn":11804,"description":11805,"org":11806,"tags":11807,"stars":11811,"repoUrl":11812,"updatedAt":11813},"claimable-postgres","provision temporary Postgres databases","Provision instant temporary Postgres databases via Claimable Postgres by Neon (neon.new) with no login, signup, or credit card. Supports REST API, CLI, and SDK. Use when users ask for a quick Postgres environment, a throwaway DATABASE_URL for prototyping\u002Ftests, or \"just give me a DB now\". Triggers include: \"quick postgres\", \"temporary postgres\", \"no signup database\", \"no credit card database\", \"instant DATABASE_URL\", \"npx neon-new\", \"neon.new\", \"neon.new API\", \"claimable postgres API\".",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11808,11809,11810],{"name":11697,"slug":11698,"type":14},{"name":9,"slug":8,"type":14},{"name":11713,"slug":11714,"type":14},81,"https:\u002F\u002Fgithub.com\u002Fneondatabase\u002Fagent-skills","2026-07-27T06:07:56.160588",{"slug":8,"name":8,"fn":11815,"description":11816,"org":11817,"tags":11818,"stars":11811,"repoUrl":11812,"updatedAt":11832},"build applications on the Neon platform","Overview of the Neon platform for apps and agents, spanning Postgres, Auth, the Data API, Object Storage, Compute Functions, and the AI Gateway. Start here to route to the right Neon skill, set up the CLI or MCP server, and follow the branch-first workflow. Use when \"Neon\" is mentioned, or when any of its individual capabilities are the trigger: \"object storage\" or \"S3\", \"buckets\", \"serverless functions\", \"AI gateway\", \"call an LLM\", \"postgres\", \"database\", or \"backend\".",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11819,11822,11825,11826,11827,11828,11829],{"name":11820,"slug":11821,"type":14},"AI Infrastructure","ai-infrastructure",{"name":11823,"slug":11824,"type":14},"Authentication","authentication",{"name":11697,"slug":11698,"type":14},{"name":9,"slug":8,"type":14},{"name":11713,"slug":11714,"type":14},{"name":11716,"slug":11717,"type":14},{"name":11830,"slug":11831,"type":14},"Storage","storage","2026-07-27T06:08:01.383115",{"slug":11834,"name":11834,"fn":11835,"description":11836,"org":11837,"tags":11838,"stars":11811,"repoUrl":11812,"updatedAt":11850},"neon-ai-gateway","call LLMs via Neon AI Gateway","One API and one credential for frontier and open-source LLMs, built into your Neon branch and powered by Databricks. Use when a user wants to call an LLM, add AI\u002Fchat\u002Fan agent to their app, route between model providers (OpenAI, Anthropic, Google\u002FGemini, Meta, Alibaba, DeepSeek), or avoid juggling separate provider API keys and accounts — especially when they already use Neon and want AI requests to branch with their project. Works with the OpenAI SDK, Anthropic SDK, google-genai, the Vercel AI SDK, and Mastra by changing only the base URL. Triggers include \"call an LLM\", \"add AI to my app\", \"chat completion\", \"model routing\", \"LLM proxy\u002Fgateway\", \"one API for all models\", \"use Claude\u002FGPT\u002FGemini\", \"AI SDK\", \"Mastra agent\", \"Neon AI Gateway\", and \"log\u002Frate-limit AI calls\".",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11839,11840,11843,11846,11849],{"name":11820,"slug":11821,"type":14},{"name":11841,"slug":11842,"type":14},"API Development","api-development",{"name":11844,"slug":11845,"type":14},"Databricks","databricks",{"name":11847,"slug":11848,"type":14},"LLM","llm",{"name":9,"slug":8,"type":14},"2026-07-27T06:08:00.288175",{"slug":11852,"name":11852,"fn":11853,"description":11854,"org":11855,"tags":11856,"stars":11811,"repoUrl":11812,"updatedAt":11867},"neon-functions","deploy serverless functions on Neon","Long-running, serverless Node.js HTTP functions deployed onto your Neon branch, with DATABASE_URL injected automatically and compute that runs next to your data. Use when a user wants to host an API, an AI agent with long streaming responses, a WebSocket or server-sent-events (SSE) server, a webhook handler, a Discord bot, an MCP server, or any request\u002Fresponse workload that risks timing out on short, lambda-style serverless functions — and wants it to branch with their database. Triggers include \"serverless function\", \"deploy an API\", \"long-running function\", \"streaming agent\", \"SSE server\", \"WebSocket server\", \"webhook handler\", \"MCP server\", \"run code next to my database\", \"function that won't time out\", \"Neon Functions\", and \"Neon Compute\".",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11857,11858,11861,11862,11863,11866],{"name":11841,"slug":11842,"type":14},{"name":11859,"slug":11860,"type":14},"Backend","backend",{"name":11781,"slug":11782,"type":14},{"name":9,"slug":8,"type":14},{"name":11864,"slug":11865,"type":14},"Node.js","node-js",{"name":11716,"slug":11717,"type":14},"2026-07-27T06:07:59.147675",{"slug":11869,"name":11869,"fn":11870,"description":11871,"org":11872,"tags":11873,"stars":11811,"repoUrl":11812,"updatedAt":11880},"neon-object-storage","manage Neon object storage","S3-compatible object storage that branches with your Neon project, so files and the database stay in sync across every branch. Use when a user wants object storage, a bucket, blob\u002Ffile storage, or somewhere to put uploads, images, documents, avatars, or user-generated files for their app or agent — especially when they already use (or are setting up) Neon Postgres and don't want to add a separate storage provider like AWS S3, Cloudflare R2, or Supabase Storage. Triggers include \"object storage\", \"bucket\", \"blob storage\", \"file storage\", \"store uploads\u002Fimages\u002Ffiles\", \"S3-compatible storage\", \"presigned URL\", \"where do I put files\", \"Neon Object Storage\", \"Neon Storage\", and \"storage that branches with my database\".",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[11874,11875,11878,11879],{"name":11697,"slug":11698,"type":14},{"name":11876,"slug":11877,"type":14},"File Storage","file-storage",{"name":9,"slug":8,"type":14},{"name":11830,"slug":11831,"type":14},"2026-07-27T06:07:57.150892"]