- Updated dependencies [
b9cb6e5]:- @clerk/shared@4.3.1
- @clerk/vue@2.0.5
- @clerk/backend@3.2.1
- Updated dependencies [
1f43bf7,766ae5b,de1386f]:- @clerk/backend@3.2.0
- @clerk/shared@4.3.0
- @clerk/vue@2.0.4
- Updated dependencies [
3e63793]:- @clerk/backend@3.1.0
- @clerk/shared@4.2.0
- @clerk/vue@2.0.3
- Updated dependencies [
a8c64cc,98929f5,776ee1b,7fb870d,09cb6d4,09088ed]:- @clerk/backend@3.0.2
- @clerk/vue@2.0.2
- @clerk/shared@4.1.0
-
Update README prerequisites to match actual
package.jsonengine and peer dependency constraints. (#7972) by @jacekradko -
Updated dependencies [
55ece85]:- @clerk/backend@3.0.1
- @clerk/vue@2.0.1
-
Require Node.js 20.9.0 in all packages (#7262) by @jacekradko
-
Remove
clerkJSUrl,clerkJSVersion,clerkUIUrl, andclerkUIVersionprops from all SDKs. To pin a specific version of@clerk/clerk-js, import theClerkconstructor from@clerk/clerk-jsand pass it toClerkProvidervia theClerkprop. To pin a specific version of@clerk/ui, importuifrom@clerk/uiand pass it via theuiprop. This bundles the modules directly with your application instead of loading them from the CDN. (#7879) by @jacekradko -
Introduce
<Show when={...}>as the cross-framework authorization control component and remove<Protect>,<SignedIn>, and<SignedOut>in favor of<Show>. (#7373) by @jacekradko -
Removed deprecated
getAuth()helper. Useevent.context.auth()in your server routes instead. (#7284) by @wobsorianoexport default defineEventHandler(event => { const { userId } = event.context.auth(); return { userId, }; });
-
getToken()now throwsClerkOfflineErrorinstead of returningnullwhen the client is offline. (#7598) by @bratsosThis makes it explicit that a token fetch failure was due to network conditions, not authentication state. Previously, returning
nullcould be misinterpreted as "user is signed out," potentially causing the cached token to be cleared.To handle this change, catch
ClerkOfflineErrorfromgetToken()calls:import { ClerkOfflineError } from '@clerk/react/errors'; try { const token = await session.getToken(); } catch (error) { if (ClerkOfflineError.is(error)) { // Handle offline scenario - show offline UI, retry later, etc. } throw error; }
-
Routing strategy for the ff. components now default to
path: (#7260) by @wobsoriano<SignIn /><SignUp /><UserProfile /><OrganizationProfile /><CreateOrganization /><OrganizationList />
-
Remove
clerkJSVariantoption and headless bundle. UseprefetchUI={false}instead. (#7629) by @jacekradko -
Add standalone
getToken()function for retrieving session tokens outside of framework component trees. (#7325) by @bratsosThis function is safe to call from anywhere in the browser, such as API interceptors, data fetching layers (e.g., React Query, SWR), or vanilla JavaScript code. It automatically waits for Clerk to initialize before returning the token.
import { getToken } from '@clerk/nextjs'; // or any framework package
// Example: Axios interceptor axios.interceptors.request.use(async (config) => { const token = await getToken(); if (token) { config.headers.Authorization =
Bearer ${token}; } return config; }); -
Add
/typessubpath export to re-export types from@clerk/shared/typesalong with SDK-specific types. This allows importing Clerk types directly from the SDK package (e.g.,import type { UserResource } from '@clerk/react/types') without needing to install@clerk/typesas a separate dependency. (#7644) by @nikosdouvlis -
Introduce
<UNSAFE_PortalProvider>component which allows you to specify a custom container for Clerk floating UI elements (popovers, modals, tooltips, etc.) that use portals. Only Clerk components within the provider will be affected, components outside the provider will continue to use the default document.body for portals. (#7310) by @alexcarpenterThis is particularly useful when using Clerk components inside external UI libraries like Radix Dialog or React Aria Components, where portaled elements need to render within the dialog's container to remain interact-able.
'use client'; import { useRef } from 'react'; import * as Dialog from '@radix-ui/react-dialog'; import { UNSAFE_PortalProvider, UserButton } from '@clerk/nextjs'; export function UserDialog() { const containerRef = useRef<HTMLDivElement>(null); return ( <Dialog.Root> <Dialog.Trigger>Open Dialog</Dialog.Trigger> <Dialog.Portal> <Dialog.Overlay /> <Dialog.Content ref={containerRef}> <UNSAFE_PortalProvider getContainer={() => containerRef.current}> <UserButton /> </UNSAFE_PortalProvider> </Dialog.Content> </Dialog.Portal> </Dialog.Root> ); }
-
Wire
clerkUIVersionoption through all framework packages (#7740) by @nikosdouvlis -
Updated dependencies [
0a9cce3,e35960f,c9f0d77,1bd1747,6a2ff9e,d2cee35,44d0e5c,6ec5f08,0a9cce3,8c47111,00882e8,a374c18,466d642,5ef4a77,3abe9ed,af85739,10b5bea,a05d130,b193f79,e9d2f2f,6e90b7f,43fc7b7,0f1011a,cbc5618,38def4f,7772f45,a3e689f,583f7a9,965e7f1,84483c2,2b76081,f284c3d,ac34168,cf0d0dc,0aff70e,690280e,b971d0b,22d1689,e9a1d4d,c088dde,cc3b220,8902e21,972f6a0,a1aaff3,d85646a,ab3dd16,4a8cb10,fd195c1,8887fac,0b4b481,5f88dbb,dc886a9,428629b,8b95393,c438fa5,c438fa5,fd195c1,fd69edb,8d91225,1fc95e2,3dac245,a4c3b47,7c3c002,d8bbc66,3983cf8,f1f1d09,736314f,2cc7dbb,0af2e6f,86d2199,da415c8,97c9ab3,cc63aab,a7a38ab,cfa70ce,25d37b0,26254f0,c97e6af,c92ccf8,5b24266,d98727e,79e2622,f944623,12b3070]:- @clerk/shared@4.0.0
- @clerk/vue@2.0.0
- @clerk/backend@3.0.0
- Updated dependencies [
76a5a1b,7955e9d,51bc9a9]:- @clerk/backend@2.33.0
- @clerk/shared@3.47.2
- @clerk/types@4.101.20
- @clerk/vue@1.17.18
- Updated dependencies [
8a0c404]:- @clerk/shared@3.47.1
- @clerk/backend@2.32.2
- @clerk/types@4.101.19
- @clerk/vue@1.17.17
- Updated dependencies [
c15c8a2]:- @clerk/backend@2.32.1
- Updated dependencies [
c00c524,9c935ad]:- @clerk/shared@3.47.0
- @clerk/backend@2.32.0
- @clerk/types@4.101.18
- @clerk/vue@1.17.16
- Updated dependencies [
71bd53c,935f780,2471e31]:- @clerk/shared@3.46.0
- @clerk/backend@2.31.2
- @clerk/types@4.101.17
- @clerk/vue@1.17.15
- Updated dependencies [
b17e4bb]:- @clerk/shared@3.45.1
- @clerk/backend@2.31.1
- @clerk/types@4.101.16
- @clerk/vue@1.17.14
- Updated dependencies [
35bcbd1,5740640,03c61c1]:- @clerk/shared@3.45.0
- @clerk/backend@2.31.0
- @clerk/types@4.101.15
- @clerk/vue@1.17.13
- Updated dependencies [
a726252]:- @clerk/backend@2.30.1
- Updated dependencies [
559cd84]:- @clerk/backend@2.29.7
- Updated dependencies [
64a35f7]:- @clerk/shared@3.44.0
- @clerk/backend@2.29.6
- @clerk/types@4.101.14
- @clerk/vue@1.17.11
- Updated dependencies [
b7a4e1e]:- @clerk/shared@3.43.2
- @clerk/backend@2.29.5
- @clerk/types@4.101.13
- @clerk/vue@1.17.10
- Updated dependencies [
e995cc3]:- @clerk/shared@3.43.1
- @clerk/backend@2.29.4
- @clerk/types@4.101.12
- @clerk/vue@1.17.9
- Updated dependencies [
c3ff1f8,271ddeb]:- @clerk/backend@2.29.3
- @clerk/shared@3.43.0
- @clerk/types@4.101.11
- @clerk/vue@1.17.8
- Updated dependencies [
6b26afc]:- @clerk/backend@2.29.2
- Updated dependencies [
9320c4f,a4e6932]:- @clerk/backend@2.29.1
- @clerk/shared@3.42.0
- @clerk/types@4.101.10
- @clerk/vue@1.17.7
- Updated dependencies [
ede3e2a,03dd374]:- @clerk/backend@2.29.0
- @clerk/shared@3.41.1
- @clerk/types@4.101.9
- @clerk/vue@1.17.6
- Updated dependencies [
79eb5af,5d25027,b3b02b4,7b3024a,2cd4da9,d4e2739]:- @clerk/shared@3.41.0
- @clerk/backend@2.28.0
- @clerk/types@4.101.8
- @clerk/vue@1.17.5
- Updated dependencies [
375a32d,175883b,43d3c3e,f626046,14342d2]:- @clerk/shared@3.40.0
- @clerk/backend@2.27.1
- @clerk/types@4.101.7
- @clerk/vue@1.17.4
- Updated dependencies [
e448757]:- @clerk/backend@2.27.0
- Updated dependencies [
0307ea8,b117ebc,6dbb02b]:- @clerk/vue@1.17.3
- @clerk/shared@3.39.0
- @clerk/backend@2.26.0
- @clerk/types@4.101.6
- Updated dependencies [
e31f3d5,b41c0d5,8376789,f917d68,818c25a,b41c0d5]:- @clerk/shared@3.38.0
- @clerk/backend@2.25.1
- @clerk/types@4.101.5
- @clerk/vue@1.17.2
- Updated dependencies [
40a841d,f364924,f115e56,d4aef71,3f99742,02798f5,07a30ce,d7c336d,ce8b914,d4aef71,a3e14b1]:- @clerk/shared@3.37.0
- @clerk/backend@2.25.0
- @clerk/types@4.101.4
- @clerk/vue@1.17.1
- Updated dependencies [
f85abda,36e43cc,337430b]:- @clerk/shared@3.36.0
- @clerk/vue@1.17.0
- @clerk/backend@2.24.0
- @clerk/types@4.101.3
- Updated dependencies [
d8f59a6]:- @clerk/shared@3.35.2
- @clerk/backend@2.23.2
- @clerk/types@4.101.2
- @clerk/vue@1.16.2
- Updated dependencies [
a9c13ca]:- @clerk/shared@3.35.1
- @clerk/backend@2.23.1
- @clerk/types@4.101.1
- @clerk/vue@1.16.1
- Introduce
<APIKeys />component (#7225) by @wobsoriano
- Updated dependencies [
7be8f45,bdbb0d9,aa184a4,6d3c66d,1d4e7a7,50e630a,42f0d95,c63cc8e,d32d724,00291bc]:- @clerk/shared@3.35.0
- @clerk/vue@1.16.0
- @clerk/backend@2.23.0
- @clerk/types@4.101.0
- Updated dependencies [
b5a7e2f,a1d10fc,b944ff3,4011c5e,791e942]:- @clerk/types@4.100.0
- @clerk/shared@3.34.0
- @clerk/backend@2.22.0
- @clerk/vue@1.15.1
- Update the supported API version to
2025-11-10. (#7095) by @panteliselef
- Updated dependencies [
613cb97]:- @clerk/shared@3.33.0
- @clerk/backend@2.21.0
- @clerk/types@4.99.0
- @clerk/vue@1.15.0
- Updated dependencies [
cc11472,539fad7,296fb0b,c413433,a940c39]:- @clerk/shared@3.32.0
- @clerk/types@4.98.0
- @clerk/backend@2.20.1
- @clerk/vue@1.14.13
- Updated dependencies [
a474c59,b505755,5536429]:- @clerk/shared@3.31.1
- @clerk/backend@2.20.0
- @clerk/types@4.97.2
- @clerk/vue@1.14.12
- Updated dependencies [
85b5acc,ea65d39,b09b29e]:- @clerk/types@4.97.1
- @clerk/shared@3.31.0
- @clerk/backend@2.19.3
- @clerk/vue@1.14.11
- Updated dependencies [
3e0ef92,2587aa6]:- @clerk/shared@3.30.0
- @clerk/types@4.97.0
- @clerk/backend@2.19.2
- @clerk/vue@1.14.10
- Updated dependencies [
791ff19,439427e,7dfbf3a,d33b7b5,f2644c2]:- @clerk/shared@3.29.0
- @clerk/types@4.96.0
- @clerk/backend@2.19.1
- @clerk/vue@1.14.9
- Updated dependencies [
4d46e4e,a42a015,8ebbf1e]:- @clerk/types@4.95.1
- @clerk/backend@2.19.0
- @clerk/shared@3.28.3
- @clerk/vue@1.14.8
- Re-export UserAvatar from Vue package (#7009) by @tmilewski
- Updated dependencies [
a172d51,947d0f5]:- @clerk/types@4.95.0
- @clerk/shared@3.28.2
- @clerk/backend@2.18.3
- @clerk/vue@1.14.7
- Updated dependencies [
d8147fb]:- @clerk/shared@3.28.1
- @clerk/backend@2.18.2
- @clerk/vue@1.14.6
- Updated dependencies [
305f4ee,53214f9,1441e68,1236c74,29201b2]:- @clerk/backend@2.18.1
- @clerk/shared@3.28.0
- @clerk/types@4.94.0
- @clerk/vue@1.14.5
-
Added internal helper type for
authandgetAuth()functions that don't require a request or context parameter (#6910) by @wobsoriano -
Updated dependencies [
65b7cc7,20c2e29,0efe78d,6e09786,aa7210c,2cd53cd,56a81aa,1a2eee6,22b8e49,2cd53cd,348021d,1a2430a,31a04fc,9766c4a,fe873dc,22b8e49,a66357e,dacc1af]:- @clerk/types@4.93.0
- @clerk/backend@2.18.0
- @clerk/vue@1.14.4
- @clerk/shared@3.27.4
- Remove added
nextTick()calls when invoking Clerk routing functions. (#6928) by @wobsoriano
- Updated dependencies [
fba4781,a1f6714]:- @clerk/types@4.92.0
- @clerk/backend@2.17.2
- @clerk/shared@3.27.3
- @clerk/vue@1.14.3
- Updated dependencies [
04cba7d,f737d26,8777f35,2c0128b]:- @clerk/backend@2.17.1
- @clerk/types@4.91.0
- @clerk/shared@3.27.2
- @clerk/vue@1.14.2
- Updated dependencies [
ea2bc26,37028ca]:- @clerk/backend@2.17.0
- @clerk/types@4.90.0
- @clerk/shared@3.27.1
- @clerk/vue@1.14.1
- Updated dependencies [
e3e77eb,9cf89cd,090ca74,b8fbadd,5546352]:- @clerk/backend@2.16.0
- @clerk/shared@3.27.0
- @clerk/types@4.89.0
- @clerk/vue@1.14.0
- Bump
@nuxt/kitand@nuxt/schemato v4 (#6795) by @wobsoriano
-
Fixed an issue where Nuxt route middleware saw intermediate states during navigation, causing unwanted redirects during sign-in/sign-out flows. (#6802) by @wobsoriano
-
Added
<GoogleOneTap />to auto-imported components. (#6809) by @wobsoriano -
Updated dependencies [
99922ec,8d1514a,a8ba926,41e0a41,1aa9e9f,1ad3b92,a88ee58,d6c7bbb]:- @clerk/vue@1.13.3
- @clerk/backend@2.15.0
- @clerk/shared@3.26.1
- @clerk/types@4.88.0
- Updated dependencies [
bcf24f2,0006c82,7c976b4,1ceedad,de90ede,9d4a95c,428cd57]:- @clerk/types@4.87.0
- @clerk/backend@2.14.1
- @clerk/shared@3.26.0
- @clerk/vue@1.13.2
- Updated dependencies [
b598581,19f18f8,23948dc,7382e13,24d0742,82b84fe,54b4b5a,50a8622,939df73,23948dc]:- @clerk/backend@2.14.0
- @clerk/types@4.86.0
- @clerk/shared@3.25.0
- @clerk/vue@1.13.1
- Updated dependencies [
55490c3,56a9eb6,a8e7794,e8d21de,63fa204,637f2e8]:- @clerk/types@4.85.0
- @clerk/vue@1.13.0
- @clerk/backend@2.13.0
- @clerk/shared@3.24.2
- Updated dependencies [
fced4fc,ea65f20,e6e19d2,1b1e8b1]:- @clerk/types@4.84.1
- @clerk/vue@1.12.0
- @clerk/shared@3.24.1
- @clerk/backend@2.12.1
- Updated dependencies [
2a82737,cda5d7b,ba25a5b,a50cfc8,377f67b,65b12ee,263722e,c19f936]:- @clerk/types@4.84.0
- @clerk/shared@3.24.0
- @clerk/backend@2.11.0
- @clerk/vue@1.11.7
- Updated dependencies [
600c648]:- @clerk/shared@3.23.0
- @clerk/types@4.83.0
- @clerk/backend@2.10.1
- @clerk/vue@1.11.6
-
Allows passing of
treatPendingAsSignedOutto auth functions: (#6612) by @wobsorianoTanStack Start
const authStateFn = createServerFn({ method: 'GET' }).handler(async () => { const request = getWebRequest(); const { userId } = await getAuth(request, { treatPendingAsSignedOut: false }); // defaults to true return { userId }; });
Nuxt
export default eventHandler(event => { const { userId } = event.context.auth({ treatPendingAsSignedOut: false }); // defaults to true return { userId }; });
-
Updated dependencies [
f49ec31,d52714e,822e4a1,ce49740,ba7f3fd,9036427,2ed539c,deaafe4,a26ecae,c16a7a5,05b6d65,453cf86]:- @clerk/backend@2.10.0
- @clerk/types@4.82.0
- @clerk/shared@3.22.1
- @clerk/vue@1.11.5
- Updated dependencies [
e52bf8e,c043c19,aa9ff12,7bb644a,c28d29c,172e054]:- @clerk/types@4.81.0
- @clerk/vue@1.11.4
- @clerk/backend@2.9.4
- @clerk/shared@3.22.0
- Updated dependencies [
8dc6bad,aa6a3c3,db50c47]:- @clerk/types@4.80.0
- @clerk/backend@2.9.3
- @clerk/shared@3.21.2
- @clerk/vue@1.11.3
- Updated dependencies [
413468c,7b7eb1f]:- @clerk/shared@3.21.1
- @clerk/types@4.79.0
- @clerk/backend@2.9.2
- @clerk/vue@1.11.2
-
Fix export of
RedirectToTaskscontrol component (#6546) by @LauraBeatris -
Updated dependencies [
83757e7,5b24129]:- @clerk/vue@1.11.1
- @clerk/shared@3.21.0
- @clerk/types@4.78.0
- @clerk/backend@2.9.1
- Updated dependencies [
4db1e58,d400782,69498df,307dc3f,2db7431,59f1559,69498df]:- @clerk/types@4.77.0
- @clerk/backend@2.9.0
- @clerk/shared@3.20.1
- @clerk/vue@1.11.0
- Updated dependencies [
15fe106,df63e76,173837c,8b52d7a,854dde8,ae2e2d6,037f25a,f8b38b7]:- @clerk/types@4.76.0
- @clerk/backend@2.8.0
- @clerk/shared@3.20.0
- @clerk/vue@1.10.1
- Updated dependencies [
b72a3dd,d93b0ed,6459f7d,0ff648a,9084759]:- @clerk/types@4.75.0
- @clerk/vue@1.10.0
- @clerk/shared@3.19.0
- @clerk/backend@2.7.1
-
Add ability to define a machine secret key to Clerk BAPI client function (#6479) by @wobsoriano
const clerkClient = createClerkClient({ machineSecretKey: 'ak_xxxxx' }) clerkClient.m2mTokens.create({...})
-
Updated dependencies [
1ad16da,4edef81,6ff416f,e82f177,696f8e1,f318d22,0d27281,1cc66ab]:- @clerk/types@4.74.0
- @clerk/backend@2.7.0
- @clerk/shared@3.18.1
- @clerk/vue@1.9.3
- Updated dependencies [
9368daf,f93965f,7b6dcee,ef87617,b637177]:- @clerk/shared@3.18.0
- @clerk/types@4.73.0
- @clerk/vue@1.9.2
- @clerk/backend@2.6.3
- Updated dependencies [
7a46679,05cc5ec,22c35ef,8c7e5bb,e8d816a,aa9f185,af0e123,3d1d871]:- @clerk/shared@3.17.0
- @clerk/types@4.72.0
- @clerk/backend@2.6.2
- @clerk/vue@1.9.1
-
Introduces machine authentication, supporting four token types:
api_key,oauth_token,machine_token, andsession_token. For backwards compatibility,session_tokenremains the default when no token type is specified. This enables machine-to-machine authentication and use cases such as API keys and OAuth integrations. Existing applications continue to work without modification. (#6391) by @wobsorianoYou can specify which token types are allowed by using the
acceptsTokenoption in theevent.context.auth()context. This option can be set to a specific type, an array of types, or'any'to accept all supported tokens.Example usage:
export default eventHandler(event => { const auth = event.locals.auth({ acceptsToken: 'any' }); if (authObject.tokenType === 'session_token') { console.log('this is session token from a user'); } else { console.log('this is some other type of machine token'); console.log('more specifically, a ' + authObject.tokenType); } return {}; });
- Updated dependencies [
e404456,2803133,f1d9d34,0bdd0df,d58b959,232d7d3,f6375f0,822ba1f,af615b8,d4d2612]:- @clerk/types@4.71.0
- @clerk/shared@3.16.0
- @clerk/backend@2.6.1
- @clerk/vue@1.9.0
- Updated dependencies [
2bbeaf3,b0fdc9e]:- @clerk/backend@2.6.0
- @clerk/types@4.70.1
- @clerk/shared@3.15.1
- @clerk/vue@1.8.21
- Updated dependencies [
cd59c0e,cd59c0e]:- @clerk/types@4.70.0
- @clerk/shared@3.15.0
- @clerk/backend@2.5.2
- @clerk/vue@1.8.20
- Updated dependencies [
fecc99d,959d63d,10e1060,92c44dd,a04a8f5,c61855c,43ea069]:- @clerk/types@4.69.0
- @clerk/shared@3.14.0
- @clerk/backend@2.5.1
- @clerk/vue@1.8.19
- Updated dependencies [
d2f6f9e,a329836,5fbf8df,6041c39,3f1270d,1d9c409,df49349]:- @clerk/types@4.68.0
- @clerk/shared@3.13.0
- @clerk/backend@2.5.0
- @clerk/vue@1.8.18
- Updated dependencies [
2a90b68,af50905]:- @clerk/types@4.67.0
- @clerk/shared@3.12.3
- @clerk/backend@2.4.5
- @clerk/vue@1.8.17
- Updated dependencies [
8ee859c]:- @clerk/shared@3.12.2
- @clerk/types@4.66.1
- @clerk/backend@2.4.4
- @clerk/vue@1.8.16
- Updated dependencies [
025e304,dedf487,b96114e]:- @clerk/types@4.66.0
- @clerk/backend@2.4.3
- @clerk/shared@3.12.1
- @clerk/vue@1.8.15
- Updated dependencies [
2be6a53,f6a1c35,6826d0b,f6a1c35,8fdb209,97a07f7,e3da9f4]:- @clerk/types@4.65.0
- @clerk/shared@3.12.0
- @clerk/backend@2.4.2
- @clerk/vue@1.8.14
- Updated dependencies [
f42c4fe,ec207dc,ec207dc,0e0cc1f]:- @clerk/types@4.64.0
- @clerk/shared@3.11.0
- @clerk/backend@2.4.1
- @clerk/vue@1.8.13
- Updated dependencies [
c2f24da,abd8446,8387a39,feba23c,f2a6641,de9c01a,a8638b0,3b4b3cb]:- @clerk/backend@2.4.0
- @clerk/shared@3.10.2
- @clerk/types@4.63.0
- @clerk/vue@1.8.12
- Updated dependencies [
02a1f42,edc0bfd]:- @clerk/shared@3.10.1
- @clerk/types@4.62.1
- @clerk/vue@1.8.11
- @clerk/backend@2.3.1
- Updated dependencies [
f1be1fe,8bfdf94,bffb42a,084e7cc]:- @clerk/types@4.62.0
- @clerk/backend@2.3.0
- @clerk/shared@3.10.0
- @clerk/vue@1.8.10
-
Make
initialStateprop public and bump@nuxt/kitto 3.17.5 (#6132) by @wobsoriano -
Updated dependencies [
b495279,c3fa15d,628583a,52d5e57,15a945c,805c4a8,10f3dda,72629b0,2692124]:- @clerk/types@4.61.0
- @clerk/backend@2.2.0
- @clerk/vue@1.8.9
- @clerk/shared@3.9.8
- Updated dependencies [
19e9e11,18bcb64,2148166,4319257,607d333,138f733,4118ed7,d832d91,6842ff1,48be55b,183e382,2c6f805,97749d5]:- @clerk/types@4.60.1
- @clerk/backend@2.1.0
- @clerk/shared@3.9.7
- @clerk/vue@1.8.8
-
Machine authentication is now supported for advanced use cases via the backend SDK. You can use
clerkClient.authenticateRequestto validate machine tokens (such as API keys, OAuth tokens, and machine-to-machine tokens). No new helpers are included in these packages yet. (#5689) by @wobsorianoExample (Astro):
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())); };
-
The
svixdependency is no longer needed when using theverifyWebhook()function.verifyWebhook()was refactored to not rely onsvixanymore while keeping the same functionality and behavior. (#6059) by @royangerIf you previously installed
svixto useverifyWebhook()you can uninstall it now:npm uninstall svix
- Updated dependencies [
ea622ba,d8fa5d9,be2e89c,c656270,5644d94,b578225,918e2e0,795d09a,4f93634,8838120]:- @clerk/backend@2.0.0
- @clerk/types@4.60.0
- @clerk/shared@3.9.6
- @clerk/vue@1.8.7
- Updated dependencies [
5421421,f897773,1c97fd0,2c6a0cc,71e6a1f]:- @clerk/backend@1.34.0
- @clerk/shared@3.9.5
- @clerk/types@4.59.3
- @clerk/vue@1.8.6
- Updated dependencies [
6ed3dfc,22c3363,ac6b231]:- @clerk/types@4.59.2
- @clerk/backend@1.33.1
- @clerk/shared@3.9.4
- @clerk/vue@1.8.5
- Updated dependencies [
ced8912,f237d76,5f1375b]:- @clerk/backend@1.33.0
- @clerk/shared@3.9.3
- @clerk/vue@1.8.4
- Updated dependencies [
c305b31,b813cbe,6bb480e]:- @clerk/types@4.59.1
- @clerk/backend@1.32.3
- @clerk/shared@3.9.2
- @clerk/vue@1.8.3
- Updated dependencies [
b1337df,65f0878,df6fefd,4282bfa,5491491]:- @clerk/types@4.59.0
- @clerk/backend@1.32.2
- @clerk/shared@3.9.1
- @clerk/vue@1.8.2
-
Add
isSatelliteprop type in Vue and Nuxt SDKs (#5911) by @wobsoriano -
Updated dependencies [
1ff6d6e,80bdc58,fbf3cf4]:- @clerk/shared@3.9.0
- @clerk/types@4.58.1
- @clerk/vue@1.8.1
- @clerk/backend@1.32.1
- Updated dependencies [
0769a9b,0f5145e,4998547,afdfd18,b7c51ba,437b53b,5217155]:- @clerk/backend@1.32.0
- @clerk/types@4.58.0
- @clerk/vue@1.8.0
- @clerk/shared@3.8.2
- Updated dependencies [
4db96e0,36fb43f,e5ac444,4db96e0,d227805]:- @clerk/types@4.57.1
- @clerk/backend@1.31.4
- @clerk/shared@3.8.1
- @clerk/vue@1.7.2
-
Set default SDK Metadata. (#5839) by @wobsoriano
-
Updated dependencies [
db0138f,8c1f7c3,aa97231,c792f37,3bf08a9,74cf3b2,037b113,c15a412,7726a03,ed10566,b846a9a,e66c800,45e8298,9c41091,29462b4,322c43f,17397f9,45e8298]:- @clerk/types@4.57.0
- @clerk/vue@1.7.1
- @clerk/shared@3.8.0
- @clerk/backend@1.31.3
- Updated dependencies [
9ec0a73,d9222fc,56ba4e2]:- @clerk/types@4.56.3
- @clerk/vue@1.7.0
- @clerk/backend@1.31.2
- @clerk/shared@3.7.8
- Updated dependencies [
225b9ca]:- @clerk/types@4.56.2
- @clerk/backend@1.31.1
- @clerk/shared@3.7.7
- @clerk/vue@1.6.8
-
Fix handshake redirect loop in applications deployed to Netlify with a Clerk development instance. (#5656) by @wobsoriano
-
Updated dependencies [
387bf62,2716622,294da82,4a8fe40]:- @clerk/types@4.56.1
- @clerk/shared@3.7.6
- @clerk/backend@1.30.2
- @clerk/vue@1.6.7
- Updated dependencies [
b02e766,5d78b28,d7f4438,5866855,0007106,462b5b2,447d7a9,2beea29,115601d]:- @clerk/types@4.56.0
- @clerk/backend@1.30.1
- @clerk/shared@3.7.5
- @clerk/vue@1.6.6
- Updated dependencies [
ba19465,8b25035]:- @clerk/backend@1.30.0
- @clerk/types@4.55.1
- @clerk/shared@3.7.4
- @clerk/vue@1.6.5
- Updated dependencies [
33201bf,4334598,0ae0403]:- @clerk/types@4.55.0
- @clerk/backend@1.29.2
- @clerk/shared@3.7.3
- @clerk/vue@1.6.4
- Updated dependencies [
45486ac,837692a,0c00e59,6a5f644]:- @clerk/types@4.54.2
- @clerk/backend@1.29.1
- @clerk/shared@3.7.2
- @clerk/vue@1.6.3
- Updated dependencies [
ab939fd,03284da,7389ba3,00f16e4,bb35660,efb5d8c,c2712e7,aa93f7f,a7f3ebc,d3fa403,f6ef841,6cba4e2,fb6aa20,e634830,f8887b2]:- @clerk/types@4.54.1
- @clerk/backend@1.29.0
- @clerk/shared@3.7.1
- @clerk/vue@1.6.2
- Updated dependencies [
431a821,950ffed,d3e6c32,e4d04ae,431a821,93068ea,431a821,431a821,103bc03,a0cc247,85ed003,48438b4,e60e3aa,65712dc,9ee0531,78d22d4,196dcb4]:- @clerk/backend@1.28.0
- @clerk/types@4.54.0
- @clerk/shared@3.7.0
- @clerk/vue@1.6.1
- Updated dependencies [
70c9db9,554242e,b422156,cc1f9a0,8186cb5]:- @clerk/backend@1.27.3
- @clerk/shared@3.6.0
- @clerk/types@4.53.0
- @clerk/vue@1.6.0
- Updated dependencies [
3ad3bc8,3ad3bc8,cfa94b8,2033919,1b34bcb,5f3cc46]:- @clerk/shared@3.5.0
- @clerk/types@4.52.0
- @clerk/backend@1.27.2
- @clerk/vue@1.5.2
- Updated dependencies [
f6f275d]:- @clerk/backend@1.27.1
- @clerk/types@4.51.1
- @clerk/shared@3.4.1
- @clerk/vue@1.5.1
- Updated dependencies [
a8180ce,e1ec52b,6112420,bebb6d8,d0d5203,6112420,2cceeba,026ad57,9b25e31]:- @clerk/vue@1.5.0
- @clerk/types@4.51.0
- @clerk/backend@1.27.0
- @clerk/shared@3.4.0
-
Deprecate
event.context.authin favor ofevent.context.auth()as function (#5513) by @LauraBeatrisexport default clerkMiddleware((event) => { + const { userId } = event.context.auth() - const { userId } = event.context.auth const isAdminRoute = event.path.startsWith('/api/admin') if (!userId && isAdminRoute) { throw createError({ statusCode: 401, statusMessage: 'Unauthorized: User not signed in', }) } }) -
Introduce a
verifyWebhook()function to verify incoming Clerk webhook requests and process the payload. This function handles webhook signature verification usingSvixand is now available across all backend and fullstack SDKs. (#5468) by @wobsorianoTo get started, install
svix, which Clerk uses to verify its webhooks:npm install svix
Then in your webhook route handler, import
verifyWebhook()from the Nuxt SDK:// server/api/webhooks.post.ts import { verifyWebhook } from '@clerk/nuxt/webhooks'; export default eventHandler(async event => { try { const evt = await verifyWebhook(event); // Do something with payload const { id } = evt.data; const eventType = evt.type; console.log(`Received webhook with ID ${id} and event type of ${eventType}`); console.log('Webhook payload:', body); return 'Webhook received'; } catch (err) { console.error('Error: Could not verify webhook:', err); setResponseStatus(event, 400); return 'Error: Verification error'; } });
For more information on how to sync Clerk data to your app with webhooks, see our guide.
-
Remove telemtry event from
clerkMiddleware(). (#5501) by @brkalow -
Updated dependencies [
60a9a51,e984494,cd6ee92,ec4521b,38828ae,f30fa75,9c68678,fe065a9,619cde8]:- @clerk/backend@1.26.0
- @clerk/shared@3.3.0
- @clerk/types@4.50.2
- @clerk/vue@1.4.6
- Updated dependencies [
e20fb6b,77e6462]:- @clerk/shared@3.2.3
- @clerk/types@4.50.1
- @clerk/backend@1.25.8
- @clerk/vue@1.4.5
-
Improved type-safety in Vue plugin installation. (#5458) by @wobsoriano
-
Updated dependencies [
1da28a2,7babfb2,a9b618d,f20dc15,4d9f1ee]:- @clerk/types@4.50.0
- @clerk/vue@1.4.4
- @clerk/shared@3.2.2
- @clerk/backend@1.25.7
- Updated dependencies [
27d66a5,466ed13]:- @clerk/backend@1.25.6
- @clerk/types@4.49.2
- @clerk/shared@3.2.1
- @clerk/vue@1.4.3
- Updated dependencies [
facefaf,3910ebe,e513333]:- @clerk/backend@1.25.4
- @clerk/types@4.49.1
- @clerk/shared@3.1.0
- @clerk/vue@1.4.1
- Updated dependencies [
725918d,10247ba,91d0f0b,9572bf5,39bbc51,ba2b00c,3dddcda,7524943,150b5c8,23c931e,730262f,5601a15,0b18bb1,021bc5f,1a61390]:- @clerk/types@4.49.0
- @clerk/backend@1.25.3
- @clerk/vue@1.4.0
- @clerk/shared@3.0.2
-
Bump
@nuxt/*dependencies to 3.16.0 and add proper typing forevent.context.authobject in event handlers (#5300) by @wobsorianoexport default eventHandler(event => { const { userId } = event.context.auth; // auth is now typed // ... return { userId }; });
- Updated dependencies [
8182f6711e25cc4a78baa95b023a4158280b31e8,75879672c5805bfba1caca906ac0729497744164,7ec95a7e59033600958aca4b86f3bcd5da947dec,3c225d90227141dc62d955e76c7f8e0202524bc7,2a66c16af08573000bb619607346ac420cd4ce56]:- @clerk/backend@1.25.2
- @clerk/shared@3.0.1
- @clerk/types@4.48.0
- @clerk/vue@1.3.1
- Updated dependencies [
67f1743aa1e0705d89ee6b532007f2686929240b]:- @clerk/backend@1.25.1
- Updated dependencies [
4fa5e27e33d229492c77e06ca4b26d552ff3d92f,29a44b0e5c551e52915f284545699010a87e1a48,4d7761a24af5390489653923165e55cbf69a8a6d]:- @clerk/backend@1.25.0
-
Introduce
updateClerkOptions()utility function to update Clerk options on the fly. (#5235) by @wobsorianoUsage:
<script setup> import { updateClerkOptions } from '@clerk/vue'; import { dark } from '@clerk/themes'; import { frFR } from '@clerk/localizations'; function enableDarkTheme() { updateClerkOptions({ appearance: { baseTheme: dark, }, }); } function changeToFrench() { updateClerkOptions({ localization: frFR, }); } </script> <template> <button @click="enableDarkTheme">Enable Dark Theme</button> <button @click="changeToFrench">Change to French</button> </template>
-
Fixes an issue where duplicated imports caused warnings in the console. (#5227) by @wobsoriano
-
The
exportsmap insidepackage.jsonhas been slightly adjusted to allow forrequire(esm)to work correctly. The"import"conditions have been changed to"default". (#5188) by @LekoArtsYou shouldn't see any change in behavior/functionality on your end.
-
Updated dependencies [
54a3b5b7fbdbbf3655ccabf10370313728d4d7be,28179323d9891bd13625e32c5682a3276e73cdae,7ae77b74326e378bf161e29886ee82e1556d9840,c5c246ce91c01db9f1eaccbd354f646bcd24ec0a,de89c4fb319c0a86a6785b344969f542723229f9,bcbe5f6382ebcc70ef4fddb950d052bf6b7d693a,382c30240f563e58bc4d4832557c6825da40ce7f]:- @clerk/vue@1.3.0
- @clerk/types@4.47.0
- @clerk/shared@3.0.0
- @clerk/backend@1.24.3
-
Introduce
getAuth()helper to retrieve authentication state from the event object. (#5158) by @wobsorianoExample:
import { getAuth } from '@clerk/nuxt/server'; export default eventHandler(event => { const { userId } = getAuth(event); if (!userId) { // User is not authenticated } });
-
Re-export error handling utilities from
@clerk/shared(#5155) by @wobsorianoExample:
<script setup lang="ts"> import { useSignIn } from '@clerk/vue'; import { isClerkAPIResponseError } from '@clerk/vue/errors'; // ... form state refs and other setup ... const { signIn } = useSignIn(); const handleSubmit = async () => { try { const signInAttempt = await signIn.value.create({ identifier: email.value, password: password.value, }); // ... handle successful sign in ... } catch (err) { // Type guard to safely handle Clerk API errors if (isClerkAPIResponseError(err)) { errors.value = err.errors; // err.errors is properly typed as ClerkAPIError[] } } }; </script> <template> <!-- Form template here --> </template>
-
Updated dependencies [
d76c4699990b8477745c2584b1b98d5c92f9ace6,a9b0087fca3f427f65907b358d9b5bc0c95921d8,92d17d7c087470b262fa5407cb6720fe6b17d333,62200fad4431d625fcb4bf2a521e4650eb615381]:- @clerk/shared@2.22.0
- @clerk/types@4.46.1
- @clerk/vue@1.2.1
- @clerk/backend@1.24.2
- Updated dependencies [
dd2cbfe9f30358b6b298901bb52fa378b0acdca3,570d8386f6aa596bf7bb1659bdddb8dd4d992b1d,570d8386f6aa596bf7bb1659bdddb8dd4d992b1d,9b6102c551dcd5500e29e3a3de9e6483796f6686,128fd8909ae083c0d274dee7c6810e8574e1ce33,98436f018fb19170a1b5781401577dcab6ec706a]:- @clerk/types@4.46.0
- @clerk/vue@1.2.0
- @clerk/backend@1.24.1
- @clerk/shared@2.21.1
- Updated dependencies [
ce44176efd4f2132001c49b815cbee409463bbea,4089ca43c3fea5a2acedc86c6fc8a88e7cbea16b,f41081c563ddd2afc05b837358e0de087ae0c895,767ac85fe6ce0ee0594c923e9af701bb05f40a0b,225b38c7187d31fc755155ea99834ca03894d36b,c0f2daebe15642cd0cef16aafa1df1ece8ef771d,429f1bfe5f7a554ab1fdf265475ba6c8b3f78472,5faa60e805ef14d9496a6caf9ff4dd8ec500c7e2]:- @clerk/backend@1.24.0
- @clerk/vue@1.1.11
- @clerk/shared@2.21.0
- @clerk/types@4.45.1
- Add
<Waitlist />component to the set of auto-imported components (#5067) by @davidpattaguan
- Updated dependencies [
d3152be7f01fbb5ca26aeddc2437021f4b7ecc83,f976349243da2b75023e59e802460e6f3592ebbd]:- @clerk/types@4.45.0
- @clerk/backend@1.23.11
- @clerk/shared@2.20.18
- @clerk/vue@1.1.10
-
Add
createRouteMatcher()helper function that allows you to protect multiple pages or API routes. (#5050) by @wobsorianoFor protecting pages (in a global route middleware):
// createRouteMatcher is automatically imported const isProtectedRoute = createRouteMatcher(['/dashboard(.*)', '/forum(.*)']); export default defineNuxtRouteMiddleware(to => { const { userId } = useAuth(); if (!userId.value && isProtectedRoute(to)) { // Add custom logic to run before redirecting return navigateTo('/sign-in'); } });
For protecting API routes:
import { clerkMiddleware, createRouteMatcher } from '@clerk/nuxt/server'; // Unlike pages, you need to import `createRouteMatcher` from `@clerk/nuxt/server` const isProtectedRoute = createRouteMatcher(['/api/user(.*)', '/api/projects(.*)']); export default clerkMiddleware(event => { const { userId } = event.context.auth; if (!userId && isProtectedRoute(event)) { setResponseStatus(event, 401); return 'You are not authorized to access this resource.'; } });
- Updated dependencies [
26225f2c31a22560f7ece2e02f1d0080b5b89520,833693a6792b621e72162d70673e7bdfa84a69b6]:- @clerk/shared@2.20.17
- @clerk/types@4.44.3
- @clerk/backend@1.23.10
- @clerk/vue@1.1.9
- Updated dependencies [
a309be354275b91a7b17d5a67e8ef6aa230a9935,83f145621397986c8eca828c0001fba83e3fc941,4773d0ad4ed27928fa53357906c0f3a349b9f871,1345cb487970a7347351897e80dfb829d85c41ea]:- @clerk/shared@2.20.16
- @clerk/vue@1.1.8
- @clerk/backend@1.23.9
- @clerk/types@4.44.2
- Updated dependencies [
57c983fdc2b8d883623a2294daae0ac6c02c48f6,a26cf0ff10c76244975c454fdf6c615475d4bcd5,dd58c2507f8a7af4ebfc1241e2672a5678a83eaa]:- @clerk/types@4.44.1
- @clerk/shared@2.20.15
- @clerk/backend@1.23.8
- @clerk/vue@1.1.7
- Updated dependencies [
2179690c10a61b117e82fdd566b34939f4d28bc1,bdb537a9902c0f0ae58ca1d4b7590d929f28fedb]:- @clerk/types@4.44.0
- @clerk/backend@1.23.7
- @clerk/shared@2.20.14
- @clerk/vue@1.1.6
- Updated dependencies [
f87ede848265d75ea1e880a3ab80c53a250f42cf,e0cea9a9bf8b90858067154cba9c149d1634dc91,6126cc98281bca96797fd8a55b6ec6aeda397e46,6e096564a459db4eaf953e99e570905b10be6c84]:- @clerk/shared@2.20.13
- @clerk/backend@1.23.6
- @clerk/types@4.43.0
- @clerk/vue@1.1.5
- Updated dependencies [
fe3e49f61acefe8d7f1992405f7cb415fea2e5c8,4427c4702f64d4f28f7564ce5889d41e260aa519]:- @clerk/types@4.42.0
- @clerk/backend@1.23.5
- @clerk/shared@2.20.12
- @clerk/vue@1.1.4
- Updated dependencies [
418ec5c62c4eb600566faab07684c068a29007e3]:- @clerk/types@4.41.2
- @clerk/backend@1.23.4
- @clerk/shared@2.20.11
- @clerk/vue@1.1.3
- Updated dependencies [
9eef7713212378351e8e01628611eaa18de250e8]:- @clerk/shared@2.20.10
- @clerk/backend@1.23.3
- @clerk/vue@1.1.2
- Updated dependencies [
7ffc99b48977b9f6c74c0c71c500b60cb8aba65e]:- @clerk/types@4.41.1
- @clerk/backend@1.23.2
- @clerk/shared@2.20.9
- @clerk/vue@1.1.1
-
Updated dependencies [
4af35380f18d1d06c15ad1f5745c2d5a1ab1c37d,aa48b1f9e890b2402e9d05989a4820141076f7bf,53bd34fff38b17498edf66cc4bc2d42d707f28dc]:- @clerk/types@4.41.0
- @clerk/vue@1.1.0
- @clerk/backend@1.23.1
- @clerk/shared@2.20.8
-
Add quickstart links to Vue and Nuxt SDK READMEs (#4883) by @wobsoriano
-
Updated dependencies [
e9e8834f7bfc953c3ae66fedf65b6952689c49da,e45d455b78fde898720d67637cec52446f5ffc80,fd7a5be73db3acaa7daeb9b15af73c2ce99d03a6,7182b93101518a389cc13859f8a0fe8bd6f37a06]:- @clerk/backend@1.23.0
- @clerk/vue@1.0.3
- @clerk/types@4.40.3
- @clerk/shared@2.20.7
- Updated dependencies [
72d29538f587934309da96fc1c6d454bb9aad21e,84867be0215d7f74d8be7b4f803e2c3a241e2f89,fa967ce79e1b5f2e8216eb09900879cb825fa528]:- @clerk/backend@1.22.0
- Updated dependencies [
44cab6038af0a4d23869b3b292ece742fbbc4d85]:- @clerk/backend@1.21.6
- @clerk/types@4.40.2
- @clerk/shared@2.20.6
- @clerk/vue@1.0.2
- Updated dependencies [
80e1117631d35834705119a79cdcf9e0ed423fdd,632bde1536753087902917a319a4a8d9fd043923]:- @clerk/types@4.40.1
- @clerk/vue@1.0.1
- @clerk/backend@1.21.5
- @clerk/shared@2.20.5
- Introduce the official Clerk SDK for Vue and Nuxt. (#4791) by @wobsoriano
-
Fix Vite optimization issue that caused duplicate versions of @clerk/vue to be created on first load, resulting in the Vue plugin losing context. (#4820) by @wobsoriano
-
Updated dependencies [
8ad1866264ce5cf60a125d3a270597e8044b04c7]:- @clerk/vue@1.0.0
- Updated dependencies [
b3300c84a42276bd071a37addbd1ca6888ed9d7c,c9da04636ffe1ba804a1ce5e5b79027d3a2344d2,aeb5855853e5e89a03a1d6ce3d421c3e9870c814]:- @clerk/backend@1.21.4
- @clerk/types@4.40.0
- @clerk/vue@0.1.5
- @clerk/shared@2.20.4
- Updated dependencies [
84ccb0049041534f111be65f7c7d4d6120069446]:- @clerk/shared@2.20.3
- @clerk/backend@1.21.3
- @clerk/vue@0.1.4
- Updated dependencies [
dfdf23bc9a25ebc13df98d553454a14c765423bb]:- @clerk/vue@0.1.3
- Updated dependencies [
aeafa7c5efd50c893d088ac99199d7eaecc04025,acd9326ef2d6942b981b3ee59c4b20ddd303323d]:- @clerk/types@4.39.4
- @clerk/backend@1.21.2
- @clerk/shared@2.20.2
- @clerk/vue@0.1.2
-
Re-export Vue SDK components and composables to Nuxt SDK to support manual imports (#4750) by @wobsoriano
-
Updated dependencies [
66ad299e4b6496ea4a93799de0f1ecfad920ddad,dd3fdc7b2a96ddb90b33c6f1cefb055a60f99a9d,e1748582d0c89462f48a482a7805871b7065fa19,7f7edcaa8228c26d19e9081979100ada7e982095,e1748582d0c89462f48a482a7805871b7065fa19,dd3fdc7b2a96ddb90b33c6f1cefb055a60f99a9d]:- @clerk/shared@2.20.1
- @clerk/types@4.39.3
- @clerk/backend@1.21.1
- @clerk/vue@0.1.1
- Switching to use ^ for semver ranges of internal @clerk/ production dependencies. (#4664) by @jacekradko
- Updated dependencies [
ffa631d2480cfe77bf08c61b1302ace308e5b630]:- @clerk/backend@1.21.0
- @clerk/shared@2.20.0
- @clerk/vue@0.1.0
- Updated dependencies [
cd72a27a75863dfd94b0a00ed5b2d03231556bc0]:- @clerk/types@4.39.2
- @clerk/backend@1.20.3
- @clerk/shared@2.19.4
- @clerk/vue@0.0.17
- Updated dependencies [
fe75ced8a7d8b8a28839430444588ee173b5230a,1b86a1da34ce4bc309f69980ac13a691a0a633c2]:- @clerk/backend@1.20.2
- @clerk/types@4.39.1
- @clerk/shared@2.19.3
- @clerk/vue@0.0.16
- Updated dependencies [
4cb22548da81dd8b186a6ef1cf120aea99c85c62]:- @clerk/shared@2.19.2
- @clerk/backend@1.20.1
- @clerk/vue@0.0.15
- Updated dependencies [
3f640805d2a4e1616aafa56f6848d6657911bb99,550c7e9851329688e37be29b83ea0c3b12482af7,3f640805d2a4e1616aafa56f6848d6657911bb99]:- @clerk/backend@1.20.0
- @clerk/types@4.39.0
- @clerk/shared@2.19.1
- @clerk/vue@0.0.14
- Updated dependencies [
0bc3ccc5bd4a93121bb7e7d6a32271af9c31f8c3,0bc3ccc5bd4a93121bb7e7d6a32271af9c31f8c3]:- @clerk/shared@2.19.0
- @clerk/types@4.38.0
- @clerk/backend@1.19.2
- @clerk/vue@0.0.13
- Updated dependencies [
4e5e7f463c12893a21cb3b5f9317fc3f2945879b,bca0e772ed176f56cca87884077b49290da0d9a6,1c5104581685a5a3d1d6c0b30dd406ac27ac3653]:- @clerk/types@4.37.0
- @clerk/vue@0.0.12
- @clerk/backend@1.19.1
- @clerk/shared@2.18.1
- Updated dependencies [
8ee5d84995fa17532491ff96efac5738c9bcd9ef,09fedd1df155d30cc055ce701b133aa6470e9b47,b6aa589f75be62a89a3853d496176ed2f2c0e2c5,235eaae4c3c9400492fca47d20a47c7081041565]:- @clerk/types@4.36.0
- @clerk/backend@1.19.0
- @clerk/shared@2.18.0
- @clerk/vue@0.0.11
-
Allow custom middleware with options (#4655) by @wobsoriano
-
Updated dependencies [
8a28d1f403309f692d9332704f07effbf39d056d,8a28d1f403309f692d9332704f07effbf39d056d]:- @clerk/types@4.35.1
- @clerk/backend@1.18.1
- @clerk/shared@2.17.1
- @clerk/vue@0.0.10
- Updated dependencies [
0a1807552dcf0501a97f60b4df0280525bca9743]:- @clerk/vue@0.0.9
- Updated dependencies [
fe9e147e366153d664af7fc325655ecb299a1f9d,fe9e147e366153d664af7fc325655ecb299a1f9d,d84d7e31235c5c7da3415981dc76db4473a71a39,fe9e147e366153d664af7fc325655ecb299a1f9d,dce4f7ffca7248c0500f0ec9a978672b1f2fad69]:- @clerk/shared@2.17.0
- @clerk/types@4.35.0
- @clerk/backend@1.18.0
- @clerk/vue@0.0.8
- Updated dependencies [
c70994b5b6f92a6550dfe37547f01bbfa810c223,7623a99594e7329200b6b374e483152d7679ce66]:- @clerk/types@4.34.2
- @clerk/backend@1.17.2
- @clerk/shared@2.16.1
- @clerk/vue@0.0.7
- Updated dependencies [
e47eb5882a7fd4a8dee25933c6644790d6ea3407,273d16cb0665d4d960838cb294dc356f41814745,6b0961765e1f3d09679be4b163fa13ac7dd97191]:- @clerk/shared@2.16.0
- @clerk/types@4.34.1
- @clerk/vue@0.0.6
- @clerk/backend@1.17.1
-
Introduce an experimental version of Clerk SDK for Nuxt (#4541) by @wobsoriano
-
Updated dependencies [
91f60ca113928a5152efed23ef5eeb9330be5066,536fa996ff84a545678a3036b28409824d1c00dd,b28c5e8bc44885bf6b1533df48e872ba90c387da]:- @clerk/vue@0.0.5
- @clerk/backend@1.17.0
- @clerk/shared@2.15.0