From cb078ef6a1d1dc9b2ae3ece6ea41ebd1dc6919c7 Mon Sep 17 00:00:00 2001 From: tomiir Date: Thu, 16 Jan 2025 19:31:31 +0100 Subject: [PATCH 1/3] fix: issue where addresses would not match when trying to get the session --- packages/siwx/src/configs/CloudAuthSIWX.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/siwx/src/configs/CloudAuthSIWX.ts b/packages/siwx/src/configs/CloudAuthSIWX.ts index 123eff245f..d1f341a48a 100644 --- a/packages/siwx/src/configs/CloudAuthSIWX.ts +++ b/packages/siwx/src/configs/CloudAuthSIWX.ts @@ -72,7 +72,10 @@ export class CloudAuthSIWX implements SIWXConfig { const siweCaipNetworkId = `eip155:${siweSession?.chainId}` - if (!siweSession || siweCaipNetworkId !== chainId || siweSession.address !== address) { + const isSameAddress = siweSession?.address.toLowerCase() === address.toLowerCase() + const isSameNetwork = siweCaipNetworkId === chainId + + if (!isSameAddress || !isSameNetwork) { return [] } From 68e65570b1f546ac03c99ed31d004c9dad965dce Mon Sep 17 00:00:00 2001 From: tomiir Date: Thu, 16 Jan 2025 19:36:04 +0100 Subject: [PATCH 2/3] chore: add test --- .../siwx/tests/configs/CloudAuthSIWX.test.ts | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/packages/siwx/tests/configs/CloudAuthSIWX.test.ts b/packages/siwx/tests/configs/CloudAuthSIWX.test.ts index c33487615b..bd4476657b 100644 --- a/packages/siwx/tests/configs/CloudAuthSIWX.test.ts +++ b/packages/siwx/tests/configs/CloudAuthSIWX.test.ts @@ -241,6 +241,33 @@ Issued At: 2024-12-05T16:02:32.905Z`) ) }) + it('gets sessions when address is not lowercased', async () => { + const fetchSpy = vi.spyOn(global, 'fetch') + + fetchSpy.mockResolvedValueOnce( + mocks.mockFetchResponse({ + address: '0x1234567890abcdef1234567890abcdef12345678', + chainId: 1 + }) + ) + + const sessions = await siwx.getSessions( + 'eip155:1', + '0x1234567890ABCDEF1234567890abcdef12345678' + ) + + expect(sessions).toEqual([ + { + data: { + accountAddress: '0x1234567890abcdef1234567890abcdef12345678', + chainId: 'eip155:1' + }, + message: '', + signature: '' + } + ]) + }) + it('returns empty array if session is not found', async () => { const fetchSpy = vi.spyOn(global, 'fetch') From d1f2b478b5480f658be6e2093136fd0b2bdbd7ee Mon Sep 17 00:00:00 2001 From: tomiir Date: Thu, 16 Jan 2025 19:36:43 +0100 Subject: [PATCH 3/3] chore: add changesets --- .changeset/serious-ravens-appear.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 .changeset/serious-ravens-appear.md diff --git a/.changeset/serious-ravens-appear.md b/.changeset/serious-ravens-appear.md new file mode 100644 index 0000000000..bc77407a11 --- /dev/null +++ b/.changeset/serious-ravens-appear.md @@ -0,0 +1,23 @@ +--- +'@reown/appkit-siwx': patch +'@reown/appkit-adapter-bitcoin': patch +'@reown/appkit-adapter-ethers': patch +'@reown/appkit-adapter-ethers5': patch +'@reown/appkit-adapter-solana': patch +'@reown/appkit-adapter-wagmi': patch +'@reown/appkit': patch +'@reown/appkit-utils': patch +'@reown/appkit-cdn': patch +'@reown/appkit-cli': patch +'@reown/appkit-common': patch +'@reown/appkit-core': patch +'@reown/appkit-experimental': patch +'@reown/appkit-polyfills': patch +'@reown/appkit-scaffold-ui': patch +'@reown/appkit-siwe': patch +'@reown/appkit-ui': patch +'@reown/appkit-wallet': patch +'@reown/appkit-wallet-button': patch +--- + +Fixes issue where 1CA session would not be found because of non-cased addresses mismatching.'