@clerk/nextjs 7.9.0-snapshot.v20260828154440 → 7.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/cjs/client-boundary/hooks.js +2 -0
  2. package/dist/cjs/client-boundary/hooks.js.map +1 -1
  3. package/dist/cjs/client-boundary/uiComponents.js +2 -0
  4. package/dist/cjs/client-boundary/uiComponents.js.map +1 -1
  5. package/dist/cjs/index.js +4 -0
  6. package/dist/cjs/index.js.map +1 -1
  7. package/dist/cjs/removedControlComponents.js.map +1 -1
  8. package/dist/cjs/server/constants.js +1 -1
  9. package/dist/cjs/server/createClerkClient.js +1 -1
  10. package/dist/cjs/server/createClerkClient.js.map +1 -1
  11. package/dist/cjs/utils/debugLogger.js +1 -1
  12. package/dist/cjs/utils/debugLogger.js.map +1 -1
  13. package/dist/esm/client-boundary/hooks.js +2 -0
  14. package/dist/esm/client-boundary/hooks.js.map +1 -1
  15. package/dist/esm/client-boundary/uiComponents.js +2 -0
  16. package/dist/esm/client-boundary/uiComponents.js.map +1 -1
  17. package/dist/esm/index.js +4 -0
  18. package/dist/esm/index.js.map +1 -1
  19. package/dist/esm/removedControlComponents.js.map +1 -1
  20. package/dist/esm/server/constants.js +1 -1
  21. package/dist/esm/server/createClerkClient.js +1 -1
  22. package/dist/esm/server/createClerkClient.js.map +1 -1
  23. package/dist/esm/utils/debugLogger.js +1 -1
  24. package/dist/esm/utils/debugLogger.js.map +1 -1
  25. package/dist/types/client-boundary/hooks.d.ts +1 -1
  26. package/dist/types/client-boundary/hooks.d.ts.map +1 -1
  27. package/dist/types/client-boundary/uiComponents.d.ts +1 -1
  28. package/dist/types/client-boundary/uiComponents.d.ts.map +1 -1
  29. package/dist/types/index.d.ts +2 -2
  30. package/dist/types/index.d.ts.map +1 -1
  31. package/dist/types/removedControlComponents.d.ts +6 -0
  32. package/dist/types/removedControlComponents.d.ts.map +1 -1
  33. package/package.json +7 -14
  34. package/dist/cjs/experimental/mosaic.js +0 -30
  35. package/dist/cjs/experimental/mosaic.js.map +0 -1
  36. package/dist/esm/experimental/mosaic.js +0 -7
  37. package/dist/esm/experimental/mosaic.js.map +0 -1
  38. package/dist/experimental/mosaic/styles.css +0 -2294
  39. package/dist/types/experimental/mosaic.d.ts +0 -15
  40. package/dist/types/experimental/mosaic.d.ts.map +0 -1
@@ -32,6 +32,7 @@ __export(hooks_exports, {
32
32
  useClerk: () => import_react.useClerk,
33
33
  useEmailLink: () => import_react.useEmailLink,
34
34
  useOAuthConsent: () => import_react.useOAuthConsent,
35
+ useOAuthDeviceVerification: () => import_react.useOAuthDeviceVerification,
35
36
  useOrganization: () => import_react.useOrganization,
36
37
  useOrganizationCreationDefaults: () => import_react.useOrganizationCreationDefaults,
37
38
  useOrganizationList: () => import_react.useOrganizationList,
@@ -61,6 +62,7 @@ var import_errors = require("@clerk/react/errors");
61
62
  useClerk,
62
63
  useEmailLink,
63
64
  useOAuthConsent,
65
+ useOAuthDeviceVerification,
64
66
  useOrganization,
65
67
  useOrganizationCreationDefaults,
66
68
  useOrganizationList,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/client-boundary/hooks.ts"],"sourcesContent":["'use client';\n\nexport {\n useAuth,\n useClerk,\n useEmailLink,\n useOAuthConsent,\n useOrganization,\n useOrganizationList,\n useOrganizationCreationDefaults,\n useSession,\n useSessionList,\n useSignIn,\n useSignUp,\n useWaitlist,\n useUser,\n useReverification,\n useAPIKeys,\n} from '@clerk/react';\n\nexport {\n isClerkAPIResponseError,\n isClerkRuntimeError,\n isEmailLinkError,\n isKnownError,\n isMetamaskError,\n isReverificationCancelledError,\n EmailLinkErrorCode,\n EmailLinkErrorCodeStatus,\n} from '@clerk/react/errors';\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAgBO;AAEP,oBASO;","names":[]}
1
+ {"version":3,"sources":["../../../src/client-boundary/hooks.ts"],"sourcesContent":["'use client';\n\nexport {\n useAuth,\n useClerk,\n useEmailLink,\n useOAuthConsent,\n useOAuthDeviceVerification,\n useOrganization,\n useOrganizationList,\n useOrganizationCreationDefaults,\n useSession,\n useSessionList,\n useSignIn,\n useSignUp,\n useWaitlist,\n useUser,\n useReverification,\n useAPIKeys,\n} from '@clerk/react';\n\nexport {\n isClerkAPIResponseError,\n isClerkRuntimeError,\n isEmailLinkError,\n isKnownError,\n isMetamaskError,\n isReverificationCancelledError,\n EmailLinkErrorCode,\n EmailLinkErrorCodeStatus,\n} from '@clerk/react/errors';\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAiBO;AAEP,oBASO;","names":[]}
@@ -35,6 +35,7 @@ __export(uiComponents_exports, {
35
35
  HandleSSOCallback: () => import_react3.HandleSSOCallback,
36
36
  InviteMembersButton: () => import_react3.InviteMembersButton,
37
37
  OAuthConsent: () => import_react3.OAuthConsent,
38
+ OAuthDeviceVerification: () => import_react3.OAuthDeviceVerification,
38
39
  OrganizationList: () => import_react3.OrganizationList,
39
40
  OrganizationProfile: () => OrganizationProfile,
40
41
  OrganizationSwitcher: () => import_react3.OrganizationSwitcher,
@@ -84,6 +85,7 @@ const SignUp = (props) => {
84
85
  HandleSSOCallback,
85
86
  InviteMembersButton,
86
87
  OAuthConsent,
88
+ OAuthDeviceVerification,
87
89
  OrganizationList,
88
90
  OrganizationProfile,
89
91
  OrganizationSwitcher,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/client-boundary/uiComponents.tsx"],"sourcesContent":["'use client';\n\nimport {\n OrganizationProfile as BaseOrganizationProfile,\n SignIn as BaseSignIn,\n SignUp as BaseSignUp,\n UserProfile as BaseUserProfile,\n} from '@clerk/react';\nimport type { ComponentProps } from 'react';\nimport React from 'react';\n\nimport { useEnforceCorrectRoutingProps } from './hooks/useEnforceRoutingProps';\n\nexport {\n APIKeys,\n CreateOrganization,\n GoogleOneTap,\n HandleSSOCallback,\n InviteMembersButton,\n OAuthConsent,\n OrganizationList,\n OrganizationSwitcher,\n PricingTable,\n SignInButton,\n SignInWithMetamaskButton,\n SignOutButton,\n SignUpButton,\n TaskChooseOrganization,\n TaskResetPassword,\n TaskSetupMFA,\n UserAvatar,\n UserButton,\n Waitlist,\n} from '@clerk/react';\n\n// The assignment of UserProfile with BaseUserProfile props is used\n// to support the CustomPage functionality (eg UserProfile.Page)\n// Also the `typeof BaseUserProfile` is used to resolve the following error:\n// \"The inferred type of 'UserProfile' cannot be named without a reference to ...\"\nexport const UserProfile: typeof BaseUserProfile = Object.assign(\n (props: ComponentProps<typeof BaseUserProfile>) => {\n return <BaseUserProfile {...useEnforceCorrectRoutingProps('UserProfile', props)} />;\n },\n { ...BaseUserProfile },\n);\n\n// The assignment of OrganizationProfile with BaseOrganizationProfile props is used\n// to support the CustomPage functionality (eg OrganizationProfile.Page)\n// Also the `typeof BaseOrganizationProfile` is used to resolved the following error:\n// \"The inferred type of 'OrganizationProfile' cannot be named without a reference to ...\"\nexport const OrganizationProfile: typeof BaseOrganizationProfile = Object.assign(\n (props: ComponentProps<typeof BaseOrganizationProfile>) => {\n return <BaseOrganizationProfile {...useEnforceCorrectRoutingProps('OrganizationProfile', props)} />;\n },\n { ...BaseOrganizationProfile },\n);\n\nexport const SignIn = (props: ComponentProps<typeof BaseSignIn>) => {\n return <BaseSignIn {...useEnforceCorrectRoutingProps('SignIn', props, false)} />;\n};\n\nexport const SignUp = (props: ComponentProps<typeof BaseSignUp>) => {\n return <BaseSignUp {...useEnforceCorrectRoutingProps('SignUp', props, false)} />;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAKO;AAEP,IAAAA,gBAAkB;AAElB,oCAA8C;AAE9C,IAAAA,gBAoBO;AAMA,MAAM,cAAsC,OAAO;AAAA,EACxD,CAAC,UAAkD;AACjD,WAAO,8BAAAC,QAAA,cAAC,aAAAC,aAAA,EAAiB,OAAG,6DAA8B,eAAe,KAAK,GAAG;AAAA,EACnF;AAAA,EACA,EAAE,GAAG,aAAAA,YAAgB;AACvB;AAMO,MAAM,sBAAsD,OAAO;AAAA,EACxE,CAAC,UAA0D;AACzD,WAAO,8BAAAD,QAAA,cAAC,aAAAE,qBAAA,EAAyB,OAAG,6DAA8B,uBAAuB,KAAK,GAAG;AAAA,EACnG;AAAA,EACA,EAAE,GAAG,aAAAA,oBAAwB;AAC/B;AAEO,MAAM,SAAS,CAAC,UAA6C;AAClE,SAAO,8BAAAF,QAAA,cAAC,aAAAG,QAAA,EAAY,OAAG,6DAA8B,UAAU,OAAO,KAAK,GAAG;AAChF;AAEO,MAAM,SAAS,CAAC,UAA6C;AAClE,SAAO,8BAAAH,QAAA,cAAC,aAAAI,QAAA,EAAY,OAAG,6DAA8B,UAAU,OAAO,KAAK,GAAG;AAChF;","names":["import_react","React","BaseUserProfile","BaseOrganizationProfile","BaseSignIn","BaseSignUp"]}
1
+ {"version":3,"sources":["../../../src/client-boundary/uiComponents.tsx"],"sourcesContent":["'use client';\n\nimport {\n OrganizationProfile as BaseOrganizationProfile,\n SignIn as BaseSignIn,\n SignUp as BaseSignUp,\n UserProfile as BaseUserProfile,\n} from '@clerk/react';\nimport type { ComponentProps } from 'react';\nimport React from 'react';\n\nimport { useEnforceCorrectRoutingProps } from './hooks/useEnforceRoutingProps';\n\nexport {\n APIKeys,\n CreateOrganization,\n GoogleOneTap,\n HandleSSOCallback,\n InviteMembersButton,\n OAuthConsent,\n OAuthDeviceVerification,\n OrganizationList,\n OrganizationSwitcher,\n PricingTable,\n SignInButton,\n SignInWithMetamaskButton,\n SignOutButton,\n SignUpButton,\n TaskChooseOrganization,\n TaskResetPassword,\n TaskSetupMFA,\n UserAvatar,\n UserButton,\n Waitlist,\n} from '@clerk/react';\n\n// The assignment of UserProfile with BaseUserProfile props is used\n// to support the CustomPage functionality (eg UserProfile.Page)\n// Also the `typeof BaseUserProfile` is used to resolve the following error:\n// \"The inferred type of 'UserProfile' cannot be named without a reference to ...\"\nexport const UserProfile: typeof BaseUserProfile = Object.assign(\n (props: ComponentProps<typeof BaseUserProfile>) => {\n return <BaseUserProfile {...useEnforceCorrectRoutingProps('UserProfile', props)} />;\n },\n { ...BaseUserProfile },\n);\n\n// The assignment of OrganizationProfile with BaseOrganizationProfile props is used\n// to support the CustomPage functionality (eg OrganizationProfile.Page)\n// Also the `typeof BaseOrganizationProfile` is used to resolved the following error:\n// \"The inferred type of 'OrganizationProfile' cannot be named without a reference to ...\"\nexport const OrganizationProfile: typeof BaseOrganizationProfile = Object.assign(\n (props: ComponentProps<typeof BaseOrganizationProfile>) => {\n return <BaseOrganizationProfile {...useEnforceCorrectRoutingProps('OrganizationProfile', props)} />;\n },\n { ...BaseOrganizationProfile },\n);\n\nexport const SignIn = (props: ComponentProps<typeof BaseSignIn>) => {\n return <BaseSignIn {...useEnforceCorrectRoutingProps('SignIn', props, false)} />;\n};\n\nexport const SignUp = (props: ComponentProps<typeof BaseSignUp>) => {\n return <BaseSignUp {...useEnforceCorrectRoutingProps('SignUp', props, false)} />;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAKO;AAEP,IAAAA,gBAAkB;AAElB,oCAA8C;AAE9C,IAAAA,gBAqBO;AAMA,MAAM,cAAsC,OAAO;AAAA,EACxD,CAAC,UAAkD;AACjD,WAAO,8BAAAC,QAAA,cAAC,aAAAC,aAAA,EAAiB,OAAG,6DAA8B,eAAe,KAAK,GAAG;AAAA,EACnF;AAAA,EACA,EAAE,GAAG,aAAAA,YAAgB;AACvB;AAMO,MAAM,sBAAsD,OAAO;AAAA,EACxE,CAAC,UAA0D;AACzD,WAAO,8BAAAD,QAAA,cAAC,aAAAE,qBAAA,EAAyB,OAAG,6DAA8B,uBAAuB,KAAK,GAAG;AAAA,EACnG;AAAA,EACA,EAAE,GAAG,aAAAA,oBAAwB;AAC/B;AAEO,MAAM,SAAS,CAAC,UAA6C;AAClE,SAAO,8BAAAF,QAAA,cAAC,aAAAG,QAAA,EAAY,OAAG,6DAA8B,UAAU,OAAO,KAAK,GAAG;AAChF;AAEO,MAAM,SAAS,CAAC,UAA6C;AAClE,SAAO,8BAAAH,QAAA,cAAC,aAAAI,QAAA,EAAY,OAAG,6DAA8B,UAAU,OAAO,KAAK,GAAG;AAChF;","names":["import_react","React","BaseUserProfile","BaseOrganizationProfile","BaseSignIn","BaseSignUp"]}
package/dist/cjs/index.js CHANGED
@@ -39,6 +39,7 @@ __export(index_exports, {
39
39
  GoogleOneTap: () => import_uiComponents.GoogleOneTap,
40
40
  InviteMembersButton: () => import_uiComponents.InviteMembersButton,
41
41
  OAuthConsent: () => import_uiComponents.OAuthConsent,
42
+ OAuthDeviceVerification: () => import_uiComponents.OAuthDeviceVerification,
42
43
  OrganizationList: () => import_uiComponents.OrganizationList,
43
44
  OrganizationProfile: () => import_uiComponents.OrganizationProfile,
44
45
  OrganizationSwitcher: () => import_uiComponents.OrganizationSwitcher,
@@ -73,6 +74,7 @@ __export(index_exports, {
73
74
  useClerk: () => import_hooks.useClerk,
74
75
  useEmailLink: () => import_hooks.useEmailLink,
75
76
  useOAuthConsent: () => import_hooks.useOAuthConsent,
77
+ useOAuthDeviceVerification: () => import_hooks.useOAuthDeviceVerification,
76
78
  useOrganization: () => import_hooks.useOrganization,
77
79
  useOrganizationCreationDefaults: () => import_hooks.useOrganizationCreationDefaults,
78
80
  useOrganizationList: () => import_hooks.useOrganizationList,
@@ -106,6 +108,7 @@ const Show = ComponentsModule.Show;
106
108
  GoogleOneTap,
107
109
  InviteMembersButton,
108
110
  OAuthConsent,
111
+ OAuthDeviceVerification,
109
112
  OrganizationList,
110
113
  OrganizationProfile,
111
114
  OrganizationSwitcher,
@@ -140,6 +143,7 @@ const Show = ComponentsModule.Show;
140
143
  useClerk,
141
144
  useEmailLink,
142
145
  useOAuthConsent,
146
+ useOAuthDeviceVerification,
143
147
  useOrganization,
144
148
  useOrganizationCreationDefaults,
145
149
  useOrganizationList,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["/**\n * These need to be explicitly listed. Do not use an * here.\n * If you do, app router will break.\n */\nexport {\n AuthenticateWithRedirectCallback,\n ClerkDegraded,\n ClerkFailed,\n ClerkLoaded,\n ClerkLoading,\n UNSAFE_PortalProvider,\n RedirectToCreateOrganization,\n RedirectToOrganizationProfile,\n RedirectToSignIn,\n RedirectToSignUp,\n RedirectToTasks,\n RedirectToUserProfile,\n} from './client-boundary/controlComponents';\n\n/**\n * These need to be explicitly listed. Do not use an * here.\n * If you do, app router will break.\n */\nexport {\n APIKeys,\n CreateOrganization,\n GoogleOneTap,\n InviteMembersButton,\n OAuthConsent,\n OrganizationList,\n OrganizationProfile,\n OrganizationSwitcher,\n PricingTable,\n SignIn,\n SignInButton,\n SignInWithMetamaskButton,\n SignOutButton,\n SignUp,\n SignUpButton,\n TaskChooseOrganization,\n TaskResetPassword,\n TaskSetupMFA,\n UserAvatar,\n UserButton,\n UserProfile,\n Waitlist,\n} from './client-boundary/uiComponents';\n\n/**\n * These need to be explicitly listed. Do not use an * here.\n * If you do, app router will break.\n */\nexport {\n useAuth,\n useClerk,\n useEmailLink,\n useOAuthConsent,\n useOrganization,\n useOrganizationCreationDefaults,\n useOrganizationList,\n useReverification,\n useAPIKeys,\n useSession,\n useSessionList,\n useSignIn,\n useSignUp,\n useWaitlist,\n useUser,\n} from './client-boundary/hooks';\n\nexport { getToken } from '@clerk/shared/getToken';\n\n/**\n * Conditionally export components that exhibit different behavior\n * when used in /app vs /pages.\n * We defined the runtime and the type values explicitly,\n * because TS will not recognize the subpath import unless the HOST\n * application sets moduleResolution to 'NodeNext'.\n */\n// @ts-ignore\nimport * as ComponentsModule from '#components';\n\nimport type { ServerComponentsServerModuleTypes } from './components.server';\n\nexport const ClerkProvider = ComponentsModule.ClerkProvider as ServerComponentsServerModuleTypes['ClerkProvider'];\nexport const Show = ComponentsModule.Show as ServerComponentsServerModuleTypes['Show'];\n\nexport { Protect, SignedIn, SignedOut } from './removedControlComponents';\n\n/**\n * `auth` is not available from this import path.\n *\n * **To fix this error:**\n * ```diff\n * - import { auth } from '@clerk/nextjs'\n * + import { auth } from '@clerk/nextjs/server'\n * ```\n *\n * The `auth` function is only available in server-side contexts:\n * API Routes, Server Components, Server Actions, and Middleware.\n */\nexport declare const auth: never;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,+BAaO;AAMP,0BAuBO;AAMP,mBAgBO;AAEP,sBAAyB;AAUzB,uBAAkC;AAOlC,sCAA6C;AAHtC,MAAM,gBAAgB,iBAAiB;AACvC,MAAM,OAAO,iBAAiB;","names":[]}
1
+ {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["/**\n * These need to be explicitly listed. Do not use an * here.\n * If you do, app router will break.\n */\nexport {\n AuthenticateWithRedirectCallback,\n ClerkDegraded,\n ClerkFailed,\n ClerkLoaded,\n ClerkLoading,\n UNSAFE_PortalProvider,\n RedirectToCreateOrganization,\n RedirectToOrganizationProfile,\n RedirectToSignIn,\n RedirectToSignUp,\n RedirectToTasks,\n RedirectToUserProfile,\n} from './client-boundary/controlComponents';\n\n/**\n * These need to be explicitly listed. Do not use an * here.\n * If you do, app router will break.\n */\nexport {\n APIKeys,\n CreateOrganization,\n GoogleOneTap,\n InviteMembersButton,\n OAuthConsent,\n OAuthDeviceVerification,\n OrganizationList,\n OrganizationProfile,\n OrganizationSwitcher,\n PricingTable,\n SignIn,\n SignInButton,\n SignInWithMetamaskButton,\n SignOutButton,\n SignUp,\n SignUpButton,\n TaskChooseOrganization,\n TaskResetPassword,\n TaskSetupMFA,\n UserAvatar,\n UserButton,\n UserProfile,\n Waitlist,\n} from './client-boundary/uiComponents';\n\n/**\n * These need to be explicitly listed. Do not use an * here.\n * If you do, app router will break.\n */\nexport {\n useAuth,\n useClerk,\n useEmailLink,\n useOAuthConsent,\n useOAuthDeviceVerification,\n useOrganization,\n useOrganizationCreationDefaults,\n useOrganizationList,\n useReverification,\n useAPIKeys,\n useSession,\n useSessionList,\n useSignIn,\n useSignUp,\n useWaitlist,\n useUser,\n} from './client-boundary/hooks';\n\nexport { getToken } from '@clerk/shared/getToken';\n\n/**\n * Conditionally export components that exhibit different behavior\n * when used in /app vs /pages.\n * We defined the runtime and the type values explicitly,\n * because TS will not recognize the subpath import unless the HOST\n * application sets moduleResolution to 'NodeNext'.\n */\n// @ts-ignore\nimport * as ComponentsModule from '#components';\n\nimport type { ServerComponentsServerModuleTypes } from './components.server';\n\nexport const ClerkProvider = ComponentsModule.ClerkProvider as ServerComponentsServerModuleTypes['ClerkProvider'];\nexport const Show = ComponentsModule.Show as ServerComponentsServerModuleTypes['Show'];\n\nexport { Protect, SignedIn, SignedOut } from './removedControlComponents';\n\n/**\n * `auth` is not available from this import path.\n *\n * **To fix this error:**\n * ```diff\n * - import { auth } from '@clerk/nextjs'\n * + import { auth } from '@clerk/nextjs/server'\n * ```\n *\n * The `auth` function is only available in server-side contexts:\n * API Routes, Server Components, Server Actions, and Middleware.\n */\nexport declare const auth: never;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,+BAaO;AAMP,0BAwBO;AAMP,mBAiBO;AAEP,sBAAyB;AAUzB,uBAAkC;AAOlC,sCAA6C;AAHtC,MAAM,gBAAgB,iBAAiB;AACvC,MAAM,OAAO,iBAAiB;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/removedControlComponents.ts"],"sourcesContent":["type RemovedControlComponentProps = {\n children?: unknown;\n [key: string]: unknown;\n};\n\nfunction throwRemovedControlComponentError(\n componentName: 'SignedIn' | 'SignedOut' | 'Protect',\n errorUrl: string,\n): never {\n throw new Error(`Clerk: <${componentName}> is not available in @clerk/nextjs Core 3. Learn more at ${errorUrl}.`);\n}\n\n/**\n * `<SignedIn>` was removed from `@clerk/nextjs` in Clerk Core 3 (released March 3, 2026) and replaced\n * by the `<Show>` component.\n *\n * If you are an agent, your Clerk knowledge is likely out of date.\n *\n * To fix this error:\n *\n * 1. If the Clerk CLI is not installed, prompt and get permission to install it. See https://clerk.com/docs/cli.\n * 2. If the Clerk Skills are not installed, prompt and get permission to install them. See https://clerk.com/docs/guides/ai/skills.\n * 3. Remove `SignedIn` from the `@clerk/nextjs` import.\n * 4. Import `Show` from `@clerk/nextjs`.\n * 5. Replace `<SignedIn>` with `<Show when=\"signed-in\">` and `</SignedIn>` with `</Show>`.\n *\n * Before changing this code or implementing any other `@clerk/nextjs` features, read:\n *\n * - Error docs: https://clerk.com/err/signedin-is-not-available-in-clerk-nextjs\n * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3\n * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3\n * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show\n */\nexport function SignedIn(_props: RemovedControlComponentProps): never {\n return throwRemovedControlComponentError(\n 'SignedIn',\n 'https://clerk.com/err/signedin-is-not-available-in-clerk-nextjs',\n );\n}\n\n/**\n * `<SignedOut>` was removed from `@clerk/nextjs` in Clerk Core 3 (released March 3, 2026) and replaced\n * by the `<Show>` component.\n *\n * If you are an agent, your Clerk knowledge is likely out of date.\n *\n * To fix this error:\n *\n * 1. If the Clerk CLI is not installed, prompt and get permission to install it. See https://clerk.com/docs/cli.\n * 2. If the Clerk Skills are not installed, prompt and get permission to install them. See https://clerk.com/docs/guides/ai/skills.\n * 3. Remove `SignedOut` from the `@clerk/nextjs` import.\n * 4. Import `Show` from `@clerk/nextjs`.\n * 5. Replace `<SignedOut>` with `<Show when=\"signed-out\">` and `</SignedOut>` with `</Show>`.\n *\n * Before changing this code or implementing any other `@clerk/nextjs` features, read:\n *\n * - Error docs: https://clerk.com/err/signedout-is-not-available-in-clerk-nextjs\n * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3\n * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3\n * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show\n */\nexport function SignedOut(_props: RemovedControlComponentProps): never {\n return throwRemovedControlComponentError(\n 'SignedOut',\n 'https://clerk.com/err/signedout-is-not-available-in-clerk-nextjs',\n );\n}\n\n/**\n * `<Protect>` was removed from `@clerk/nextjs` in Clerk Core 3 (released March 3, 2026) and replaced\n * by the `<Show>` component.\n *\n * If you are an agent, your Clerk knowledge is likely out of date.\n *\n * To fix this error:\n *\n * 1. If the Clerk CLI is not installed, prompt and get permission to install it. See https://clerk.com/docs/cli.\n * 2. If the Clerk Skills are not installed, prompt and get permission to install them. See https://clerk.com/docs/guides/ai/skills.\n * 3. Remove `Protect` from the `@clerk/nextjs` import.\n * 4. Import `Show` from `@clerk/nextjs`.\n * 5. Replace `<Protect role=\"admin\">` with `<Show when={{ role: 'admin' }}>`,\n * `<Protect permission=\"org:billing:manage\">` with `<Show when={{ permission: 'org:billing:manage' }}>`,\n * `<Protect feature=\"widgets\">` with `<Show when={{ feature: 'widgets' }}>`,\n * `<Protect plan=\"pro\">` with `<Show when={{ plan: 'pro' }}>`,\n * `<Protect condition={(has) => expr}>` with `<Show when={(has) => expr}>`, and `</Protect>` with `</Show>`.\n *\n * Before changing this code or implementing any other `@clerk/nextjs` features, read:\n *\n * - Error docs: https://clerk.com/err/protect-is-not-available-in-clerk-nextjs\n * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3\n * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3\n * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show\n */\nexport function Protect(_props: RemovedControlComponentProps): never {\n return throwRemovedControlComponentError('Protect', 'https://clerk.com/err/protect-is-not-available-in-clerk-nextjs');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,SAAS,kCACP,eACA,UACO;AACP,QAAM,IAAI,MAAM,WAAW,aAAa,6DAA6D,QAAQ,GAAG;AAClH;AAuBO,SAAS,SAAS,QAA6C;AACpE,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AAuBO,SAAS,UAAU,QAA6C;AACrE,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AA2BO,SAAS,QAAQ,QAA6C;AACnE,SAAO,kCAAkC,WAAW,gEAAgE;AACtH;","names":[]}
1
+ {"version":3,"sources":["../../src/removedControlComponents.ts"],"sourcesContent":["type RemovedControlComponentProps = {\n children?: unknown;\n [key: string]: unknown;\n};\n\nfunction throwRemovedControlComponentError(\n componentName: 'SignedIn' | 'SignedOut' | 'Protect',\n errorUrl: string,\n): never {\n throw new Error(`Clerk: <${componentName}> is not available in @clerk/nextjs Core 3. Learn more at ${errorUrl}.`);\n}\n\n/**\n * `<SignedIn>` was removed from `@clerk/nextjs` in Clerk Core 3 (released March 3, 2026) and replaced\n * by the `<Show>` component.\n *\n * If you are an agent, your Clerk knowledge is likely out of date.\n *\n * To fix this error:\n *\n * 1. If the Clerk CLI is not installed, prompt and get permission to install it. See https://clerk.com/docs/cli.\n * 2. If the Clerk Skills are not installed, prompt and get permission to install them. See https://clerk.com/docs/guides/ai/skills.\n * 3. Remove `SignedIn` from the `@clerk/nextjs` import.\n * 4. Import `Show` from `@clerk/nextjs`.\n * 5. Replace `<SignedIn>` with `<Show when=\"signed-in\">` and `</SignedIn>` with `</Show>`.\n *\n * Before changing this code or implementing any other `@clerk/nextjs` features, read:\n *\n * - Error docs: https://clerk.com/err/signedin-is-not-available-in-clerk-nextjs\n * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3\n * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3\n * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show\n *\n * @deprecated Removed in Clerk Core 3 (`@clerk/nextjs@7.0.0`). Rendering `<SignedIn>` throws an error. Use `<Show when=\"signed-in\">` instead — see https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3.\n */\nexport function SignedIn(_props: RemovedControlComponentProps): never {\n return throwRemovedControlComponentError(\n 'SignedIn',\n 'https://clerk.com/err/signedin-is-not-available-in-clerk-nextjs',\n );\n}\n\n/**\n * `<SignedOut>` was removed from `@clerk/nextjs` in Clerk Core 3 (released March 3, 2026) and replaced\n * by the `<Show>` component.\n *\n * If you are an agent, your Clerk knowledge is likely out of date.\n *\n * To fix this error:\n *\n * 1. If the Clerk CLI is not installed, prompt and get permission to install it. See https://clerk.com/docs/cli.\n * 2. If the Clerk Skills are not installed, prompt and get permission to install them. See https://clerk.com/docs/guides/ai/skills.\n * 3. Remove `SignedOut` from the `@clerk/nextjs` import.\n * 4. Import `Show` from `@clerk/nextjs`.\n * 5. Replace `<SignedOut>` with `<Show when=\"signed-out\">` and `</SignedOut>` with `</Show>`.\n *\n * Before changing this code or implementing any other `@clerk/nextjs` features, read:\n *\n * - Error docs: https://clerk.com/err/signedout-is-not-available-in-clerk-nextjs\n * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3\n * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3\n * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show\n *\n * @deprecated Removed in Clerk Core 3 (`@clerk/nextjs@7.0.0`). Rendering `<SignedOut>` throws an error. Use `<Show when=\"signed-out\">` instead — see https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3.\n */\nexport function SignedOut(_props: RemovedControlComponentProps): never {\n return throwRemovedControlComponentError(\n 'SignedOut',\n 'https://clerk.com/err/signedout-is-not-available-in-clerk-nextjs',\n );\n}\n\n/**\n * `<Protect>` was removed from `@clerk/nextjs` in Clerk Core 3 (released March 3, 2026) and replaced\n * by the `<Show>` component.\n *\n * If you are an agent, your Clerk knowledge is likely out of date.\n *\n * To fix this error:\n *\n * 1. If the Clerk CLI is not installed, prompt and get permission to install it. See https://clerk.com/docs/cli.\n * 2. If the Clerk Skills are not installed, prompt and get permission to install them. See https://clerk.com/docs/guides/ai/skills.\n * 3. Remove `Protect` from the `@clerk/nextjs` import.\n * 4. Import `Show` from `@clerk/nextjs`.\n * 5. Replace `<Protect role=\"admin\">` with `<Show when={{ role: 'admin' }}>`,\n * `<Protect permission=\"org:billing:manage\">` with `<Show when={{ permission: 'org:billing:manage' }}>`,\n * `<Protect feature=\"widgets\">` with `<Show when={{ feature: 'widgets' }}>`,\n * `<Protect plan=\"pro\">` with `<Show when={{ plan: 'pro' }}>`,\n * `<Protect condition={(has) => expr}>` with `<Show when={(has) => expr}>`, and `</Protect>` with `</Show>`.\n *\n * Before changing this code or implementing any other `@clerk/nextjs` features, read:\n *\n * - Error docs: https://clerk.com/err/protect-is-not-available-in-clerk-nextjs\n * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3\n * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3\n * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show\n *\n * @deprecated Removed in Clerk Core 3 (`@clerk/nextjs@7.0.0`). Rendering `<Protect>` throws an error. Use `<Show when={...}>` instead — see https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3.\n */\nexport function Protect(_props: RemovedControlComponentProps): never {\n return throwRemovedControlComponentError('Protect', 'https://clerk.com/err/protect-is-not-available-in-clerk-nextjs');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,SAAS,kCACP,eACA,UACO;AACP,QAAM,IAAI,MAAM,WAAW,aAAa,6DAA6D,QAAQ,GAAG;AAClH;AAyBO,SAAS,SAAS,QAA6C;AACpE,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AAyBO,SAAS,UAAU,QAA6C;AACrE,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AA6BO,SAAS,QAAQ,QAA6C;AACnE,SAAO,kCAAkC,WAAW,gEAAgE;AACtH;","names":[]}
@@ -58,7 +58,7 @@ const SIGN_IN_URL = process.env.NEXT_PUBLIC_CLERK_SIGN_IN_URL || "";
58
58
  const SIGN_UP_URL = process.env.NEXT_PUBLIC_CLERK_SIGN_UP_URL || "";
59
59
  const SDK_METADATA = {
60
60
  name: "@clerk/nextjs",
61
- version: "7.9.0-snapshot.v20260828154440",
61
+ version: "7.9.0",
62
62
  environment: process.env.NODE_ENV
63
63
  };
64
64
  const TELEMETRY_DISABLED = (0, import_underscore.isTruthy)(process.env.NEXT_PUBLIC_CLERK_TELEMETRY_DISABLED);
@@ -28,7 +28,7 @@ const clerkClientDefaultOptions = {
28
28
  publishableKey: import_constants.PUBLISHABLE_KEY,
29
29
  apiUrl: import_constants.API_URL,
30
30
  apiVersion: import_constants.API_VERSION,
31
- userAgent: `${"@clerk/nextjs"}@${"7.9.0-snapshot.v20260828154440"}`,
31
+ userAgent: `${"@clerk/nextjs"}@${"7.9.0"}`,
32
32
  proxyUrl: import_constants.PROXY_URL,
33
33
  domain: import_constants.DOMAIN,
34
34
  isSatellite: import_constants.IS_SATELLITE,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/server/createClerkClient.ts"],"sourcesContent":["import { createClerkClient } from '@clerk/backend';\n\nimport {\n API_URL,\n API_VERSION,\n DOMAIN,\n IS_SATELLITE,\n MACHINE_SECRET_KEY,\n PROXY_URL,\n PUBLISHABLE_KEY,\n SDK_METADATA,\n SECRET_KEY,\n TELEMETRY_DEBUG,\n TELEMETRY_DISABLED,\n} from './constants';\n\nconst clerkClientDefaultOptions = {\n secretKey: SECRET_KEY,\n publishableKey: PUBLISHABLE_KEY,\n apiUrl: API_URL,\n apiVersion: API_VERSION,\n userAgent: `${PACKAGE_NAME}@${PACKAGE_VERSION}`,\n proxyUrl: PROXY_URL,\n domain: DOMAIN,\n isSatellite: IS_SATELLITE,\n machineSecretKey: MACHINE_SECRET_KEY,\n sdkMetadata: SDK_METADATA,\n telemetry: {\n disabled: TELEMETRY_DISABLED,\n debug: TELEMETRY_DEBUG,\n },\n};\n\nexport const createClerkClientWithOptions: typeof createClerkClient = options =>\n createClerkClient({ ...clerkClientDefaultOptions, ...options });\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAkC;AAElC,uBAYO;AAEP,MAAM,4BAA4B;AAAA,EAChC,WAAW;AAAA,EACX,gBAAgB;AAAA,EAChB,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,WAAW,GAAG,eAAY,IAAI,gCAAe;AAAA,EAC7C,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,kBAAkB;AAAA,EAClB,aAAa;AAAA,EACb,WAAW;AAAA,IACT,UAAU;AAAA,IACV,OAAO;AAAA,EACT;AACF;AAEO,MAAM,+BAAyD,iBACpE,kCAAkB,EAAE,GAAG,2BAA2B,GAAG,QAAQ,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../../src/server/createClerkClient.ts"],"sourcesContent":["import { createClerkClient } from '@clerk/backend';\n\nimport {\n API_URL,\n API_VERSION,\n DOMAIN,\n IS_SATELLITE,\n MACHINE_SECRET_KEY,\n PROXY_URL,\n PUBLISHABLE_KEY,\n SDK_METADATA,\n SECRET_KEY,\n TELEMETRY_DEBUG,\n TELEMETRY_DISABLED,\n} from './constants';\n\nconst clerkClientDefaultOptions = {\n secretKey: SECRET_KEY,\n publishableKey: PUBLISHABLE_KEY,\n apiUrl: API_URL,\n apiVersion: API_VERSION,\n userAgent: `${PACKAGE_NAME}@${PACKAGE_VERSION}`,\n proxyUrl: PROXY_URL,\n domain: DOMAIN,\n isSatellite: IS_SATELLITE,\n machineSecretKey: MACHINE_SECRET_KEY,\n sdkMetadata: SDK_METADATA,\n telemetry: {\n disabled: TELEMETRY_DISABLED,\n debug: TELEMETRY_DEBUG,\n },\n};\n\nexport const createClerkClientWithOptions: typeof createClerkClient = options =>\n createClerkClient({ ...clerkClientDefaultOptions, ...options });\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAkC;AAElC,uBAYO;AAEP,MAAM,4BAA4B;AAAA,EAChC,WAAW;AAAA,EACX,gBAAgB;AAAA,EAChB,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,WAAW,GAAG,eAAY,IAAI,OAAe;AAAA,EAC7C,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,kBAAkB;AAAA,EAClB,aAAa;AAAA,EACb,WAAW;AAAA,IACT,UAAU;AAAA,IACV,OAAO;AAAA,EACT;AACF;AAEO,MAAM,+BAAyD,iBACpE,kCAAkB,EAAE,GAAG,2BAA2B,GAAG,QAAQ,CAAC;","names":[]}
@@ -90,7 +90,7 @@ function debugLogHeader(name) {
90
90
  return `[clerk debug start: ${name}]`;
91
91
  }
92
92
  function debugLogFooter(name) {
93
- return `[clerk debug end: ${name}] (@clerk/nextjs=${"7.9.0-snapshot.v20260828154440"},next=${import_package.default.version},timestamp=${Math.round((/* @__PURE__ */ new Date()).getTime() / 1e3)})`;
93
+ return `[clerk debug end: ${name}] (@clerk/nextjs=${"7.9.0"},next=${import_package.default.version},timestamp=${Math.round((/* @__PURE__ */ new Date()).getTime() / 1e3)})`;
94
94
  }
95
95
  function truncate(str, maxLength) {
96
96
  const encoder = new TextEncoder();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/debugLogger.ts"],"sourcesContent":["// TODO: Replace with a more sophisticated logging solution\n\nimport nextPkg from 'next/package.json';\n\nimport { logFormatter } from './logFormatter';\n\nexport type Log = string | Record<string, unknown>;\nexport type LogEntry = Log | Log[];\nexport type Logger<L = Log> = {\n commit: () => void;\n debug: (...args: Array<L | (() => L)>) => void;\n enable: () => void;\n};\nexport type LoggerNoCommit<L = Logger> = Omit<L, 'commit'>;\n\nexport const createDebugLogger = (name: string, formatter: (val: LogEntry) => string) => (): Logger => {\n const entries: LogEntry[] = [];\n let isEnabled = false;\n\n return {\n enable: () => {\n isEnabled = true;\n },\n debug: (...args) => {\n if (isEnabled) {\n entries.push(args.map(arg => (typeof arg === 'function' ? arg() : arg)));\n }\n },\n commit: () => {\n if (isEnabled) {\n console.log(debugLogHeader(name));\n\n /**\n * We buffer each collected log entry so we can format them and log them all at once.\n * Individual console.log calls are used to ensure we don't hit platform-specific log limits (Vercel and Netlify are 4kb).\n */\n for (const log of entries) {\n let output = formatter(log);\n\n output = output\n .split('\\n')\n .map(l => ` ${l}`)\n .join('\\n');\n\n // Vercel errors if the output is > 4kb, so we truncate it\n if (process.env.VERCEL) {\n output = truncate(output, 4096);\n }\n\n console.log(output);\n }\n\n console.log(debugLogFooter(name));\n }\n },\n };\n};\n\ntype WithLogger = <L extends Logger, H extends (...args: any[]) => any>(\n loggerFactoryOrName: string | (() => L),\n handlerCtor: (logger: LoggerNoCommit<L>) => H,\n) => H;\n\nexport const withLogger: WithLogger = (loggerFactoryOrName, handlerCtor) => {\n return ((...args: any) => {\n const factory =\n typeof loggerFactoryOrName === 'string'\n ? createDebugLogger(loggerFactoryOrName, logFormatter)\n : loggerFactoryOrName;\n\n const logger = factory();\n const handler = handlerCtor(logger as any);\n\n try {\n const res = handler(...args);\n if (typeof res === 'object' && 'then' in res && typeof res.then === 'function') {\n return res\n .then((val: any) => {\n logger.commit();\n return val;\n })\n .catch((err: any) => {\n logger.commit();\n throw err;\n });\n }\n // handle sync methods\n logger.commit();\n return res;\n } catch (err: any) {\n logger.commit();\n throw err;\n }\n }) as ReturnType<typeof handlerCtor>;\n};\n\nfunction debugLogHeader(name: string) {\n return `[clerk debug start: ${name}]`;\n}\n\nfunction debugLogFooter(name: string) {\n return `[clerk debug end: ${name}] (@clerk/nextjs=${PACKAGE_VERSION},next=${nextPkg.version},timestamp=${Math.round(new Date().getTime() / 1_000)})`;\n}\n\n// ref: https://stackoverflow.com/questions/57769465/javascript-truncate-text-by-bytes-length\nfunction truncate(str: string, maxLength: number) {\n const encoder = new TextEncoder();\n const decoder = new TextDecoder('utf-8');\n\n const encodedString = encoder.encode(str);\n const truncatedString = encodedString.slice(0, maxLength);\n\n // return the truncated string, removing any replacement characters that result from partially truncated characters\n return decoder.decode(truncatedString).replace(/\\uFFFD/g, '');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,qBAAoB;AAEpB,0BAA6B;AAWtB,MAAM,oBAAoB,CAAC,MAAc,cAAyC,MAAc;AACrG,QAAM,UAAsB,CAAC;AAC7B,MAAI,YAAY;AAEhB,SAAO;AAAA,IACL,QAAQ,MAAM;AACZ,kBAAY;AAAA,IACd;AAAA,IACA,OAAO,IAAI,SAAS;AAClB,UAAI,WAAW;AACb,gBAAQ,KAAK,KAAK,IAAI,SAAQ,OAAO,QAAQ,aAAa,IAAI,IAAI,GAAI,CAAC;AAAA,MACzE;AAAA,IACF;AAAA,IACA,QAAQ,MAAM;AACZ,UAAI,WAAW;AACb,gBAAQ,IAAI,eAAe,IAAI,CAAC;AAMhC,mBAAW,OAAO,SAAS;AACzB,cAAI,SAAS,UAAU,GAAG;AAE1B,mBAAS,OACN,MAAM,IAAI,EACV,IAAI,OAAK,KAAK,CAAC,EAAE,EACjB,KAAK,IAAI;AAGZ,cAAI,QAAQ,IAAI,QAAQ;AACtB,qBAAS,SAAS,QAAQ,IAAI;AAAA,UAChC;AAEA,kBAAQ,IAAI,MAAM;AAAA,QACpB;AAEA,gBAAQ,IAAI,eAAe,IAAI,CAAC;AAAA,MAClC;AAAA,IACF;AAAA,EACF;AACF;AAOO,MAAM,aAAyB,CAAC,qBAAqB,gBAAgB;AAC1E,UAAQ,IAAI,SAAc;AACxB,UAAM,UACJ,OAAO,wBAAwB,WAC3B,kBAAkB,qBAAqB,gCAAY,IACnD;AAEN,UAAM,SAAS,QAAQ;AACvB,UAAM,UAAU,YAAY,MAAa;AAEzC,QAAI;AACF,YAAM,MAAM,QAAQ,GAAG,IAAI;AAC3B,UAAI,OAAO,QAAQ,YAAY,UAAU,OAAO,OAAO,IAAI,SAAS,YAAY;AAC9E,eAAO,IACJ,KAAK,CAAC,QAAa;AAClB,iBAAO,OAAO;AACd,iBAAO;AAAA,QACT,CAAC,EACA,MAAM,CAAC,QAAa;AACnB,iBAAO,OAAO;AACd,gBAAM;AAAA,QACR,CAAC;AAAA,MACL;AAEA,aAAO,OAAO;AACd,aAAO;AAAA,IACT,SAAS,KAAU;AACjB,aAAO,OAAO;AACd,YAAM;AAAA,IACR;AAAA,EACF;AACF;AAEA,SAAS,eAAe,MAAc;AACpC,SAAO,uBAAuB,IAAI;AACpC;AAEA,SAAS,eAAe,MAAc;AACpC,SAAO,qBAAqB,IAAI,oBAAoB,gCAAe,SAAS,eAAAA,QAAQ,OAAO,cAAc,KAAK,OAAM,oBAAI,KAAK,GAAE,QAAQ,IAAI,GAAK,CAAC;AACnJ;AAGA,SAAS,SAAS,KAAa,WAAmB;AAChD,QAAM,UAAU,IAAI,YAAY;AAChC,QAAM,UAAU,IAAI,YAAY,OAAO;AAEvC,QAAM,gBAAgB,QAAQ,OAAO,GAAG;AACxC,QAAM,kBAAkB,cAAc,MAAM,GAAG,SAAS;AAGxD,SAAO,QAAQ,OAAO,eAAe,EAAE,QAAQ,WAAW,EAAE;AAC9D;","names":["nextPkg"]}
1
+ {"version":3,"sources":["../../../src/utils/debugLogger.ts"],"sourcesContent":["// TODO: Replace with a more sophisticated logging solution\n\nimport nextPkg from 'next/package.json';\n\nimport { logFormatter } from './logFormatter';\n\nexport type Log = string | Record<string, unknown>;\nexport type LogEntry = Log | Log[];\nexport type Logger<L = Log> = {\n commit: () => void;\n debug: (...args: Array<L | (() => L)>) => void;\n enable: () => void;\n};\nexport type LoggerNoCommit<L = Logger> = Omit<L, 'commit'>;\n\nexport const createDebugLogger = (name: string, formatter: (val: LogEntry) => string) => (): Logger => {\n const entries: LogEntry[] = [];\n let isEnabled = false;\n\n return {\n enable: () => {\n isEnabled = true;\n },\n debug: (...args) => {\n if (isEnabled) {\n entries.push(args.map(arg => (typeof arg === 'function' ? arg() : arg)));\n }\n },\n commit: () => {\n if (isEnabled) {\n console.log(debugLogHeader(name));\n\n /**\n * We buffer each collected log entry so we can format them and log them all at once.\n * Individual console.log calls are used to ensure we don't hit platform-specific log limits (Vercel and Netlify are 4kb).\n */\n for (const log of entries) {\n let output = formatter(log);\n\n output = output\n .split('\\n')\n .map(l => ` ${l}`)\n .join('\\n');\n\n // Vercel errors if the output is > 4kb, so we truncate it\n if (process.env.VERCEL) {\n output = truncate(output, 4096);\n }\n\n console.log(output);\n }\n\n console.log(debugLogFooter(name));\n }\n },\n };\n};\n\ntype WithLogger = <L extends Logger, H extends (...args: any[]) => any>(\n loggerFactoryOrName: string | (() => L),\n handlerCtor: (logger: LoggerNoCommit<L>) => H,\n) => H;\n\nexport const withLogger: WithLogger = (loggerFactoryOrName, handlerCtor) => {\n return ((...args: any) => {\n const factory =\n typeof loggerFactoryOrName === 'string'\n ? createDebugLogger(loggerFactoryOrName, logFormatter)\n : loggerFactoryOrName;\n\n const logger = factory();\n const handler = handlerCtor(logger as any);\n\n try {\n const res = handler(...args);\n if (typeof res === 'object' && 'then' in res && typeof res.then === 'function') {\n return res\n .then((val: any) => {\n logger.commit();\n return val;\n })\n .catch((err: any) => {\n logger.commit();\n throw err;\n });\n }\n // handle sync methods\n logger.commit();\n return res;\n } catch (err: any) {\n logger.commit();\n throw err;\n }\n }) as ReturnType<typeof handlerCtor>;\n};\n\nfunction debugLogHeader(name: string) {\n return `[clerk debug start: ${name}]`;\n}\n\nfunction debugLogFooter(name: string) {\n return `[clerk debug end: ${name}] (@clerk/nextjs=${PACKAGE_VERSION},next=${nextPkg.version},timestamp=${Math.round(new Date().getTime() / 1_000)})`;\n}\n\n// ref: https://stackoverflow.com/questions/57769465/javascript-truncate-text-by-bytes-length\nfunction truncate(str: string, maxLength: number) {\n const encoder = new TextEncoder();\n const decoder = new TextDecoder('utf-8');\n\n const encodedString = encoder.encode(str);\n const truncatedString = encodedString.slice(0, maxLength);\n\n // return the truncated string, removing any replacement characters that result from partially truncated characters\n return decoder.decode(truncatedString).replace(/\\uFFFD/g, '');\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,qBAAoB;AAEpB,0BAA6B;AAWtB,MAAM,oBAAoB,CAAC,MAAc,cAAyC,MAAc;AACrG,QAAM,UAAsB,CAAC;AAC7B,MAAI,YAAY;AAEhB,SAAO;AAAA,IACL,QAAQ,MAAM;AACZ,kBAAY;AAAA,IACd;AAAA,IACA,OAAO,IAAI,SAAS;AAClB,UAAI,WAAW;AACb,gBAAQ,KAAK,KAAK,IAAI,SAAQ,OAAO,QAAQ,aAAa,IAAI,IAAI,GAAI,CAAC;AAAA,MACzE;AAAA,IACF;AAAA,IACA,QAAQ,MAAM;AACZ,UAAI,WAAW;AACb,gBAAQ,IAAI,eAAe,IAAI,CAAC;AAMhC,mBAAW,OAAO,SAAS;AACzB,cAAI,SAAS,UAAU,GAAG;AAE1B,mBAAS,OACN,MAAM,IAAI,EACV,IAAI,OAAK,KAAK,CAAC,EAAE,EACjB,KAAK,IAAI;AAGZ,cAAI,QAAQ,IAAI,QAAQ;AACtB,qBAAS,SAAS,QAAQ,IAAI;AAAA,UAChC;AAEA,kBAAQ,IAAI,MAAM;AAAA,QACpB;AAEA,gBAAQ,IAAI,eAAe,IAAI,CAAC;AAAA,MAClC;AAAA,IACF;AAAA,EACF;AACF;AAOO,MAAM,aAAyB,CAAC,qBAAqB,gBAAgB;AAC1E,UAAQ,IAAI,SAAc;AACxB,UAAM,UACJ,OAAO,wBAAwB,WAC3B,kBAAkB,qBAAqB,gCAAY,IACnD;AAEN,UAAM,SAAS,QAAQ;AACvB,UAAM,UAAU,YAAY,MAAa;AAEzC,QAAI;AACF,YAAM,MAAM,QAAQ,GAAG,IAAI;AAC3B,UAAI,OAAO,QAAQ,YAAY,UAAU,OAAO,OAAO,IAAI,SAAS,YAAY;AAC9E,eAAO,IACJ,KAAK,CAAC,QAAa;AAClB,iBAAO,OAAO;AACd,iBAAO;AAAA,QACT,CAAC,EACA,MAAM,CAAC,QAAa;AACnB,iBAAO,OAAO;AACd,gBAAM;AAAA,QACR,CAAC;AAAA,MACL;AAEA,aAAO,OAAO;AACd,aAAO;AAAA,IACT,SAAS,KAAU;AACjB,aAAO,OAAO;AACd,YAAM;AAAA,IACR;AAAA,EACF;AACF;AAEA,SAAS,eAAe,MAAc;AACpC,SAAO,uBAAuB,IAAI;AACpC;AAEA,SAAS,eAAe,MAAc;AACpC,SAAO,qBAAqB,IAAI,oBAAoB,OAAe,SAAS,eAAAA,QAAQ,OAAO,cAAc,KAAK,OAAM,oBAAI,KAAK,GAAE,QAAQ,IAAI,GAAK,CAAC;AACnJ;AAGA,SAAS,SAAS,KAAa,WAAmB;AAChD,QAAM,UAAU,IAAI,YAAY;AAChC,QAAM,UAAU,IAAI,YAAY,OAAO;AAEvC,QAAM,gBAAgB,QAAQ,OAAO,GAAG;AACxC,QAAM,kBAAkB,cAAc,MAAM,GAAG,SAAS;AAGxD,SAAO,QAAQ,OAAO,eAAe,EAAE,QAAQ,WAAW,EAAE;AAC9D;","names":["nextPkg"]}
@@ -5,6 +5,7 @@ import {
5
5
  useClerk,
6
6
  useEmailLink,
7
7
  useOAuthConsent,
8
+ useOAuthDeviceVerification,
8
9
  useOrganization,
9
10
  useOrganizationList,
10
11
  useOrganizationCreationDefaults,
@@ -41,6 +42,7 @@ export {
41
42
  useClerk,
42
43
  useEmailLink,
43
44
  useOAuthConsent,
45
+ useOAuthDeviceVerification,
44
46
  useOrganization,
45
47
  useOrganizationCreationDefaults,
46
48
  useOrganizationList,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/client-boundary/hooks.ts"],"sourcesContent":["'use client';\n\nexport {\n useAuth,\n useClerk,\n useEmailLink,\n useOAuthConsent,\n useOrganization,\n useOrganizationList,\n useOrganizationCreationDefaults,\n useSession,\n useSessionList,\n useSignIn,\n useSignUp,\n useWaitlist,\n useUser,\n useReverification,\n useAPIKeys,\n} from '@clerk/react';\n\nexport {\n isClerkAPIResponseError,\n isClerkRuntimeError,\n isEmailLinkError,\n isKnownError,\n isMetamaskError,\n isReverificationCancelledError,\n EmailLinkErrorCode,\n EmailLinkErrorCodeStatus,\n} from '@clerk/react/errors';\n"],"mappings":";;AAEA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;","names":[]}
1
+ {"version":3,"sources":["../../../src/client-boundary/hooks.ts"],"sourcesContent":["'use client';\n\nexport {\n useAuth,\n useClerk,\n useEmailLink,\n useOAuthConsent,\n useOAuthDeviceVerification,\n useOrganization,\n useOrganizationList,\n useOrganizationCreationDefaults,\n useSession,\n useSessionList,\n useSignIn,\n useSignUp,\n useWaitlist,\n useUser,\n useReverification,\n useAPIKeys,\n} from '@clerk/react';\n\nexport {\n isClerkAPIResponseError,\n isClerkRuntimeError,\n isEmailLinkError,\n isKnownError,\n isMetamaskError,\n isReverificationCancelledError,\n EmailLinkErrorCode,\n EmailLinkErrorCodeStatus,\n} from '@clerk/react/errors';\n"],"mappings":";;AAEA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;","names":[]}
@@ -15,6 +15,7 @@ import {
15
15
  HandleSSOCallback,
16
16
  InviteMembersButton,
17
17
  OAuthConsent,
18
+ OAuthDeviceVerification,
18
19
  OrganizationList,
19
20
  OrganizationSwitcher,
20
21
  PricingTable,
@@ -54,6 +55,7 @@ export {
54
55
  HandleSSOCallback,
55
56
  InviteMembersButton,
56
57
  OAuthConsent,
58
+ OAuthDeviceVerification,
57
59
  OrganizationList,
58
60
  OrganizationProfile,
59
61
  OrganizationSwitcher,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/client-boundary/uiComponents.tsx"],"sourcesContent":["'use client';\n\nimport {\n OrganizationProfile as BaseOrganizationProfile,\n SignIn as BaseSignIn,\n SignUp as BaseSignUp,\n UserProfile as BaseUserProfile,\n} from '@clerk/react';\nimport type { ComponentProps } from 'react';\nimport React from 'react';\n\nimport { useEnforceCorrectRoutingProps } from './hooks/useEnforceRoutingProps';\n\nexport {\n APIKeys,\n CreateOrganization,\n GoogleOneTap,\n HandleSSOCallback,\n InviteMembersButton,\n OAuthConsent,\n OrganizationList,\n OrganizationSwitcher,\n PricingTable,\n SignInButton,\n SignInWithMetamaskButton,\n SignOutButton,\n SignUpButton,\n TaskChooseOrganization,\n TaskResetPassword,\n TaskSetupMFA,\n UserAvatar,\n UserButton,\n Waitlist,\n} from '@clerk/react';\n\n// The assignment of UserProfile with BaseUserProfile props is used\n// to support the CustomPage functionality (eg UserProfile.Page)\n// Also the `typeof BaseUserProfile` is used to resolve the following error:\n// \"The inferred type of 'UserProfile' cannot be named without a reference to ...\"\nexport const UserProfile: typeof BaseUserProfile = Object.assign(\n (props: ComponentProps<typeof BaseUserProfile>) => {\n return <BaseUserProfile {...useEnforceCorrectRoutingProps('UserProfile', props)} />;\n },\n { ...BaseUserProfile },\n);\n\n// The assignment of OrganizationProfile with BaseOrganizationProfile props is used\n// to support the CustomPage functionality (eg OrganizationProfile.Page)\n// Also the `typeof BaseOrganizationProfile` is used to resolved the following error:\n// \"The inferred type of 'OrganizationProfile' cannot be named without a reference to ...\"\nexport const OrganizationProfile: typeof BaseOrganizationProfile = Object.assign(\n (props: ComponentProps<typeof BaseOrganizationProfile>) => {\n return <BaseOrganizationProfile {...useEnforceCorrectRoutingProps('OrganizationProfile', props)} />;\n },\n { ...BaseOrganizationProfile },\n);\n\nexport const SignIn = (props: ComponentProps<typeof BaseSignIn>) => {\n return <BaseSignIn {...useEnforceCorrectRoutingProps('SignIn', props, false)} />;\n};\n\nexport const SignUp = (props: ComponentProps<typeof BaseSignUp>) => {\n return <BaseSignUp {...useEnforceCorrectRoutingProps('SignUp', props, false)} />;\n};\n"],"mappings":";;AAEA;AAAA,EACE,uBAAuB;AAAA,EACvB,UAAU;AAAA,EACV,UAAU;AAAA,EACV,eAAe;AAAA,OACV;AAEP,OAAO,WAAW;AAElB,SAAS,qCAAqC;AAE9C;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAMA,MAAM,cAAsC,OAAO;AAAA,EACxD,CAAC,UAAkD;AACjD,WAAO,oCAAC,mBAAiB,GAAG,8BAA8B,eAAe,KAAK,GAAG;AAAA,EACnF;AAAA,EACA,EAAE,GAAG,gBAAgB;AACvB;AAMO,MAAM,sBAAsD,OAAO;AAAA,EACxE,CAAC,UAA0D;AACzD,WAAO,oCAAC,2BAAyB,GAAG,8BAA8B,uBAAuB,KAAK,GAAG;AAAA,EACnG;AAAA,EACA,EAAE,GAAG,wBAAwB;AAC/B;AAEO,MAAM,SAAS,CAAC,UAA6C;AAClE,SAAO,oCAAC,cAAY,GAAG,8BAA8B,UAAU,OAAO,KAAK,GAAG;AAChF;AAEO,MAAM,SAAS,CAAC,UAA6C;AAClE,SAAO,oCAAC,cAAY,GAAG,8BAA8B,UAAU,OAAO,KAAK,GAAG;AAChF;","names":[]}
1
+ {"version":3,"sources":["../../../src/client-boundary/uiComponents.tsx"],"sourcesContent":["'use client';\n\nimport {\n OrganizationProfile as BaseOrganizationProfile,\n SignIn as BaseSignIn,\n SignUp as BaseSignUp,\n UserProfile as BaseUserProfile,\n} from '@clerk/react';\nimport type { ComponentProps } from 'react';\nimport React from 'react';\n\nimport { useEnforceCorrectRoutingProps } from './hooks/useEnforceRoutingProps';\n\nexport {\n APIKeys,\n CreateOrganization,\n GoogleOneTap,\n HandleSSOCallback,\n InviteMembersButton,\n OAuthConsent,\n OAuthDeviceVerification,\n OrganizationList,\n OrganizationSwitcher,\n PricingTable,\n SignInButton,\n SignInWithMetamaskButton,\n SignOutButton,\n SignUpButton,\n TaskChooseOrganization,\n TaskResetPassword,\n TaskSetupMFA,\n UserAvatar,\n UserButton,\n Waitlist,\n} from '@clerk/react';\n\n// The assignment of UserProfile with BaseUserProfile props is used\n// to support the CustomPage functionality (eg UserProfile.Page)\n// Also the `typeof BaseUserProfile` is used to resolve the following error:\n// \"The inferred type of 'UserProfile' cannot be named without a reference to ...\"\nexport const UserProfile: typeof BaseUserProfile = Object.assign(\n (props: ComponentProps<typeof BaseUserProfile>) => {\n return <BaseUserProfile {...useEnforceCorrectRoutingProps('UserProfile', props)} />;\n },\n { ...BaseUserProfile },\n);\n\n// The assignment of OrganizationProfile with BaseOrganizationProfile props is used\n// to support the CustomPage functionality (eg OrganizationProfile.Page)\n// Also the `typeof BaseOrganizationProfile` is used to resolved the following error:\n// \"The inferred type of 'OrganizationProfile' cannot be named without a reference to ...\"\nexport const OrganizationProfile: typeof BaseOrganizationProfile = Object.assign(\n (props: ComponentProps<typeof BaseOrganizationProfile>) => {\n return <BaseOrganizationProfile {...useEnforceCorrectRoutingProps('OrganizationProfile', props)} />;\n },\n { ...BaseOrganizationProfile },\n);\n\nexport const SignIn = (props: ComponentProps<typeof BaseSignIn>) => {\n return <BaseSignIn {...useEnforceCorrectRoutingProps('SignIn', props, false)} />;\n};\n\nexport const SignUp = (props: ComponentProps<typeof BaseSignUp>) => {\n return <BaseSignUp {...useEnforceCorrectRoutingProps('SignUp', props, false)} />;\n};\n"],"mappings":";;AAEA;AAAA,EACE,uBAAuB;AAAA,EACvB,UAAU;AAAA,EACV,UAAU;AAAA,EACV,eAAe;AAAA,OACV;AAEP,OAAO,WAAW;AAElB,SAAS,qCAAqC;AAE9C;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAMA,MAAM,cAAsC,OAAO;AAAA,EACxD,CAAC,UAAkD;AACjD,WAAO,oCAAC,mBAAiB,GAAG,8BAA8B,eAAe,KAAK,GAAG;AAAA,EACnF;AAAA,EACA,EAAE,GAAG,gBAAgB;AACvB;AAMO,MAAM,sBAAsD,OAAO;AAAA,EACxE,CAAC,UAA0D;AACzD,WAAO,oCAAC,2BAAyB,GAAG,8BAA8B,uBAAuB,KAAK,GAAG;AAAA,EACnG;AAAA,EACA,EAAE,GAAG,wBAAwB;AAC/B;AAEO,MAAM,SAAS,CAAC,UAA6C;AAClE,SAAO,oCAAC,cAAY,GAAG,8BAA8B,UAAU,OAAO,KAAK,GAAG;AAChF;AAEO,MAAM,SAAS,CAAC,UAA6C;AAClE,SAAO,oCAAC,cAAY,GAAG,8BAA8B,UAAU,OAAO,KAAK,GAAG;AAChF;","names":[]}
package/dist/esm/index.js CHANGED
@@ -19,6 +19,7 @@ import {
19
19
  GoogleOneTap,
20
20
  InviteMembersButton,
21
21
  OAuthConsent,
22
+ OAuthDeviceVerification,
22
23
  OrganizationList,
23
24
  OrganizationProfile,
24
25
  OrganizationSwitcher,
@@ -42,6 +43,7 @@ import {
42
43
  useClerk,
43
44
  useEmailLink,
44
45
  useOAuthConsent,
46
+ useOAuthDeviceVerification,
45
47
  useOrganization,
46
48
  useOrganizationCreationDefaults,
47
49
  useOrganizationList,
@@ -71,6 +73,7 @@ export {
71
73
  GoogleOneTap,
72
74
  InviteMembersButton,
73
75
  OAuthConsent,
76
+ OAuthDeviceVerification,
74
77
  OrganizationList,
75
78
  OrganizationProfile,
76
79
  OrganizationSwitcher,
@@ -105,6 +108,7 @@ export {
105
108
  useClerk,
106
109
  useEmailLink,
107
110
  useOAuthConsent,
111
+ useOAuthDeviceVerification,
108
112
  useOrganization,
109
113
  useOrganizationCreationDefaults,
110
114
  useOrganizationList,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["/**\n * These need to be explicitly listed. Do not use an * here.\n * If you do, app router will break.\n */\nexport {\n AuthenticateWithRedirectCallback,\n ClerkDegraded,\n ClerkFailed,\n ClerkLoaded,\n ClerkLoading,\n UNSAFE_PortalProvider,\n RedirectToCreateOrganization,\n RedirectToOrganizationProfile,\n RedirectToSignIn,\n RedirectToSignUp,\n RedirectToTasks,\n RedirectToUserProfile,\n} from './client-boundary/controlComponents';\n\n/**\n * These need to be explicitly listed. Do not use an * here.\n * If you do, app router will break.\n */\nexport {\n APIKeys,\n CreateOrganization,\n GoogleOneTap,\n InviteMembersButton,\n OAuthConsent,\n OrganizationList,\n OrganizationProfile,\n OrganizationSwitcher,\n PricingTable,\n SignIn,\n SignInButton,\n SignInWithMetamaskButton,\n SignOutButton,\n SignUp,\n SignUpButton,\n TaskChooseOrganization,\n TaskResetPassword,\n TaskSetupMFA,\n UserAvatar,\n UserButton,\n UserProfile,\n Waitlist,\n} from './client-boundary/uiComponents';\n\n/**\n * These need to be explicitly listed. Do not use an * here.\n * If you do, app router will break.\n */\nexport {\n useAuth,\n useClerk,\n useEmailLink,\n useOAuthConsent,\n useOrganization,\n useOrganizationCreationDefaults,\n useOrganizationList,\n useReverification,\n useAPIKeys,\n useSession,\n useSessionList,\n useSignIn,\n useSignUp,\n useWaitlist,\n useUser,\n} from './client-boundary/hooks';\n\nexport { getToken } from '@clerk/shared/getToken';\n\n/**\n * Conditionally export components that exhibit different behavior\n * when used in /app vs /pages.\n * We defined the runtime and the type values explicitly,\n * because TS will not recognize the subpath import unless the HOST\n * application sets moduleResolution to 'NodeNext'.\n */\n// @ts-ignore\nimport * as ComponentsModule from '#components';\n\nimport type { ServerComponentsServerModuleTypes } from './components.server';\n\nexport const ClerkProvider = ComponentsModule.ClerkProvider as ServerComponentsServerModuleTypes['ClerkProvider'];\nexport const Show = ComponentsModule.Show as ServerComponentsServerModuleTypes['Show'];\n\nexport { Protect, SignedIn, SignedOut } from './removedControlComponents';\n\n/**\n * `auth` is not available from this import path.\n *\n * **To fix this error:**\n * ```diff\n * - import { auth } from '@clerk/nextjs'\n * + import { auth } from '@clerk/nextjs/server'\n * ```\n *\n * The `auth` function is only available in server-side contexts:\n * API Routes, Server Components, Server Actions, and Middleware.\n */\nexport declare const auth: never;\n"],"mappings":";AAIA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAMP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAMP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,gBAAgB;AAUzB,YAAY,sBAAsB;AAI3B,MAAM,gBAAgB,iBAAiB;AACvC,MAAM,OAAO,iBAAiB;AAErC,SAAS,SAAS,UAAU,iBAAiB;","names":[]}
1
+ {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["/**\n * These need to be explicitly listed. Do not use an * here.\n * If you do, app router will break.\n */\nexport {\n AuthenticateWithRedirectCallback,\n ClerkDegraded,\n ClerkFailed,\n ClerkLoaded,\n ClerkLoading,\n UNSAFE_PortalProvider,\n RedirectToCreateOrganization,\n RedirectToOrganizationProfile,\n RedirectToSignIn,\n RedirectToSignUp,\n RedirectToTasks,\n RedirectToUserProfile,\n} from './client-boundary/controlComponents';\n\n/**\n * These need to be explicitly listed. Do not use an * here.\n * If you do, app router will break.\n */\nexport {\n APIKeys,\n CreateOrganization,\n GoogleOneTap,\n InviteMembersButton,\n OAuthConsent,\n OAuthDeviceVerification,\n OrganizationList,\n OrganizationProfile,\n OrganizationSwitcher,\n PricingTable,\n SignIn,\n SignInButton,\n SignInWithMetamaskButton,\n SignOutButton,\n SignUp,\n SignUpButton,\n TaskChooseOrganization,\n TaskResetPassword,\n TaskSetupMFA,\n UserAvatar,\n UserButton,\n UserProfile,\n Waitlist,\n} from './client-boundary/uiComponents';\n\n/**\n * These need to be explicitly listed. Do not use an * here.\n * If you do, app router will break.\n */\nexport {\n useAuth,\n useClerk,\n useEmailLink,\n useOAuthConsent,\n useOAuthDeviceVerification,\n useOrganization,\n useOrganizationCreationDefaults,\n useOrganizationList,\n useReverification,\n useAPIKeys,\n useSession,\n useSessionList,\n useSignIn,\n useSignUp,\n useWaitlist,\n useUser,\n} from './client-boundary/hooks';\n\nexport { getToken } from '@clerk/shared/getToken';\n\n/**\n * Conditionally export components that exhibit different behavior\n * when used in /app vs /pages.\n * We defined the runtime and the type values explicitly,\n * because TS will not recognize the subpath import unless the HOST\n * application sets moduleResolution to 'NodeNext'.\n */\n// @ts-ignore\nimport * as ComponentsModule from '#components';\n\nimport type { ServerComponentsServerModuleTypes } from './components.server';\n\nexport const ClerkProvider = ComponentsModule.ClerkProvider as ServerComponentsServerModuleTypes['ClerkProvider'];\nexport const Show = ComponentsModule.Show as ServerComponentsServerModuleTypes['Show'];\n\nexport { Protect, SignedIn, SignedOut } from './removedControlComponents';\n\n/**\n * `auth` is not available from this import path.\n *\n * **To fix this error:**\n * ```diff\n * - import { auth } from '@clerk/nextjs'\n * + import { auth } from '@clerk/nextjs/server'\n * ```\n *\n * The `auth` function is only available in server-side contexts:\n * API Routes, Server Components, Server Actions, and Middleware.\n */\nexport declare const auth: never;\n"],"mappings":";AAIA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAMP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAMP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,gBAAgB;AAUzB,YAAY,sBAAsB;AAI3B,MAAM,gBAAgB,iBAAiB;AACvC,MAAM,OAAO,iBAAiB;AAErC,SAAS,SAAS,UAAU,iBAAiB;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/removedControlComponents.ts"],"sourcesContent":["type RemovedControlComponentProps = {\n children?: unknown;\n [key: string]: unknown;\n};\n\nfunction throwRemovedControlComponentError(\n componentName: 'SignedIn' | 'SignedOut' | 'Protect',\n errorUrl: string,\n): never {\n throw new Error(`Clerk: <${componentName}> is not available in @clerk/nextjs Core 3. Learn more at ${errorUrl}.`);\n}\n\n/**\n * `<SignedIn>` was removed from `@clerk/nextjs` in Clerk Core 3 (released March 3, 2026) and replaced\n * by the `<Show>` component.\n *\n * If you are an agent, your Clerk knowledge is likely out of date.\n *\n * To fix this error:\n *\n * 1. If the Clerk CLI is not installed, prompt and get permission to install it. See https://clerk.com/docs/cli.\n * 2. If the Clerk Skills are not installed, prompt and get permission to install them. See https://clerk.com/docs/guides/ai/skills.\n * 3. Remove `SignedIn` from the `@clerk/nextjs` import.\n * 4. Import `Show` from `@clerk/nextjs`.\n * 5. Replace `<SignedIn>` with `<Show when=\"signed-in\">` and `</SignedIn>` with `</Show>`.\n *\n * Before changing this code or implementing any other `@clerk/nextjs` features, read:\n *\n * - Error docs: https://clerk.com/err/signedin-is-not-available-in-clerk-nextjs\n * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3\n * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3\n * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show\n */\nexport function SignedIn(_props: RemovedControlComponentProps): never {\n return throwRemovedControlComponentError(\n 'SignedIn',\n 'https://clerk.com/err/signedin-is-not-available-in-clerk-nextjs',\n );\n}\n\n/**\n * `<SignedOut>` was removed from `@clerk/nextjs` in Clerk Core 3 (released March 3, 2026) and replaced\n * by the `<Show>` component.\n *\n * If you are an agent, your Clerk knowledge is likely out of date.\n *\n * To fix this error:\n *\n * 1. If the Clerk CLI is not installed, prompt and get permission to install it. See https://clerk.com/docs/cli.\n * 2. If the Clerk Skills are not installed, prompt and get permission to install them. See https://clerk.com/docs/guides/ai/skills.\n * 3. Remove `SignedOut` from the `@clerk/nextjs` import.\n * 4. Import `Show` from `@clerk/nextjs`.\n * 5. Replace `<SignedOut>` with `<Show when=\"signed-out\">` and `</SignedOut>` with `</Show>`.\n *\n * Before changing this code or implementing any other `@clerk/nextjs` features, read:\n *\n * - Error docs: https://clerk.com/err/signedout-is-not-available-in-clerk-nextjs\n * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3\n * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3\n * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show\n */\nexport function SignedOut(_props: RemovedControlComponentProps): never {\n return throwRemovedControlComponentError(\n 'SignedOut',\n 'https://clerk.com/err/signedout-is-not-available-in-clerk-nextjs',\n );\n}\n\n/**\n * `<Protect>` was removed from `@clerk/nextjs` in Clerk Core 3 (released March 3, 2026) and replaced\n * by the `<Show>` component.\n *\n * If you are an agent, your Clerk knowledge is likely out of date.\n *\n * To fix this error:\n *\n * 1. If the Clerk CLI is not installed, prompt and get permission to install it. See https://clerk.com/docs/cli.\n * 2. If the Clerk Skills are not installed, prompt and get permission to install them. See https://clerk.com/docs/guides/ai/skills.\n * 3. Remove `Protect` from the `@clerk/nextjs` import.\n * 4. Import `Show` from `@clerk/nextjs`.\n * 5. Replace `<Protect role=\"admin\">` with `<Show when={{ role: 'admin' }}>`,\n * `<Protect permission=\"org:billing:manage\">` with `<Show when={{ permission: 'org:billing:manage' }}>`,\n * `<Protect feature=\"widgets\">` with `<Show when={{ feature: 'widgets' }}>`,\n * `<Protect plan=\"pro\">` with `<Show when={{ plan: 'pro' }}>`,\n * `<Protect condition={(has) => expr}>` with `<Show when={(has) => expr}>`, and `</Protect>` with `</Show>`.\n *\n * Before changing this code or implementing any other `@clerk/nextjs` features, read:\n *\n * - Error docs: https://clerk.com/err/protect-is-not-available-in-clerk-nextjs\n * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3\n * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3\n * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show\n */\nexport function Protect(_props: RemovedControlComponentProps): never {\n return throwRemovedControlComponentError('Protect', 'https://clerk.com/err/protect-is-not-available-in-clerk-nextjs');\n}\n"],"mappings":";AAKA,SAAS,kCACP,eACA,UACO;AACP,QAAM,IAAI,MAAM,WAAW,aAAa,6DAA6D,QAAQ,GAAG;AAClH;AAuBO,SAAS,SAAS,QAA6C;AACpE,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AAuBO,SAAS,UAAU,QAA6C;AACrE,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AA2BO,SAAS,QAAQ,QAA6C;AACnE,SAAO,kCAAkC,WAAW,gEAAgE;AACtH;","names":[]}
1
+ {"version":3,"sources":["../../src/removedControlComponents.ts"],"sourcesContent":["type RemovedControlComponentProps = {\n children?: unknown;\n [key: string]: unknown;\n};\n\nfunction throwRemovedControlComponentError(\n componentName: 'SignedIn' | 'SignedOut' | 'Protect',\n errorUrl: string,\n): never {\n throw new Error(`Clerk: <${componentName}> is not available in @clerk/nextjs Core 3. Learn more at ${errorUrl}.`);\n}\n\n/**\n * `<SignedIn>` was removed from `@clerk/nextjs` in Clerk Core 3 (released March 3, 2026) and replaced\n * by the `<Show>` component.\n *\n * If you are an agent, your Clerk knowledge is likely out of date.\n *\n * To fix this error:\n *\n * 1. If the Clerk CLI is not installed, prompt and get permission to install it. See https://clerk.com/docs/cli.\n * 2. If the Clerk Skills are not installed, prompt and get permission to install them. See https://clerk.com/docs/guides/ai/skills.\n * 3. Remove `SignedIn` from the `@clerk/nextjs` import.\n * 4. Import `Show` from `@clerk/nextjs`.\n * 5. Replace `<SignedIn>` with `<Show when=\"signed-in\">` and `</SignedIn>` with `</Show>`.\n *\n * Before changing this code or implementing any other `@clerk/nextjs` features, read:\n *\n * - Error docs: https://clerk.com/err/signedin-is-not-available-in-clerk-nextjs\n * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3\n * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3\n * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show\n *\n * @deprecated Removed in Clerk Core 3 (`@clerk/nextjs@7.0.0`). Rendering `<SignedIn>` throws an error. Use `<Show when=\"signed-in\">` instead — see https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3.\n */\nexport function SignedIn(_props: RemovedControlComponentProps): never {\n return throwRemovedControlComponentError(\n 'SignedIn',\n 'https://clerk.com/err/signedin-is-not-available-in-clerk-nextjs',\n );\n}\n\n/**\n * `<SignedOut>` was removed from `@clerk/nextjs` in Clerk Core 3 (released March 3, 2026) and replaced\n * by the `<Show>` component.\n *\n * If you are an agent, your Clerk knowledge is likely out of date.\n *\n * To fix this error:\n *\n * 1. If the Clerk CLI is not installed, prompt and get permission to install it. See https://clerk.com/docs/cli.\n * 2. If the Clerk Skills are not installed, prompt and get permission to install them. See https://clerk.com/docs/guides/ai/skills.\n * 3. Remove `SignedOut` from the `@clerk/nextjs` import.\n * 4. Import `Show` from `@clerk/nextjs`.\n * 5. Replace `<SignedOut>` with `<Show when=\"signed-out\">` and `</SignedOut>` with `</Show>`.\n *\n * Before changing this code or implementing any other `@clerk/nextjs` features, read:\n *\n * - Error docs: https://clerk.com/err/signedout-is-not-available-in-clerk-nextjs\n * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3\n * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3\n * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show\n *\n * @deprecated Removed in Clerk Core 3 (`@clerk/nextjs@7.0.0`). Rendering `<SignedOut>` throws an error. Use `<Show when=\"signed-out\">` instead — see https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3.\n */\nexport function SignedOut(_props: RemovedControlComponentProps): never {\n return throwRemovedControlComponentError(\n 'SignedOut',\n 'https://clerk.com/err/signedout-is-not-available-in-clerk-nextjs',\n );\n}\n\n/**\n * `<Protect>` was removed from `@clerk/nextjs` in Clerk Core 3 (released March 3, 2026) and replaced\n * by the `<Show>` component.\n *\n * If you are an agent, your Clerk knowledge is likely out of date.\n *\n * To fix this error:\n *\n * 1. If the Clerk CLI is not installed, prompt and get permission to install it. See https://clerk.com/docs/cli.\n * 2. If the Clerk Skills are not installed, prompt and get permission to install them. See https://clerk.com/docs/guides/ai/skills.\n * 3. Remove `Protect` from the `@clerk/nextjs` import.\n * 4. Import `Show` from `@clerk/nextjs`.\n * 5. Replace `<Protect role=\"admin\">` with `<Show when={{ role: 'admin' }}>`,\n * `<Protect permission=\"org:billing:manage\">` with `<Show when={{ permission: 'org:billing:manage' }}>`,\n * `<Protect feature=\"widgets\">` with `<Show when={{ feature: 'widgets' }}>`,\n * `<Protect plan=\"pro\">` with `<Show when={{ plan: 'pro' }}>`,\n * `<Protect condition={(has) => expr}>` with `<Show when={(has) => expr}>`, and `</Protect>` with `</Show>`.\n *\n * Before changing this code or implementing any other `@clerk/nextjs` features, read:\n *\n * - Error docs: https://clerk.com/err/protect-is-not-available-in-clerk-nextjs\n * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3\n * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3\n * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show\n *\n * @deprecated Removed in Clerk Core 3 (`@clerk/nextjs@7.0.0`). Rendering `<Protect>` throws an error. Use `<Show when={...}>` instead — see https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3.\n */\nexport function Protect(_props: RemovedControlComponentProps): never {\n return throwRemovedControlComponentError('Protect', 'https://clerk.com/err/protect-is-not-available-in-clerk-nextjs');\n}\n"],"mappings":";AAKA,SAAS,kCACP,eACA,UACO;AACP,QAAM,IAAI,MAAM,WAAW,aAAa,6DAA6D,QAAQ,GAAG;AAClH;AAyBO,SAAS,SAAS,QAA6C;AACpE,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AAyBO,SAAS,UAAU,QAA6C;AACrE,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AA6BO,SAAS,QAAQ,QAA6C;AACnE,SAAO,kCAAkC,WAAW,gEAAgE;AACtH;","names":[]}
@@ -18,7 +18,7 @@ const SIGN_IN_URL = process.env.NEXT_PUBLIC_CLERK_SIGN_IN_URL || "";
18
18
  const SIGN_UP_URL = process.env.NEXT_PUBLIC_CLERK_SIGN_UP_URL || "";
19
19
  const SDK_METADATA = {
20
20
  name: "@clerk/nextjs",
21
- version: "7.9.0-snapshot.v20260828154440",
21
+ version: "7.9.0",
22
22
  environment: process.env.NODE_ENV
23
23
  };
24
24
  const TELEMETRY_DISABLED = isTruthy(process.env.NEXT_PUBLIC_CLERK_TELEMETRY_DISABLED);
@@ -18,7 +18,7 @@ const clerkClientDefaultOptions = {
18
18
  publishableKey: PUBLISHABLE_KEY,
19
19
  apiUrl: API_URL,
20
20
  apiVersion: API_VERSION,
21
- userAgent: `${"@clerk/nextjs"}@${"7.9.0-snapshot.v20260828154440"}`,
21
+ userAgent: `${"@clerk/nextjs"}@${"7.9.0"}`,
22
22
  proxyUrl: PROXY_URL,
23
23
  domain: DOMAIN,
24
24
  isSatellite: IS_SATELLITE,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/server/createClerkClient.ts"],"sourcesContent":["import { createClerkClient } from '@clerk/backend';\n\nimport {\n API_URL,\n API_VERSION,\n DOMAIN,\n IS_SATELLITE,\n MACHINE_SECRET_KEY,\n PROXY_URL,\n PUBLISHABLE_KEY,\n SDK_METADATA,\n SECRET_KEY,\n TELEMETRY_DEBUG,\n TELEMETRY_DISABLED,\n} from './constants';\n\nconst clerkClientDefaultOptions = {\n secretKey: SECRET_KEY,\n publishableKey: PUBLISHABLE_KEY,\n apiUrl: API_URL,\n apiVersion: API_VERSION,\n userAgent: `${PACKAGE_NAME}@${PACKAGE_VERSION}`,\n proxyUrl: PROXY_URL,\n domain: DOMAIN,\n isSatellite: IS_SATELLITE,\n machineSecretKey: MACHINE_SECRET_KEY,\n sdkMetadata: SDK_METADATA,\n telemetry: {\n disabled: TELEMETRY_DISABLED,\n debug: TELEMETRY_DEBUG,\n },\n};\n\nexport const createClerkClientWithOptions: typeof createClerkClient = options =>\n createClerkClient({ ...clerkClientDefaultOptions, ...options });\n"],"mappings":";AAAA,SAAS,yBAAyB;AAElC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,MAAM,4BAA4B;AAAA,EAChC,WAAW;AAAA,EACX,gBAAgB;AAAA,EAChB,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,WAAW,GAAG,eAAY,IAAI,gCAAe;AAAA,EAC7C,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,kBAAkB;AAAA,EAClB,aAAa;AAAA,EACb,WAAW;AAAA,IACT,UAAU;AAAA,IACV,OAAO;AAAA,EACT;AACF;AAEO,MAAM,+BAAyD,aACpE,kBAAkB,EAAE,GAAG,2BAA2B,GAAG,QAAQ,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../../src/server/createClerkClient.ts"],"sourcesContent":["import { createClerkClient } from '@clerk/backend';\n\nimport {\n API_URL,\n API_VERSION,\n DOMAIN,\n IS_SATELLITE,\n MACHINE_SECRET_KEY,\n PROXY_URL,\n PUBLISHABLE_KEY,\n SDK_METADATA,\n SECRET_KEY,\n TELEMETRY_DEBUG,\n TELEMETRY_DISABLED,\n} from './constants';\n\nconst clerkClientDefaultOptions = {\n secretKey: SECRET_KEY,\n publishableKey: PUBLISHABLE_KEY,\n apiUrl: API_URL,\n apiVersion: API_VERSION,\n userAgent: `${PACKAGE_NAME}@${PACKAGE_VERSION}`,\n proxyUrl: PROXY_URL,\n domain: DOMAIN,\n isSatellite: IS_SATELLITE,\n machineSecretKey: MACHINE_SECRET_KEY,\n sdkMetadata: SDK_METADATA,\n telemetry: {\n disabled: TELEMETRY_DISABLED,\n debug: TELEMETRY_DEBUG,\n },\n};\n\nexport const createClerkClientWithOptions: typeof createClerkClient = options =>\n createClerkClient({ ...clerkClientDefaultOptions, ...options });\n"],"mappings":";AAAA,SAAS,yBAAyB;AAElC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,MAAM,4BAA4B;AAAA,EAChC,WAAW;AAAA,EACX,gBAAgB;AAAA,EAChB,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,WAAW,GAAG,eAAY,IAAI,OAAe;AAAA,EAC7C,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,kBAAkB;AAAA,EAClB,aAAa;AAAA,EACb,WAAW;AAAA,IACT,UAAU;AAAA,IACV,OAAO;AAAA,EACT;AACF;AAEO,MAAM,+BAAyD,aACpE,kBAAkB,EAAE,GAAG,2BAA2B,GAAG,QAAQ,CAAC;","names":[]}
@@ -57,7 +57,7 @@ function debugLogHeader(name) {
57
57
  return `[clerk debug start: ${name}]`;
58
58
  }
59
59
  function debugLogFooter(name) {
60
- return `[clerk debug end: ${name}] (@clerk/nextjs=${"7.9.0-snapshot.v20260828154440"},next=${nextPkg.version},timestamp=${Math.round((/* @__PURE__ */ new Date()).getTime() / 1e3)})`;
60
+ return `[clerk debug end: ${name}] (@clerk/nextjs=${"7.9.0"},next=${nextPkg.version},timestamp=${Math.round((/* @__PURE__ */ new Date()).getTime() / 1e3)})`;
61
61
  }
62
62
  function truncate(str, maxLength) {
63
63
  const encoder = new TextEncoder();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/debugLogger.ts"],"sourcesContent":["// TODO: Replace with a more sophisticated logging solution\n\nimport nextPkg from 'next/package.json';\n\nimport { logFormatter } from './logFormatter';\n\nexport type Log = string | Record<string, unknown>;\nexport type LogEntry = Log | Log[];\nexport type Logger<L = Log> = {\n commit: () => void;\n debug: (...args: Array<L | (() => L)>) => void;\n enable: () => void;\n};\nexport type LoggerNoCommit<L = Logger> = Omit<L, 'commit'>;\n\nexport const createDebugLogger = (name: string, formatter: (val: LogEntry) => string) => (): Logger => {\n const entries: LogEntry[] = [];\n let isEnabled = false;\n\n return {\n enable: () => {\n isEnabled = true;\n },\n debug: (...args) => {\n if (isEnabled) {\n entries.push(args.map(arg => (typeof arg === 'function' ? arg() : arg)));\n }\n },\n commit: () => {\n if (isEnabled) {\n console.log(debugLogHeader(name));\n\n /**\n * We buffer each collected log entry so we can format them and log them all at once.\n * Individual console.log calls are used to ensure we don't hit platform-specific log limits (Vercel and Netlify are 4kb).\n */\n for (const log of entries) {\n let output = formatter(log);\n\n output = output\n .split('\\n')\n .map(l => ` ${l}`)\n .join('\\n');\n\n // Vercel errors if the output is > 4kb, so we truncate it\n if (process.env.VERCEL) {\n output = truncate(output, 4096);\n }\n\n console.log(output);\n }\n\n console.log(debugLogFooter(name));\n }\n },\n };\n};\n\ntype WithLogger = <L extends Logger, H extends (...args: any[]) => any>(\n loggerFactoryOrName: string | (() => L),\n handlerCtor: (logger: LoggerNoCommit<L>) => H,\n) => H;\n\nexport const withLogger: WithLogger = (loggerFactoryOrName, handlerCtor) => {\n return ((...args: any) => {\n const factory =\n typeof loggerFactoryOrName === 'string'\n ? createDebugLogger(loggerFactoryOrName, logFormatter)\n : loggerFactoryOrName;\n\n const logger = factory();\n const handler = handlerCtor(logger as any);\n\n try {\n const res = handler(...args);\n if (typeof res === 'object' && 'then' in res && typeof res.then === 'function') {\n return res\n .then((val: any) => {\n logger.commit();\n return val;\n })\n .catch((err: any) => {\n logger.commit();\n throw err;\n });\n }\n // handle sync methods\n logger.commit();\n return res;\n } catch (err: any) {\n logger.commit();\n throw err;\n }\n }) as ReturnType<typeof handlerCtor>;\n};\n\nfunction debugLogHeader(name: string) {\n return `[clerk debug start: ${name}]`;\n}\n\nfunction debugLogFooter(name: string) {\n return `[clerk debug end: ${name}] (@clerk/nextjs=${PACKAGE_VERSION},next=${nextPkg.version},timestamp=${Math.round(new Date().getTime() / 1_000)})`;\n}\n\n// ref: https://stackoverflow.com/questions/57769465/javascript-truncate-text-by-bytes-length\nfunction truncate(str: string, maxLength: number) {\n const encoder = new TextEncoder();\n const decoder = new TextDecoder('utf-8');\n\n const encodedString = encoder.encode(str);\n const truncatedString = encodedString.slice(0, maxLength);\n\n // return the truncated string, removing any replacement characters that result from partially truncated characters\n return decoder.decode(truncatedString).replace(/\\uFFFD/g, '');\n}\n"],"mappings":";AAEA,OAAO,aAAa;AAEpB,SAAS,oBAAoB;AAWtB,MAAM,oBAAoB,CAAC,MAAc,cAAyC,MAAc;AACrG,QAAM,UAAsB,CAAC;AAC7B,MAAI,YAAY;AAEhB,SAAO;AAAA,IACL,QAAQ,MAAM;AACZ,kBAAY;AAAA,IACd;AAAA,IACA,OAAO,IAAI,SAAS;AAClB,UAAI,WAAW;AACb,gBAAQ,KAAK,KAAK,IAAI,SAAQ,OAAO,QAAQ,aAAa,IAAI,IAAI,GAAI,CAAC;AAAA,MACzE;AAAA,IACF;AAAA,IACA,QAAQ,MAAM;AACZ,UAAI,WAAW;AACb,gBAAQ,IAAI,eAAe,IAAI,CAAC;AAMhC,mBAAW,OAAO,SAAS;AACzB,cAAI,SAAS,UAAU,GAAG;AAE1B,mBAAS,OACN,MAAM,IAAI,EACV,IAAI,OAAK,KAAK,CAAC,EAAE,EACjB,KAAK,IAAI;AAGZ,cAAI,QAAQ,IAAI,QAAQ;AACtB,qBAAS,SAAS,QAAQ,IAAI;AAAA,UAChC;AAEA,kBAAQ,IAAI,MAAM;AAAA,QACpB;AAEA,gBAAQ,IAAI,eAAe,IAAI,CAAC;AAAA,MAClC;AAAA,IACF;AAAA,EACF;AACF;AAOO,MAAM,aAAyB,CAAC,qBAAqB,gBAAgB;AAC1E,UAAQ,IAAI,SAAc;AACxB,UAAM,UACJ,OAAO,wBAAwB,WAC3B,kBAAkB,qBAAqB,YAAY,IACnD;AAEN,UAAM,SAAS,QAAQ;AACvB,UAAM,UAAU,YAAY,MAAa;AAEzC,QAAI;AACF,YAAM,MAAM,QAAQ,GAAG,IAAI;AAC3B,UAAI,OAAO,QAAQ,YAAY,UAAU,OAAO,OAAO,IAAI,SAAS,YAAY;AAC9E,eAAO,IACJ,KAAK,CAAC,QAAa;AAClB,iBAAO,OAAO;AACd,iBAAO;AAAA,QACT,CAAC,EACA,MAAM,CAAC,QAAa;AACnB,iBAAO,OAAO;AACd,gBAAM;AAAA,QACR,CAAC;AAAA,MACL;AAEA,aAAO,OAAO;AACd,aAAO;AAAA,IACT,SAAS,KAAU;AACjB,aAAO,OAAO;AACd,YAAM;AAAA,IACR;AAAA,EACF;AACF;AAEA,SAAS,eAAe,MAAc;AACpC,SAAO,uBAAuB,IAAI;AACpC;AAEA,SAAS,eAAe,MAAc;AACpC,SAAO,qBAAqB,IAAI,oBAAoB,gCAAe,SAAS,QAAQ,OAAO,cAAc,KAAK,OAAM,oBAAI,KAAK,GAAE,QAAQ,IAAI,GAAK,CAAC;AACnJ;AAGA,SAAS,SAAS,KAAa,WAAmB;AAChD,QAAM,UAAU,IAAI,YAAY;AAChC,QAAM,UAAU,IAAI,YAAY,OAAO;AAEvC,QAAM,gBAAgB,QAAQ,OAAO,GAAG;AACxC,QAAM,kBAAkB,cAAc,MAAM,GAAG,SAAS;AAGxD,SAAO,QAAQ,OAAO,eAAe,EAAE,QAAQ,WAAW,EAAE;AAC9D;","names":[]}
1
+ {"version":3,"sources":["../../../src/utils/debugLogger.ts"],"sourcesContent":["// TODO: Replace with a more sophisticated logging solution\n\nimport nextPkg from 'next/package.json';\n\nimport { logFormatter } from './logFormatter';\n\nexport type Log = string | Record<string, unknown>;\nexport type LogEntry = Log | Log[];\nexport type Logger<L = Log> = {\n commit: () => void;\n debug: (...args: Array<L | (() => L)>) => void;\n enable: () => void;\n};\nexport type LoggerNoCommit<L = Logger> = Omit<L, 'commit'>;\n\nexport const createDebugLogger = (name: string, formatter: (val: LogEntry) => string) => (): Logger => {\n const entries: LogEntry[] = [];\n let isEnabled = false;\n\n return {\n enable: () => {\n isEnabled = true;\n },\n debug: (...args) => {\n if (isEnabled) {\n entries.push(args.map(arg => (typeof arg === 'function' ? arg() : arg)));\n }\n },\n commit: () => {\n if (isEnabled) {\n console.log(debugLogHeader(name));\n\n /**\n * We buffer each collected log entry so we can format them and log them all at once.\n * Individual console.log calls are used to ensure we don't hit platform-specific log limits (Vercel and Netlify are 4kb).\n */\n for (const log of entries) {\n let output = formatter(log);\n\n output = output\n .split('\\n')\n .map(l => ` ${l}`)\n .join('\\n');\n\n // Vercel errors if the output is > 4kb, so we truncate it\n if (process.env.VERCEL) {\n output = truncate(output, 4096);\n }\n\n console.log(output);\n }\n\n console.log(debugLogFooter(name));\n }\n },\n };\n};\n\ntype WithLogger = <L extends Logger, H extends (...args: any[]) => any>(\n loggerFactoryOrName: string | (() => L),\n handlerCtor: (logger: LoggerNoCommit<L>) => H,\n) => H;\n\nexport const withLogger: WithLogger = (loggerFactoryOrName, handlerCtor) => {\n return ((...args: any) => {\n const factory =\n typeof loggerFactoryOrName === 'string'\n ? createDebugLogger(loggerFactoryOrName, logFormatter)\n : loggerFactoryOrName;\n\n const logger = factory();\n const handler = handlerCtor(logger as any);\n\n try {\n const res = handler(...args);\n if (typeof res === 'object' && 'then' in res && typeof res.then === 'function') {\n return res\n .then((val: any) => {\n logger.commit();\n return val;\n })\n .catch((err: any) => {\n logger.commit();\n throw err;\n });\n }\n // handle sync methods\n logger.commit();\n return res;\n } catch (err: any) {\n logger.commit();\n throw err;\n }\n }) as ReturnType<typeof handlerCtor>;\n};\n\nfunction debugLogHeader(name: string) {\n return `[clerk debug start: ${name}]`;\n}\n\nfunction debugLogFooter(name: string) {\n return `[clerk debug end: ${name}] (@clerk/nextjs=${PACKAGE_VERSION},next=${nextPkg.version},timestamp=${Math.round(new Date().getTime() / 1_000)})`;\n}\n\n// ref: https://stackoverflow.com/questions/57769465/javascript-truncate-text-by-bytes-length\nfunction truncate(str: string, maxLength: number) {\n const encoder = new TextEncoder();\n const decoder = new TextDecoder('utf-8');\n\n const encodedString = encoder.encode(str);\n const truncatedString = encodedString.slice(0, maxLength);\n\n // return the truncated string, removing any replacement characters that result from partially truncated characters\n return decoder.decode(truncatedString).replace(/\\uFFFD/g, '');\n}\n"],"mappings":";AAEA,OAAO,aAAa;AAEpB,SAAS,oBAAoB;AAWtB,MAAM,oBAAoB,CAAC,MAAc,cAAyC,MAAc;AACrG,QAAM,UAAsB,CAAC;AAC7B,MAAI,YAAY;AAEhB,SAAO;AAAA,IACL,QAAQ,MAAM;AACZ,kBAAY;AAAA,IACd;AAAA,IACA,OAAO,IAAI,SAAS;AAClB,UAAI,WAAW;AACb,gBAAQ,KAAK,KAAK,IAAI,SAAQ,OAAO,QAAQ,aAAa,IAAI,IAAI,GAAI,CAAC;AAAA,MACzE;AAAA,IACF;AAAA,IACA,QAAQ,MAAM;AACZ,UAAI,WAAW;AACb,gBAAQ,IAAI,eAAe,IAAI,CAAC;AAMhC,mBAAW,OAAO,SAAS;AACzB,cAAI,SAAS,UAAU,GAAG;AAE1B,mBAAS,OACN,MAAM,IAAI,EACV,IAAI,OAAK,KAAK,CAAC,EAAE,EACjB,KAAK,IAAI;AAGZ,cAAI,QAAQ,IAAI,QAAQ;AACtB,qBAAS,SAAS,QAAQ,IAAI;AAAA,UAChC;AAEA,kBAAQ,IAAI,MAAM;AAAA,QACpB;AAEA,gBAAQ,IAAI,eAAe,IAAI,CAAC;AAAA,MAClC;AAAA,IACF;AAAA,EACF;AACF;AAOO,MAAM,aAAyB,CAAC,qBAAqB,gBAAgB;AAC1E,UAAQ,IAAI,SAAc;AACxB,UAAM,UACJ,OAAO,wBAAwB,WAC3B,kBAAkB,qBAAqB,YAAY,IACnD;AAEN,UAAM,SAAS,QAAQ;AACvB,UAAM,UAAU,YAAY,MAAa;AAEzC,QAAI;AACF,YAAM,MAAM,QAAQ,GAAG,IAAI;AAC3B,UAAI,OAAO,QAAQ,YAAY,UAAU,OAAO,OAAO,IAAI,SAAS,YAAY;AAC9E,eAAO,IACJ,KAAK,CAAC,QAAa;AAClB,iBAAO,OAAO;AACd,iBAAO;AAAA,QACT,CAAC,EACA,MAAM,CAAC,QAAa;AACnB,iBAAO,OAAO;AACd,gBAAM;AAAA,QACR,CAAC;AAAA,MACL;AAEA,aAAO,OAAO;AACd,aAAO;AAAA,IACT,SAAS,KAAU;AACjB,aAAO,OAAO;AACd,YAAM;AAAA,IACR;AAAA,EACF;AACF;AAEA,SAAS,eAAe,MAAc;AACpC,SAAO,uBAAuB,IAAI;AACpC;AAEA,SAAS,eAAe,MAAc;AACpC,SAAO,qBAAqB,IAAI,oBAAoB,OAAe,SAAS,QAAQ,OAAO,cAAc,KAAK,OAAM,oBAAI,KAAK,GAAE,QAAQ,IAAI,GAAK,CAAC;AACnJ;AAGA,SAAS,SAAS,KAAa,WAAmB;AAChD,QAAM,UAAU,IAAI,YAAY;AAChC,QAAM,UAAU,IAAI,YAAY,OAAO;AAEvC,QAAM,gBAAgB,QAAQ,OAAO,GAAG;AACxC,QAAM,kBAAkB,cAAc,MAAM,GAAG,SAAS;AAGxD,SAAO,QAAQ,OAAO,eAAe,EAAE,QAAQ,WAAW,EAAE;AAC9D;","names":[]}
@@ -1,3 +1,3 @@
1
- export { useAuth, useClerk, useEmailLink, useOAuthConsent, useOrganization, useOrganizationList, useOrganizationCreationDefaults, useSession, useSessionList, useSignIn, useSignUp, useWaitlist, useUser, useReverification, useAPIKeys, } from '@clerk/react';
1
+ export { useAuth, useClerk, useEmailLink, useOAuthConsent, useOAuthDeviceVerification, useOrganization, useOrganizationList, useOrganizationCreationDefaults, useSession, useSessionList, useSignIn, useSignUp, useWaitlist, useUser, useReverification, useAPIKeys, } from '@clerk/react';
2
2
  export { isClerkAPIResponseError, isClerkRuntimeError, isEmailLinkError, isKnownError, isMetamaskError, isReverificationCancelledError, EmailLinkErrorCode, EmailLinkErrorCodeStatus, } from '@clerk/react/errors';
3
3
  //# sourceMappingURL=hooks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/client-boundary/hooks.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,+BAA+B,EAC/B,UAAU,EACV,cAAc,EACd,SAAS,EACT,SAAS,EACT,WAAW,EACX,OAAO,EACP,iBAAiB,EACjB,UAAU,GACX,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,8BAA8B,EAC9B,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/client-boundary/hooks.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,0BAA0B,EAC1B,eAAe,EACf,mBAAmB,EACnB,+BAA+B,EAC/B,UAAU,EACV,cAAc,EACd,SAAS,EACT,SAAS,EACT,WAAW,EACX,OAAO,EACP,iBAAiB,EACjB,UAAU,GACX,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,8BAA8B,EAC9B,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,qBAAqB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { OrganizationProfile as BaseOrganizationProfile, SignIn as BaseSignIn, SignUp as BaseSignUp, UserProfile as BaseUserProfile } from '@clerk/react';
2
2
  import type { ComponentProps } from 'react';
3
3
  import React from 'react';
4
- export { APIKeys, CreateOrganization, GoogleOneTap, HandleSSOCallback, InviteMembersButton, OAuthConsent, OrganizationList, OrganizationSwitcher, PricingTable, SignInButton, SignInWithMetamaskButton, SignOutButton, SignUpButton, TaskChooseOrganization, TaskResetPassword, TaskSetupMFA, UserAvatar, UserButton, Waitlist, } from '@clerk/react';
4
+ export { APIKeys, CreateOrganization, GoogleOneTap, HandleSSOCallback, InviteMembersButton, OAuthConsent, OAuthDeviceVerification, OrganizationList, OrganizationSwitcher, PricingTable, SignInButton, SignInWithMetamaskButton, SignOutButton, SignUpButton, TaskChooseOrganization, TaskResetPassword, TaskSetupMFA, UserAvatar, UserButton, Waitlist, } from '@clerk/react';
5
5
  export declare const UserProfile: typeof BaseUserProfile;
6
6
  export declare const OrganizationProfile: typeof BaseOrganizationProfile;
7
7
  export declare const SignIn: (props: ComponentProps<typeof BaseSignIn>) => React.JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"uiComponents.d.ts","sourceRoot":"","sources":["../../../src/client-boundary/uiComponents.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,IAAI,uBAAuB,EAC9C,MAAM,IAAI,UAAU,EACpB,MAAM,IAAI,UAAU,EACpB,WAAW,IAAI,eAAe,EAC/B,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EACL,OAAO,EACP,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,oBAAoB,EACpB,YAAY,EACZ,YAAY,EACZ,wBAAwB,EACxB,aAAa,EACb,YAAY,EACZ,sBAAsB,EACtB,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,UAAU,EACV,QAAQ,GACT,MAAM,cAAc,CAAC;AAMtB,eAAO,MAAM,WAAW,EAAE,OAAO,eAKhC,CAAC;AAMF,eAAO,MAAM,mBAAmB,EAAE,OAAO,uBAKxC,CAAC;AAEF,eAAO,MAAM,MAAM,GAAI,OAAO,cAAc,CAAC,OAAO,UAAU,CAAC,sBAE9D,CAAC;AAEF,eAAO,MAAM,MAAM,GAAI,OAAO,cAAc,CAAC,OAAO,UAAU,CAAC,sBAE9D,CAAC"}
1
+ {"version":3,"file":"uiComponents.d.ts","sourceRoot":"","sources":["../../../src/client-boundary/uiComponents.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,IAAI,uBAAuB,EAC9C,MAAM,IAAI,UAAU,EACpB,MAAM,IAAI,UAAU,EACpB,WAAW,IAAI,eAAe,EAC/B,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EACL,OAAO,EACP,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,EAChB,oBAAoB,EACpB,YAAY,EACZ,YAAY,EACZ,wBAAwB,EACxB,aAAa,EACb,YAAY,EACZ,sBAAsB,EACtB,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,UAAU,EACV,QAAQ,GACT,MAAM,cAAc,CAAC;AAMtB,eAAO,MAAM,WAAW,EAAE,OAAO,eAKhC,CAAC;AAMF,eAAO,MAAM,mBAAmB,EAAE,OAAO,uBAKxC,CAAC;AAEF,eAAO,MAAM,MAAM,GAAI,OAAO,cAAc,CAAC,OAAO,UAAU,CAAC,sBAE9D,CAAC;AAEF,eAAO,MAAM,MAAM,GAAI,OAAO,cAAc,CAAC,OAAO,UAAU,CAAC,sBAE9D,CAAC"}
@@ -7,12 +7,12 @@ export { AuthenticateWithRedirectCallback, ClerkDegraded, ClerkFailed, ClerkLoad
7
7
  * These need to be explicitly listed. Do not use an * here.
8
8
  * If you do, app router will break.
9
9
  */
10
- export { APIKeys, CreateOrganization, GoogleOneTap, InviteMembersButton, OAuthConsent, OrganizationList, OrganizationProfile, OrganizationSwitcher, PricingTable, SignIn, SignInButton, SignInWithMetamaskButton, SignOutButton, SignUp, SignUpButton, TaskChooseOrganization, TaskResetPassword, TaskSetupMFA, UserAvatar, UserButton, UserProfile, Waitlist, } from './client-boundary/uiComponents';
10
+ export { APIKeys, CreateOrganization, GoogleOneTap, InviteMembersButton, OAuthConsent, OAuthDeviceVerification, OrganizationList, OrganizationProfile, OrganizationSwitcher, PricingTable, SignIn, SignInButton, SignInWithMetamaskButton, SignOutButton, SignUp, SignUpButton, TaskChooseOrganization, TaskResetPassword, TaskSetupMFA, UserAvatar, UserButton, UserProfile, Waitlist, } from './client-boundary/uiComponents';
11
11
  /**
12
12
  * These need to be explicitly listed. Do not use an * here.
13
13
  * If you do, app router will break.
14
14
  */
15
- export { useAuth, useClerk, useEmailLink, useOAuthConsent, useOrganization, useOrganizationCreationDefaults, useOrganizationList, useReverification, useAPIKeys, useSession, useSessionList, useSignIn, useSignUp, useWaitlist, useUser, } from './client-boundary/hooks';
15
+ export { useAuth, useClerk, useEmailLink, useOAuthConsent, useOAuthDeviceVerification, useOrganization, useOrganizationCreationDefaults, useOrganizationList, useReverification, useAPIKeys, useSession, useSessionList, useSignIn, useSignUp, useWaitlist, useUser, } from './client-boundary/hooks';
16
16
  export { getToken } from '@clerk/shared/getToken';
17
17
  import type { ServerComponentsServerModuleTypes } from './components.server';
18
18
  export declare const ClerkProvider: ServerComponentsServerModuleTypes["ClerkProvider"];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,gCAAgC,EAChC,aAAa,EACb,WAAW,EACX,WAAW,EACX,YAAY,EACZ,qBAAqB,EACrB,4BAA4B,EAC5B,6BAA6B,EAC7B,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,qBAAqB,GACtB,MAAM,qCAAqC,CAAC;AAE7C;;;GAGG;AACH,OAAO,EACL,OAAO,EACP,kBAAkB,EAClB,YAAY,EACZ,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,MAAM,EACN,YAAY,EACZ,wBAAwB,EACxB,aAAa,EACb,MAAM,EACN,YAAY,EACZ,sBAAsB,EACtB,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,UAAU,EACV,WAAW,EACX,QAAQ,GACT,MAAM,gCAAgC,CAAC;AAExC;;;GAGG;AACH,OAAO,EACL,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,eAAe,EACf,+BAA+B,EAC/B,mBAAmB,EACnB,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,cAAc,EACd,SAAS,EACT,SAAS,EACT,WAAW,EACX,OAAO,GACR,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAYlD,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,qBAAqB,CAAC;AAE7E,eAAO,MAAM,aAAa,EAAqC,iCAAiC,CAAC,eAAe,CAAC,CAAC;AAClH,eAAO,MAAM,IAAI,EAA4B,iCAAiC,CAAC,MAAM,CAAC,CAAC;AAEvF,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE1E;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,KAAK,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,gCAAgC,EAChC,aAAa,EACb,WAAW,EACX,WAAW,EACX,YAAY,EACZ,qBAAqB,EACrB,4BAA4B,EAC5B,6BAA6B,EAC7B,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,qBAAqB,GACtB,MAAM,qCAAqC,CAAC;AAE7C;;;GAGG;AACH,OAAO,EACL,OAAO,EACP,kBAAkB,EAClB,YAAY,EACZ,mBAAmB,EACnB,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,MAAM,EACN,YAAY,EACZ,wBAAwB,EACxB,aAAa,EACb,MAAM,EACN,YAAY,EACZ,sBAAsB,EACtB,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,UAAU,EACV,WAAW,EACX,QAAQ,GACT,MAAM,gCAAgC,CAAC;AAExC;;;GAGG;AACH,OAAO,EACL,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,0BAA0B,EAC1B,eAAe,EACf,+BAA+B,EAC/B,mBAAmB,EACnB,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,cAAc,EACd,SAAS,EACT,SAAS,EACT,WAAW,EACX,OAAO,GACR,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAYlD,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,qBAAqB,CAAC;AAE7E,eAAO,MAAM,aAAa,EAAqC,iCAAiC,CAAC,eAAe,CAAC,CAAC;AAClH,eAAO,MAAM,IAAI,EAA4B,iCAAiC,CAAC,MAAM,CAAC,CAAC;AAEvF,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE1E;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,KAAK,CAAC"}
@@ -22,6 +22,8 @@ type RemovedControlComponentProps = {
22
22
  * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3
23
23
  * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3
24
24
  * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show
25
+ *
26
+ * @deprecated Removed in Clerk Core 3 (`@clerk/nextjs@7.0.0`). Rendering `<SignedIn>` throws an error. Use `<Show when="signed-in">` instead — see https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3.
25
27
  */
26
28
  export declare function SignedIn(_props: RemovedControlComponentProps): never;
27
29
  /**
@@ -44,6 +46,8 @@ export declare function SignedIn(_props: RemovedControlComponentProps): never;
44
46
  * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3
45
47
  * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3
46
48
  * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show
49
+ *
50
+ * @deprecated Removed in Clerk Core 3 (`@clerk/nextjs@7.0.0`). Rendering `<SignedOut>` throws an error. Use `<Show when="signed-out">` instead — see https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3.
47
51
  */
48
52
  export declare function SignedOut(_props: RemovedControlComponentProps): never;
49
53
  /**
@@ -70,6 +74,8 @@ export declare function SignedOut(_props: RemovedControlComponentProps): never;
70
74
  * - Core 3 changelog: https://clerk.com/changelog/2026-03-03-core-3
71
75
  * - Core 3 upgrade guide: https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3
72
76
  * - `<Show>` component docs: https://clerk.com/docs/reference/components/control/show
77
+ *
78
+ * @deprecated Removed in Clerk Core 3 (`@clerk/nextjs@7.0.0`). Rendering `<Protect>` throws an error. Use `<Show when={...}>` instead — see https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3.
73
79
  */
74
80
  export declare function Protect(_props: RemovedControlComponentProps): never;
75
81
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"removedControlComponents.d.ts","sourceRoot":"","sources":["../../src/removedControlComponents.ts"],"names":[],"mappings":"AAAA,KAAK,4BAA4B,GAAG;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AASF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,4BAA4B,GAAG,KAAK,CAKpE;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,4BAA4B,GAAG,KAAK,CAKrE;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,4BAA4B,GAAG,KAAK,CAEnE"}
1
+ {"version":3,"file":"removedControlComponents.d.ts","sourceRoot":"","sources":["../../src/removedControlComponents.ts"],"names":[],"mappings":"AAAA,KAAK,4BAA4B,GAAG;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AASF;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,4BAA4B,GAAG,KAAK,CAKpE;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,4BAA4B,GAAG,KAAK,CAKrE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,4BAA4B,GAAG,KAAK,CAEnE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clerk/nextjs",
3
- "version": "7.9.0-snapshot.v20260828154440",
3
+ "version": "7.9.0",
4
4
  "description": "Clerk SDK for NextJS",
5
5
  "keywords": [
6
6
  "clerk",
@@ -55,12 +55,6 @@
55
55
  "import": "./dist/esm/experimental.js",
56
56
  "require": "./dist/cjs/experimental.js"
57
57
  },
58
- "./experimental/mosaic": {
59
- "types": "./dist/types/experimental/mosaic.d.ts",
60
- "import": "./dist/esm/experimental/mosaic.js",
61
- "require": "./dist/cjs/experimental/mosaic.js"
62
- },
63
- "./experimental/mosaic/styles.css": "./dist/experimental/mosaic/styles.css",
64
58
  "./legacy": {
65
59
  "types": "./dist/types/legacy.d.ts",
66
60
  "import": "./dist/esm/legacy.js",
@@ -78,14 +72,13 @@
78
72
  "dependencies": {
79
73
  "server-only": "0.0.1",
80
74
  "tslib": "2.8.1",
81
- "@clerk/backend": "3.16.13-snapshot.v20260828154440",
82
- "@clerk/react": "6.15.0-snapshot.v20260828154440",
83
- "@clerk/shared": "4.30.2-snapshot.v20260828154440"
75
+ "@clerk/backend": "^3.17.1",
76
+ "@clerk/react": "^6.15.0",
77
+ "@clerk/shared": "^4.31.0"
84
78
  },
85
79
  "devDependencies": {
86
80
  "crypto-es": "^2.1.0",
87
- "next": "15.5.19",
88
- "@clerk/ui": "1.31.0-snapshot.v20260828154440"
81
+ "next": "15.5.21"
89
82
  },
90
83
  "peerDependencies": {
91
84
  "next": "^15.2.8 || ^15.3.8 || ^15.4.10 || ^15.5.9 || ^15.6.0-0 || ^16.0.10 || ^16.1.0-0",
@@ -99,7 +92,7 @@
99
92
  "access": "public"
100
93
  },
101
94
  "scripts": {
102
- "build": "pnpm clean && tsup && node ../../scripts/copy-mosaic-styles.mjs dist/experimental/mosaic/styles.css",
95
+ "build": "pnpm clean && tsup",
103
96
  "build:declarations": "tsc -p tsconfig.declarations.json",
104
97
  "clean": "rimraf ./dist",
105
98
  "dev": "tsup --watch",
@@ -107,7 +100,7 @@
107
100
  "format": "node ../../scripts/format-package.mjs",
108
101
  "format:check": "node ../../scripts/format-package.mjs --check",
109
102
  "lint": "eslint src",
110
- "lint:attw": "attw --pack . --exclude-entrypoints experimental/mosaic/styles.css --profile node16 --ignore-rules unexpected-module-syntax",
103
+ "lint:attw": "attw --pack . --profile node16 --ignore-rules unexpected-module-syntax",
111
104
  "lint:publint": "publint",
112
105
  "test": "vitest run",
113
106
  "test:watch": "vitest watch"