@clerk/backend 3.0.0-snapshot.v20260114130428 → 3.0.0-snapshot.v20260114214542

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -2,7 +2,7 @@ import {
2
2
  createAuthenticateRequest,
3
3
  createBackendApiClient,
4
4
  verifyToken
5
- } from "./chunk-W4KGWT7U.mjs";
5
+ } from "./chunk-SJTEA37I.mjs";
6
6
  import "./chunk-YBVFDYDR.mjs";
7
7
  import {
8
8
  withLegacyReturn
package/dist/internal.js CHANGED
@@ -228,7 +228,7 @@ module.exports = __toCommonJS(internal_exports);
228
228
  // src/constants.ts
229
229
  var API_URL = "https://api.clerk.com";
230
230
  var API_VERSION = "v1";
231
- var USER_AGENT = `${"@clerk/backend"}@${"3.0.0-snapshot.v20260114130428"}`;
231
+ var USER_AGENT = `${"@clerk/backend"}@${"3.0.0-snapshot.v20260114214542"}`;
232
232
  var MAX_CACHE_LAST_UPDATED_AT_SECONDS = 5 * 60;
233
233
  var SUPPORTED_BAPI_VERSION = "2025-11-10";
234
234
  var Attributes = {
@@ -249,9 +249,7 @@ var Cookies = {
249
249
  HandshakeNonce: "__clerk_handshake_nonce"
250
250
  };
251
251
  var QueryParameters = {
252
- /** @deprecated Use ClerkSync with ClerkSyncStatus instead */
253
252
  ClerkSynced: "__clerk_synced",
254
- ClerkSync: "__clerk_sync",
255
253
  SuffixedCookies: "suffixed_cookies",
256
254
  ClerkRedirectUrl: "__clerk_redirect_url",
257
255
  // use the reference to Cookies to indicate that it's the same value
@@ -297,19 +295,12 @@ var Headers2 = {
297
295
  var ContentTypes = {
298
296
  Json: "application/json"
299
297
  };
300
- var ClerkSyncStatus = {
301
- /** Trigger sync - satellite needs to handshake after returning from primary sign-in */
302
- NeedsSync: "1",
303
- /** Sync completed - prevents re-sync loop after handshake completes */
304
- Completed: "2"
305
- };
306
298
  var constants = {
307
299
  Attributes,
308
300
  Cookies,
309
301
  Headers: Headers2,
310
302
  ContentTypes,
311
- QueryParameters,
312
- ClerkSyncStatus
303
+ QueryParameters
313
304
  };
314
305
 
315
306
  // src/createRedirect.ts
@@ -326,7 +317,7 @@ var errorThrower = (0, import_error.buildErrorThrower)({ packageName: "@clerk/ba
326
317
  var { isDevOrStagingUrl } = (0, import_keys2.createDevOrStagingUrlCache)();
327
318
 
328
319
  // src/createRedirect.ts
329
- var buildUrl = (_baseUrl, _targetUrl, _returnBackUrl, _devBrowserToken, _isSatellite) => {
320
+ var buildUrl = (_baseUrl, _targetUrl, _returnBackUrl, _devBrowserToken) => {
330
321
  if (_baseUrl === "") {
331
322
  return legacyBuildUrl(_targetUrl.toString(), _returnBackUrl?.toString());
332
323
  }
@@ -337,9 +328,6 @@ var buildUrl = (_baseUrl, _targetUrl, _returnBackUrl, _devBrowserToken, _isSatel
337
328
  if (returnBackUrl) {
338
329
  if (isCrossOriginRedirect) {
339
330
  returnBackUrl.searchParams.delete(constants.QueryParameters.ClerkSynced);
340
- if (_isSatellite) {
341
- returnBackUrl.searchParams.set(constants.QueryParameters.ClerkSync, ClerkSyncStatus.NeedsSync);
342
- }
343
331
  }
344
332
  res.searchParams.set("redirect_url", returnBackUrl.toString());
345
333
  }
@@ -365,7 +353,7 @@ var legacyBuildUrl = (targetUrl, redirectUrl) => {
365
353
  return url.toString();
366
354
  };
367
355
  var createRedirect = (params) => {
368
- const { publishableKey, redirectAdapter, signInUrl, signUpUrl, baseUrl, sessionStatus, isSatellite } = params;
356
+ const { publishableKey, redirectAdapter, signInUrl, signUpUrl, baseUrl, sessionStatus } = params;
369
357
  const parsedPublishableKey = (0, import_keys.parsePublishableKey)(publishableKey);
370
358
  const frontendApi = parsedPublishableKey?.frontendApi;
371
359
  const isDevelopment = parsedPublishableKey?.instanceType === "development";
@@ -373,7 +361,7 @@ var createRedirect = (params) => {
373
361
  const hasPendingStatus = sessionStatus === "pending";
374
362
  const redirectToTasks = (url, { returnBackUrl }) => {
375
363
  return redirectAdapter(
376
- buildUrl(baseUrl, `${url}/tasks`, returnBackUrl, isDevelopment ? params.devBrowserToken : null, isSatellite)
364
+ buildUrl(baseUrl, `${url}/tasks`, returnBackUrl, isDevelopment ? params.devBrowserToken : null)
377
365
  );
378
366
  };
379
367
  const redirectToSignUp = ({ returnBackUrl } = {}) => {
@@ -393,9 +381,7 @@ var createRedirect = (params) => {
393
381
  if (hasPendingStatus) {
394
382
  return redirectToTasks(targetUrl, { returnBackUrl });
395
383
  }
396
- return redirectAdapter(
397
- buildUrl(baseUrl, targetUrl, returnBackUrl, isDevelopment ? params.devBrowserToken : null, isSatellite)
398
- );
384
+ return redirectAdapter(buildUrl(baseUrl, targetUrl, returnBackUrl, isDevelopment ? params.devBrowserToken : null));
399
385
  };
400
386
  const redirectToSignIn = ({ returnBackUrl } = {}) => {
401
387
  if (!signInUrl && !accountsBaseUrl) {
@@ -406,9 +392,7 @@ var createRedirect = (params) => {
406
392
  if (hasPendingStatus) {
407
393
  return redirectToTasks(targetUrl, { returnBackUrl });
408
394
  }
409
- return redirectAdapter(
410
- buildUrl(baseUrl, targetUrl, returnBackUrl, isDevelopment ? params.devBrowserToken : null, isSatellite)
411
- );
395
+ return redirectAdapter(buildUrl(baseUrl, targetUrl, returnBackUrl, isDevelopment ? params.devBrowserToken : null));
412
396
  };
413
397
  return { redirectToSignUp, redirectToSignIn };
414
398
  };
@@ -3610,7 +3594,7 @@ var MachineSecretKey = class _MachineSecretKey {
3610
3594
 
3611
3595
  // src/api/resources/OauthAccessToken.ts
3612
3596
  var OauthAccessToken = class _OauthAccessToken {
3613
- constructor(externalAccountId, provider, token, publicMetadata = {}, label, scopes, tokenSecret, expiresAt) {
3597
+ constructor(externalAccountId, provider, token, publicMetadata = {}, label, scopes, tokenSecret, expiresAt, idToken) {
3614
3598
  this.externalAccountId = externalAccountId;
3615
3599
  this.provider = provider;
3616
3600
  this.token = token;
@@ -3619,6 +3603,7 @@ var OauthAccessToken = class _OauthAccessToken {
3619
3603
  this.scopes = scopes;
3620
3604
  this.tokenSecret = tokenSecret;
3621
3605
  this.expiresAt = expiresAt;
3606
+ this.idToken = idToken;
3622
3607
  }
3623
3608
  static fromJSON(data) {
3624
3609
  return new _OauthAccessToken(
@@ -3629,7 +3614,8 @@ var OauthAccessToken = class _OauthAccessToken {
3629
3614
  data.label || "",
3630
3615
  data.scopes,
3631
3616
  data.token_secret,
3632
- data.expires_at
3617
+ data.expires_at,
3618
+ data.id_token
3633
3619
  );
3634
3620
  }
3635
3621
  };
@@ -6007,46 +5993,17 @@ var authenticateRequest = (async (request, options) => {
6007
5993
  }
6008
5994
  }
6009
5995
  const isRequestEligibleForMultiDomainSync = authenticateContext.isSatellite && authenticateContext.secFetchDest === "document";
6010
- const syncStatus = authenticateContext.clerkUrl.searchParams.get(constants.QueryParameters.ClerkSync);
6011
- const needsSync = syncStatus === constants.ClerkSyncStatus.NeedsSync;
6012
- const legacySynced = authenticateContext.clerkUrl.searchParams.get(constants.QueryParameters.ClerkSynced) === "true";
6013
- const syncCompleted = syncStatus === constants.ClerkSyncStatus.Completed || legacySynced;
6014
- const hasCookies = hasSessionToken || hasActiveClient;
6015
- const shouldSkipSatelliteHandshake = authenticateContext.satelliteAutoSync === false && !hasCookies && !needsSync;
6016
- if (authenticateContext.instanceType === "production" && isRequestEligibleForMultiDomainSync && !syncCompleted) {
6017
- if (shouldSkipSatelliteHandshake) {
6018
- return signedOut({
6019
- tokenType: TokenType.SessionToken,
6020
- authenticateContext,
6021
- reason: AuthErrorReason.SessionTokenAndUATMissing
6022
- });
6023
- }
6024
- if (!hasCookies || needsSync) {
6025
- return handleMaybeHandshakeStatus(authenticateContext, AuthErrorReason.SatelliteCookieNeedsSyncing, "");
6026
- }
6027
- }
6028
- if (authenticateContext.instanceType === "development" && isRequestEligibleForMultiDomainSync && !syncCompleted) {
6029
- if (shouldSkipSatelliteHandshake) {
6030
- return signedOut({
6031
- tokenType: TokenType.SessionToken,
6032
- authenticateContext,
6033
- reason: AuthErrorReason.SessionTokenAndUATMissing
6034
- });
6035
- }
6036
- if (!hasCookies || needsSync) {
6037
- const redirectURL = new URL(authenticateContext.signInUrl);
6038
- redirectURL.searchParams.append(
6039
- constants.QueryParameters.ClerkRedirectUrl,
6040
- authenticateContext.clerkUrl.toString()
6041
- );
6042
- const headers = new Headers({ [constants.Headers.Location]: redirectURL.toString() });
6043
- return handleMaybeHandshakeStatus(
6044
- authenticateContext,
6045
- AuthErrorReason.SatelliteCookieNeedsSyncing,
6046
- "",
6047
- headers
6048
- );
6049
- }
5996
+ if (authenticateContext.instanceType === "production" && isRequestEligibleForMultiDomainSync) {
5997
+ return handleMaybeHandshakeStatus(authenticateContext, AuthErrorReason.SatelliteCookieNeedsSyncing, "");
5998
+ }
5999
+ if (authenticateContext.instanceType === "development" && isRequestEligibleForMultiDomainSync && !authenticateContext.clerkUrl.searchParams.has(constants.QueryParameters.ClerkSynced)) {
6000
+ const redirectURL = new URL(authenticateContext.signInUrl);
6001
+ redirectURL.searchParams.append(
6002
+ constants.QueryParameters.ClerkRedirectUrl,
6003
+ authenticateContext.clerkUrl.toString()
6004
+ );
6005
+ const headers = new Headers({ [constants.Headers.Location]: redirectURL.toString() });
6006
+ return handleMaybeHandshakeStatus(authenticateContext, AuthErrorReason.SatelliteCookieNeedsSyncing, "", headers);
6050
6007
  }
6051
6008
  const redirectUrl = new URL(authenticateContext.clerkUrl).searchParams.get(
6052
6009
  constants.QueryParameters.ClerkRedirectUrl
@@ -6059,10 +6016,7 @@ var authenticateRequest = (async (request, options) => {
6059
6016
  authenticateContext.devBrowserToken
6060
6017
  );
6061
6018
  }
6062
- redirectBackToSatelliteUrl.searchParams.set(
6063
- constants.QueryParameters.ClerkSync,
6064
- constants.ClerkSyncStatus.Completed
6065
- );
6019
+ redirectBackToSatelliteUrl.searchParams.append(constants.QueryParameters.ClerkSynced, "true");
6066
6020
  const headers = new Headers({ [constants.Headers.Location]: redirectBackToSatelliteUrl.toString() });
6067
6021
  return handleMaybeHandshakeStatus(authenticateContext, AuthErrorReason.PrimaryRespondsToSyncing, "", headers);
6068
6022
  }