diff --git a/.cursor/rules/monorepo.mdc b/.cursor/rules/monorepo.mdc index bd54ed9551a..f3f3f37e344 100644 --- a/.cursor/rules/monorepo.mdc +++ b/.cursor/rules/monorepo.mdc @@ -50,7 +50,6 @@ Framework-Specific Packages - `@clerk/vue` - Vue.js composables and components - `@clerk/astro` - Astro integration with SSR support - `@clerk/nuxt` - Nuxt.js module -- `@clerk/remix` - Remix loader and action utilities - `@clerk/express` - Express.js middleware - `@clerk/fastify` - Fastify plugin - `@clerk/expo` - React Native/Expo SDK diff --git a/.github/labeler.yml b/.github/labeler.yml index c84d8ae5e4d..bff68abae9c 100644 --- a/.github/labeler.yml +++ b/.github/labeler.yml @@ -39,9 +39,6 @@ react: react-router: - packages/react-router/** -remix: - - packages/remix/** - tanstack: - packages/tanstack-react-start/** diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d4c564aad40..e530cbfb531 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -209,7 +209,7 @@ jobs: matrix: include: - node-version: 20 - test-filter: '--filter=@clerk/astro --filter=@clerk/backend --filter=@clerk/express --filter=@clerk/nextjs --filter=@clerk/react --filter=@clerk/shared --filter=@clerk/remix --filter=@clerk/tanstack-react-start --filter=@clerk/elements --filter=@clerk/vue --filter=@clerk/nuxt --filter=@clerk/expo' + test-filter: '--filter=@clerk/astro --filter=@clerk/backend --filter=@clerk/express --filter=@clerk/nextjs --filter=@clerk/react --filter=@clerk/shared --filter=@clerk/tanstack-react-start --filter=@clerk/elements --filter=@clerk/vue --filter=@clerk/nuxt --filter=@clerk/expo' - node-version: 22 test-filter: '**' diff --git a/.jit/config.yml b/.jit/config.yml index 0381e46946f..1055ef4dbfc 100644 --- a/.jit/config.yml +++ b/.jit/config.yml @@ -17,9 +17,6 @@ folders: - path: /packages/react exclude: - ./**/*.test.ts - - path: /packages/remix - exclude: - - ./**/*.test.ts - path: /packages/shared exclude: - ./**/*.test.ts diff --git a/.typedoc/__tests__/__snapshots__/file-structure.test.ts.snap b/.typedoc/__tests__/__snapshots__/file-structure.test.ts.snap index 7bb7ef26f54..d853d3fd94a 100644 --- a/.typedoc/__tests__/__snapshots__/file-structure.test.ts.snap +++ b/.typedoc/__tests__/__snapshots__/file-structure.test.ts.snap @@ -174,9 +174,9 @@ exports[`Typedoc output > should have a deliberate file structure 1`] = ` "react/use-reverification.mdx", "react/use-session-list.mdx", "react/use-session.mdx", - "react/use-sign-in-signal.mdx", + "react/use-sign-in-1.mdx", "react/use-sign-in.mdx", - "react/use-sign-up-signal.mdx", + "react/use-sign-up-1.mdx", "react/use-sign-up.mdx", "react/use-user.mdx", "nextjs/auth.mdx", diff --git a/integration/templates/custom-flows-react-vite/src/routes/SignIn.tsx b/integration/templates/custom-flows-react-vite/src/routes/SignIn.tsx index 95018f661f8..27eead90579 100644 --- a/integration/templates/custom-flows-react-vite/src/routes/SignIn.tsx +++ b/integration/templates/custom-flows-react-vite/src/routes/SignIn.tsx @@ -5,15 +5,14 @@ import { Button } from '@/components/ui/button'; import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card'; import { Input } from '@/components/ui/input'; import { Label } from '@/components/ui/label'; -import { useUser } from '@clerk/react'; -import { useSignInSignal } from '@clerk/react/experimental'; +import { useSignIn, useUser } from '@clerk/react'; import { useState } from 'react'; import { NavLink, useNavigate } from 'react-router'; type AvailableStrategy = 'email_code' | 'phone_code' | 'password' | 'reset_password_email_code'; export function SignIn({ className, ...props }: React.ComponentProps<'div'>) { - const { signIn, errors, fetchStatus } = useSignInSignal(); + const { signIn, errors, fetchStatus } = useSignIn(); const [selectedStrategy, setSelectedStrategy] = useState(null); const { isSignedIn } = useUser(); const navigate = useNavigate(); diff --git a/integration/templates/custom-flows-react-vite/src/routes/SignUp.tsx b/integration/templates/custom-flows-react-vite/src/routes/SignUp.tsx index ea8836634e7..b506c46ecb0 100644 --- a/integration/templates/custom-flows-react-vite/src/routes/SignUp.tsx +++ b/integration/templates/custom-flows-react-vite/src/routes/SignUp.tsx @@ -5,11 +5,11 @@ import { Button } from '@/components/ui/button'; import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card'; import { Input } from '@/components/ui/input'; import { Label } from '@/components/ui/label'; -import { useSignUpSignal } from '@clerk/react/experimental'; +import { useSignUp } from '@clerk/react'; import { NavLink, useNavigate } from 'react-router'; export function SignUp({ className, ...props }: React.ComponentProps<'div'>) { - const { signUp, errors, fetchStatus } = useSignUpSignal(); + const { signUp, errors, fetchStatus } = useSignUp(); const navigate = useNavigate(); const handleSubmit = async (formData: FormData) => { diff --git a/integration/templates/expo-web/app/_layout.tsx b/integration/templates/expo-web/app/_layout.tsx index ae4bdc90cf0..1b8e09a6d2d 100644 --- a/integration/templates/expo-web/app/_layout.tsx +++ b/integration/templates/expo-web/app/_layout.tsx @@ -8,6 +8,7 @@ export default function RootLayout() { router.push(to)} routerReplace={to => router.replace(to)} + clerkJSUrl={process.env.EXPO_PUBLIC_CLERK_JS_URL} > diff --git a/integration/templates/expo-web/app/custom-sign-in.tsx b/integration/templates/expo-web/app/custom-sign-in.tsx index 7e9f6f8c4b6..e5dc5a10911 100644 --- a/integration/templates/expo-web/app/custom-sign-in.tsx +++ b/integration/templates/expo-web/app/custom-sign-in.tsx @@ -4,35 +4,22 @@ import { Text, TextInput, Button, View } from 'react-native'; import React from 'react'; export default function Page() { - const { signIn, setActive, isLoaded } = useSignIn(); + const { signIn } = useSignIn(); const router = useRouter(); const [emailAddress, setEmailAddress] = React.useState(''); const [password, setPassword] = React.useState(''); const onSignInPress = React.useCallback(async () => { - if (!isLoaded) { - return; - } - - try { - const signInAttempt = await signIn.create({ - identifier: emailAddress, - password, + await signIn.password({ emailAddress, password }); + if (signIn.status === 'complete') { + await signIn.finalize({ + navigate: async () => { + router.replace('/'); + }, }); - - if (signInAttempt.status === 'complete') { - await setActive({ session: signInAttempt.createdSessionId }); - router.replace('/'); - } else { - // See https://clerk.com/docs/custom-flows/error-handling - // for more info on error handling - console.error(JSON.stringify(signInAttempt, null, 2)); - } - } catch (err: any) { - console.error(JSON.stringify(err, null, 2)); } - }, [isLoaded, emailAddress, password]); + }, [emailAddress, password]); return ( diff --git a/integration/templates/expo-web/app/custom-sign-up.tsx b/integration/templates/expo-web/app/custom-sign-up.tsx index c602bc701ab..6368bc0d1cd 100644 --- a/integration/templates/expo-web/app/custom-sign-up.tsx +++ b/integration/templates/expo-web/app/custom-sign-up.tsx @@ -4,7 +4,7 @@ import { useSignUp } from '@clerk/expo'; import { useRouter } from 'expo-router'; export default function SignUpScreen() { - const { isLoaded, signUp, setActive } = useSignUp(); + const { signUp } = useSignUp(); const router = useRouter(); const [emailAddress, setEmailAddress] = React.useState(''); @@ -13,46 +13,19 @@ export default function SignUpScreen() { const [code, setCode] = React.useState(''); const onSignUpPress = async () => { - if (!isLoaded) { - return; - } - - try { - await signUp.create({ - emailAddress, - password, - }); - - await signUp.prepareEmailAddressVerification({ strategy: 'email_code' }); - - setPendingVerification(true); - } catch (err: any) { - // See https://clerk.com/docs/custom-flows/error-handling - // for more info on error handling - console.error(JSON.stringify(err, null, 2)); - } + await signUp.password({ emailAddress, password }); + await signUp.verifications.sendEmailCode({ emailAddress }); + setPendingVerification(true); }; const onPressVerify = async () => { - if (!isLoaded) { - return; - } - - try { - const completeSignUp = await signUp.attemptEmailAddressVerification({ - code, + await signUp.verifications.verifyEmailCode({ code }); + if (signUp.status === 'complete') { + await signUp.finalize({ + navigate: async () => { + router.replace('/'); + }, }); - - if (completeSignUp.status === 'complete') { - await setActive({ session: completeSignUp.createdSessionId }); - router.replace('/'); - } else { - console.error(JSON.stringify(completeSignUp, null, 2)); - } - } catch (err: any) { - // See https://clerk.com/docs/custom-flows/error-handling - // for more info on error handling - console.error(JSON.stringify(err, null, 2)); } }; diff --git a/integration/templates/expo-web/metro.config.js b/integration/templates/expo-web/metro.config.js index 7f773e7218f..2db1722958c 100644 --- a/integration/templates/expo-web/metro.config.js +++ b/integration/templates/expo-web/metro.config.js @@ -19,6 +19,10 @@ const getClerkExpoPath = () => { return clerkExpoPath.replace('file:', ''); } + if (clerkExpoPath?.startsWith('link:')) { + return clerkExpoPath.replace('link:', ''); + } + return undefined; }; diff --git a/package.json b/package.json index 551c6a8b94e..14b8c5c4a11 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "changeset": "changeset", "changeset:empty": "pnpm changeset --empty", "clean": "turbo clean", - "dev": "TURBO_UI=0 FORCE_COLOR=1 turbo dev --filter=@clerk/* --filter=!@clerk/expo --filter=!@clerk/tanstack-react-start --filter=!@clerk/elements --filter=!@clerk/remix --filter=!@clerk/chrome-extension", + "dev": "TURBO_UI=0 FORCE_COLOR=1 turbo dev --filter=@clerk/* --filter=!@clerk/expo --filter=!@clerk/tanstack-react-start --filter=!@clerk/elements --filter=!@clerk/chrome-extension", "dev:js": "TURBO_UI=0 FORCE_COLOR=1 turbo dev:current --filter=@clerk/clerk-js", "format": "turbo format && node scripts/format-non-workspace.mjs", "format:check": "turbo format:check && node scripts/format-non-workspace.mjs --check", diff --git a/packages/expo/package.json b/packages/expo/package.json index 3f5dabc7f7e..b2ff91c4209 100644 --- a/packages/expo/package.json +++ b/packages/expo/package.json @@ -55,6 +55,10 @@ "./experimental": { "types": "./dist/experimental.d.ts", "default": "./dist/experimental.js" + }, + "./legacy": { + "types": "./dist/legacy.d.ts", + "default": "./dist/legacy.js" } }, "main": "./dist/index.js", @@ -67,7 +71,9 @@ "passkeys", "secure-store", "resource-cache", - "token-cache" + "token-cache", + "experimental", + "legacy" ], "scripts": { "build": "tsup", diff --git a/packages/expo/src/experimental.ts b/packages/expo/src/experimental.ts index 8c68b8bc409..cb0ff5c3b54 100644 --- a/packages/expo/src/experimental.ts +++ b/packages/expo/src/experimental.ts @@ -1 +1 @@ -export { useSignInSignal, useSignUpSignal } from '@clerk/react/experimental'; +export {}; diff --git a/packages/expo/src/hooks/useOAuth.ts b/packages/expo/src/hooks/useOAuth.ts index a2f76177724..a70d1213dc6 100644 --- a/packages/expo/src/hooks/useOAuth.ts +++ b/packages/expo/src/hooks/useOAuth.ts @@ -1,4 +1,4 @@ -import { useSignIn, useSignUp } from '@clerk/react'; +import { useSignIn, useSignUp } from '@clerk/react/legacy'; import type { OAuthStrategy, SetActive, SignInResource, SignUpResource } from '@clerk/types'; import * as AuthSession from 'expo-auth-session'; import * as WebBrowser from 'expo-web-browser'; diff --git a/packages/expo/src/hooks/useSSO.ts b/packages/expo/src/hooks/useSSO.ts index 9eb92f08735..3af17dec62a 100644 --- a/packages/expo/src/hooks/useSSO.ts +++ b/packages/expo/src/hooks/useSSO.ts @@ -1,4 +1,4 @@ -import { useSignIn, useSignUp } from '@clerk/react'; +import { useSignIn, useSignUp } from '@clerk/react/legacy'; import type { EnterpriseSSOStrategy, OAuthStrategy, SetActive, SignInResource, SignUpResource } from '@clerk/types'; import * as AuthSession from 'expo-auth-session'; import * as WebBrowser from 'expo-web-browser'; diff --git a/packages/expo/src/legacy.ts b/packages/expo/src/legacy.ts new file mode 100644 index 00000000000..47b681915bb --- /dev/null +++ b/packages/expo/src/legacy.ts @@ -0,0 +1 @@ +export { useSignIn, useSignUp } from '@clerk/react/legacy'; diff --git a/packages/expo/src/local-credentials/useLocalCredentials/useLocalCredentials.ts b/packages/expo/src/local-credentials/useLocalCredentials/useLocalCredentials.ts index 44c42349c82..dcd3c055a7e 100644 --- a/packages/expo/src/local-credentials/useLocalCredentials/useLocalCredentials.ts +++ b/packages/expo/src/local-credentials/useLocalCredentials/useLocalCredentials.ts @@ -1,4 +1,5 @@ -import { useClerk, useSignIn, useUser } from '@clerk/react'; +import { useClerk, useUser } from '@clerk/react'; +import { useSignIn } from '@clerk/react/legacy'; import type { SignInResource } from '@clerk/types'; import { AuthenticationType, isEnrolledAsync, supportedAuthenticationTypesAsync } from 'expo-local-authentication'; import { diff --git a/packages/nextjs/package.json b/packages/nextjs/package.json index 7d379c634fd..646fb2ea3a8 100644 --- a/packages/nextjs/package.json +++ b/packages/nextjs/package.json @@ -54,6 +54,11 @@ "types": "./dist/types/experimental.d.ts", "import": "./dist/esm/experimental.js", "require": "./dist/cjs/experimental.js" + }, + "./legacy": { + "types": "./dist/types/legacy.d.ts", + "import": "./dist/esm/legacy.js", + "require": "./dist/cjs/legacy.js" } }, "types": "./dist/types/index.d.ts", diff --git a/packages/nextjs/src/legacy.ts b/packages/nextjs/src/legacy.ts new file mode 100644 index 00000000000..47b681915bb --- /dev/null +++ b/packages/nextjs/src/legacy.ts @@ -0,0 +1 @@ +export { useSignIn, useSignUp } from '@clerk/react/legacy'; diff --git a/packages/react-router/package.json b/packages/react-router/package.json index f01ecb7160d..57bf7789603 100644 --- a/packages/react-router/package.json +++ b/packages/react-router/package.json @@ -49,6 +49,10 @@ "./webhooks": { "types": "./dist/webhooks.d.ts", "default": "./dist/webhooks.js" + }, + "./legacy": { + "types": "./dist/legacy.d.ts", + "default": "./dist/legacy.js" } }, "main": "dist/index.js", diff --git a/packages/react-router/src/__tests__/__snapshots__/exports.test.ts.snap b/packages/react-router/src/__tests__/__snapshots__/exports.test.ts.snap index 53f3377ed94..8b268b93a36 100644 --- a/packages/react-router/src/__tests__/__snapshots__/exports.test.ts.snap +++ b/packages/react-router/src/__tests__/__snapshots__/exports.test.ts.snap @@ -7,6 +7,13 @@ exports[`deprecated ssr public exports > should not change unexpectedly 1`] = ` ] `; +exports[`legacy public exports > should not change unexpectedly 1`] = ` +[ + "useSignIn", + "useSignUp", +] +`; + exports[`root public exports > should not change unexpectedly 1`] = ` [ "APIKeys", diff --git a/packages/react-router/src/__tests__/exports.test.ts b/packages/react-router/src/__tests__/exports.test.ts index 1d9551d96c7..5d1dfc167f7 100644 --- a/packages/react-router/src/__tests__/exports.test.ts +++ b/packages/react-router/src/__tests__/exports.test.ts @@ -2,6 +2,7 @@ import { logger } from '@clerk/shared/logger'; import { vi } from 'vitest'; import * as publicExports from '../index'; +import * as legacyExports from '../legacy'; import * as serverExports from '../server/index'; describe('root public exports', () => { @@ -25,3 +26,9 @@ describe('deprecated ssr public exports', () => { warnOnceSpy.mockRestore(); }); }); + +describe('legacy public exports', () => { + it('should not change unexpectedly', () => { + expect(Object.keys(legacyExports).sort()).toMatchSnapshot(); + }); +}); diff --git a/packages/react-router/src/legacy.ts b/packages/react-router/src/legacy.ts new file mode 100644 index 00000000000..47b681915bb --- /dev/null +++ b/packages/react-router/src/legacy.ts @@ -0,0 +1 @@ +export { useSignIn, useSignUp } from '@clerk/react/legacy'; diff --git a/packages/react/docs/use-sign-in.md b/packages/react/docs/legacy-use-sign-in.md similarity index 87% rename from packages/react/docs/use-sign-in.md rename to packages/react/docs/legacy-use-sign-in.md index 55100d7e212..99a807ab76d 100644 --- a/packages/react/docs/use-sign-in.md +++ b/packages/react/docs/legacy-use-sign-in.md @@ -3,7 +3,7 @@ ```tsx {{ filename: 'app/sign-in/page.tsx' }} 'use client'; -import { useSignIn } from '@clerk/nextjs'; +import { useSignIn } from '@clerk/nextjs/legacy'; export default function SignInPage() { const { isLoaded, signIn } = useSignIn(); diff --git a/packages/react/docs/use-sign-up.md b/packages/react/docs/legacy-use-sign-up.md similarity index 87% rename from packages/react/docs/use-sign-up.md rename to packages/react/docs/legacy-use-sign-up.md index 53d1cb10289..79a1807bb25 100644 --- a/packages/react/docs/use-sign-up.md +++ b/packages/react/docs/legacy-use-sign-up.md @@ -3,7 +3,7 @@ ```tsx {{ filename: 'app/sign-up/page.tsx' }} 'use client'; -import { useSignUp } from '@clerk/nextjs'; +import { useSignUp } from '@clerk/nextjs/legacy'; export default function SignUpPage() { const { isLoaded, signUp } = useSignUp(); diff --git a/packages/react/package.json b/packages/react/package.json index 7ea2acc11f5..61843a6c0f1 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -63,6 +63,16 @@ "default": "./dist/experimental.js" } }, + "./legacy": { + "import": { + "types": "./dist/legacy.d.mts", + "default": "./dist/legacy.mjs" + }, + "require": { + "types": "./dist/legacy.d.ts", + "default": "./dist/legacy.js" + } + }, "./package.json": "./package.json" }, "main": "./dist/index.js", @@ -70,7 +80,8 @@ "dist", "internal", "errors", - "experimental" + "experimental", + "legacy" ], "scripts": { "build": "tsup", diff --git a/packages/react/src/experimental.ts b/packages/react/src/experimental.ts index 4926de9ffcb..a0378d0fb80 100644 --- a/packages/react/src/experimental.ts +++ b/packages/react/src/experimental.ts @@ -1,7 +1,6 @@ export { CheckoutButton } from './components/CheckoutButton'; export { PlanDetailsButton } from './components/PlanDetailsButton'; export { SubscriptionDetailsButton } from './components/SubscriptionDetailsButton'; -export { useSignInSignal, useSignUpSignal } from './hooks/useClerkSignal'; export type { __experimental_CheckoutButtonProps as CheckoutButtonProps, diff --git a/packages/react/src/hooks/index.ts b/packages/react/src/hooks/index.ts index 824dedaade5..8beaba1c56f 100644 --- a/packages/react/src/hooks/index.ts +++ b/packages/react/src/hooks/index.ts @@ -1,7 +1,6 @@ export { useAuth } from './useAuth'; export { useEmailLink } from './useEmailLink'; -export { useSignIn } from './useSignIn'; -export { useSignUp } from './useSignUp'; +export { useSignIn, useSignUp } from './useClerkSignal'; export { useClerk, useOrganization, diff --git a/packages/react/src/hooks/useSignIn.ts b/packages/react/src/hooks/legacy/useSignIn.ts similarity index 91% rename from packages/react/src/hooks/useSignIn.ts rename to packages/react/src/hooks/legacy/useSignIn.ts index 00950a93904..9ad773e1dc8 100644 --- a/packages/react/src/hooks/useSignIn.ts +++ b/packages/react/src/hooks/legacy/useSignIn.ts @@ -2,8 +2,8 @@ import { useClientContext } from '@clerk/shared/react'; import { eventMethodCalled } from '@clerk/shared/telemetry'; import type { UseSignInReturn } from '@clerk/types'; -import { useIsomorphicClerkContext } from '../contexts/IsomorphicClerkContext'; -import { useAssertWrappedByClerkProvider } from './useAssertWrappedByClerkProvider'; +import { useIsomorphicClerkContext } from '../../contexts/IsomorphicClerkContext'; +import { useAssertWrappedByClerkProvider } from '../useAssertWrappedByClerkProvider'; /** * The `useSignIn()` hook provides access to the [`SignIn`](https://clerk.com/docs/reference/javascript/sign-in) object, which allows you to check the current state of a sign-in attempt and manage the sign-in flow. You can use this to create a [custom sign-in flow](https://clerk.com/docs/guides/development/custom-flows/overview#sign-in-flow). @@ -37,7 +37,7 @@ import { useAssertWrappedByClerkProvider } from './useAssertWrappedByClerkProvid * * * - * {@include ../../docs/use-sign-in.md#nextjs-01} + * {@include ../../../docs/legacy-use-sign-in.md#nextjs-01} * * * diff --git a/packages/react/src/hooks/useSignUp.ts b/packages/react/src/hooks/legacy/useSignUp.ts similarity index 91% rename from packages/react/src/hooks/useSignUp.ts rename to packages/react/src/hooks/legacy/useSignUp.ts index 978e45f6f2c..acd17a60c04 100644 --- a/packages/react/src/hooks/useSignUp.ts +++ b/packages/react/src/hooks/legacy/useSignUp.ts @@ -2,8 +2,8 @@ import { useClientContext } from '@clerk/shared/react'; import { eventMethodCalled } from '@clerk/shared/telemetry'; import type { UseSignUpReturn } from '@clerk/types'; -import { useIsomorphicClerkContext } from '../contexts/IsomorphicClerkContext'; -import { useAssertWrappedByClerkProvider } from './useAssertWrappedByClerkProvider'; +import { useIsomorphicClerkContext } from '../../contexts/IsomorphicClerkContext'; +import { useAssertWrappedByClerkProvider } from '../useAssertWrappedByClerkProvider'; /** * The `useSignUp()` hook provides access to the [`SignUp`](https://clerk.com/docs/reference/javascript/sign-up) object, which allows you to check the current state of a sign-up attempt and manage the sign-up flow. You can use this to create a [custom sign-up flow](https://clerk.com/docs/guides/development/custom-flows/overview#sign-up-flow). @@ -37,7 +37,7 @@ import { useAssertWrappedByClerkProvider } from './useAssertWrappedByClerkProvid * * * - * {@include ../../docs/use-sign-up.md#nextjs-01} + * {@include ../../../docs/legacy-use-sign-up.md#nextjs-01} * * * diff --git a/packages/react/src/hooks/useClerkSignal.ts b/packages/react/src/hooks/useClerkSignal.ts index 72cd925f62a..96ff8f30011 100644 --- a/packages/react/src/hooks/useClerkSignal.ts +++ b/packages/react/src/hooks/useClerkSignal.ts @@ -62,7 +62,7 @@ function useClerkSignal(signal: 'signIn' | 'signUp'): SignInSignalValue | SignUp * * @experimental This experimental API is subject to change. */ -export function useSignInSignal() { +export function useSignIn() { return useClerkSignal('signIn'); } @@ -79,6 +79,6 @@ export function useSignInSignal() { * * @experimental This experimental API is subject to change. */ -export function useSignUpSignal() { +export function useSignUp() { return useClerkSignal('signUp'); } diff --git a/packages/react/src/legacy.ts b/packages/react/src/legacy.ts new file mode 100644 index 00000000000..5c8cb9b04c2 --- /dev/null +++ b/packages/react/src/legacy.ts @@ -0,0 +1,2 @@ +export { useSignIn } from './hooks/legacy/useSignIn'; +export { useSignUp } from './hooks/legacy/useSignUp'; diff --git a/packages/react/tsup.config.ts b/packages/react/tsup.config.ts index 303481e3869..b529ea7ff08 100644 --- a/packages/react/tsup.config.ts +++ b/packages/react/tsup.config.ts @@ -13,6 +13,7 @@ export default defineConfig(overrideOptions => { internal: 'src/internal.ts', errors: 'src/errors.ts', experimental: 'src/experimental.ts', + legacy: 'src/legacy.ts', }, dts: true, onSuccess: shouldPublish ? 'pnpm publish:local' : undefined, diff --git a/packages/react/typedoc.json b/packages/react/typedoc.json index 2d417a9b83f..baefe75b63e 100644 --- a/packages/react/typedoc.json +++ b/packages/react/typedoc.json @@ -1,4 +1,4 @@ { "$schema": "https://typedoc.org/schema.json", - "entryPoints": ["./src/index.ts", "./src/experimental.ts"] + "entryPoints": ["./src/index.ts", "./src/experimental.ts", "./src/legacy.ts"] } diff --git a/packages/remix/CHANGELOG.md b/packages/remix/CHANGELOG.md deleted file mode 100644 index c03ae595916..00000000000 --- a/packages/remix/CHANGELOG.md +++ /dev/null @@ -1,3921 +0,0 @@ -# Change Log - -## 4.13.3 - -### Patch Changes - -- Updated dependencies [[`fba4781`](https://github.com/clerk/javascript/commit/fba4781ff2a2d16f8934029fa6fb77d70953f2be), [`a1f6714`](https://github.com/clerk/javascript/commit/a1f671480cda6f978db059ba0640d4ed8b08f112)]: - - @clerk/types@4.92.0 - - @clerk/clerk-react@5.51.0 - - @clerk/backend@2.17.2 - - @clerk/shared@3.27.3 - -## 4.13.2 - -### Patch Changes - -- Updated dependencies [[`04cba7d`](https://github.com/clerk/javascript/commit/04cba7d34f91dc28f9c957bba8231c6942f657e3), [`f737d26`](https://github.com/clerk/javascript/commit/f737d268aa167889a4f3f7aba2658c2ba1fd909a), [`8777f35`](https://github.com/clerk/javascript/commit/8777f350f5fb51413609a53d9de05b2e5d1d7cfe), [`2c0128b`](https://github.com/clerk/javascript/commit/2c0128b05ecf48748f27f10f0b0215a279ba6cc1)]: - - @clerk/backend@2.17.1 - - @clerk/clerk-react@5.50.0 - - @clerk/types@4.91.0 - - @clerk/shared@3.27.2 - -## 4.13.1 - -### Patch Changes - -- Updated dependencies [[`ea2bc26`](https://github.com/clerk/javascript/commit/ea2bc260fadac8fd7480cd476046f5a06c0d917d), [`37028ca`](https://github.com/clerk/javascript/commit/37028caad59cb0081ac74e70a44e4a419082a999)]: - - @clerk/backend@2.17.0 - - @clerk/types@4.90.0 - - @clerk/clerk-react@5.49.1 - - @clerk/shared@3.27.1 - -## 4.13.0 - -### Minor Changes - -- Add new component ([#6808](https://github.com/clerk/javascript/pull/6808)) by [@tmilewski](https://github.com/tmilewski) - -### Patch Changes - -- Updated dependencies [[`e3e77eb`](https://github.com/clerk/javascript/commit/e3e77eb277c6b36847265db7b863c418e3708ab6), [`9cf89cd`](https://github.com/clerk/javascript/commit/9cf89cd3402c278e8d5bfcd8277cee292bc45333), [`090ca74`](https://github.com/clerk/javascript/commit/090ca742c590bc4f369cf3e1ca2ec9917410ffe4), [`b8fbadd`](https://github.com/clerk/javascript/commit/b8fbadd95652b08ecea23fdbc7e352e3e7297b2d), [`5546352`](https://github.com/clerk/javascript/commit/55463527df9a710ef3215c353bab1ef423d1de62)]: - - @clerk/backend@2.16.0 - - @clerk/shared@3.27.0 - - @clerk/clerk-react@5.49.0 - - @clerk/types@4.89.0 - -## 4.12.2 - -### Patch Changes - -- Updated dependencies [[`8d1514a`](https://github.com/clerk/javascript/commit/8d1514a99743ec64d2a05de7f01dd9081e02bd0d), [`a8ba926`](https://github.com/clerk/javascript/commit/a8ba926109704e31b097f3545e61910abc76d99a), [`41e0a41`](https://github.com/clerk/javascript/commit/41e0a4190b33dd2c4bdc0d536bbe83fcf99af9b0), [`1aa9e9f`](https://github.com/clerk/javascript/commit/1aa9e9f10c051319e9ff4b1a0ecd71507bd6a6aa), [`1ad3b92`](https://github.com/clerk/javascript/commit/1ad3b92019361bc3350e429a840aa0dd4d0be089), [`a88ee58`](https://github.com/clerk/javascript/commit/a88ee5827adee0cc8a62246d03a3034d8566fe21), [`d6c7bbb`](https://github.com/clerk/javascript/commit/d6c7bbba23f38c0b3ca7edebb53028a05c7b38e6)]: - - @clerk/backend@2.15.0 - - @clerk/shared@3.26.1 - - @clerk/clerk-react@5.48.1 - - @clerk/types@4.88.0 - -## 4.12.1 - -### Patch Changes - -- Updated dependencies [[`bcf24f2`](https://github.com/clerk/javascript/commit/bcf24f2f91913fa0dd3fbf02b3bbef345c4e1ea9), [`0006c82`](https://github.com/clerk/javascript/commit/0006c82fb023f4fc39e49350b5440940dcf6deba), [`7c976b4`](https://github.com/clerk/javascript/commit/7c976b4da2dc621e872846097723291dab09476f), [`1ceedad`](https://github.com/clerk/javascript/commit/1ceedad4bc5bc3d5f01c95185f82ff0f43983cf5), [`de90ede`](https://github.com/clerk/javascript/commit/de90ede82664b58bef9e294498384cf2c99a331e), [`9d4a95c`](https://github.com/clerk/javascript/commit/9d4a95c766396a0bc327fbf0560228bedb4828eb), [`428cd57`](https://github.com/clerk/javascript/commit/428cd57a8581a58a6a42325ec50eb98000068e97)]: - - @clerk/clerk-react@5.48.0 - - @clerk/types@4.87.0 - - @clerk/backend@2.14.1 - - @clerk/shared@3.26.0 - -## 4.12.0 - -### Minor Changes - -- Add deprecation warning for maintenance mode. Please use `@clerk/react-router` package instead. ([#6744](https://github.com/clerk/javascript/pull/6744)) by [@wobsoriano](https://github.com/wobsoriano) - - Migration guide: https://reactrouter.com/upgrading/remix - React Router SDK: https://clerk.com/docs/quickstarts/react-router - -- Remove `machineSecretKey` option. Please migrate to `@clerk/react-router` instead. ([#6749](https://github.com/clerk/javascript/pull/6749)) by [@wobsoriano](https://github.com/wobsoriano) - - Migration guide: https://reactrouter.com/upgrading/remix - React Router SDK: https://clerk.com/docs/quickstarts/react-router - -- [Billing Beta] Drop experimental `subscriptions` property from params of `useOrganization()`. Use [`useSubscription()`](https://clerk.com/docs/nextjs/hooks/use-subscription) instead. ([#6738](https://github.com/clerk/javascript/pull/6738)) by [@mauricioabreu](https://github.com/mauricioabreu) - -### Patch Changes - -- Updated dependencies [[`b598581`](https://github.com/clerk/javascript/commit/b598581ae673ca42fac713ee9e1a0f04b56cb8de), [`19f18f8`](https://github.com/clerk/javascript/commit/19f18f818d7c69eb2ecd27b727c403e9b00f4401), [`23948dc`](https://github.com/clerk/javascript/commit/23948dc777ec6a17bafbae59c253a93143b0e105), [`7382e13`](https://github.com/clerk/javascript/commit/7382e1384a67a2648e077d9ce677eb5424987322), [`24d0742`](https://github.com/clerk/javascript/commit/24d0742ec8453ab7ca01e81e7b4b15eed014ab81), [`82b84fe`](https://github.com/clerk/javascript/commit/82b84fed5f207673071ba7354a17f4a76e101201), [`54b4b5a`](https://github.com/clerk/javascript/commit/54b4b5a5f811f612fadf5c47ffda94a750c57a5e), [`50a8622`](https://github.com/clerk/javascript/commit/50a8622c3579306f15e5d40e5ea72b4fe4384ef7), [`939df73`](https://github.com/clerk/javascript/commit/939df73f393eefcf930481ee6f5c7f913e2e26b3), [`23948dc`](https://github.com/clerk/javascript/commit/23948dc777ec6a17bafbae59c253a93143b0e105)]: - - @clerk/backend@2.14.0 - - @clerk/types@4.86.0 - - @clerk/shared@3.25.0 - - @clerk/clerk-react@5.47.0 - -## 4.11.10 - -### Patch Changes - -- Updated dependencies [[`55490c3`](https://github.com/clerk/javascript/commit/55490c31fadc82bdca6cd5f2b22e5e158aaba0cb), [`e8d21de`](https://github.com/clerk/javascript/commit/e8d21de39b591973dad48fc1d1851c4d28b162fe), [`63fa204`](https://github.com/clerk/javascript/commit/63fa2042b821096d4f962832ff3c10ad1b7ddf0e), [`4a5bd7a`](https://github.com/clerk/javascript/commit/4a5bd7a4d9e96c89af07db69fc140ca2adb87f08), [`637f2e8`](https://github.com/clerk/javascript/commit/637f2e8768b76aaf756062b6b5b44bf651f66789)]: - - @clerk/types@4.85.0 - - @clerk/backend@2.13.0 - - @clerk/clerk-react@5.46.2 - - @clerk/shared@3.24.2 - -## 4.11.9 - -### Patch Changes - -- Updated dependencies [[`fced4fc`](https://github.com/clerk/javascript/commit/fced4fc869bb21c77826dfaf281b6640e0f0c006), [`9796fbf`](https://github.com/clerk/javascript/commit/9796fbf57494e108bdb531accc26bdb8e54e59f9), [`f28179b`](https://github.com/clerk/javascript/commit/f28179b30102550cc5601fcd22da7ca9a90959ee), [`e6e19d2`](https://github.com/clerk/javascript/commit/e6e19d2d2f3b2c4617b25f53830216a1d550e616), [`1b1e8b1`](https://github.com/clerk/javascript/commit/1b1e8b1fd33b787f956b17b193e5fd0a4cdc6cec)]: - - @clerk/types@4.84.1 - - @clerk/clerk-react@5.46.1 - - @clerk/shared@3.24.1 - - @clerk/backend@2.12.1 - -## 4.11.8 - -### Patch Changes - -- Updated dependencies [[`c1049f0`](https://github.com/clerk/javascript/commit/c1049f0956b9821a1a177c4be64c748122b0f084), [`5e94f0a`](https://github.com/clerk/javascript/commit/5e94f0a87cfcfb6407b916bd72f15a2d7dcc2406)]: - - @clerk/backend@2.12.0 - -## 4.11.7 - -### Patch Changes - -- Updated dependencies [[`2a82737`](https://github.com/clerk/javascript/commit/2a8273705b9764e1a4613d5a0dbb738d0b156c05), [`cda5d7b`](https://github.com/clerk/javascript/commit/cda5d7b79b28dc03ec794ea54e0feb64b148cdd2), [`ba25a5b`](https://github.com/clerk/javascript/commit/ba25a5b5a3fa686a65f52e221d9d1712a389fea9), [`a50cfc8`](https://github.com/clerk/javascript/commit/a50cfc8f1dd168b436499e32fc8b0fc41d28bbff), [`377f67b`](https://github.com/clerk/javascript/commit/377f67b8e552d1a19efbe4530e9306675b7f8eab), [`65b12ee`](https://github.com/clerk/javascript/commit/65b12eeeb57ee80cdd8c36c5949d51f1227a413e), [`263722e`](https://github.com/clerk/javascript/commit/263722e61fd27403b4c8d9794880686771e123f9), [`c19f936`](https://github.com/clerk/javascript/commit/c19f93603d6c52c5f62fe4a36fe53845424fd0ad)]: - - @clerk/clerk-react@5.46.0 - - @clerk/types@4.84.0 - - @clerk/shared@3.24.0 - - @clerk/backend@2.11.0 - -## 4.11.6 - -### Patch Changes - -- Updated dependencies [[`600c648`](https://github.com/clerk/javascript/commit/600c648d4087a823341041c90018797fbc0033f0)]: - - @clerk/shared@3.23.0 - - @clerk/clerk-react@5.45.0 - - @clerk/types@4.83.0 - - @clerk/backend@2.10.1 - -## 4.11.5 - -### Patch Changes - -- Updated dependencies [[`f49ec31`](https://github.com/clerk/javascript/commit/f49ec3167df8e85344963c1f952d9b886946f127), [`d52714e`](https://github.com/clerk/javascript/commit/d52714e4cb7f369c74826cd4341c58eb1900abe4), [`822e4a1`](https://github.com/clerk/javascript/commit/822e4a19c1ad29309cf6bf91ca1fbbac4464a62b), [`ce49740`](https://github.com/clerk/javascript/commit/ce49740d474d6dd9da5096982ea4e9f14cf68f09), [`ba7f3fd`](https://github.com/clerk/javascript/commit/ba7f3fd71a0a925dfe0fb3b30648df666714d6b8), [`9036427`](https://github.com/clerk/javascript/commit/903642793ae205c5e5d9e9d22ff3e95665641871), [`2ed539c`](https://github.com/clerk/javascript/commit/2ed539cc7f08ed4d70c33621563ad386ea8becc5), [`deaafe4`](https://github.com/clerk/javascript/commit/deaafe449773632d690aa2f8cafaf959392622b9), [`a26ecae`](https://github.com/clerk/javascript/commit/a26ecae09fd06cd34f094262f038a8eefbb23f7d), [`c16a7a5`](https://github.com/clerk/javascript/commit/c16a7a5837fc15e0e044baf9c809b8da6fbac795), [`05b6d65`](https://github.com/clerk/javascript/commit/05b6d65c0bc5736443325a5defee4c263ef196af), [`453cf86`](https://github.com/clerk/javascript/commit/453cf86381c5df6684b37b003984a6fafc443fb4)]: - - @clerk/backend@2.10.0 - - @clerk/clerk-react@5.44.0 - - @clerk/types@4.82.0 - - @clerk/shared@3.22.1 - -## 4.11.4 - -### Patch Changes - -- Updated dependencies [[`e52bf8e`](https://github.com/clerk/javascript/commit/e52bf8ebef74a9e123c69b69acde1340c01d32d7), [`c043c19`](https://github.com/clerk/javascript/commit/c043c1919854aaa5b9cf7f6df5bb517f5617f7a1), [`7bb644a`](https://github.com/clerk/javascript/commit/7bb644ad8a7bf28c6010aad6ae0c36f587529fcc), [`c28d29c`](https://github.com/clerk/javascript/commit/c28d29c79bb4f144d782313ca72df7db91a77340), [`172e054`](https://github.com/clerk/javascript/commit/172e054a3511be12d16ba19037db320c2d9838bf)]: - - @clerk/types@4.81.0 - - @clerk/backend@2.9.4 - - @clerk/clerk-react@5.43.1 - - @clerk/shared@3.22.0 - -## 4.11.3 - -### Patch Changes - -- Updated dependencies [[`8dc6bad`](https://github.com/clerk/javascript/commit/8dc6bad5c7051b59bd8c73e65d497f6a974bb1c3), [`aa6a3c3`](https://github.com/clerk/javascript/commit/aa6a3c3d3ba2de67a468c996cbf0bff43a09ddb8), [`db50c47`](https://github.com/clerk/javascript/commit/db50c4734920ada6002de8c62c994047eb6cb5a0)]: - - @clerk/types@4.80.0 - - @clerk/clerk-react@5.43.0 - - @clerk/backend@2.9.3 - - @clerk/shared@3.21.2 - -## 4.11.2 - -### Patch Changes - -- Updated dependencies [[`413468c`](https://github.com/clerk/javascript/commit/413468c9b9c8fb7576f8e4cbdccff98784e33fef), [`7b7eb1f`](https://github.com/clerk/javascript/commit/7b7eb1fc0235249c5c179239078294118f2947cd)]: - - @clerk/shared@3.21.1 - - @clerk/types@4.79.0 - - @clerk/clerk-react@5.42.2 - - @clerk/backend@2.9.2 - -## 4.11.1 - -### Patch Changes - -- Updated dependencies [[`5b24129`](https://github.com/clerk/javascript/commit/5b24129ddcfc2f7dc6eb79d8c818b4ff97c68e9a)]: - - @clerk/shared@3.21.0 - - @clerk/types@4.78.0 - - @clerk/backend@2.9.1 - - @clerk/clerk-react@5.42.1 - -## 4.11.0 - -### Minor Changes - -- Rename `RedirectToTask` control component to `RedirectToTasks` ([#6486](https://github.com/clerk/javascript/pull/6486)) by [@LauraBeatris](https://github.com/LauraBeatris) - -### Patch Changes - -- Updated dependencies [[`4db1e58`](https://github.com/clerk/javascript/commit/4db1e58d70b60e1e236709b507666715d571e925), [`d400782`](https://github.com/clerk/javascript/commit/d400782b7016c1232c0aa1e3399c61b61e4f0709), [`69498df`](https://github.com/clerk/javascript/commit/69498dfca3e6bb388eb8c94313eac06347dd5a27), [`307dc3f`](https://github.com/clerk/javascript/commit/307dc3f05ba1bd3b30b491b198d9e65eebcc95f9), [`2db7431`](https://github.com/clerk/javascript/commit/2db743147827fb69fb8fe73a1e26545aeb7be7aa), [`59f1559`](https://github.com/clerk/javascript/commit/59f15593bab708b9e13eebfff6780c2d52b31b0a), [`69498df`](https://github.com/clerk/javascript/commit/69498dfca3e6bb388eb8c94313eac06347dd5a27)]: - - @clerk/types@4.77.0 - - @clerk/backend@2.9.0 - - @clerk/shared@3.20.1 - - @clerk/clerk-react@5.42.0 - -## 4.10.13 - -### Patch Changes - -- Updated dependencies [[`15fe106`](https://github.com/clerk/javascript/commit/15fe1060f730a6a4391f3d2451d23edd3218e1ae), [`df63e76`](https://github.com/clerk/javascript/commit/df63e76f2382c601d9a3b52a3a6dfaba26c4f36f), [`173837c`](https://github.com/clerk/javascript/commit/173837c2526aa826b7981ee8d6d4f52c00675da5), [`8b52d7a`](https://github.com/clerk/javascript/commit/8b52d7ae19407e8ab5a5451bd7d34b6bc38417de), [`854dde8`](https://github.com/clerk/javascript/commit/854dde88e642c47b5a29ac8f576c8c1976e5d067), [`ae2e2d6`](https://github.com/clerk/javascript/commit/ae2e2d6b336be6b596cc855e549843beb5bfd2a1), [`037f25a`](https://github.com/clerk/javascript/commit/037f25a8171888168913b186b7edf871e0aaf197), [`f8b38b7`](https://github.com/clerk/javascript/commit/f8b38b7059e498fef3ac1271346be0710aa31c76)]: - - @clerk/types@4.76.0 - - @clerk/backend@2.8.0 - - @clerk/shared@3.20.0 - - @clerk/clerk-react@5.41.1 - -## 4.10.12 - -### Patch Changes - -- Updated dependencies [[`b72a3dd`](https://github.com/clerk/javascript/commit/b72a3dda2467720e5dc8cab3e7e6a110f3beb79b), [`d93b0ed`](https://github.com/clerk/javascript/commit/d93b0edf4adc57d48a26cb08444192887ccec659), [`6459f7d`](https://github.com/clerk/javascript/commit/6459f7dabe5f163f48ed73106bb901d8187da3e2), [`0ff648a`](https://github.com/clerk/javascript/commit/0ff648aeac0e2f5481596a98c8046d9d58a7bf75), [`9084759`](https://github.com/clerk/javascript/commit/90847593300be605e1ee1c06dac147ce68b25dc7)]: - - @clerk/types@4.75.0 - - @clerk/clerk-react@5.41.0 - - @clerk/shared@3.19.0 - - @clerk/backend@2.7.1 - -## 4.10.11 - -### Patch Changes - -- Introduce `TaskChooseOrganization` component which replaces `TaskSelectOrganization` with a new UI that make the experience similar to the previous `SignIn` and `SignUp` steps ([#6446](https://github.com/clerk/javascript/pull/6446)) by [@LauraBeatris](https://github.com/LauraBeatris) - -- Add ability to define a machine secret key to Clerk BAPI client function ([#6479](https://github.com/clerk/javascript/pull/6479)) by [@wobsoriano](https://github.com/wobsoriano) - - ```ts - const clerkClient = createClerkClient({ machineSecretKey: 'ak_xxxxx' }) - - clerkClient.m2mTokens.create({...}) - ``` - -- Updated dependencies [[`1ad16da`](https://github.com/clerk/javascript/commit/1ad16daa49795a861ae277001831230580b6b9f4), [`4edef81`](https://github.com/clerk/javascript/commit/4edef81dd423a0471e3f579dd6b36094aa8546aa), [`6ff416f`](https://github.com/clerk/javascript/commit/6ff416f4b35fc01ba7dca61abe4698d7d1460dee), [`e82f177`](https://github.com/clerk/javascript/commit/e82f1775de889eb9cac444cb26b69fb5de1e2d05), [`696f8e1`](https://github.com/clerk/javascript/commit/696f8e11a3e5391e6b5a97d98e929b8973575b9a), [`f318d22`](https://github.com/clerk/javascript/commit/f318d22cf83caaef272bcf532561a03ca72575e7), [`0d27281`](https://github.com/clerk/javascript/commit/0d272815b216f7a7538b5633cb397d6cd2695b73), [`1cc66ab`](https://github.com/clerk/javascript/commit/1cc66aba1c0adac24323876e4cc3d96be888b07b)]: - - @clerk/clerk-react@5.40.0 - - @clerk/types@4.74.0 - - @clerk/backend@2.7.0 - - @clerk/shared@3.18.1 - -## 4.10.10 - -### Patch Changes - -- Updated dependencies [[`9368daf`](https://github.com/clerk/javascript/commit/9368dafb119b5a8ec6a9d6d82270e72bab6d8f1e), [`f93965f`](https://github.com/clerk/javascript/commit/f93965f64c81030f9fcf9d1cc4e4984d30cd12ec), [`7b6dcee`](https://github.com/clerk/javascript/commit/7b6dceea5bfd7f1cc1bf24126aa715307e24ae7f), [`ef87617`](https://github.com/clerk/javascript/commit/ef87617ae1fd125c806a33bfcfdf09c885319fa8)]: - - @clerk/shared@3.18.0 - - @clerk/clerk-react@5.39.0 - - @clerk/types@4.73.0 - - @clerk/backend@2.6.3 - -## 4.10.9 - -### Patch Changes - -- Updated dependencies [[`7a46679`](https://github.com/clerk/javascript/commit/7a46679a004739a7f712097c5779e9f5c068722e), [`05cc5ec`](https://github.com/clerk/javascript/commit/05cc5ecd82ecdbcc9922d3286224737a81813be0), [`22c35ef`](https://github.com/clerk/javascript/commit/22c35efb59226df2efaa2891fa4775c13312f4c6), [`8c7e5bb`](https://github.com/clerk/javascript/commit/8c7e5bb887e95e38a186a18609dd6fc93b6a3cda), [`e8d816a`](https://github.com/clerk/javascript/commit/e8d816a3350e862c3e9e1d4f8c96c047a0a016a2), [`aa9f185`](https://github.com/clerk/javascript/commit/aa9f185e21b58f8a6e03ea44ce29ee09ad2477d9), [`af0e123`](https://github.com/clerk/javascript/commit/af0e12393c9412281626e20dafb1b3a15558f6d9), [`241bbbd`](https://github.com/clerk/javascript/commit/241bbbd5ad3915419fe222861a2eeb0132a294e0), [`3d1d871`](https://github.com/clerk/javascript/commit/3d1d8711405646cf3c2aabe99e08337a1028703a)]: - - @clerk/shared@3.17.0 - - @clerk/clerk-react@5.38.1 - - @clerk/types@4.72.0 - - @clerk/backend@2.6.2 - -## 4.10.8 - -### Patch Changes - -- Updated dependencies [[`e404456`](https://github.com/clerk/javascript/commit/e4044566bca81f63c8e9c630fdec0f498ad6fc08), [`2803133`](https://github.com/clerk/javascript/commit/28031330a9810946feb44b93be10c067fb3b63ba), [`f1d9d34`](https://github.com/clerk/javascript/commit/f1d9d3482a796dd5f7796ede14159850e022cba2), [`0bdd0df`](https://github.com/clerk/javascript/commit/0bdd0dfdae49e2548081e68767addf9065b2b8f9), [`d58b959`](https://github.com/clerk/javascript/commit/d58b9594cf65158e87dbaa90d632c45f543373e1), [`232d7d3`](https://github.com/clerk/javascript/commit/232d7d37cd1bc2a4e106f1972dc395373502168d), [`f6375f0`](https://github.com/clerk/javascript/commit/f6375f01e8d8a06e12d4a71285912e9dda7b6f20), [`822ba1f`](https://github.com/clerk/javascript/commit/822ba1fd5e7daf665120cf183e4600a227098d53), [`af615b8`](https://github.com/clerk/javascript/commit/af615b89838e46bd441d41da6a6dde29e3edf595), [`d4d2612`](https://github.com/clerk/javascript/commit/d4d2612483baf356c389ef0ba5084059025481f2)]: - - @clerk/types@4.71.0 - - @clerk/shared@3.16.0 - - @clerk/backend@2.6.1 - - @clerk/clerk-react@5.38.0 - -## 4.10.7 - -### Patch Changes - -- Updated dependencies [[`2bbeaf3`](https://github.com/clerk/javascript/commit/2bbeaf30faa0f961b766c87c17e424ba9ecc4517), [`cfa7882`](https://github.com/clerk/javascript/commit/cfa78827cea6e81ce671ae204f529d2f93e3304d), [`b0fdc9e`](https://github.com/clerk/javascript/commit/b0fdc9eaf764ca0c17cbe0810b7d240f6d9db0b6)]: - - @clerk/backend@2.6.0 - - @clerk/clerk-react@5.37.0 - - @clerk/types@4.70.1 - - @clerk/shared@3.15.1 - -## 4.10.6 - -### Patch Changes - -- Updated dependencies [[`8feb59b`](https://github.com/clerk/javascript/commit/8feb59b808254a59c9bf4cf9c00f177e29e5e41b), [`cd59c0e`](https://github.com/clerk/javascript/commit/cd59c0e5512a341dd8fb420aca583333c8243aa5), [`cd59c0e`](https://github.com/clerk/javascript/commit/cd59c0e5512a341dd8fb420aca583333c8243aa5)]: - - @clerk/clerk-react@5.36.0 - - @clerk/types@4.70.0 - - @clerk/shared@3.15.0 - - @clerk/backend@2.5.2 - -## 4.10.5 - -### Patch Changes - -- Updated dependencies [[`fecc99d`](https://github.com/clerk/javascript/commit/fecc99d43cb7db5b99863829acb234cbce0da264), [`959d63d`](https://github.com/clerk/javascript/commit/959d63de27e5bfe27b46699b441dfd4e48616bf8), [`10e1060`](https://github.com/clerk/javascript/commit/10e10605b18a58f33a93caed058159c190678e74), [`92c44dd`](https://github.com/clerk/javascript/commit/92c44dd9d51e771a928a8da7004bdb8f8bdbaf58), [`a04a8f5`](https://github.com/clerk/javascript/commit/a04a8f5f81241ee41d93cd64793beca9d6296abb), [`c61855c`](https://github.com/clerk/javascript/commit/c61855c51d9c129d48c4543da3719939ad82f623), [`43ea069`](https://github.com/clerk/javascript/commit/43ea069c570dc64503fc82356ad28a2e43689d45)]: - - @clerk/clerk-react@5.35.4 - - @clerk/types@4.69.0 - - @clerk/shared@3.14.0 - - @clerk/backend@2.5.1 - -## 4.10.4 - -### Patch Changes - -- Updated dependencies [[`d2f6f9e`](https://github.com/clerk/javascript/commit/d2f6f9e02036a4288916fcce14f24be5d56561c4), [`a329836`](https://github.com/clerk/javascript/commit/a329836a6c64f0a551a277ccae07043456a70523), [`5fbf8df`](https://github.com/clerk/javascript/commit/5fbf8df84b6d47082a76047451274790b8579b2d), [`6041c39`](https://github.com/clerk/javascript/commit/6041c39a31e787a6065dbc3f21e1c569982a06de), [`3f1270d`](https://github.com/clerk/javascript/commit/3f1270db86a21ead0ed6f0bd4f9986485203e973), [`1d9c409`](https://github.com/clerk/javascript/commit/1d9c409d10cc88667e354664d66c5f74b8bf4ca7), [`df49349`](https://github.com/clerk/javascript/commit/df4934983ee60246cd9df217afd7384aad556387)]: - - @clerk/clerk-react@5.35.3 - - @clerk/types@4.68.0 - - @clerk/shared@3.13.0 - - @clerk/backend@2.5.0 - -## 4.10.3 - -### Patch Changes - -- Updated dependencies [[`2a90b68`](https://github.com/clerk/javascript/commit/2a90b689550ae960496c9292ca23e0225e3425cd), [`af50905`](https://github.com/clerk/javascript/commit/af50905ea497ed3286c8c4c374498e06ca6ee82b)]: - - @clerk/clerk-react@5.35.2 - - @clerk/types@4.67.0 - - @clerk/shared@3.12.3 - - @clerk/backend@2.4.5 - -## 4.10.2 - -### Patch Changes - -- Updated dependencies [[`8ee859c`](https://github.com/clerk/javascript/commit/8ee859ce00d1d5747c14a80fe7166303e64a4f1f)]: - - @clerk/shared@3.12.2 - - @clerk/types@4.66.1 - - @clerk/backend@2.4.4 - - @clerk/clerk-react@5.35.1 - -## 4.10.1 - -### Patch Changes - -- Updated dependencies [[`025e304`](https://github.com/clerk/javascript/commit/025e304c4d6402dfd750ee51ac9c8fc2dea1f353), [`dedf487`](https://github.com/clerk/javascript/commit/dedf48703986d547d5b28155b0182a51030cffeb), [`b96114e`](https://github.com/clerk/javascript/commit/b96114e438638896ba536bb7a17b09cdadcd9407)]: - - @clerk/types@4.66.0 - - @clerk/clerk-react@5.35.0 - - @clerk/backend@2.4.3 - - @clerk/shared@3.12.1 - -## 4.10.0 - -### Minor Changes - -- [Billing Beta]: Introduce experimental `useCheckout()` hook and ``. ([#6195](https://github.com/clerk/javascript/pull/6195)) by [@panteliselef](https://github.com/panteliselef) - -### Patch Changes - -- Updated dependencies [[`2be6a53`](https://github.com/clerk/javascript/commit/2be6a53959cb8a3127c2eb5d1aeb4248872d2c24), [`f6a1c35`](https://github.com/clerk/javascript/commit/f6a1c35bd5fb4bd2a3cd45bdaf9defe6be59d4a9), [`6826d0b`](https://github.com/clerk/javascript/commit/6826d0bbd03e844d49224565878a4326684f06b4), [`f6a1c35`](https://github.com/clerk/javascript/commit/f6a1c35bd5fb4bd2a3cd45bdaf9defe6be59d4a9), [`8fdb209`](https://github.com/clerk/javascript/commit/8fdb20913b0b0f88244099f6c6a7b979e0f79327), [`97a07f7`](https://github.com/clerk/javascript/commit/97a07f78b4b0c3dc701a2610097ec7d6232f79e7), [`e3da9f4`](https://github.com/clerk/javascript/commit/e3da9f4a17a2a5f71d7e02a81b86d6002c93cc59)]: - - @clerk/types@4.65.0 - - @clerk/shared@3.12.0 - - @clerk/clerk-react@5.34.0 - - @clerk/backend@2.4.2 - -## 4.9.0 - -### Minor Changes - -- Export experimental hooks and components for PaymentElement ([#6180](https://github.com/clerk/javascript/pull/6180)) by [@panteliselef](https://github.com/panteliselef) - - - `__experimental_usePaymentElement` - - `__experimental_PaymentElementProvider` - - `__experimental_PaymentElement` - -### Patch Changes - -- Updated dependencies [[`f42c4fe`](https://github.com/clerk/javascript/commit/f42c4fedfdab873129b876eba38b3677f190b460), [`ec207dc`](https://github.com/clerk/javascript/commit/ec207dcd2a13340cfa4e3b80d3d52d1b4e7d5f23), [`ec207dc`](https://github.com/clerk/javascript/commit/ec207dcd2a13340cfa4e3b80d3d52d1b4e7d5f23), [`0e0cc1f`](https://github.com/clerk/javascript/commit/0e0cc1fa85347d727a4fd3718fe45b0f0244ddd9)]: - - @clerk/types@4.64.0 - - @clerk/clerk-react@5.33.0 - - @clerk/shared@3.11.0 - - @clerk/backend@2.4.1 - -## 4.8.5 - -### Patch Changes - -- Updated dependencies [[`c2f24da`](https://github.com/clerk/javascript/commit/c2f24dab96c052b2748a210eef45540f788654aa), [`abd8446`](https://github.com/clerk/javascript/commit/abd844609dad263d974da7fbf5e3575afce73abe), [`8387a39`](https://github.com/clerk/javascript/commit/8387a392a04906f0f10d84c61cfee36f23942f85), [`feba23c`](https://github.com/clerk/javascript/commit/feba23c85d1ff94930de61f3b6961e2ebb2f65ce), [`f2a6641`](https://github.com/clerk/javascript/commit/f2a66419b1813abc86ea98fde7475861995a1486), [`de9c01a`](https://github.com/clerk/javascript/commit/de9c01ac683f52c1919e1584faba087f92a0ca22), [`a8638b0`](https://github.com/clerk/javascript/commit/a8638b02f0daff780f3aef038983714db21db558), [`3b4b3cb`](https://github.com/clerk/javascript/commit/3b4b3cb941a1a503ce51e086e7bdd663c2a1ddc2)]: - - @clerk/backend@2.4.0 - - @clerk/shared@3.10.2 - - @clerk/types@4.63.0 - - @clerk/clerk-react@5.32.4 - -## 4.8.4 - -### Patch Changes - -- Updated dependencies [[`02a1f42`](https://github.com/clerk/javascript/commit/02a1f42dfdb28ea956d6cbd3fbabe10093d2fad8), [`edc0bfd`](https://github.com/clerk/javascript/commit/edc0bfdae929dad78a99dfd6275aad947d9ddd73)]: - - @clerk/shared@3.10.1 - - @clerk/clerk-react@5.32.3 - - @clerk/types@4.62.1 - - @clerk/backend@2.3.1 - -## 4.8.3 - -### Patch Changes - -- Updated dependencies [[`f1be1fe`](https://github.com/clerk/javascript/commit/f1be1fe3d575c11acd04fc7aadcdec8f89829894), [`8bfdf94`](https://github.com/clerk/javascript/commit/8bfdf94646c54a5e13fcb81ebcb9df0209dbc6a1), [`bffb42a`](https://github.com/clerk/javascript/commit/bffb42aaf266a188b9ae7d16ace3024d468a3bd4), [`084e7cc`](https://github.com/clerk/javascript/commit/084e7cc5f6f6d101059bc8a6d60dc73f3262ef2f)]: - - @clerk/types@4.62.0 - - @clerk/backend@2.3.0 - - @clerk/shared@3.10.0 - - @clerk/clerk-react@5.32.2 - -## 4.8.2 - -### Patch Changes - -- Updated dependencies [[`b495279`](https://github.com/clerk/javascript/commit/b4952796e3c7dee4ab4726de63a17b7f4265ce37), [`c3fa15d`](https://github.com/clerk/javascript/commit/c3fa15d60642b4fcbcf26e21caaca0fc60975795), [`628583a`](https://github.com/clerk/javascript/commit/628583a27ffd72521475e06f91e6f592ee87ba47), [`52d5e57`](https://github.com/clerk/javascript/commit/52d5e5768d54725b4d20d028135746493e05d44c), [`15a945c`](https://github.com/clerk/javascript/commit/15a945c02a9f6bc8d2f7d1e3534217100bf45936), [`10f3dda`](https://github.com/clerk/javascript/commit/10f3dda2beff0ce71a52c2f15c07094110078be2), [`72629b0`](https://github.com/clerk/javascript/commit/72629b06fb1fe720fa2a61462306a786a913e9a8), [`2692124`](https://github.com/clerk/javascript/commit/2692124a79369a9289ee18009667231d7e27b9ed)]: - - @clerk/types@4.61.0 - - @clerk/backend@2.2.0 - - @clerk/shared@3.9.8 - - @clerk/clerk-react@5.32.1 - -## 4.8.1 - -### Patch Changes - -- Updated dependencies [[`19e9e11`](https://github.com/clerk/javascript/commit/19e9e11af04f13fd12975fbf7016fe0583202056), [`18bcb64`](https://github.com/clerk/javascript/commit/18bcb64a3e8b6d352d7933ed094d68214e6e80fb), [`2148166`](https://github.com/clerk/javascript/commit/214816654850272297056eebad3d846b7f8125c9), [`4319257`](https://github.com/clerk/javascript/commit/4319257dc424f121231a26bef2068cef1e78afd4), [`607d333`](https://github.com/clerk/javascript/commit/607d3331f893bc98d1a8894f57b1cb9021e71b86), [`138f733`](https://github.com/clerk/javascript/commit/138f733f13121487268a4f96e6eb2cffedc6e238), [`4118ed7`](https://github.com/clerk/javascript/commit/4118ed7c8fb13ca602401f8d663e7bcd6f6abee4), [`18bcb64`](https://github.com/clerk/javascript/commit/18bcb64a3e8b6d352d7933ed094d68214e6e80fb), [`d832d91`](https://github.com/clerk/javascript/commit/d832d9179ff615f2799c832ec5fd9f3d79c6a940), [`6842ff1`](https://github.com/clerk/javascript/commit/6842ff1c903eaa0db161f533365a2e680995ce83), [`48be55b`](https://github.com/clerk/javascript/commit/48be55b61a86e014dd407414764d24bb43fd26f3), [`183e382`](https://github.com/clerk/javascript/commit/183e3823e4ff70e856b00a347369c38a4264105a), [`2c6f805`](https://github.com/clerk/javascript/commit/2c6f805a9e6e4685990f9a8abc740b2d0859a453), [`97749d5`](https://github.com/clerk/javascript/commit/97749d570bc687c7e05cd800a50e0ae4180a371d)]: - - @clerk/types@4.60.1 - - @clerk/backend@2.1.0 - - @clerk/clerk-react@5.32.0 - - @clerk/shared@3.9.7 - -## 4.8.0 - -### Minor Changes - -- Machine authentication is now supported for advanced use cases via the backend SDK. You can use `clerkClient.authenticateRequest` to validate machine tokens (such as API keys, OAuth tokens, and machine-to-machine tokens). No new helpers are included in these packages yet. ([#5689](https://github.com/clerk/javascript/pull/5689)) by [@wobsoriano](https://github.com/wobsoriano) - - Example (Astro): - - ```ts - import { clerkClient } from '@clerk/astro/server'; - - export const GET: APIRoute = ({ request }) => { - const requestState = await clerkClient.authenticateRequest(request, { - acceptsToken: 'api_key', - }); - - if (!requestState.isAuthenticated) { - return new Response(401, { message: 'Unauthorized' }); - } - - return new Response(JSON.stringify(requestState.toAuth())); - }; - ``` - -### Patch Changes - -- Updated dependencies [[`ea622ba`](https://github.com/clerk/javascript/commit/ea622bae90e18ae2ea8dbc6c94cad857557539c9), [`d8fa5d9`](https://github.com/clerk/javascript/commit/d8fa5d9d3d8dc575260d8d2b7c7eeeb0052d0b0d), [`be2e89c`](https://github.com/clerk/javascript/commit/be2e89ca11aa43d48f74c57a5a34e20d85b4003c), [`c656270`](https://github.com/clerk/javascript/commit/c656270f9e05fd1f44fc4c81851be0b1111cb933), [`5644d94`](https://github.com/clerk/javascript/commit/5644d94f711a0733e4970c3f15c24d56cafc8743), [`a3232c7`](https://github.com/clerk/javascript/commit/a3232c7ee8c1173d2ce70f8252fc083c7bf19374), [`b578225`](https://github.com/clerk/javascript/commit/b5782258242474c9b0987a3f8349836cd763f24b), [`918e2e0`](https://github.com/clerk/javascript/commit/918e2e085bf88c3cfaa5fcb0f1ae8c31b3f7053e), [`795d09a`](https://github.com/clerk/javascript/commit/795d09a652f791e1e409406e335e0860aceda110), [`4f93634`](https://github.com/clerk/javascript/commit/4f93634ed6bcd45f21bddcb39a33434b1cb560fe), [`8838120`](https://github.com/clerk/javascript/commit/8838120596830b88fec1c6c853371dabfec74a0d)]: - - @clerk/backend@2.0.0 - - @clerk/types@4.60.0 - - @clerk/clerk-react@5.31.9 - - @clerk/shared@3.9.6 - -## 4.7.8 - -### Patch Changes - -- Updated dependencies [[`5421421`](https://github.com/clerk/javascript/commit/5421421644b5c017d58ee6583c12d6c253e29c33), [`f897773`](https://github.com/clerk/javascript/commit/f89777379da63cf45039c1570b51ba10a400817c), [`1c97fd0`](https://github.com/clerk/javascript/commit/1c97fd06b28db9fde6c14dbeb0935e13696be539), [`2c6a0cc`](https://github.com/clerk/javascript/commit/2c6a0cca6e824bafc6b0d0501784517a5b1f75ea), [`71e6a1f`](https://github.com/clerk/javascript/commit/71e6a1f1024d65b7a09cdc8fa81ce0164e0a34cb)]: - - @clerk/backend@1.34.0 - - @clerk/shared@3.9.5 - - @clerk/types@4.59.3 - - @clerk/clerk-react@5.31.8 - -## 4.7.7 - -### Patch Changes - -- Updated dependencies [[`6ed3dfc`](https://github.com/clerk/javascript/commit/6ed3dfc1bc742ac9d9a2307fe8e4733411cbc0d7), [`22c3363`](https://github.com/clerk/javascript/commit/22c33631f7f54b4f2179bf16f548fee1a237976e), [`ac6b231`](https://github.com/clerk/javascript/commit/ac6b23147e5e0aa21690cc20a109ed9a8c8f6e5b)]: - - @clerk/types@4.59.2 - - @clerk/backend@1.33.1 - - @clerk/clerk-react@5.31.7 - - @clerk/shared@3.9.4 - -## 4.7.6 - -### Patch Changes - -- Updated dependencies [[`ced8912`](https://github.com/clerk/javascript/commit/ced8912e8c9fb7eb7846de6ca9a872e794d9e15d), [`f237d76`](https://github.com/clerk/javascript/commit/f237d7617e5398ca0ba981e4336cac2191505b00), [`5f1375b`](https://github.com/clerk/javascript/commit/5f1375ba7cc50cccb11d5aee03bfd4c3d1bf462f)]: - - @clerk/backend@1.33.0 - - @clerk/shared@3.9.3 - - @clerk/clerk-react@5.31.6 - -## 4.7.5 - -### Patch Changes - -- Updated dependencies [[`c305b31`](https://github.com/clerk/javascript/commit/c305b310e351e9ce2012f805b35e464c3e43e310), [`b813cbe`](https://github.com/clerk/javascript/commit/b813cbe29252ab9710f355cecd4511172aea3548), [`6bb480e`](https://github.com/clerk/javascript/commit/6bb480ef663a6dfa219bc9546aca087d5d9624d0)]: - - @clerk/types@4.59.1 - - @clerk/backend@1.32.3 - - @clerk/shared@3.9.2 - - @clerk/clerk-react@5.31.5 - -## 4.7.4 - -### Patch Changes - -- Updated dependencies [[`b1337df`](https://github.com/clerk/javascript/commit/b1337dfeae8ccf8622efcf095e3201f9bbf1cefa), [`65f0878`](https://github.com/clerk/javascript/commit/65f08788ee5e56242eee2194c73ba90965c75c97), [`df6fefd`](https://github.com/clerk/javascript/commit/df6fefd05fd2df93f5286d97e546b48911adea7c), [`4282bfa`](https://github.com/clerk/javascript/commit/4282bfa09491225bde7d619fe9a3561062703f69), [`5491491`](https://github.com/clerk/javascript/commit/5491491711e0a8ee37828451c1f603a409de32cf)]: - - @clerk/types@4.59.0 - - @clerk/backend@1.32.2 - - @clerk/clerk-react@5.31.4 - - @clerk/shared@3.9.1 - -## 4.7.3 - -### Patch Changes - -- Updated dependencies [[`1ff6d6e`](https://github.com/clerk/javascript/commit/1ff6d6efbe838b3f7f6977b2b5215c2cafd715f6), [`fbf3cf4`](https://github.com/clerk/javascript/commit/fbf3cf4916469c4e118870bf12efca2d0f77d9d8)]: - - @clerk/shared@3.9.0 - - @clerk/types@4.58.1 - - @clerk/clerk-react@5.31.3 - - @clerk/backend@1.32.1 - -## 4.7.2 - -### Patch Changes - -- Updated dependencies [[`0769a9b`](https://github.com/clerk/javascript/commit/0769a9b4a44ec7046a3b99a3d58bddd173970990), [`0f5145e`](https://github.com/clerk/javascript/commit/0f5145e164f3d3d5faf57e58162b05e7110d2403), [`afdfd18`](https://github.com/clerk/javascript/commit/afdfd18d645608dec37e52a291a91ba5f42dcbe7), [`b7c51ba`](https://github.com/clerk/javascript/commit/b7c51baac6df1129b468274c9a7f63ca303f16ce), [`437b53b`](https://github.com/clerk/javascript/commit/437b53b67e281d076b5b3f927e11c1d64666d154), [`5217155`](https://github.com/clerk/javascript/commit/52171554250c5c58f4f497b6d3c7416e79ac77da)]: - - @clerk/backend@1.32.0 - - @clerk/types@4.58.0 - - @clerk/clerk-react@5.31.2 - - @clerk/shared@3.8.2 - -## 4.7.1 - -### Patch Changes - -- Updated dependencies [[`4db96e0`](https://github.com/clerk/javascript/commit/4db96e0ff2ab44c7bdd8540e09ec70b84b19d3eb), [`36fb43f`](https://github.com/clerk/javascript/commit/36fb43f8b35866bdc20680fac58020f036d30d1f), [`e5ac444`](https://github.com/clerk/javascript/commit/e5ac4447f52bb6887ad686feab308fe9daf76e33), [`4db96e0`](https://github.com/clerk/javascript/commit/4db96e0ff2ab44c7bdd8540e09ec70b84b19d3eb), [`d227805`](https://github.com/clerk/javascript/commit/d22780599a5e29545a3d8309cc411c2e8659beac)]: - - @clerk/types@4.57.1 - - @clerk/clerk-react@5.31.1 - - @clerk/backend@1.31.4 - - @clerk/shared@3.8.1 - -## 4.7.0 - -### Minor Changes - -- Mark commerce apis as stable ([#5833](https://github.com/clerk/javascript/pull/5833)) by [@nikosdouvlis](https://github.com/nikosdouvlis) - -### Patch Changes - -- Introduce `checkoutContinueUrl` option. ([#5807](https://github.com/clerk/javascript/pull/5807)) by [@alexcarpenter](https://github.com/alexcarpenter) - -- Rename \_\_experimental_checkoutContinueUrl to checkoutContinueUrl ([#5826](https://github.com/clerk/javascript/pull/5826)) by [@nikosdouvlis](https://github.com/nikosdouvlis) - -- Updated dependencies [[`db0138f`](https://github.com/clerk/javascript/commit/db0138f3f72aea8cb68a5684a90123f733848f63), [`45e8298`](https://github.com/clerk/javascript/commit/45e829890ec9ac66f07e0d7076cd283f14c893ed), [`aa97231`](https://github.com/clerk/javascript/commit/aa97231962e3f472a46135e376159c6ddcf1157b), [`c792f37`](https://github.com/clerk/javascript/commit/c792f37129fd6475d5af95146e9ef0f1c8eff730), [`3bf08a9`](https://github.com/clerk/javascript/commit/3bf08a9e0a9e65496edac5fc3bb22ad7b561df26), [`74cf3b2`](https://github.com/clerk/javascript/commit/74cf3b28cdf622a942aaf99caabfba74b7e856fd), [`037b113`](https://github.com/clerk/javascript/commit/037b113aaedd53d4647d88f1659eb9c14cf6f275), [`c15a412`](https://github.com/clerk/javascript/commit/c15a412169058e2304a51c9e92ffaa7f6bb2a898), [`7726a03`](https://github.com/clerk/javascript/commit/7726a03a7fec4d292b6de2587b84ed4371984c23), [`ed10566`](https://github.com/clerk/javascript/commit/ed1056637624eec5bfd50333407c1e63e34c193b), [`b846a9a`](https://github.com/clerk/javascript/commit/b846a9ab96db6b1d8344a4b693051618865508a8), [`e66c800`](https://github.com/clerk/javascript/commit/e66c8002b82b2902f77e852e16482f5cfb062d2c), [`45e8298`](https://github.com/clerk/javascript/commit/45e829890ec9ac66f07e0d7076cd283f14c893ed), [`9c41091`](https://github.com/clerk/javascript/commit/9c41091eb795bce8ffeeeca0264ae841fe07b426), [`29462b4`](https://github.com/clerk/javascript/commit/29462b433eb411ce614e4768e5844cacd00c1975), [`322c43f`](https://github.com/clerk/javascript/commit/322c43f6807a932c3cfaaef1b587b472c80180d2), [`17397f9`](https://github.com/clerk/javascript/commit/17397f95b715bd4fefd7f63c1d351abcf1c8ee16), [`45e8298`](https://github.com/clerk/javascript/commit/45e829890ec9ac66f07e0d7076cd283f14c893ed)]: - - @clerk/types@4.57.0 - - @clerk/clerk-react@5.31.0 - - @clerk/shared@3.8.0 - - @clerk/backend@1.31.3 - -## 4.6.5 - -### Patch Changes - -- Updated dependencies [[`9ec0a73`](https://github.com/clerk/javascript/commit/9ec0a7353e9f6ea661c3d7b9542423b6eb1d29e9), [`d9222fc`](https://github.com/clerk/javascript/commit/d9222fc3c21da2bcae30b06f0b1897f526935582)]: - - @clerk/types@4.56.3 - - @clerk/backend@1.31.2 - - @clerk/clerk-react@5.30.4 - - @clerk/shared@3.7.8 - -## 4.6.4 - -### Patch Changes - -- Updated dependencies [[`225b9ca`](https://github.com/clerk/javascript/commit/225b9ca21aba44930872a85d6b112ee2a1b606b9)]: - - @clerk/types@4.56.2 - - @clerk/backend@1.31.1 - - @clerk/clerk-react@5.30.3 - - @clerk/shared@3.7.7 - -## 4.6.3 - -### Patch Changes - -- Updated dependencies [[`be1c5d6`](https://github.com/clerk/javascript/commit/be1c5d67b27852303dc8148e3be514473ce3e190), [`a122121`](https://github.com/clerk/javascript/commit/a122121e4fe55148963ed85b99ff24ba02a2d170)]: - - @clerk/backend@1.31.0 - -## 4.6.2 - -### Patch Changes - -- Fix handshake redirect loop in applications deployed to Netlify with a Clerk development instance. ([#5656](https://github.com/clerk/javascript/pull/5656)) by [@wobsoriano](https://github.com/wobsoriano) - -- Updated dependencies [[`387bf62`](https://github.com/clerk/javascript/commit/387bf623406306e0c5c08da937f4930a7ec5e4a5), [`2716622`](https://github.com/clerk/javascript/commit/27166224e12af582298460d438bd7f83ea8e04bf), [`294da82`](https://github.com/clerk/javascript/commit/294da82336e7a345900d7ef9b28f56a7c8864c52), [`4a8fe40`](https://github.com/clerk/javascript/commit/4a8fe40dc7c6335d4cf90e2532ceda2c7ad66a3b)]: - - @clerk/types@4.56.1 - - @clerk/shared@3.7.6 - - @clerk/backend@1.30.2 - - @clerk/clerk-react@5.30.2 - -## 4.6.1 - -### Patch Changes - -- Updated dependencies [[`b02e766`](https://github.com/clerk/javascript/commit/b02e76627e47aec314573586451fa345a089115a), [`5d78b28`](https://github.com/clerk/javascript/commit/5d78b286b63e35fbcf44aac1f7657cbeaba4d659), [`d7f4438`](https://github.com/clerk/javascript/commit/d7f4438fa4bfd04474d5cdb9212ba908568ad6d2), [`5866855`](https://github.com/clerk/javascript/commit/58668550ec91d5511cf775972c54dc485185cc58), [`0007106`](https://github.com/clerk/javascript/commit/00071065998a3676c51e396b4c0afcbf930a9898), [`462b5b2`](https://github.com/clerk/javascript/commit/462b5b271d4e120d58a85818a358b60a6b3c8100), [`447d7a9`](https://github.com/clerk/javascript/commit/447d7a9e133c2a0e7db014bd5837e6ffff08f572), [`2beea29`](https://github.com/clerk/javascript/commit/2beea2957c67bc62446fe24d36332b0a4e850d7d), [`115601d`](https://github.com/clerk/javascript/commit/115601d12fd65dbf3011c0cda368525a2b95bfeb)]: - - @clerk/types@4.56.0 - - @clerk/clerk-react@5.30.1 - - @clerk/backend@1.30.1 - - @clerk/shared@3.7.5 - -## 4.6.0 - -### Minor Changes - -- Export `<__experimental_PricingTable />`. ([#5691](https://github.com/clerk/javascript/pull/5691)) by [@panteliselef](https://github.com/panteliselef) - -### Patch Changes - -- Updated dependencies [[`ba19465`](https://github.com/clerk/javascript/commit/ba194654b15d326bf0ab1b2bf0cab608042d20ec), [`8b25035`](https://github.com/clerk/javascript/commit/8b25035aa49382fe1cd1c6f30ec80e86bcf9d66e), [`f0f1ed7`](https://github.com/clerk/javascript/commit/f0f1ed7ef3666bfc1cbf945326e94a51e83c4646), [`25c3502`](https://github.com/clerk/javascript/commit/25c35023ee995acbf8f5c8989619ebc176a366d6)]: - - @clerk/backend@1.30.0 - - @clerk/types@4.55.1 - - @clerk/clerk-react@5.30.0 - - @clerk/shared@3.7.4 - -## 4.5.20 - -### Patch Changes - -- Updated dependencies [[`4334598`](https://github.com/clerk/javascript/commit/4334598108ff2cfa3c25b5a46117c1c9c65b7974), [`33201bf`](https://github.com/clerk/javascript/commit/33201bf972d6a980617d47ebd776bef76f871833), [`4334598`](https://github.com/clerk/javascript/commit/4334598108ff2cfa3c25b5a46117c1c9c65b7974), [`0ae0403`](https://github.com/clerk/javascript/commit/0ae040303d239b75a3221436354a2c2ecdb85aae)]: - - @clerk/clerk-react@5.29.0 - - @clerk/types@4.55.0 - - @clerk/backend@1.29.2 - - @clerk/shared@3.7.3 - -## 4.5.19 - -### Patch Changes - -- Updated dependencies [[`45486ac`](https://github.com/clerk/javascript/commit/45486acebf4d133efb09a3622a738cdbf4e51d66), [`837692a`](https://github.com/clerk/javascript/commit/837692aa40197b1574783ad36d0d017a771c08e1), [`0c00e59`](https://github.com/clerk/javascript/commit/0c00e59ff4714491650ac9480ae3b327c626d30d), [`6a5f644`](https://github.com/clerk/javascript/commit/6a5f6447a36a635d6201f8bb7619fb844ab21b79)]: - - @clerk/types@4.54.2 - - @clerk/backend@1.29.1 - - @clerk/shared@3.7.2 - - @clerk/clerk-react@5.28.2 - -## 4.5.18 - -### Patch Changes - -- Improve JSDoc comments ([#5630](https://github.com/clerk/javascript/pull/5630)) by [@LekoArts](https://github.com/LekoArts) - -- Updated dependencies [[`ab939fd`](https://github.com/clerk/javascript/commit/ab939fdb29150c376280b42f861a188a33f57dcc), [`03284da`](https://github.com/clerk/javascript/commit/03284da6a93a790ce3e3ebbd871c06e19f5a8803), [`7389ba3`](https://github.com/clerk/javascript/commit/7389ba3164ca0d848fb0a9de5d7e9716925fadcc), [`00f16e4`](https://github.com/clerk/javascript/commit/00f16e4c62fc9e965c352a4fd199c7fad8704f79), [`bb35660`](https://github.com/clerk/javascript/commit/bb35660884d04c8a426790ed439592e33434c87f), [`efb5d8c`](https://github.com/clerk/javascript/commit/efb5d8c03b14f6c2b5ecaed55a09869abe76ebbc), [`c2712e7`](https://github.com/clerk/javascript/commit/c2712e7f288271c022b5586b8b4718f57c9b6007), [`aa93f7f`](https://github.com/clerk/javascript/commit/aa93f7f94b5e146eb7166244f7e667213fa210ca), [`a7f3ebc`](https://github.com/clerk/javascript/commit/a7f3ebc63adbab274497ca24279862d2788423c7), [`d3fa403`](https://github.com/clerk/javascript/commit/d3fa4036b7768134131c008c087a90a841f225e5), [`f6ef841`](https://github.com/clerk/javascript/commit/f6ef841125ff21ca8cae731d1f47f3a101d887e1), [`6cba4e2`](https://github.com/clerk/javascript/commit/6cba4e28e904779dd448a7c29d761fcf53465dbf), [`fb6aa20`](https://github.com/clerk/javascript/commit/fb6aa20abe1c0c8579ba8f07343474f915bc22c6), [`e634830`](https://github.com/clerk/javascript/commit/e6348301ab56a7868f24c1b9a4dd9e1d60f6027b), [`f8887b2`](https://github.com/clerk/javascript/commit/f8887b2cbd145e8e49bec890e8b6e02e34178d6a)]: - - @clerk/types@4.54.1 - - @clerk/backend@1.29.0 - - @clerk/shared@3.7.1 - - @clerk/clerk-react@5.28.1 - -## 4.5.17 - -### Patch Changes - -- Updated dependencies [[`431a821`](https://github.com/clerk/javascript/commit/431a821b590835bcf6193a4cbdd234c5e763e08c), [`950ffed`](https://github.com/clerk/javascript/commit/950ffedd5ce93678274c721400fc7464bb1e2f99), [`d3e6c32`](https://github.com/clerk/javascript/commit/d3e6c32864487bb9c4dec361866ec2cd427b7cd0), [`e4d04ae`](https://github.com/clerk/javascript/commit/e4d04aea490ab67e3431729398d3f4c46fc3e7e7), [`431a821`](https://github.com/clerk/javascript/commit/431a821b590835bcf6193a4cbdd234c5e763e08c), [`93068ea`](https://github.com/clerk/javascript/commit/93068ea9eb19d8c8b9c7ade35d0cd860e08049fc), [`431a821`](https://github.com/clerk/javascript/commit/431a821b590835bcf6193a4cbdd234c5e763e08c), [`431a821`](https://github.com/clerk/javascript/commit/431a821b590835bcf6193a4cbdd234c5e763e08c), [`103bc03`](https://github.com/clerk/javascript/commit/103bc03571c8845df205f4c6fd0c871c3368d1d0), [`431a821`](https://github.com/clerk/javascript/commit/431a821b590835bcf6193a4cbdd234c5e763e08c), [`a0cc247`](https://github.com/clerk/javascript/commit/a0cc24764cc2229abae97f7c9183b413609febc7), [`85ed003`](https://github.com/clerk/javascript/commit/85ed003e65802ac02d69d7b671848938c9816c45), [`48438b4`](https://github.com/clerk/javascript/commit/48438b409036088701bda7e1e732d6a51bee8cdc), [`e60e3aa`](https://github.com/clerk/javascript/commit/e60e3aa41630b987b6a481643caf67d70584f2e1), [`65712dc`](https://github.com/clerk/javascript/commit/65712dccb3f3f2bc6028e53406e3f7f31622e961), [`9ee0531`](https://github.com/clerk/javascript/commit/9ee0531c81d1bb260ec0f87130d8394d7825b6d4), [`78d22d4`](https://github.com/clerk/javascript/commit/78d22d443446ac1c0d30b1b93aaf5cddde75a9a3), [`196dcb4`](https://github.com/clerk/javascript/commit/196dcb47928bd22a3382197f8594a590f688faee)]: - - @clerk/backend@1.28.0 - - @clerk/types@4.54.0 - - @clerk/shared@3.7.0 - - @clerk/clerk-react@5.28.0 - -## 4.5.16 - -### Patch Changes - -- Updated dependencies [[`70c9db9`](https://github.com/clerk/javascript/commit/70c9db9f3b51ba034f76e0cc4cf338e7b406d9b1), [`554242e`](https://github.com/clerk/javascript/commit/554242e16e50c92a6afb6ed74c681b04b9f113b5), [`cc1f9a0`](https://github.com/clerk/javascript/commit/cc1f9a0adb7771b615b0f2994a5ac571b59889dd), [`8186cb5`](https://github.com/clerk/javascript/commit/8186cb564575ac3ce97079ec203865bf5deb05ee)]: - - @clerk/backend@1.27.3 - - @clerk/shared@3.6.0 - - @clerk/clerk-react@5.27.0 - - @clerk/types@4.53.0 - -## 4.5.15 - -### Patch Changes - -- Updated dependencies [[`3ad3bc8`](https://github.com/clerk/javascript/commit/3ad3bc8380b354b0cd952eb58eb6c07650efa0f2), [`3ad3bc8`](https://github.com/clerk/javascript/commit/3ad3bc8380b354b0cd952eb58eb6c07650efa0f2), [`cfa94b8`](https://github.com/clerk/javascript/commit/cfa94b88476608edf8c2486e8ec0d3f3f82e0bfb), [`2033919`](https://github.com/clerk/javascript/commit/203391964857b98dae11944799d1e6328439e838), [`1b34bcb`](https://github.com/clerk/javascript/commit/1b34bcb17e1a7f22644c0ea073857c528a8f81b7), [`5f3cc46`](https://github.com/clerk/javascript/commit/5f3cc460b6b775b5a74746758b8cff11649a877a)]: - - @clerk/shared@3.5.0 - - @clerk/types@4.52.0 - - @clerk/backend@1.27.2 - - @clerk/clerk-react@5.26.2 - -## 4.5.14 - -### Patch Changes - -- Updated dependencies [[`f6f275d`](https://github.com/clerk/javascript/commit/f6f275dac5ae83ac0c2016a85a6a0cee9513f224)]: - - @clerk/backend@1.27.1 - - @clerk/types@4.51.1 - - @clerk/clerk-react@5.26.1 - - @clerk/shared@3.4.1 - -## 4.5.13 - -### Patch Changes - -- Updated dependencies [[`e1ec52b`](https://github.com/clerk/javascript/commit/e1ec52b93038c9cb24e030dc06e53825a384a480), [`bebb6d8`](https://github.com/clerk/javascript/commit/bebb6d8af66b2bb7a4b3bdf96f9d480e65b31ba2), [`a8180ce`](https://github.com/clerk/javascript/commit/a8180ceef447a13d84eac6a64ed7a04d791d8d64), [`d0d5203`](https://github.com/clerk/javascript/commit/d0d5203e4ee9e2e1bed5c00ef0f87f0130f1d298), [`6112420`](https://github.com/clerk/javascript/commit/6112420889f1577fb16d7bfa706aaffe1090093d), [`2cceeba`](https://github.com/clerk/javascript/commit/2cceeba177ecf5a28138da308cbba18015e3a646), [`026ad57`](https://github.com/clerk/javascript/commit/026ad5717cf661182c219fb0ffab4522083065c3), [`9b25e31`](https://github.com/clerk/javascript/commit/9b25e311cf5e15f896c7948faa42ace45df364c5)]: - - @clerk/clerk-react@5.26.0 - - @clerk/types@4.51.0 - - @clerk/backend@1.27.0 - - @clerk/shared@3.4.0 - -## 4.5.12 - -### Patch Changes - -- Updated dependencies [[`60a9a51`](https://github.com/clerk/javascript/commit/60a9a51dff7d59e7397536586cf1cfe029bc021b), [`e984494`](https://github.com/clerk/javascript/commit/e984494416dda9a6f04acaaba61f8c2683090961), [`cd6ee92`](https://github.com/clerk/javascript/commit/cd6ee92d5b427ca548216f429ca4e31c6acd263c), [`ec4521b`](https://github.com/clerk/javascript/commit/ec4521b4fe56602f524a0c6d1b09d21aef5d8bd0), [`38828ae`](https://github.com/clerk/javascript/commit/38828ae58d6d4e8e3c60945284930179b2b6bb40), [`f30fa75`](https://github.com/clerk/javascript/commit/f30fa750754f19030f932a666d2bdbdf0d86743d), [`9c68678`](https://github.com/clerk/javascript/commit/9c68678e87047e6312b708b775ebfb23a3e22f8a), [`fe065a9`](https://github.com/clerk/javascript/commit/fe065a934c583174ad4c140e04dedbe6d88fc3a0), [`619cde8`](https://github.com/clerk/javascript/commit/619cde8c532d635d910ebbc08ad6abcc025694b4)]: - - @clerk/backend@1.26.0 - - @clerk/shared@3.3.0 - - @clerk/clerk-react@5.25.6 - - @clerk/types@4.50.2 - -## 4.5.11 - -### Patch Changes - -- Updated dependencies [[`e20fb6b`](https://github.com/clerk/javascript/commit/e20fb6b397fb69c9d5af4e321267b82f12a5f127), [`77e6462`](https://github.com/clerk/javascript/commit/77e64628560cab688af214edb5922e67cd68a951)]: - - @clerk/shared@3.2.3 - - @clerk/types@4.50.1 - - @clerk/clerk-react@5.25.5 - - @clerk/backend@1.25.8 - -## 4.5.10 - -### Patch Changes - -- Updated dependencies [[`1da28a2`](https://github.com/clerk/javascript/commit/1da28a28bf602069b433c15b92df21f682779294), [`a9b618d`](https://github.com/clerk/javascript/commit/a9b618dfa97a0dacc462186c8b2588ad5ddb6902), [`f20dc15`](https://github.com/clerk/javascript/commit/f20dc159f542449e7f5b437b70d3eb3ba04d6975), [`4d9f1ee`](https://github.com/clerk/javascript/commit/4d9f1ee8c22fe1e4a166ff054d0af4d37b829f0a)]: - - @clerk/types@4.50.0 - - @clerk/shared@3.2.2 - - @clerk/backend@1.25.7 - - @clerk/clerk-react@5.25.4 - -## 4.5.9 - -### Patch Changes - -- Updated dependencies [[`27d66a5`](https://github.com/clerk/javascript/commit/27d66a5b252afd18a3491b2746ef2f2f05632f2a), [`466ed13`](https://github.com/clerk/javascript/commit/466ed136af73b59b267d92ad3296039d1c3a4fcc)]: - - @clerk/backend@1.25.6 - - @clerk/types@4.49.2 - - @clerk/clerk-react@5.25.3 - - @clerk/shared@3.2.1 - -## 4.5.8 - -### Patch Changes - -- Updated dependencies [[`892bc0e`](https://github.com/clerk/javascript/commit/892bc0eee9e0bb04d327eb84b44201fa34806483), [`892bc0e`](https://github.com/clerk/javascript/commit/892bc0eee9e0bb04d327eb84b44201fa34806483)]: - - @clerk/backend@1.25.5 - - @clerk/shared@3.2.0 - - @clerk/clerk-react@5.25.2 - -## 4.5.7 - -### Patch Changes - -- Export `isReverificationCancelledError` error helper ([#5396](https://github.com/clerk/javascript/pull/5396)) by [@octoper](https://github.com/octoper) - -- Updated dependencies [[`facefaf`](https://github.com/clerk/javascript/commit/facefafdaf6d602de0acee9218c66c61a0a9ba24), [`e513333`](https://github.com/clerk/javascript/commit/e5133330a196c5c3742634cc9c3d3233ff488b0d), [`3910ebe`](https://github.com/clerk/javascript/commit/3910ebea85817273f18fd2f3f142dd1c728e2220), [`e513333`](https://github.com/clerk/javascript/commit/e5133330a196c5c3742634cc9c3d3233ff488b0d)]: - - @clerk/backend@1.25.4 - - @clerk/clerk-react@5.25.1 - - @clerk/types@4.49.1 - - @clerk/shared@3.1.0 - -## 4.5.6 - -### Patch Changes - -- Updated dependencies [[`725918d`](https://github.com/clerk/javascript/commit/725918df2e74cea15e9b748aaf103a52df8e8500), [`10247ba`](https://github.com/clerk/javascript/commit/10247ba2d08d98d6c440b254a4b786f4f1e8967a), [`91d0f0b`](https://github.com/clerk/javascript/commit/91d0f0b0dccab7168ad4dc06c8629808938c235f), [`9572bf5`](https://github.com/clerk/javascript/commit/9572bf5bdfb7dc309ec8714989b98ab12174965b), [`39bbc51`](https://github.com/clerk/javascript/commit/39bbc5189a33dc6cebdc269ac2184dc4ffff2534), [`3dddcda`](https://github.com/clerk/javascript/commit/3dddcda191d8f8d6a9b02464f1f6374d3c6aacb9), [`7524943`](https://github.com/clerk/javascript/commit/7524943300d7e693d61cc1820b520abfadec1c64), [`150b5c8`](https://github.com/clerk/javascript/commit/150b5c89477abb0feab15e0a886179473f653cac), [`23c931e`](https://github.com/clerk/javascript/commit/23c931e9e95e6de992549ad499b477aca9a9c344), [`730262f`](https://github.com/clerk/javascript/commit/730262f0f973923c8749b09078c80c2fc966a8ec), [`5601a15`](https://github.com/clerk/javascript/commit/5601a15e69a7d5e2496dcd82541ca3e6d73b0a3f), [`0b18bb1`](https://github.com/clerk/javascript/commit/0b18bb1fe6fa3ded97547bb6b4d2c73030aad329), [`021bc5f`](https://github.com/clerk/javascript/commit/021bc5f40044d34e49956ce3c9b61d833d815b42), [`1a61390`](https://github.com/clerk/javascript/commit/1a61390d3482bd4af58508b972ad89dea56fa224)]: - - @clerk/types@4.49.0 - - @clerk/clerk-react@5.25.0 - - @clerk/backend@1.25.3 - - @clerk/shared@3.0.2 - -## 4.5.5 - -### Patch Changes - -- Updated dependencies [[`8182f6711e25cc4a78baa95b023a4158280b31e8`](https://github.com/clerk/javascript/commit/8182f6711e25cc4a78baa95b023a4158280b31e8), [`75879672c5805bfba1caca906ac0729497744164`](https://github.com/clerk/javascript/commit/75879672c5805bfba1caca906ac0729497744164), [`7ec95a7e59033600958aca4b86f3bcd5da947dec`](https://github.com/clerk/javascript/commit/7ec95a7e59033600958aca4b86f3bcd5da947dec), [`3c225d90227141dc62d955e76c7f8e0202524bc7`](https://github.com/clerk/javascript/commit/3c225d90227141dc62d955e76c7f8e0202524bc7), [`2a66c16af08573000bb619607346ac420cd4ce56`](https://github.com/clerk/javascript/commit/2a66c16af08573000bb619607346ac420cd4ce56)]: - - @clerk/backend@1.25.2 - - @clerk/shared@3.0.1 - - @clerk/clerk-react@5.24.2 - - @clerk/types@4.48.0 - -## 4.5.4 - -### Patch Changes - -- Updated dependencies [[`67f1743aa1e0705d89ee6b532007f2686929240b`](https://github.com/clerk/javascript/commit/67f1743aa1e0705d89ee6b532007f2686929240b)]: - - @clerk/backend@1.25.1 - - @clerk/clerk-react@5.24.1 - -## 4.5.3 - -### Patch Changes - -- Updated dependencies [[`4fa5e27e33d229492c77e06ca4b26d552ff3d92f`](https://github.com/clerk/javascript/commit/4fa5e27e33d229492c77e06ca4b26d552ff3d92f), [`29a44b0e5c551e52915f284545699010a87e1a48`](https://github.com/clerk/javascript/commit/29a44b0e5c551e52915f284545699010a87e1a48), [`4d7761a24af5390489653923165e55cbf69a8a6d`](https://github.com/clerk/javascript/commit/4d7761a24af5390489653923165e55cbf69a8a6d)]: - - @clerk/backend@1.25.0 - - @clerk/clerk-react@5.24.1 - -## 4.5.2 - -### Patch Changes - -- Updated dependencies [[`3d436484eb01b42e0008b6675f4be68f15d21079`](https://github.com/clerk/javascript/commit/3d436484eb01b42e0008b6675f4be68f15d21079)]: - - @clerk/clerk-react@5.24.1 - -## 4.5.1 - -### Patch Changes - -- Updated dependencies [[`28179323d9891bd13625e32c5682a3276e73cdae`](https://github.com/clerk/javascript/commit/28179323d9891bd13625e32c5682a3276e73cdae), [`7ae77b74326e378bf161e29886ee82e1556d9840`](https://github.com/clerk/javascript/commit/7ae77b74326e378bf161e29886ee82e1556d9840), [`c5c246ce91c01db9f1eaccbd354f646bcd24ec0a`](https://github.com/clerk/javascript/commit/c5c246ce91c01db9f1eaccbd354f646bcd24ec0a), [`b707e942bfd434ff8a3b9a9fadf9d1b694d702c8`](https://github.com/clerk/javascript/commit/b707e942bfd434ff8a3b9a9fadf9d1b694d702c8), [`bcbe5f6382ebcc70ef4fddb950d052bf6b7d693a`](https://github.com/clerk/javascript/commit/bcbe5f6382ebcc70ef4fddb950d052bf6b7d693a), [`382c30240f563e58bc4d4832557c6825da40ce7f`](https://github.com/clerk/javascript/commit/382c30240f563e58bc4d4832557c6825da40ce7f)]: - - @clerk/types@4.47.0 - - @clerk/shared@3.0.0 - - @clerk/clerk-react@5.24.0 - - @clerk/backend@1.24.3 - -## 4.5.0 - -### Minor Changes - -- Introduce `EmailLinkErrorCodeStatus` to support users in custom flows and mark `EmailLinkErrorCode` as deprecated. ([#5142](https://github.com/clerk/javascript/pull/5142)) by [@alexcarpenter](https://github.com/alexcarpenter) - - ```diff - - import { EmailLinkErrorCode } from '@clerk/nextjs/errors' - + import { EmailLinkErrorCodeStatus } from '@clerk/nextjs/errors' - ``` - -### Patch Changes - -- Updated dependencies [[`d76c4699990b8477745c2584b1b98d5c92f9ace6`](https://github.com/clerk/javascript/commit/d76c4699990b8477745c2584b1b98d5c92f9ace6), [`a9b0087fca3f427f65907b358d9b5bc0c95921d8`](https://github.com/clerk/javascript/commit/a9b0087fca3f427f65907b358d9b5bc0c95921d8), [`92d17d7c087470b262fa5407cb6720fe6b17d333`](https://github.com/clerk/javascript/commit/92d17d7c087470b262fa5407cb6720fe6b17d333), [`30f6f3808e9b3778d5a9eb275780f94f9e9c7651`](https://github.com/clerk/javascript/commit/30f6f3808e9b3778d5a9eb275780f94f9e9c7651)]: - - @clerk/shared@2.22.0 - - @clerk/clerk-react@5.23.0 - - @clerk/types@4.46.1 - - @clerk/backend@1.24.2 - -## 4.4.24 - -### Patch Changes - -- Updated dependencies [[`dd2cbfe9f30358b6b298901bb52fa378b0acdca3`](https://github.com/clerk/javascript/commit/dd2cbfe9f30358b6b298901bb52fa378b0acdca3), [`dd2cbfe9f30358b6b298901bb52fa378b0acdca3`](https://github.com/clerk/javascript/commit/dd2cbfe9f30358b6b298901bb52fa378b0acdca3), [`570d8386f6aa596bf7bb1659bdddb8dd4d992b1d`](https://github.com/clerk/javascript/commit/570d8386f6aa596bf7bb1659bdddb8dd4d992b1d), [`570d8386f6aa596bf7bb1659bdddb8dd4d992b1d`](https://github.com/clerk/javascript/commit/570d8386f6aa596bf7bb1659bdddb8dd4d992b1d), [`128fd8909ae083c0d274dee7c6810e8574e1ce33`](https://github.com/clerk/javascript/commit/128fd8909ae083c0d274dee7c6810e8574e1ce33)]: - - @clerk/clerk-react@5.22.13 - - @clerk/types@4.46.0 - - @clerk/backend@1.24.1 - - @clerk/shared@2.21.1 - -## 4.4.23 - -### Patch Changes - -- Adds types for organization domain webhook events ([#4819](https://github.com/clerk/javascript/pull/4819)) by [@ijxy](https://github.com/ijxy) - -- Updated dependencies [[`ce44176efd4f2132001c49b815cbee409463bbea`](https://github.com/clerk/javascript/commit/ce44176efd4f2132001c49b815cbee409463bbea), [`f41081c563ddd2afc05b837358e0de087ae0c895`](https://github.com/clerk/javascript/commit/f41081c563ddd2afc05b837358e0de087ae0c895), [`767ac85fe6ce0ee0594c923e9af701bb05f40a0b`](https://github.com/clerk/javascript/commit/767ac85fe6ce0ee0594c923e9af701bb05f40a0b), [`225b38c7187d31fc755155ea99834ca03894d36b`](https://github.com/clerk/javascript/commit/225b38c7187d31fc755155ea99834ca03894d36b), [`c0f2daebe15642cd0cef16aafa1df1ece8ef771d`](https://github.com/clerk/javascript/commit/c0f2daebe15642cd0cef16aafa1df1ece8ef771d), [`429f1bfe5f7a554ab1fdf265475ba6c8b3f78472`](https://github.com/clerk/javascript/commit/429f1bfe5f7a554ab1fdf265475ba6c8b3f78472), [`5faa60e805ef14d9496a6caf9ff4dd8ec500c7e2`](https://github.com/clerk/javascript/commit/5faa60e805ef14d9496a6caf9ff4dd8ec500c7e2)]: - - @clerk/backend@1.24.0 - - @clerk/shared@2.21.0 - - @clerk/types@4.45.1 - - @clerk/clerk-react@5.22.12 - -## 4.4.22 - -### Patch Changes - -- Updated dependencies [[`0fa449cd09c9973297464a14f785895e3ddcab4d`](https://github.com/clerk/javascript/commit/0fa449cd09c9973297464a14f785895e3ddcab4d)]: - - @clerk/clerk-react@5.22.11 - -## 4.4.21 - -### Patch Changes - -- Updated dependencies [[`d3152be7f01fbb5ca26aeddc2437021f4b7ecc83`](https://github.com/clerk/javascript/commit/d3152be7f01fbb5ca26aeddc2437021f4b7ecc83), [`f976349243da2b75023e59e802460e6f3592ebbd`](https://github.com/clerk/javascript/commit/f976349243da2b75023e59e802460e6f3592ebbd)]: - - @clerk/types@4.45.0 - - @clerk/backend@1.23.11 - - @clerk/clerk-react@5.22.10 - - @clerk/shared@2.20.18 - -## 4.4.20 - -### Patch Changes - -- Updated dependencies [[`26225f2c31a22560f7ece2e02f1d0080b5b89520`](https://github.com/clerk/javascript/commit/26225f2c31a22560f7ece2e02f1d0080b5b89520), [`833693a6792b621e72162d70673e7bdfa84a69b6`](https://github.com/clerk/javascript/commit/833693a6792b621e72162d70673e7bdfa84a69b6)]: - - @clerk/shared@2.20.17 - - @clerk/clerk-react@5.22.9 - - @clerk/types@4.44.3 - - @clerk/backend@1.23.10 - -## 4.4.19 - -### Patch Changes - -- Updated dependencies [[`a309be354275b91a7b17d5a67e8ef6aa230a9935`](https://github.com/clerk/javascript/commit/a309be354275b91a7b17d5a67e8ef6aa230a9935), [`4773d0ad4ed27928fa53357906c0f3a349b9f871`](https://github.com/clerk/javascript/commit/4773d0ad4ed27928fa53357906c0f3a349b9f871), [`1345cb487970a7347351897e80dfb829d85c41ea`](https://github.com/clerk/javascript/commit/1345cb487970a7347351897e80dfb829d85c41ea)]: - - @clerk/shared@2.20.16 - - @clerk/backend@1.23.9 - - @clerk/types@4.44.2 - - @clerk/clerk-react@5.22.8 - -## 4.4.18 - -### Patch Changes - -- Updated dependencies [[`57c983fdc2b8d883623a2294daae0ac6c02c48f6`](https://github.com/clerk/javascript/commit/57c983fdc2b8d883623a2294daae0ac6c02c48f6), [`a26cf0ff10c76244975c454fdf6c615475d4bcd5`](https://github.com/clerk/javascript/commit/a26cf0ff10c76244975c454fdf6c615475d4bcd5), [`dd58c2507f8a7af4ebfc1241e2672a5678a83eaa`](https://github.com/clerk/javascript/commit/dd58c2507f8a7af4ebfc1241e2672a5678a83eaa)]: - - @clerk/types@4.44.1 - - @clerk/shared@2.20.15 - - @clerk/backend@1.23.8 - - @clerk/clerk-react@5.22.7 - -## 4.4.17 - -### Patch Changes - -- Updated dependencies [[`2179690c10a61b117e82fdd566b34939f4d28bc1`](https://github.com/clerk/javascript/commit/2179690c10a61b117e82fdd566b34939f4d28bc1), [`bdb537a9902c0f0ae58ca1d4b7590d929f28fedb`](https://github.com/clerk/javascript/commit/bdb537a9902c0f0ae58ca1d4b7590d929f28fedb)]: - - @clerk/types@4.44.0 - - @clerk/backend@1.23.7 - - @clerk/clerk-react@5.22.6 - - @clerk/shared@2.20.14 - -## 4.4.16 - -### Patch Changes - -- Updated dependencies [[`f87ede848265d75ea1e880a3ab80c53a250f42cf`](https://github.com/clerk/javascript/commit/f87ede848265d75ea1e880a3ab80c53a250f42cf), [`e0cea9a9bf8b90858067154cba9c149d1634dc91`](https://github.com/clerk/javascript/commit/e0cea9a9bf8b90858067154cba9c149d1634dc91), [`6126cc98281bca96797fd8a55b6ec6aeda397e46`](https://github.com/clerk/javascript/commit/6126cc98281bca96797fd8a55b6ec6aeda397e46), [`6e096564a459db4eaf953e99e570905b10be6c84`](https://github.com/clerk/javascript/commit/6e096564a459db4eaf953e99e570905b10be6c84)]: - - @clerk/shared@2.20.13 - - @clerk/backend@1.23.6 - - @clerk/types@4.43.0 - - @clerk/clerk-react@5.22.5 - -## 4.4.15 - -### Patch Changes - -- Fix incorrect type for `authorizedParties` option ([#4964](https://github.com/clerk/javascript/pull/4964)) by [@LekoArts](https://github.com/LekoArts) - -- Updated dependencies [[`fe3e49f61acefe8d7f1992405f7cb415fea2e5c8`](https://github.com/clerk/javascript/commit/fe3e49f61acefe8d7f1992405f7cb415fea2e5c8), [`4427c4702f64d4f28f7564ce5889d41e260aa519`](https://github.com/clerk/javascript/commit/4427c4702f64d4f28f7564ce5889d41e260aa519)]: - - @clerk/types@4.42.0 - - @clerk/backend@1.23.5 - - @clerk/clerk-react@5.22.4 - - @clerk/shared@2.20.12 - -## 4.4.14 - -### Patch Changes - -- Updated dependencies [[`418ec5c62c4eb600566faab07684c068a29007e3`](https://github.com/clerk/javascript/commit/418ec5c62c4eb600566faab07684c068a29007e3)]: - - @clerk/types@4.41.2 - - @clerk/clerk-react@5.22.3 - - @clerk/backend@1.23.4 - - @clerk/shared@2.20.11 - -## 4.4.13 - -### Patch Changes - -- Standardizing ambient declaration files for all SDKs ([#4919](https://github.com/clerk/javascript/pull/4919)) by [@jacekradko](https://github.com/jacekradko) - -- Updated dependencies [[`9eef7713212378351e8e01628611eaa18de250e8`](https://github.com/clerk/javascript/commit/9eef7713212378351e8e01628611eaa18de250e8)]: - - @clerk/shared@2.20.10 - - @clerk/clerk-react@5.22.2 - - @clerk/backend@1.23.3 - -## 4.4.12 - -### Patch Changes - -- Updated dependencies [[`7ffc99b48977b9f6c74c0c71c500b60cb8aba65e`](https://github.com/clerk/javascript/commit/7ffc99b48977b9f6c74c0c71c500b60cb8aba65e)]: - - @clerk/types@4.41.1 - - @clerk/backend@1.23.2 - - @clerk/clerk-react@5.22.1 - - @clerk/shared@2.20.9 - -## 4.4.11 - -### Patch Changes - -- Updated dependencies [[`4af35380f18d1d06c15ad1f5745c2d5a1ab1c37d`](https://github.com/clerk/javascript/commit/4af35380f18d1d06c15ad1f5745c2d5a1ab1c37d), [`aa48b1f9e890b2402e9d05989a4820141076f7bf`](https://github.com/clerk/javascript/commit/aa48b1f9e890b2402e9d05989a4820141076f7bf), [`53bd34fff38b17498edf66cc4bc2d42d707f28dc`](https://github.com/clerk/javascript/commit/53bd34fff38b17498edf66cc4bc2d42d707f28dc)]: - - @clerk/types@4.41.0 - - @clerk/clerk-react@5.22.0 - - @clerk/backend@1.23.1 - - @clerk/shared@2.20.8 - -## 4.4.10 - -### Patch Changes - -- Updated dependencies [[`e9e8834f7bfc953c3ae66fedf65b6952689c49da`](https://github.com/clerk/javascript/commit/e9e8834f7bfc953c3ae66fedf65b6952689c49da), [`fd7a5be73db3acaa7daeb9b15af73c2ce99d03a6`](https://github.com/clerk/javascript/commit/fd7a5be73db3acaa7daeb9b15af73c2ce99d03a6), [`7182b93101518a389cc13859f8a0fe8bd6f37a06`](https://github.com/clerk/javascript/commit/7182b93101518a389cc13859f8a0fe8bd6f37a06)]: - - @clerk/backend@1.23.0 - - @clerk/types@4.40.3 - - @clerk/clerk-react@5.21.3 - - @clerk/shared@2.20.7 - -## 4.4.9 - -### Patch Changes - -- Updated dependencies [[`72d29538f587934309da96fc1c6d454bb9aad21e`](https://github.com/clerk/javascript/commit/72d29538f587934309da96fc1c6d454bb9aad21e), [`84867be0215d7f74d8be7b4f803e2c3a241e2f89`](https://github.com/clerk/javascript/commit/84867be0215d7f74d8be7b4f803e2c3a241e2f89), [`fa967ce79e1b5f2e8216eb09900879cb825fa528`](https://github.com/clerk/javascript/commit/fa967ce79e1b5f2e8216eb09900879cb825fa528)]: - - @clerk/backend@1.22.0 - -## 4.4.8 - -### Patch Changes - -- Updated dependencies [[`44cab6038af0a4d23869b3b292ece742fbbc4d85`](https://github.com/clerk/javascript/commit/44cab6038af0a4d23869b3b292ece742fbbc4d85)]: - - @clerk/backend@1.21.6 - - @clerk/types@4.40.2 - - @clerk/clerk-react@5.21.2 - - @clerk/shared@2.20.6 - -## 4.4.7 - -### Patch Changes - -- Updated dependencies [[`80e1117631d35834705119a79cdcf9e0ed423fdd`](https://github.com/clerk/javascript/commit/80e1117631d35834705119a79cdcf9e0ed423fdd)]: - - @clerk/types@4.40.1 - - @clerk/clerk-react@5.21.1 - - @clerk/backend@1.21.5 - - @clerk/shared@2.20.5 - -## 4.4.6 - -### Patch Changes - -- Updated dependencies [[`b5eb15bf81d94456309d6ca44ad423a4175d50b6`](https://github.com/clerk/javascript/commit/b5eb15bf81d94456309d6ca44ad423a4175d50b6), [`b933a2ba8112aefbabd7fe3313b89e083452d2dd`](https://github.com/clerk/javascript/commit/b933a2ba8112aefbabd7fe3313b89e083452d2dd)]: - - @clerk/clerk-react@5.21.0 - -## 4.4.5 - -### Patch Changes - -- Updated dependencies [[`b3300c84a42276bd071a37addbd1ca6888ed9d7c`](https://github.com/clerk/javascript/commit/b3300c84a42276bd071a37addbd1ca6888ed9d7c), [`c9da04636ffe1ba804a1ce5e5b79027d3a2344d2`](https://github.com/clerk/javascript/commit/c9da04636ffe1ba804a1ce5e5b79027d3a2344d2)]: - - @clerk/backend@1.21.4 - - @clerk/types@4.40.0 - - @clerk/clerk-react@5.20.4 - - @clerk/shared@2.20.4 - -## 4.4.4 - -### Patch Changes - -- Updated dependencies [[`84ccb0049041534f111be65f7c7d4d6120069446`](https://github.com/clerk/javascript/commit/84ccb0049041534f111be65f7c7d4d6120069446)]: - - @clerk/shared@2.20.3 - - @clerk/backend@1.21.3 - - @clerk/clerk-react@5.20.3 - -## 4.4.3 - -### Patch Changes - -- Add note about React Router v7 to the README. If you want to use React Router v7 and Clerk together, please use the [`@clerk/react-router`](https://clerk.com/docs/references/react-router/overview) SDK instead. ([#4783](https://github.com/clerk/javascript/pull/4783)) by [@LekoArts](https://github.com/LekoArts) - -- Updated dependencies []: - - @clerk/clerk-react@5.20.2 - -## 4.4.2 - -### Patch Changes - -- Updated dependencies [[`aeafa7c5efd50c893d088ac99199d7eaecc04025`](https://github.com/clerk/javascript/commit/aeafa7c5efd50c893d088ac99199d7eaecc04025), [`acd9326ef2d6942b981b3ee59c4b20ddd303323d`](https://github.com/clerk/javascript/commit/acd9326ef2d6942b981b3ee59c4b20ddd303323d)]: - - @clerk/types@4.39.4 - - @clerk/clerk-react@5.20.2 - - @clerk/backend@1.21.2 - - @clerk/shared@2.20.2 - -## 4.4.1 - -### Patch Changes - -- Using the same peerDependencies semver for react and react-dom ([#4758](https://github.com/clerk/javascript/pull/4758)) by [@jacekradko](https://github.com/jacekradko) - -- Updated dependencies [[`66ad299e4b6496ea4a93799de0f1ecfad920ddad`](https://github.com/clerk/javascript/commit/66ad299e4b6496ea4a93799de0f1ecfad920ddad), [`dd3fdc7b2a96ddb90b33c6f1cefb055a60f99a9d`](https://github.com/clerk/javascript/commit/dd3fdc7b2a96ddb90b33c6f1cefb055a60f99a9d), [`e1748582d0c89462f48a482a7805871b7065fa19`](https://github.com/clerk/javascript/commit/e1748582d0c89462f48a482a7805871b7065fa19), [`7f7edcaa8228c26d19e9081979100ada7e982095`](https://github.com/clerk/javascript/commit/7f7edcaa8228c26d19e9081979100ada7e982095), [`e1748582d0c89462f48a482a7805871b7065fa19`](https://github.com/clerk/javascript/commit/e1748582d0c89462f48a482a7805871b7065fa19), [`dd3fdc7b2a96ddb90b33c6f1cefb055a60f99a9d`](https://github.com/clerk/javascript/commit/dd3fdc7b2a96ddb90b33c6f1cefb055a60f99a9d)]: - - @clerk/shared@2.20.1 - - @clerk/clerk-react@5.20.1 - - @clerk/types@4.39.3 - - @clerk/backend@1.21.1 - -## 4.4.0 - -### Minor Changes - -- Switching to use ^ for semver ranges of internal @clerk/ production dependencies. ([#4664](https://github.com/clerk/javascript/pull/4664)) by [@jacekradko](https://github.com/jacekradko) - -### Patch Changes - -- Updated dependencies [[`9d656c16bc78ac31b59b5edbd25118dfc33c4469`](https://github.com/clerk/javascript/commit/9d656c16bc78ac31b59b5edbd25118dfc33c4469), [`ffa631d2480cfe77bf08c61b1302ace308e5b630`](https://github.com/clerk/javascript/commit/ffa631d2480cfe77bf08c61b1302ace308e5b630), [`0266f6a73fc34748a86603bc89b6125d6bbb679b`](https://github.com/clerk/javascript/commit/0266f6a73fc34748a86603bc89b6125d6bbb679b)]: - - @clerk/clerk-react@5.20.0 - - @clerk/backend@1.21.0 - - @clerk/shared@2.20.0 - -## 4.3.6 - -### Patch Changes - -- Updated dependencies [[`cd72a27a75863dfd94b0a00ed5b2d03231556bc0`](https://github.com/clerk/javascript/commit/cd72a27a75863dfd94b0a00ed5b2d03231556bc0)]: - - @clerk/types@4.39.2 - - @clerk/backend@1.20.3 - - @clerk/clerk-react@5.19.3 - - @clerk/shared@2.19.4 - -## 4.3.5 - -### Patch Changes - -- Updated dependencies [[`fe75ced8a7d8b8a28839430444588ee173b5230a`](https://github.com/clerk/javascript/commit/fe75ced8a7d8b8a28839430444588ee173b5230a), [`1b86a1da34ce4bc309f69980ac13a691a0a633c2`](https://github.com/clerk/javascript/commit/1b86a1da34ce4bc309f69980ac13a691a0a633c2)]: - - @clerk/backend@1.20.2 - - @clerk/types@4.39.1 - - @clerk/clerk-react@5.19.2 - - @clerk/shared@2.19.3 - -## 4.3.4 - -### Patch Changes - -- Updated dependencies [[`4cb22548da81dd8b186a6ef1cf120aea99c85c62`](https://github.com/clerk/javascript/commit/4cb22548da81dd8b186a6ef1cf120aea99c85c62)]: - - @clerk/shared@2.19.2 - - @clerk/backend@1.20.1 - - @clerk/clerk-react@5.19.1 - -## 4.3.3 - -### Patch Changes - -- Updated dependencies [[`3f640805d2a4e1616aafa56f6848d6657911bb99`](https://github.com/clerk/javascript/commit/3f640805d2a4e1616aafa56f6848d6657911bb99), [`3f640805d2a4e1616aafa56f6848d6657911bb99`](https://github.com/clerk/javascript/commit/3f640805d2a4e1616aafa56f6848d6657911bb99), [`550c7e9851329688e37be29b83ea0c3b12482af7`](https://github.com/clerk/javascript/commit/550c7e9851329688e37be29b83ea0c3b12482af7), [`3f640805d2a4e1616aafa56f6848d6657911bb99`](https://github.com/clerk/javascript/commit/3f640805d2a4e1616aafa56f6848d6657911bb99)]: - - @clerk/backend@1.20.0 - - @clerk/clerk-react@5.19.0 - - @clerk/types@4.39.0 - - @clerk/shared@2.19.1 - -## 4.3.2 - -### Patch Changes - -- Updated dependencies [[`0bc3ccc5bd4a93121bb7e7d6a32271af9c31f8c3`](https://github.com/clerk/javascript/commit/0bc3ccc5bd4a93121bb7e7d6a32271af9c31f8c3), [`0bc3ccc5bd4a93121bb7e7d6a32271af9c31f8c3`](https://github.com/clerk/javascript/commit/0bc3ccc5bd4a93121bb7e7d6a32271af9c31f8c3)]: - - @clerk/shared@2.19.0 - - @clerk/types@4.38.0 - - @clerk/backend@1.19.2 - - @clerk/clerk-react@5.18.2 - -## 4.3.1 - -### Patch Changes - -- Automatically use dynamic path for OrganizationProfiler and UserProfile. ([#4698](https://github.com/clerk/javascript/pull/4698)) by [@panteliselef](https://github.com/panteliselef) - -- Updated dependencies [[`4e5e7f463c12893a21cb3b5f9317fc3f2945879b`](https://github.com/clerk/javascript/commit/4e5e7f463c12893a21cb3b5f9317fc3f2945879b)]: - - @clerk/types@4.37.0 - - @clerk/backend@1.19.1 - - @clerk/clerk-react@5.18.1 - - @clerk/shared@2.18.1 - -## 4.3.0 - -### Minor Changes - -- Drop path routing requirement for ``. ([#4687](https://github.com/clerk/javascript/pull/4687)) by [@panteliselef](https://github.com/panteliselef) - -### Patch Changes - -- Updated dependencies [[`8ee5d84995fa17532491ff96efac5738c9bcd9ef`](https://github.com/clerk/javascript/commit/8ee5d84995fa17532491ff96efac5738c9bcd9ef), [`09fedd1df155d30cc055ce701b133aa6470e9b47`](https://github.com/clerk/javascript/commit/09fedd1df155d30cc055ce701b133aa6470e9b47), [`b6aa589f75be62a89a3853d496176ed2f2c0e2c5`](https://github.com/clerk/javascript/commit/b6aa589f75be62a89a3853d496176ed2f2c0e2c5), [`235eaae4c3c9400492fca47d20a47c7081041565`](https://github.com/clerk/javascript/commit/235eaae4c3c9400492fca47d20a47c7081041565)]: - - @clerk/types@4.36.0 - - @clerk/clerk-react@5.18.0 - - @clerk/backend@1.19.0 - - @clerk/shared@2.18.0 - -## 4.2.58 - -### Patch Changes - -- Updated dependencies [[`8a28d1f403309f692d9332704f07effbf39d056d`](https://github.com/clerk/javascript/commit/8a28d1f403309f692d9332704f07effbf39d056d), [`8a28d1f403309f692d9332704f07effbf39d056d`](https://github.com/clerk/javascript/commit/8a28d1f403309f692d9332704f07effbf39d056d)]: - - @clerk/types@4.35.1 - - @clerk/backend@1.18.1 - - @clerk/clerk-react@5.17.2 - - @clerk/shared@2.17.1 - -## 4.2.57 - -### Patch Changes - -- Updated dependencies [[`115fd0c32443c6fc4e692c0ebdd60c092e57057e`](https://github.com/clerk/javascript/commit/115fd0c32443c6fc4e692c0ebdd60c092e57057e), [`0a1807552dcf0501a97f60b4df0280525bca9743`](https://github.com/clerk/javascript/commit/0a1807552dcf0501a97f60b4df0280525bca9743)]: - - @clerk/clerk-react@5.17.1 - -## 4.2.56 - -### Patch Changes - -- Updated dependencies [[`4da28fa857d1e5538eb5bbe28ecc4bf9dba1ce7d`](https://github.com/clerk/javascript/commit/4da28fa857d1e5538eb5bbe28ecc4bf9dba1ce7d), [`fe9e147e366153d664af7fc325655ecb299a1f9d`](https://github.com/clerk/javascript/commit/fe9e147e366153d664af7fc325655ecb299a1f9d), [`fe9e147e366153d664af7fc325655ecb299a1f9d`](https://github.com/clerk/javascript/commit/fe9e147e366153d664af7fc325655ecb299a1f9d), [`fe9e147e366153d664af7fc325655ecb299a1f9d`](https://github.com/clerk/javascript/commit/fe9e147e366153d664af7fc325655ecb299a1f9d), [`d84d7e31235c5c7da3415981dc76db4473a71a39`](https://github.com/clerk/javascript/commit/d84d7e31235c5c7da3415981dc76db4473a71a39), [`fe9e147e366153d664af7fc325655ecb299a1f9d`](https://github.com/clerk/javascript/commit/fe9e147e366153d664af7fc325655ecb299a1f9d), [`dce4f7ffca7248c0500f0ec9a978672b1f2fad69`](https://github.com/clerk/javascript/commit/dce4f7ffca7248c0500f0ec9a978672b1f2fad69)]: - - @clerk/clerk-react@5.17.0 - - @clerk/shared@2.17.0 - - @clerk/types@4.35.0 - - @clerk/backend@1.18.0 - -## 4.2.55 - -### Patch Changes - -- Updated dependencies [[`c70994b5b6f92a6550dfe37547f01bbfa810c223`](https://github.com/clerk/javascript/commit/c70994b5b6f92a6550dfe37547f01bbfa810c223), [`7623a99594e7329200b6b374e483152d7679ce66`](https://github.com/clerk/javascript/commit/7623a99594e7329200b6b374e483152d7679ce66)]: - - @clerk/types@4.34.2 - - @clerk/backend@1.17.2 - - @clerk/clerk-react@5.16.2 - - @clerk/shared@2.16.1 - -## 4.2.54 - -### Patch Changes - -- Updated dependencies [[`e47eb5882a7fd4a8dee25933c6644790d6ea3407`](https://github.com/clerk/javascript/commit/e47eb5882a7fd4a8dee25933c6644790d6ea3407), [`273d16cb0665d4d960838cb294dc356f41814745`](https://github.com/clerk/javascript/commit/273d16cb0665d4d960838cb294dc356f41814745), [`6b0961765e1f3d09679be4b163fa13ac7dd97191`](https://github.com/clerk/javascript/commit/6b0961765e1f3d09679be4b163fa13ac7dd97191)]: - - @clerk/clerk-react@5.16.1 - - @clerk/shared@2.16.0 - - @clerk/types@4.34.1 - - @clerk/backend@1.17.1 - -## 4.2.53 - -### Patch Changes - -- Updated dependencies [[`536fa996ff84a545678a3036b28409824d1c00dd`](https://github.com/clerk/javascript/commit/536fa996ff84a545678a3036b28409824d1c00dd), [`b2671affd230eed176ac03af516307898d371757`](https://github.com/clerk/javascript/commit/b2671affd230eed176ac03af516307898d371757), [`b28c5e8bc44885bf6b1533df48e872ba90c387da`](https://github.com/clerk/javascript/commit/b28c5e8bc44885bf6b1533df48e872ba90c387da), [`6c424e179850f520ae738e816bf0423a55ddf3ef`](https://github.com/clerk/javascript/commit/6c424e179850f520ae738e816bf0423a55ddf3ef)]: - - @clerk/backend@1.17.0 - - @clerk/shared@2.15.0 - - @clerk/clerk-react@5.16.0 - -## 4.2.52 - -### Patch Changes - -- Updated dependencies [[`46faeb6f59b19c963fb137c858347525b1cd9e19`](https://github.com/clerk/javascript/commit/46faeb6f59b19c963fb137c858347525b1cd9e19), [`ea6c52dd751abe38b350ee07f148652c24125e22`](https://github.com/clerk/javascript/commit/ea6c52dd751abe38b350ee07f148652c24125e22)]: - - @clerk/shared@2.14.0 - - @clerk/types@4.34.0 - - @clerk/backend@1.16.4 - - @clerk/clerk-react@5.15.5 - -## 4.2.51 - -### Patch Changes - -- Updated dependencies [[`1c0b5001f7f975a2f3f54ad692526ecf7257847e`](https://github.com/clerk/javascript/commit/1c0b5001f7f975a2f3f54ad692526ecf7257847e), [`6217a3f7c94311d49f873214bd406961e0b8d6f7`](https://github.com/clerk/javascript/commit/6217a3f7c94311d49f873214bd406961e0b8d6f7), [`1783025cdb94c447028704c2121fa0b8af785904`](https://github.com/clerk/javascript/commit/1783025cdb94c447028704c2121fa0b8af785904)]: - - @clerk/types@4.33.0 - - @clerk/shared@2.13.0 - - @clerk/backend@1.16.3 - - @clerk/clerk-react@5.15.4 - -## 4.2.50 - -### Patch Changes - -- Updated dependencies [[`ff4ebeba6c2a77c247a946070b56bdb2153d1588`](https://github.com/clerk/javascript/commit/ff4ebeba6c2a77c247a946070b56bdb2153d1588)]: - - @clerk/backend@1.16.2 - -## 4.2.49 - -### Patch Changes - -- Updated dependencies [[`7dbad4c5abd226d7b10941a626ead5d85b1a3f24`](https://github.com/clerk/javascript/commit/7dbad4c5abd226d7b10941a626ead5d85b1a3f24)]: - - @clerk/types@4.32.0 - - @clerk/backend@1.16.1 - - @clerk/clerk-react@5.15.3 - - @clerk/shared@2.12.1 - -## 4.2.48 - -### Patch Changes - -- Updated dependencies [[`b185e42e5136de3511a0b37ce9b0030022ba679e`](https://github.com/clerk/javascript/commit/b185e42e5136de3511a0b37ce9b0030022ba679e), [`5a21de1f46df3642828dc27e4862263c9858da2b`](https://github.com/clerk/javascript/commit/5a21de1f46df3642828dc27e4862263c9858da2b), [`f7472e22877f62fc7f3c8d3efe409ff2276fb4a3`](https://github.com/clerk/javascript/commit/f7472e22877f62fc7f3c8d3efe409ff2276fb4a3), [`e10232c56551bf0cffc11246f2ff9aa58ec584d7`](https://github.com/clerk/javascript/commit/e10232c56551bf0cffc11246f2ff9aa58ec584d7), [`e199037b8f484abdeeb9fc24455a1b4b8c31c8dd`](https://github.com/clerk/javascript/commit/e199037b8f484abdeeb9fc24455a1b4b8c31c8dd), [`886e294a8d8c54b39cd5bda88d46b89eace3861e`](https://github.com/clerk/javascript/commit/886e294a8d8c54b39cd5bda88d46b89eace3861e), [`0e443ad7c76643420b50e5b169193e03f6ef79f9`](https://github.com/clerk/javascript/commit/0e443ad7c76643420b50e5b169193e03f6ef79f9), [`cc24c8145f1eea7fb91550f2c3e0bac3993e4320`](https://github.com/clerk/javascript/commit/cc24c8145f1eea7fb91550f2c3e0bac3993e4320)]: - - @clerk/backend@1.16.0 - - @clerk/shared@2.12.0 - - @clerk/types@4.31.0 - - @clerk/clerk-react@5.15.2 - -## 4.2.47 - -### Patch Changes - -- Updated dependencies [[`8a04ae47b8305f994b348301fd8134d5baf02943`](https://github.com/clerk/javascript/commit/8a04ae47b8305f994b348301fd8134d5baf02943)]: - - @clerk/clerk-react@5.15.1 - - @clerk/shared@2.11.5 - - @clerk/backend@1.15.7 - -## 4.2.46 - -### Patch Changes - -- Updated dependencies [[`d74a6a7c0f291104c6bba722a8c432814d7b336e`](https://github.com/clerk/javascript/commit/d74a6a7c0f291104c6bba722a8c432814d7b336e), [`1a0c8fe665869e732d3c800bde0f5219fce54301`](https://github.com/clerk/javascript/commit/1a0c8fe665869e732d3c800bde0f5219fce54301), [`0800fc3f1f4e1b6a1d13f5c02557001a283af6e8`](https://github.com/clerk/javascript/commit/0800fc3f1f4e1b6a1d13f5c02557001a283af6e8)]: - - @clerk/clerk-react@5.15.0 - - @clerk/types@4.30.0 - - @clerk/shared@2.11.4 - - @clerk/backend@1.15.6 - -## 4.2.45 - -### Patch Changes - -- Updated dependencies [[`a7726cc12a824b278f6d2a37cb1901c38c5f70dc`](https://github.com/clerk/javascript/commit/a7726cc12a824b278f6d2a37cb1901c38c5f70dc)]: - - @clerk/shared@2.11.3 - - @clerk/backend@1.15.5 - - @clerk/clerk-react@5.14.3 - -## 4.2.42 - -### Patch Changes - -- Updated dependencies [[`69c8f4f21`](https://github.com/clerk/javascript/commit/69c8f4f21410b3db95ac11a23a2b3d1277981bcf), [`f875463da`](https://github.com/clerk/javascript/commit/f875463da9692f2d173b6d5388743cf720750ae3), [`41f2ede56`](https://github.com/clerk/javascript/commit/41f2ede56c82c97df509c5a28b7637862121b935), [`5be7ca9fd`](https://github.com/clerk/javascript/commit/5be7ca9fd239c937cc88e20ce8f5bfc9f3b84f22), [`08c5a2add`](https://github.com/clerk/javascript/commit/08c5a2add6872c76e62fc0df06db723e3728452e), [`08c5a2add`](https://github.com/clerk/javascript/commit/08c5a2add6872c76e62fc0df06db723e3728452e), [`24cd77989`](https://github.com/clerk/javascript/commit/24cd77989adb45a11db12627daa3f31e8d9338e4), [`434b432f8`](https://github.com/clerk/javascript/commit/434b432f8c114825120eef0f2c278b8142ed1563)]: - - @clerk/clerk-react@5.14.0 - - @clerk/types@4.29.0 - - @clerk/shared@2.11.0 - - @clerk/backend@1.15.2 - -## 4.2.41 - -### Patch Changes - -- Updated dependencies [[`3fdcdbf88`](https://github.com/clerk/javascript/commit/3fdcdbf88c38facf8b82563f634ec1b6604fd8e5), [`1c7e105a3`](https://github.com/clerk/javascript/commit/1c7e105a32fd492cc175ef9fd1c1fa0428c259dc)]: - - @clerk/types@4.28.0 - - @clerk/backend@1.15.1 - - @clerk/clerk-react@5.13.1 - - @clerk/shared@2.10.1 - -## 4.2.40 - -### Patch Changes - -- Updated dependencies [[`93dfe7a09`](https://github.com/clerk/javascript/commit/93dfe7a09648f414ee3f50bc8fb3f342d24020cd), [`3b50b67bd`](https://github.com/clerk/javascript/commit/3b50b67bd40da33c9e36773aa05462717e9f44cc), [`a0204a8e8`](https://github.com/clerk/javascript/commit/a0204a8e8742b63aea92d67e7d66fe0bc86a166f), [`3b50b67bd`](https://github.com/clerk/javascript/commit/3b50b67bd40da33c9e36773aa05462717e9f44cc)]: - - @clerk/backend@1.15.0 - - @clerk/shared@2.10.0 - - @clerk/types@4.27.0 - - @clerk/clerk-react@5.13.0 - -## 4.2.39 - -### Patch Changes - -- Updated dependencies [[`e1a26547a`](https://github.com/clerk/javascript/commit/e1a26547a9c65f4c79c2bbd4dc386ddf67c2fbee)]: - - @clerk/backend@1.14.1 - -## 4.2.38 - -### Patch Changes - -- Updated dependencies [[`ce40ff6f0`](https://github.com/clerk/javascript/commit/ce40ff6f0d3bc79e33375be6dd5e03f140a07000), [`e81d45b72`](https://github.com/clerk/javascript/commit/e81d45b72c81403c7c206dac5454de1fef6bec57), [`752ce9bfa`](https://github.com/clerk/javascript/commit/752ce9bfa47a8eebd38cd272eeb58ae26fea3371), [`99cdf9b67`](https://github.com/clerk/javascript/commit/99cdf9b67d1e99e66cc73d8a5bfce1f1f8df1b83), [`ce40ff6f0`](https://github.com/clerk/javascript/commit/ce40ff6f0d3bc79e33375be6dd5e03f140a07000), [`fb7ba1f34`](https://github.com/clerk/javascript/commit/fb7ba1f3485abdeac5e504cce6c2d84d3f3e4ffc), [`2102052c0`](https://github.com/clerk/javascript/commit/2102052c017065ab511339870fcebaa6719f2702)]: - - @clerk/clerk-react@5.12.0 - - @clerk/types@4.26.0 - - @clerk/shared@2.9.2 - - @clerk/backend@1.14.0 - -## 4.2.37 - -### Patch Changes - -- Updated dependencies [[`d64e54c40`](https://github.com/clerk/javascript/commit/d64e54c40c9cf001b25e45a1b8939c9f7e80c6d6), [`2ba2fd148`](https://github.com/clerk/javascript/commit/2ba2fd1483b7561d7df9a1952ead0ee15e422131)]: - - @clerk/shared@2.9.1 - - @clerk/types@4.25.1 - - @clerk/backend@1.13.10 - - @clerk/clerk-react@5.11.1 - -## 4.2.36 - -### Patch Changes - -- Updated dependencies [[`358be296a`](https://github.com/clerk/javascript/commit/358be296a8181bb256fc1e15f878932c741b8743)]: - - @clerk/backend@1.13.9 - -## 4.2.35 - -### Patch Changes - -- Updated dependencies [[`fb932e5cf`](https://github.com/clerk/javascript/commit/fb932e5cf21315adf60bee0855b6bd5ee2ff9867)]: - - @clerk/shared@2.9.0 - - @clerk/clerk-react@5.11.0 - - @clerk/types@4.25.0 - - @clerk/backend@1.13.8 - -## 4.2.34 - -### Patch Changes - -- Updated dependencies [[`f6fb8b53d`](https://github.com/clerk/javascript/commit/f6fb8b53d236863ad7eca576ee7a16cd33f3506b), [`4a8570590`](https://github.com/clerk/javascript/commit/4a857059059a02bb4f20893e08601e1e67babbed)]: - - @clerk/clerk-react@5.10.0 - - @clerk/types@4.24.0 - - @clerk/backend@1.13.7 - - @clerk/shared@2.8.5 - -## 4.2.33 - -### Patch Changes - -- Updated dependencies [[`3e9160072`](https://github.com/clerk/javascript/commit/3e9160072aea72455a3db9cc710680a0a5359c55), [`748c0bae4`](https://github.com/clerk/javascript/commit/748c0bae4cfa1c2a721267fc9de7c6458200beb4), [`b579c3685`](https://github.com/clerk/javascript/commit/b579c36850126d994a96affa89bb1abc618ec38e)]: - - @clerk/backend@1.13.6 - -## 4.2.32 - -### Patch Changes - -- Updated dependencies [[`4749ed4c5`](https://github.com/clerk/javascript/commit/4749ed4c55a5ba5810451b8d436aad0d49829050), [`f1f17eaab`](https://github.com/clerk/javascript/commit/f1f17eaabed0dc4b7de405fb77d85503cf75ad33), [`2e35ac538`](https://github.com/clerk/javascript/commit/2e35ac53885f8008779940d41d1e804fa77ebfa9)]: - - @clerk/backend@1.13.5 - - @clerk/types@4.23.0 - - @clerk/clerk-react@5.9.4 - - @clerk/shared@2.8.4 - -## 4.2.31 - -### Patch Changes - -- Updated dependencies [[`c9063853e`](https://github.com/clerk/javascript/commit/c9063853e538a4010f5d4e522a3da5abc80098a4), [`19d3808d4`](https://github.com/clerk/javascript/commit/19d3808d4672234944226d6709ec51214e8d6e1d), [`737bcbb0f`](https://github.com/clerk/javascript/commit/737bcbb0ffb5e2dcadbb02e8fc718fe8825c5842)]: - - @clerk/types@4.22.0 - - @clerk/backend@1.13.4 - - @clerk/clerk-react@5.9.3 - - @clerk/shared@2.8.3 - -## 4.2.30 - -### Patch Changes - -- Updated dependencies [[`cb32aaf59`](https://github.com/clerk/javascript/commit/cb32aaf59d38dcd12e959f542782f71a87adf9c1), [`2e5c550e4`](https://github.com/clerk/javascript/commit/2e5c550e4aec61150c2a17fdcd4a0e1273cb50e7), [`6275c242c`](https://github.com/clerk/javascript/commit/6275c242cd8bcb6f7766934059967e0fe775a0c1), [`418be2fdb`](https://github.com/clerk/javascript/commit/418be2fdb558bb5c85d7be491945935b44cad681), [`c59636a1a`](https://github.com/clerk/javascript/commit/c59636a1aca67be7d6732d281cec307ed456678b), [`5c18671f1`](https://github.com/clerk/javascript/commit/5c18671f158f8077f822877ce5c1fa192199aeda), [`f9faaf031`](https://github.com/clerk/javascript/commit/f9faaf03100baf679c78e6c24877fbf3b60be529), [`e0ca9dc94`](https://github.com/clerk/javascript/commit/e0ca9dc94fa68f3d3db5d2433fa6b85d800d4ca2)]: - - @clerk/shared@2.8.2 - - @clerk/clerk-react@5.9.2 - - @clerk/types@4.21.1 - - @clerk/backend@1.13.3 - -## 4.2.29 - -### Patch Changes - -- Updated dependencies [[`02babaccb`](https://github.com/clerk/javascript/commit/02babaccb648fa4e22f38cc0f572d44f82b09f78)]: - - @clerk/backend@1.13.2 - -## 4.2.28 - -### Patch Changes - -- Updated dependencies [[`3743eb911`](https://github.com/clerk/javascript/commit/3743eb9114733f20ed56a863ab98fa9c363b6723)]: - - @clerk/shared@2.8.1 - - @clerk/backend@1.13.1 - - @clerk/clerk-react@5.9.1 - -## 4.2.27 - -### Patch Changes - -- Updated dependencies [[`e578b1599`](https://github.com/clerk/javascript/commit/e578b1599451d9f2122f12d835b510b26882e839)]: - - @clerk/backend@1.13.0 - -## 4.2.26 - -### Patch Changes - -- Updated dependencies [[`ba19be354`](https://github.com/clerk/javascript/commit/ba19be35461f0e5c76a58d11e4252a16781322c6), [`8cecbe875`](https://github.com/clerk/javascript/commit/8cecbe8756f58879c4b14b799700a25a83c1f00a), [`248142a6d`](https://github.com/clerk/javascript/commit/248142a6ded6ca937d0df7d628197f25228aadec), [`1189f71f8`](https://github.com/clerk/javascript/commit/1189f71f872f2683c12de5add5f154aeb953ca8d), [`a5e95295b`](https://github.com/clerk/javascript/commit/a5e95295b88acc6953d07a22d818e123774aeffa)]: - - @clerk/shared@2.8.0 - - @clerk/backend@1.12.0 - - @clerk/clerk-react@5.9.0 - - @clerk/types@4.21.0 - -## 4.2.25 - -### Patch Changes - -- Updated dependencies [[`be3b119f8`](https://github.com/clerk/javascript/commit/be3b119f840d2ae74f4b75d717711d53ac0e5f54)]: - - @clerk/shared@2.7.2 - - @clerk/backend@1.11.1 - - @clerk/clerk-react@5.8.2 - -## 4.2.24 - -### Patch Changes - -- Updated dependencies [[`b97b2c1ca`](https://github.com/clerk/javascript/commit/b97b2c1cae5cb1e569708a8745c13d203beb81d9), [`8c6909d46`](https://github.com/clerk/javascript/commit/8c6909d46328c943f1d464a28f1a324a27d0f3f1)]: - - @clerk/backend@1.11.0 - - @clerk/clerk-react@5.8.1 - - @clerk/types@4.20.1 - - @clerk/shared@2.7.1 - -## 4.2.23 - -### Patch Changes - -- Updated dependencies [[`c63a5adf0`](https://github.com/clerk/javascript/commit/c63a5adf0ba4b99252146f168318f51b709bb5dd), [`8823c21a2`](https://github.com/clerk/javascript/commit/8823c21a26bc81cbc3ed007908b1a9ea474bd343), [`95ac67a14`](https://github.com/clerk/javascript/commit/95ac67a143c263bef0c1f589728566ab8f95768d), [`a0cb062fa`](https://github.com/clerk/javascript/commit/a0cb062faa4d23bef7a577e5cc486f4c5efe6bfa), [`746b4ed5e`](https://github.com/clerk/javascript/commit/746b4ed5e2007505d5850a2a728484809474d7bf)]: - - @clerk/backend@1.10.0 - - @clerk/clerk-react@5.8.0 - - @clerk/types@4.20.0 - - @clerk/shared@2.7.0 - -## 4.2.22 - -### Patch Changes - -- Updated dependencies [[`8a3b9f079`](https://github.com/clerk/javascript/commit/8a3b9f0793484b32dd609a5c80a194e62151d6ea), [`e95c28196`](https://github.com/clerk/javascript/commit/e95c2819675cea7963f2404e5f71f37ebed8d5e0), [`1fe744328`](https://github.com/clerk/javascript/commit/1fe744328d126bc597e81770119796ac18e055ed)]: - - @clerk/clerk-react@5.7.0 - - @clerk/types@4.19.0 - - @clerk/backend@1.9.2 - - @clerk/shared@2.6.2 - -## 4.2.21 - -### Patch Changes - -- Updated dependencies [[`afad9af89`](https://github.com/clerk/javascript/commit/afad9af893984a19d7284f0ad3b36e7891d0d733), [`82593173a`](https://github.com/clerk/javascript/commit/82593173aafbf6646e12c5779627cdcb138a1f27), [`afad9af89`](https://github.com/clerk/javascript/commit/afad9af893984a19d7284f0ad3b36e7891d0d733)]: - - @clerk/clerk-react@5.6.0 - - @clerk/types@4.18.0 - - @clerk/backend@1.9.1 - - @clerk/shared@2.6.1 - -## 4.2.20 - -### Patch Changes - -- Tidy up and improve README ([#4053](https://github.com/clerk/javascript/pull/4053)) by [@LekoArts](https://github.com/LekoArts) - -- Updated dependencies [[`c9ef59106`](https://github.com/clerk/javascript/commit/c9ef59106c4720af3012586f5656f7b54cf2e336), [`fece72014`](https://github.com/clerk/javascript/commit/fece72014e2d39c8343a7329ae677badcba56d15), [`58e6754ad`](https://github.com/clerk/javascript/commit/58e6754ad9f9a1244b023ce1f5e5f2c1c4eb20e7), [`13693018f`](https://github.com/clerk/javascript/commit/13693018f4f7ac5d224698aa730e20960896f68c), [`3aa63dc5a`](https://github.com/clerk/javascript/commit/3aa63dc5a48161cfe92d94093ef0c32efd401342), [`9d0477781`](https://github.com/clerk/javascript/commit/9d04777814bf6d86d05506838b101e7cfc7c208d), [`3304dcc0b`](https://github.com/clerk/javascript/commit/3304dcc0bc93a92a7f729f585c60ff91d2ae04f6)]: - - @clerk/backend@1.9.0 - - @clerk/clerk-react@5.5.0 - - @clerk/types@4.17.0 - - @clerk/shared@2.6.0 - -## 4.2.19 - -### Patch Changes - -- Updated dependencies [[`c1389492d`](https://github.com/clerk/javascript/commit/c1389492d8b6a9292ab04889bf776c0f45e66845)]: - - @clerk/types@4.16.0 - - @clerk/backend@1.8.3 - - @clerk/clerk-react@5.4.5 - - @clerk/shared@2.5.5 - -## 4.2.18 - -### Patch Changes - -- Updated dependencies [[`0158c774a`](https://github.com/clerk/javascript/commit/0158c774af2243a2cd13b55c4d6fae877178c961), [`8be1a7abc`](https://github.com/clerk/javascript/commit/8be1a7abc8849d7d59552011bd6b25bc917d51f5)]: - - @clerk/types@4.15.1 - - @clerk/backend@1.8.2 - - @clerk/clerk-react@5.4.4 - - @clerk/shared@2.5.4 - -## 4.2.17 - -### Patch Changes - -- Updated dependencies [[`96234ce3d`](https://github.com/clerk/javascript/commit/96234ce3d44ec6f262c07cc7416171f4cb82e07b), [`247b3fd75`](https://github.com/clerk/javascript/commit/247b3fd75042365dc9f950db056b76f9fadfdcf6)]: - - @clerk/clerk-react@5.4.3 - - @clerk/types@4.15.0 - - @clerk/backend@1.8.1 - - @clerk/shared@2.5.3 - -## 4.2.16 - -### Patch Changes - -- Updated dependencies [[`ed7baa048`](https://github.com/clerk/javascript/commit/ed7baa0488df0ee4c48add2aac934ffb47e4a6d2)]: - - @clerk/backend@1.8.0 - -## 4.2.15 - -### Patch Changes - -- Updated dependencies [[`dc0e1c33d`](https://github.com/clerk/javascript/commit/dc0e1c33d6844b028cb1ee11c3359b886d609f3c), [`dc94c0834`](https://github.com/clerk/javascript/commit/dc94c08341c883fa5bf891f880fb34c4569ea820)]: - - @clerk/types@4.14.0 - - @clerk/backend@1.7.0 - - @clerk/clerk-react@5.4.2 - - @clerk/shared@2.5.2 - -## 4.2.14 - -### Patch Changes - -- Updated dependencies [[`7e0ced3da`](https://github.com/clerk/javascript/commit/7e0ced3da94f41056bc4445d163d3b615afb6ab1), [`b6f0613dc`](https://github.com/clerk/javascript/commit/b6f0613dc9d8b0bab41cfabbaa8621b126e3bdf5)]: - - @clerk/shared@2.5.1 - - @clerk/clerk-react@5.4.1 - - @clerk/types@4.13.1 - - @clerk/backend@1.6.3 - -## 4.2.13 - -### Patch Changes - -- Updated dependencies [[`59d5f19d3`](https://github.com/clerk/javascript/commit/59d5f19d333bf4a35c244886e93b4368e215225c), [`4e6c94e3f`](https://github.com/clerk/javascript/commit/4e6c94e3f4cc92cbba8bddcd2b90fcc9cfb83763)]: - - @clerk/shared@2.5.0 - - @clerk/clerk-react@5.4.0 - - @clerk/types@4.13.0 - - @clerk/backend@1.6.2 - -## 4.2.12 - -### Patch Changes - -- Internal change: Use `AuthObject` type import from `@clerk/backend`. ([#3844](https://github.com/clerk/javascript/pull/3844)) by [@kduprey](https://github.com/kduprey) - -- Updated dependencies [[`d7bf0f87c`](https://github.com/clerk/javascript/commit/d7bf0f87c4c50bc19d2796bca32bd694046a23b0), [`9b2aeacb3`](https://github.com/clerk/javascript/commit/9b2aeacb32fff7c300bda458636a1cc81a42ee7b)]: - - @clerk/backend@1.6.1 - - @clerk/types@4.12.1 - - @clerk/clerk-react@5.3.3 - - @clerk/shared@2.4.5 - -## 4.2.11 - -### Patch Changes - -- Updated dependencies [[`7e94fcf0f`](https://github.com/clerk/javascript/commit/7e94fcf0fcbee8842a54f7931c45190370aa870d)]: - - @clerk/backend@1.6.0 - - @clerk/types@4.12.0 - - @clerk/clerk-react@5.3.2 - - @clerk/shared@2.4.4 - -## 4.2.10 - -### Patch Changes - -- Updated dependencies [[`568186cad`](https://github.com/clerk/javascript/commit/568186cad29acaf0b084a9f86ccb9d29bd23fcf4), [`407195270`](https://github.com/clerk/javascript/commit/407195270ed8aab6eef18c64a4918e3870fef471)]: - - @clerk/types@4.11.0 - - @clerk/backend@1.5.2 - - @clerk/clerk-react@5.3.1 - - @clerk/shared@2.4.3 - -## 4.2.9 - -### Patch Changes - -- Updated dependencies [[`992e5960c`](https://github.com/clerk/javascript/commit/992e5960c785eace83f3bad7c34d589fa313dcaf)]: - - @clerk/backend@1.5.1 - -## 4.2.8 - -### Patch Changes - -- Fixed a bug that was caused when the request body has already been read ([#3839](https://github.com/clerk/javascript/pull/3839)) by [@octoper](https://github.com/octoper) - -- Updated dependencies [[`fde5b5e7e`](https://github.com/clerk/javascript/commit/fde5b5e7e6fb5faa4267e06d82a38a176165b4f4), [`aa06f3ba7`](https://github.com/clerk/javascript/commit/aa06f3ba7e725071c90d4a1d6840060236da3c23), [`80e647731`](https://github.com/clerk/javascript/commit/80e64773135865434cf0e6c220e287397aa07937)]: - - @clerk/backend@1.5.0 - - @clerk/clerk-react@5.3.0 - - @clerk/types@4.10.0 - - @clerk/shared@2.4.2 - -## 4.2.7 - -### Patch Changes - -- Updated dependencies [[`b48689705`](https://github.com/clerk/javascript/commit/b48689705f9fc2251d2f24addec7a0d0b1da0fe1)]: - - @clerk/types@4.9.1 - - @clerk/backend@1.4.3 - - @clerk/clerk-react@5.2.10 - - @clerk/shared@2.4.1 - -## 4.2.6 - -### Patch Changes - -- Updated dependencies [[`d465d7069`](https://github.com/clerk/javascript/commit/d465d70696bf26270cb2efbf4695ca49016fcb96)]: - - @clerk/backend@1.4.2 - -## 4.2.5 - -### Patch Changes - -- Updated dependencies [[`045fb93cb`](https://github.com/clerk/javascript/commit/045fb93cbf577ca84e5b95fc6dfaacde67693be2)]: - - @clerk/backend@1.4.1 - -## 4.2.4 - -### Patch Changes - -- Updated dependencies [[`b87f7b9e1`](https://github.com/clerk/javascript/commit/b87f7b9e163756fd43789bc7b7344d2eb24015ec), [`b2788f67b`](https://github.com/clerk/javascript/commit/b2788f67b75cce17af1a2f91a984bb826a5a42e1), [`86c75e50c`](https://github.com/clerk/javascript/commit/86c75e50cba9c4efb480672f1b8c6a6fff4ef477)]: - - @clerk/backend@1.4.0 - - @clerk/shared@2.4.0 - - @clerk/types@4.9.0 - - @clerk/clerk-react@5.2.9 - -## 4.2.3 - -### Patch Changes - -- Updated dependencies [[`df7d856d5`](https://github.com/clerk/javascript/commit/df7d856d56bc3b1dcbdbf9155b4ef1b1ea5971f7)]: - - @clerk/types@4.8.0 - - @clerk/backend@1.3.2 - - @clerk/clerk-react@5.2.8 - - @clerk/shared@2.3.3 - -## 4.2.2 - -### Patch Changes - -- Updated dependencies [[`5642b2616`](https://github.com/clerk/javascript/commit/5642b26167a6eb1aca68777d782a9686edacfd37)]: - - @clerk/backend@1.3.1 - -## 4.2.1 - -### Patch Changes - -- Updated dependencies [[`427fcdeaa`](https://github.com/clerk/javascript/commit/427fcdeaaba4e77273be29b4d7cca43f9aa18693)]: - - @clerk/clerk-react@5.2.7 - -## 4.2.0 - -### Minor Changes - -- Add support for Remix SPA Mode ([#3580](https://github.com/clerk/javascript/pull/3580)) by [@anagstef](https://github.com/anagstef) - -### Patch Changes - -- Fix issues caused by modifying duplex property on Request when it was already defined ([#3645](https://github.com/clerk/javascript/pull/3645)) by [@octoper](https://github.com/octoper) - -- Updated dependencies [[`f1847b70b`](https://github.com/clerk/javascript/commit/f1847b70b2327bd490faf1f3eed1aa5639d54993)]: - - @clerk/backend@1.3.0 - -## 4.1.3 - -### Patch Changes - -- Updated dependencies [[`d6b5006c4`](https://github.com/clerk/javascript/commit/d6b5006c4cc1b6f07bb3a6832b4ec6e65ea15814)]: - - @clerk/types@4.7.0 - - @clerk/backend@1.2.5 - - @clerk/clerk-react@5.2.6 - - @clerk/shared@2.3.2 - -## 4.1.2 - -### Patch Changes - -- Fix RequestInit.duplex which now is required if body is provided in undici ([#3495](https://github.com/clerk/javascript/pull/3495)) by [@octoper](https://github.com/octoper) - -- Updated dependencies [[`1273b04ec`](https://github.com/clerk/javascript/commit/1273b04ecf1866b59ef59a74abe31dbcc726da2c)]: - - @clerk/types@4.6.1 - - @clerk/backend@1.2.4 - - @clerk/clerk-react@5.2.5 - - @clerk/shared@2.3.1 - -## 4.1.1 - -### Patch Changes - -- Updated dependencies [[`4ec3f63e2`](https://github.com/clerk/javascript/commit/4ec3f63e26d8d3725a7ba9bbf988a7776fe893ff)]: - - @clerk/shared@2.3.0 - - @clerk/backend@1.2.3 - - @clerk/clerk-react@5.2.4 - -## 4.1.0 - -### Minor Changes - -- Support new redirect urls as environment variables or options to rootAuthLoader ([#3442](https://github.com/clerk/javascript/pull/3442)) by [@panteliselef](https://github.com/panteliselef) - - As options - - - signInForceRedirectUrl - - signUpForceRedirectUrl - - signInFallbackRedirectUrl - - signUpFallbackRedirectUrl - - As environment variables - - - CLERK_SIGN_IN_FORCE_REDIRECT_URL - - CLERK_SIGN_UP_FORCE_REDIRECT_URL - - CLERK_SIGN_IN_FALLBACK_REDIRECT_URL - - CLERK_SIGN_UP_FALLBACK_REDIRECT_URL - -### Patch Changes - -- Set `@clerk/types` as a dependency for packages that had it as a dev dependency. ([#3450](https://github.com/clerk/javascript/pull/3450)) by [@desiprisg](https://github.com/desiprisg) - -- Updated dependencies [[`86a27f693`](https://github.com/clerk/javascript/commit/86a27f6933de50c99b6bc354bf87ff5c2cfcaf38), [`35a0015f5`](https://github.com/clerk/javascript/commit/35a0015f5dd3419f126950b3bfb51ccf51e54cda), [`02bed2e00`](https://github.com/clerk/javascript/commit/02bed2e00d3e0a4e1bb1698b13267faf6aeb31b3), [`73e5d61e2`](https://github.com/clerk/javascript/commit/73e5d61e21ab3f77f3c8343bc63da0626466c7ac), [`b8e46328d`](https://github.com/clerk/javascript/commit/b8e46328da874859c4928f19f924219cd6520b11)]: - - @clerk/shared@2.2.2 - - @clerk/clerk-react@5.2.3 - - @clerk/backend@1.2.2 - - @clerk/types@4.6.0 - -## 4.0.13 - -### Patch Changes - -- Deprecate `loadUser`, `loadSession` and `loadOrganization` on `rootAuthLoader` options ([#3443](https://github.com/clerk/javascript/pull/3443)) by [@anagstef](https://github.com/anagstef) - -- Updated dependencies []: - - @clerk/clerk-react@5.2.2 - -## 4.0.12 - -### Patch Changes - -- Updated dependencies [[`ff31f7255`](https://github.com/clerk/javascript/commit/ff31f725541d82caaa9c13cf42cf15f8ce3992f4), [`0e48fc210`](https://github.com/clerk/javascript/commit/0e48fc210cf0b5852052a21494a05f6e723101f5)]: - - @clerk/shared@2.2.1 - - @clerk/clerk-react@5.2.1 - - @clerk/backend@1.2.1 - -## 4.0.11 - -### Patch Changes - -- Updated dependencies [[`d6a9b3f5d`](https://github.com/clerk/javascript/commit/d6a9b3f5dd8c64b1bd49f74c3707eb01dcd6aff4), [`456b06849`](https://github.com/clerk/javascript/commit/456b068493b8679e1772819eea24d49aa1bc6556), [`6888594cc`](https://github.com/clerk/javascript/commit/6888594cc5d0f922d166b6d28b7b994d657a5595)]: - - @clerk/clerk-react@5.2.0 - - @clerk/shared@2.2.0 - - @clerk/backend@1.2.0 - -## 4.0.10 - -### Patch Changes - -- Updated dependencies [[`3d790d5ea`](https://github.com/clerk/javascript/commit/3d790d5ea347a51ef16557c015c901a9f277effe)]: - - @clerk/clerk-react@5.1.0 - -## 4.0.9 - -### Patch Changes - -- Updated dependencies []: - - @clerk/clerk-react@5.0.7 - -## 4.0.8 - -### Patch Changes - -- Updated dependencies [[`4d3dc00fb`](https://github.com/clerk/javascript/commit/4d3dc00fb444c87e3d27f398cd0c1ce4d176f65b), [`ec84d51e7`](https://github.com/clerk/javascript/commit/ec84d51e705370273ffb82a0d7c94d90ba3de874)]: - - @clerk/backend@1.1.5 - - @clerk/shared@2.1.1 - - @clerk/clerk-react@5.0.6 - -## 4.0.7 - -### Patch Changes - -- Updated dependencies [[`b27ca8366`](https://github.com/clerk/javascript/commit/b27ca8366a1d6ec1d7ce4a5be5005f1b1b017c20), [`bcbb2c9ef`](https://github.com/clerk/javascript/commit/bcbb2c9ef42c11b13c1d2f60db4dd88a2d4f04f6)]: - - @clerk/shared@2.1.0 - - @clerk/clerk-react@5.0.5 - - @clerk/backend@1.1.4 - -## 4.0.6 - -### Patch Changes - -- Updated dependencies [[`b92402258`](https://github.com/clerk/javascript/commit/b924022580569c934a9d33310449b4a50156070a)]: - - @clerk/backend@1.1.3 - -## 4.0.5 - -### Patch Changes - -- Fixes a bug where headers passed from Clerk with the same name would get overwritten. ([#3345](https://github.com/clerk/javascript/pull/3345)) by [@BRKalow](https://github.com/BRKalow) - -- Updated dependencies [[`39265d909`](https://github.com/clerk/javascript/commit/39265d90941c850fd1b24295b19b904a5f3eaba6), [`4f4375e88`](https://github.com/clerk/javascript/commit/4f4375e88fa2daae4d725c62da5e4cf29302e53c), [`1662aaae9`](https://github.com/clerk/javascript/commit/1662aaae965fcf36b13dba6b148e096ab6a1cd83), [`f70c885f7`](https://github.com/clerk/javascript/commit/f70c885f798f7ff513f6687f87c8a56daf26fa05), [`4ae79af36`](https://github.com/clerk/javascript/commit/4ae79af36552aae1f0284ecc4dfcfc23ef295d26), [`f5804a225`](https://github.com/clerk/javascript/commit/f5804a225e9d67cd315700f0ced0ff17b8b14e53)]: - - @clerk/clerk-react@5.0.4 - - @clerk/backend@1.1.2 - - @clerk/shared@2.0.2 - -## 4.0.4 - -### Patch Changes - -- Updated dependencies [[`e93b5777b`](https://github.com/clerk/javascript/commit/e93b5777b4f8578e6a6f81566e2601ab0e65590a)]: - - @clerk/clerk-react@5.0.3 - -## 4.0.3 - -### Patch Changes - -- Updated dependencies [[`8fbe23857`](https://github.com/clerk/javascript/commit/8fbe23857bc588a4662af78ee33b24123cd8bc2e), [`a78bc447c`](https://github.com/clerk/javascript/commit/a78bc447c1aabaa41bcbaa2a8fe3c48f31275574), [`19cd42434`](https://github.com/clerk/javascript/commit/19cd42434450e568998336bf6d705e475122abbc), [`e79d2e3d3`](https://github.com/clerk/javascript/commit/e79d2e3d3be02eb1cf8b2647ac179cc5d4aa2de2)]: - - @clerk/backend@1.1.1 - - @clerk/shared@2.0.1 - - @clerk/clerk-react@5.0.2 - -## 4.0.2 - -### Patch Changes - -- Updated dependencies [[`b3fda50f0`](https://github.com/clerk/javascript/commit/b3fda50f03672106c6858219fc607d226851ec10), [`b3ad7a459`](https://github.com/clerk/javascript/commit/b3ad7a459c46be1f8967faf73c2cdd96406593c8), [`4e5de1164`](https://github.com/clerk/javascript/commit/4e5de1164d956c7dc21f72d25e312296d36504a7)]: - - @clerk/backend@1.1.0 - -## 4.0.1 - -### Patch Changes - -- Updated dependencies [[`3c6e5a6f1`](https://github.com/clerk/javascript/commit/3c6e5a6f1dd0ac198e6e48d1b83c6d4846a7f900), [`65503dcb9`](https://github.com/clerk/javascript/commit/65503dcb97acb9538e5c0e3f8199d20ad31c9d7d)]: - - @clerk/backend@1.0.1 - - @clerk/clerk-react@5.0.1 - -## 4.0.0 - -### Major Changes - -- c2a090513: Change the minimal Node.js version required by Clerk to `18.17.0`. -- cfea3d9c0: Path-based routing is now the default routing strategy if the `path` prop is filled. Additionally, if the `path` and `routing` props are not filled, an error will be thrown. - - ```jsx - - // Without path or routing props, an error with be thrown - - - - - - - // Alternative #1 - - - - - - - // Alternative #2 - - - - - - ``` - -- fa6874687: Update `@clerk/remix`'s `rootAuthLoader` and `getAuth` helpers to handle handshake auth status, this replaces the previous interstitial flow. As a result of this, the `ClerkErrorBoundary` is no longer necessary and has been removed. - - To migrate, remove usage of `ClerkErrorBoundary`: - - ```diff - - import { ClerkApp, ClerkErrorBoundary } from "@clerk/remix"; - + import { ClerkApp } from "@clerk/remix"; - - ... - - - export const ErrorBoundary = ClerkErrorBoundary(); - ``` - -- 2a22aade8: Drop deprecations. Migration steps: - - drop `orgs` jwt claim from session token - - change type of `auth` param of `withServerAuth()` callback to `AuthObject` from `ServerSideAuth` in `gatsby-clerk-plugin` - - use `auth.sessionClaims` instead of `auth.claims` - - use `AuthObject` properties from `auth` - - use `publishableKey` instead of `frontendApi` - - use `ClerkProviderOptionsWrapper` type instead of `IsomorphicClerkOptions` -- c08f804cf: Drop deprecations. Migration steps: - - - use `CLERK_SECRET_KEY` instead of `CLERK_API_KEY` env variable - - use `secretKey` instead of `apiKey` - - use `CLERK_PUBLISHABLE_KEY` instead of `CLERK_FRONTEND_API` env variable - - use `publishableKey` instead of `frontendApi` - -- 8aea39cd6: - Introduce `@clerk/clerk-react/errors` and `@clerk/clerk-react/internal` subpath exports to expose some internal utilities. Eg - - ````typescript - // Before - import { **internal**setErrorThrowerOptions } from '@clerk/clerk-react'; - // After - import { setErrorThrowerOptions } from '@clerk/clerk-react/internal'; - - // Before - import { isClerkAPIResponseError, isEmailLinkError, isKnownError, isMetamaskError } from '@clerk/clerk-react'; - // After - import { isClerkAPIResponseError, isEmailLinkError, isKnownError, isMetamaskError } from '@clerk/clerk-react/errors'; - - // Before - import { MultisessionAppSupport } from '@clerk/clerk-react'; - // After - import { MultisessionAppSupport } from '@clerk/clerk-react/internal'; - ``` - - - Drop from the `@clerk/clerk-react` and all other clerk-react wrapper packages: - - `__internal__setErrorThrowerOptions` internal utility (moved to /internal subpath) - - `WithClerkProp` type - - `MultisessionAppSupport` component (moved to /internal subpath) - - `EmailLinkErrorCode` enum - - Drop `StructureContext` and related errors to reduce code complexity since it seems that it was not being used. - - Drop `withUser`, `WithUser`, `withClerk` HOFs and `WithClerk`, `withSession`, `WithSession` HOCs from the `@clerk/clerk-react` - to reduce the export surface since it's trivial to implement if needed. - - ```` - -- 52ff8fe6b: Upgrade React version to >=18 and add react-dom as peer dependency - to fix issues with vite & rollup building. -- 97407d8aa: Dropping support for Node 14 and 16 as they both reached EOL status. The minimal Node.js version required by Clerk is `18.18.0` now. -- 0ec3a146c: Changes in exports of `@clerk/backend`: - - Expose the following helpers and enums from `@clerk/backend/internal`: - ```typescript - import { - AuthStatus, - buildRequestUrl, - constants, - createAuthenticateRequest, - createIsomorphicRequest, - debugRequestState, - makeAuthObjectSerializable, - prunePrivateMetadata, - redirect, - sanitizeAuthObject, - signedInAuthObject, - signedOutAuthObject, - } from '@clerk/backend/internal'; - ``` - - Drop the above exports from the top-level api: - ```typescript - // Before - import { AuthStatus, ... } from '@clerk/backend'; - // After - import { AuthStatus, ... } from '@clerk/backend/internal'; - ``` - Dropping those exports results in also dropping the exports from `gatsby-plugin-clerk`, `@clerk/clerk-sdk-node`, `@clerk/backend`, `@clerk/fastify`, `@clerk/nextjs`, `@clerk/remix` packages. -- 02976d494: (Note: This is only relevant if, in the unlikely case, you are using `Clerk` from `@clerk/remix` directly. If not, you can safely ignore this change.) - - Remove the named `Clerk` import from `@clerk/remix` and import `createClerkClient` instead. The latter is a factory method to create a Clerk client instance for you. This update aligns usage across our SDKs and will enable us to ship DX improvements better in the future. - - ```js - import { Clerk } from '@clerk/remix'; - const clerk = Clerk({ secretKey: '...' }); - ``` - - You need to rename the import from `Clerk` to `createClerkClient` and change its usage: - - ```js - import { createClerkClient } from '@clerk/remix'; - const clerk = createClerkClient({ secretKey: '...' }); - ``` - -- 1ad910eb9: Changes in exports of `@clerk/backend`: - - Drop the following internal exports from the top-level api: - ```typescript - // Before - import { - AllowlistIdentifier, - Client, - DeletedObject, - Email, - EmailAddress, - ExternalAccount, - IdentificationLink, - Invitation, - OauthAccessToken, - ObjectType, - Organization, - OrganizationInvitation, - OrganizationMembership, - OrganizationMembershipPublicUserData, - PhoneNumber, - RedirectUrl, - SMSMessage, - Session, - SignInToken, - Token, - User, - Verification, - } from '@clerk/backend'; - // After : no alternative since there is no need to use those classes - ``` - Dropping those exports results in also dropping the exports from `gatsby-plugin-clerk`, `@clerk/clerk-sdk-node`, `@clerk/backend`, `@clerk/fastify`, `@clerk/nextjs`, `@clerk/remix` packages. - - Keep those 3 resource related type exports - ```typescript - import type { Organization, Session, User, WebhookEvent, WebhookEventType } from '@clerk/backend'; - ``` -- 9a1fe3728: Use the new `routerPush` and `routerReplace` props for `` instead of `navigate`. -- e1f7eae87: Limit TokenVerificationError exports to TokenVerificationError and TokenVerificationErrorReason - -### Minor Changes - -- 7f6a64f43: - By default, all the components with routing will have the `routing` prop assigned as `'path'` by default when the `path` prop is filled. - - The `` component will set the default value of the `userProfileMode` prop to `'navigation'` if the `userProfileUrl` prop is provided. - - The `` component will have the `organizationProfileMode` and `createOrganizationMode` props assigned with `'navigation'` by default if the `organizationProfileUrl` and `createOrganizationUrl` props are filled accordingly. -- 2964f8a47: Expose debug headers in response for handshake / signed-out states from SDKs using headers returned from `authenticateRequest()` -- b4e79c1b9: Replace the `Clerk-Backend-SDK` header with `User-Agent` in BAPI requests and update it's value to contain both the package name and the package version of the clerk package - executing the request. Eg request from `@clerk/nextjs` to BAPI with append `User-Agent: @clerk/nextjs@5.0.0-alpha-v5.16` using the latest version. - - Miscellaneous changes: The backend test build changed to use tsup. - -### Patch Changes - -- a8901be64: Expose resources types -- 2de442b24: Rename beta-v5 to beta -- ef2325dcc: Introduce `isTruthy` helper to better cast environment variables to a boolean. Previously only the string `"true"` was checked, now `true`, `"true"`, `"1"`, and `1` will work. -- 6a769771c: Update README for v5 -- ee57f21ac: Export `EmailLinkErrorCode` from `/errors` module -- 2e77cd737: Set correct information on required Node.js and React versions in README -- ee57f21ac: Introduce `/errors` module. This path exports all error-related APIs such as `isClerkAPIResponseError`, `isEmailLinkError`, `isKnownError`, `isMetamaskError`, `EmailLinkErrorCode` -- 63dfe8dc9: Resolve Vercel edge-runtime "TypeError: Failed to parse URL" when `@clerk/remix` is used -- b67f6ab79: Fix property `Page`/ `Link` missing from the `UserProfile` / `OrganizationProfile` - when imported from `@clerk/nextjs` or `@clerk/remix`. -- 7644b7472: Improve the default value for `CLERK_API_URL` by utilizing the publishable key to differentiate between local, staging and prod environments. -- 3a0eacd36: Replace `response.clone()` with `new Response(response.body, response)` to avoid creating multiple branches of a single stream on Cloudflare workers ([issue reference](https://github.com/cloudflare/workers-sdk/issues/3259)). -- 3a2f13604: Fix adding `user`/`sessions`/`organization` resources into request. -- 395c6d7e3: Correctly get environment variables inside Cloudflare Pages by accessing `context.cloudflare` -- 40ac4b645: Introduces telemetry collection from Clerk's SDKs. Collected telemetry will be used to gain insights into product usage and help drive roadmap priority. For more information, see https://clerk.com/docs/telemetry. -- de90d9bca: Automatically infer the path for where the component is mounted. -- Updated dependencies [3a2f13604] -- Updated dependencies [8c23651b8] -- Updated dependencies [f4f99f18d] -- Updated dependencies [743c4d204] -- Updated dependencies [4b8bedc66] -- Updated dependencies [9272006e7] -- Updated dependencies [2a67f729d] -- Updated dependencies [c2a090513] -- Updated dependencies [6ac9e717a] -- Updated dependencies [966b31205] -- Updated dependencies [1834a3ee4] -- Updated dependencies [a8901be64] -- Updated dependencies [896cb6104] -- Updated dependencies [64d3763ec] -- Updated dependencies [8350109ab] -- Updated dependencies [7b200af49] -- Updated dependencies [988a299c0] -- Updated dependencies [ecb60da48] -- Updated dependencies [deac67c1c] -- Updated dependencies [b3a3dcdf4] -- Updated dependencies [1dc28ab46] -- Updated dependencies [83e9d0846] -- Updated dependencies [244de5ea3] -- Updated dependencies [791c49807] -- Updated dependencies [935b0886e] -- Updated dependencies [93d05c868] -- Updated dependencies [ea4933655] -- Updated dependencies [7f6a64f43] -- Updated dependencies [a9fe242be] -- Updated dependencies [448e02e93] -- Updated dependencies [2671e7aa5] -- Updated dependencies [799abc281] -- Updated dependencies [4aaf5103d] -- Updated dependencies [a68eb3083] -- Updated dependencies [2de442b24] -- Updated dependencies [15af02a83] -- Updated dependencies [db18787c4] -- Updated dependencies [7f833da9e] -- Updated dependencies [de6519daa] -- Updated dependencies [e6ecbaa2f] -- Updated dependencies [ef2325dcc] -- Updated dependencies [6a769771c] -- Updated dependencies [fc3ffd880] -- Updated dependencies [8b6b094b9] -- Updated dependencies [bab2e7e05] -- Updated dependencies [71663c568] -- Updated dependencies [a6b893d28] -- Updated dependencies [02976d494] -- Updated dependencies [492b8a7b1] -- Updated dependencies [8e5c881c4] -- Updated dependencies [9e99eb727] -- Updated dependencies [034c47ccb] -- Updated dependencies [cfea3d9c0] -- Updated dependencies [e5c989a03] -- Updated dependencies [ff08fe237] -- Updated dependencies [7ecd6f6ab] -- Updated dependencies [12f3c5c55] -- Updated dependencies [c776f86fb] -- Updated dependencies [90aa2ea9c] -- Updated dependencies [ee57f21ac] -- Updated dependencies [1e98187b4] -- Updated dependencies [7bffc47cb] -- Updated dependencies [a605335e1] -- Updated dependencies [2e77cd737] -- Updated dependencies [2964f8a47] -- Updated dependencies [7af0949ae] -- Updated dependencies [97407d8aa] -- Updated dependencies [2a22aade8] -- Updated dependencies [63dfe8dc9] -- Updated dependencies [ae3a6683a] -- Updated dependencies [e921af259] -- Updated dependencies [d08ec6d8f] -- Updated dependencies [6e54b1b59] -- Updated dependencies [8aea39cd6] -- Updated dependencies [dd5703013] -- Updated dependencies [5f58a2274] -- Updated dependencies [5f58a2274] -- Updated dependencies [03079579d] -- Updated dependencies [c22cd5214] -- Updated dependencies [52ff8fe6b] -- Updated dependencies [c9e0f68af] -- Updated dependencies [86d52fb5c] -- Updated dependencies [fe2607b6f] -- Updated dependencies [c7e6d00f5] -- Updated dependencies [8cc45d2af] -- Updated dependencies [797e327e0] -- Updated dependencies [ab4eb56a5] -- Updated dependencies [a9fe242be] -- Updated dependencies [97407d8aa] -- Updated dependencies [12962bc58] -- Updated dependencies [7cb1241a9] -- Updated dependencies [9615e6cda] -- Updated dependencies [0ec3a146c] -- Updated dependencies [4bb57057e] -- Updated dependencies [c86f73be3] -- Updated dependencies [bad4de1a2] -- Updated dependencies [d4ff346dd] -- Updated dependencies [7644b7472] -- Updated dependencies [2ec9f6b09] -- Updated dependencies [2e4a43017] -- Updated dependencies [f98e480b1] -- Updated dependencies [66b283653] -- Updated dependencies [1affbb22a] -- Updated dependencies [46040a2f3] -- Updated dependencies [cace85374] -- Updated dependencies [f5fb63cf1] -- Updated dependencies [1ad910eb9] -- Updated dependencies [8daf8451c] -- Updated dependencies [f58a9949b] -- Updated dependencies [4aaf5103d] -- Updated dependencies [75ea300bc] -- Updated dependencies [d22e6164d] -- Updated dependencies [e1f7eae87] -- Updated dependencies [7f751c4ef] -- Updated dependencies [4fced88ac] -- Updated dependencies [f5d55bb1f] -- Updated dependencies [18c0d015d] -- Updated dependencies [0d1052ac2] -- Updated dependencies [d30ea1faa] -- Updated dependencies [e9841dd91] -- Updated dependencies [e7e2a1eae] -- Updated dependencies [1fd2eff38] -- Updated dependencies [5471c7e8d] -- Updated dependencies [a6308c67e] -- Updated dependencies [0ce0edc28] -- Updated dependencies [477170962] -- Updated dependencies [9b02c1aae] -- Updated dependencies [051833167] -- Updated dependencies [59f9a7296] -- Updated dependencies [b4e79c1b9] -- Updated dependencies [38d8b3e8a] -- Updated dependencies [be991365e] -- Updated dependencies [8350f73a6] -- Updated dependencies [d6a7ea61a] -- Updated dependencies [e0e79b4fe] -- Updated dependencies [e602d6c1f] -- Updated dependencies [142ded732] -- Updated dependencies [3c4209068] -- Updated dependencies [fb794ce7b] -- Updated dependencies [e6fc58ae4] -- Updated dependencies [6fffd3b54] -- Updated dependencies [a6451aece] -- Updated dependencies [987994909] -- Updated dependencies [40ac4b645] -- Updated dependencies [1bea9c200] -- Updated dependencies [6f755addd] -- Updated dependencies [844847e0b] -- Updated dependencies [6eab66050] -- Updated dependencies [db2d82901] -- Updated dependencies [c2b982749] - - @clerk/backend@1.0.0 - - @clerk/shared@2.0.0 - - @clerk/clerk-react@5.0.0 - -## 4.0.0-beta.46 - -### Patch Changes - -- Updated dependencies []: - - @clerk/clerk-react@5.0.0-beta.41 - -## 4.0.0-beta.45 - -### Patch Changes - -- Updated dependencies [[`bab2e7e05`](https://github.com/clerk/javascript/commit/bab2e7e0590d0da1fd7db0680e63e8f2eb836b41)]: - - @clerk/shared@2.0.0-beta.23 - - @clerk/backend@1.0.0-beta.37 - - @clerk/clerk-react@5.0.0-beta.40 - -## 4.0.0-beta.44 - -### Patch Changes - -- Automatically infer the path for where the component is mounted. ([#3104](https://github.com/clerk/javascript/pull/3104)) by [@octoper](https://github.com/octoper) - -- Updated dependencies [[`ff08fe237`](https://github.com/clerk/javascript/commit/ff08fe237fa5a9ded04924b3c5821111836b49b6), [`f98e480b1`](https://github.com/clerk/javascript/commit/f98e480b1a9e41f5370efcd53aa6887af2ad6816), [`142ded732`](https://github.com/clerk/javascript/commit/142ded73265b776789b65404d96b6c91cfe15e98), [`fb794ce7b`](https://github.com/clerk/javascript/commit/fb794ce7b88001b98ad4a628bc2cc39a0c8ccfa5), [`e6fc58ae4`](https://github.com/clerk/javascript/commit/e6fc58ae4df5091eff00ba0d9045ce5ff0fff538)]: - - @clerk/clerk-react@5.0.0-beta.39 - - @clerk/backend@1.0.0-beta.36 - - @clerk/shared@2.0.0-beta.22 - -## 4.0.0-beta.43 - -### Patch Changes - -- Updated dependencies [[`7cb1241a9`](https://github.com/clerk/javascript/commit/7cb1241a9929b3d8a0d2157637734d82dd9fd852)]: - - @clerk/backend@1.0.0-beta.35 - - @clerk/clerk-react@5.0.0-beta.38 - -## 4.0.0-beta.42 - -### Patch Changes - -- Updated dependencies [[`ecb60da48`](https://github.com/clerk/javascript/commit/ecb60da48029b9cb2d17ab9b0a73cb92bc5c924b)]: - - @clerk/backend@1.0.0-beta.34 - - @clerk/clerk-react@5.0.0-beta.37 - -## 4.0.0-beta.41 - -### Patch Changes - -- Updated dependencies []: - - @clerk/clerk-react@5.0.0-beta.36 - -## 4.0.0-beta.40 - -### Patch Changes - -- Resolve Vercel edge-runtime "TypeError: Failed to parse URL" when `@clerk/remix` is used ([#3129](https://github.com/clerk/javascript/pull/3129)) by [@nikosdouvlis](https://github.com/nikosdouvlis) - -- Updated dependencies [[`63dfe8dc9`](https://github.com/clerk/javascript/commit/63dfe8dc92c28213db5c5644782e7d6751fa22a6), [`d22e6164d`](https://github.com/clerk/javascript/commit/d22e6164ddb765542e0e6335421d2ebf484af059)]: - - @clerk/backend@1.0.0-beta.33 - - @clerk/clerk-react@5.0.0-beta.35 - -## 4.0.0-beta.39 - -### Patch Changes - -- Updated dependencies [[`fc3ffd880`](https://github.com/clerk/javascript/commit/fc3ffd88064a09ab98877dfba119150390f9296e), [`1fd2eff38`](https://github.com/clerk/javascript/commit/1fd2eff38dc71e45d2ff95a5b6e5a99cca53c6e7), [`987994909`](https://github.com/clerk/javascript/commit/987994909b7c462cc2b785f75afe4d621f5c960d), [`1bea9c200`](https://github.com/clerk/javascript/commit/1bea9c20090abdde962c7da1a859933e1cd51660)]: - - @clerk/shared@2.0.0-beta.21 - - @clerk/backend@1.0.0-beta.32 - - @clerk/clerk-react@5.0.0-beta.34 - -## 4.0.0-beta.38 - -### Patch Changes - -- Updated dependencies [[`988a299c0`](https://github.com/clerk/javascript/commit/988a299c0abf708e905592c29e394f8e4d79968e)]: - - @clerk/backend@1.0.0-beta.31 - -## 4.0.0-beta.37 - -### Patch Changes - -- Updated dependencies [[`8350109ab`](https://github.com/clerk/javascript/commit/8350109ab85909e0457199da1db0c9787d94001e)]: - - @clerk/shared@2.0.0-beta.20 - - @clerk/backend@1.0.0-beta.30 - - @clerk/clerk-react@5.0.0-beta.33 - -## 4.0.0-beta.36 - -### Patch Changes - -- Updated dependencies []: - - @clerk/clerk-react@5.0.0-beta.32 - -## 4.0.0-beta.35 - -### Patch Changes - -- Updated dependencies [[`8c23651b8`](https://github.com/clerk/javascript/commit/8c23651b8c3ff1474057a7d62e3ddba939cb0b64), [`9272006e7`](https://github.com/clerk/javascript/commit/9272006e744fc906cfdee520d2dc6d7db141cc97), [`2671e7aa5`](https://github.com/clerk/javascript/commit/2671e7aa5081eb9ae38b92ee647f2e3fd824741f), [`66b283653`](https://github.com/clerk/javascript/commit/66b28365370bcbcdf4e51da39de58c7f8b1fc1b4)]: - - @clerk/backend@1.0.0-beta.29 - - @clerk/clerk-react@5.0.0-beta.31 - -## 4.0.0-beta.34 - -### Minor Changes - -- Expose debug headers in response for handshake / signed-out states from SDKs using headers returned from `authenticateRequest()` ([#2898](https://github.com/clerk/javascript/pull/2898)) by [@dimkl](https://github.com/dimkl) - -### Patch Changes - -- Replace `response.clone()` with `new Response(response.body, response)` to avoid creating multiple branches of a single stream on Cloudflare workers ([issue reference](https://github.com/cloudflare/workers-sdk/issues/3259)). ([#2953](https://github.com/clerk/javascript/pull/2953)) by [@octoper](https://github.com/octoper) - -- Updated dependencies [[`2964f8a47`](https://github.com/clerk/javascript/commit/2964f8a47e473fa8457a27104adb4d008613a0e3)]: - - @clerk/backend@1.0.0-beta.28 - -## 4.0.0-beta.33 - -### Patch Changes - -- Updated dependencies [[`c86f73be3`](https://github.com/clerk/javascript/commit/c86f73be382d01ec5f0ff5922ad907f429e63a58)]: - - @clerk/clerk-react@5.0.0-beta.30 - -## 4.0.0-beta.32 - -### Patch Changes - -- Updated dependencies [[`8350f73a6`](https://github.com/clerk/javascript/commit/8350f73a67f8980be78e3bd3343e772f5653d718)]: - - @clerk/shared@2.0.0-beta.19 - - @clerk/backend@1.0.0-beta.27 - - @clerk/clerk-react@5.0.0-beta.29 - -## 4.0.0-beta.31 - -### Patch Changes - -- Updated dependencies []: - - @clerk/clerk-react@5.0.0-beta.28 - -## 4.0.0-beta.30 - -### Patch Changes - -- Updated dependencies [[`e5c989a03`](https://github.com/clerk/javascript/commit/e5c989a035fa16413414c213febe16fcdbeef9b1), [`2ec9f6b09`](https://github.com/clerk/javascript/commit/2ec9f6b09f98ae276658d6dc705e16df0573d817)]: - - @clerk/shared@2.0.0-beta.18 - - @clerk/backend@1.0.0-beta.26 - - @clerk/clerk-react@5.0.0-beta.27 - -## 4.0.0-beta.29 - -### Patch Changes - -- Correctly get environment variables inside Cloudflare Pages by accessing `context.cloudflare` ([#2844](https://github.com/clerk/javascript/pull/2844)) by [@arjunyel](https://github.com/arjunyel) - -- Updated dependencies [[`18c0d015d`](https://github.com/clerk/javascript/commit/18c0d015d20493e14049fed73a5b6f732372a5cf)]: - - @clerk/clerk-react@5.0.0-beta.26 - -## 4.0.0-beta.28 - -### Patch Changes - -- Updated dependencies []: - - @clerk/clerk-react@5.0.0-beta.25 - -## 4.0.0-beta.27 - -### Patch Changes - -- Updated dependencies [[`1834a3ee4`](https://github.com/clerk/javascript/commit/1834a3ee496ea27b9f7ceeb32ec5361f9de8ee30), [`15af02a83`](https://github.com/clerk/javascript/commit/15af02a837b0e87ea83f3a86dfacc149adca1345)]: - - @clerk/shared@2.0.0-beta.17 - - @clerk/backend@1.0.0-beta.25 - - @clerk/clerk-react@5.0.0-beta.24 - -## 4.0.0-beta.26 - -### Patch Changes - -- Updated dependencies [[`db18787c4`](https://github.com/clerk/javascript/commit/db18787c4d9fa8ee1306db9b65f3b3f5e2fe2dad)]: - - @clerk/shared@2.0.0-beta.16 - - @clerk/backend@1.0.0-beta.24 - - @clerk/clerk-react@5.0.0-beta.23 - -## 4.0.0-beta.25 - -### Patch Changes - -- Updated dependencies [[`6eab66050`](https://github.com/clerk/javascript/commit/6eab66050608a1bc5cb9aca6a234b1fea16106e5)]: - - @clerk/shared@2.0.0-beta.15 - - @clerk/backend@1.0.0-beta.23 - - @clerk/clerk-react@5.0.0-beta.22 - -## 4.0.0-beta.24 - -### Patch Changes - -- Updated dependencies [[`12f3c5c55`](https://github.com/clerk/javascript/commit/12f3c5c55580f93a81df27851fbc92ce1312107e)]: - - @clerk/shared@2.0.0-beta.14 - - @clerk/backend@1.0.0-beta.22 - - @clerk/clerk-react@5.0.0-beta.21 - -## 4.0.0-beta.23 - -### Patch Changes - -- Updated dependencies [[`051833167`](https://github.com/clerk/javascript/commit/0518331675ffb4d6c6830d79a1d61f9e4466773a)]: - - @clerk/backend@1.0.0-beta.21 - - @clerk/clerk-react@5.0.0-beta.20 - -## 4.0.0-beta.22 - -### Patch Changes - -- Rename beta-v5 to beta by [@nikosdouvlis](https://github.com/nikosdouvlis) - -- Updated dependencies [[`2de442b24`](https://github.com/clerk/javascript/commit/2de442b2465cc5d424b8a0b21aa57c557f3aa2e7)]: - - @clerk/backend@1.0.0-beta.20 - - @clerk/clerk-react@5.0.0-beta.19 - - @clerk/shared@2.0.0-beta.13 - -## 4.0.0-beta-v5.21 - -### Patch Changes - -- Expose resources types ([#2660](https://github.com/clerk/javascript/pull/2660)) by [@panteliselef](https://github.com/panteliselef) - -- Export `EmailLinkErrorCode` from `/errors` module ([#2732](https://github.com/clerk/javascript/pull/2732)) by [@nikosdouvlis](https://github.com/nikosdouvlis) - -- Introduce `/errors` module. This path exports all error-related APIs such as `isClerkAPIResponseError`, `isEmailLinkError`, `isKnownError`, `isMetamaskError`, `EmailLinkErrorCode` ([#2732](https://github.com/clerk/javascript/pull/2732)) by [@nikosdouvlis](https://github.com/nikosdouvlis) - -- Updated dependencies [[`6ac9e717a`](https://github.com/clerk/javascript/commit/6ac9e717a7ce8f09c1604f324add5e7e02041c07), [`966b31205`](https://github.com/clerk/javascript/commit/966b312050b572fbbbc07a6f0581cbec21847375), [`a8901be64`](https://github.com/clerk/javascript/commit/a8901be64fe91125a0d38a3c880ffa73168ccf5c), [`7b200af49`](https://github.com/clerk/javascript/commit/7b200af4908839ea661ddf2a76811057b545cafc), [`244de5ea3`](https://github.com/clerk/javascript/commit/244de5ea3a7641727cd85c544bb79fb04f2c0808), [`034c47ccb`](https://github.com/clerk/javascript/commit/034c47ccbef0129b9be9ff8aef683aa039e52602), [`ee57f21ac`](https://github.com/clerk/javascript/commit/ee57f21ac62fc2dd0d9d68b965f35081b538c85e), [`1affbb22a`](https://github.com/clerk/javascript/commit/1affbb22a040e210cfce8f72d52b7961057c02d1), [`8daf8451c`](https://github.com/clerk/javascript/commit/8daf8451cb564bc834dd856174ffc2cdfa932e37), [`7f751c4ef`](https://github.com/clerk/javascript/commit/7f751c4ef2d14410058cf65ea984a93b50c0b87e), [`4fced88ac`](https://github.com/clerk/javascript/commit/4fced88acc66a4837779d8bbca359086cddeec56), [`be991365e`](https://github.com/clerk/javascript/commit/be991365e1c78d0f1dfc59bb33dd533b6fad223a), [`c2b982749`](https://github.com/clerk/javascript/commit/c2b98274970bac5af33c9bb2e84c70ad90225180)]: - - @clerk/clerk-react@5.0.0-beta-v5.18 - - @clerk/backend@1.0.0-beta-v5.19 - - @clerk/shared@2.0.0-beta-v5.12 - -## 4.0.0-beta-v5.20 - -### Patch Changes - -- Updated dependencies [[`8e5c881c4`](https://github.com/clerk/javascript/commit/8e5c881c40d7306c5dbd2e1f1803fbf75127bd71), [`d4ff346dd`](https://github.com/clerk/javascript/commit/d4ff346dd53bb3e1970e80bdc7b188c2dd344f12), [`a6308c67e`](https://github.com/clerk/javascript/commit/a6308c67e329879e001cee56cccd82e60b804422)]: - - @clerk/backend@1.0.0-beta-v5.18 - - @clerk/shared@2.0.0-beta-v5.11 - - @clerk/clerk-react@5.0.0-beta-v5.17 - -## 4.0.0-alpha-v5.19 - -### Patch Changes - -- Fix adding `user`/`sessions`/`organization` resources into request. ([#2598](https://github.com/clerk/javascript/pull/2598)) by [@dimkl](https://github.com/dimkl) - -- Updated dependencies [[`3a2f13604`](https://github.com/clerk/javascript/commit/3a2f13604e1b8b351a05de26d2c0672503aa67b3), [`9e99eb727`](https://github.com/clerk/javascript/commit/9e99eb7276249c68ef6f930cce418ce0004653b9), [`6fffd3b54`](https://github.com/clerk/javascript/commit/6fffd3b542f3df0bcb49281b7c4f77209a83f7a1)]: - - @clerk/backend@1.0.0-alpha-v5.17 - -## 4.0.0-alpha-v5.18 - -### Patch Changes - -- Update README for v5 ([#2577](https://github.com/clerk/javascript/pull/2577)) by [@LekoArts](https://github.com/LekoArts) - -- Updated dependencies [[`935b0886e`](https://github.com/clerk/javascript/commit/935b0886e8317445f30c92000a27ed68e1223ff6), [`6a769771c`](https://github.com/clerk/javascript/commit/6a769771c975996d8d52b35b5cfdbae5dcec85d4)]: - - @clerk/backend@1.0.0-alpha-v5.16 - -## 4.0.0-alpha-v5.17 - -### Minor Changes - -- Replace the `Clerk-Backend-SDK` header with `User-Agent` in BAPI requests and update it's value to contain both the package name and the package version of the clerk package ([#2558](https://github.com/clerk/javascript/pull/2558)) by [@dimkl](https://github.com/dimkl) - - executing the request. Eg request from `@clerk/nextjs` to BAPI with append `User-Agent: @clerk/nextjs@5.0.0-alpha-v5.16` using the latest version. - - Miscellaneous changes: The backend test build changed to use tsup. - -### Patch Changes - -- Updated dependencies [[`799abc281`](https://github.com/clerk/javascript/commit/799abc281182efb953dd6637f9db7fc61c71a2cd), [`8cc45d2af`](https://github.com/clerk/javascript/commit/8cc45d2af98320ccced3768fb039b86576e424a5), [`b4e79c1b9`](https://github.com/clerk/javascript/commit/b4e79c1b9ab8e14cbfccaf290f0f596da0416e13), [`db2d82901`](https://github.com/clerk/javascript/commit/db2d829013722957332bcf03928685a4771f9a3c)]: - - @clerk/backend@1.0.0-alpha-v5.15 - - @clerk/clerk-react@5.0.0-alpha-v5.16 - - @clerk/shared@2.0.0-alpha-v5.10 - -## 4.0.0-alpha-v5.16 - -### Patch Changes - -- Updated dependencies [[`448e02e93`](https://github.com/clerk/javascript/commit/448e02e93cf2392878d5891009640c52103d99a8), [`e6ecbaa2f`](https://github.com/clerk/javascript/commit/e6ecbaa2ff7add95bf888cb4ce43457b9fde7a13), [`e921af259`](https://github.com/clerk/javascript/commit/e921af259e9bdc8810a830bed54d71cf8eced1f8), [`e9841dd91`](https://github.com/clerk/javascript/commit/e9841dd91897a7ebb468b14e272ce06154795389), [`59f9a7296`](https://github.com/clerk/javascript/commit/59f9a72968fb49add6d9031158c791ac60a161b9)]: - - @clerk/backend@1.0.0-alpha-v5.14 - - @clerk/clerk-react@5.0.0-alpha-v5.15 - -## 4.0.0-alpha-v5.15 - -### Patch Changes - -- Fix property `Page`/ `Link` missing from the `UserProfile` / `OrganizationProfile` ([#2508](https://github.com/clerk/javascript/pull/2508)) by [@dimkl](https://github.com/dimkl) - - when imported from `@clerk/nextjs` or `@clerk/remix`. - -- Updated dependencies [[`1dc28ab46`](https://github.com/clerk/javascript/commit/1dc28ab46f6930074334be183c637ce7a81bebf7), [`ea4933655`](https://github.com/clerk/javascript/commit/ea4933655863ce315324aa2a3be7d5f263c2b61f), [`38d8b3e8a`](https://github.com/clerk/javascript/commit/38d8b3e8a0387bcf0b9c8d16e3bbfcfe9b643ca2)]: - - @clerk/shared@2.0.0-alpha-v5.9 - - @clerk/backend@1.0.0-alpha-v5.13 - - @clerk/clerk-react@5.0.0-alpha-v5.14 - -## 4.0.0-alpha-v5.14 - -### Patch Changes - -- Updated dependencies [[`7ecd6f6ab`](https://github.com/clerk/javascript/commit/7ecd6f6abb0e5bfb1a57c99cc11860de311c3e82)]: - - @clerk/shared@2.0.0-alpha-v5.8 - - @clerk/backend@1.0.0-alpha-v5.12 - - @clerk/clerk-react@5.0.0-alpha-v5.13 - -## 4.0.0-alpha-v5.13 - -### Major Changes - -- Path-based routing is now the default routing strategy if the `path` prop is filled. Additionally, if the `path` and `routing` props are not filled, an error will be thrown. ([#2338](https://github.com/clerk/javascript/pull/2338)) by [@octoper](https://github.com/octoper) - - ```jsx - - // Without path or routing props, an error with be thrown - - - - - - - // Alternative #1 - - - - - - - // Alternative #2 - - - - - - ``` - -### Patch Changes - -- Updated dependencies [[`f4f99f18d`](https://github.com/clerk/javascript/commit/f4f99f18de0be8afaae9f52599deb2814ab235e7), [`cfea3d9c0`](https://github.com/clerk/javascript/commit/cfea3d9c00950eee8d7e942d88bee1a56a5f842b), [`fe2607b6f`](https://github.com/clerk/javascript/commit/fe2607b6fdeed83002db7e4a0c040ac0280e5ff7), [`bad4de1a2`](https://github.com/clerk/javascript/commit/bad4de1a2fd8a3e2643fe26677801166a8305c29), [`2e4a43017`](https://github.com/clerk/javascript/commit/2e4a43017ef33b541949ba90e16bf5311ce8bc60), [`f5fb63cf1`](https://github.com/clerk/javascript/commit/f5fb63cf1dd51cd6cd0dba4d9eef871695ef06c3), [`e7e2a1eae`](https://github.com/clerk/javascript/commit/e7e2a1eae2ed726ab49894dd195185c8f4e70acd)]: - - @clerk/backend@1.0.0-alpha-v5.11 - - @clerk/clerk-react@5.0.0-alpha-v5.12 - -## 4.0.0-alpha-v5.12 - -### Major Changes - -- Update `@clerk/remix`'s `rootAuthLoader` and `getAuth` helpers to handle handshake auth status, this replaces the previous interstitial flow. As a result of this, the `ClerkErrorBoundary` is no longer necessary and has been removed. ([#2380](https://github.com/clerk/javascript/pull/2380)) by [@BRKalow](https://github.com/BRKalow) - - To migrate, remove usage of `ClerkErrorBoundary`: - - ```diff - - import { ClerkApp, ClerkErrorBoundary } from "@clerk/remix"; - + import { ClerkApp } from "@clerk/remix"; - - ... - - - export const ErrorBoundary = ClerkErrorBoundary(); - ``` - -- Changes in exports of `@clerk/backend`: ([#2363](https://github.com/clerk/javascript/pull/2363)) by [@dimkl](https://github.com/dimkl) - - - Expose the following helpers and enums from `@clerk/backend/internal`: - ```typescript - import { - AuthStatus, - buildRequestUrl, - constants, - createAuthenticateRequest, - createIsomorphicRequest, - debugRequestState, - makeAuthObjectSerializable, - prunePrivateMetadata, - redirect, - sanitizeAuthObject, - signedInAuthObject, - signedOutAuthObject, - } from '@clerk/backend/internal'; - ``` - - Drop the above exports from the top-level api: - ```typescript - // Before - import { AuthStatus, ... } from '@clerk/backend'; - // After - import { AuthStatus, ... } from '@clerk/backend/internal'; - ``` - Dropping those exports results in also dropping the exports from `gatsby-plugin-clerk`, `@clerk/clerk-sdk-node`, `@clerk/backend`, `@clerk/fastify`, `@clerk/nextjs`, `@clerk/remix` packages. - -- Changes in exports of `@clerk/backend`: ([#2365](https://github.com/clerk/javascript/pull/2365)) by [@dimkl](https://github.com/dimkl) - - - Drop the following internal exports from the top-level api: - ```typescript - // Before - import { - AllowlistIdentifier, - Client, - DeletedObject, - Email, - EmailAddress, - ExternalAccount, - IdentificationLink, - Invitation, - OauthAccessToken, - ObjectType, - Organization, - OrganizationInvitation, - OrganizationMembership, - OrganizationMembershipPublicUserData, - PhoneNumber, - RedirectUrl, - SMSMessage, - Session, - SignInToken, - Token, - User, - Verification, - } from '@clerk/backend'; - // After : no alternative since there is no need to use those classes - ``` - Dropping those exports results in also dropping the exports from `gatsby-plugin-clerk`, `@clerk/clerk-sdk-node`, `@clerk/backend`, `@clerk/fastify`, `@clerk/nextjs`, `@clerk/remix` packages. - - Keep those 3 resource related type exports - ```typescript - import type { Organization, Session, User, WebhookEvent, WebhookEventType } from '@clerk/backend'; - ``` - -### Patch Changes - -- Updated dependencies [[`2a67f729d`](https://github.com/clerk/javascript/commit/2a67f729da58b3400df24da634fc4bf786065f25), [`a9fe242be`](https://github.com/clerk/javascript/commit/a9fe242be4dbaaa02c6643fea0688f1fb23f23e7), [`1e98187b4`](https://github.com/clerk/javascript/commit/1e98187b4fba0f872576510d7bccf8b75a2579bd), [`d08ec6d8f`](https://github.com/clerk/javascript/commit/d08ec6d8f52a2bc037c0eb586123a9f7816e4b64), [`5f58a2274`](https://github.com/clerk/javascript/commit/5f58a22746aba94f76bef5dbbc94fa93ea3b0b7e), [`5f58a2274`](https://github.com/clerk/javascript/commit/5f58a22746aba94f76bef5dbbc94fa93ea3b0b7e), [`a9fe242be`](https://github.com/clerk/javascript/commit/a9fe242be4dbaaa02c6643fea0688f1fb23f23e7), [`0ec3a146c`](https://github.com/clerk/javascript/commit/0ec3a146cc4cbe4a80d1f990a440431ae4490183), [`1ad910eb9`](https://github.com/clerk/javascript/commit/1ad910eb92dce056731f29df0caaaad74d08bd7f), [`f58a9949b`](https://github.com/clerk/javascript/commit/f58a9949bc78737ca4e096ed5501b4e578a2d493), [`9b02c1aae`](https://github.com/clerk/javascript/commit/9b02c1aae1cae286ea305c5e216ae93cbbbc0f90)]: - - @clerk/clerk-react@5.0.0-alpha-v5.11 - - @clerk/backend@1.0.0-alpha-v5.10 - - @clerk/shared@2.0.0-alpha-v5.7 - -## 4.0.0-alpha-v5.11 - -### Patch Changes - -- Updated dependencies [[`e602d6c1f`](https://github.com/clerk/javascript/commit/e602d6c1fde7a7757d292f24dfaddecd14ac1623)]: - - @clerk/backend@1.0.0-alpha-v5.9 - -## 4.0.0-alpha-v5.10 - -### Major Changes - -- - Introduce `@clerk/clerk-react/errors` and `@clerk/clerk-react/internal` subpath exports to expose some internal utilities. Eg ([#2328](https://github.com/clerk/javascript/pull/2328)) by [@dimkl](https://github.com/dimkl) - - ```typescript - // Before - import { __internal__setErrorThrowerOptions } from '@clerk/clerk-react'; - // After - import { setErrorThrowerOptions } from '@clerk/clerk-react/internal'; - - // Before - import { isClerkAPIResponseError, isEmailLinkError, isKnownError, isMetamaskError } from '@clerk/clerk-react'; - // After - import { - isClerkAPIResponseError, - isEmailLinkError, - isKnownError, - isMetamaskError, - } from '@clerk/clerk-react/errors'; - - // Before - import { MultisessionAppSupport } from '@clerk/clerk-react'; - // After - import { MultisessionAppSupport } from '@clerk/clerk-react/internal'; - ``` - - - Drop from the `@clerk/clerk-react` and all other clerk-react wrapper packages: - - `__internal__setErrorThrowerOptions` internal utility (moved to /internal subpath) - - `WithClerkProp` type - - `MultisessionAppSupport` component (moved to /internal subpath) - - `EmailLinkErrorCode` enum - - Drop `StructureContext` and related errors to reduce code complexity since it seems that it was not being used. - - Drop `withUser`, `WithUser`, `withClerk` HOFs and `WithClerk`, `withSession`, `WithSession` HOCs from the `@clerk/clerk-react` - to reduce the export surface since it's trivial to implement if needed. - -- (Note: This is only relevant if, in the unlikely case, you are using `Clerk` from `@clerk/remix` directly. If not, you can safely ignore this change.) ([#2317](https://github.com/clerk/javascript/pull/2317)) by [@tmilewski](https://github.com/tmilewski) - - Remove the named `Clerk` import from `@clerk/remix` and import `createClerkClient` instead. The latter is a factory method to create a Clerk client instance for you. This update aligns usage across our SDKs and will enable us to ship DX improvements better in the future. - - ```js - import { Clerk } from '@clerk/remix'; - const clerk = Clerk({ secretKey: '...' }); - ``` - - You need to rename the import from `Clerk` to `createClerkClient` and change its usage: - - ```js - import { createClerkClient } from '@clerk/remix'; - const clerk = createClerkClient({ secretKey: '...' }); - ``` - -### Patch Changes - -- Updated dependencies [[`896cb6104`](https://github.com/clerk/javascript/commit/896cb610409f84c0ff7a4f502f0b4ccee1afc157), [`02976d494`](https://github.com/clerk/javascript/commit/02976d49473958b8c3fea38d4e389dc1bee7e8c4), [`8aea39cd6`](https://github.com/clerk/javascript/commit/8aea39cd6907e3a8ac01091aa6df64ebd6a42ed2), [`86d52fb5c`](https://github.com/clerk/javascript/commit/86d52fb5cf68f1dc7adf617605b922134e21268f), [`ab4eb56a5`](https://github.com/clerk/javascript/commit/ab4eb56a5c34baf496ebb8ac412ad6171b9bd79c), [`46040a2f3`](https://github.com/clerk/javascript/commit/46040a2f34d0991072fca490e031c1994b2e2296), [`75ea300bc`](https://github.com/clerk/javascript/commit/75ea300bce16a0ce401a225263bb267ad2a217b8), [`844847e0b`](https://github.com/clerk/javascript/commit/844847e0becf20243fba3c659b2b77a238dd270a)]: - - @clerk/shared@2.0.0-alpha-v5.6 - - @clerk/backend@1.0.0-alpha-v5.8 - - @clerk/clerk-react@5.0.0-alpha-v5.10 - -## 4.0.0-alpha-v5.9 - -### Major Changes - -- Limit TokenVerificationError exports to TokenVerificationError and TokenVerificationErrorReason ([#2189](https://github.com/clerk/javascript/pull/2189)) by [@tmilewski](https://github.com/tmilewski) - -### Patch Changes - -- Updated dependencies [[`de6519daa`](https://github.com/clerk/javascript/commit/de6519daa84732023bcfd74ad816a2654f457952), [`7bffc47cb`](https://github.com/clerk/javascript/commit/7bffc47cb71a2c3e026df5977c25487bfd5c55d7), [`7af0949ae`](https://github.com/clerk/javascript/commit/7af0949ae7b4072f550dee220f4d41854fe504c6), [`e1f7eae87`](https://github.com/clerk/javascript/commit/e1f7eae87531b483564256f5456a31150caa469e)]: - - @clerk/backend@1.0.0-alpha-v5.7 - - @clerk/clerk-react@5.0.0-alpha-v5.9 - -## 4.0.0-alpha-v5.8 - -### Patch Changes - -- Set correct information on required Node.js and React versions in README ([#2264](https://github.com/clerk/javascript/pull/2264)) by [@LekoArts](https://github.com/LekoArts) - -- Updated dependencies [[`93d05c868`](https://github.com/clerk/javascript/commit/93d05c8680ed213e594a16d4630a65f8eb244b32), [`a6b893d28`](https://github.com/clerk/javascript/commit/a6b893d281b23dc7b4bd7f3733b33e4cf655bc1b), [`2e77cd737`](https://github.com/clerk/javascript/commit/2e77cd737a333de022533d29cb12e73a907694c8), [`d30ea1faa`](https://github.com/clerk/javascript/commit/d30ea1faa45074e09c037530e8ba3ca2dbd50654)]: - - @clerk/backend@1.0.0-alpha-v5.6 - - @clerk/clerk-react@5.0.0-alpha-v5.8 - - @clerk/shared@2.0.0-alpha-v5.5 - -## 4.0.0-alpha-v5.7 - -### Patch Changes - -- Updated dependencies [[`4b8bedc66`](https://github.com/clerk/javascript/commit/4b8bedc66d47dca5c6192148f4b31ae6d49ff733), [`c776f86fb`](https://github.com/clerk/javascript/commit/c776f86fb2a999dcae46fda9abb5005718c354b2), [`6e54b1b59`](https://github.com/clerk/javascript/commit/6e54b1b590ccdbc7002bde151093d78c217de391), [`c9e0f68af`](https://github.com/clerk/javascript/commit/c9e0f68af1a5cf07dc373ff45999c72d3d86f8f9), [`d6a7ea61a`](https://github.com/clerk/javascript/commit/d6a7ea61a8ae64c93877ec117e54fc48b1c86f16)]: - - @clerk/shared@2.0.0-alpha-v5.4 - - @clerk/clerk-react@5.0.0-alpha-v5.7 - - @clerk/backend@1.0.0-alpha-v5.5 - -## 4.0.0-alpha-v5.6 - -### Major Changes - -- Use the new `routerPush` and `routerReplace` props for `` instead of `navigate`. ([#1304](https://github.com/clerk/javascript/pull/1304)) by [@desiprisg](https://github.com/desiprisg) - -### Patch Changes - -- Updated dependencies []: - - @clerk/clerk-react@5.0.0-alpha-v5.6 - -## 4.0.0-alpha-v5.5 - -### Patch Changes - -- Updated dependencies [[`03079579d`](https://github.com/clerk/javascript/commit/03079579d2b48a9a6969702814449382098d2cfb), [`12962bc58`](https://github.com/clerk/javascript/commit/12962bc58e2c9caad416ba4e6d52061d00bc2feb)]: - - @clerk/backend@1.0.0-alpha-v5.4 - - @clerk/clerk-react@5.0.0-alpha-v5.5 - -## 4.0.0-alpha-v5.4 - -### Minor Changes - -- - By default, all the components with routing will have the `routing` prop assigned as `'path'` by default when the `path` prop is filled. ([#1957](https://github.com/clerk/javascript/pull/1957)) by [@octoper](https://github.com/octoper) - - - The `` component will set the default value of the `userProfileMode` prop to `'navigation'` if the `userProfileUrl` prop is provided. - - The `` component will have the `organizationProfileMode` and `createOrganizationMode` props assigned with `'navigation'` by default if the `organizationProfileUrl` and `createOrganizationUrl` props are filled accordingly. - -### Patch Changes - -- Updated dependencies [[`7f6a64f43`](https://github.com/clerk/javascript/commit/7f6a64f4335832c66ff355f6d2f311f33a313d59)]: - - @clerk/clerk-react@5.0.0-alpha-v5.4 - -## 4.0.0-alpha-v5.3 - -### Major Changes - -- Upgrade React version to >=18 and add react-dom as peer dependency ([#2164](https://github.com/clerk/javascript/pull/2164)) by [@dimkl](https://github.com/dimkl) - - to fix issues with vite & rollup building. - -### Patch Changes - -- Introduces telemetry collection from Clerk's SDKs. Collected telemetry will be used to gain insights into product usage and help drive roadmap priority. For more information, see https://clerk.com/docs/telemetry. ([#2154](https://github.com/clerk/javascript/pull/2154)) by [@BRKalow](https://github.com/BRKalow) - -- Updated dependencies [[`b3a3dcdf4`](https://github.com/clerk/javascript/commit/b3a3dcdf4a8fa75c0dee4c55ab8fedebd49fdfd4), [`4aaf5103d`](https://github.com/clerk/javascript/commit/4aaf5103d3132f4e1ae76b861fa6ce0aae02ecbe), [`52ff8fe6b`](https://github.com/clerk/javascript/commit/52ff8fe6b6ff88ceb5e1246378b54b0565bede9d), [`4bb57057e`](https://github.com/clerk/javascript/commit/4bb57057e9af20fc433626ed178d97d3ca811362), [`4aaf5103d`](https://github.com/clerk/javascript/commit/4aaf5103d3132f4e1ae76b861fa6ce0aae02ecbe), [`0ce0edc28`](https://github.com/clerk/javascript/commit/0ce0edc283849a88b14b4b0df53b6858ed3a4f80), [`40ac4b645`](https://github.com/clerk/javascript/commit/40ac4b645f449b546dae5b4c0d013c9d9ea6d09c)]: - - @clerk/backend@1.0.0-alpha-v5.3 - - @clerk/shared@2.0.0-alpha-v5.3 - - @clerk/clerk-react@5.0.0-alpha-v5.3 - -## 4.0.0-alpha-v5.2 - -### Major Changes - -- Change the minimal Node.js version required by Clerk to `18.17.0`. ([#2162](https://github.com/clerk/javascript/pull/2162)) by [@dimkl](https://github.com/dimkl) - -### Patch Changes - -- Updated dependencies [[`c2a090513`](https://github.com/clerk/javascript/commit/c2a0905132684a4a1e8d598b66caddf20062273e)]: - - @clerk/backend@1.0.0-alpha-v5.2 - - @clerk/shared@2.0.0-alpha-v5.2 - - @clerk/clerk-react@5.0.0-alpha-v5.2 - -## 4.0.0-alpha-v5.1 - -### Major Changes - -- Drop deprecations. Migration steps: ([#2109](https://github.com/clerk/javascript/pull/2109)) by [@dimkl](https://github.com/dimkl) - - - drop `orgs` jwt claim from session token - - change type of `auth` param of `withServerAuth()` callback to `AuthObject` from `ServerSideAuth` in `gatsby-clerk-plugin` - - use `auth.sessionClaims` instead of `auth.claims` - - use `AuthObject` properties from `auth` - - use `publishableKey` instead of `frontendApi` - - use `ClerkProviderOptionsWrapper` type instead of `IsomorphicClerkOptions` - -### Patch Changes - -- Updated dependencies [[`64d3763ec`](https://github.com/clerk/javascript/commit/64d3763ec73747ad04c4b47017195cf4114e150c), [`deac67c1c`](https://github.com/clerk/javascript/commit/deac67c1c40d6d3ccc3559746c0c31cc29a93b84), [`83e9d0846`](https://github.com/clerk/javascript/commit/83e9d08469e7c2840f06aa7d86831055e23f67a5), [`7f833da9e`](https://github.com/clerk/javascript/commit/7f833da9ebc1b2ec9c65513628c377d0584e5d72), [`492b8a7b1`](https://github.com/clerk/javascript/commit/492b8a7b12f14658a384566012e5807f0a171710), [`2a22aade8`](https://github.com/clerk/javascript/commit/2a22aade8c9bd1f83a9be085983f96fa87903804), [`dd5703013`](https://github.com/clerk/javascript/commit/dd57030133fb8ce98681ff0bcad7e53ee826bb0e), [`9615e6cda`](https://github.com/clerk/javascript/commit/9615e6cda8fb1cbc3c2e464e6e891d56e245fac4), [`cace85374`](https://github.com/clerk/javascript/commit/cace85374cb0bb13578cf63fe1f3e6ee59f7f3c2), [`0d1052ac2`](https://github.com/clerk/javascript/commit/0d1052ac284b909786fd0e4744b02fcf4d1a8be6), [`5471c7e8d`](https://github.com/clerk/javascript/commit/5471c7e8dd0155348748fa90e5ae97093f59efe9), [`477170962`](https://github.com/clerk/javascript/commit/477170962f486fd4e6b0653a64826573f0d8621b), [`e0e79b4fe`](https://github.com/clerk/javascript/commit/e0e79b4fe47f64006718d547c898b9f67fe4d424), [`3c4209068`](https://github.com/clerk/javascript/commit/3c42090688166b74badfdefc7ed8c428601a0ba7), [`a6451aece`](https://github.com/clerk/javascript/commit/a6451aecef0bac578b295b524f1246dede3a7598)]: - - @clerk/shared@2.0.0-alpha-v5.1 - - @clerk/backend@1.0.0-alpha-v5.1 - - @clerk/clerk-react@5.0.0-alpha-v5.1 - -## 4.0.0-alpha-v5.0 - -### Major Changes - -- Drop deprecations. Migration steps: ([#2022](https://github.com/clerk/javascript/pull/2022)) by [@dimkl](https://github.com/dimkl) - - - use `CLERK_SECRET_KEY` instead of `CLERK_API_KEY` env variable - - use `secretKey` instead of `apiKey` - - use `CLERK_PUBLISHABLE_KEY` instead of `CLERK_FRONTEND_API` env variable - - use `publishableKey` instead of `frontendApi` - -- Dropping support for Node 14 and 16 as they both reached EOL status. The minimal Node.js version required by Clerk is `18.18.0` now. ([#1864](https://github.com/clerk/javascript/pull/1864)) by [@dimkl](https://github.com/dimkl) - -### Patch Changes - -- Introduce `isTruthy` helper to better cast environment variables to a boolean. Previously only the string `"true"` was checked, now `true`, `"true"`, `"1"`, and `1` will work. ([#2002](https://github.com/clerk/javascript/pull/2002)) by [@LekoArts](https://github.com/LekoArts) - -- Improve the default value for `CLERK_API_URL` by utilizing the publishable key to differentiate between local, staging and prod environments. ([#1955](https://github.com/clerk/javascript/pull/1955)) by [@desiprisg](https://github.com/desiprisg) - -- Updated dependencies [[`743c4d204`](https://github.com/clerk/javascript/commit/743c4d20423790b554e66923466081c0d3b0d9ed), [`791c49807`](https://github.com/clerk/javascript/commit/791c49807c3c9e19964cbf621c935d237caeecf3), [`a68eb3083`](https://github.com/clerk/javascript/commit/a68eb3083ff68459cd33098e2df190a5ba26c841), [`ef2325dcc`](https://github.com/clerk/javascript/commit/ef2325dcc18729e9ce9ee5823e9a963efa51dbc1), [`8b6b094b9`](https://github.com/clerk/javascript/commit/8b6b094b9c7d09eeae90f8bdfac44d53513aa63d), [`71663c568`](https://github.com/clerk/javascript/commit/71663c568926b1d60b97aa7ccc5298d05b618af2), [`90aa2ea9c`](https://github.com/clerk/javascript/commit/90aa2ea9c4675662cee581298b49bd76ec8f8850), [`a605335e1`](https://github.com/clerk/javascript/commit/a605335e1e6f37d9b02170282974b0e1406e3f98), [`97407d8aa`](https://github.com/clerk/javascript/commit/97407d8aa481007d3262fe7a0772dea901ce0a8c), [`ae3a6683a`](https://github.com/clerk/javascript/commit/ae3a6683aa1a28e5201325463e4211229b641711), [`c22cd5214`](https://github.com/clerk/javascript/commit/c22cd52147492ba25f3c07bdbe6bbc4eb49a5cf0), [`c7e6d00f5`](https://github.com/clerk/javascript/commit/c7e6d00f56e73df4ed87712e74ad9d5bcaca8924), [`797e327e0`](https://github.com/clerk/javascript/commit/797e327e05ce6bd23320555a9e7d6fadbd9d624f), [`97407d8aa`](https://github.com/clerk/javascript/commit/97407d8aa481007d3262fe7a0772dea901ce0a8c), [`7644b7472`](https://github.com/clerk/javascript/commit/7644b74726ba73e615a1256f9ff3fa03b0f8bc30), [`f5d55bb1f`](https://github.com/clerk/javascript/commit/f5d55bb1fc6a87303fb8bf461c3a917ae4da4005), [`6f755addd`](https://github.com/clerk/javascript/commit/6f755addd0886b9ff8b0d5dbe48e37470049acad)]: - - @clerk/shared@2.0.0-alpha-v5.0 - - @clerk/backend@1.0.0-alpha-v5.0 - - @clerk/clerk-react@5.0.0-alpha-v5.0 - -## 3.1.0 - -### Minor Changes - -- Support usage of Remix's `defer()` method in the loader passed to `rootAuthLoader()`. ([#1926](https://github.com/clerk/javascript/pull/1926)) by [@BRKalow](https://github.com/BRKalow) - -### Patch Changes - -- Publish packages with [npm provenance](https://docs.npmjs.com/generating-provenance-statements) enabled ([#1891](https://github.com/clerk/javascript/pull/1891)) by [@LekoArts](https://github.com/LekoArts) - -- Updated dependencies [[`3bf64107e`](https://github.com/clerk/javascript/commit/3bf64107e1d0f9fce55163276d157da7849a390f), [`52f8553d2`](https://github.com/clerk/javascript/commit/52f8553d22f9454ee1194fd162410db15da7a4be), [`92727eec3`](https://github.com/clerk/javascript/commit/92727eec39566278263ffa118a085493f964eb94), [`b09b66eec`](https://github.com/clerk/javascript/commit/b09b66eec6ed0fbf99d93cd6843826f19c911099), [`51861addf`](https://github.com/clerk/javascript/commit/51861addff911615035fdc74718a1deff3f5cd62), [`37d8856ba`](https://github.com/clerk/javascript/commit/37d8856babb9db8edf763455172c4d22d6035036), [`aa4cd7615`](https://github.com/clerk/javascript/commit/aa4cd761585b888706a36a6eed7436a8f0476dbf)]: - - @clerk/backend@0.31.3 - - @clerk/shared@1.0.0 - - @clerk/clerk-react@4.27.0 - - @clerk/types@3.57.0 - -## 3.0.8 - -### Patch Changes - -- Updated dependencies [[`9ca215702`](https://github.com/clerk/javascript/commit/9ca215702d1b816217d2c06c812f7d653ec2da11)]: - - @clerk/types@3.56.1 - - @clerk/backend@0.31.2 - - @clerk/clerk-react@4.26.6 - -## 3.0.7 - -### Patch Changes - -- Internal improvements for retrieving environment variables. ([#1862](https://github.com/clerk/javascript/pull/1862)) by [@octoper](https://github.com/octoper) - -- Updated dependencies [[`35be8709d`](https://github.com/clerk/javascript/commit/35be8709d88f1d1eef043acdba4d49b07578c7b2), [`13e9dfbaa`](https://github.com/clerk/javascript/commit/13e9dfbaa5b7b7e72f63e4b8ecfc1c1918517cd8), [`e38488c92`](https://github.com/clerk/javascript/commit/e38488c929e437583296c34cde23f76218f78caf), [`a11f962bc`](https://github.com/clerk/javascript/commit/a11f962bcbcf225fb927122267de1e8f5faccf53), [`9b644d799`](https://github.com/clerk/javascript/commit/9b644d7991b8cba4b385e9443f87798cde5c9989), [`a9894b445`](https://github.com/clerk/javascript/commit/a9894b445bf1e463176b0442fb73c48f89d9fed8), [`834dadb36`](https://github.com/clerk/javascript/commit/834dadb36c30b2a8f052784de4ad1026b0083b4e), [`70f251007`](https://github.com/clerk/javascript/commit/70f2510074352206bbe7bdadf2c28ccf3c074c12), [`a46d6fe99`](https://github.com/clerk/javascript/commit/a46d6fe99bd9b80671b60347b4c35d558012200f)]: - - @clerk/types@3.56.0 - - @clerk/backend@0.31.1 - - @clerk/shared@0.24.5 - - @clerk/clerk-react@4.26.5 - -## 3.0.6 - -### Patch Changes - -- Warn about environment variables deprecations: ([#1859](https://github.com/clerk/javascript/pull/1859)) by [@dimkl](https://github.com/dimkl) - - - `CLERK_API_KEY` - - `CLERK_FRONTEND_API` - - `NEXT_PUBLIC_CLERK_FRONTEND_API` - -- Introduce a new property on the core Clerk singleton, `sdkMetadata`. This will be populated by each host SDK. This metadata will be used to make logging and debugging easier. ([#1857](https://github.com/clerk/javascript/pull/1857)) by [@BRKalow](https://github.com/BRKalow) - -- Updated dependencies [[`977336f79`](https://github.com/clerk/javascript/commit/977336f793cd4ce5984f98dac3cedf9f5ec363f5), [`997b8e256`](https://github.com/clerk/javascript/commit/997b8e256c8f83d68d0ae4243c7ea5640573d1ae), [`91e9a55f4`](https://github.com/clerk/javascript/commit/91e9a55f4b9f1a8f8d843a788597026015ddeafd), [`c9b17f5a7`](https://github.com/clerk/javascript/commit/c9b17f5a72cb27786cfc7f1fb42be1233fb10d5c), [`91014880d`](https://github.com/clerk/javascript/commit/91014880df71c2618d0b1e513da4dd19ccd809e3), [`3848f8dbe`](https://github.com/clerk/javascript/commit/3848f8dbe094226c6062341405a32a9621042fd6), [`7f4d4b942`](https://github.com/clerk/javascript/commit/7f4d4b942e8834462cdc0976b106d9739c345f6b)]: - - @clerk/shared@0.24.4 - - @clerk/clerk-react@4.26.4 - - @clerk/types@3.55.0 - - @clerk/backend@0.31.0 - -## 3.0.5 - -### Patch Changes - -- Make `types` the first key in all `exports` maps defined in our packages' `package.json`. The [TypeScript docs](https://www.typescriptlang.org/docs/handbook/esm-node.html#packagejson-exports-imports-and-self-referencing) recommends so, as the `exports` map is order-based. by [@nikosdouvlis](https://github.com/nikosdouvlis) - -- Updated dependencies [[`1136c7c15`](https://github.com/clerk/javascript/commit/1136c7c15043ffe917b4918e9e33f55b496cd679), [`1e212c19d`](https://github.com/clerk/javascript/commit/1e212c19d1cbfbcf6bc6718f5aec0a3cb893b96f), [`1136c7c15`](https://github.com/clerk/javascript/commit/1136c7c15043ffe917b4918e9e33f55b496cd679), [`1136c7c15`](https://github.com/clerk/javascript/commit/1136c7c15043ffe917b4918e9e33f55b496cd679), [`1136c7c15`](https://github.com/clerk/javascript/commit/1136c7c15043ffe917b4918e9e33f55b496cd679)]: - - @clerk/clerk-react@4.26.3 - - @clerk/shared@0.24.3 - - @clerk/backend@0.30.3 - -## 3.0.4 - -### Patch Changes - -- Pins the internal dependency versions. This ensures that users installing our main framework SDKs will get consistent versions across all @clerk/ packages. ([#1798](https://github.com/clerk/javascript/pull/1798)) by [@BRKalow](https://github.com/BRKalow) - -- Updated dependencies [[`b59b6b75d`](https://github.com/clerk/javascript/commit/b59b6b75dc61bc4d7e61f7cca774f3731a2929b9), [`fed24f1bf`](https://github.com/clerk/javascript/commit/fed24f1bf3e2b8c3f3e3327178f77b57c391c62c), [`164f3aac7`](https://github.com/clerk/javascript/commit/164f3aac7928bc69301846130cc77986569d4e91), [`68259a2bb`](https://github.com/clerk/javascript/commit/68259a2bb8193befdde9101d4ec9bf305881d5e2), [`33e927c59`](https://github.com/clerk/javascript/commit/33e927c59fbf06436ff642ef9f846bd3b467e3e1), [`0636ff779`](https://github.com/clerk/javascript/commit/0636ff7799e126d1438d2738ce0e46c3b277f46a), [`9514618d6`](https://github.com/clerk/javascript/commit/9514618d65cfdde0ff011eabd41a992b61fc8dc1), [`bb2ec9373`](https://github.com/clerk/javascript/commit/bb2ec93738f92c89f008c6a275a986593816c4d3), [`c7c6912f3`](https://github.com/clerk/javascript/commit/c7c6912f34874467bc74104690fe9f95491cc10d), [`71bb1c7b5`](https://github.com/clerk/javascript/commit/71bb1c7b570f7b0bbc377c8104c9abcc1af4cacf), [`e592565e0`](https://github.com/clerk/javascript/commit/e592565e0d7707626587f5e0ae7fb7279c84f050)]: - - @clerk/types@3.54.0 - - @clerk/backend@0.30.2 - - @clerk/shared@0.24.2 - - @clerk/clerk-react@4.26.2 - -## 3.0.3 - -### Patch Changes - -- Updated dependencies [[`cecf74d79`](https://github.com/clerk/javascript/commit/cecf74d79069662d25f73e4745aa01348d398afb), [`a0b25671c`](https://github.com/clerk/javascript/commit/a0b25671cdee39cd0c2fca832b8c378fd445ec39)]: - - @clerk/backend@0.30.1 - - @clerk/shared@0.24.1 - - @clerk/clerk-react@4.26.1 - -## 3.0.2 - -### Patch Changes - -- Updated dependencies [[`7ffa6fac3`](https://github.com/clerk/javascript/commit/7ffa6fac3762f6fb130ba2f2fcaa28e52b36b3b4), [`5c8754239`](https://github.com/clerk/javascript/commit/5c8754239e9ef13656fb73f30c9c6a6187b9aa81), [`14895e2dd`](https://github.com/clerk/javascript/commit/14895e2dde0fa15b594b1b7d89829d6013f5afc6), [`2f6a6ac99`](https://github.com/clerk/javascript/commit/2f6a6ac9991469bf8532019bb22ff50adecdb434), [`2f6a6ac99`](https://github.com/clerk/javascript/commit/2f6a6ac9991469bf8532019bb22ff50adecdb434), [`94c36c755`](https://github.com/clerk/javascript/commit/94c36c755b598eb68d22f42eb7f738050f390678), [`753f7bbda`](https://github.com/clerk/javascript/commit/753f7bbda9bbb7444f96222a3b6cae815a09058f), [`7406afe7f`](https://github.com/clerk/javascript/commit/7406afe7f550f702bd91cde9616fd26222833a87), [`55c8ebd39`](https://github.com/clerk/javascript/commit/55c8ebd390dd88036aee06866009be6a50c63138)]: - - @clerk/shared@0.24.0 - - @clerk/clerk-react@4.26.0 - - @clerk/types@3.53.0 - - @clerk/backend@0.30.0 - -## 3.0.1 - -### Patch Changes - -- Ensure the interstitial properly fires on client-side route transitions. ([#1720](https://github.com/clerk/javascript/pull/1720)) by [@BRKalow](https://github.com/BRKalow) - -- Updated dependencies [[`07ede0f95`](https://github.com/clerk/javascript/commit/07ede0f959f232f6cbecb596eb9352f8cb382cdc), [`0eb666118`](https://github.com/clerk/javascript/commit/0eb66611882e6c460cc6a6c5cfa1d9b086ec6917), [`3b85311c9`](https://github.com/clerk/javascript/commit/3b85311c9eb006f51a8642f193473a250de879fc), [`ffcc78c06`](https://github.com/clerk/javascript/commit/ffcc78c062d067738f617ea9b491c1d45677148c), [`53ccb27cf`](https://github.com/clerk/javascript/commit/53ccb27cfd195af65adde6694572ed523fc66d6d), [`c61ddf5bf`](https://github.com/clerk/javascript/commit/c61ddf5bf2664e38bbaba6572d421adac8a2eff7), [`0366e0b20`](https://github.com/clerk/javascript/commit/0366e0b208e9086896562af94f24cdbd401c702c)]: - - @clerk/shared@0.23.1 - - @clerk/clerk-react@4.25.2 - - @clerk/types@3.52.1 - - @clerk/backend@0.29.3 - -## 3.0.0 - -### Major Changes - -- Remix released its second major version. Read their [announcement blogpost](https://remix.run/blog/remix-v2) and [upgrade guide](https://remix.run/docs/en/main/start/v2) to learn more. ([#1739](https://github.com/clerk/javascript/pull/1739)) by [@anagstef](https://github.com/anagstef) - - Thus `@clerk/remix` was updated to support Remix `^2.0.0` and later. If you want/need to continue using Remix `^1.0.0`, keep using the previous major `@clerk/remix` version. - - **Breaking changes:** - - - Renamed `V2_ClerkErrorBoundary` to `ClerkErrorBoundary` - - Removed `ClerkCatchBoundary` - - **Migration guide:** - - - Rename `V2_ClerkErrorBoundary` to `ClerkErrorBoundary` - - ```diff - - import { ClerkApp, V2_ClerkErrorBoundary } from "@clerk/remix"; - + import { ClerkApp, ClerkErrorBoundary } from "@clerk/remix"; - - - export const ErrorBoundary = V2_ClerkErrorBoundary(); - + export const ErrorBoundary = ClerkErrorBoundary(); - ``` - - - Replace `ClerkCatchBoundary` with `ClerkErrorBoundary`. If you used `V2_ClerkErrorBoundary` you can skip this step. - - ```diff - - import { ClerkApp, ClerkCatchBoundary } from '@clerk/remix'; - + import { ClerkApp, ClerkErrorBoundary } from "@clerk/remix"; - - - export const CatchBoundary = ClerkCatchBoundary(); - + export const ErrorBoundary = ClerkErrorBoundary(); - ``` - -### Patch Changes - -- Updated dependencies [[`40ea407ad`](https://github.com/clerk/javascript/commit/40ea407ad1042fee6871755f30de544200b1f0d8), [`378a903ac`](https://github.com/clerk/javascript/commit/378a903ac4dc12e6ee708de20f0d9a5aa758bd18), [`6706b154c`](https://github.com/clerk/javascript/commit/6706b154c0b41356c7feeb19c6340160a06466e5), [`27b611e47`](https://github.com/clerk/javascript/commit/27b611e47e4f1ad86e8dff42cb02c98bdc6ff6bd), [`4d0d90238`](https://github.com/clerk/javascript/commit/4d0d9023895c13290d5578ece218c24348c540fc), [`086a2e0b7`](https://github.com/clerk/javascript/commit/086a2e0b7e71a9919393ca43efedbf3718ea5fe4)]: - - @clerk/backend@0.29.2 - - @clerk/shared@0.23.0 - - @clerk/clerk-react@4.25.1 - -## 2.10.3 - -### Patch Changes - -- Change `README` to include updated links to issue templates and update Discord link. ([#1750](https://github.com/clerk/javascript/pull/1750)) by [@LekoArts](https://github.com/LekoArts) - -- Adjust return type of `rootAuthLoader`'s callback to allow returning `null`. ([#1704](https://github.com/clerk/javascript/pull/1704)) by [@BRKalow](https://github.com/BRKalow) - -- Updated dependencies [[`e99df0a0d`](https://github.com/clerk/javascript/commit/e99df0a0de8ab91e9de4d32dfab46ad562f510d3), [`4327b91f9`](https://github.com/clerk/javascript/commit/4327b91f9ed65b440afaa5f76a6231aeacd3541a), [`8b9a7a360`](https://github.com/clerk/javascript/commit/8b9a7a36003f1b8622f444a139a811f1c35ca813), [`30bb9eccb`](https://github.com/clerk/javascript/commit/30bb9eccb95632fb1de02b756e818118ca6324f7), [`75be1d6b3`](https://github.com/clerk/javascript/commit/75be1d6b3d9bf7b5d71613b3f169a942b1d25e7e), [`01b024c57`](https://github.com/clerk/javascript/commit/01b024c57c80ae00d83801fe90b2992111dc1a68)]: - - @clerk/clerk-react@4.25.0 - - @clerk/types@3.52.0 - - @clerk/backend@0.29.1 - - @clerk/shared@0.22.1 - -## 2.10.2 - -### Patch Changes - -- Updated dependencies [[`463ff84f5`](https://github.com/clerk/javascript/commit/463ff84f5bfb7114102ca6cb5a2ea2fce705164c), [`e6a388946`](https://github.com/clerk/javascript/commit/e6a38894640b6999b90ea44ef66acda34debe2c1), [`1426e5eb3`](https://github.com/clerk/javascript/commit/1426e5eb3730bb79e2ec5341fa4347d7fa957739)]: - - @clerk/types@3.51.0 - - @clerk/backend@0.29.0 - - @clerk/clerk-react@4.24.2 - -## 2.10.1 - -### Patch Changes - -- Updated dependencies [[`975412ed5`](https://github.com/clerk/javascript/commit/975412ed5307ac81128c87289178bd1e6c2fb1af), [`a102c21d4`](https://github.com/clerk/javascript/commit/a102c21d4762895a80a1ad846700763cc801b3f3)]: - - @clerk/backend@0.28.1 - - @clerk/clerk-react@4.24.1 - -## 2.10.0 - -### Minor Changes - -- Configure sign in/up and afterSignIn/Up paths for remix via env variables. ([#1470](https://github.com/clerk/javascript/pull/1470)) by [@desiprisg](https://github.com/desiprisg) - -### Patch Changes - -- Updated dependencies [[`96cc1921c`](https://github.com/clerk/javascript/commit/96cc1921cac20442f19510137ee0100df5f8a0f4), [`8d1e7d76d`](https://github.com/clerk/javascript/commit/8d1e7d76de40c0ecb367c6745094dd0a75f764b3), [`435d2cff5`](https://github.com/clerk/javascript/commit/435d2cff5dfc86c58690d3f0d843f567ac4f3c04), [`8873841fc`](https://github.com/clerk/javascript/commit/8873841fcbb96f31aaeb8a12a0ce1d90512986d4), [`0a5f632f8`](https://github.com/clerk/javascript/commit/0a5f632f83bb4dae4cc82718dc86b7df3a125a56), [`34da40a50`](https://github.com/clerk/javascript/commit/34da40a5035b37eb365c6cb273e25c4d3bcf7161), [`3158752c7`](https://github.com/clerk/javascript/commit/3158752c73b9266775f954d3adaf43c66ba8b2e8), [`8538cd0c1`](https://github.com/clerk/javascript/commit/8538cd0c1e2ee2e38bd11079735a2ffc6738f71b), [`a412a5014`](https://github.com/clerk/javascript/commit/a412a501426f5d7a32284fda47efe48a04b5d38e), [`4ea30e883`](https://github.com/clerk/javascript/commit/4ea30e883a4f5c19cdde3424bf02afa99e2bc86d), [`86de584dd`](https://github.com/clerk/javascript/commit/86de584ddf1c22ec99852b983a92386e5542613c), [`e02a1aff2`](https://github.com/clerk/javascript/commit/e02a1aff2d4b1478601a2e7b598d600ab3902169), [`09bfb793e`](https://github.com/clerk/javascript/commit/09bfb793ee54d50eb54ef4e3a5eb385ea2f2fb54), [`b2296d630`](https://github.com/clerk/javascript/commit/b2296d6304e1ca31a35450e0c67a12555c0142f9), [`52ce79108`](https://github.com/clerk/javascript/commit/52ce79108fb5cb4fc84bf4f2df3e3dc748ee4eb3), [`4764e40c7`](https://github.com/clerk/javascript/commit/4764e40c7e858803fc6379dec20fcf687dcaed64), [`1e117beec`](https://github.com/clerk/javascript/commit/1e117beeca53f27d8e9f58f2a724fbc8a7d54021), [`30fcdd51a`](https://github.com/clerk/javascript/commit/30fcdd51a98dea60da36f2b5152ea22405d2c4f2), [`89bc5de04`](https://github.com/clerk/javascript/commit/89bc5de04aafa9832d4d1b5f816af2340acd14d4)]: - - @clerk/shared@0.22.0 - - @clerk/types@3.50.0 - - @clerk/clerk-react@4.24.0 - - @clerk/backend@0.28.0 - -## 2.9.1 - -### Patch Changes - -- Updated dependencies [[`ea95525a4`](https://github.com/clerk/javascript/commit/ea95525a423bcc89bc9e210c2d29c78e5a6c1210), [`24a46ae7e`](https://github.com/clerk/javascript/commit/24a46ae7e038b56197dc56a535c05e698c5bf249), [`d433b83b9`](https://github.com/clerk/javascript/commit/d433b83b92c61752917f62cc410a774813f38fd7), [`5e1a09df4`](https://github.com/clerk/javascript/commit/5e1a09df4e905ddd887d64c7e8cab10fb4beb3ec), [`876777cb1`](https://github.com/clerk/javascript/commit/876777cb14443917d8e0a04b363327d165ad5580), [`0a59e122d`](https://github.com/clerk/javascript/commit/0a59e122d12b672f111a43ef3897061bfd9bdb52)]: - - @clerk/backend@0.27.0 - - @clerk/types@3.49.0 - - @clerk/shared@0.21.0 - - @clerk/clerk-react@4.23.2 - -## 2.9.0 - -### Minor Changes - -- Support hosting NextJs apps on non-Vercel platforms by constructing req.url using host-related headers instead of using on req.url directly. CLERK_TRUST_HOST is now enabled by default. ([#1492](https://github.com/clerk/javascript/pull/1492)) by [@dimkl](https://github.com/dimkl) - -### Patch Changes - -- Updated dependencies [[`6fa4768dc`](https://github.com/clerk/javascript/commit/6fa4768dc6b261026d6e75d84c9ade1f389fe0d3), [`4ff4b716f`](https://github.com/clerk/javascript/commit/4ff4b716fdb12b18182e506737afafc7dbc05604)]: - - @clerk/types@3.48.1 - - @clerk/backend@0.26.0 - - @clerk/clerk-react@4.23.1 - -## 2.8.1 - -### Patch Changes - -- Updated dependencies [[`2a9d83280`](https://github.com/clerk/javascript/commit/2a9d8328011cb4c3e1a4c6c675cbd5a4edac4c5c)]: - - @clerk/clerk-react@4.23.0 - - @clerk/types@3.48.0 - - @clerk/backend@0.25.1 - -## 2.8.0 - -### Minor Changes - -- Introduce `createIsomorphicRequest` in `@clerk/backend` ([#1393](https://github.com/clerk/javascript/pull/1393)) by [@anagstef](https://github.com/anagstef) - - This utility simplifies the `authenticateRequest` signature, and it makes it easier to integrate with more frameworks. - -### Patch Changes - -- Updated dependencies [[`16c3283ec`](https://github.com/clerk/javascript/commit/16c3283ec192cb7525312da5e718aa7cac8b8445), [`73c9c1d0e`](https://github.com/clerk/javascript/commit/73c9c1d0e3c5f102a515e1ddda01a0a441b40d5b), [`ae9fc247a`](https://github.com/clerk/javascript/commit/ae9fc247aca5bf8211cc8e021706325a010ce9d3), [`1a151e701`](https://github.com/clerk/javascript/commit/1a151e701da80f2d5b1ba1447d6fd5f8612a4bb8), [`e3036848d`](https://github.com/clerk/javascript/commit/e3036848d19a48935129aec2fe50003518a3aa53), [`fd692af79`](https://github.com/clerk/javascript/commit/fd692af791fe206724e38eff647b8562e72c3652), [`090bab66e`](https://github.com/clerk/javascript/commit/090bab66e295bff2358115d2cbd3ed0e603b5ff5), [`5ecbb0a37`](https://github.com/clerk/javascript/commit/5ecbb0a37e99fa2099629c573951c7735d5f0810), [`bb0d69b45`](https://github.com/clerk/javascript/commit/bb0d69b455fa5fd6ca5b1f45a0f242957521dfbb), [`592911196`](https://github.com/clerk/javascript/commit/5929111966811ac578019a9c1dda03b09eda72a8), [`dd10ebeae`](https://github.com/clerk/javascript/commit/dd10ebeae54d70b84b7c0374cea2876e9cdd6622)]: - - @clerk/backend@0.25.0 - - @clerk/types@3.47.0 - - @clerk/shared@0.20.0 - - @clerk/clerk-react@4.22.1 - -## 2.7.0 - -### Minor Changes - -- Introduce `V2_ClerkErrorBoundary` to support `v2_errorBoundary` future flag ([#1444](https://github.com/clerk/javascript/pull/1444)) by [@anagstef](https://github.com/anagstef) - -## 2.6.17 - -### Patch Changes - -- Updated dependencies [[`2ad7cf390`](https://github.com/clerk/javascript/commit/2ad7cf390ba84b8e767ed6fe136800e38356d79c), [`f6b77a1a3`](https://github.com/clerk/javascript/commit/f6b77a1a338cddeadb3cc7019171bf9703d7676e), [`f0b044c47`](https://github.com/clerk/javascript/commit/f0b044c475546e96a5995ef16198e60e35e8098f)]: - - @clerk/backend@0.24.0 - - @clerk/clerk-react@4.22.0 - -## 2.6.16 - -### Patch Changes - -- Updated dependencies [[`3fee736c9`](https://github.com/clerk/javascript/commit/3fee736c993b0a8fd157d716890810d04e632962), [`968d9c265`](https://github.com/clerk/javascript/commit/968d9c2651ce25f6e03c2e6eecd81f7daf876f03), [`ac4e47274`](https://github.com/clerk/javascript/commit/ac4e47274afc2ab3a55a78b388a14bed76600402), [`5957a3da6`](https://github.com/clerk/javascript/commit/5957a3da68cde3386c741812e2bc03b5519d00e0)]: - - @clerk/backend@0.23.7 - - @clerk/clerk-react@4.21.1 - -## 2.6.15 - -### Patch Changes - -- Updated dependencies [[`1e71b60a2`](https://github.com/clerk/javascript/commit/1e71b60a2c6832a5f4f9c75ad4152b82db2b52e1)]: - - @clerk/clerk-react@4.21.0 - -## 2.6.14 - -### Patch Changes - -- Updated dependencies [[`30f8ad18a`](https://github.com/clerk/javascript/commit/30f8ad18a4f85ca2e3fda46e5c180b28bc8fb47c)]: - - @clerk/types@3.46.1 - - @clerk/backend@0.23.6 - - @clerk/clerk-react@4.20.6 - -## 2.6.13 - -### Patch Changes - -- Updated dependencies [[`bfb3af28`](https://github.com/clerk/javascript/commit/bfb3af28eb69d47e31f2b846d1ecc309fd885704)]: - - @clerk/types@3.46.0 - - @clerk/backend@0.23.5 - - @clerk/clerk-react@4.20.5 - -## 2.6.12 - -### Patch Changes - -- Updated dependencies [[`11954816`](https://github.com/clerk/javascript/commit/119548164a1757b878027019c20a688d312b1cfd), [`de2347f9`](https://github.com/clerk/javascript/commit/de2347f9efaab4903787a905528a06551a9b7883), [`32148490`](https://github.com/clerk/javascript/commit/32148490b813028412af0467e342aa85227cb4d2)]: - - @clerk/types@3.45.0 - - @clerk/backend@0.23.4 - - @clerk/clerk-react@4.20.4 - -## 2.6.11 - -### Patch Changes - -- Updated dependencies [[`17cc14ec`](https://github.com/clerk/javascript/commit/17cc14ec64ed292239ee782662171a4a8cbd9e87)]: - - @clerk/types@3.44.0 - - @clerk/backend@0.23.3 - - @clerk/clerk-react@4.20.3 - -## 2.6.10 - -### Patch Changes - -- Updated dependencies [[`9651658c`](https://github.com/clerk/javascript/commit/9651658c2ab00108ffcb9679cd119488c41ec521), [`4e1bb2bd`](https://github.com/clerk/javascript/commit/4e1bb2bd1f3cc933b1e8422849119e0aa16fdaa6)]: - - @clerk/types@3.43.0 - - @clerk/backend@0.23.2 - - @clerk/clerk-react@4.20.2 - -## 2.6.9 - -### Patch Changes - -- Updated dependencies [[`59bc649a`](https://github.com/clerk/javascript/commit/59bc649a92316f5d6ade00f3cd52a9b46dcdc401)]: - - @clerk/shared@0.19.1 - - @clerk/clerk-react@4.20.1 - -## 2.6.8 - -### Patch Changes - -- Allow `clerkJSVersion` to be passed when loading interstitial. Support for ([#1354](https://github.com/clerk/javascript/pull/1354)) by [@panteliselef](https://github.com/panteliselef) - - - Nextjs - - Remix - - Node - -- Updated dependencies [[`b945c921`](https://github.com/clerk/javascript/commit/b945c92100454f00ff4b6b9c769201ca2ceaac93)]: - - @clerk/backend@0.23.1 - -## 2.6.7 - -### Patch Changes - -- Support `audience` parameter in authentication request ([#1004](https://github.com/clerk/javascript/pull/1004)) by [@dimkl](https://github.com/dimkl) - - The audience parameter is used to verify the aud claim in - the request matches the value of the parameter or is included - (when the user provides a list). - - Resolves: - - - [#978](https://github.com/clerk/javascript/pull/978) - - [#1004](https://github.com/clerk/javascript/pull/1004) - -- Updated dependencies [[`7af91bc3`](https://github.com/clerk/javascript/commit/7af91bc3ecc25cba04968b491e1e3c6ec32c18af), [`c42b4ac0`](https://github.com/clerk/javascript/commit/c42b4ac02d7ab7022a06b8f484e057999c6d7963), [`6f3d4305`](https://github.com/clerk/javascript/commit/6f3d43055690db1d69a356503a0a45dc948beaef), [`010484f4`](https://github.com/clerk/javascript/commit/010484f4978b9616e8c2ef50986eda742c4967bd)]: - - @clerk/shared@0.19.0 - - @clerk/clerk-react@4.20.0 - - @clerk/types@3.42.0 - - @clerk/backend@0.23.0 - -## 2.6.6 - -### Patch Changes - -- ESM/CJS support for `@clerk/clerk-react` by [@nikosdouvlis](https://github.com/nikosdouvlis) - - Changes that should affect users and OS contributors: - - - Better source map support for `@clerk/clerk-react`, `@clerk/shared`. This affects anyone developing in our monorepo or anyone using a debugger with Clerk installed in their app. - - Easier node_modules debugging as `@clerk/clerk-react`, `@clerk/shared` and `@clerk/nextjs` are no longer getting bundled as a single-file package. This also improves error logging in nextjs a lot, as nextjs usually logs the line that threw the error - a minified, single-file package, usually consists of a very long single-line module, so logging error in NextJS wasn't ideal. - - Headless clerk-js bundle size reduced by ~10kb, normal clerk-ks by ~6kb - - A new `clerkJSVersion` prop has been added on ClerkProvider allowing to fetch a specific clerk-js version. - -- Updated dependencies [[`b66ea0a5`](https://github.com/clerk/javascript/commit/b66ea0a5aea0d6801e03a1426a0db69921b7b0e3), [`b66ea0a5`](https://github.com/clerk/javascript/commit/b66ea0a5aea0d6801e03a1426a0db69921b7b0e3), [`b66ea0a5`](https://github.com/clerk/javascript/commit/b66ea0a5aea0d6801e03a1426a0db69921b7b0e3), [`b66ea0a5`](https://github.com/clerk/javascript/commit/b66ea0a5aea0d6801e03a1426a0db69921b7b0e3), [`b66ea0a5`](https://github.com/clerk/javascript/commit/b66ea0a5aea0d6801e03a1426a0db69921b7b0e3), [`b66ea0a5`](https://github.com/clerk/javascript/commit/b66ea0a5aea0d6801e03a1426a0db69921b7b0e3), [`b66ea0a5`](https://github.com/clerk/javascript/commit/b66ea0a5aea0d6801e03a1426a0db69921b7b0e3), [`b66ea0a5`](https://github.com/clerk/javascript/commit/b66ea0a5aea0d6801e03a1426a0db69921b7b0e3)]: - - @clerk/backend@0.22.0 - - @clerk/types@3.41.1 - - @clerk/shared@0.18.0 - - @clerk/clerk-react@4.19.0 - -## [2.6.0](https://github.com/clerk/javascript/compare/@clerk/remix@2.6.0-staging.4...@clerk/remix@2.6.0) (2023-05-15) - -**Note:** Version bump only for package @clerk/remix - -### [2.5.6](https://github.com/clerk/javascript/compare/@clerk/remix@2.5.6-staging.5...@clerk/remix@2.5.6) (2023-05-04) - -**Note:** Version bump only for package @clerk/remix - -### [2.5.6-staging.5](https://github.com/clerk/javascript/compare/@clerk/remix@2.5.6-staging.4...@clerk/remix@2.5.6-staging.5) (2023-05-04) - -**Note:** Version bump only for package @clerk/remix - -### [2.5.6-staging.3](https://github.com/clerk/javascript/compare/@clerk/remix@2.5.6-staging.2...@clerk/remix@2.5.6-staging.3) (2023-05-02) - -**Note:** Version bump only for package @clerk/remix - -### [2.5.5](https://github.com/clerk/javascript/compare/@clerk/remix@2.5.5-staging.0...@clerk/remix@2.5.5) (2023-04-19) - -**Note:** Version bump only for package @clerk/remix - -### [2.5.4](https://github.com/clerk/javascript/compare/@clerk/remix@2.5.3...@clerk/remix@2.5.4) (2023-04-19) - -**Note:** Version bump only for package @clerk/remix - -### [2.5.3](https://github.com/clerk/javascript/compare/@clerk/remix@2.5.3-staging.0...@clerk/remix@2.5.3) (2023-04-12) - -**Note:** Version bump only for package @clerk/remix - -### [2.5.2](https://github.com/clerk/javascript/compare/@clerk/remix@2.5.2-staging.3...@clerk/remix@2.5.2) (2023-04-11) - -**Note:** Version bump only for package @clerk/remix - -### [2.5.1](https://github.com/clerk/javascript/compare/@clerk/remix@2.5.1-staging.0...@clerk/remix@2.5.1) (2023-04-06) - -**Note:** Version bump only for package @clerk/remix - -## [2.5.0](https://github.com/clerk/javascript/compare/@clerk/remix@2.5.0-staging.3...@clerk/remix@2.5.0) (2023-03-31) - -**Note:** Version bump only for package @clerk/remix - -## [2.5.0-staging.3](https://github.com/clerk/javascript/compare/@clerk/remix@2.5.0-staging.2...@clerk/remix@2.5.0-staging.3) (2023-03-31) - -**Note:** Version bump only for package @clerk/remix - -## [2.5.0-staging.0](https://github.com/clerk/javascript/compare/@clerk/remix@2.4.1-staging.0...@clerk/remix@2.5.0-staging.0) (2023-03-31) - -### Features - -- **remix:** Support new env var CLERK_SIGN_IN_URL ([a64689e](https://github.com/clerk/javascript/commit/a64689e2ec3d59e67761df891d67193f0cd161a5)) - -## [2.4.0](https://github.com/clerk/javascript/compare/@clerk/remix@2.4.0-staging.1...@clerk/remix@2.4.0) (2023-03-29) - -**Note:** Version bump only for package @clerk/remix - -### [2.2.11](https://github.com/clerk/javascript/compare/@clerk/remix@2.2.11-staging.2...@clerk/remix@2.2.11) (2023-03-10) - -**Note:** Version bump only for package @clerk/remix - -### [2.2.10](https://github.com/clerk/javascript/compare/@clerk/remix@2.2.10-staging.1...@clerk/remix@2.2.10) (2023-03-09) - -**Note:** Version bump only for package @clerk/remix - -### [2.2.9](https://github.com/clerk/javascript/compare/@clerk/remix@2.2.9-staging.1...@clerk/remix@2.2.9) (2023-03-07) - -**Note:** Version bump only for package @clerk/remix - -### [2.2.8](https://github.com/clerk/javascript/compare/@clerk/remix@2.2.8-staging.1...@clerk/remix@2.2.8) (2023-03-03) - -**Note:** Version bump only for package @clerk/remix - -### [2.2.7](https://github.com/clerk/javascript/compare/@clerk/remix@2.2.7-staging.0...@clerk/remix@2.2.7) (2023-03-01) - -**Note:** Version bump only for package @clerk/remix - -### [2.2.6](https://github.com/clerk/javascript/compare/@clerk/remix@2.2.6-staging.0...@clerk/remix@2.2.6) (2023-02-25) - -**Note:** Version bump only for package @clerk/remix - -### [2.2.5](https://github.com/clerk/javascript/compare/@clerk/remix@2.2.5-staging.7...@clerk/remix@2.2.5) (2023-02-24) - -**Note:** Version bump only for package @clerk/remix - -### [2.2.5-staging.4](https://github.com/clerk/javascript/compare/@clerk/remix@2.2.5-staging.3...@clerk/remix@2.2.5-staging.4) (2023-02-22) - -**Note:** Version bump only for package @clerk/remix - -### [2.2.4](https://github.com/clerk/javascript/compare/@clerk/remix@2.2.4-staging.1...@clerk/remix@2.2.4) (2023-02-17) - -**Note:** Version bump only for package @clerk/remix - -### [2.2.3](https://github.com/clerk/javascript/compare/@clerk/remix@2.2.3-staging.2...@clerk/remix@2.2.3) (2023-02-15) - -**Note:** Version bump only for package @clerk/remix - -### [2.2.2](https://github.com/clerk/javascript/compare/@clerk/remix@2.2.2-staging.1...@clerk/remix@2.2.2) (2023-02-10) - -**Note:** Version bump only for package @clerk/remix - -### [2.2.1](https://github.com/clerk/javascript/compare/@clerk/remix@2.2.1-staging.0...@clerk/remix@2.2.1) (2023-02-07) - -**Note:** Version bump only for package @clerk/remix - -### [2.2.1-staging.0](https://github.com/clerk/javascript/compare/@clerk/remix@2.2.0-staging.0...@clerk/remix@2.2.1-staging.0) (2023-02-07) - -**Note:** Version bump only for package @clerk/remix - -## [2.2.0](https://github.com/clerk/javascript/compare/@clerk/remix@2.2.0-staging.0...@clerk/remix@2.2.0) (2023-02-07) - -**Note:** Version bump only for package @clerk/remix - -## [2.1.0](https://github.com/clerk/javascript/compare/@clerk/remix@2.1.0-staging.1...@clerk/remix@2.1.0) (2023-02-01) - -**Note:** Version bump only for package @clerk/remix - -### [2.0.6](https://github.com/clerk/javascript/compare/@clerk/remix@2.0.6-staging.4...@clerk/remix@2.0.6) (2023-01-27) - -**Note:** Version bump only for package @clerk/remix - -### [2.0.5](https://github.com/clerk/javascript/compare/@clerk/remix@2.0.5-staging.1...@clerk/remix@2.0.5) (2023-01-24) - -**Note:** Version bump only for package @clerk/remix - -### [2.0.4](https://github.com/clerk/javascript/compare/@clerk/remix@2.0.3...@clerk/remix@2.0.4) (2023-01-20) - -**Note:** Version bump only for package @clerk/remix - -### [2.0.3](https://github.com/clerk/javascript/compare/@clerk/remix@2.0.2...@clerk/remix@2.0.3) (2023-01-19) - -**Note:** Version bump only for package @clerk/remix - -### [2.0.2](https://github.com/clerk/javascript/compare/@clerk/remix@2.0.2-staging.0...@clerk/remix@2.0.2) (2023-01-18) - -**Note:** Version bump only for package @clerk/remix - -### [2.0.1](https://github.com/clerk/javascript/compare/@clerk/remix@2.0.0...@clerk/remix@2.0.1) (2023-01-17) - -**Note:** Version bump only for package @clerk/remix - -## [2.0.0](https://github.com/clerk/javascript/compare/@clerk/remix@2.0.0-staging.7...@clerk/remix@2.0.0) (2023-01-17) - -**Note:** Version bump only for package @clerk/remix - -### [1.4.8](https://github.com/clerk/javascript/compare/@clerk/remix@1.4.8-staging.0...@clerk/remix@1.4.8) (2022-12-23) - -**Note:** Version bump only for package @clerk/remix - -### [1.4.7](https://github.com/clerk/javascript/compare/@clerk/remix@1.4.7-staging.1...@clerk/remix@1.4.7) (2022-12-19) - -**Note:** Version bump only for package @clerk/remix - -### [1.4.6](https://github.com/clerk/javascript/compare/@clerk/remix@1.4.6-staging.1...@clerk/remix@1.4.6) (2022-12-13) - -**Note:** Version bump only for package @clerk/remix - -### [1.4.5](https://github.com/clerk/javascript/compare/@clerk/remix@1.4.4...@clerk/remix@1.4.5) (2022-12-12) - -**Note:** Version bump only for package @clerk/remix - -### [1.4.4](https://github.com/clerk/javascript/compare/@clerk/remix@1.4.4-staging.1...@clerk/remix@1.4.4) (2022-12-09) - -**Note:** Version bump only for package @clerk/remix - -### [1.4.3](https://github.com/clerk/javascript/compare/@clerk/remix@1.4.2...@clerk/remix@1.4.3) (2022-12-08) - -**Note:** Version bump only for package @clerk/remix - -### [1.4.2](https://github.com/clerk/javascript/compare/@clerk/remix@1.4.2-staging.0...@clerk/remix@1.4.2) (2022-12-08) - -**Note:** Version bump only for package @clerk/remix - -### [1.4.1](https://github.com/clerk/javascript/compare/@clerk/remix@1.4.1-staging.0...@clerk/remix@1.4.1) (2022-12-02) - -**Note:** Version bump only for package @clerk/remix - -## [1.4.0](https://github.com/clerk/javascript/compare/@clerk/remix@1.4.0-staging.5...@clerk/remix@1.4.0) (2022-11-30) - -**Note:** Version bump only for package @clerk/remix - -## [1.4.0-staging.5](https://github.com/clerk/javascript/compare/@clerk/remix@1.4.0-staging.4...@clerk/remix@1.4.0-staging.5) (2022-11-29) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.18](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.18-staging.0...@clerk/remix@1.3.18) (2022-11-25) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.17](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.17-staging.0...@clerk/remix@1.3.17) (2022-11-25) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.16](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.15...@clerk/remix@1.3.16) (2022-11-23) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.15](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.15-staging.3...@clerk/remix@1.3.15) (2022-11-22) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.15-staging.3](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.15-staging.2...@clerk/remix@1.3.15-staging.3) (2022-11-21) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.15-staging.2](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.15-staging.1...@clerk/remix@1.3.15-staging.2) (2022-11-21) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.14](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.14-staging.1...@clerk/remix@1.3.14) (2022-11-18) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.13](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.13-staging.4...@clerk/remix@1.3.13) (2022-11-15) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.12](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.12-staging.1...@clerk/remix@1.3.12) (2022-11-10) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.11](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.11-staging.2...@clerk/remix@1.3.11) (2022-11-05) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.10](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.10-staging.7...@clerk/remix@1.3.10) (2022-11-03) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.10-staging.4](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.10-staging.3...@clerk/remix@1.3.10-staging.4) (2022-11-02) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.10-staging.3](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.10-staging.1...@clerk/remix@1.3.10-staging.3) (2022-11-02) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.10-staging.2](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.10-staging.1...@clerk/remix@1.3.10-staging.2) (2022-11-02) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.10-staging.1](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.9...@clerk/remix@1.3.10-staging.1) (2022-11-02) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.9](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.9-staging.0...@clerk/remix@1.3.9) (2022-10-24) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.8](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.7...@clerk/remix@1.3.8) (2022-10-14) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.7](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.7-staging.2...@clerk/remix@1.3.7) (2022-10-14) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.7-staging.1](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.6...@clerk/remix@1.3.7-staging.1) (2022-10-13) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.6](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.6-staging.0...@clerk/remix@1.3.6) (2022-10-07) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.5](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.5-staging.0...@clerk/remix@1.3.5) (2022-10-05) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.4](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.4-staging.5...@clerk/remix@1.3.4) (2022-10-03) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.3](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.3-staging.4...@clerk/remix@1.3.3) (2022-09-29) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.2](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.1...@clerk/remix@1.3.2) (2022-09-25) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.1](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.1-staging.2...@clerk/remix@1.3.1) (2022-09-24) - -**Note:** Version bump only for package @clerk/remix - -### [1.3.1-staging.1](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.1-staging.0...@clerk/remix@1.3.1-staging.1) (2022-09-24) - -**Note:** Version bump only for package @clerk/remix - -## [1.3.0](https://github.com/clerk/javascript/compare/@clerk/remix@1.3.0-staging.0...@clerk/remix@1.3.0) (2022-09-22) - -**Note:** Version bump only for package @clerk/remix - -### [1.2.1](https://github.com/clerk/javascript/compare/@clerk/remix@1.2.0-staging.4...@clerk/remix@1.2.1) (2022-09-19) - -**Note:** Version bump only for package @clerk/remix - -## [1.2.0](https://github.com/clerk/javascript/compare/@clerk/remix@1.2.0-staging.4...@clerk/remix@1.2.0) (2022-09-16) - -**Note:** Version bump only for package @clerk/remix - -### [1.1.7](https://github.com/clerk/javascript/compare/@clerk/remix@1.1.6...@clerk/remix@1.1.7) (2022-09-08) - -**Note:** Version bump only for package @clerk/remix - -### [1.1.6](https://github.com/clerk/javascript/compare/@clerk/remix@1.1.6-staging.0...@clerk/remix@1.1.6) (2022-09-07) - -**Note:** Version bump only for package @clerk/remix - -### [1.1.5](https://github.com/clerk/javascript/compare/@clerk/remix@1.1.5-staging.0...@clerk/remix@1.1.5) (2022-09-07) - -**Note:** Version bump only for package @clerk/remix - -### [1.1.4](https://github.com/clerk/javascript/compare/@clerk/remix@1.1.3...@clerk/remix@1.1.4) (2022-09-05) - -**Note:** Version bump only for package @clerk/remix - -### [1.1.3](https://github.com/clerk/javascript/compare/@clerk/remix@1.1.3-staging.0...@clerk/remix@1.1.3) (2022-08-29) - -**Note:** Version bump only for package @clerk/remix - -### [1.1.2](https://github.com/clerk/javascript/compare/@clerk/remix@1.1.2-staging.3...@clerk/remix@1.1.2) (2022-08-29) - -**Note:** Version bump only for package @clerk/remix - -### [1.1.1](https://github.com/clerk/javascript/compare/@clerk/remix@1.1.1-staging.0...@clerk/remix@1.1.1) (2022-08-24) - -**Note:** Version bump only for package @clerk/remix - -## [1.1.0](https://github.com/clerk/javascript/compare/@clerk/remix@1.0.5...@clerk/remix@1.1.0) (2022-08-18) - -**Note:** Version bump only for package @clerk/remix - -### [1.0.5](https://github.com/clerk/javascript/compare/@clerk/remix@1.0.4...@clerk/remix@1.0.5) (2022-08-18) - -**Note:** Version bump only for package @clerk/remix - -### [1.0.4](https://github.com/clerk/javascript/compare/@clerk/remix@1.0.4-staging.0...@clerk/remix@1.0.4) (2022-08-18) - -**Note:** Version bump only for package @clerk/remix - -### [1.0.3](https://github.com/clerk/javascript/compare/@clerk/remix@1.0.2...@clerk/remix@1.0.3) (2022-08-16) - -**Note:** Version bump only for package @clerk/remix - -### [1.0.2](https://github.com/clerk/javascript/compare/@clerk/remix@1.0.2-staging.0...@clerk/remix@1.0.2) (2022-08-09) - -**Note:** Version bump only for package @clerk/remix - -### [1.0.1](https://github.com/clerk/javascript/compare/@clerk/remix@1.0.0...@clerk/remix@1.0.1) (2022-08-07) - -**Note:** Version bump only for package @clerk/remix - -## [1.0.0](https://github.com/clerk/javascript/compare/@clerk/remix@1.0.0-staging.1...@clerk/remix@1.0.0) (2022-08-05) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.14](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.13...@clerk/remix@0.5.14) (2022-08-05) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.13](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.12...@clerk/remix@0.5.13) (2022-08-04) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.12](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.12-staging.0...@clerk/remix@0.5.12) (2022-07-26) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.11](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.10...@clerk/remix@0.5.11) (2022-07-13) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.10](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.10-staging.0...@clerk/remix@0.5.10) (2022-07-11) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.9](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.8...@clerk/remix@0.5.9) (2022-07-08) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.8](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.7...@clerk/remix@0.5.8) (2022-07-07) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.7](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.6...@clerk/remix@0.5.7) (2022-07-06) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.6](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.5...@clerk/remix@0.5.6) (2022-07-04) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.5](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.4...@clerk/remix@0.5.5) (2022-07-01) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.4](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.3...@clerk/remix@0.5.4) (2022-07-01) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.3](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.2...@clerk/remix@0.5.3) (2022-06-24) - -### Bug Fixes - -- **edge,nextjs,remix,clerk-sdk-node,types:** Correct SSR claims typing ([09c147c](https://github.com/clerk/javascript/commit/09c147c196c08e64794423f9eae791bfe453b858)) - -### [0.5.2](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.2-staging.0...@clerk/remix@0.5.2) (2022-06-16) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.1](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.1-staging.4...@clerk/remix@0.5.1) (2022-06-06) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.1-staging.4](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.1-staging.3...@clerk/remix@0.5.1-staging.4) (2022-06-03) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.1-staging.3](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.1-staging.2...@clerk/remix@0.5.1-staging.3) (2022-06-03) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.1-staging.2](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.1-staging.1...@clerk/remix@0.5.1-staging.2) (2022-06-02) - -**Note:** Version bump only for package @clerk/remix - -### [0.5.1-staging.1](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.1-staging.0...@clerk/remix@0.5.1-staging.1) (2022-06-01) - -**Note:** Version bump only for package @clerk/remix - -## [0.5.0](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.0-staging.2...@clerk/remix@0.5.0) (2022-05-20) - -**Note:** Version bump only for package @clerk/remix - -## [0.5.0-staging.2](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.0-staging.1...@clerk/remix@0.5.0-staging.2) (2022-05-20) - -**Note:** Version bump only for package @clerk/remix - -## [0.5.0-staging.1](https://github.com/clerk/javascript/compare/@clerk/remix@0.5.0-staging.0...@clerk/remix@0.5.0-staging.1) (2022-05-19) - -**Note:** Version bump only for package @clerk/remix - -## [0.5.0-staging.0](https://github.com/clerk/javascript/compare/@clerk/remix@0.4.4...@clerk/remix@0.5.0-staging.0) (2022-05-18) - -### Features - -- **remix:** Add cross origin anonymous to interstitial ([#246](https://github.com/clerk/javascript/issues/246)) ([acd7160](https://github.com/clerk/javascript/commit/acd7160a7b209fb65243fecb33b848345876585c)) - -### [0.4.5-staging.1](https://github.com/clerk/javascript/compare/@clerk/remix@0.4.4...@clerk/remix@0.4.5-staging.1) (2022-05-17) - -**Note:** Version bump only for package @clerk/remix - -### [0.4.5-staging.0](https://github.com/clerk/javascript/compare/@clerk/remix@0.4.4...@clerk/remix@0.4.5-staging.0) (2022-05-16) - -**Note:** Version bump only for package @clerk/remix - -### [0.4.4](https://github.com/clerk/javascript/compare/@clerk/remix@0.4.1...@clerk/remix@0.4.4) (2022-05-13) - -**Note:** Version bump only for package @clerk/remix - -### [0.4.3](https://github.com/clerk/javascript/compare/@clerk/remix@0.4.1...@clerk/remix@0.4.3) (2022-05-12) - -**Note:** Version bump only for package @clerk/remix - -### [0.4.2](https://github.com/clerk/javascript/compare/@clerk/remix@0.4.1...@clerk/remix@0.4.2) (2022-05-12) - -**Note:** Version bump only for package @clerk/remix - -### [0.4.1](https://github.com/clerk/javascript/compare/@clerk/remix@0.4.1-staging.0...@clerk/remix@0.4.1) (2022-05-11) - -**Note:** Version bump only for package @clerk/remix - -## [0.4.0](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.16...@clerk/remix@0.4.0) (2022-05-06) - -### Features - -- **nextjs,clerk-sdk-node,remix:** Add claims attribute to req.auth ([c695529](https://github.com/clerk/javascript/commit/c695529089f55baef72b86e3b73b8cd9f4f58e6d)) - -### [0.3.17-staging.0](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.16...@clerk/remix@0.3.17-staging.0) (2022-05-05) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.16](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.16-staging.0...@clerk/remix@0.3.16) (2022-05-05) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.15](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.15-staging.0...@clerk/remix@0.3.15) (2022-04-28) - -### Bug Fixes - -- **remix:** Update interstitial logic ([2f4a8ba](https://github.com/clerk/javascript/commit/2f4a8babd9e83d3e1dc4c2a75ce1bdc8c3600f6a)) - -### [0.3.14](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.13...@clerk/remix@0.3.14) (2022-04-27) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.13](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.12...@clerk/remix@0.3.13) (2022-04-27) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.12](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.11...@clerk/remix@0.3.12) (2022-04-22) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.11](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.11-staging.1...@clerk/remix@0.3.11) (2022-04-19) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.11-staging.1](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.11-staging.0...@clerk/remix@0.3.11-staging.1) (2022-04-19) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.10](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.10-alpha.0...@clerk/remix@0.3.10) (2022-04-18) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.10-alpha.0](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.9...@clerk/remix@0.3.10-alpha.0) (2022-04-15) - -### Features - -- **gatsby-plugin-clerk:** Introduce basic structure ([a1c215b](https://github.com/clerk/javascript/commit/a1c215bba609107233e1596315136d77c491a74e)) - -### [0.3.9](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.8...@clerk/remix@0.3.9) (2022-04-15) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.8](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.8-staging.1...@clerk/remix@0.3.8) (2022-04-15) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.7](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.7-staging.0...@clerk/remix@0.3.7) (2022-04-13) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.6](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.5...@clerk/remix@0.3.6) (2022-04-07) - -### Bug Fixes - -- **remix:** Change status for interstitial responses to 401 ([d6de232](https://github.com/clerk/javascript/commit/d6de232cc1441c69f240e7fea2f2d59b6fc4f8e6)) - -### [0.3.5](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.5-staging.0...@clerk/remix@0.3.5) (2022-04-04) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.4](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.4-staging.0...@clerk/remix@0.3.4) (2022-03-29) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.3](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.3-staging.0...@clerk/remix@0.3.3) (2022-03-28) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.2](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.2-alpha.0...@clerk/remix@0.3.2) (2022-03-24) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.2-staging.1](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.2-staging.0...@clerk/remix@0.3.2-staging.1) (2022-03-24) - -**Note:** Version bump only for package @clerk/remix - -### [0.3.1-alpha.0](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.1-staging.0...@clerk/remix@0.3.1-alpha.0) (2022-03-23) - -**Note:** Version bump only for package @clerk/remix - -## [0.3.0-alpha.2](https://github.com/clerk/javascript/compare/@clerk/remix@0.3.0-alpha.1...@clerk/remix@0.3.0-alpha.2) (2022-03-23) - -**Note:** Version bump only for package @clerk/remix - -## [0.3.0-alpha.1](https://github.com/clerk/javascript/compare/@clerk/remix@0.2.0-alpha.1...@clerk/remix@0.3.0-alpha.1) (2022-03-23) - -### Features - -- **backend-core,clerk-sdk-node,nextjs,remix:** Add injected jwtKey option ([53e56e7](https://github.com/clerk/javascript/commit/53e56e76d59984d4d3f5b7e1e2d276adb8b2dc77)) - -## [0.3.0-alpha.0](https://github.com/clerk/javascript/compare/@clerk/remix@0.2.0-alpha.1...@clerk/remix@0.3.0-alpha.0) (2022-03-22) - -**Note:** Version bump only for package @clerk/remix - -## [0.2.0-alpha.1](https://github.com/clerk/javascript/compare/@clerk/remix@0.2.0-alpha.0...@clerk/remix@0.2.0-alpha.1) (2022-03-22) - -**Note:** Version bump only for package @clerk/remix - -## [0.2.0-alpha.0](https://github.com/clerk/javascript/compare/@clerk/remix@0.1.1-staging.0...@clerk/remix@0.2.0-alpha.0) (2022-03-22) - -### Features - -- **nextjs,remix:** Refactor remix and nextjs getAuthData to use common utils ([d5f5dba](https://github.com/clerk/javascript/commit/d5f5dbace577ae617636841ce51e7cccd5d25b95)) - -### Bug Fixes - -- **nextjs,remix:** Make server getToken throw if called with no session ([f7736c1](https://github.com/clerk/javascript/commit/f7736c1f4730d713f3fbcedd73e2ef5a1ceee605)) - -### [0.1.1-alpha.1](https://github.com/clerk/javascript/compare/@clerk/remix@0.1.1-staging.0...@clerk/remix@0.1.1-alpha.1) (2022-03-20) - -### Features - -- **nextjs,remix:** Refactor remix and nextjs getAuthData to use common utils ([d5f5dba](https://github.com/clerk/javascript/commit/d5f5dbace577ae617636841ce51e7cccd5d25b95)) - -### Bug Fixes - -- **nextjs,remix:** Make server getToken throw if called with no session ([f7736c1](https://github.com/clerk/javascript/commit/f7736c1f4730d713f3fbcedd73e2ef5a1ceee605)) - -### [0.1.1-alpha.0](https://github.com/clerk/javascript/compare/@clerk/remix@0.1.1-staging.0...@clerk/remix@0.1.1-alpha.0) (2022-03-19) - -### Bug Fixes - -- **nextjs,remix:** Make server getToken throw if called with no session ([f7736c1](https://github.com/clerk/javascript/commit/f7736c1f4730d713f3fbcedd73e2ef5a1ceee605)) - -## [0.1.0-alpha.6](https://github.com/clerk/javascript/compare/@clerk/remix@0.1.0-alpha.5...@clerk/remix@0.1.0-alpha.6) (2022-03-11) - -### Features - -- **remix:** Better server error handling ([#95](https://github.com/clerk/javascript/issues/95)) ([4046b29](https://github.com/clerk/javascript/commit/4046b291bb93d0f7471138c067cce8cf84cac265)) -- **remix:** Build interstitial locally instead of fetching ([2dd5bb3](https://github.com/clerk/javascript/commit/2dd5bb35d532ce6c0d9f19d66d68672e748d4ed8)) -- **remix:** Pass frontendApi from rootAuthLoader ([46a6c47](https://github.com/clerk/javascript/commit/46a6c47e0a977219c403327416e6f885ce7cfa4e)) -- **remix:** Throw the insterstitial from ConnectClerkCatchBoundary ([7b07bf0](https://github.com/clerk/javascript/commit/7b07bf02c6d9cad695e184a473ba507271f61fc3)) - -### Reverts - -- Revert "Revert "fix(remix): Make `getAuth` stop loader execution during interstitial"" ([a0935f3](https://github.com/clerk/javascript/commit/a0935f355ff403b10a7f9d3e76957ff39f98f779)) - -## [0.1.0-alpha.5](https://github.com/clerk/javascript/compare/@clerk/remix@0.1.0-alpha.4...@clerk/remix@0.1.0-alpha.5) (2022-02-28) - -### Reverts - -- Revert "fix(remix): Make `getAuth` stop loader execution during interstitial" ([93d3c9b](https://github.com/clerk/javascript/commit/93d3c9b13ff225b066fae47f7c15735aef750036)) - -## 0.1.0-alpha.4 (2022-02-28) - -### Features - -- **clerk-remix:** Introduce basic clerk-remix structure ([f1ba9bd](https://github.com/clerk/javascript/commit/f1ba9bd02c5f107ff9993b120954cc62886d9c04)) -- **clerk-remix:** Introduce ClerkProvider for Remix ([edb0cee](https://github.com/clerk/javascript/commit/edb0cee6a5eb5124e0fb3a08d8554c6da9b69899)) -- **clerk-remix:** Introduce global polyfill ([5236bed](https://github.com/clerk/javascript/commit/5236bedd39e3d2fccd9466ac4dae715131293e4d)) -- **clerk-remix:** Introduce SSR getAuth for Remix ([bae06b8](https://github.com/clerk/javascript/commit/bae06b8846dfafe3b57036efc457435799bfa677)) -- **clerk-remix:** Introduce SSR rootAuthLoader for Remix ([23a10c7](https://github.com/clerk/javascript/commit/23a10c75c7590660aea7e8b261b0856affd8d01f)) -- **clerk-remix:** Remove load options from `getAuth` ([246fe76](https://github.com/clerk/javascript/commit/246fe76943aedc07bed8510761a286ef324049ec)) -- **clerk-remix:** Rename InferLoaderData to InferRootLoaderData ([e9eb81c](https://github.com/clerk/javascript/commit/e9eb81c092999614c1325bc2f196bcbf79f8360c)) -- **remix:** Depend on @remix-run/runtime only ([c5c53cd](https://github.com/clerk/javascript/commit/c5c53cd2202924a183b2ba77ef136e2aabab32c1)) -- **remix:** Introduce `ConnectClerk` HOC ([3f020ca](https://github.com/clerk/javascript/commit/3f020ca8f41632a24a7dd56caef3872a7b56c054)) -- **remix:** Make `rootAuthLoader` require a Response or object return value ([bf53db5](https://github.com/clerk/javascript/commit/bf53db5243542e44db39b6422e3f2ffd6765cd79)) -- **remix:** Move Remix dependencies to `peerDependencies` ([0ee115d](https://github.com/clerk/javascript/commit/0ee115db783f2ce10db196fdf5d9933481e7872e)) - -### Bug Fixes - -- **remix:** Allow no return from `rootAuthLoader` callback ([4768aa6](https://github.com/clerk/javascript/commit/4768aa6bcf19e3a6d1a6d86a26f89b7351927673)) -- **remix:** Make `clerkState` required ([677a255](https://github.com/clerk/javascript/commit/677a2556846845e52839b5324a6031edc98dc093)) -- **remix:** Make `getAuth` stop loader execution during interstitial ([16a1be3](https://github.com/clerk/javascript/commit/16a1be34cce5c8a5027d957669e0176540e58d3a)) -- **remix:** Make `rootAuthLoader` only throw if a callback exists ([2689f6c](https://github.com/clerk/javascript/commit/2689f6ce858cd08365a37678d817e60e889e1acb)) - -## [0.1.0-alpha.3](https://github.com/clerk/javascript/compare/@clerk/remix@0.1.0-alpha.2...@clerk/remix@0.1.0-alpha.3) (2022-02-25) - -### Bug Fixes - -- **remix:** Make `rootAuthLoader` only throw if a callback exists ([cec342f](https://github.com/clerk/javascript/commit/cec342f36d09d7f829589e145e7f4be60aea5d13)) - -## 0.1.0-alpha.2 (2022-02-25) - -### Features - -- **clerk-remix:** Introduce basic clerk-remix structure ([f4f8e06](https://github.com/clerk/javascript/commit/f4f8e06385acb8fb5f142808309a95586660d76e)) -- **clerk-remix:** Introduce ClerkProvider for Remix ([d63e4bf](https://github.com/clerk/javascript/commit/d63e4bff960729977997d7cc0011ad90ea794225)) -- **clerk-remix:** Introduce global polyfill ([c3df5af](https://github.com/clerk/javascript/commit/c3df5afe5998a4872d7a617a18161c98e6753483)) -- **clerk-remix:** Introduce SSR getAuth for Remix ([8ee0eaf](https://github.com/clerk/javascript/commit/8ee0eafc8409d1a947daab3c677331fbded24dba)) -- **clerk-remix:** Introduce SSR rootAuthLoader for Remix ([693f79b](https://github.com/clerk/javascript/commit/693f79beda21108f1f1a67dd612c1eca6506d788)) -- **clerk-remix:** Remove load options from `getAuth` ([5c1e23d](https://github.com/clerk/javascript/commit/5c1e23db40b7a49b7cec5a1d8206daad160e6361)) -- **clerk-remix:** Rename InferLoaderData to InferRootLoaderData ([d753291](https://github.com/clerk/javascript/commit/d753291f5f61222dc189fded7341cfcce04de20c)) -- **remix:** Depend on @remix-run/runtime only ([c5d4c45](https://github.com/clerk/javascript/commit/c5d4c4535f8ff7f2a89ec0cf5e1e941ed40b2238)) -- **remix:** Introduce `ConnectClerk` HOC ([ea99273](https://github.com/clerk/javascript/commit/ea9927366d9591b2aa4a86b94eb2b1e05b505f6c)) -- **remix:** Make `rootAuthLoader` require a Response or object return value ([2aab7db](https://github.com/clerk/javascript/commit/2aab7dbcf97facfddc42e1694c859fbae76b95db)) -- **remix:** Move Remix dependencies to `peerDependencies` ([1ce0ce3](https://github.com/clerk/javascript/commit/1ce0ce38f13bf8b0c4255f97507b42cf8e793fde)) - -### Bug Fixes - -- **remix:** Allow no return from `rootAuthLoader` callback ([5e708fd](https://github.com/clerk/javascript/commit/5e708fd798181fd0c3f917cc9f431d97d682b3c6)) -- **remix:** Make `clerkState` required ([22d2aff](https://github.com/clerk/javascript/commit/22d2affd2801f9623257b905aa0687e7ef43ff59)) - -## [0.1.0-alpha.1](https://github.com/clerk/javascript/compare/@clerk/remix@0.1.0-alpha.0...@clerk/remix@0.1.0-alpha.1) (2022-02-18) - -### Bug Fixes - -- **remix:** Allow no return from `rootAuthLoader` callback ([55f14e0](https://github.com/clerk/javascript/commit/55f14e0706eb45b8e6808e7f33d7b430cf3d2afd)) -- **remix:** Make `clerkState` required ([df88977](https://github.com/clerk/javascript/commit/df88977531b12d15f245ff2cbc8ce360e4d52b91)) - -## 0.1.0-alpha.0 (2022-02-18) - -### Features - -- **clerk-remix:** Introduce basic clerk-remix structure ([ef91121](https://github.com/clerk/javascript/commit/ef9112144b47714a5a380bcccab9961f91ec17c9)) -- **clerk-remix:** Introduce ClerkProvider for Remix ([07abb99](https://github.com/clerk/javascript/commit/07abb99111a884e2e22f55a5101292595c066507)) -- **clerk-remix:** Introduce global polyfill ([78435ca](https://github.com/clerk/javascript/commit/78435ca008a32aa1c2546bc333a5e28e3d5079df)) -- **clerk-remix:** Introduce SSR getAuth for Remix ([e9ca753](https://github.com/clerk/javascript/commit/e9ca7534e2df55e5d1928d4a1f3a53eca3397252)) -- **clerk-remix:** Introduce SSR rootAuthLoader for Remix ([c7a61aa](https://github.com/clerk/javascript/commit/c7a61aab89dad2a1c0cde0d658ce4a50f0eb3cd4)) -- **clerk-remix:** Remove load options from `getAuth` ([5f4cedc](https://github.com/clerk/javascript/commit/5f4cedc70db8398eb196ca769db41ebadb15ab12)) -- **clerk-remix:** Rename InferLoaderData to InferRootLoaderData ([aa0c720](https://github.com/clerk/javascript/commit/aa0c7208bf8490f24b5b10527c4bb88cf07b79fc)) -- **remix:** Depend on @remix-run/runtime only ([7c014f4](https://github.com/clerk/javascript/commit/7c014f4327ce46cc7e74a0f637dd7b100baa672b)) diff --git a/packages/remix/LICENSE b/packages/remix/LICENSE deleted file mode 100644 index 66914b6af7c..00000000000 --- a/packages/remix/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2022 Clerk, Inc. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/packages/remix/README.md b/packages/remix/README.md deleted file mode 100644 index 5d2c44d8a8d..00000000000 --- a/packages/remix/README.md +++ /dev/null @@ -1,74 +0,0 @@ -

- - - - - - -
-

@clerk/remix

-

- -
- -[![Chat on Discord](https://img.shields.io/discord/856971667393609759.svg?logo=discord)](https://clerk.com/discord) -[![Clerk documentation](https://img.shields.io/badge/documentation-clerk-green.svg)](https://clerk.com/docs?utm_source=github&utm_medium=clerk_remix) -[![Follow on Twitter](https://img.shields.io/twitter/follow/ClerkDev?style=social)](https://twitter.com/intent/follow?screen_name=ClerkDev) - -[Changelog](https://github.com/clerk/javascript/blob/main/packages/remix/CHANGELOG.md) -· -[Report a Bug](https://github.com/clerk/javascript/issues/new?assignees=&labels=needs-triage&projects=&template=BUG_REPORT.yml) -· -[Request a Feature](https://feedback.clerk.com/roadmap) -· -[Get help](https://clerk.com/contact/support?utm_source=github&utm_medium=clerk_remix) - -
- -> [!IMPORTANT] If you're starting a new project with React Router v7 or are in the process of upgrading a Remix v2 application, please use the [`@clerk/react-router`](https://clerk.com/docs/references/react-router/overview) SDK. `@clerk/remix` is only compatible with Remix v2. - -## Getting Started - -[Clerk](https://clerk.com/?utm_source=github&utm_medium=clerk_remix) is the easiest way to add authentication and user management to your Remix application. Add sign up, sign in, and profile management to your application in minutes. - -### Prerequisites - -- Remix `^2.0.0` -- React 18 or later -- Node.js `>=18.17.0` or later -- An existing Clerk application. [Create your account for free](https://dashboard.clerk.com/sign-up?utm_source=github&utm_medium=clerk_remix). - -### Installation - -The fastest way to get started with Clerk is by following the [Remix Quickstart](https://clerk.com/docs/quickstarts/remix?utm_source=github&utm_medium=clerk_remix). - -You'll learn how to install `@clerk/remix`, set up your environment keys, configure `rootAuthLoader` & `ClerkApp`, and protect your pages. - -## Usage - -For further information, guides, and examples visit the [Remix reference documentation](https://clerk.com/docs/references/remix/clerk-app?utm_source=github&utm_medium=clerk_remix). - -## Support - -You can get in touch with us in any of the following ways: - -- Join our official community [Discord server](https://clerk.com/discord) -- On [our support page](https://clerk.com/contact/support?utm_source=github&utm_medium=clerk_remix) - -## Contributing - -We're open to all community contributions! If you'd like to contribute in any way, please read [our contribution guidelines](https://github.com/clerk/javascript/blob/main/docs/CONTRIBUTING.md) and [code of conduct](https://github.com/clerk/javascript/blob/main/docs/CODE_OF_CONDUCT.md). - -## Security - -`@clerk/remix` follows good practices of security, but 100% security cannot be assured. - -`@clerk/remix` is provided **"as is"** without any **warranty**. Use at your own risk. - -_For more information and to report security issues, please refer to our [security documentation](https://github.com/clerk/javascript/blob/main/docs/SECURITY.md)._ - -## License - -This project is licensed under the **MIT license**. - -See [LICENSE](https://github.com/clerk/javascript/blob/main/packages/remix/LICENSE) for more information. diff --git a/packages/remix/api.server/package.json b/packages/remix/api.server/package.json deleted file mode 100644 index f0b128f2ee4..00000000000 --- a/packages/remix/api.server/package.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "main": "../dist/api/index.js", - "types": "../dist/api/index.d.ts" -} diff --git a/packages/remix/errors/package.json b/packages/remix/errors/package.json deleted file mode 100644 index 30a0e4b152e..00000000000 --- a/packages/remix/errors/package.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "main": "../dist/errors.js", - "types": "../dist/errors.d.ts" -} diff --git a/packages/remix/package.json b/packages/remix/package.json deleted file mode 100644 index eea50d3bf16..00000000000 --- a/packages/remix/package.json +++ /dev/null @@ -1,104 +0,0 @@ -{ - "name": "@clerk/remix", - "version": "4.13.3", - "description": "Clerk SDK for Remix", - "keywords": [ - "clerk", - "typescript", - "remix", - "auth", - "authentication", - "passwordless", - "session", - "jwt" - ], - "homepage": "https://clerk.com/", - "bugs": { - "url": "https://github.com/clerk/javascript/issues" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/clerk/javascript.git", - "directory": "packages/remix" - }, - "license": "MIT", - "author": "Clerk", - "sideEffects": false, - "exports": { - ".": { - "types": "./dist/index.d.ts", - "default": "./dist/index.js" - }, - "./ssr.server": { - "types": "./dist/ssr/index.d.ts", - "default": "./dist/ssr/index.js" - }, - "./api.server": { - "types": "./dist/api/index.d.ts", - "default": "./dist/api/index.js" - }, - "./errors": { - "types": "./dist/errors.d.ts", - "default": "./dist/errors.js" - } - }, - "main": "dist/index.js", - "types": "dist/index.d.ts", - "typesVersions": { - "*": { - "*": [ - "dist/*.d.ts", - "dist/index.d.ts" - ], - "ssr.server": [ - "dist/ssr/index.d.ts" - ], - "api.server": [ - "dist/api/index.d.ts" - ] - } - }, - "files": [ - "dist" - ], - "scripts": { - "build": "tsup", - "build:declarations": "tsc -p tsconfig.declarations.json", - "clean": "rimraf ./dist", - "dev": "tsup --watch", - "dev:publish": "pnpm dev -- --env.publish", - "format": "node ../../scripts/format-package.mjs", - "format:check": "node ../../scripts/format-package.mjs --check", - "lint": "eslint src", - "lint:attw": "attw --pack . --profile node16", - "lint:publint": "publint", - "publish:local": "pnpm yalc push --replace --sig", - "test": "vitest run", - "test:watch": "vitest watch" - }, - "dependencies": { - "@clerk/backend": "workspace:^", - "@clerk/react": "workspace:^", - "@clerk/shared": "workspace:^", - "@clerk/types": "workspace:^", - "cookie": "1.0.2", - "tslib": "catalog:repo" - }, - "devDependencies": { - "@remix-run/react": "^2.17.1", - "@remix-run/server-runtime": "^2.17.1" - }, - "peerDependencies": { - "@remix-run/react": "^2.0.0", - "@remix-run/server-runtime": "^2.0.0", - "react": "catalog:peer-react", - "react-dom": "catalog:peer-react", - "react-router": "^6.0.0" - }, - "engines": { - "node": ">=18.17.0" - }, - "publishConfig": { - "access": "public" - } -} diff --git a/packages/remix/src/__tests__/__snapshots__/exports.test.ts.snap b/packages/remix/src/__tests__/__snapshots__/exports.test.ts.snap deleted file mode 100644 index 7be84469806..00000000000 --- a/packages/remix/src/__tests__/__snapshots__/exports.test.ts.snap +++ /dev/null @@ -1,64 +0,0 @@ -// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html - -exports[`root public exports > should not change unexpectedly 1`] = ` -[ - "APIKeys", - "AuthenticateWithRedirectCallback", - "ClerkApp", - "ClerkDegraded", - "ClerkFailed", - "ClerkLoaded", - "ClerkLoading", - "ClerkProvider", - "CreateOrganization", - "GoogleOneTap", - "OrganizationList", - "OrganizationProfile", - "OrganizationSwitcher", - "PricingTable", - "Protect", - "RedirectToCreateOrganization", - "RedirectToOrganizationProfile", - "RedirectToSignIn", - "RedirectToSignUp", - "RedirectToTasks", - "RedirectToUserProfile", - "SignIn", - "SignInButton", - "SignInWithMetamaskButton", - "SignOutButton", - "SignUp", - "SignUpButton", - "SignedIn", - "SignedOut", - "TaskChooseOrganization", - "UserAvatar", - "UserButton", - "UserProfile", - "Waitlist", - "WithClerkState", - "__experimental_CheckoutProvider", - "__experimental_PaymentElement", - "__experimental_PaymentElementProvider", - "__experimental_useCheckout", - "__experimental_usePaymentElement", - "useAuth", - "useClerk", - "useEmailLink", - "useOrganization", - "useOrganizationList", - "useReverification", - "useSession", - "useSessionList", - "useSignIn", - "useSignUp", - "useUser", -] -`; - -exports[`ssr public exports > should not change unexpectedly 1`] = ` -[ - "getAuth", - "rootAuthLoader", -] -`; diff --git a/packages/remix/src/__tests__/exports.test.ts b/packages/remix/src/__tests__/exports.test.ts deleted file mode 100644 index 4bba4ec2277..00000000000 --- a/packages/remix/src/__tests__/exports.test.ts +++ /dev/null @@ -1,14 +0,0 @@ -import * as publicExports from '../index'; -import * as ssrExports from '../ssr/index'; - -describe('root public exports', () => { - it('should not change unexpectedly', () => { - expect(Object.keys(publicExports).sort()).toMatchSnapshot(); - }); -}); - -describe('ssr public exports', () => { - it('should not change unexpectedly', () => { - expect(Object.keys(ssrExports).sort()).toMatchSnapshot(); - }); -}); diff --git a/packages/remix/src/api/index.ts b/packages/remix/src/api/index.ts deleted file mode 100644 index f5ce35a683b..00000000000 --- a/packages/remix/src/api/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from '@clerk/backend'; diff --git a/packages/remix/src/client/ClerkApp.tsx b/packages/remix/src/client/ClerkApp.tsx deleted file mode 100644 index a0a397df8b1..00000000000 --- a/packages/remix/src/client/ClerkApp.tsx +++ /dev/null @@ -1,38 +0,0 @@ -import { useLoaderData } from '@remix-run/react'; -import React from 'react'; - -import { assertPublishableKeyInSpaMode, inSpaMode } from '../utils'; -import { ClerkProvider } from './RemixClerkProvider'; -import type { RemixClerkProviderProps } from './types'; - -type ClerkAppOptions = Partial< - Omit ->; - -export function ClerkApp(App: () => JSX.Element, opts: ClerkAppOptions = {}) { - return () => { - let clerkState; - const isSpaMode = inSpaMode(); - - // Don't use `useLoaderData` to fetch the clerk state if we're in SPA mode - if (!isSpaMode) { - const loaderData = useLoaderData<{ clerkState: any }>(); - clerkState = loaderData.clerkState; - } - - if (isSpaMode) { - assertPublishableKeyInSpaMode(opts.publishableKey); - } - - return ( - - - - ); - }; -} diff --git a/packages/remix/src/client/RemixClerkProvider.tsx b/packages/remix/src/client/RemixClerkProvider.tsx deleted file mode 100644 index 1632b7cd162..00000000000 --- a/packages/remix/src/client/RemixClerkProvider.tsx +++ /dev/null @@ -1,119 +0,0 @@ -import { ClerkProvider as ReactClerkProvider } from '@clerk/react'; -import React from 'react'; - -import { assertValidClerkState, inSpaMode, warnForSsr } from '../utils'; -import { ClerkRemixOptionsProvider } from './RemixOptionsContext'; -import type { ClerkState, RemixClerkProviderProps } from './types'; -import { useAwaitableNavigate } from './useAwaitableNavigate'; - -export * from '@clerk/react'; - -const SDK_METADATA = { - name: PACKAGE_NAME, - version: PACKAGE_VERSION, -}; - -/** - * Remix hydration errors should not stop Clerk navigation from working, as the components mount only after - * hydration is done (in the case of a hydration error, the components will simply mount after client-side hydration) - * In the case of a hydration error, the first `navigate` function we get from the `useNavigate` hook will not work - * because the RemixClerkProvider (which is part of the host app) will unmount before the following useEffect within `navigate` fires: - * https://github.com/remix-run/react-router/blob/main/packages/react-router/lib/hooks.tsx#L175 - * so isomorphicClerk will initialize with a `navigate` function that will never have `activeRef.current` set to true. - * This variable is just an object ref/cache outside the React rendering cycle that holds a reference to the - * latest `navigate` function. After a hydration error occurs, RemixClerkProvider will *remount* and this variable - * will finally get a `navigate` function that has a `activeRef.current` to true so navigation will function as it should. - */ -const awaitableNavigateRef: { current: ReturnType | undefined } = { current: undefined }; - -/** - * Internal type that includes the initial state prop that is passed to the ClerkProvider - * during SSR. - * This is a value that we pass automatically so it does not need to pollute the public API. - */ -type ClerkProviderPropsWithState = RemixClerkProviderProps & { - clerkState: ClerkState; -}; - -export function ClerkProvider({ children, ...rest }: ClerkProviderPropsWithState): JSX.Element { - const awaitableNavigate = useAwaitableNavigate(); - const isSpaMode = inSpaMode(); - - React.useEffect(() => { - awaitableNavigateRef.current = awaitableNavigate; - }, [awaitableNavigate]); - - const { clerkState, ...restProps } = rest; - ReactClerkProvider.displayName = 'ReactClerkProvider'; - - if (!isSpaMode) { - assertValidClerkState(clerkState); - } - - const { - __clerk_ssr_state, - __publishableKey, - __proxyUrl, - __domain, - __isSatellite, - __clerk_debug, - __signInUrl, - __signUpUrl, - __afterSignInUrl, - __afterSignUpUrl, - __signInForceRedirectUrl, - __signUpForceRedirectUrl, - __signInFallbackRedirectUrl, - __signUpFallbackRedirectUrl, - __clerkJSUrl, - __clerkJSVersion, - __telemetryDisabled, - __telemetryDebug, - } = clerkState?.__internal_clerk_state || {}; - - React.useEffect(() => { - if (!isSpaMode) { - warnForSsr(clerkState); - } - }, []); - - React.useEffect(() => { - (window as any).__clerk_debug = __clerk_debug; - }, []); - - const mergedProps = { - publishableKey: __publishableKey as any, - proxyUrl: __proxyUrl as any, - domain: __domain as any, - isSatellite: __isSatellite, - signInUrl: __signInUrl, - signUpUrl: __signUpUrl, - afterSignInUrl: __afterSignInUrl, - afterSignUpUrl: __afterSignUpUrl, - signInForceRedirectUrl: __signInForceRedirectUrl, - signUpForceRedirectUrl: __signUpForceRedirectUrl, - signInFallbackRedirectUrl: __signInFallbackRedirectUrl, - signUpFallbackRedirectUrl: __signUpFallbackRedirectUrl, - clerkJSUrl: __clerkJSUrl, - clerkJSVersion: __clerkJSVersion, - telemetry: { - disabled: __telemetryDisabled, - debug: __telemetryDebug, - }, - }; - - return ( - - awaitableNavigateRef.current?.(to)} - routerReplace={(to: string) => awaitableNavigateRef.current?.(to, { replace: true })} - initialState={__clerk_ssr_state} - sdkMetadata={SDK_METADATA} - {...mergedProps} - {...restProps} - > - {children} - - - ); -} diff --git a/packages/remix/src/client/RemixOptionsContext.tsx b/packages/remix/src/client/RemixOptionsContext.tsx deleted file mode 100644 index 4e4f39b7550..00000000000 --- a/packages/remix/src/client/RemixOptionsContext.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import React from 'react'; - -import type { RemixClerkProviderProps } from './types'; - -type ClerkRemixContextValue = Partial>; - -const ClerkRemixOptionsCtx = React.createContext<{ value: ClerkRemixContextValue } | undefined>(undefined); -ClerkRemixOptionsCtx.displayName = 'ClerkRemixOptionsCtx'; - -const useClerkRemixOptions = (): ClerkRemixContextValue => { - const ctx = React.useContext(ClerkRemixOptionsCtx) as { value: ClerkRemixContextValue }; - return ctx.value; -}; - -const ClerkRemixOptionsProvider = (props: React.PropsWithChildren<{ options: ClerkRemixContextValue }>) => { - const { children, options } = props; - return {children}; -}; - -export { ClerkRemixOptionsProvider, useClerkRemixOptions }; diff --git a/packages/remix/src/client/index.ts b/packages/remix/src/client/index.ts deleted file mode 100644 index aad362cb529..00000000000 --- a/packages/remix/src/client/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from './RemixClerkProvider'; -export { ClerkApp } from './ClerkApp'; -export { WithClerkState } from './types'; -export { SignIn, SignUp, OrganizationProfile, UserProfile } from './uiComponents'; diff --git a/packages/remix/src/client/types.ts b/packages/remix/src/client/types.ts deleted file mode 100644 index 93dfd48e1d9..00000000000 --- a/packages/remix/src/client/types.ts +++ /dev/null @@ -1,49 +0,0 @@ -import type { ClerkProviderProps } from '@clerk/react'; -import type { InitialState, Without } from '@clerk/types'; -import type React from 'react'; - -export type ClerkState = { - __type: 'clerkState'; - __internal_clerk_state: { - __clerk_ssr_state: InitialState; - __publishableKey: string | undefined; - __proxyUrl: string | undefined; - __domain: string | undefined; - __isSatellite: boolean; - __signInUrl: string | undefined; - __signUpUrl: string | undefined; - __afterSignInUrl: string | undefined; - __afterSignUpUrl: string | undefined; - __signInForceRedirectUrl: string | undefined; - __signUpForceRedirectUrl: string | undefined; - __signInFallbackRedirectUrl: string | undefined; - __signUpFallbackRedirectUrl: string | undefined; - __clerk_debug: any; - __clerkJSUrl: string | undefined; - __clerkJSVersion: string | undefined; - __telemetryDisabled: boolean | undefined; - __telemetryDebug: boolean | undefined; - }; -}; - -export type WithClerkState = { - data: U; - clerkState: { __type: 'clerkState' }; -}; - -export type RemixClerkProviderProps = Without & { - /** - * Used to override the default CLERK_PUBLISHABLE_KEY env variable if needed. - * This is optional for Remix as the ClerkProvider will automatically use the CLERK_PUBLISHABLE_KEY env variable if it exists. - */ - publishableKey?: string; - children: React.ReactNode; -}; - -declare global { - interface Window { - __remixContext: { - isSpaMode?: boolean; - }; - } -} diff --git a/packages/remix/src/client/uiComponents.tsx b/packages/remix/src/client/uiComponents.tsx deleted file mode 100644 index 3ab37d2ca4a..00000000000 --- a/packages/remix/src/client/uiComponents.tsx +++ /dev/null @@ -1,45 +0,0 @@ -import { - OrganizationProfile as BaseOrganizationProfile, - SignIn as BaseSignIn, - SignUp as BaseSignUp, - UserProfile as BaseUserProfile, -} from '@clerk/react'; -import { useRoutingProps } from '@clerk/react/internal'; -import type { OrganizationProfileProps, SignInProps, SignUpProps, UserProfileProps } from '@clerk/types'; -import React from 'react'; - -import { usePathnameWithoutSplatRouteParams } from './usePathnameWithoutSplatRouteParams'; - -// The assignment of UserProfile with BaseUserProfile props is used -// to support the CustomPage functionality (eg UserProfile.Page) -// Also the `typeof BaseUserProfile` is used to resolved the following error: -// "The inferred type of 'UserProfile' cannot be named without a reference to ..." -export const UserProfile: typeof BaseUserProfile = Object.assign( - (props: UserProfileProps) => { - const path = usePathnameWithoutSplatRouteParams(); - return ; - }, - { ...BaseUserProfile }, -); - -// The assignment of OrganizationProfile with BaseOrganizationProfile props is used -// to support the CustomPage functionality (eg OrganizationProfile.Page) -// Also the `typeof BaseOrganizationProfile` is used to resolved the following error: -// "The inferred type of 'OrganizationProfile' cannot be named without a reference to ..." -export const OrganizationProfile: typeof BaseOrganizationProfile = Object.assign( - (props: OrganizationProfileProps) => { - const path = usePathnameWithoutSplatRouteParams(); - return ; - }, - { ...BaseOrganizationProfile }, -); - -export const SignIn = (props: SignInProps) => { - const path = usePathnameWithoutSplatRouteParams(); - return ; -}; - -export const SignUp = (props: SignUpProps) => { - const path = usePathnameWithoutSplatRouteParams(); - return ; -}; diff --git a/packages/remix/src/client/useAwaitableNavigate.tsx b/packages/remix/src/client/useAwaitableNavigate.tsx deleted file mode 100644 index ec82716f5d5..00000000000 --- a/packages/remix/src/client/useAwaitableNavigate.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import { useLocation, useNavigate } from '@remix-run/react'; -import React from 'react'; -import type { NavigateOptions } from 'react-router'; - -type Resolve = (value?: unknown) => void; - -export const useAwaitableNavigate = () => { - const navigate = useNavigate(); - const location = useLocation(); - const resolveFunctionsRef = React.useRef([]); - const resolveAll = () => { - resolveFunctionsRef.current.forEach(resolve => resolve()); - resolveFunctionsRef.current.splice(0, resolveFunctionsRef.current.length); - }; - - // location.key will change even when navigating to the same url, - // so we will successfully resolve in that case as well - React.useEffect(() => { - resolveAll(); - }, [location]); - - return (to: string, opts?: NavigateOptions) => { - return new Promise(res => { - resolveFunctionsRef.current.push(res); - navigate(to, opts); - }); - }; -}; diff --git a/packages/remix/src/client/usePathnameWithoutSplatRouteParams.tsx b/packages/remix/src/client/usePathnameWithoutSplatRouteParams.tsx deleted file mode 100644 index 97cb85ca4f7..00000000000 --- a/packages/remix/src/client/usePathnameWithoutSplatRouteParams.tsx +++ /dev/null @@ -1,18 +0,0 @@ -import { useLocation, useParams } from '@remix-run/react'; - -export const usePathnameWithoutSplatRouteParams = () => { - const params = useParams(); - const { pathname } = useLocation(); - - // Get the splat route params - // Remix store splat route params in an object with a key of '*' - // If there are no splat route params, we fallback to an empty string - const splatRouteParam = params['*'] || ''; - - // Remove the splat route param from the pathname - // so we end up with the pathname where the components are mounted at - // eg /user/123/profile/security will return /user/123/profile as the path - const path = pathname.replace(splatRouteParam, '').replace(/\/$/, '').replace(/^\//, '').trim(); - - return `/${path}`; -}; diff --git a/packages/remix/src/errorThrower.ts b/packages/remix/src/errorThrower.ts deleted file mode 100644 index 339b52dc6e3..00000000000 --- a/packages/remix/src/errorThrower.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { buildErrorThrower } from '@clerk/shared/error'; - -const errorThrower = buildErrorThrower({ packageName: PACKAGE_NAME }); - -export { errorThrower }; diff --git a/packages/remix/src/errors.ts b/packages/remix/src/errors.ts deleted file mode 100644 index ab2d95ccdcc..00000000000 --- a/packages/remix/src/errors.ts +++ /dev/null @@ -1,9 +0,0 @@ -export { - isClerkAPIResponseError, - isEmailLinkError, - isKnownError, - isMetamaskError, - isReverificationCancelledError, - EmailLinkErrorCode, - EmailLinkErrorCodeStatus, -} from '@clerk/react/errors'; diff --git a/packages/remix/src/global.d.ts b/packages/remix/src/global.d.ts deleted file mode 100644 index b07387ba7cd..00000000000 --- a/packages/remix/src/global.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -declare const PACKAGE_NAME: string; -declare const PACKAGE_VERSION: string; diff --git a/packages/remix/src/globalPolyfill.ts b/packages/remix/src/globalPolyfill.ts deleted file mode 100644 index b88b197abe1..00000000000 --- a/packages/remix/src/globalPolyfill.ts +++ /dev/null @@ -1,3 +0,0 @@ -if (typeof window !== 'undefined' && typeof (window as any).global === 'undefined') { - (window as any).global = window; -} diff --git a/packages/remix/src/index.ts b/packages/remix/src/index.ts deleted file mode 100644 index 4f9aebf6b5c..00000000000 --- a/packages/remix/src/index.ts +++ /dev/null @@ -1,20 +0,0 @@ -import './globalPolyfill'; - -import { logger } from '@clerk/shared/logger'; - -logger.warnOnce(` -Clerk - DEPRECATION WARNING: @clerk/remix is now in maintenance mode. - -@clerk/remix will only receive security updates. No new features will be added. - -Please migrate to @clerk/react-router for continued development and new features: - -Migration guide: https://reactrouter.com/upgrading/remix -React Router SDK: https://clerk.com/docs/quickstarts/react-router -`); - -export * from './client'; - -// Override Clerk React error thrower to show that errors come from @clerk/remix -import { setErrorThrowerOptions } from '@clerk/react/internal'; -setErrorThrowerOptions({ packageName: PACKAGE_NAME }); diff --git a/packages/remix/src/ssr/authenticateRequest.ts b/packages/remix/src/ssr/authenticateRequest.ts deleted file mode 100644 index ec585156c65..00000000000 --- a/packages/remix/src/ssr/authenticateRequest.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { createClerkClient } from '@clerk/backend'; -import type { AuthenticateRequestOptions, SignedInState, SignedOutState } from '@clerk/backend/internal'; -import { AuthStatus, constants } from '@clerk/backend/internal'; -import { handleNetlifyCacheInDevInstance } from '@clerk/shared/netlifyCacheHandler'; - -import type { LoaderFunctionArgs } from './types'; -import { patchRequest } from './utils'; - -export async function authenticateRequest( - args: LoaderFunctionArgs, - opts: Omit, -): Promise { - const { request } = args; - const { audience, authorizedParties } = opts; - - const { apiUrl, secretKey, jwtKey, proxyUrl, isSatellite, domain, publishableKey } = opts; - const { signInUrl, signUpUrl, afterSignInUrl, afterSignUpUrl } = opts; - - const requestState = await createClerkClient({ - apiUrl, - secretKey, - jwtKey, - proxyUrl, - isSatellite, - domain, - publishableKey, - userAgent: `${PACKAGE_NAME}@${PACKAGE_VERSION}`, - }).authenticateRequest(patchRequest(request), { - audience, - authorizedParties, - signInUrl, - signUpUrl, - afterSignInUrl, - afterSignUpUrl, - }); - - const locationHeader = requestState.headers.get(constants.Headers.Location); - if (locationHeader) { - handleNetlifyCacheInDevInstance({ - locationHeader, - requestStateHeaders: requestState.headers, - publishableKey: requestState.publishableKey, - }); - // triggering a handshake redirect - // eslint-disable-next-line @typescript-eslint/only-throw-error - throw new Response(null, { status: 307, headers: requestState.headers }); - } - - if (requestState.status === AuthStatus.Handshake) { - throw new Error('Clerk: unexpected handshake without redirect'); - } - - return requestState; -} diff --git a/packages/remix/src/ssr/getAuth.ts b/packages/remix/src/ssr/getAuth.ts deleted file mode 100644 index f97532fcc5e..00000000000 --- a/packages/remix/src/ssr/getAuth.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { stripPrivateDataFromObject } from '@clerk/backend/internal'; - -import { noLoaderArgsPassedInGetAuth } from '../utils/errors'; -import { authenticateRequest } from './authenticateRequest'; -import { loadOptions } from './loadOptions'; -import type { GetAuthReturn, LoaderFunctionArgs, RootAuthLoaderOptions } from './types'; - -type GetAuthOptions = Pick; - -export async function getAuth(args: LoaderFunctionArgs, opts?: GetAuthOptions): GetAuthReturn { - if (!args || (args && (!args.request || !args.context))) { - throw new Error(noLoaderArgsPassedInGetAuth); - } - - const loadedOptions = loadOptions(args, opts); - // Note: authenticateRequest() will throw a redirect if the auth state is determined to be handshake - const requestState = await authenticateRequest(args, loadedOptions); - - return stripPrivateDataFromObject(requestState.toAuth()); -} diff --git a/packages/remix/src/ssr/index.ts b/packages/remix/src/ssr/index.ts deleted file mode 100644 index fcd02aa9159..00000000000 --- a/packages/remix/src/ssr/index.ts +++ /dev/null @@ -1,30 +0,0 @@ -export * from './rootAuthLoader'; -export * from './getAuth'; - -/** - * Re-export resource types from @clerk/backend - */ -export type { - OrganizationMembershipRole, - // Webhook event types - WebhookEvent, - WebhookEventType, - // Resources - AllowlistIdentifier, - Client, - EmailAddress, - ExternalAccount, - Invitation, - OauthAccessToken, - Organization, - OrganizationDomain, - OrganizationInvitation, - OrganizationMembership, - OrganizationMembershipPublicUserData, - PhoneNumber, - Session, - SignInToken, - SMSMessage, - Token, - User, -} from '@clerk/backend'; diff --git a/packages/remix/src/ssr/loadOptions.ts b/packages/remix/src/ssr/loadOptions.ts deleted file mode 100644 index ef0dc1738d4..00000000000 --- a/packages/remix/src/ssr/loadOptions.ts +++ /dev/null @@ -1,88 +0,0 @@ -import { createClerkRequest } from '@clerk/backend/internal'; -import { apiUrlFromPublishableKey } from '@clerk/shared/apiUrlFromPublishableKey'; -import { isDevelopmentFromSecretKey } from '@clerk/shared/keys'; -import { isHttpOrHttps, isProxyUrlRelative } from '@clerk/shared/proxy'; -import { isTruthy } from '@clerk/shared/underscore'; -import { handleValueOrFn } from '@clerk/shared/utils'; - -import { noSecretKeyError, satelliteAndMissingProxyUrlAndDomain, satelliteAndMissingSignInUrl } from '../utils/errors'; -import { getEnvVariable } from '../utils/utils'; -import type { LoaderFunctionArgs, RootAuthLoaderOptions } from './types'; -import { patchRequest } from './utils'; - -export const loadOptions = (args: LoaderFunctionArgs, overrides: RootAuthLoaderOptions = {}) => { - const { request, context } = args; - const clerkRequest = createClerkRequest(patchRequest(request)); - - // Fetch environment variables across Remix runtime. - // 1. First check if the user passed the key in the getAuth function or the rootAuthLoader. - // 2. Then try from process.env if exists (Node). - // 3. Then try from globalThis (Cloudflare Workers). - // 4. Then from loader context (Cloudflare Pages). - const secretKey = overrides.secretKey || getEnvVariable('CLERK_SECRET_KEY', context) || ''; - const publishableKey = overrides.publishableKey || getEnvVariable('CLERK_PUBLISHABLE_KEY', context) || ''; - const jwtKey = overrides.jwtKey || getEnvVariable('CLERK_JWT_KEY', context); - const apiUrl = getEnvVariable('CLERK_API_URL', context) || apiUrlFromPublishableKey(publishableKey); - const domain = - handleValueOrFn(overrides.domain, new URL(request.url)) || getEnvVariable('CLERK_DOMAIN', context) || ''; - const isSatellite = - handleValueOrFn(overrides.isSatellite, new URL(request.url)) || - isTruthy(getEnvVariable('CLERK_IS_SATELLITE', context)); - const relativeOrAbsoluteProxyUrl = handleValueOrFn( - overrides?.proxyUrl, - clerkRequest.clerkUrl, - getEnvVariable('CLERK_PROXY_URL', context), - ); - const signInUrl = overrides.signInUrl || getEnvVariable('CLERK_SIGN_IN_URL', context) || ''; - const signUpUrl = overrides.signUpUrl || getEnvVariable('CLERK_SIGN_UP_URL', context) || ''; - const signInForceRedirectUrl = - overrides.signInForceRedirectUrl || getEnvVariable('CLERK_SIGN_IN_FORCE_REDIRECT_URL', context) || ''; - const signUpForceRedirectUrl = - overrides.signUpForceRedirectUrl || getEnvVariable('CLERK_SIGN_UP_FORCE_REDIRECT_URL', context) || ''; - const signInFallbackRedirectUrl = - overrides.signInFallbackRedirectUrl || getEnvVariable('CLERK_SIGN_IN_FALLBACK_REDIRECT_URL', context) || ''; - const signUpFallbackRedirectUrl = - overrides.signUpFallbackRedirectUrl || getEnvVariable('CLERK_SIGN_UP_FALLBACK_REDIRECT_URL', context) || ''; - const afterSignInUrl = overrides.afterSignInUrl || getEnvVariable('CLERK_AFTER_SIGN_IN_URL', context) || ''; - const afterSignUpUrl = overrides.afterSignUpUrl || getEnvVariable('CLERK_AFTER_SIGN_UP_URL', context) || ''; - const newSubscriptionRedirectUrl = - overrides.newSubscriptionRedirectUrl || getEnvVariable('CLERK_CHECKOUT_CONTINUE_URL', context) || ''; - - let proxyUrl; - if (!!relativeOrAbsoluteProxyUrl && isProxyUrlRelative(relativeOrAbsoluteProxyUrl)) { - proxyUrl = new URL(relativeOrAbsoluteProxyUrl, clerkRequest.clerkUrl).toString(); - } else { - proxyUrl = relativeOrAbsoluteProxyUrl; - } - - if (!secretKey) { - throw new Error(noSecretKeyError); - } - if (isSatellite && !proxyUrl && !domain) { - throw new Error(satelliteAndMissingProxyUrlAndDomain); - } - if (isSatellite && !isHttpOrHttps(signInUrl) && isDevelopmentFromSecretKey(secretKey)) { - throw new Error(satelliteAndMissingSignInUrl); - } - - return { - // used to append options that are not initialized from env - ...overrides, - secretKey, - publishableKey, - jwtKey, - apiUrl, - domain, - isSatellite, - proxyUrl, - signInUrl, - signUpUrl, - afterSignInUrl, - afterSignUpUrl, - signInForceRedirectUrl, - signUpForceRedirectUrl, - signInFallbackRedirectUrl, - signUpFallbackRedirectUrl, - newSubscriptionRedirectUrl, - }; -}; diff --git a/packages/remix/src/ssr/rootAuthLoader.ts b/packages/remix/src/ssr/rootAuthLoader.ts deleted file mode 100644 index 253f17f54f3..00000000000 --- a/packages/remix/src/ssr/rootAuthLoader.ts +++ /dev/null @@ -1,95 +0,0 @@ -import { decorateObjectWithResources } from '@clerk/backend/internal'; -import type { defer } from '@remix-run/server-runtime'; -import { isDeferredData } from '@remix-run/server-runtime/dist/responses'; - -import { invalidRootLoaderCallbackReturn } from '../utils/errors'; -import { authenticateRequest } from './authenticateRequest'; -import { loadOptions } from './loadOptions'; -import type { LoaderFunctionArgs, LoaderFunctionReturn, RootAuthLoaderCallback, RootAuthLoaderOptions } from './types'; -import { - assertValidHandlerResult, - injectRequestStateIntoDeferredData, - injectRequestStateIntoResponse, - isRedirect, - isResponse, -} from './utils'; - -interface RootAuthLoader { - >( - /** - * Arguments passed to the loader function. - */ - args: LoaderFunctionArgs, - /** - * A loader function with authentication state made available to it. Allows you to fetch route data based on the user's authentication state. - */ - callback: Callback, - options?: Options, - ): Promise>; - - (args: LoaderFunctionArgs, options?: RootAuthLoaderOptions): Promise; -} - -/** - * Makes authorization state available in your application by wrapping the root loader. - * - * @see https://clerk.com/docs/quickstarts/remix - */ -export const rootAuthLoader: RootAuthLoader = async ( - args: LoaderFunctionArgs, - handlerOrOptions: any, - options?: any, -): Promise => { - const handler = typeof handlerOrOptions === 'function' ? handlerOrOptions : undefined; - const opts: RootAuthLoaderOptions = options - ? options - : !!handlerOrOptions && typeof handlerOrOptions !== 'function' - ? handlerOrOptions - : {}; - - const loadedOptions = loadOptions(args, opts); - // Note: authenticateRequest() will throw a redirect if the auth state is determined to be handshake - const _requestState = await authenticateRequest(args, loadedOptions); - // TODO: Investigate if `authenticateRequest` needs to return the loadedOptions (the new request urls in particular) - const requestState = { ...loadedOptions, ..._requestState }; - - if (!handler) { - // if the user did not provide a handler, simply inject requestState into an empty response - return injectRequestStateIntoResponse(new Response(JSON.stringify({})), requestState, args.context); - } - - const authObj = requestState.toAuth(); - const requestWithAuth = Object.assign(args.request, { auth: authObj }); - await decorateObjectWithResources(requestWithAuth, authObj, loadedOptions); - const handlerResult = await handler(args); - assertValidHandlerResult(handlerResult, invalidRootLoaderCallbackReturn); - - // When using defer(), we need to inject the clerk auth state into its internal data object. - if (isDeferredData(handlerResult)) { - return injectRequestStateIntoDeferredData( - // This is necessary because the DeferredData type is not exported from remix. - handlerResult as unknown as ReturnType, - requestState, - args.context, - ); - } - - if (isResponse(handlerResult)) { - try { - // respect and pass-through any redirects without modifying them - if (isRedirect(handlerResult)) { - return handlerResult; - } - // clone and try to inject requestState into all json-like responses - // if this fails, the user probably didn't return a json object or a valid json string - return injectRequestStateIntoResponse(handlerResult, requestState, args.context); - } catch { - throw new Error(invalidRootLoaderCallbackReturn); - } - } - - // if the return value of the user's handler is null or a plain object, create an empty response to inject Clerk's state into - const responseBody = JSON.stringify(handlerResult ?? {}); - - return injectRequestStateIntoResponse(new Response(responseBody), requestState, args.context); -}; diff --git a/packages/remix/src/ssr/types.ts b/packages/remix/src/ssr/types.ts deleted file mode 100644 index 52b75f1301f..00000000000 --- a/packages/remix/src/ssr/types.ts +++ /dev/null @@ -1,75 +0,0 @@ -import type { Organization, Session, User, VerifyTokenOptions } from '@clerk/backend'; -import type { RequestState, SignedInAuthObject, SignedOutAuthObject } from '@clerk/backend/internal'; -import type { - LegacyRedirectProps, - MultiDomainAndOrProxy, - NewSubscriptionRedirectUrl, - SignInFallbackRedirectUrl, - SignInForceRedirectUrl, - SignUpFallbackRedirectUrl, - SignUpForceRedirectUrl, -} from '@clerk/types'; -import type { DataFunctionArgs, LoaderFunction } from '@remix-run/server-runtime'; - -export type GetAuthReturn = Promise; - -export type RootAuthLoaderOptions = { - publishableKey?: string; - jwtKey?: string; - secretKey?: string; - /** - * @deprecated Use [session token claims](https://clerk.com/docs/backend-requests/making/custom-session-token) instead. - */ - loadUser?: boolean; - /** - * @deprecated Use [session token claims](https://clerk.com/docs/backend-requests/making/custom-session-token) instead. - */ - loadSession?: boolean; - /** - * @deprecated Use [session token claims](https://clerk.com/docs/backend-requests/making/custom-session-token) instead. - */ - loadOrganization?: boolean; - signInUrl?: string; - signUpUrl?: string; -} & Pick & - MultiDomainAndOrProxy & - SignInForceRedirectUrl & - SignInFallbackRedirectUrl & - SignUpForceRedirectUrl & - SignUpFallbackRedirectUrl & - NewSubscriptionRedirectUrl & - LegacyRedirectProps; - -export type RequestStateWithRedirectUrls = RequestState & - SignInForceRedirectUrl & - SignInFallbackRedirectUrl & - SignUpForceRedirectUrl & - SignUpFallbackRedirectUrl & - NewSubscriptionRedirectUrl & - LegacyRedirectProps; - -export type RootAuthLoaderCallback = ( - args: LoaderFunctionArgsWithAuth, -) => RootAuthLoaderCallbackReturn; - -type ObjectLike = Record | null; - -/** - * We are not using `LoaderFunctionReturn` here because we can't support non-object return values. We need to be able to decorate the return value with authentication state, and so we need something object-like. - * - * In the case of `null`, we will return an object containing only the authentication state. - */ -export type RootAuthLoaderCallbackReturn = Promise | Response | Promise | ObjectLike; - -export type LoaderFunctionArgs = DataFunctionArgs; -export type LoaderFunctionReturn = ReturnType; - -export type LoaderFunctionArgsWithAuth = LoaderFunctionArgs & { - request: RequestWithAuth; -}; - -export type RequestWithAuth = LoaderFunctionArgs['request'] & { - auth: Omit; -} & (Options extends { loadSession: true } ? { session: Session | null } : object) & - (Options extends { loadUser: true } ? { user: User | null } : object) & - (Options extends { loadOrganization: true } ? { organization: Organization | null } : object); diff --git a/packages/remix/src/ssr/utils.ts b/packages/remix/src/ssr/utils.ts deleted file mode 100644 index 549eb00ec37..00000000000 --- a/packages/remix/src/ssr/utils.ts +++ /dev/null @@ -1,143 +0,0 @@ -import { constants, debugRequestState } from '@clerk/backend/internal'; -import { isTruthy } from '@clerk/shared/underscore'; -import type { AppLoadContext, defer } from '@remix-run/server-runtime'; -import { json } from '@remix-run/server-runtime'; -import { parse as parseCookie } from 'cookie'; - -import { getEnvVariable } from '../utils/utils'; -import type { RequestStateWithRedirectUrls } from './types'; - -export function isResponse(value: any): value is Response { - return ( - value != null && - typeof value.status === 'number' && - typeof value.statusText === 'string' && - typeof value.headers === 'object' && - typeof value.body !== 'undefined' - ); -} - -export function isRedirect(res: Response): boolean { - return res.status >= 300 && res.status < 400; -} - -export const parseCookies = (req: Request) => { - return parseCookie(req.headers.get('cookie') || ''); -}; - -export function assertValidHandlerResult(val: any, error?: string): asserts val is Record | null { - if ((val !== null && typeof val !== 'object') || Array.isArray(val)) { - throw new Error(error || ''); - } -} - -export const injectRequestStateIntoResponse = async ( - response: Response, - requestState: RequestStateWithRedirectUrls, - context: AppLoadContext, -) => { - const clone = new Response(response.body, response); - const data = await clone.json(); - - const { clerkState, headers } = getResponseClerkState(requestState, context); - - // set the correct content-type header in case the user returned a `Response` directly - // without setting the header, instead of using the `json()` helper - clone.headers.set(constants.Headers.ContentType, constants.ContentTypes.Json); - headers.forEach((value, key) => { - clone.headers.append(key, value); - }); - - return json({ ...(data || {}), ...clerkState }, clone); -}; - -export function injectRequestStateIntoDeferredData( - data: ReturnType, - requestState: RequestStateWithRedirectUrls, - context: AppLoadContext, -) { - const { clerkState, headers } = getResponseClerkState(requestState, context); - - // Avoid creating a new object here to retain referential equality. - data.data.clerkState = clerkState.clerkState; - - if (typeof data.init !== 'undefined') { - data.init.headers = new Headers(data.init.headers); - - headers.forEach((value, key) => { - // @ts-expect-error -- We are ensuring headers is defined above - data.init.headers.append(key, value); - }); - } - - return data; -} - -/** - * Returns the clerk state object and observability headers to be injected into a loader response. - * - * @internal - */ -export function getResponseClerkState(requestState: RequestStateWithRedirectUrls, context: AppLoadContext) { - const { reason, message, isSignedIn, ...rest } = requestState; - const clerkState = wrapWithClerkState({ - __clerk_ssr_state: rest.toAuth(), - __publishableKey: requestState.publishableKey, - __proxyUrl: requestState.proxyUrl, - __domain: requestState.domain, - __isSatellite: requestState.isSatellite, - __signInUrl: requestState.signInUrl, - __signUpUrl: requestState.signUpUrl, - __afterSignInUrl: requestState.afterSignInUrl, - __afterSignUpUrl: requestState.afterSignUpUrl, - __signInForceRedirectUrl: requestState.signInForceRedirectUrl, - __signUpForceRedirectUrl: requestState.signUpForceRedirectUrl, - __signInFallbackRedirectUrl: requestState.signInFallbackRedirectUrl, - __signUpFallbackRedirectUrl: requestState.signUpFallbackRedirectUrl, - newSubscriptionRedirectUrl: requestState.newSubscriptionRedirectUrl, - __clerk_debug: debugRequestState(requestState), - __clerkJSUrl: getEnvVariable('CLERK_JS', context), - __clerkJSVersion: getEnvVariable('CLERK_JS_VERSION', context), - __telemetryDisabled: isTruthy(getEnvVariable('CLERK_TELEMETRY_DISABLED', context)), - __telemetryDebug: isTruthy(getEnvVariable('CLERK_TELEMETRY_DEBUG', context)), - }); - - return { - clerkState, - headers: requestState.headers, - }; -} - -/** - * Wraps obscured clerk internals with a readable `clerkState` key. - * This is intended to be passed by the user into - * - * @internal - */ -export const wrapWithClerkState = (data: any) => { - return { clerkState: { __internal_clerk_state: { ...data } } }; -}; - -/** - * Patches request to avoid duplex issues with unidici - * For more information, see: - * https://github.com/nodejs/node/issues/46221 - * https://github.com/whatwg/fetch/pull/1457 - * @internal - */ -export const patchRequest = (request: Request) => { - const clonedRequest = new Request(request.url, { - headers: request.headers, - method: request.method, - redirect: request.redirect, - cache: request.cache, - signal: request.signal, - }); - - // If duplex is not set, set it to 'half' to avoid duplex issues with unidici - if (clonedRequest.method !== 'GET' && clonedRequest.body !== null && !('duplex' in clonedRequest)) { - (clonedRequest as unknown as { duplex: 'half' }).duplex = 'half'; - } - - return clonedRequest; -}; diff --git a/packages/remix/src/utils/errors.ts b/packages/remix/src/utils/errors.ts deleted file mode 100644 index 95b7258e4cb..00000000000 --- a/packages/remix/src/utils/errors.ts +++ /dev/null @@ -1,95 +0,0 @@ -const createErrorMessage = (msg: string) => { - return `🔒 Clerk: ${msg.trim()} - -For more info, check out the docs: https://clerk.com/docs, -or come say hi in our discord server: https://clerk.com/discord - -`; -}; - -const ssrExample = `Use 'rootAuthLoader' as your root loader. Then, simply wrap the App component with ClerkApp and make it the default export. -Example: - -import { ClerkApp } from '@clerk/remix'; -import { rootAuthLoader } from '@clerk/remix/ssr.server'; - -export const loader: LoaderFunction = args => rootAuthLoader(args) - -function App() { - return ( - - ... - - ); -} - -export default ClerkApp(App, { publishableKey: '...' }); -`; - -export const invalidClerkStatePropError = createErrorMessage(` -You're trying to pass an invalid object in "". - -${ssrExample} -`); - -export const noClerkStateError = createErrorMessage(` -Looks like you didn't pass 'clerkState' to "". - -${ssrExample} -`); - -export const noLoaderArgsPassedInGetAuth = createErrorMessage(` -You're calling 'getAuth()' from a loader, without providing the loader args object. -Example: - -export const loader: LoaderFunction = async (args) => { - const { sessionId } = await getAuth(args); - ... -}; -`); - -export const invalidRootLoaderCallbackReturn = createErrorMessage(` -You're returning an invalid response from the 'rootAuthLoader' called from the loader in root.tsx. -You can only return plain objects, responses created using the Remix 'json()' and 'redirect()' helpers, -custom redirect 'Response' instances (status codes in the range of 300 to 400), -or custom json 'Response' instances (containing a body that is a valid json string). -If you want to return a primitive value or an array, you can always wrap the response with an object. - -Example: - -export const loader: LoaderFunction = args => rootAuthLoader(args, ({ auth }) => { - const { userId } = auth; - const posts: Post[] = database.getPostsByUserId(userId); - - return json({ data: posts }) - // or - return new Response(JSON.stringify({ data: posts }), { headers: { 'Content-Type': 'application/json' } }); - // or - return { data: posts }; -}) -`); - -export const noSecretKeyError = createErrorMessage(` -A secretKey must be provided in order to use SSR and the exports from @clerk/remix/api.'); -If your runtime supports environment variables, you can add a CLERK_SECRET_KEY variable to your config. -Otherwise, you can pass a secretKey parameter to rootAuthLoader or getAuth. -`); - -export const satelliteAndMissingProxyUrlAndDomain = createErrorMessage( - `Missing domain and proxyUrl. A satellite application needs to specify a domain or a proxyUrl`, -); - -export const satelliteAndMissingSignInUrl = createErrorMessage(` -Invalid signInUrl. A satellite application requires a signInUrl for development instances. -Check if signInUrl is missing from your configuration or if it is not an absolute URL.`); - -export const publishableKeyMissingErrorInSpaMode = createErrorMessage(` -You're trying to use Clerk in Remix SPA Mode without providing a Publishable Key. -Please provide the publishableKey option on the ClerkApp component. - -Example: - -export default ClerkApp(App, { - publishableKey: 'pk_test_XXX' -}); -`); diff --git a/packages/remix/src/utils/index.ts b/packages/remix/src/utils/index.ts deleted file mode 100644 index 04bca77e0de..00000000000 --- a/packages/remix/src/utils/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './utils'; diff --git a/packages/remix/src/utils/utils.ts b/packages/remix/src/utils/utils.ts deleted file mode 100644 index fdd504bd3a0..00000000000 --- a/packages/remix/src/utils/utils.ts +++ /dev/null @@ -1,88 +0,0 @@ -import type { AppLoadContext } from '@remix-run/server-runtime'; - -import type { ClerkState } from '../client/types'; -import { invalidClerkStatePropError, noClerkStateError, publishableKeyMissingErrorInSpaMode } from './errors'; - -export function warnForSsr(val: ClerkState | undefined) { - if (!val || !val.__internal_clerk_state) { - console.warn(noClerkStateError); - } -} - -export function assertEnvVar(name: any, errorMessage: string): asserts name is string { - if (!name || typeof name !== 'string') { - throw new Error(errorMessage); - } -} - -export function assertValidClerkState(val: any): asserts val is ClerkState | undefined { - if (!val) { - throw new Error(noClerkStateError); - } - if (!!val && !val.__internal_clerk_state) { - throw new Error(invalidClerkStatePropError); - } -} - -export function assertPublishableKeyInSpaMode(key: any): asserts key is string { - if (!key || typeof key !== 'string') { - throw new Error(publishableKeyMissingErrorInSpaMode); - } -} - -type CloudflareEnv = { env: Record }; - -// https://remix.run/blog/remix-vite-stable#cloudflare-pages-support -const hasCloudflareProxyContext = (context: any): context is { cloudflare: CloudflareEnv } => { - return !!context?.cloudflare?.env; -}; - -const hasCloudflareContext = (context: any): context is CloudflareEnv => { - return !!context?.env; -}; - -/** - * - * Utility function to get env variables across Node and Edge runtimes. - * - * @param name - * @returns string - */ -export const getEnvVariable = (name: string, context: AppLoadContext | undefined): string => { - // Node envs - if (typeof process !== 'undefined' && process.env && typeof process.env[name] === 'string') { - return process.env[name]; - } - - // Remix + Cloudflare pages - // if (typeof (context?.cloudflare as CloudflareEnv)?.env !== 'undefined') { - if (hasCloudflareProxyContext(context)) { - return context.cloudflare.env[name] || ''; - } - - // Cloudflare - if (hasCloudflareContext(context)) { - return context.env[name] || ''; - } - - // Check whether the value exists in the context object directly - if (context && typeof context[name] === 'string') { - return context[name]; - } - - // Cloudflare workers - try { - return globalThis[name as keyof typeof globalThis]; - } catch { - // This will raise an error in Cloudflare Pages - } - - return ''; -}; - -export const inSpaMode = (): boolean => { - if (typeof window !== 'undefined' && typeof window.__remixContext?.isSpaMode !== 'undefined') { - return window.__remixContext.isSpaMode; - } - return false; -}; diff --git a/packages/remix/ssr.server/package.json b/packages/remix/ssr.server/package.json deleted file mode 100644 index 6f236856e88..00000000000 --- a/packages/remix/ssr.server/package.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "main": "../dist/ssr/index.js", - "types": "../dist/ssr/index.d.ts" -} diff --git a/packages/remix/tsconfig.declarations.json b/packages/remix/tsconfig.declarations.json deleted file mode 100644 index 4a7735336e2..00000000000 --- a/packages/remix/tsconfig.declarations.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "extends": "./tsconfig.json", - "compilerOptions": { - "skipLibCheck": true, - "noEmit": false, - "declaration": true, - "emitDeclarationOnly": true, - "declarationMap": true, - "sourceMap": false, - "declarationDir": "./dist" - } -} diff --git a/packages/remix/tsconfig.json b/packages/remix/tsconfig.json deleted file mode 100644 index d423ec1c4af..00000000000 --- a/packages/remix/tsconfig.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "compilerOptions": { - "outDir": "dist", - "baseUrl": ".", - "lib": ["es6", "dom"], - "jsx": "react", - "module": "NodeNext", - "moduleResolution": "NodeNext", - "importHelpers": true, - "declaration": true, - "declarationMap": false, - "noImplicitReturns": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "resolveJsonModule": true, - "sourceMap": false, - "strict": true, - "esModuleInterop": true, - "skipLibCheck": true, - "allowJs": true, - "target": "ES2019", - "noEmitOnError": false, - "incremental": true - }, - "include": ["src"] -} diff --git a/packages/remix/tsup.config.ts b/packages/remix/tsup.config.ts deleted file mode 100644 index 2d375c4d691..00000000000 --- a/packages/remix/tsup.config.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { Options } from 'tsup'; -import { defineConfig } from 'tsup'; - -import { runAfterLast } from '../../scripts/utils'; -import { version as clerkJsVersion } from '../clerk-js/package.json'; -import { name, version } from './package.json'; - -export default defineConfig(overrideOptions => { - const isWatch = !!overrideOptions.watch; - const shouldPublish = !!overrideOptions.env?.publish; - - const options: Options = { - format: 'cjs', - outDir: './dist', - entry: ['./src/**/*.{ts,tsx,js,jsx}'], - bundle: false, - clean: true, - minify: false, - sourcemap: true, - legacyOutput: true, - define: { - PACKAGE_NAME: `"${name}"`, - PACKAGE_VERSION: `"${version}"`, - JS_PACKAGE_VERSION: `"${clerkJsVersion}"`, - __DEV__: `${isWatch}`, - }, - }; - - return runAfterLast(['pnpm build:declarations', shouldPublish && 'pnpm publish:local'])(options); -}); diff --git a/packages/remix/vitest.config.mts b/packages/remix/vitest.config.mts deleted file mode 100644 index 5fcd8bde40b..00000000000 --- a/packages/remix/vitest.config.mts +++ /dev/null @@ -1,9 +0,0 @@ -import { defineConfig } from 'vitest/config'; - -export default defineConfig({ - test: { - globals: true, - environment: 'jsdom', - setupFiles: './vitest.setup.mts', - }, -}); diff --git a/packages/remix/vitest.setup.mts b/packages/remix/vitest.setup.mts deleted file mode 100644 index 6b253e3232c..00000000000 --- a/packages/remix/vitest.setup.mts +++ /dev/null @@ -1,3 +0,0 @@ -globalThis.__DEV__ = true; -globalThis.PACKAGE_NAME = '@clerk/remix'; -globalThis.PACKAGE_VERSION = '0.0.0-test'; diff --git a/packages/tanstack-react-start/package.json b/packages/tanstack-react-start/package.json index 733521aac1f..6285e8401eb 100644 --- a/packages/tanstack-react-start/package.json +++ b/packages/tanstack-react-start/package.json @@ -43,6 +43,10 @@ "types": "./dist/webhooks.d.ts", "default": "./dist/webhooks.js" }, + "./legacy": { + "types": "./dist/legacy.d.ts", + "default": "./dist/legacy.js" + }, "./package.json": "./package.json" }, "main": "dist/index.js", diff --git a/packages/tanstack-react-start/src/__tests__/__snapshots__/exports.test.ts.snap b/packages/tanstack-react-start/src/__tests__/__snapshots__/exports.test.ts.snap index f49dd011405..692ecebec4d 100644 --- a/packages/tanstack-react-start/src/__tests__/__snapshots__/exports.test.ts.snap +++ b/packages/tanstack-react-start/src/__tests__/__snapshots__/exports.test.ts.snap @@ -12,6 +12,13 @@ exports[`errors public exports > should not change unexpectedly 1`] = ` ] `; +exports[`legacy public exports > should not change unexpectedly 1`] = ` +[ + "useSignIn", + "useSignUp", +] +`; + exports[`root public exports > should not change unexpectedly 1`] = ` [ "APIKeys", diff --git a/packages/tanstack-react-start/src/__tests__/exports.test.ts b/packages/tanstack-react-start/src/__tests__/exports.test.ts index fc39dba23b7..d7c0db54fe8 100644 --- a/packages/tanstack-react-start/src/__tests__/exports.test.ts +++ b/packages/tanstack-react-start/src/__tests__/exports.test.ts @@ -1,5 +1,6 @@ import * as errorsExports from '../errors'; import * as publicExports from '../index'; +import * as legacyExports from '../legacy'; import * as serverExports from '../server/index'; import * as webhooksExports from '../webhooks'; @@ -26,3 +27,9 @@ describe('webhooks public exports', () => { expect(Object.keys(webhooksExports).sort()).toMatchSnapshot(); }); }); + +describe('legacy public exports', () => { + it('should not change unexpectedly', () => { + expect(Object.keys(legacyExports).sort()).toMatchSnapshot(); + }); +}); diff --git a/packages/tanstack-react-start/src/legacy.ts b/packages/tanstack-react-start/src/legacy.ts new file mode 100644 index 00000000000..47b681915bb --- /dev/null +++ b/packages/tanstack-react-start/src/legacy.ts @@ -0,0 +1 @@ +export { useSignIn, useSignUp } from '@clerk/react/legacy'; diff --git a/packages/upgrade/src/constants/sdks.js b/packages/upgrade/src/constants/sdks.js index f098f7a5964..997760643aa 100644 --- a/packages/upgrade/src/constants/sdks.js +++ b/packages/upgrade/src/constants/sdks.js @@ -1,6 +1,5 @@ export default [ { label: '@clerk/nextjs', value: 'nextjs' }, - { label: '@clerk/remix', value: 'remix' }, { label: '@clerk/redwood', value: 'redwood' }, { label: '@clerk/react', value: 'react' }, { label: '@clerk/expo', value: 'expo' }, diff --git a/packages/upgrade/src/guide-generators/core-2/generate-all.sh b/packages/upgrade/src/guide-generators/core-2/generate-all.sh index 354b75f09a8..b2ab7bad79a 100755 --- a/packages/upgrade/src/guide-generators/core-2/generate-all.sh +++ b/packages/upgrade/src/guide-generators/core-2/generate-all.sh @@ -11,5 +11,4 @@ node $SCRIPT_DIR/js/index.js node $SCRIPT_DIR/nextjs/index.js node $SCRIPT_DIR/node/index.js node $SCRIPT_DIR/react/index.js -node $SCRIPT_DIR/remix/index.js node $SCRIPT_DIR/retheme/index.js diff --git a/playground/remix-cf-pages/.gitignore b/playground/remix-cf-pages/.gitignore deleted file mode 100644 index ccbe641499b..00000000000 --- a/playground/remix-cf-pages/.gitignore +++ /dev/null @@ -1,7 +0,0 @@ -node_modules - -/.cache -/functions/\[\[path\]\].js -/functions/\[\[path\]\].js.map -/public/build -.env diff --git a/playground/remix-cf-pages/.node-version b/playground/remix-cf-pages/.node-version deleted file mode 100644 index 5b0ad74a810..00000000000 --- a/playground/remix-cf-pages/.node-version +++ /dev/null @@ -1 +0,0 @@ -16.13.0 \ No newline at end of file diff --git a/playground/remix-cf-pages/README.md b/playground/remix-cf-pages/README.md deleted file mode 100644 index 5a9fd538c34..00000000000 --- a/playground/remix-cf-pages/README.md +++ /dev/null @@ -1,22 +0,0 @@ -# Welcome to Remix! - -- [Remix Docs](https://remix.run/docs) - -## Development - -You will be utilizing Wrangler for local development to emulate the Cloudflare runtime. This is already wired up in your package.json as the `dev` script: - -```sh -# start the remix dev server and wrangler -pnpm dev -``` - -Open up [http://127.0.0.1:8788](http://127.0.0.1:8788) and you should be ready to go! - -## Deployment - -Cloudflare Pages are currently only deployable through their Git provider integrations. - -If you don't already have an account, then [create a Cloudflare account here](https://dash.cloudflare.com/sign-up/pages) and after verifying your email address with Cloudflare, go to your dashboard and follow the [Cloudflare Pages deployment guide](https://developers.cloudflare.com/pages/framework-guides/deploy-anything). - -Configure the "Build command" should be set to `pnpm build`, and the "Build output directory" should be set to `public`. diff --git a/playground/remix-cf-pages/app/entry.client.tsx b/playground/remix-cf-pages/app/entry.client.tsx deleted file mode 100644 index dc2491c3508..00000000000 --- a/playground/remix-cf-pages/app/entry.client.tsx +++ /dev/null @@ -1,4 +0,0 @@ -import { RemixBrowser } from '@remix-run/react'; -import { hydrate } from 'react-dom'; - -hydrate(, document); diff --git a/playground/remix-cf-pages/app/entry.server.tsx b/playground/remix-cf-pages/app/entry.server.tsx deleted file mode 100644 index ba5d5f4becb..00000000000 --- a/playground/remix-cf-pages/app/entry.server.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import type { EntryContext } from '@remix-run/cloudflare'; -import { RemixServer } from '@remix-run/react'; -import { renderToString } from 'react-dom/server'; - -export default function handleRequest( - request: Request, - responseStatusCode: number, - responseHeaders: Headers, - remixContext: EntryContext, -) { - const markup = renderToString( - , - ); - - responseHeaders.set('Content-Type', 'text/html'); - - return new Response('' + markup, { - status: responseStatusCode, - headers: responseHeaders, - }); -} diff --git a/playground/remix-cf-pages/app/root.tsx b/playground/remix-cf-pages/app/root.tsx deleted file mode 100644 index 041c2ebe800..00000000000 --- a/playground/remix-cf-pages/app/root.tsx +++ /dev/null @@ -1,35 +0,0 @@ -import type { LoaderFunction, MetaFunction } from '@remix-run/cloudflare'; -import { Links, LiveReload, Meta, Outlet, Scripts, ScrollRestoration } from '@remix-run/react'; -import { rootAuthLoader } from '@clerk/remix/ssr.server'; -import { ClerkApp, ClerkErrorBoundary } from '@clerk/remix'; - -export const loader: LoaderFunction = args => { - return rootAuthLoader(args); -}; - -export const meta: MetaFunction = () => ({ - charset: 'utf-8', - title: 'New Remix App', - viewport: 'width=device-width,initial-scale=1', -}); - -function App() { - return ( - - - - - - - - - - - - - ); -} - -export default ClerkApp(App); - -export const ErrorBoundary = ClerkErrorBoundary(); diff --git a/playground/remix-cf-pages/app/routes/index.tsx b/playground/remix-cf-pages/app/routes/index.tsx deleted file mode 100644 index 8d633d595fa..00000000000 --- a/playground/remix-cf-pages/app/routes/index.tsx +++ /dev/null @@ -1,47 +0,0 @@ -import { json, LoaderFunction, redirect } from '@remix-run/cloudflare'; -import { useLoaderData } from '@remix-run/react'; -import { getAuth } from '@clerk/remix/ssr.server'; -import { createClerkClient } from '@clerk/remix/api.server'; -import { ClerkLoaded, SignedIn, UserButton, useUser } from '@clerk/remix'; - -export const loader: LoaderFunction = async args => { - const { userId } = await getAuth(args); - if (!userId) { - return redirect('/sign-in'); - } - - const clerkClient = createClerkClient({ apiKey: args.context['CLERK_API_KEY'] }); - const { data: count } = await clerkClient.users.getCount(); - - console.log('AuthState from loader:', userId); - return json({ userId: userId, count }); -}; - -export default function Index() { - const { user, isLoaded } = useUser(); - const { userId, count } = useLoaderData(); - - return ( -
-

Welcome to Remix

-
-
    -
  • Total users: {count}
  • -
  • - ClerkJS client state: - -
    Client user id: {isLoaded ? user?.id : 'n/a'}
    -
    -
  • -
  • - ClerkJS server state: - -
    Server user id: {userId}
    - -
    -
  • -
-
-
- ); -} diff --git a/playground/remix-cf-pages/app/routes/sign-in.tsx b/playground/remix-cf-pages/app/routes/sign-in.tsx deleted file mode 100644 index 48d9e0f4032..00000000000 --- a/playground/remix-cf-pages/app/routes/sign-in.tsx +++ /dev/null @@ -1,10 +0,0 @@ -import { SignIn } from '@clerk/remix'; - -export default function Index() { - return ( -
-

Sign In

- -
- ); -} diff --git a/playground/remix-cf-pages/package.json b/playground/remix-cf-pages/package.json deleted file mode 100644 index 545f6d5941b..00000000000 --- a/playground/remix-cf-pages/package.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "private": true, - "sideEffects": false, - "scripts": { - "build": "remix build", - "dev:remix": "remix watch", - "dev:wrangler": "cross-env NODE_ENV=development wrangler pages dev ./public", - "dev": "remix build && run-p \"dev:*\"", - "start": "cross-env NODE_ENV=production pnpm dev:wrangler", - "typecheck": "tsc -b", - "yalc:add": "pnpm yalc add @clerk/types && yalc add @clerk/remix && yalc add @clerk/backend" - }, - "dependencies": { - "@clerk/backend": "file:.yalc/@clerk/backend", - "@clerk/remix": "file:.yalc/@clerk/remix", - "@clerk/types": "file:.yalc/@clerk/types", - "@remix-run/cloudflare": "^2.0.0", - "@remix-run/cloudflare-pages": "^2.0.0", - "@remix-run/react": "^2.0.0", - "cross-env": "^7.0.3", - "react": "^18.2.0", - "react-dom": "^18.2.0" - }, - "devDependencies": { - "@cloudflare/workers-types": "^3.18.0", - "@remix-run/dev": "^2.0.0", - "@types/react": "^18.2.22", - "@types/react-dom": "^18.2.7", - "eslint": "^8.27.0", - "npm-run-all": "^4.1.5", - "typescript": "^4.8.4", - "wrangler": "^2.2.1" - }, - "engines": { - "node": ">=18" - } -} diff --git a/playground/remix-cf-pages/public/_headers b/playground/remix-cf-pages/public/_headers deleted file mode 100644 index 2fb104e7af1..00000000000 --- a/playground/remix-cf-pages/public/_headers +++ /dev/null @@ -1,2 +0,0 @@ -/build/* - Cache-Control: public, max-age=31536000, s-maxage=31536000 diff --git a/playground/remix-cf-pages/public/_routes.json b/playground/remix-cf-pages/public/_routes.json deleted file mode 100644 index 5826b059c08..00000000000 --- a/playground/remix-cf-pages/public/_routes.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "version": 1, - "include": ["/*"], - "exclude": ["/build/*"] -} diff --git a/playground/remix-cf-pages/public/favicon.ico b/playground/remix-cf-pages/public/favicon.ico deleted file mode 100644 index 8830cf6821b..00000000000 Binary files a/playground/remix-cf-pages/public/favicon.ico and /dev/null differ diff --git a/playground/remix-cf-pages/remix.config.js b/playground/remix-cf-pages/remix.config.js deleted file mode 100644 index a4c554c0236..00000000000 --- a/playground/remix-cf-pages/remix.config.js +++ /dev/null @@ -1,11 +0,0 @@ -/** @type {import('@remix-run/dev').AppConfig} */ -module.exports = { - serverBuildTarget: 'cloudflare-pages', - server: './server.js', - devServerBroadcastDelay: 1000, - ignoredRouteFiles: ['**/.*'], - // appDirectory: "app", - // assetsBuildDirectory: "public/build", - // serverBuildPath: "functions/[[path]].js", - // publicPath: "/build/", -}; diff --git a/playground/remix-cf-pages/remix.env.d.ts b/playground/remix-cf-pages/remix.env.d.ts deleted file mode 100644 index 425870ae632..00000000000 --- a/playground/remix-cf-pages/remix.env.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -/// -/// -/// diff --git a/playground/remix-cf-pages/server.js b/playground/remix-cf-pages/server.js deleted file mode 100644 index d700a7c5044..00000000000 --- a/playground/remix-cf-pages/server.js +++ /dev/null @@ -1,12 +0,0 @@ -import { createPagesFunctionHandler } from '@remix-run/cloudflare-pages'; -import * as build from '@remix-run/dev/server-build'; - -const handleRequest = createPagesFunctionHandler({ - build, - mode: process.env.NODE_ENV, - getLoadContext: context => context.env, -}); - -export function onRequest(context) { - return handleRequest(context); -} diff --git a/playground/remix-cf-pages/tsconfig.json b/playground/remix-cf-pages/tsconfig.json deleted file mode 100644 index 20f8a386a6c..00000000000 --- a/playground/remix-cf-pages/tsconfig.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "include": ["remix.env.d.ts", "**/*.ts", "**/*.tsx"], - "compilerOptions": { - "lib": ["DOM", "DOM.Iterable", "ES2019"], - "isolatedModules": true, - "esModuleInterop": true, - "jsx": "react-jsx", - "moduleResolution": "node", - "resolveJsonModule": true, - "target": "ES2019", - "strict": true, - "allowJs": true, - "forceConsistentCasingInFileNames": true, - "baseUrl": ".", - "paths": { - "~/*": ["./app/*"] - }, - - // Remix takes care of building everything in `remix build`. - "noEmit": true - } -} diff --git a/playground/remix-cf-worker/.gitignore b/playground/remix-cf-worker/.gitignore deleted file mode 100644 index f0421bd7025..00000000000 --- a/playground/remix-cf-worker/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -node_modules - -/.cache -/build -/dist -/public/build -/.mf -.env diff --git a/playground/remix-cf-worker/README.md b/playground/remix-cf-worker/README.md deleted file mode 100644 index 2c537d79085..00000000000 --- a/playground/remix-cf-worker/README.md +++ /dev/null @@ -1,37 +0,0 @@ -# Welcome to Remix! - -- [Remix Docs](https://remix.run/docs) - -## Development - -You will be running two processes during development: - -- The Miniflare server (miniflare is a local environment for Cloudflare Workers) -- The Remix development server - -Both are started with one command: - -```sh -pnpm dev -``` - -Open up [http://127.0.0.1:8787](http://127.0.0.1:8787) and you should be ready to go! - -If you want to check the production build, you can stop the dev server and run following commands: - -```sh -pnpm build -npm start -``` - -Then refresh the same URL in your browser (no live reload for production builds). - -## Deployment - -If you don't already have an account, then [create a cloudflare account here](https://dash.cloudflare.com/sign-up) and after verifying your email address with Cloudflare, go to your dashboard and set up your free custom Cloudflare Workers subdomain. - -Once that's done, you should be able to deploy your app: - -```sh -pnpm deploy -``` diff --git a/playground/remix-cf-worker/app/entry.client.tsx b/playground/remix-cf-worker/app/entry.client.tsx deleted file mode 100644 index dc2491c3508..00000000000 --- a/playground/remix-cf-worker/app/entry.client.tsx +++ /dev/null @@ -1,4 +0,0 @@ -import { RemixBrowser } from '@remix-run/react'; -import { hydrate } from 'react-dom'; - -hydrate(, document); diff --git a/playground/remix-cf-worker/app/entry.server.tsx b/playground/remix-cf-worker/app/entry.server.tsx deleted file mode 100644 index ba5d5f4becb..00000000000 --- a/playground/remix-cf-worker/app/entry.server.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import type { EntryContext } from '@remix-run/cloudflare'; -import { RemixServer } from '@remix-run/react'; -import { renderToString } from 'react-dom/server'; - -export default function handleRequest( - request: Request, - responseStatusCode: number, - responseHeaders: Headers, - remixContext: EntryContext, -) { - const markup = renderToString( - , - ); - - responseHeaders.set('Content-Type', 'text/html'); - - return new Response('' + markup, { - status: responseStatusCode, - headers: responseHeaders, - }); -} diff --git a/playground/remix-cf-worker/app/root.tsx b/playground/remix-cf-worker/app/root.tsx deleted file mode 100644 index 67f7655729d..00000000000 --- a/playground/remix-cf-worker/app/root.tsx +++ /dev/null @@ -1,43 +0,0 @@ -import type { MetaFunction, LoaderFunction } from '@remix-run/cloudflare'; -import { Links, LiveReload, Meta, Outlet, Scripts, ScrollRestoration } from '@remix-run/react'; -import { rootAuthLoader } from '@clerk/remix/experimental/ssr.server'; -import { ClerkApp, ClerkCatchBoundary } from '@clerk/remix/experimental'; - -export const loader: LoaderFunction = args => { - return rootAuthLoader( - args, - ({ request }) => { - const { user } = request; - console.log('Loaded user from root loader:', user); - return { user }; - }, - { loadUser: true }, - ); -}; - -export const meta: MetaFunction = () => ({ - charset: 'utf-8', - title: 'New Remix App', - viewport: 'width=device-width,initial-scale=1', -}); - -export const CatchBoundary = ClerkCatchBoundary(); - -function App() { - return ( - - - - - - - - - - - - - ); -} - -export default ClerkApp(App); diff --git a/playground/remix-cf-worker/app/routes/index.tsx b/playground/remix-cf-worker/app/routes/index.tsx deleted file mode 100644 index 463d3a8d9a5..00000000000 --- a/playground/remix-cf-worker/app/routes/index.tsx +++ /dev/null @@ -1,47 +0,0 @@ -import { json, LoaderFunction } from '@remix-run/cloudflare'; -import { useLoaderData } from '@remix-run/react'; -import { getAuth } from '@clerk/remix/experimental/ssr.server'; -import { createClerkClient } from '@clerk/remix/experimental/api.server'; -import { useUser, SignedIn, SignedOut, ClerkLoaded, RedirectToSignIn, UserButton } from '@clerk/remix/experimental'; - -export const loader: LoaderFunction = async args => { - const authState = await getAuth(args); - - const { data: count } = await createClerkClient({ - apiKey: globalThis['CLERK_API_KEY'], - }).users.getCount(); - - console.log('AuthState from loader:', authState); - return json({ userId: authState.userId, count }); -}; - -export default function Index() { - const { user, isLoaded } = useUser(); - const { userId, count } = useLoaderData(); - return ( -
-

Welcome to Remix

-
- - - -
    -
  • Total users: {count}
  • -
  • - ClerkJS client state: - -
    Client user id: {isLoaded ? user?.id : 'n/a'}
    -
    -
  • -
  • - ClerkJS server state: - -
    Server user id: {userId}
    - -
    -
  • -
-
-
- ); -} diff --git a/playground/remix-cf-worker/package.json b/playground/remix-cf-worker/package.json deleted file mode 100644 index 0021e06ddad..00000000000 --- a/playground/remix-cf-worker/package.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "private": true, - "sideEffects": false, - "scripts": { - "build": "remix build", - "deploy": "wrangler publish", - "dev:remix": "remix watch", - "dev:miniflare": "cross-env NODE_ENV=development miniflare ./build/index.js --watch", - "dev": "remix build && run-p \"dev:*\"", - "start": "cross-env NODE_ENV=production miniflare ./build/index.js", - "yalc:add": "pnpm yalc add @clerk/types && yalc add @clerk/remix && yalc add @clerk/backend" - }, - "dependencies": { - "@clerk/backend": "file:.yalc/@clerk/backend", - "@clerk/remix": "file:.yalc/@clerk/remix", - "@clerk/types": "file:.yalc/@clerk/types", - "@remix-run/cloudflare": "^2.0.0", - "@remix-run/cloudflare-workers": "^2.0.0", - "@remix-run/react": "^2.0.0", - "cross-env": "^7.0.3", - "react": "^18.2.0", - "react-dom": "^18.2.0" - }, - "devDependencies": { - "@cloudflare/workers-types": "^3.18.0", - "@remix-run/dev": "^2.0.0", - "@remix-run/eslint-config": "^2.0.0", - "@types/react": "^18.2.22", - "@types/react-dom": "^18.2.7", - "eslint": "^8.27.0", - "miniflare": "^2.11.0", - "npm-run-all": "^4.1.5", - "typescript": "^4.8.4", - "wrangler": "^2.2.1" - }, - "engines": { - "node": ">=18" - } -} diff --git a/playground/remix-cf-worker/public/favicon.ico b/playground/remix-cf-worker/public/favicon.ico deleted file mode 100644 index 8830cf6821b..00000000000 Binary files a/playground/remix-cf-worker/public/favicon.ico and /dev/null differ diff --git a/playground/remix-cf-worker/remix.config.js b/playground/remix-cf-worker/remix.config.js deleted file mode 100644 index 36c48072598..00000000000 --- a/playground/remix-cf-worker/remix.config.js +++ /dev/null @@ -1,11 +0,0 @@ -/** @type {import('@remix-run/dev').AppConfig} */ -module.exports = { - serverBuildTarget: 'cloudflare-workers', - server: './server.js', - devServerBroadcastDelay: 1000, - ignoredRouteFiles: ['**/.*'], - // appDirectory: "app", - // assetsBuildDirectory: "public/build", - // serverBuildPath: "build/index.js", - // publicPath: "/build/", -}; diff --git a/playground/remix-cf-worker/remix.env.d.ts b/playground/remix-cf-worker/remix.env.d.ts deleted file mode 100644 index 425870ae632..00000000000 --- a/playground/remix-cf-worker/remix.env.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -/// -/// -/// diff --git a/playground/remix-cf-worker/server.js b/playground/remix-cf-worker/server.js deleted file mode 100644 index ba3626a0533..00000000000 --- a/playground/remix-cf-worker/server.js +++ /dev/null @@ -1,4 +0,0 @@ -import { createEventHandler } from '@remix-run/cloudflare-workers'; -import * as build from '@remix-run/dev/server-build'; - -addEventListener('fetch', createEventHandler({ build, mode: process.env.NODE_ENV })); diff --git a/playground/remix-cf-worker/tsconfig.json b/playground/remix-cf-worker/tsconfig.json deleted file mode 100644 index 20f8a386a6c..00000000000 --- a/playground/remix-cf-worker/tsconfig.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "include": ["remix.env.d.ts", "**/*.ts", "**/*.tsx"], - "compilerOptions": { - "lib": ["DOM", "DOM.Iterable", "ES2019"], - "isolatedModules": true, - "esModuleInterop": true, - "jsx": "react-jsx", - "moduleResolution": "node", - "resolveJsonModule": true, - "target": "ES2019", - "strict": true, - "allowJs": true, - "forceConsistentCasingInFileNames": true, - "baseUrl": ".", - "paths": { - "~/*": ["./app/*"] - }, - - // Remix takes care of building everything in `remix build`. - "noEmit": true - } -} diff --git a/playground/remix-cf-worker/wrangler.toml b/playground/remix-cf-worker/wrangler.toml deleted file mode 100644 index 510461f8ad8..00000000000 --- a/playground/remix-cf-worker/wrangler.toml +++ /dev/null @@ -1,12 +0,0 @@ -name = "remix-cloudflare-workers" - -workers_dev = true -main = "./build/index.js" -# https://developers.cloudflare.com/workers/platform/compatibility-dates -compatibility_date = "2022-04-05" - -[site] - bucket = "./public" - -[build] - command = "pnpm build" diff --git a/playground/remix-node/.gitignore b/playground/remix-node/.gitignore deleted file mode 100644 index 3f7bf98da3e..00000000000 --- a/playground/remix-node/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -node_modules - -/.cache -/build -/public/build -.env diff --git a/playground/remix-node/README.md b/playground/remix-node/README.md deleted file mode 100644 index 5c69f0e3de5..00000000000 --- a/playground/remix-node/README.md +++ /dev/null @@ -1,70 +0,0 @@ -# Welcome to Remix! - -- [Remix Docs](https://remix.run/docs) - -## Setup - -At repository level: - -```bash -pnpm build -pnpm yalc:all -``` - -At current directory level: - -```bash -pnpm yalc:add -npm i -``` - -## Run development server - -```bash -pnpm dev -``` - -This starts your app in development mode, rebuilding assets on file changes. - -To get the latest unpublished changes from the `packages` (if they are not auto updated) use `pnpm yalc:all` in repository level or `yalc push --replace` from the updated package -after an `pnpm build` is being executed. - -## Deployment - -First, build your app for production: - -```sh -pnpm build -``` - -Then run the app in production mode: - -```sh -pnpm start -``` - -Now you'll need to pick a host to deploy it to. - -### DIY - -If you're familiar with deploying node applications, the built-in Remix app server is production-ready. - -Make sure to deploy the output of `remix build` - -- `build/` -- `public/build/` - -### Using a Template - -When you ran `pnpm dlx create-remix@latest` there were a few choices for hosting. You can run that again to create a new project, then copy over your `app/` folder to the new project that's pre-configured for your target server. - -```sh -cd .. -# create a new project, and pick a pre-configured host -pnpm dlx create-remix@latest -cd my-new-remix-app -# remove the new project's app (not the old one!) -rm -rf app -# copy your app over -cp -R ../my-old-remix-app/app app -``` diff --git a/playground/remix-node/app/entry.client.tsx b/playground/remix-node/app/entry.client.tsx deleted file mode 100644 index 62da6d155fa..00000000000 --- a/playground/remix-node/app/entry.client.tsx +++ /dev/null @@ -1,22 +0,0 @@ -import { RemixBrowser } from '@remix-run/react'; -import { startTransition, StrictMode } from 'react'; -import { hydrateRoot } from 'react-dom/client'; - -function hydrate() { - startTransition(() => { - hydrateRoot( - document, - - - , - ); - }); -} - -if (window.requestIdleCallback) { - window.requestIdleCallback(hydrate); -} else { - // Safari doesn't support requestIdleCallback - // https://caniuse.com/requestidlecallback - window.setTimeout(hydrate, 1); -} diff --git a/playground/remix-node/app/entry.server.tsx b/playground/remix-node/app/entry.server.tsx deleted file mode 100644 index cdbb7434a59..00000000000 --- a/playground/remix-node/app/entry.server.tsx +++ /dev/null @@ -1,106 +0,0 @@ -import { PassThrough } from 'stream'; -import type { EntryContext } from '@remix-run/node'; -import { RemixServer } from '@remix-run/react'; -import isbot from 'isbot'; -import { renderToPipeableStream } from 'react-dom/server'; - -const ABORT_DELAY = 5000; - -export default function handleRequest( - request: Request, - responseStatusCode: number, - responseHeaders: Headers, - remixContext: EntryContext, -) { - return isbot(request.headers.get('user-agent')) - ? handleBotRequest(request, responseStatusCode, responseHeaders, remixContext) - : handleBrowserRequest(request, responseStatusCode, responseHeaders, remixContext); -} - -function handleBotRequest( - request: Request, - responseStatusCode: number, - responseHeaders: Headers, - remixContext: EntryContext, -) { - return new Promise((resolve, reject) => { - let didError = false; - - const { pipe, abort } = renderToPipeableStream( - , - { - onAllReady() { - const body = new PassThrough(); - - responseHeaders.set('Content-Type', 'text/html'); - - resolve( - new Response(body, { - headers: responseHeaders, - status: didError ? 500 : responseStatusCode, - }), - ); - - pipe(body); - }, - onShellError(error: unknown) { - reject(error); - }, - onError(error: unknown) { - didError = true; - - console.error(error); - }, - }, - ); - - setTimeout(abort, ABORT_DELAY); - }); -} - -function handleBrowserRequest( - request: Request, - responseStatusCode: number, - responseHeaders: Headers, - remixContext: EntryContext, -) { - return new Promise((resolve, reject) => { - let didError = false; - - const { pipe, abort } = renderToPipeableStream( - , - { - onShellReady() { - const body = new PassThrough(); - - responseHeaders.set('Content-Type', 'text/html'); - - resolve( - new Response(body, { - headers: responseHeaders, - status: didError ? 500 : responseStatusCode, - }), - ); - - pipe(body); - }, - onShellError(err: unknown) { - reject(err); - }, - onError(error: unknown) { - didError = true; - - console.error(error); - }, - }, - ); - - setTimeout(abort, ABORT_DELAY); - }); -} diff --git a/playground/remix-node/app/root.tsx b/playground/remix-node/app/root.tsx deleted file mode 100644 index 6410ee50a0c..00000000000 --- a/playground/remix-node/app/root.tsx +++ /dev/null @@ -1,75 +0,0 @@ -import { defer, type DataFunctionArgs } from '@remix-run/node'; -import type { MetaFunction } from '@remix-run/react'; -import { Await, Links, LiveReload, Meta, Outlet, Scripts, ScrollRestoration, useLoaderData } from '@remix-run/react'; -import { rootAuthLoader } from '@clerk/remix/ssr.server'; -import { ClerkApp } from '@clerk/remix'; -import { Suspense } from 'react'; - -export const loader = (args: DataFunctionArgs) => { - return rootAuthLoader( - args, - ({ request }) => { - const { user } = request; - const data: Promise<{ foo: string }> = new Promise(r => r({ foo: 'bar' })) - - console.log('root User:', user); - - return defer({ user, data }, { headers: { 'x-clerk': '1' } }) - }, - { loadUser: true }, - ); -}; - -export function headers({ - actionHeaders, - loaderHeaders, - parentHeaders, -}: { - actionHeaders: Headers; - loaderHeaders: Headers; - parentHeaders: Headers; -}) { - console.log(loaderHeaders) - return loaderHeaders -} - -export const meta: MetaFunction = () => { - return [ - { - 'script:ld+json': { - '@context': 'https://schema.org', - '@type': 'Organization', - name: 'Remix', - url: 'https://remix.run', - }, - }, - ]; -}; - -function App() { - const loaderData = useLoaderData(); - - console.log('root: ', { loaderData }); - - return ( - - - - - - - - - {val => (<>Hello {val.foo})} - - - - - - - - - ); -} - -export default ClerkApp(App); diff --git a/playground/remix-node/app/routes/_index.tsx b/playground/remix-node/app/routes/_index.tsx deleted file mode 100644 index 89d55e3f85b..00000000000 --- a/playground/remix-node/app/routes/_index.tsx +++ /dev/null @@ -1,48 +0,0 @@ -import type { LoaderFunction } from '@remix-run/node'; -import { getAuth } from '@clerk/remix/ssr.server'; -import { ClerkLoaded, SignedIn, useUser } from '@clerk/remix'; -import { Link } from '@remix-run/react'; - -export const loader: LoaderFunction = async args => { - return getAuth(args); -}; - -export default function Index() { - const user = useUser(); - console.log({ user }); - - return ( -
-

Welcome to Clerk Remix

- -
-
    -
  • - Clerkjs loaded: - -

    yes

    -
    -
  • -
  • - SignedIn: - Signed In! -
  • -
-
-
- ); -} diff --git a/playground/remix-node/app/routes/protected.tsx b/playground/remix-node/app/routes/protected.tsx deleted file mode 100644 index a2be1484eaf..00000000000 --- a/playground/remix-node/app/routes/protected.tsx +++ /dev/null @@ -1,22 +0,0 @@ -import { UserButton } from '@clerk/remix'; -import { getAuth } from '@clerk/remix/ssr.server'; -import type { LoaderFunction } from '@remix-run/node'; -import { redirect } from '@remix-run/node'; - -export const loader: LoaderFunction = async args => { - const { userId } = await getAuth(args); - if (!userId) { - return redirect('/sign-in'); - } - return {}; -}; - -export default function Protected() { - return ( -
-

Protected route

-

You are signed in!

- -
- ); -} diff --git a/playground/remix-node/app/routes/sign-in.$.tsx b/playground/remix-node/app/routes/sign-in.$.tsx deleted file mode 100644 index 0a62b063905..00000000000 --- a/playground/remix-node/app/routes/sign-in.$.tsx +++ /dev/null @@ -1,13 +0,0 @@ -import { SignIn } from '@clerk/remix'; - -export default function SignInPage() { - return ( -
-

Sign In route

- -
- ); -} diff --git a/playground/remix-node/app/routes/sign-up.$.tsx b/playground/remix-node/app/routes/sign-up.$.tsx deleted file mode 100644 index fea936de5ce..00000000000 --- a/playground/remix-node/app/routes/sign-up.$.tsx +++ /dev/null @@ -1,12 +0,0 @@ -import { SignUp } from '@clerk/remix'; - -export default function SignUpPage() { - return ( -
-

Sign Up route

- -
- ); -} diff --git a/playground/remix-node/package.json b/playground/remix-node/package.json deleted file mode 100644 index acd06b37043..00000000000 --- a/playground/remix-node/package.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "private": true, - "sideEffects": false, - "scripts": { - "build": "remix build", - "dev": "remix dev", - "start": "remix-serve build", - "clean": "rm -rf .cache build", - "yalc:add": "pnpm yalc add -- @clerk/types @clerk/shared @clerk/backend @clerk/remix @clerk/react" - }, - "dependencies": { - "@clerk/backend": "file:.yalc/@clerk/backend", - "@clerk/react": "file:.yalc/@clerk/react", - "@clerk/remix": "file:.yalc/@clerk/remix", - "@clerk/shared": "file:.yalc/@clerk/shared", - "@clerk/types": "file:.yalc/@clerk/types", - "@remix-run/node": "^2.0.0", - "@remix-run/react": "^2.0.0", - "@remix-run/serve": "^2.0.0", - "isbot": "^3.6.5", - "react": "^18.2.0", - "react-dom": "^18.2.0" - }, - "devDependencies": { - "@remix-run/dev": "^2.0.0", - "@types/react": "^18.0.27", - "@types/react-dom": "^18.0.10", - "eslint": "^8.27.0", - "typescript": "^5" - }, - "engines": { - "node": ">=18" - } -} diff --git a/playground/remix-node/public/favicon.ico b/playground/remix-node/public/favicon.ico deleted file mode 100644 index 8830cf6821b..00000000000 Binary files a/playground/remix-node/public/favicon.ico and /dev/null differ diff --git a/playground/remix-node/remix.config.js b/playground/remix-node/remix.config.js deleted file mode 100644 index 5bf7b759726..00000000000 --- a/playground/remix-node/remix.config.js +++ /dev/null @@ -1,5 +0,0 @@ -/** @type {import('@remix-run/dev').AppConfig} */ -module.exports = { - ignoredRouteFiles: ['**/.*'], - serverModuleFormat: 'cjs', -}; diff --git a/playground/remix-node/remix.env.d.ts b/playground/remix-node/remix.env.d.ts deleted file mode 100644 index dcf8c45e1d4..00000000000 --- a/playground/remix-node/remix.env.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -/// -/// diff --git a/playground/remix-node/tsconfig.json b/playground/remix-node/tsconfig.json deleted file mode 100644 index 445467f698c..00000000000 --- a/playground/remix-node/tsconfig.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "include": ["remix.env.d.ts", "**/*.ts", "**/*.tsx"], - "compilerOptions": { - "lib": ["DOM", "DOM.Iterable", "ES2019"], - "isolatedModules": true, - "esModuleInterop": true, - "jsx": "react-jsx", - "moduleResolution": "Node", - "resolveJsonModule": true, - "target": "ES2019", - "strict": true, - "allowJs": true, - "forceConsistentCasingInFileNames": true, - "baseUrl": ".", - "paths": { - "~/*": ["./app/*"] - }, - - // Remix takes care of building everything in `remix build`. - "noEmit": true - } -} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b36f28bcd14..4a5ee28c38d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -880,43 +880,6 @@ importers: specifier: 7.9.1 version: 7.9.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - packages/remix: - dependencies: - '@clerk/backend': - specifier: workspace:^ - version: link:../backend - '@clerk/react': - specifier: workspace:^ - version: link:../react - '@clerk/shared': - specifier: workspace:^ - version: link:../shared - '@clerk/types': - specifier: workspace:^ - version: link:../types - cookie: - specifier: 1.0.2 - version: 1.0.2 - react: - specifier: catalog:peer-react - version: 18.3.1 - react-dom: - specifier: catalog:peer-react - version: 18.3.1(react@18.3.1) - react-router: - specifier: ^6.0.0 - version: 6.30.0(react@18.3.1) - tslib: - specifier: catalog:repo - version: 2.8.1 - devDependencies: - '@remix-run/react': - specifier: ^2.17.1 - version: 2.17.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3) - '@remix-run/server-runtime': - specifier: ^2.17.1 - version: 2.17.1(typescript@5.8.3) - packages/shared: dependencies: '@clerk/types': @@ -2760,7 +2723,7 @@ packages: '@expo/bunyan@4.0.1': resolution: {integrity: sha512-+Lla7nYSiHZirgK+U/uYzsLv/X+HaJienbD5AKX1UQZHYfWaP+9uuQluRB4GrEVWF0GZ7vEVp/jzaOT9k/SQlg==} - engines: {node: '>=0.10.0'} + engines: {'0': node >=0.10.0} '@expo/cli@0.22.26': resolution: {integrity: sha512-I689wc8Fn/AX7aUGiwrh3HnssiORMJtR2fpksX+JIe8Cj/EDleblYMSwRPd0025wrwOV9UN1KM/RuEt/QjCS3Q==} @@ -4272,30 +4235,6 @@ packages: '@types/react': optional: true - '@remix-run/react@2.17.1': - resolution: {integrity: sha512-5MqRK2Z5gkQMDqGfjXSACf/HzvOA+5ug9kiSqaPpK9NX0OF4NlS+cAPKXQWuzc2iLSp6r1RGu8FU1jpZbhsaug==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: ^18.0.0 - react-dom: ^18.0.0 - typescript: ^5.1.0 - peerDependenciesMeta: - typescript: - optional: true - - '@remix-run/router@1.23.0': - resolution: {integrity: sha512-O3rHJzAQKamUz1fvE0Qaw0xSFqsA/yafi2iqeE0pvdFtCO1viYx8QL6f3Ln/aCCTLxs68SLf0KPM9eSeM8yBnA==} - engines: {node: '>=14.0.0'} - - '@remix-run/server-runtime@2.17.1': - resolution: {integrity: sha512-d1Vp9FxX4KafB111vP2E5C1fmWzPI+gHZ674L1drq+N8Bp9U6FBspi7GAZSU5K5Kxa4T6UF+aE1gK6pVi9R8sw==} - engines: {node: '>=18.0.0'} - peerDependencies: - typescript: ^5.1.0 - peerDependenciesMeta: - typescript: - optional: true - '@rolldown/pluginutils@1.0.0-beta.11': resolution: {integrity: sha512-L/gAA/hyCSuzTF1ftlzUSI/IKr2POHsv1Dd78GfqkR83KMNuswWD61JxGV2L7nRwBBBSDr6R1gCkdTmoN7W4ag==} @@ -5811,9 +5750,6 @@ packages: '@vue/test-utils@2.4.6': resolution: {integrity: sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==} - '@web3-storage/multipart-parser@1.0.0': - resolution: {integrity: sha512-BEO6al7BYqcnfX15W2cnGR+Q566ACXAT9UQykORCWW80lmkpWsnEob6zJS1ZVBKsSJC8+7vJkHwlp+lXG1UCdw==} - '@webassemblyjs/ast@1.14.1': resolution: {integrity: sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==} @@ -12303,19 +12239,6 @@ packages: resolution: {integrity: sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==} engines: {node: '>=0.10.0'} - react-router-dom@6.30.0: - resolution: {integrity: sha512-x30B78HV5tFk8ex0ITwzC9TTZMua4jGyA9IUlH1JLQYQTFyxr/ZxwOJq7evg1JX1qGVUcvhsmQSKdPncQrjTgA==} - engines: {node: '>=14.0.0'} - peerDependencies: - react: '>=16.8' - react-dom: '>=16.8' - - react-router@6.30.0: - resolution: {integrity: sha512-D3X8FyH9nBcTSHGdEKurK7r8OYE1kKFn3d/CF+CoxbSHkxU7o37+Uh7eAHRXr6k2tSExXYO++07PeXJtA/dEhQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - react: '>=16.8' - react-router@7.9.1: resolution: {integrity: sha512-pfAByjcTpX55mqSDGwGnY9vDCpxqBLASg0BMNAuMmpSGESo/TaOUG6BllhAtAkCGx8Rnohik/XtaqiYUJtgW2g==} engines: {node: '>=20.0.0'} @@ -13772,9 +13695,6 @@ packages: cpu: [arm64] os: [linux] - turbo-stream@2.4.1: - resolution: {integrity: sha512-v8kOJXpG3WoTN/+at8vK7erSzo6nW6CIaeOvNOkHQVDajfz1ZVeSxCbc6tOH4hrGZW7VUCV0TOXd8CPzYnYkrw==} - turbo-windows-64@2.5.4: resolution: {integrity: sha512-EQUO4SmaCDhO6zYohxIjJpOKRN3wlfU7jMAj3CgcyTPvQR/UFLEKAYHqJOnJtymbQmiiM/ihX6c6W6Uq0yC7mA==} cpu: [x64] @@ -19000,32 +18920,6 @@ snapshots: optionalDependencies: '@types/react': 18.3.25 - '@remix-run/react@2.17.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3)': - dependencies: - '@remix-run/router': 1.23.0 - '@remix-run/server-runtime': 2.17.1(typescript@5.8.3) - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-router: 6.30.0(react@18.3.1) - react-router-dom: 6.30.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - turbo-stream: 2.4.1 - optionalDependencies: - typescript: 5.8.3 - - '@remix-run/router@1.23.0': {} - - '@remix-run/server-runtime@2.17.1(typescript@5.8.3)': - dependencies: - '@remix-run/router': 1.23.0 - '@types/cookie': 0.6.0 - '@web3-storage/multipart-parser': 1.0.0 - cookie: 0.7.2 - set-cookie-parser: 2.6.0 - source-map: 0.7.6 - turbo-stream: 2.4.1 - optionalDependencies: - typescript: 5.8.3 - '@rolldown/pluginutils@1.0.0-beta.11': {} '@rolldown/pluginutils@1.0.0-beta.29': {} @@ -21023,8 +20917,6 @@ snapshots: js-beautify: 1.15.1 vue-component-type-helpers: 2.1.10 - '@web3-storage/multipart-parser@1.0.0': {} - '@webassemblyjs/ast@1.14.1': dependencies: '@webassemblyjs/helper-numbers': 1.13.2 @@ -29078,18 +28970,6 @@ snapshots: react-refresh@0.17.0: {} - react-router-dom@6.30.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): - dependencies: - '@remix-run/router': 1.23.0 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-router: 6.30.0(react@18.3.1) - - react-router@6.30.0(react@18.3.1): - dependencies: - '@remix-run/router': 1.23.0 - react: 18.3.1 - react-router@7.9.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: cookie: 1.0.2 @@ -30776,8 +30656,6 @@ snapshots: turbo-linux-arm64@2.5.4: optional: true - turbo-stream@2.4.1: {} - turbo-windows-64@2.5.4: optional: true diff --git a/renovate.json5 b/renovate.json5 index ebf6b4c1d11..ebe9c99bb34 100644 --- a/renovate.json5 +++ b/renovate.json5 @@ -979,65 +979,6 @@ ], semanticCommitScope: "react-router", }, - { - groupName: "[DEV] minor & patch dependencies", - groupSlug: "remix-dev-minor", - matchFileNames: [ - "packages/remix/package.json", - ], - matchDepTypes: [ - "devDependencies", - ], - matchUpdateTypes: [ - "patch", - "minor", - ], - automerge: true, - semanticCommitScope: "remix", - }, - { - groupName: "[DEV] major dependencies", - groupSlug: "remix-dev-major", - matchFileNames: [ - "packages/remix/package.json", - ], - matchDepTypes: [ - "devDependencies", - ], - matchUpdateTypes: [ - "major", - ], - semanticCommitScope: "remix", - }, - { - groupName: "minor & patch dependencies", - groupSlug: "remix-prod-minor", - matchFileNames: [ - "packages/remix/package.json", - ], - matchDepTypes: [ - "dependencies", - ], - matchUpdateTypes: [ - "patch", - "minor", - ], - semanticCommitScope: "remix", - }, - { - groupName: "major dependencies", - groupSlug: "remix-prod-major", - matchFileNames: [ - "packages/remix/package.json", - ], - matchDepTypes: [ - "dependencies", - ], - matchUpdateTypes: [ - "major", - ], - semanticCommitScope: "remix", - }, { groupName: "[DEV] minor & patch dependencies", groupSlug: "shared-dev-minor", diff --git a/scripts/canary.mjs b/scripts/canary.mjs index 4004f0cb236..be612b96234 100755 --- a/scripts/canary.mjs +++ b/scripts/canary.mjs @@ -15,7 +15,6 @@ const snapshot = `--- '@clerk/shared': patch '@clerk/themes': patch '@clerk/react': patch -'@clerk/remix': patch '@clerk/types': patch '@clerk/expo': patch '@clerk/express': patch diff --git a/scripts/snapshot.mjs b/scripts/snapshot.mjs index 77db63509eb..7d681b16061 100755 --- a/scripts/snapshot.mjs +++ b/scripts/snapshot.mjs @@ -15,7 +15,6 @@ const snapshot = `--- '@clerk/shared': patch '@clerk/themes': patch '@clerk/react': patch -'@clerk/remix': patch '@clerk/types': patch '@clerk/expo': patch '@clerk/express': patch