Skip to content

Latest commit

 

History

History
2312 lines (1499 loc) · 118 KB

CHANGELOG.md

File metadata and controls

2312 lines (1499 loc) · 118 KB

Change Log

5.2.6

Patch Changes

  • Updated dependencies [d6b5006c4]:
    • @clerk/types@4.7.0
    • @clerk/shared@2.3.2

5.2.5

Patch Changes

  • Updated dependencies [1273b04ec]:
    • @clerk/types@4.6.1
    • @clerk/shared@2.3.1

5.2.4

Patch Changes

  • Updated dependencies [4ec3f63e2]:
    • @clerk/shared@2.3.0

5.2.3

Patch Changes

  • Update SignUpButton and SignInButton to respect forceRedirect and fallbackRedirect props. Previously, these were getting ignored and successful completions of the flows would fallback to the default redirect URL. (#3508) by @BRKalow

  • Updated dependencies [86a27f693, 02bed2e00, 73e5d61e2, b8e46328d]:

    • @clerk/shared@2.2.2
    • @clerk/types@4.6.0

5.2.2

Patch Changes

  • Updated dependencies [4beb00672]:
    • @clerk/types@4.5.1

5.2.1

Patch Changes

  • With the next major release, NextJS@15 will depend on react and react-dom v19, which is still in beta. We are updating our peer dependencies accordingly in order to accept react and react-dom @ 19.0.0-beta (#3428) by @nikosdouvlis

  • Updated dependencies [ff31f7255, 0e48fc210]:

    • @clerk/shared@2.2.1

5.2.0

Minor Changes

  • Add support for GoogleOneTap. New APIs listed: (#3392) by @panteliselef

    React component

    • <GoogleOneTap/>

    Customize the UX of the prompt

    <GoogleOneTap
      cancelOnTapOutside={false}
      itpSupport={false}
      fedCmSupport={false}
    />

    Use the component from with Vanilla JS

    • Clerk.openGoogleOneTap(props: GoogleOneTapProps)
    • Clerk.closeGoogleOneTap()

    Low level APIs for custom flows

    • await Clerk.authenticateWithGoogleOneTap({ token: 'xxxx'})
    • await Clerk.handleGoogleOneTapCallback()

    We recommend using this two methods together in order and let Clerk to perform the correct redirections.

    google.accounts.id.initialize({
      callback: async (response) => {
        const signInOrUp = await Clerk.authenticateWithGoogleOneTap({
          token: response.credential,
        });
        await Clerk.handleGoogleOneTapCallback(signInOrUp, {
          signInForceRedirectUrl: window.location.href,
        });
      },
    });

    In case you want to handle the redirection and session management yourself you can do so like this

    google.accounts.id.initialize({
      callback: async (response) => {
        const signInOrUp = await Clerk.authenticateWithGoogleOneTap({
          token: response.credential,
        });
        if (signInOrUp.status === "complete") {
          await Clerk.setActive({
            session: signInOrUp.createdSessionId,
          });
        }
      },
    });

Patch Changes

5.1.0

Minor Changes

  • Replace mount with open for GoogleOneTap. New api is __experimental_openGoogleOneTap. (#3379) by @panteliselef

Patch Changes

  • Updated dependencies [3d790d5ea]:
    • @clerk/types@4.4.0

5.0.7

Patch Changes

  • Updated dependencies [eae0a32d5]:
    • @clerk/types@4.3.1

5.0.6

Patch Changes

  • Updated dependencies [ec84d51e7]:
    • @clerk/shared@2.1.1

5.0.5

Patch Changes

  • Respect the signInForceRedirectUrl, signInFallbackRedirectUrl, signUpForceRedirectUrl and signUpFallbackRedirectUrl props passed to SignInButton, SignUpButton and the low-level window.Clerk.buildSignInUrl & window.Clerk.buildSignUpUrl methods. These props allow you to control the redirect behavior of the SignIn and SignUp components. For more information, refer to the Custom Redirects guide. (#3361) by @nikosdouvlis

  • Updated dependencies [94197710a, b27ca8366]:

    • @clerk/types@4.3.0
    • @clerk/shared@2.1.0

5.0.4

Patch Changes

  • Rename local eslint-config-custom package to @clerk/eslint-config-custom to avoid conflicts with previously published package. Removes eslint-config-custom from @clerk/clerk-react's dependencies, as it should only be a development dependency. (#3307) by @BRKalow

  • The following are all internal changes and not relevant to any end-user: (#3341) by @LauraBeatris

    Add telemetry events for useSignIn, useSignUp, useOrganizations and useOrganizationList

  • Updated dependencies [1662aaae9, f70c885f7, f5804a225]:

    • @clerk/shared@2.0.2
    • @clerk/types@4.2.1

5.0.3

Patch Changes

  • Remove type from clerkjs script attributes that prevents the satellite apps from function properly. (#3304) by @panteliselef

5.0.2

Patch Changes

5.0.1

Patch Changes

  • Updated dependencies [956d8792f]:
    • @clerk/types@4.1.0

5.0.0

Major Changes

  • 2a67f729d: Replace the signOutCallback prop on the <SignOutButton /> with redirectUrl. This aligns the API surface with other UI components provided by @clerk/clerk-react.

    If you previously used the signOutCallback prop to navigate to another page, you can migrate as shown below.

    Before:

    import { SignOutButton } from "@clerk/clerk-react";
    
    export const Signout = () => {
      return (
        <SignOutButton
          signOutCallback={() => {
            window.location.href = "/your-path";
          }}
        >
          <button>Sign Out</button>
        </SignOutButton>
      );
    };

    After:

    import { SignOutButton } from "@clerk/clerk-react";
    
    export const Signout = () => {
      return (
        <SignOutButton redirectUrl="/your-path">
          <button>Sign Out</button>
        </SignOutButton>
      );
    };
  • c2a090513: Change the minimal Node.js version required by Clerk to 18.17.0.

  • deac67c1c: Drop default exports from all packages. Migration guide:

    • use import { Clerk } from '@clerk/backend';
    • use import { clerkInstance } from '@clerk/clerk-sdk-node';
    • use import { Clerk } from '@clerk/clerk-sdk-node';
    • use import { Clerk } from '@clerk/clerk-js';
    • use import { Clerk } from '@clerk/clerk-js/headless';
    • use import { IsomorphicClerk } from '@clerk/clerk-react'
  • 83e9d0846: Drop deprecations. Migration steps:

    • use EmailLinkError instead of MagicLinkError
    • use isEmailLinkError instead of isMagicLinkError
    • use EmailLinkErrorCode instead of MagicLinkErrorCode
    • use useEmailLink instead of useMagicLink
    • use buildRequestUrl from @clerk/backend instead of getRequestUrl from @clerk/shared
    • use OrganizationProvider instead of OrganizationContext
    • use userMemberships instead of organizationList from useOrganizationList
  • 7f833da9e: Drop deprecations. Migration steps:

    • use publishableKey instead of frontendApi
    • use Clerk.handleEmailLinkVerification() instead of Clerk.handleMagicLinkVerification()
    • use isEmailLinkError instead of isMagicLinkError
    • use EmailLinkErrorCode instead of MagicLinkErrorCode
    • use useEmailLink instead of useMagicLink
    • drop orgs jwt claim from session token
    • use ExternalAccount.imageUrl instead of ExternalAccount.avatarUrl
    • use Organization.imageUrl instead of Organization.logoUrl
    • use User.imageUrl instead of User.profileImageUrl
    • use OrganizationMembershipPublicUserData.imageUrl instead of OrganizationMembershipPublicUserData.profileImageUrl
    • use useOrganizationList instead of useOrganizations
    • use userProfileProps instead of userProfile in Appearance
    • use Clerk.setActive() instead of Clerk.setSession()
    • drop password param in User.update()
    • use afterSelectOrganizationUrl instead of afterSwitchOrganizationUrl in OrganizationSwitcher
    • drop Clerk.experimental_canUseCaptcha / Clerk.Clerk.experimental_captchaSiteKey / Clerk.experimental_captchaURL (were meant for internal use)
    • use User.getOrganizationMemberships() instead of Clerk.getOrganizationMemberships()
    • drop lastOrganizationInvitation / lastOrganizationMember from Clerk emitted events
    • drop Clerk.__unstable__invitationUpdate / Clerk.__unstable__membershipUpdate
    • drop support for string param in Organization.create()
    • use Organization.getInvitations() instead of Organization.getPendingInvitations()
    • use pageSize instead of limit in OrganizationMembership.retrieve()
    • use initialPage instead of offset in OrganizationMembership.retrieve()
    • drop lastOrganizationInvitation / lastOrganizationMember from ClerkProvider
    • use invitations instead of invitationList in useOrganization
    • use memberships instead of membershipList in useOrganization
    • use redirectUrl instead of redirect_url in User.createExternalAccount()
    • use signature instead of generatedSignature in Signup.attemptWeb3WalletVerification()
  • 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.

    // Without path or routing props, an error with be thrown
    <UserProfile />
    <CreateOrganization />
    <OrganizationProfile />
    <SignIn />
    <SignUp />
    
    // Alternative #1
    <UserProfile path="/whatever"/>
    <CreateOrganization path="/whatever"/>
    <OrganizationProfile path="/whatever"/>
    <SignIn path="/whatever"/>
    <SignUp path="/whatever"/>
    
    // Alternative #2
    <UserProfile routing="hash_or_virtual"/>
    <CreateOrganization routing="hash_or_virtual"/>
    <OrganizationProfile routing="hash_or_virtual"/>
    <SignIn routing="hash_or_virtual"/>
    <SignUp routing="hash_or_virtual"/>
  • 7bffc47cb: Drop Clerk.isReady(). Use Clerk.loaded instead.

  • 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
  • 8aea39cd6: - Introduce @clerk/clerk-react/errors and @clerk/clerk-react/internal subpath exports to expose some internal utilities. Eg

    // 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 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.
  • 5f58a2274: Remove hashing and third-party cookie functionality related to development instance session syncing in favor of URL-based session syncing with query parameters.

  • 5f58a2274: - buildUrlWithAuth no longer accepts an options argument.

  • 52ff8fe6b: Upgrade React version to >=18 and add react-dom as peer dependency to fix issues with vite & rollup building.

  • ab4eb56a5: Drop redirectToHome redirect method in favour of redirectToAfterSignUp or redirectToAfterSignIn.

    When the <SignIn/> and <SignUp/> components are rendered while a user is already logged in, they will now redirect to the configured afterSignIn and afterSignUp URLs, respectively. Previously, the redirect URL was set to the home URL configured in the dashboard.

  • 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.

  • f5fb63cf1: Consolidate afterSignOutOneUrl & afterSignOutAllUrl to afterSignOutUrl and drop usage of Dashboard settings in ClerkJS components. The Dashboard settings should only apply to the Account Portal application.

  • 477170962: Drop deprecations. Migration steps:

    • drop formFieldLabel__emailAddress_phoneNumber from localization keys
    • drop formFieldLabel__phoneNumber_username from localization keys
    • drop formFieldLabel__emailAddress_phoneNumber_username from localization keys
    • drop formFieldInputPlaceholder__emailAddress_phoneNumber from localization keys
    • drop formFieldInputPlaceholder__phoneNumber_username from localization keys
    • drop formFieldInputPlaceholder__emailAddress_phoneNumber_username from localization keys
    • use title__connectionFailed instead of title__conectionFailed from localization keys
    • use actionLabel__connectionFailed instead of actionLabel__conectionFailed from localization keys
    • use headerTitle__members instead of headerTitle__active from localization keys
    • use headerTitle__invitations instead of headerTitle__invited from localization keys
    • drop createOrganization.subtitle from localization keys
    • use deDE instead of deDe localization from @clerk/localizations
  • 3c4209068: Drop deprecations. Migration steps:

    • use setActive instead of setSession from useSessionList | useSignUp | useSignIn hooks
    • use publishableKey instead of frontendApi
    • use handleEmailLinkVerification instead of handleMagicLinkVerification from IsomorphicClerk
    • use isEmailLinkError instead of isMagicLinkError
    • use EmailLinkErrorCode instead of MagicLinkErrorCode
    • use useEmailLink instead of useMagicLink
  • 844847e0b: Align return types for redirectTo* methods in ClerkJS [SDK-1037]

    Breaking Changes:

    • redirectToUserProfile now returns Promise<unknown> instead of void
    • redirectToOrganizationProfile now returns Promise<unknown> instead of void
    • redirectToCreateOrganization now returns Promise<unknown> instead of void
    • redirectToHome now returns Promise<unknown> instead of void

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 <UserButton /> component will set the default value of the userProfileMode prop to 'navigation' if the userProfileUrl prop is provided.
    • The <OrganizationSwitcher /> component will have the organizationProfileMode and createOrganizationMode props assigned with 'navigation' by default if the organizationProfileUrl and createOrganizationUrl props are filled accordingly.
  • ff08fe237: Introduce experimental support for Google One Tap

    • React Component <__experimental_GoogleOneTap/>
    • JS clerk.__experimental_mountGoogleOneTap(node,props)
  • c9e0f68af: Fix @clerk/clerk-react bundle output to resolve issues with vite / rollup ESM module imports. We have also used the bundle output to export a single index.ts and dropped the unnecessary published files / folders (eg __tests__).

  • fe2607b6f: Remove MembershipRole. The type MembershipRole would always include the old role keys admin, basic_member, guest_member. If developers still depend on them after the introduction of custom roles, the can provide them as their custom types for authorization.

    // clerk.d.ts
    interface ClerkAuthorization {
      permission: "";
      role: "admin" | "basic_member" | "guest_member";
    }
  • c7e6d00f5: Experimental support for <Gate/> with role checks.

  • 4bb57057e: Breaking Changes:

    • Drop isLegacyFrontendApiKey from @clerk/shared
    • Drop default exports from @clerk/clerk-js
      • on headless Clerk type
      • on ui and ui.retheme Portal
    • Use isProductionFromSecretKey instead of isProductionFromApiKey
    • Use isDevelopmentFromSecretKey instead of isDevelopmentFromApiKey

    Changes:

    • Rename HeadlessBrowserClerkConstrutor / HeadlessBrowserClerkConstructor (typo)
    • Use isomorphicAtob / isomorhpicBtoa to replace base-64 in @clerk/expo
    • Refactor merging build-time and runtime props in @clerk/backend clerk client
    • Drop node-fetch dependency from @clerk/backend
    • Drop duplicate test in @clerk/backend
  • 2e4a43017: Update @clerk/clerk-js and @clerk/clerk-react to support the following examples:

    Clerk.signOut({ redirectUrl: '/' })
    
    <SignOutButton redirectUrl='/' />
    // uses Clerk.signOut({ redirectUrl: '/' })
    <UserButton afterSignOutUrl='/after' />
    // uses Clerk.signOut({ redirectUrl: '/after' })
    <ClerkProvider afterSignOutUrl='/after' />
    // uses Clerk.signOut({ redirectUrl: '/after' })
  • f98e480b1: Speed up loading of clerk-js by using a <script/> tag when html is generated. This is supported during SSR, SSG in

    • Next.js Pages Router
    • Next.js App Router
  • 46040a2f3: Introduce Protect for authorization. Changes in public APIs:

    • Rename Gate to Protect
    • Support for permission checks. (Previously only roles could be used)
    • Remove the experimental tags and prefixes
    • Drop some from the has utility and Protect. Protect now accepts a condition prop where a function is expected with the has being exposed as the param.
    • Protect can now be used without required props. In this case behaves as <SignedIn>, if no authorization props are passed.
    • has will throw an error if neither permission or role is passed.
    • auth().protect() for Nextjs App Router. Allow per page protection in app router. This utility will automatically throw a 404 error if user is not authorized or authenticated.
      • inside a page or layout file it will render the nearest not-found component set by the developer
      • inside a route handler it will return empty response body with a 404 status code
  • 18c0d015d: Pass environment into sdkMetadata in order to detect if production clerk-js is used by other sdks in dev mode. When it is log dev warning from clerk-js.

  • d6a7ea61a: Update the TypeScript types of <ClerkProvider />. If you use the routerPush prop you're now required to also provide the routerReplace prop (or other way around). You can also not provide them at all since both props are optional.

  • db2d82901: Apply the following changes to components with routing props:

    • default is routing="path" and path prop is required to be set via env or context
    • when routing="hash" or routing="virtual" is set the implicit (via env or context) path option is ignored
    • when routing="hash" or routing="virtual" then path prop is not allowed to be set

    Examples of components with routing props:

    • <CreateOrganization />
    • <OrganizationProfile />
    • <SignIn />
    • <SignUp />
    • <UserProfile />

Patch Changes

  • 6ac9e717a: Properly fire onLoad event when clerk-js is already loaded.

  • 2de442b24: Rename beta-v5 to beta

  • ee57f21ac: Export EmailLinkErrorCode from /errors module

  • 2e77cd737: Set correct information on required Node.js and React versions in README

  • ae3a6683a: Ignore .test.ts files for the build output. Should result in smaller bundle size.

  • 6e54b1b59: Sync IsomorphicClerk with the clerk singleton and the LoadedClerk interface. IsomorphicClerk now extends from LoadedClerk.

  • 8cc45d2af: Allow dynamic values components props, even if these values change after the components are rendered. For example, a SignIn component with a redirectUrl prop passed in will always respect the latest value of redirectUrl.

  • 797e327e0: Replace internal logic of determining package tag & major version with semver in order to have a more robust solution

  • c86f73be3: Introducing stricter types for custom pages for UserProfile and OrganizationProfile.

  • 1affbb22a: Replace semver with custom regex in versionSelector

  • 75ea300bc: Add useAssertWrappedByClerkProvider to internal code. If you use hooks like useAuth outside of the <ClerkProvider /> context an error will be thrown. For example:

    @clerk/clerk-react: useAuth can only be used within the <ClerkProvider /> component
  • e9841dd91: Fixes error thrown for missing path & routing props when path was passed from context. This change affects components <SignIn />, <SignUp /> from @clerk/nextjs and @clerk/remix.

  • 59f9a7296: Fixes error when path is passed from context and a routing strategy other than path is passed as a prop. This change affects components <SignIn />, <SignUp /> from @clerk/nextjs and @clerk/remix.

  • e0e79b4fe: Use the errorThrower shared utility when throwing errors

  • fb794ce7b: Support older iOS 13.3 and 13.4 mobile devices

  • 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.

  • Updated dependencies [743c4d204]

  • Updated dependencies [4b8bedc66]

  • Updated dependencies [1db1f4068]

  • Updated dependencies [c2a090513]

  • Updated dependencies [0d0b1d89a]

  • Updated dependencies [1834a3ee4]

  • Updated dependencies [896cb6104]

  • Updated dependencies [64d3763ec]

  • Updated dependencies [8350109ab]

  • Updated dependencies [1dc28ab46]

  • Updated dependencies [83e9d0846]

  • Updated dependencies [d37d44a68]

  • Updated dependencies [fe356eebd]

  • Updated dependencies [791c49807]

  • Updated dependencies [ea4933655]

  • Updated dependencies [7f6a64f43]

  • Updated dependencies [afec17953]

  • Updated dependencies [0699fa496]

  • Updated dependencies [a68eb3083]

  • Updated dependencies [2de442b24]

  • Updated dependencies [0293f29c8]

  • Updated dependencies [5f58a2274]

  • Updated dependencies [9180c8b80]

  • Updated dependencies [db18787c4]

  • Updated dependencies [7f833da9e]

  • Updated dependencies [ef2325dcc]

  • Updated dependencies [fc3ffd880]

  • Updated dependencies [840636a14]

  • Updated dependencies [bab2e7e05]

  • Updated dependencies [71663c568]

  • Updated dependencies [492b8a7b1]

  • Updated dependencies [2352149f6]

  • Updated dependencies [e5c989a03]

  • Updated dependencies [ff08fe237]

  • Updated dependencies [7ecd6f6ab]

  • Updated dependencies [12f3c5c55]

  • Updated dependencies [244de5ea3]

  • Updated dependencies [c776f86fb]

  • Updated dependencies [d9f265fcb]

  • Updated dependencies [7bffc47cb]

  • Updated dependencies [9737ef510]

  • Updated dependencies [fafa76fb6]

  • Updated dependencies [1f650f30a]

  • Updated dependencies [97407d8aa]

  • Updated dependencies [2a22aade8]

  • Updated dependencies [69ce3e185]

  • Updated dependencies [78fc5eec0]

  • Updated dependencies [a9fe242be]

  • Updated dependencies [5f58a2274]

  • Updated dependencies [6a33709cc]

  • Updated dependencies [52ff8fe6b]

  • Updated dependencies [f77e8cdbd]

  • Updated dependencies [8b466a9ba]

  • Updated dependencies [fe2607b6f]

  • Updated dependencies [c7e6d00f5]

  • Updated dependencies [8cc45d2af]

  • Updated dependencies [663243220]

  • Updated dependencies [c6a5e0f5d]

  • Updated dependencies [4edb77632]

  • Updated dependencies [ab4eb56a5]

  • Updated dependencies [a9fe242be]

  • Updated dependencies [5c239d973]

  • Updated dependencies [97407d8aa]

  • Updated dependencies [12962bc58]

  • Updated dependencies [4bb57057e]

  • Updated dependencies [d4ff346dd]

  • Updated dependencies [7644b7472]

  • Updated dependencies [2ec9f6b09]

  • Updated dependencies [2e4a43017]

  • Updated dependencies [5aab9f04a]

  • Updated dependencies [46040a2f3]

  • Updated dependencies [f00fd2dfe]

  • Updated dependencies [8daf8451c]

  • Updated dependencies [75ea300bc]

  • Updated dependencies [9a1fe3728]

  • Updated dependencies [7f751c4ef]

  • Updated dependencies [f5d55bb1f]

  • Updated dependencies [18c0d015d]

  • Updated dependencies [0d1052ac2]

  • Updated dependencies [d30ea1faa]

  • Updated dependencies [7886ba89d]

  • Updated dependencies [1fd2eff38]

  • Updated dependencies [9a1fe3728]

  • Updated dependencies [5471c7e8d]

  • Updated dependencies [f540e9843]

  • Updated dependencies [477170962]

  • Updated dependencies [38d8b3e8a]

  • Updated dependencies [be991365e]

  • Updated dependencies [8350f73a6]

  • Updated dependencies [d6a7ea61a]

  • Updated dependencies [e0e79b4fe]

  • Updated dependencies [41ae1d2f0]

  • Updated dependencies [fb794ce7b]

  • Updated dependencies [48ca40af9]

  • Updated dependencies [94519aa33]

  • Updated dependencies [ebf9be77f]

  • Updated dependencies [008ac4217]

  • Updated dependencies [40ac4b645]

  • Updated dependencies [6f755addd]

  • Updated dependencies [429d030f7]

  • Updated dependencies [844847e0b]

  • Updated dependencies [6eab66050]

    • @clerk/shared@2.0.0
    • @clerk/types@4.0.0

5.0.0-beta.41

Patch Changes

  • Updated dependencies [f00fd2dfe]:
    • @clerk/types@4.0.0-beta.30

5.0.0-beta.40

Patch Changes

  • Updated dependencies [bab2e7e05]:
    • @clerk/shared@2.0.0-beta.23
    • @clerk/types@4.0.0-beta.29

5.0.0-beta.39

Minor Changes

  • Introduce experimental support for Google One Tap (#3176) by @panteliselef

    • React Component <__experimental_GoogleOneTap/>
    • JS clerk.__experimental_mountGoogleOneTap(node,props)
  • Speed up loading of clerk-js by using a <script/> tag when html is generated. (#3156) by @panteliselef

    This is supported during SSR, SSG in

    • Next.js Pages Router
    • Next.js App Router

Patch Changes

5.0.0-beta.38

Patch Changes

  • Updated dependencies [94519aa33]:
    • @clerk/types@4.0.0-beta.27

5.0.0-beta.37

Patch Changes

  • Updated dependencies [0699fa496]:
    • @clerk/types@4.0.0-beta.26

5.0.0-beta.36

Patch Changes

  • Updated dependencies [2352149f6]:
    • @clerk/types@4.0.0-beta.25

5.0.0-beta.35

Patch Changes

5.0.0-beta.34

Patch Changes

5.0.0-beta.33

Patch Changes

  • Updated dependencies [8350109ab]:
    • @clerk/shared@2.0.0-beta.20

5.0.0-beta.32

Patch Changes

  • Updated dependencies [afec17953]:
    • @clerk/types@4.0.0-beta.22

5.0.0-beta.31

Patch Changes

5.0.0-beta.30

Patch Changes

  • Introducing stricter types for custom pages for UserProfile and OrganizationProfile. (#2939) by @panteliselef

  • Updated dependencies [008ac4217]:

    • @clerk/types@4.0.0-beta.20

5.0.0-beta.29

Patch Changes

  • Updated dependencies [8350f73a6]:
    • @clerk/shared@2.0.0-beta.19

5.0.0-beta.28

Patch Changes

  • Updated dependencies [fafa76fb6]:
    • @clerk/types@4.0.0-beta.19

5.0.0-beta.27

Patch Changes

5.0.0-beta.26

Minor Changes

  • Pass environment into sdkMetadata in order to detect if production clerk-js is used by other sdks in dev mode. When it is log dev warning from clerk-js. (#2802) by @panteliselef

Patch Changes

  • Updated dependencies [18c0d015d]:
    • @clerk/types@4.0.0-beta.18

5.0.0-beta.25

Patch Changes

  • Updated dependencies [fe356eebd]:
    • @clerk/types@4.0.0-beta.17

5.0.0-beta.24

Patch Changes

  • Updated dependencies [1834a3ee4]:
    • @clerk/shared@2.0.0-beta.17

5.0.0-beta.23

Patch Changes

  • Updated dependencies [db18787c4]:
    • @clerk/shared@2.0.0-beta.16

5.0.0-beta.22

Patch Changes

  • Updated dependencies [6eab66050]:
    • @clerk/shared@2.0.0-beta.15

5.0.0-beta.21

Patch Changes

  • Updated dependencies [12f3c5c55]:
    • @clerk/shared@2.0.0-beta.14

5.0.0-beta.20

Patch Changes

  • Updated dependencies [5c239d973]:
    • @clerk/types@4.0.0-beta.16

5.0.0-beta.19

Patch Changes

  • Rename beta-v5 to beta by @nikosdouvlis

  • Updated dependencies [2de442b24]:

    • @clerk/shared@2.0.0-beta.13
    • @clerk/types@4.0.0-beta.15

5.0.0-beta-v5.18

Patch Changes

5.0.0-beta-v5.17

Patch Changes

  • Updated dependencies [d4ff346dd, 7886ba89d]:
    • @clerk/shared@2.0.0-beta-v5.11
    • @clerk/types@4.0.0-beta-v5.13

5.0.0-alpha-v5.16

Minor Changes

  • Apply the following changes to components with routing props: (#2543) by @dimkl

    • default is routing="path" and path prop is required to be set via env or context
    • when routing="hash" or routing="virtual" is set the implicit (via env or context) path option is ignored
    • when routing="hash" or routing="virtual" then path prop is not allowed to be set

    Examples of components with routing props:

    • <CreateOrganization />
    • <OrganizationProfile />
    • <SignIn />
    • <SignUp />
    • <UserProfile />

Patch Changes

  • Allow dynamic values components props, even if these values change after the components are rendered. For example, a SignIn component with a redirectUrl prop passed in will always respect the latest value of redirectUrl. (#2515) by @nikosdouvlis

  • Updated dependencies [8cc45d2af]:

    • @clerk/shared@2.0.0-alpha-v5.10

5.0.0-alpha-v5.15

Patch Changes

  • Fixes error thrown for missing path & routing props when path was passed from context. (#2514) by @dimkl

    This change affects components <SignIn />, <SignUp /> from @clerk/nextjs and @clerk/remix.

  • Fixes error when path is passed from context and a routing strategy other than path is passed as a prop. (#2530) by @octoper

    This change affects components <SignIn />, <SignUp /> from @clerk/nextjs and @clerk/remix.

5.0.0-alpha-v5.14

Patch Changes

5.0.0-alpha-v5.13

Patch Changes

  • Updated dependencies [7ecd6f6ab]:
    • @clerk/shared@2.0.0-alpha-v5.8

5.0.0-alpha-v5.12

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) by @octoper

    // Without path or routing props, an error with be thrown
    <UserProfile />
    <CreateOrganization />
    <OrganizationProfile />
    <SignIn />
    <SignUp />
    
    // Alternative #1
    <UserProfile path="/whatever"/>
    <CreateOrganization path="/whatever"/>
    <OrganizationProfile path="/whatever"/>
    <SignIn path="/whatever"/>
    <SignUp path="/whatever"/>
    
    // Alternative #2
    <UserProfile routing="hash_or_virtual"/>
    <CreateOrganization routing="hash_or_virtual"/>
    <OrganizationProfile routing="hash_or_virtual"/>
    <SignIn routing="hash_or_virtual"/>
    <SignUp routing="hash_or_virtual"/>
  • Consolidate afterSignOutOneUrl & afterSignOutAllUrl to afterSignOutUrl and drop usage of Dashboard settings in ClerkJS components. The Dashboard settings should only apply to the Account Portal application. (#2414) by @dimkl

Minor Changes

  • Remove MemberRole TypeMemberRole would always include the old role keys admin, member, guest_member. (#2388) by @panteliselef

    If developers still depend on them after the introduction of custom roles, the can provide them as their custom types for authorization.

    // clerk.d.ts
    export {};
    
    interface ClerkAuthorization {
      permission: "";
      role: "admin" | "basic_member" | "guest_member";
    }
  • Update @clerk/clerk-js and @clerk/clerk-react to support the following examples: (#2412) by @dimkl

    Clerk.signOut({ redirectUrl: '/' })
    
    <SignOutButton redirectUrl='/' />
    // uses Clerk.signOut({ redirectUrl: '/' })
    <UserButton afterSignOutUrl='/after' />
    // uses Clerk.signOut({ redirectUrl: '/after' })
    <ClerkProvider afterSignOutUrl='/after' />
    // uses Clerk.signOut({ redirectUrl: '/after' })

Patch Changes

5.0.0-alpha-v5.11

Major Changes

  • Replace the signOutCallback prop on the <SignOutButton /> with redirectUrl. This aligns the API surface with other UI components provided by @clerk/clerk-react. (#2348) by @LekoArts

    If you previously used the signOutCallback prop to navigate to another page, you can migrate as shown below.

    Before:

    import { SignOutButton } from "@clerk/clerk-react";
    
    export const Signout = () => {
      return (
        <SignOutButton
          signOutCallback={() => {
            window.location.href = "/your-path";
          }}
        >
          <button>Sign Out</button>
        </SignOutButton>
      );
    };

    After:

    import { SignOutButton } from "@clerk/clerk-react";
    
    export const Signout = () => {
      return (
        <SignOutButton redirectUrl="/your-path">
          <button>Sign Out</button>
        </SignOutButton>
      );
    };
  • Remove hashing and third-party cookie functionality related to development instance session syncing in favor of URL-based session syncing with query parameters. (#2367) by @tmilewski

    • buildUrlWithAuth no longer accepts an options argument. (#2367) by @tmilewski

Patch Changes

5.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) by @dimkl

      // 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 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.

  • Drop redirectToHome redirect method in favour of redirectToAfterSignUp or redirectToAfterSignIn. (#2251) by @octoper

    When the <SignIn/> and <SignUp/> components are rendered while a user is already logged in, they will now redirect to the configured afterSignIn and afterSignUp URLs, respectively. Previously, the redirect URL was set to the home URL configured in the dashboard.

  • Align return types for redirectTo* methods in ClerkJS [SDK-1037] (#2316) by @tmilewski

    Breaking Changes:

    • redirectToUserProfile now returns Promise<unknown> instead of void
    • redirectToOrganizationProfile now returns Promise<unknown> instead of void
    • redirectToCreateOrganization now returns Promise<unknown> instead of void
    • redirectToHome now returns Promise<unknown> instead of void

Minor Changes

  • Introduce Protect for authorization. (#2170) by @panteliselef

    Changes in public APIs:

    • Rename Gate to Protect
    • Support for permission checks. (Previously only roles could be used)
    • Remove the experimental tags and prefixes
    • Drop some from the has utility and Protect. Protect now accepts a condition prop where a function is expected with the has being exposed as the param.
    • Protect can now be used without required props. In this case behaves as <SignedIn>, if no authorization props are passed.
    • has will throw an error if neither permission or role is passed.
    • auth().protect() for Nextjs App Router. Allow per page protection in app router. This utility will automatically throw a 404 error if user is not authorized or authenticated.
      • inside a page or layout file it will render the nearest not-found component set by the developer
      • inside a route handler it will return empty response body with a 404 status code

Patch Changes

  • Add useAssertWrappedByClerkProvider to internal code. If you use hooks like useAuth outside of the <ClerkProvider /> context an error will be thrown. For example: (#2299) by @tmilewski

    @clerk/clerk-react: useAuth can only be used within the <ClerkProvider /> component
  • Updated dependencies [896cb6104, 69ce3e185, ab4eb56a5, 46040a2f3, 75ea300bc, 844847e0b]:

    • @clerk/shared@2.0.0-alpha-v5.6
    • @clerk/types@4.0.0-alpha-v5.10

5.0.0-alpha-v5.9

Major Changes

  • Drop Clerk.isReady(). Use Clerk.loaded instead. (#2294) by @dimkl

Patch Changes

5.0.0-alpha-v5.8

Patch Changes

  • Set correct information on required Node.js and React versions in README (#2264) by @LekoArts

  • Updated dependencies [6a33709cc, d30ea1faa]:

    • @clerk/types@4.0.0-alpha-v5.8
    • @clerk/shared@2.0.0-alpha-v5.5

5.0.0-alpha-v5.7

Minor Changes

  • Fix @clerk/clerk-react bundle output to resolve issues with vite / rollup ESM module imports. (#2216) by @dimkl

    We have also used the bundle output to export a single index.ts and dropped the unnecessary published files / folders (eg __tests__).

  • Update the TypeScript types of <ClerkProvider />. If you use the routerPush prop you're now required to also provide the routerReplace prop (or other way around). You can also not provide them at all since both props are optional. (#2227) by @dimkl

Patch Changes

  • Sync IsomorphicClerk with the clerk singleton and the LoadedClerk interface. IsomorphicClerk now extends from LoadedClerk. (#2226) by @panteliselef

  • Updated dependencies [4b8bedc66, c776f86fb, d6a7ea61a]:

    • @clerk/shared@2.0.0-alpha-v5.4
    • @clerk/types@4.0.0-alpha-v5.7

5.0.0-alpha-v5.6

Patch Changes

5.0.0-alpha-v5.5

Patch Changes

  • Updated dependencies [12962bc58]:
    • @clerk/types@4.0.0-alpha-v5.5

5.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) by @octoper

    • The <UserButton /> component will set the default value of the userProfileMode prop to 'navigation' if the userProfileUrl prop is provided.

    • The <OrganizationSwitcher /> 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]:
    • @clerk/types@4.0.0-alpha-v5.4

5.0.0-alpha-v5.3

Major Changes

  • Upgrade React version to >=18 and add react-dom as peer dependency (#2164) by @dimkl

    to fix issues with vite & rollup building.

Minor Changes

  • Breaking Changes: (#2169) by @dimkl

    • Drop isLegacyFrontendApiKey from @clerk/shared
    • Drop default exports from @clerk/clerk-js
      • on headless Clerk type
      • on ui and ui.retheme Portal
    • Use isProductionFromSecretKey instead of isProductionFromApiKey
    • Use isDevelopmentFromSecretKey instead of isDevelopmentFromApiKey

    Changes:

    • Rename HeadlessBrowserClerkConstrutor / HeadlessBrowserClerkConstructor (typo)
    • Use isomorphicAtob / isomorhpicBtoa to replace base-64 in @clerk/expo
    • Refactor merging build-time and runtime props in @clerk/backend clerk client
    • Drop node-fetch dependency from @clerk/backend
    • Drop duplicate test in @clerk/backend

Patch Changes

5.0.0-alpha-v5.2

Major Changes

  • Change the minimal Node.js version required by Clerk to 18.17.0. (#2162) by @dimkl

Patch Changes

  • Updated dependencies [c2a090513]:
    • @clerk/shared@2.0.0-alpha-v5.2
    • @clerk/types@4.0.0-alpha-v5.2

5.0.0-alpha-v5.1

Major Changes

  • Drop default exports from all packages. Migration guide: (#2150) by @dimkl

    • use import { Clerk } from '@clerk/backend';
    • use import { clerkInstance } from '@clerk/clerk-sdk-node';
    • use import { Clerk } from '@clerk/clerk-sdk-node';
    • use import { Clerk } from '@clerk/clerk-js';
    • use import { Clerk } from '@clerk/clerk-js/headless';
    • use import { IsomorphicClerk } from '@clerk/clerk-react'
  • Drop deprecations. Migration steps: (#2102) by @dimkl

    • use EmailLinkError instead of MagicLinkError
    • use isEmailLinkError instead of isMagicLinkError
    • use EmailLinkErrorCode instead of MagicLinkErrorCode
    • use useEmailLink instead of useMagicLink
    • use buildRequestUrl from @clerk/backend instead of getRequestUrl from @clerk/shared
    • use OrganizationProvider instead of OrganizationContext
    • use userMemberships instead of organizationList from useOrganizationList
  • Drop deprecations. Migration steps: (#2082) by @dimkl

    • use publishableKey instead of frontendApi
    • use Clerk.handleEmailLinkVerification() instead of Clerk.handleMagicLinkVerification()
    • use isEmailLinkError instead of isMagicLinkError
    • use EmailLinkErrorCode instead of MagicLinkErrorCode
    • use useEmailLink instead of useMagicLink
    • drop orgs jwt claim from session token
    • use ExternalAccount.imageUrl instead of ExternalAccount.avatarUrl
    • use Organization.imageUrl instead of Organization.logoUrl
    • use User.imageUrl instead of User.profileImageUrl
    • use OrganizationMembershipPublicUserData.imageUrl instead of OrganizationMembershipPublicUserData.profileImageUrl
    • use useOrganizationList instead of useOrganizations
    • use userProfileProps instead of userProfile in Appearance
    • use Clerk.setActive() instead of Clerk.setSession()
    • drop password param in User.update()
    • use afterSelectOrganizationUrl instead of afterSwitchOrganizationUrl in OrganizationSwitcher
    • drop Clerk.experimental_canUseCaptcha / Clerk.Clerk.experimental_captchaSiteKey / Clerk.experimental_captchaURL (were meant for internal use)
    • use User.getOrganizationMemberships() instead of Clerk.getOrganizationMemberships()
    • drop lastOrganizationInvitation / lastOrganizationMember from Clerk emitted events
    • drop Clerk.__unstable__invitationUpdate / Clerk.__unstable__membershipUpdate
    • drop support for string param in Organization.create()
    • use Organization.getInvitations() instead of Organization.getPendingInvitations()
    • use pageSize instead of limit in OrganizationMembership.retrieve()
    • use initialPage instead of offset in OrganizationMembership.retrieve()
    • drop lastOrganizationInvitation / lastOrganizationMember from ClerkProvider
    • use invitations instead of invitationList in useOrganization
    • use memberships instead of membershipList in useOrganization
    • use redirectUrl instead of redirect_url in User.createExternalAccount()
    • use signature instead of generatedSignature in Signup.attemptWeb3WalletVerification()
  • Drop deprecations. Migration steps: (#2109) by @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
  • Drop deprecations. Migration steps: (#2151) by @dimkl

    • drop formFieldLabel__emailAddress_phoneNumber from localization keys
    • drop formFieldLabel__phoneNumber_username from localization keys
    • drop formFieldLabel__emailAddress_phoneNumber_username from localization keys
    • drop formFieldInputPlaceholder__emailAddress_phoneNumber from localization keys
    • drop formFieldInputPlaceholder__phoneNumber_username from localization keys
    • drop formFieldInputPlaceholder__emailAddress_phoneNumber_username from localization keys
    • use title__connectionFailed instead of title__conectionFailed from localization keys
    • use actionLabel__connectionFailed instead of actionLabel__conectionFailed from localization keys
    • use headerTitle__members instead of headerTitle__active from localization keys
    • use headerTitle__invitations instead of headerTitle__invited from localization keys
    • drop createOrganization.subtitle from localization keys
    • use deDE instead of deDe localization from @clerk/localizations
  • Drop deprecations. Migration steps: (#1993) by @dimkl

    • use setActive instead of setSession from useSessionList | useSignUp | useSignIn hooks
    • use publishableKey instead of frontendApi
    • use handleEmailLinkVerification instead of handleMagicLinkVerification from IsomorphicClerk
    • use isEmailLinkError instead of isMagicLinkError
    • use EmailLinkErrorCode instead of MagicLinkErrorCode
    • use useEmailLink instead of useMagicLink

Patch Changes

5.0.0-alpha-v5.0

Major Changes

  • 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) by @dimkl

Minor Changes

Patch Changes

4.27.0

Minor Changes

  • Introduce customization in UserProfile and OrganizationProfile (#1822) by @anagstef

    The <UserProfile /> component now allows the addition of custom pages and external links to the navigation sidebar. Custom pages can be created using the <UserProfile.Page> component, and external links can be added using the <UserProfile.Link> component. The default routes, such as Account and Security, can be reordered.

    Example React API usage:

    <UserProfile>
      <UserProfile.Page
        label="Custom Page"
        url="custom"
        labelIcon={<CustomIcon />}
      >
        <MyCustomPageContent />
      </UserProfile.Page>
      <UserProfile.Link label="External" url="/home" labelIcon={<Icon />} />
      <UserProfile.Page label="account" />
      <UserProfile.Page label="security" />
    </UserProfile>

    Custom pages and links should be provided as children using the <UserButton.UserProfilePage> and <UserButton.UserProfileLink> components when using the UserButton component.

    The <OrganizationProfile /> component now supports the addition of custom pages and external links to the navigation sidebar. Custom pages can be created using the <OrganizationProfile.Page> component, and external links can be added using the <OrganizationProfile.Link> component. The default routes, such as Members and Settings, can be reordered.

    Example React API usage:

    <OrganizationProfile>
      <OrganizationProfile.Page
        label="Custom Page"
        url="custom"
        labelIcon={<CustomIcon />}
      >
        <MyCustomPageContent />
      </OrganizationProfile.Page>
      <OrganizationProfile.Link
        label="External"
        url="/home"
        labelIcon={<Icon />}
      />
      <OrganizationProfile.Page label="members" />
      <OrganizationProfile.Page label="settings" />
    </OrganizationProfile>

    Custom pages and links should be provided as children using the <OrganizationSwitcher.OrganizationProfilePage> and <OrganizationSwitcher.OrganizationProfileLink> components when using the OrganizationSwitcher component.

Patch Changes

4.26.6

Patch Changes

  • Updated dependencies [9ca215702]:
    • @clerk/types@3.56.1

4.26.5

Patch Changes

4.26.4

Patch Changes

  • Warn about MagicLink deprecations: (#1836) by @dimkl

    • MagicLinkError
    • isMagicLinkError
    • MagicLinkErrorCode
    • handleMagicLinkVerification
    • createMagicLinkFlow
    • useMagicLink
  • 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) by @BRKalow

  • Introduce new *EmailLink* helpers that will replace the *MagicLink* helpers. (#1833) by @dimkl

    Also marked all the *MagicLink* as deprecated using JSDocs.

  • Updated dependencies [977336f79, 997b8e256, 91e9a55f4, 91014880d, 7f4d4b942]:

    • @clerk/shared@0.24.4
    • @clerk/types@3.55.0

4.26.3

Patch Changes

  • Make types the first key in all exports maps defined in our packages' package.json. The TypeScript docs recommends so, as the the exports map is order-based. by @nikosdouvlis

  • Apply deprecation warnings for @clerk/types: (#1823) by @dimkl

    • orgs jwt claims
    • apiKey
    • frontendApi
    • redirect_url
    • password
    • generateSignature
    • afterSwitchOrganizationUrl
    • profileImageUrl
  • Updated dependencies [1136c7c15, 1e212c19d, 1136c7c15, 1136c7c15]:

    • @clerk/shared@0.24.3

4.26.2

Patch Changes

4.26.1

Patch Changes

  • Refactor our script loading logic to use a versionSelector helper function. No change in behavior should occur. This internal change allows versions tagged with snapshot and staging to use the exact corresponding NPM version of @clerk/clerk-js. (#1780) by @LekoArts

  • Updated dependencies [cecf74d79]:

    • @clerk/shared@0.24.1

4.26.0

Minor Changes

  • <SignIn/>, <SignUp/>, <RedirectToSignin/>, <RedirectToSignUp/>, clerk.redirectToSignIn() and clerk.redirectToSignUp() now accept the initialValues option, which will prefill the appropriate form fields with the values provided. (#1701) by @desiprisg

Patch Changes

4.25.2

Patch Changes

4.25.1

Patch Changes

4.25.0

Minor Changes

  • Introduce the new brand-new component OrganizationList (#1692) by @panteliselef

    • Lists all the memberships, invitations or suggestions an active user may have
    • Powered by our useOrganizationList react hook

Patch Changes

4.24.2

Patch Changes

4.24.1

Patch Changes

  • Support swapping the Clerk publishableKey at runtime to allow users to toggle the instance being used. (#1655) by @BRKalow

4.24.0

Minor Changes

  • Introduces userInvitations from useOrganizationList (#1520) by @panteliselef

    userInvitations is a paginated list of data. It can be used to create Paginated tables or Infinite lists.

Patch Changes

4.23.2

Patch Changes

4.23.1

Patch Changes

  • Updated dependencies [6fa4768dc]:
    • @clerk/types@3.48.1

4.23.0

Minor Changes

Patch Changes

  • Updated dependencies [2a9d83280]:
    • @clerk/types@3.48.0

4.22.1

Patch Changes

4.22.0

Minor Changes

  • Update IsomorphicClerk#addListener to correctly return an unsubscribe method (#1452) by @dimkl

4.21.1

Patch Changes

  • Populate openCreateOrganization return from the useClerk() hook (#1435) by @panteliselef

4.21.0

Minor Changes

  • Fix global is not defined error when using Vite + React by @anagstef

4.20.6

Patch Changes

  • Updated dependencies [30f8ad18a]:
    • @clerk/types@3.46.1

4.20.5

Patch Changes

  • Updated dependencies [bfb3af28]:
    • @clerk/types@3.46.0

4.20.4

Patch Changes

4.20.3

Patch Changes

  • Updated dependencies [17cc14ec]:
    • @clerk/types@3.44.0

4.20.2

Patch Changes

4.20.1

Patch Changes

  • Updated dependencies [59bc649a]:
    • @clerk/shared@0.19.1

4.20.0

Minor Changes

  • Export error helpers from the shared package to the framework specific packages (#1308) by @desiprisg

Patch Changes

4.19.0

Minor Changes

  • ESM/CJS support for @clerk/clerk-react by @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.

Patch Changes

4.18.0 (2023-06-03)

Note: Version bump only for package @clerk/clerk-react

4.17.0 (2023-05-26)

Note: Version bump only for package @clerk/clerk-react

4.16.3 (2023-05-23)

Note: Version bump only for package @clerk/clerk-react

4.16.2 (2023-05-18)

Note: Version bump only for package @clerk/clerk-react

4.16.1 (2023-05-17)

Note: Version bump only for package @clerk/clerk-react

4.16.0 (2023-05-15)

Note: Version bump only for package @clerk/clerk-react

4.15.4 (2023-05-04)

Note: Version bump only for package @clerk/clerk-react

4.15.4-staging.5 (2023-05-04)

Note: Version bump only for package @clerk/clerk-react

4.15.4-staging.3 (2023-05-02)

Note: Version bump only for package @clerk/clerk-react

4.15.3 (2023-04-19)

Note: Version bump only for package @clerk/clerk-react

4.15.2 (2023-04-19)

Note: Version bump only for package @clerk/clerk-react

4.15.1 (2023-04-12)

Note: Version bump only for package @clerk/clerk-react

4.15.0 (2023-04-11)

Note: Version bump only for package @clerk/clerk-react

4.14.2 (2023-04-06)

Note: Version bump only for package @clerk/clerk-react

4.14.1 (2023-03-31)

Note: Version bump only for package @clerk/clerk-react

4.14.1-staging.3 (2023-03-31)

Bug Fixes

  • clerk-react: Check for window in isomorphicClerk (fe82852)

4.14.0 (2023-03-29)

Note: Version bump only for package @clerk/clerk-react

4.12.4 (2023-03-10)

Note: Version bump only for package @clerk/clerk-react

4.12.3 (2023-03-09)

Note: Version bump only for package @clerk/clerk-react

4.12.2 (2023-03-07)

Note: Version bump only for package @clerk/clerk-react

4.12.1 (2023-03-03)

Note: Version bump only for package @clerk/clerk-react

4.12.0 (2023-03-01)

Note: Version bump only for package @clerk/clerk-react

4.11.6 (2023-02-25)

Note: Version bump only for package @clerk/clerk-react

4.11.5 (2023-02-24)

Note: Version bump only for package @clerk/clerk-react

4.11.5-staging.2 (2023-02-22)

Note: Version bump only for package @clerk/clerk-react

4.11.4 (2023-02-17)

Note: Version bump only for package @clerk/clerk-react

4.11.3 (2023-02-15)

Note: Version bump only for package @clerk/clerk-react

4.11.2 (2023-02-10)

Note: Version bump only for package @clerk/clerk-react

4.11.1 (2023-02-07)

Note: Version bump only for package @clerk/clerk-react

4.11.1-staging.0 (2023-02-07)

Note: Version bump only for package @clerk/clerk-react

4.11.0 (2023-02-07)

Note: Version bump only for package @clerk/clerk-react

4.10.0 (2023-02-01)

Note: Version bump only for package @clerk/clerk-react

4.9.0 (2023-01-27)

Note: Version bump only for package @clerk/clerk-react

4.8.4 (2023-01-24)

Note: Version bump only for package @clerk/clerk-react

4.8.3 (2023-01-20)

Bug Fixes

  • nextjs,types: Make frontendApi or publishableKey mutually exclusive but optional (953c276)

4.8.2 (2023-01-19)

Bug Fixes

  • clerk-react: Do not throw missing key error if a Clerk instance is used (a300016)
  • clerk-react: Do not throw missing key error in isomorphicClerk.load (8b3b763)

4.8.1 (2023-01-17)

Bug Fixes

  • clerk-react: Add data-clerk-publishable-key attribute only when PK is available (8d44f54)

4.8.0 (2023-01-17)

Note: Version bump only for package @clerk/clerk-react

4.7.0 (2022-12-19)

Note: Version bump only for package @clerk/clerk-react

4.6.4 (2022-12-13)

Note: Version bump only for package @clerk/clerk-react

4.6.3 (2022-12-12)

Note: Version bump only for package @clerk/clerk-react

4.6.2 (2022-12-09)

Note: Version bump only for package @clerk/clerk-react

4.6.1 (2022-12-08)

Reverts

  • Revert "feat(clerk-js,types): Terse paths parameters (#572)" (#603) (d535eac), closes #572 #603

4.6.0 (2022-12-08)

Note: Version bump only for package @clerk/clerk-react

4.5.5 (2022-12-02)

Note: Version bump only for package @clerk/clerk-react

4.5.4 (2022-11-30)

Note: Version bump only for package @clerk/clerk-react

4.5.4-staging.5 (2022-11-29)

Note: Version bump only for package @clerk/clerk-react

4.5.3 (2022-11-25)

Note: Version bump only for package @clerk/clerk-react

4.5.2 (2022-11-25)

Note: Version bump only for package @clerk/clerk-react

4.5.1 (2022-11-23)

Note: Version bump only for package @clerk/clerk-react

4.5.0 (2022-11-22)

Note: Version bump only for package @clerk/clerk-react

4.5.0-staging.3 (2022-11-21)

Bug Fixes

  • clerk-react: Add HeadlessBrowserClerk (4236147)

4.5.0-staging.2 (2022-11-21)

Features

  • clerk-js: Improve DX for headless import (8d64310)

4.4.3 (2022-11-18)

Note: Version bump only for package @clerk/clerk-react

4.4.2 (2022-11-15)

Note: Version bump only for package @clerk/clerk-react

4.4.1 (2022-11-10)

Note: Version bump only for package @clerk/clerk-react

4.4.0 (2022-11-05)

Note: Version bump only for package @clerk/clerk-react

4.3.3 (2022-11-03)

Note: Version bump only for package @clerk/clerk-react

4.3.3-staging.4 (2022-11-02)

Note: Version bump only for package @clerk/clerk-react

4.3.3-staging.3 (2022-11-02)

Note: Version bump only for package @clerk/clerk-react

4.3.3-staging.2 (2022-11-02)

Note: Version bump only for package @clerk/clerk-react

4.3.3-staging.1 (2022-11-02)

Bug Fixes

  • clerk-react: Add frontendAPI on window as a fallback (06f8b37)

4.3.2 (2022-10-24)

Note: Version bump only for package @clerk/clerk-react

4.3.1 (2022-10-14)

Note: Version bump only for package @clerk/clerk-react

4.3.0 (2022-10-14)

Note: Version bump only for package @clerk/clerk-react

4.3.0-staging.1 (2022-10-13)

Features

  • clerk-js,clerk-react,types: Wire up OrganizationSwitcher and OrganizationProfile (1e34e69)

4.2.6 (2022-10-07)

Note: Version bump only for package @clerk/clerk-react

4.2.5 (2022-10-05)

Note: Version bump only for package @clerk/clerk-react

4.2.4 (2022-10-03)

Note: Version bump only for package @clerk/clerk-react

4.2.3 (2022-09-29)

Note: Version bump only for package @clerk/clerk-react

4.2.2 (2022-09-25)

Note: Version bump only for package @clerk/clerk-react

4.2.1 (2022-09-24)

Note: Version bump only for package @clerk/clerk-react

4.2.1-staging.1 (2022-09-24)

Note: Version bump only for package @clerk/clerk-react

4.2.0 (2022-09-22)

Note: Version bump only for package @clerk/clerk-react

4.1.1 (2022-09-19)

Note: Version bump only for package @clerk/clerk-react

4.1.0 (2022-09-16)

Note: Version bump only for package @clerk/clerk-react

4.0.10 (2022-09-07)

Note: Version bump only for package @clerk/clerk-react

4.0.9 (2022-09-07)

Note: Version bump only for package @clerk/clerk-react

4.0.8 (2022-08-29)

Note: Version bump only for package @clerk/clerk-react

4.0.7 (2022-08-29)

Note: Version bump only for package @clerk/clerk-react

4.0.6 (2022-08-24)

Note: Version bump only for package @clerk/clerk-react

4.0.5 (2022-08-18)

Note: Version bump only for package @clerk/clerk-react

4.0.4 (2022-08-18)

Note: Version bump only for package @clerk/clerk-react

4.0.3 (2022-08-16)

Note: Version bump only for package @clerk/clerk-react

4.0.2 (2022-08-09)

Note: Version bump only for package @clerk/clerk-react

4.0.1 (2022-08-07)

Note: Version bump only for package @clerk/clerk-react

4.0.0 (2022-08-05)

Note: Version bump only for package @clerk/clerk-react

3.5.1 (2022-08-04)

Note: Version bump only for package @clerk/clerk-react

3.5.0 (2022-07-13)

Features

  • nextjs: Add req.organization access on gssp (d064448)
  • types,clerk-react,nextjs: Add loadOrg option for Next.js withServerSideAuth middleware (0889bde)

3.4.5 (2022-07-11)

Note: Version bump only for package @clerk/clerk-react

3.4.4 (2022-07-07)

Note: Version bump only for package @clerk/clerk-react

3.4.3 (2022-07-06)

Note: Version bump only for package @clerk/clerk-react

3.4.2 (2022-07-01)

Note: Version bump only for package @clerk/clerk-react

3.4.1 (2022-06-24)

Note: Version bump only for package @clerk/clerk-react

3.4.0 (2022-06-16)

Note: Version bump only for package @clerk/clerk-react

3.3.0 (2022-06-06)

Note: Version bump only for package @clerk/clerk-react

3.3.0-staging.4 (2022-06-03)

Bug Fixes

  • clerk-react: Correct annotations in isomorphicClerk for setSession (56abc04)

3.3.0-staging.3 (2022-06-03)

Note: Version bump only for package @clerk/clerk-react

3.3.0-staging.2 (2022-06-02)

Note: Version bump only for package @clerk/clerk-react

3.3.0-staging.1 (2022-06-01)

Bug Fixes

  • clerk-js: Emit changes in organization to listeners (798ee62)

3.2.18 (2022-05-20)

Note: Version bump only for package @clerk/clerk-react

3.2.18-staging.1 (2022-05-18)

Note: Version bump only for package @clerk/clerk-react

3.2.18-staging.0 (2022-05-17)

Note: Version bump only for package @clerk/clerk-react

3.2.17 (2022-05-13)

Note: Version bump only for package @clerk/clerk-react

3.2.16 (2022-05-12)

Note: Version bump only for package @clerk/clerk-react

3.2.15 (2022-05-12)

Note: Version bump only for package @clerk/clerk-react

3.2.14 (2022-05-11)

Note: Version bump only for package @clerk/clerk-react

3.2.13 (2022-05-06)

Bug Fixes

  • clerk-react: Make getOrCreateInstance handle both SSR and CSR instantiation (d22b808)
  • clerk-react: Make isomorphicClerk loading idempotent (91b6217)
  • clerk-react: Pass initialState directly to ClerkContextProvider (9e55b7c)

3.2.13-staging.0 (2022-05-05)

Bug Fixes

  • clerk-react: Make getOrCreateInstance handle both SSR and CSR instantiation (8f9481c)
  • clerk-react: Make isomorphicClerk loading idempotent (221919c)
  • clerk-react: Pass initialState directly to ClerkContextProvider (cb777d4)

3.2.12 (2022-05-05)

Note: Version bump only for package @clerk/clerk-react

3.2.11 (2022-04-28)

Note: Version bump only for package @clerk/clerk-react

3.2.10 (2022-04-27)

Bug Fixes

  • clerk-react: Define global in window if not defined (48da3ac)

3.2.9 (2022-04-27)

Bug Fixes

  • clerk-react: Type updates for React 18 (6d5c0bf)

3.2.8 (2022-04-19)

Note: Version bump only for package @clerk/clerk-react

3.2.8-staging.1 (2022-04-19)

Note: Version bump only for package @clerk/clerk-react

3.2.7 (2022-04-18)

Note: Version bump only for package @clerk/clerk-react

3.2.7-alpha.0 (2022-04-15)

Note: Version bump only for package @clerk/clerk-react

3.2.6 (2022-04-15)

Bug Fixes

  • clerk-react: Explicitly type children for React.FC components (#199) (9fb2ce4)

3.2.5 (2022-04-15)

Note: Version bump only for package @clerk/clerk-react

3.2.4 (2022-04-13)

Note: Version bump only for package @clerk/clerk-react

3.2.3 (2022-04-07)

Note: Version bump only for package @clerk/clerk-react

3.2.2 (2022-04-04)

Note: Version bump only for package @clerk/clerk-react

3.2.1 (2022-03-28)

Note: Version bump only for package @clerk/clerk-react

3.2.0 (2022-03-24)

Note: Version bump only for package @clerk/clerk-react

3.2.0-staging.0 (2022-03-24)

Features

  • types,clerk-js,backend-core,clerk-react: Replace thrown error with null return in getToken (d972f93)

3.1.1-alpha.0 (2022-03-23)

Note: Version bump only for package @clerk/clerk-react

3.1.0-alpha.2 (2022-03-23)

Note: Version bump only for package @clerk/clerk-react

3.1.0-alpha.1 (2022-03-23)

Features

  • clerk-js,types: Rename UserButton params to afterSignOutUrl, afterMultiSessionSingleSignOutUrl (c4cb76a)

3.1.0-alpha.0 (2022-03-22)

Note: Version bump only for package @clerk/clerk-react

3.0.1-alpha.3 (2022-03-22)

Note: Version bump only for package @clerk/clerk-react

3.0.1-alpha.2 (2022-03-22)

Bug Fixes

  • clerk-js,clerk-react: Move error to getToken (d5f6b26)
  • edge: Align react getToken (37a03de)

3.0.1-alpha.1 (2022-03-20)

Bug Fixes

  • clerk-js,clerk-react: Move error to getToken (d5f6b26)
  • edge: Align react getToken (37a03de)

3.0.1-alpha.0 (2022-03-19)

Bug Fixes

  • clerk-js,clerk-react: Move error to getToken (84d21ce)
  • edge: Align react getToken (37a03de)

3.0.0-alpha.10 (2022-03-11)

Features

  • clerk-react: Add isLoaded to useOrganizations hook (#92) (a316c7a)
  • clerk-remix: Mark clerk-remix as side-effect free to fix Remix bundling (c57a902)

3.0.0-alpha.9 (2022-02-28)

Features

  • clerk-remix: Mark clerk-remix as side-effect free to fix Remix bundling (c57a902)

3.0.0-alpha.8 (2022-02-25)

Features

  • clerk-remix: Mark clerk-remix as side-effect free to fix Remix bundling (287a438)

3.0.0-alpha.7 (2022-02-18)

Features

  • clerk-remix: Mark clerk-remix as side-effect free to fix Remix bundling (0d22857)

2.12.6 (2022-03-17)

Note: Version bump only for package @clerk/clerk-react

2.12.6-staging.1 (2022-03-17)

Note: Version bump only for package @clerk/clerk-react

2.12.4 (2022-03-11)

Note: Version bump only for package @clerk/clerk-react

2.12.3 (2022-03-09)

Note: Version bump only for package @clerk/clerk-react

2.12.1 (2022-03-04)

Bug Fixes

  • clerk-react,clerk-js,types: Crate of API feedback fixes (721ce72)

2.12.0 (2022-03-04)

Features

  • clerk-js,clerk-react: GetOrganization/s hook methods, fetching mechanism alignment (fc11087)
  • clerk-js: Add useOrganization hook (480c422)
  • clerk-react,clerk-js: Add useOrganization hook using __unstable attribute (1635132)

2.11.7 (2022-03-03)

Note: Version bump only for package @clerk/clerk-react

2.11.6 (2022-03-02)

Note: Version bump only for package @clerk/clerk-react

2.11.5 (2022-03-01)

Note: Version bump only for package @clerk/clerk-react

2.11.4 (2022-02-24)

Note: Version bump only for package @clerk/clerk-react

2.11.4-staging.0 (2022-02-24)

Note: Version bump only for package @clerk/clerk-react

2.11.3-staging.0 (2022-02-17)

Note: Version bump only for package @clerk/clerk-react

2.11.2-staging.0 (2022-02-15)

Note: Version bump only for package @clerk/clerk-react

2.11.1 (2022-02-14)

Note: Version bump only for package @clerk/clerk-react

2.11.1-staging.0 (2022-02-11)

Features

  • clerk-sdk-node: Deprecate Session named middleware, introduce withAuth, requireAuth (4e69553)