UNPKG

@clerk/shared

Version:

Internal package utils used by the Clerk SDKs

57 lines (55 loc) 1.63 kB
// src/utils/instance.ts function isStaging(frontendApi) { return frontendApi.endsWith(".lclstage.dev") || frontendApi.endsWith(".stgstage.dev") || frontendApi.endsWith(".clerkstage.dev") || frontendApi.endsWith(".accountsstage.dev"); } // src/url.ts function parseSearchParams(queryString = "") { if (queryString.startsWith("?")) { queryString = queryString.slice(1); } return new URLSearchParams(queryString); } function stripScheme(url = "") { return (url || "").replace(/^.+:\/\//, ""); } function addClerkPrefix(str) { if (!str) { return ""; } let regex; if (str.match(/^(clerk\.)+\w*$/)) { regex = /(clerk\.)*(?=clerk\.)/; } else if (str.match(/\.clerk.accounts/)) { return str; } else { regex = /^(clerk\.)*/gi; } const stripped = str.replace(regex, ""); return `clerk.${stripped}`; } var getClerkJsMajorVersionOrTag = (frontendApi, pkgVersion) => { if (!pkgVersion && isStaging(frontendApi)) { return "staging"; } if (!pkgVersion) { return "latest"; } if (pkgVersion.includes("next")) { return "next"; } return pkgVersion.split(".")[0] || "latest"; }; var getScriptUrl = (frontendApi, { pkgVersion, clerkJSVersion }) => { const noSchemeFrontendApi = frontendApi.replace(/http(s)?:\/\//, ""); const major = getClerkJsMajorVersionOrTag(frontendApi, pkgVersion); return `https://${noSchemeFrontendApi}/npm/@clerk/clerk-js@${clerkJSVersion || major}/dist/clerk.browser.js`; }; export { isStaging, parseSearchParams, stripScheme, addClerkPrefix, getClerkJsMajorVersionOrTag, getScriptUrl }; //# sourceMappingURL=chunk-RUQRCEI6.mjs.map