@clerk/shared 3.11.0 → 3.11.1-canary.v20250708185622
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/{chunk-GS4FHYXZ.mjs → chunk-B475RA2C.mjs} +8 -2
- package/dist/chunk-B475RA2C.mjs.map +1 -0
- package/dist/{chunk-J647DFGM.mjs → chunk-FYIZPHEF.mjs} +3 -3
- package/dist/{chunk-J647DFGM.mjs.map → chunk-FYIZPHEF.mjs.map} +1 -1
- package/dist/{chunk-Q3AN3ARW.mjs → chunk-IBB3AM7F.mjs} +1 -1
- package/dist/{chunk-Q3AN3ARW.mjs.map → chunk-IBB3AM7F.mjs.map} +1 -1
- package/dist/{chunk-GN6NFPYL.mjs → chunk-VNFQOEB5.mjs} +2 -2
- package/dist/getEnvVariable.js.map +1 -1
- package/dist/getEnvVariable.mjs +1 -1
- package/dist/index.js +9 -3
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +4 -4
- package/dist/loadClerkJsScript.js +2 -2
- package/dist/loadClerkJsScript.js.map +1 -1
- package/dist/loadClerkJsScript.mjs +2 -2
- package/dist/netlifyCacheHandler.d.mts +1 -1
- package/dist/netlifyCacheHandler.d.ts +1 -1
- package/dist/netlifyCacheHandler.js +7 -1
- package/dist/netlifyCacheHandler.js.map +1 -1
- package/dist/netlifyCacheHandler.mjs +1 -1
- package/dist/versionSelector.js +2 -2
- package/dist/versionSelector.js.map +1 -1
- package/dist/versionSelector.mjs +1 -1
- package/package.json +1 -1
- package/dist/chunk-GS4FHYXZ.mjs.map +0 -1
- /package/dist/{chunk-GN6NFPYL.mjs.map → chunk-VNFQOEB5.mjs.map} +0 -0
|
@@ -4,12 +4,18 @@ import {
|
|
|
4
4
|
|
|
5
5
|
// src/netlifyCacheHandler.ts
|
|
6
6
|
var CLERK_NETLIFY_CACHE_BUST_PARAM = "__clerk_netlify_cache_bust";
|
|
7
|
+
function isNetlifyRuntime() {
|
|
8
|
+
if (typeof process === "undefined" || !process.env) {
|
|
9
|
+
return false;
|
|
10
|
+
}
|
|
11
|
+
return Boolean(process.env.NETLIFY) || Boolean(process.env.NETLIFY_FUNCTIONS_TOKEN) || typeof process.env.URL === "string" && process.env.URL.endsWith("netlify.app");
|
|
12
|
+
}
|
|
7
13
|
function handleNetlifyCacheInDevInstance({
|
|
8
14
|
locationHeader,
|
|
9
15
|
requestStateHeaders,
|
|
10
16
|
publishableKey
|
|
11
17
|
}) {
|
|
12
|
-
const isOnNetlify =
|
|
18
|
+
const isOnNetlify = isNetlifyRuntime();
|
|
13
19
|
const isDevelopmentInstance = isDevelopmentFromPublishableKey(publishableKey);
|
|
14
20
|
if (isOnNetlify && isDevelopmentInstance) {
|
|
15
21
|
const hasHandshakeQueryParam = locationHeader.includes("__clerk_handshake");
|
|
@@ -25,4 +31,4 @@ export {
|
|
|
25
31
|
CLERK_NETLIFY_CACHE_BUST_PARAM,
|
|
26
32
|
handleNetlifyCacheInDevInstance
|
|
27
33
|
};
|
|
28
|
-
//# sourceMappingURL=chunk-
|
|
34
|
+
//# sourceMappingURL=chunk-B475RA2C.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/netlifyCacheHandler.ts"],"sourcesContent":["/* eslint-disable turbo/no-undeclared-env-vars */\nimport { isDevelopmentFromPublishableKey } from './keys';\n\n/**\n * Cache busting parameter for Netlify to prevent cached responses\n * during handshake flows with Clerk development instances.\n *\n * Note: This query parameter will be removed in the \"@clerk/clerk-js\" package.\n *\n * @internal\n */\nexport const CLERK_NETLIFY_CACHE_BUST_PARAM = '__clerk_netlify_cache_bust';\n\n/**\n * Returns true if running in a Netlify environment.\n * Checks for Netlify-specific environment variables in process.env.\n * Safe for browser and non-Node environments.\n */\nfunction isNetlifyRuntime(): boolean {\n if (typeof process === 'undefined' || !process.env) {\n return false;\n }\n\n return (\n Boolean(process.env.NETLIFY) ||\n Boolean(process.env.NETLIFY_FUNCTIONS_TOKEN) ||\n (typeof process.env.URL === 'string' && process.env.URL.endsWith('netlify.app'))\n );\n}\n\n/**\n * Prevents infinite redirects in Netlify's functions by adding a cache bust parameter\n * to the original redirect URL. This ensures that Netlify doesn't serve a cached response\n * during the handshake flow.\n *\n * The issue happens only on Clerk development instances running on Netlify. This is\n * a workaround until we find a better solution.\n *\n * See https://answers.netlify.com/t/cache-handling-recommendation-for-authentication-handshake-redirects/143969/1.\n *\n * @internal\n */\nexport function handleNetlifyCacheInDevInstance({\n locationHeader,\n requestStateHeaders,\n publishableKey,\n}: {\n locationHeader: string;\n requestStateHeaders: Headers;\n publishableKey: string;\n}) {\n const isOnNetlify = isNetlifyRuntime();\n const isDevelopmentInstance = isDevelopmentFromPublishableKey(publishableKey);\n\n if (isOnNetlify && isDevelopmentInstance) {\n const hasHandshakeQueryParam = locationHeader.includes('__clerk_handshake');\n // If location header is the original URL before the handshake flow, add cache bust param\n // The param should be removed in clerk-js\n if (!hasHandshakeQueryParam) {\n const url = new URL(locationHeader);\n url.searchParams.append(CLERK_NETLIFY_CACHE_BUST_PARAM, Date.now().toString());\n requestStateHeaders.set('Location', url.toString());\n }\n }\n}\n"],"mappings":";;;;;AAWO,IAAM,iCAAiC;AAO9C,SAAS,mBAA4B;AACnC,MAAI,OAAO,YAAY,eAAe,CAAC,QAAQ,KAAK;AAClD,WAAO;AAAA,EACT;AAEA,SACE,QAAQ,QAAQ,IAAI,OAAO,KAC3B,QAAQ,QAAQ,IAAI,uBAAuB,KAC1C,OAAO,QAAQ,IAAI,QAAQ,YAAY,QAAQ,IAAI,IAAI,SAAS,aAAa;AAElF;AAcO,SAAS,gCAAgC;AAAA,EAC9C;AAAA,EACA;AAAA,EACA;AACF,GAIG;AACD,QAAM,cAAc,iBAAiB;AACrC,QAAM,wBAAwB,gCAAgC,cAAc;AAE5E,MAAI,eAAe,uBAAuB;AACxC,UAAM,yBAAyB,eAAe,SAAS,mBAAmB;AAG1E,QAAI,CAAC,wBAAwB;AAC3B,YAAM,MAAM,IAAI,IAAI,cAAc;AAClC,UAAI,aAAa,OAAO,gCAAgC,KAAK,IAAI,EAAE,SAAS,CAAC;AAC7E,0BAAoB,IAAI,YAAY,IAAI,SAAS,CAAC;AAAA,IACpD;AAAA,EACF;AACF;","names":[]}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
// src/versionSelector.ts
|
|
2
|
-
var versionSelector = (clerkJSVersion, packageVersion = "5.71.
|
|
2
|
+
var versionSelector = (clerkJSVersion, packageVersion = "5.71.1-canary.v20250708185622") => {
|
|
3
3
|
if (clerkJSVersion) {
|
|
4
4
|
return clerkJSVersion;
|
|
5
5
|
}
|
|
6
6
|
const prereleaseTag = getPrereleaseTag(packageVersion);
|
|
7
7
|
if (prereleaseTag) {
|
|
8
8
|
if (prereleaseTag === "snapshot") {
|
|
9
|
-
return "5.71.
|
|
9
|
+
return "5.71.1-canary.v20250708185622";
|
|
10
10
|
}
|
|
11
11
|
return prereleaseTag;
|
|
12
12
|
}
|
|
@@ -19,4 +19,4 @@ export {
|
|
|
19
19
|
versionSelector,
|
|
20
20
|
getMajorVersion
|
|
21
21
|
};
|
|
22
|
-
//# sourceMappingURL=chunk-
|
|
22
|
+
//# sourceMappingURL=chunk-FYIZPHEF.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/versionSelector.ts"],"sourcesContent":["/**\n * This version selector is a bit complicated, so here is the flow:\n * 1. Use the clerkJSVersion prop on the provider\n * 2. Use the exact `@clerk/clerk-js` version if it is a `@snapshot` prerelease\n * 3. Use the prerelease tag of `@clerk/clerk-js` or the packageVersion provided\n * 4. Fallback to the major version of `@clerk/clerk-js` or the packageVersion provided\n * @param clerkJSVersion - The optional clerkJSVersion prop on the provider\n * @param packageVersion - The version of `@clerk/clerk-js` that will be used if an explicit version is not provided\n * @returns The npm tag, version or major version to use\n */\nexport const versionSelector = (clerkJSVersion: string | undefined, packageVersion = JS_PACKAGE_VERSION) => {\n if (clerkJSVersion) {\n return clerkJSVersion;\n }\n\n const prereleaseTag = getPrereleaseTag(packageVersion);\n if (prereleaseTag) {\n if (prereleaseTag === 'snapshot') {\n return JS_PACKAGE_VERSION;\n }\n\n return prereleaseTag;\n }\n\n return getMajorVersion(packageVersion);\n};\n\nconst getPrereleaseTag = (packageVersion: string) =>\n packageVersion\n .trim()\n .replace(/^v/, '')\n .match(/-(.+?)(\\.|$)/)?.[1];\n\nexport const getMajorVersion = (packageVersion: string) => packageVersion.trim().replace(/^v/, '').split('.')[0];\n"],"mappings":";AAUO,IAAM,kBAAkB,CAAC,gBAAoC,iBAAiB,
|
|
1
|
+
{"version":3,"sources":["../src/versionSelector.ts"],"sourcesContent":["/**\n * This version selector is a bit complicated, so here is the flow:\n * 1. Use the clerkJSVersion prop on the provider\n * 2. Use the exact `@clerk/clerk-js` version if it is a `@snapshot` prerelease\n * 3. Use the prerelease tag of `@clerk/clerk-js` or the packageVersion provided\n * 4. Fallback to the major version of `@clerk/clerk-js` or the packageVersion provided\n * @param clerkJSVersion - The optional clerkJSVersion prop on the provider\n * @param packageVersion - The version of `@clerk/clerk-js` that will be used if an explicit version is not provided\n * @returns The npm tag, version or major version to use\n */\nexport const versionSelector = (clerkJSVersion: string | undefined, packageVersion = JS_PACKAGE_VERSION) => {\n if (clerkJSVersion) {\n return clerkJSVersion;\n }\n\n const prereleaseTag = getPrereleaseTag(packageVersion);\n if (prereleaseTag) {\n if (prereleaseTag === 'snapshot') {\n return JS_PACKAGE_VERSION;\n }\n\n return prereleaseTag;\n }\n\n return getMajorVersion(packageVersion);\n};\n\nconst getPrereleaseTag = (packageVersion: string) =>\n packageVersion\n .trim()\n .replace(/^v/, '')\n .match(/-(.+?)(\\.|$)/)?.[1];\n\nexport const getMajorVersion = (packageVersion: string) => packageVersion.trim().replace(/^v/, '').split('.')[0];\n"],"mappings":";AAUO,IAAM,kBAAkB,CAAC,gBAAoC,iBAAiB,oCAAuB;AAC1G,MAAI,gBAAgB;AAClB,WAAO;AAAA,EACT;AAEA,QAAM,gBAAgB,iBAAiB,cAAc;AACrD,MAAI,eAAe;AACjB,QAAI,kBAAkB,YAAY;AAChC,aAAO;AAAA,IACT;AAEA,WAAO;AAAA,EACT;AAEA,SAAO,gBAAgB,cAAc;AACvC;AAEA,IAAM,mBAAmB,CAAC,mBACxB,eACG,KAAK,EACL,QAAQ,MAAM,EAAE,EAChB,MAAM,cAAc,IAAI,CAAC;AAEvB,IAAM,kBAAkB,CAAC,mBAA2B,eAAe,KAAK,EAAE,QAAQ,MAAM,EAAE,EAAE,MAAM,GAAG,EAAE,CAAC;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/getEnvVariable.ts"],"sourcesContent":["type CloudflareEnv = { env: Record<string, string> };\n\nconst hasCloudflareProxyContext = (context: any): context is { cloudflare: CloudflareEnv } => {\n return !!context?.cloudflare?.env;\n};\n\nconst hasCloudflareContext = (context: any): context is CloudflareEnv => {\n return !!context?.env;\n};\n\n/**\n * Retrieves an environment variable across runtime environments.\n *\n * @param name - The environment variable name to retrieve.\n * @param context - Optional context object that may contain environment values.\n * @returns The environment variable value or empty string if not found.\n */\nexport const getEnvVariable = (name: string, context?: Record<string, any>): string => {\n // Node envs\n if (typeof process !== 'undefined' && process.env && typeof process.env[name] === 'string') {\n return process.env[name];\n }\n\n // Vite specific\n if (typeof import.meta !== 'undefined' && import.meta.env && typeof import.meta.env[name] === 'string') {\n return import.meta.env[name];\n }\n\n if (hasCloudflareProxyContext(context)) {\n return context.cloudflare.env[name] || '';\n }\n\n // Cloudflare\n if (hasCloudflareContext(context)) {\n return context.env[name] || '';\n }\n\n // Check whether the value exists in the context object directly\n if (context && typeof context[name] === 'string') {\n return context[name];\n }\n\n // Cloudflare workers\n try {\n return globalThis[name as keyof typeof globalThis];\n } catch {\n // This will raise an error in Cloudflare Pages\n }\n
|
|
1
|
+
{"version":3,"sources":["../src/getEnvVariable.ts"],"sourcesContent":["type CloudflareEnv = { env: Record<string, string> };\n\nconst hasCloudflareProxyContext = (context: any): context is { cloudflare: CloudflareEnv } => {\n return !!context?.cloudflare?.env;\n};\n\nconst hasCloudflareContext = (context: any): context is CloudflareEnv => {\n return !!context?.env;\n};\n\n/**\n * Retrieves an environment variable across runtime environments.\n *\n * @param name - The environment variable name to retrieve.\n * @param context - Optional context object that may contain environment values.\n * @returns The environment variable value or empty string if not found.\n */\nexport const getEnvVariable = (name: string, context?: Record<string, any>): string => {\n // Node envs\n if (typeof process !== 'undefined' && process.env && typeof process.env[name] === 'string') {\n return process.env[name];\n }\n\n // Vite specific\n if (typeof import.meta !== 'undefined' && import.meta.env && typeof import.meta.env[name] === 'string') {\n return import.meta.env[name];\n }\n\n if (hasCloudflareProxyContext(context)) {\n return context.cloudflare.env[name] || '';\n }\n\n // Cloudflare\n if (hasCloudflareContext(context)) {\n return context.env[name] || '';\n }\n\n // Check whether the value exists in the context object directly\n if (context && typeof context[name] === 'string') {\n return context[name];\n }\n\n // Cloudflare workers\n try {\n return globalThis[name as keyof typeof globalThis];\n } catch {\n // This will raise an error in Cloudflare Pages\n }\n return '';\n};\n"],"mappings":";AAEA,IAAM,4BAA4B,CAAC,YAA2D;AAC5F,SAAO,CAAC,CAAC,SAAS,YAAY;AAChC;AAEA,IAAM,uBAAuB,CAAC,YAA2C;AACvE,SAAO,CAAC,CAAC,SAAS;AACpB;AASO,IAAM,iBAAiB,CAAC,MAAc,YAA0C;AAErF,MAAI,OAAO,YAAY,eAAe,QAAQ,OAAO,OAAO,QAAQ,IAAI,IAAI,MAAM,UAAU;AAC1F,WAAO,QAAQ,IAAI,IAAI;AAAA,EACzB;AAGA,MAAI,OAAO,gBAAgB,eAAe,YAAY,OAAO,OAAO,YAAY,IAAI,IAAI,MAAM,UAAU;AACtG,WAAO,YAAY,IAAI,IAAI;AAAA,EAC7B;AAEA,MAAI,0BAA0B,OAAO,GAAG;AACtC,WAAO,QAAQ,WAAW,IAAI,IAAI,KAAK;AAAA,EACzC;AAGA,MAAI,qBAAqB,OAAO,GAAG;AACjC,WAAO,QAAQ,IAAI,IAAI,KAAK;AAAA,EAC9B;AAGA,MAAI,WAAW,OAAO,QAAQ,IAAI,MAAM,UAAU;AAChD,WAAO,QAAQ,IAAI;AAAA,EACrB;AAGA,MAAI;AACF,WAAO,WAAW,IAA+B;AAAA,EACnD,QAAQ;AAAA,EAER;AACA,SAAO;AACT;","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
versionSelector
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-FYIZPHEF.mjs";
|
|
4
4
|
import {
|
|
5
5
|
isValidProxyUrl,
|
|
6
6
|
proxyUrlToAbsoluteURL
|
|
@@ -97,4 +97,4 @@ export {
|
|
|
97
97
|
clerkJsScriptUrl,
|
|
98
98
|
buildClerkJsScriptAttributes
|
|
99
99
|
};
|
|
100
|
-
//# sourceMappingURL=chunk-
|
|
100
|
+
//# sourceMappingURL=chunk-VNFQOEB5.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/getEnvVariable.ts"],"sourcesContent":["type CloudflareEnv = { env: Record<string, string> };\n\nconst hasCloudflareProxyContext = (context: any): context is { cloudflare: CloudflareEnv } => {\n return !!context?.cloudflare?.env;\n};\n\nconst hasCloudflareContext = (context: any): context is CloudflareEnv => {\n return !!context?.env;\n};\n\n/**\n * Retrieves an environment variable across runtime environments.\n *\n * @param name - The environment variable name to retrieve.\n * @param context - Optional context object that may contain environment values.\n * @returns The environment variable value or empty string if not found.\n */\nexport const getEnvVariable = (name: string, context?: Record<string, any>): string => {\n // Node envs\n if (typeof process !== 'undefined' && process.env && typeof process.env[name] === 'string') {\n return process.env[name];\n }\n\n // Vite specific\n if (typeof import.meta !== 'undefined' && import.meta.env && typeof import.meta.env[name] === 'string') {\n return import.meta.env[name];\n }\n\n if (hasCloudflareProxyContext(context)) {\n return context.cloudflare.env[name] || '';\n }\n\n // Cloudflare\n if (hasCloudflareContext(context)) {\n return context.env[name] || '';\n }\n\n // Check whether the value exists in the context object directly\n if (context && typeof context[name] === 'string') {\n return context[name];\n }\n\n // Cloudflare workers\n try {\n return globalThis[name as keyof typeof globalThis];\n } catch {\n // This will raise an error in Cloudflare Pages\n }\n
|
|
1
|
+
{"version":3,"sources":["../src/getEnvVariable.ts"],"sourcesContent":["type CloudflareEnv = { env: Record<string, string> };\n\nconst hasCloudflareProxyContext = (context: any): context is { cloudflare: CloudflareEnv } => {\n return !!context?.cloudflare?.env;\n};\n\nconst hasCloudflareContext = (context: any): context is CloudflareEnv => {\n return !!context?.env;\n};\n\n/**\n * Retrieves an environment variable across runtime environments.\n *\n * @param name - The environment variable name to retrieve.\n * @param context - Optional context object that may contain environment values.\n * @returns The environment variable value or empty string if not found.\n */\nexport const getEnvVariable = (name: string, context?: Record<string, any>): string => {\n // Node envs\n if (typeof process !== 'undefined' && process.env && typeof process.env[name] === 'string') {\n return process.env[name];\n }\n\n // Vite specific\n if (typeof import.meta !== 'undefined' && import.meta.env && typeof import.meta.env[name] === 'string') {\n return import.meta.env[name];\n }\n\n if (hasCloudflareProxyContext(context)) {\n return context.cloudflare.env[name] || '';\n }\n\n // Cloudflare\n if (hasCloudflareContext(context)) {\n return context.env[name] || '';\n }\n\n // Check whether the value exists in the context object directly\n if (context && typeof context[name] === 'string') {\n return context[name];\n }\n\n // Cloudflare workers\n try {\n return globalThis[name as keyof typeof globalThis];\n } catch {\n // This will raise an error in Cloudflare Pages\n }\n return '';\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,IAAM,4BAA4B,CAAC,YAA2D;AAC5F,SAAO,CAAC,CAAC,SAAS,YAAY;AAChC;AAEA,IAAM,uBAAuB,CAAC,YAA2C;AACvE,SAAO,CAAC,CAAC,SAAS;AACpB;AASO,IAAM,iBAAiB,CAAC,MAAc,YAA0C;AAErF,MAAI,OAAO,YAAY,eAAe,QAAQ,OAAO,OAAO,QAAQ,IAAI,IAAI,MAAM,UAAU;AAC1F,WAAO,QAAQ,IAAI,IAAI;AAAA,EACzB;AAGA,MAAI,OAAO,gBAAgB,eAAe,YAAY,OAAO,OAAO,YAAY,IAAI,IAAI,MAAM,UAAU;AACtG,WAAO,YAAY,IAAI,IAAI;AAAA,EAC7B;AAEA,MAAI,0BAA0B,OAAO,GAAG;AACtC,WAAO,QAAQ,WAAW,IAAI,IAAI,KAAK;AAAA,EACzC;AAGA,MAAI,qBAAqB,OAAO,GAAG;AACjC,WAAO,QAAQ,IAAI,IAAI,KAAK;AAAA,EAC9B;AAGA,MAAI,WAAW,OAAO,QAAQ,IAAI,MAAM,UAAU;AAChD,WAAO,QAAQ,IAAI;AAAA,EACrB;AAGA,MAAI;AACF,WAAO,WAAW,IAA+B;AAAA,EACnD,QAAQ;AAAA,EAER;AACA,SAAO;AACT;","names":[]}
|
package/dist/getEnvVariable.mjs
CHANGED
package/dist/index.js
CHANGED
|
@@ -1274,14 +1274,14 @@ var ABSOLUTE_URL_REGEX = /^[a-zA-Z][a-zA-Z\d+\-.]*?:/;
|
|
|
1274
1274
|
var isAbsoluteUrl = (url) => ABSOLUTE_URL_REGEX.test(url);
|
|
1275
1275
|
|
|
1276
1276
|
// src/versionSelector.ts
|
|
1277
|
-
var versionSelector = (clerkJSVersion, packageVersion = "5.71.
|
|
1277
|
+
var versionSelector = (clerkJSVersion, packageVersion = "5.71.1-canary.v20250708185622") => {
|
|
1278
1278
|
if (clerkJSVersion) {
|
|
1279
1279
|
return clerkJSVersion;
|
|
1280
1280
|
}
|
|
1281
1281
|
const prereleaseTag = getPrereleaseTag(packageVersion);
|
|
1282
1282
|
if (prereleaseTag) {
|
|
1283
1283
|
if (prereleaseTag === "snapshot") {
|
|
1284
|
-
return "5.71.
|
|
1284
|
+
return "5.71.1-canary.v20250708185622";
|
|
1285
1285
|
}
|
|
1286
1286
|
return prereleaseTag;
|
|
1287
1287
|
}
|
|
@@ -1966,12 +1966,18 @@ var createPathMatcher = (patterns) => {
|
|
|
1966
1966
|
|
|
1967
1967
|
// src/netlifyCacheHandler.ts
|
|
1968
1968
|
var CLERK_NETLIFY_CACHE_BUST_PARAM = "__clerk_netlify_cache_bust";
|
|
1969
|
+
function isNetlifyRuntime() {
|
|
1970
|
+
if (typeof process === "undefined" || !process.env) {
|
|
1971
|
+
return false;
|
|
1972
|
+
}
|
|
1973
|
+
return Boolean(process.env.NETLIFY) || Boolean(process.env.NETLIFY_FUNCTIONS_TOKEN) || typeof process.env.URL === "string" && process.env.URL.endsWith("netlify.app");
|
|
1974
|
+
}
|
|
1969
1975
|
function handleNetlifyCacheInDevInstance({
|
|
1970
1976
|
locationHeader,
|
|
1971
1977
|
requestStateHeaders,
|
|
1972
1978
|
publishableKey
|
|
1973
1979
|
}) {
|
|
1974
|
-
const isOnNetlify =
|
|
1980
|
+
const isOnNetlify = isNetlifyRuntime();
|
|
1975
1981
|
const isDevelopmentInstance = isDevelopmentFromPublishableKey(publishableKey);
|
|
1976
1982
|
if (isOnNetlify && isDevelopmentInstance) {
|
|
1977
1983
|
const hasHandshakeQueryParam = locationHeader.includes("__clerk_handshake");
|