From a233abac6b796781a2a3e24fe8d4be7c291196a8 Mon Sep 17 00:00:00 2001 From: panteliselef Date: Mon, 29 Apr 2024 12:47:27 +0300 Subject: [PATCH] fix(clerk-js): Use default value for `signIn.userData` --- .changeset/gorgeous-pans-pump.md | 5 +++++ packages/clerk-js/src/core/resources/SignIn.ts | 2 +- packages/clerk-js/src/core/resources/UserData.ts | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changeset/gorgeous-pans-pump.md diff --git a/.changeset/gorgeous-pans-pump.md b/.changeset/gorgeous-pans-pump.md new file mode 100644 index 00000000000..0f815bf72b3 --- /dev/null +++ b/.changeset/gorgeous-pans-pump.md @@ -0,0 +1,5 @@ +--- +'@clerk/clerk-js': patch +--- + +Use default value for `signIn.userData`. This will prevent the SignIn modal from breaking when an appearance prop is used in Next.js App Router. diff --git a/packages/clerk-js/src/core/resources/SignIn.ts b/packages/clerk-js/src/core/resources/SignIn.ts index 8ebed20aeaa..c989de0ac11 100644 --- a/packages/clerk-js/src/core/resources/SignIn.ts +++ b/packages/clerk-js/src/core/resources/SignIn.ts @@ -65,7 +65,7 @@ export class SignIn extends BaseResource implements SignInResource { secondFactorVerification: VerificationResource = new Verification(null); identifier: string | null = null; createdSessionId: string | null = null; - userData!: UserData; + userData: UserData = new UserData(null); constructor(data: SignInJSON | null = null) { super(); diff --git a/packages/clerk-js/src/core/resources/UserData.ts b/packages/clerk-js/src/core/resources/UserData.ts index f8c1f54ea32..c58c805be7e 100644 --- a/packages/clerk-js/src/core/resources/UserData.ts +++ b/packages/clerk-js/src/core/resources/UserData.ts @@ -6,7 +6,7 @@ export class UserData implements IUserData { imageUrl?: string; hasImage?: boolean; - constructor(data: UserDataJSON) { + constructor(data: UserDataJSON | null) { this.fromJSON(data); }