From b2570c57fb607c6719486ac818c10542e300c0a4 Mon Sep 17 00:00:00 2001 From: LekoArts Date: Fri, 21 Jun 2024 07:33:26 +0200 Subject: [PATCH 1/2] change --- packages/clerk-js/src/core/clerk.ts | 7 +++++-- packages/clerk-js/src/utils/windowNavigate.ts | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/clerk-js/src/core/clerk.ts b/packages/clerk-js/src/core/clerk.ts index d9607721469..d8463a1d5c5 100644 --- a/packages/clerk-js/src/core/clerk.ts +++ b/packages/clerk-js/src/core/clerk.ts @@ -60,6 +60,7 @@ import type { import type { MountComponentRenderer } from '../ui/Components'; import { + ALLOWED_PROTOCOLS, buildURL, completeSignUpFlow, createAllowedRedirectOrigins, @@ -782,8 +783,10 @@ export class Clerk implements ClerkInterface { let toURL = new URL(to, window.location.href); - if (toURL.protocol !== 'http:' && toURL.protocol !== 'https:') { - console.warn('Clerk: Not a valid protocol. Redirecting to /'); + if (!ALLOWED_PROTOCOLS.includes(toURL.protocol)) { + console.warn( + `Clerk: "${toURL.protocol}" is not a valid protocol. Redirecting to "/" instead. If you think this is a mistake, please open an issue.`, + ); toURL = new URL('/', window.location.href); } diff --git a/packages/clerk-js/src/utils/windowNavigate.ts b/packages/clerk-js/src/utils/windowNavigate.ts index e95a6f27999..2ebf7de9d93 100644 --- a/packages/clerk-js/src/utils/windowNavigate.ts +++ b/packages/clerk-js/src/utils/windowNavigate.ts @@ -1,6 +1,6 @@ export const CLERK_BEFORE_UNLOAD_EVENT = 'clerk:beforeunload'; -const ALLOWED_PROTOCOLS = [ +export const ALLOWED_PROTOCOLS = [ 'http:', 'https:', // Refers to https://wails.io/ From c0ae22db256cb2fffacb8d7144bed6d8ede8904e Mon Sep 17 00:00:00 2001 From: LekoArts Date: Fri, 21 Jun 2024 07:34:33 +0200 Subject: [PATCH 2/2] add changeset --- .changeset/polite-poems-cross.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/polite-poems-cross.md diff --git a/.changeset/polite-poems-cross.md b/.changeset/polite-poems-cross.md new file mode 100644 index 00000000000..40b7e29b147 --- /dev/null +++ b/.changeset/polite-poems-cross.md @@ -0,0 +1,5 @@ +--- +"@clerk/clerk-js": patch +--- + +Correctly use updated protocol verification in all code paths