diff --git a/.changeset/crazy-readers-flow.md b/.changeset/crazy-readers-flow.md new file mode 100644 index 00000000000..945550aa36f --- /dev/null +++ b/.changeset/crazy-readers-flow.md @@ -0,0 +1,5 @@ +--- +'@clerk/clerk-js': patch +--- + +Fix an issue where clerk-js was incorrectly emitting the new session's token during session switching. This impacts some applications that rely on Clerk's multi-session behavior. diff --git a/packages/clerk-js/src/core/__tests__/clerk.test.ts b/packages/clerk-js/src/core/__tests__/clerk.test.ts index b8238723cb1..e37e0fbdfd0 100644 --- a/packages/clerk-js/src/core/__tests__/clerk.test.ts +++ b/packages/clerk-js/src/core/__tests__/clerk.test.ts @@ -166,7 +166,7 @@ describe('Clerk singleton', () => { getToken: jest.fn(), lastActiveToken: { getRawString: () => 'mocked-token' }, }; - let eventBusSpy; + let eventBusSpy: jest.SpyInstance; beforeEach(() => { eventBusSpy = jest.spyOn(eventBus, 'emit'); diff --git a/packages/clerk-js/src/core/clerk.ts b/packages/clerk-js/src/core/clerk.ts index cd0a44ba59b..e489ae5e4a9 100644 --- a/packages/clerk-js/src/core/clerk.ts +++ b/packages/clerk-js/src/core/clerk.ts @@ -1094,10 +1094,6 @@ export class Clerk implements ClerkInterface { return; } - if (session?.lastActiveToken) { - eventBus.emit(events.TokenUpdate, { token: session.lastActiveToken }); - } - /** * Hint to each framework, that the user will be signed out when `{session: null}` is provided. */