@reown/appkit 1.6.6-rc.3.0 → 1.6.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/dist/esm/exports/constants.js +1 -1
  2. package/dist/esm/exports/constants.js.map +1 -1
  3. package/dist/esm/package.json +1 -1
  4. package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
  5. package/dist/types/exports/constants.d.ts +1 -1
  6. package/package.json +9 -9
  7. package/dist/esm/exports/basic.js +0 -12
  8. package/dist/esm/exports/basic.js.map +0 -1
  9. package/dist/esm/src/client/appkit-basic.js +0 -23
  10. package/dist/esm/src/client/appkit-basic.js.map +0 -1
  11. package/dist/esm/src/client/appkit.js +0 -314
  12. package/dist/esm/src/client/appkit.js.map +0 -1
  13. package/dist/esm/src/client/core.js +0 -1328
  14. package/dist/esm/src/client/core.js.map +0 -1
  15. package/dist/esm/tests/appkit.test.js +0 -1482
  16. package/dist/esm/tests/appkit.test.js.map +0 -1
  17. package/dist/esm/tests/client/adapter-management.test.js +0 -83
  18. package/dist/esm/tests/client/adapter-management.test.js.map +0 -1
  19. package/dist/esm/tests/client/balance.test.js +0 -54
  20. package/dist/esm/tests/client/balance.test.js.map +0 -1
  21. package/dist/esm/tests/client/connection.test.js +0 -52
  22. package/dist/esm/tests/client/connection.test.js.map +0 -1
  23. package/dist/esm/tests/client/initialization.test.js +0 -95
  24. package/dist/esm/tests/client/initialization.test.js.map +0 -1
  25. package/dist/esm/tests/client/listeners.test.js +0 -35
  26. package/dist/esm/tests/client/listeners.test.js.map +0 -1
  27. package/dist/esm/tests/client/public-methods.test.js +0 -710
  28. package/dist/esm/tests/client/public-methods.test.js.map +0 -1
  29. package/dist/esm/tests/client/universal-adapter.test.js +0 -44
  30. package/dist/esm/tests/client/universal-adapter.test.js.map +0 -1
  31. package/dist/esm/tests/client/walletconnect-events.test.js +0 -61
  32. package/dist/esm/tests/client/walletconnect-events.test.js.map +0 -1
  33. package/dist/esm/tests/connectors/WalletConnectConnector.test.js +0 -63
  34. package/dist/esm/tests/connectors/WalletConnectConnector.test.js.map +0 -1
  35. package/dist/esm/tests/mocks/Account.js +0 -13
  36. package/dist/esm/tests/mocks/Account.js.map +0 -1
  37. package/dist/esm/tests/mocks/Adapter.js +0 -95
  38. package/dist/esm/tests/mocks/Adapter.js.map +0 -1
  39. package/dist/esm/tests/mocks/AppKit.js +0 -24
  40. package/dist/esm/tests/mocks/AppKit.js.map +0 -1
  41. package/dist/esm/tests/mocks/Networks.js +0 -5
  42. package/dist/esm/tests/mocks/Networks.js.map +0 -1
  43. package/dist/esm/tests/mocks/Options.js +0 -17
  44. package/dist/esm/tests/mocks/Options.js.map +0 -1
  45. package/dist/esm/tests/mocks/Providers.js +0 -46
  46. package/dist/esm/tests/mocks/Providers.js.map +0 -1
  47. package/dist/esm/tests/mocks/UniversalProvider.js +0 -137
  48. package/dist/esm/tests/mocks/UniversalProvider.js.map +0 -1
  49. package/dist/esm/tests/siwe.test.js +0 -258
  50. package/dist/esm/tests/siwe.test.js.map +0 -1
  51. package/dist/esm/tests/test-utils.js +0 -29
  52. package/dist/esm/tests/test-utils.js.map +0 -1
  53. package/dist/esm/tests/universal-adapter.test.js +0 -246
  54. package/dist/esm/tests/universal-adapter.test.js.map +0 -1
  55. package/dist/esm/tests/utils/HelpersUtil.test.js +0 -217
  56. package/dist/esm/tests/utils/HelpersUtil.test.js.map +0 -1
  57. package/dist/esm/tsconfig.tsbuildinfo +0 -1
  58. package/dist/types/exports/basic.d.ts +0 -8
  59. package/dist/types/src/client/appkit-basic.d.ts +0 -22
  60. package/dist/types/src/client/appkit.d.ts +0 -21
  61. package/dist/types/src/client/core.d.ts +0 -208
  62. package/dist/types/tests/appkit.test.d.ts +0 -1
  63. package/dist/types/tests/client/adapter-management.test.d.ts +0 -1
  64. package/dist/types/tests/client/balance.test.d.ts +0 -1
  65. package/dist/types/tests/client/connection.test.d.ts +0 -1
  66. package/dist/types/tests/client/initialization.test.d.ts +0 -1
  67. package/dist/types/tests/client/listeners.test.d.ts +0 -1
  68. package/dist/types/tests/client/public-methods.test.d.ts +0 -1
  69. package/dist/types/tests/client/universal-adapter.test.d.ts +0 -1
  70. package/dist/types/tests/client/walletconnect-events.test.d.ts +0 -1
  71. package/dist/types/tests/connectors/WalletConnectConnector.test.d.ts +0 -1
  72. package/dist/types/tests/mocks/Account.d.ts +0 -12
  73. package/dist/types/tests/mocks/Adapter.d.ts +0 -5
  74. package/dist/types/tests/mocks/AppKit.d.ts +0 -3
  75. package/dist/types/tests/mocks/Networks.d.ts +0 -3
  76. package/dist/types/tests/mocks/Options.d.ts +0 -6
  77. package/dist/types/tests/mocks/UniversalProvider.d.ts +0 -3
  78. package/dist/types/tests/siwe.test.d.ts +0 -1
  79. package/dist/types/tests/test-utils.d.ts +0 -3
  80. package/dist/types/tests/universal-adapter.test.d.ts +0 -1
  81. package/dist/types/tests/utils/HelpersUtil.test.d.ts +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"UniversalProvider.js","sourceRoot":"","sources":["../../../../tests/mocks/UniversalProvider.ts"],"names":[],"mappings":"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"}
@@ -1,258 +0,0 @@
1
- import { beforeEach, describe, expect, it, vi } from 'vitest';
2
- import { AppKit } from '@reown/appkit';
3
- import { AccountController, ChainController, ConnectionController, ModalController, OptionsController, RouterController, SIWXUtil } from '@reown/appkit-core';
4
- import { createSIWEConfig } from '@reown/appkit-siwe';
5
- import * as networks from '@reown/appkit/networks';
6
- import { mockUniversalAdapter } from './mocks/Adapter';
7
- import mockProvider from './mocks/UniversalProvider';
8
- describe('SIWE mapped to SIWX', () => {
9
- let siweConfig;
10
- let appkit;
11
- beforeEach(async () => {
12
- siweConfig = createSIWEConfig({
13
- createMessage: () => {
14
- return 'mock-message';
15
- },
16
- getNonce: async () => {
17
- return 'mock-nonce';
18
- },
19
- getSession: async () => {
20
- return {
21
- address: 'mock-address',
22
- chainId: 1
23
- };
24
- },
25
- verifyMessage: async () => {
26
- return true;
27
- },
28
- signOut: async () => {
29
- return true;
30
- },
31
- onSignIn: () => { },
32
- onSignOut: () => { },
33
- enabled: true,
34
- getMessageParams: async () => {
35
- return {
36
- chains: [1],
37
- domain: 'mock-domain',
38
- uri: 'mock-uri',
39
- nonce: 'mock-nonce'
40
- };
41
- },
42
- nonceRefetchIntervalMs: 60000,
43
- sessionRefetchIntervalMs: 120000,
44
- signOutOnAccountChange: true,
45
- signOutOnNetworkChange: true,
46
- signOutOnDisconnect: true
47
- });
48
- appkit = new AppKit({
49
- adapters: [mockUniversalAdapter],
50
- projectId: 'mock-project-id',
51
- networks: [networks.mainnet],
52
- defaultNetwork: networks.mainnet,
53
- siweConfig,
54
- sdkVersion: 'html-test-test'
55
- });
56
- // Wait for the appkit to be ready
57
- await new Promise(resolve => setTimeout(resolve, 100));
58
- // Set CAIP address to represent connected state
59
- appkit.setCaipAddress('eip155:1:mock-address', 'eip155');
60
- appkit.setCaipNetwork({
61
- ...networks.mainnet,
62
- caipNetworkId: 'eip155:1',
63
- chainNamespace: 'eip155'
64
- });
65
- });
66
- it('should fulfill siwx', () => {
67
- expect(OptionsController.state.siwx).toBeDefined();
68
- });
69
- describe('SIWXUtils against SIWE usage', () => {
70
- it('should have siwx', async () => {
71
- expect(SIWXUtil.getSIWX()).toBeDefined();
72
- });
73
- it('should initializeIfEnabled', async () => {
74
- vi.spyOn(ChainController, 'checkIfSupportedNetwork').mockReturnValue(true);
75
- OptionsController.state.siwx = {
76
- getSessions: vi.fn().mockResolvedValueOnce([])
77
- };
78
- await SIWXUtil.initializeIfEnabled();
79
- expect(RouterController.state.view).toBe('SIWXSignMessage');
80
- expect(ModalController.state.open).toBe(true);
81
- });
82
- it('should requestSignMessage', async () => {
83
- const getNonceSpy = vi.spyOn(siweConfig.methods, 'getNonce');
84
- const createMessageSpy = vi.spyOn(siweConfig.methods, 'createMessage');
85
- const verifyMessageSpy = vi.spyOn(siweConfig.methods, 'verifyMessage');
86
- vi.spyOn(ChainController, 'getActiveCaipNetwork').mockReturnValue({
87
- id: '1',
88
- name: 'Ethereum',
89
- caipNetworkId: 'eip155:1'
90
- });
91
- await SIWXUtil.requestSignMessage();
92
- expect(getNonceSpy).toHaveBeenCalled();
93
- expect(createMessageSpy).toHaveBeenCalled();
94
- expect(verifyMessageSpy).toHaveBeenCalledWith({
95
- data: {
96
- accountAddress: 'mock-address',
97
- chainId: 'eip155:1',
98
- domain: 'mock-domain',
99
- expirationTime: undefined,
100
- issuedAt: expect.any(String),
101
- nonce: 'mock-nonce',
102
- notBefore: undefined,
103
- requestId: undefined,
104
- resources: undefined,
105
- statement: undefined,
106
- toString: expect.any(Function),
107
- uri: 'mock-uri',
108
- version: '1'
109
- },
110
- message: 'mock-message',
111
- signature: ''
112
- });
113
- });
114
- it('should getSessions', async () => {
115
- const getSessionSpy = vi.spyOn(siweConfig.methods, 'getSession');
116
- const sessions = await SIWXUtil.getSessions();
117
- expect(getSessionSpy).toHaveBeenCalled();
118
- expect(sessions).toEqual([
119
- {
120
- data: {
121
- accountAddress: 'mock-address',
122
- chainId: 'eip155:1'
123
- },
124
- message: '',
125
- signature: ''
126
- }
127
- ]);
128
- });
129
- it('should universalProviderAuthenticate', async () => {
130
- const getNonceSpy = vi.spyOn(siweConfig.methods, 'getNonce');
131
- const verifyMessageSpy = vi.spyOn(siweConfig.methods, 'verifyMessage');
132
- const setConnectedWalletInfoSpy = vi.spyOn(AccountController, 'setConnectedWalletInfo');
133
- const cacao = {
134
- h: {
135
- t: 'caip122'
136
- },
137
- p: {
138
- aud: 'mock-aud',
139
- iss: 'did:pkh:eip155:1:mock-address',
140
- domain: 'mock-domain',
141
- nonce: 'mock-nonce'
142
- },
143
- s: {
144
- m: 'mock-message',
145
- s: 'mock-signature',
146
- t: 'eip191'
147
- }
148
- };
149
- const authenticateSpy = vi.spyOn(mockProvider, 'authenticate').mockResolvedValueOnce({
150
- session: {
151
- peer: {
152
- metadata: {
153
- icons: ['mock-icon'],
154
- name: 'mock-name',
155
- url: 'mock-url',
156
- description: 'mock-description'
157
- },
158
- publicKey: 'mock-public'
159
- }
160
- },
161
- auths: [cacao]
162
- });
163
- await SIWXUtil.universalProviderAuthenticate({
164
- universalProvider: mockProvider,
165
- chains: ['eip155:10', 'eip155:137', 'eip155:1'],
166
- methods: ['eth_sign']
167
- });
168
- expect(getNonceSpy).toHaveBeenCalled();
169
- expect(verifyMessageSpy).toHaveBeenCalledWith({
170
- cacao: expect.objectContaining(cacao),
171
- data: expect.objectContaining({
172
- chainId: 'eip155:1',
173
- accountAddress: 'mock-address'
174
- }),
175
- message: 'Formatted auth message',
176
- signature: 'mock-signature'
177
- });
178
- expect(authenticateSpy).toHaveBeenCalledWith({
179
- chainId: 'eip155:1',
180
- chains: ['eip155:1', 'eip155:10', 'eip155:137'], // must be active chain first
181
- domain: 'mock-domain',
182
- exp: undefined,
183
- iat: expect.stringMatching(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z$/),
184
- methods: ['eth_sign'],
185
- nbf: undefined,
186
- nonce: 'mock-nonce',
187
- requestId: undefined,
188
- resources: undefined,
189
- statement: undefined,
190
- uri: 'mock-uri',
191
- version: '1'
192
- });
193
- expect(setConnectedWalletInfoSpy).toHaveBeenCalledWith({
194
- icons: ['mock-icon'],
195
- name: 'mock-name',
196
- url: 'mock-url',
197
- description: 'mock-description',
198
- icon: 'mock-icon'
199
- }, 'eip155');
200
- });
201
- it('should clear sessions on Connection.disconnect', async () => {
202
- const signOutSpy = vi.spyOn(siweConfig.methods, 'signOut');
203
- const setSessionsSpy = vi.spyOn(OptionsController.state.siwx, 'setSessions');
204
- await ConnectionController.disconnect();
205
- expect(signOutSpy).toHaveBeenCalled();
206
- expect(setSessionsSpy).toHaveBeenCalledWith([]);
207
- });
208
- });
209
- describe('siweConfig should still work outside of AppKit', () => {
210
- it('should execute signIn', async () => {
211
- const requestSignMessageSpy = vi.spyOn(SIWXUtil, 'requestSignMessage');
212
- const onSignInSpy = vi.spyOn(siweConfig.methods, 'onSignIn');
213
- const session = await siweConfig.signIn();
214
- expect(requestSignMessageSpy).toHaveBeenCalled();
215
- expect(onSignInSpy).toHaveBeenCalled();
216
- expect(session).toEqual({
217
- address: 'mock-address',
218
- chainId: 1
219
- });
220
- });
221
- it('should execute signOut', async () => {
222
- const setSessionsSpy = vi.spyOn(OptionsController.state.siwx, 'setSessions');
223
- const onSignOutSpy = vi.spyOn(siweConfig.methods, 'onSignOut');
224
- await siweConfig.signOut();
225
- expect(setSessionsSpy).toHaveBeenCalledWith([]);
226
- expect(onSignOutSpy).toHaveBeenCalled();
227
- });
228
- it('should execute getNonce', async () => {
229
- const nonce = await siweConfig.getNonce();
230
- expect(nonce).toBe('mock-nonce');
231
- });
232
- it('should execute getMessageParams', async () => {
233
- const messageParams = await siweConfig.getMessageParams?.();
234
- expect(messageParams).toEqual({
235
- chains: [1],
236
- domain: 'mock-domain',
237
- uri: 'mock-uri',
238
- nonce: 'mock-nonce'
239
- });
240
- });
241
- it('should execute createMessage', () => {
242
- const message = siweConfig.createMessage({});
243
- expect(message).toBe('mock-message');
244
- });
245
- it('should execute verifyMessage', async () => {
246
- const isValid = await siweConfig.verifyMessage({});
247
- expect(isValid).toBe(true);
248
- });
249
- it('should execute getSession', async () => {
250
- const session = await siweConfig.getSession();
251
- expect(session).toEqual({
252
- address: 'mock-address',
253
- chainId: 1
254
- });
255
- });
256
- });
257
- });
258
- //# sourceMappingURL=siwe.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"siwe.test.js","sourceRoot":"","sources":["../../../tests/siwe.test.ts"],"names":[],"mappings":"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"}
@@ -1,29 +0,0 @@
1
- import { vi } from 'vitest';
2
- import { BlockchainApiController, StorageUtil } from '@reown/appkit-core';
3
- import { mainnet } from './mocks/Networks.js';
4
- // Common mock for window and document objects used across tests
5
- export function mockWindowAndDocument() {
6
- vi.mocked(global).window = { location: { origin: '' } };
7
- vi.mocked(global).document = {
8
- body: {
9
- insertAdjacentElement: vi.fn()
10
- },
11
- createElement: vi.fn().mockReturnValue({ appendChild: vi.fn() }),
12
- getElementsByTagName: vi.fn().mockReturnValue([{ textContent: '' }]),
13
- querySelector: vi.fn()
14
- };
15
- }
16
- export function mockBlockchainApiController() {
17
- vi.spyOn(BlockchainApiController, 'getSupportedNetworks').mockResolvedValue({
18
- http: ['eip155:1', 'eip155:137'],
19
- ws: ['eip155:1', 'eip155:137']
20
- });
21
- }
22
- export function mockStorageUtil() {
23
- vi.spyOn(StorageUtil, 'getActiveNetworkProps').mockReturnValue({
24
- namespace: mainnet.chainNamespace,
25
- caipNetworkId: mainnet.caipNetworkId,
26
- chainId: mainnet.id
27
- });
28
- }
29
- //# sourceMappingURL=test-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-utils.js","sourceRoot":"","sources":["../../../tests/test-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE3B,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAEzE,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAE7C,gEAAgE;AAChE,MAAM,UAAU,qBAAqB;IACnC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAA2C,CAAA;IAChG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,GAAG;QAC3B,IAAI,EAAE;YACJ,qBAAqB,EAAE,EAAE,CAAC,EAAE,EAAE;SACL;QAC3B,aAAa,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QAChE,oBAAoB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;QACpE,aAAa,EAAE,EAAE,CAAC,EAAE,EAAE;KACA,CAAA;AAC1B,CAAC;AAED,MAAM,UAAU,2BAA2B;IACzC,EAAE,CAAC,KAAK,CAAC,uBAAuB,EAAE,sBAAsB,CAAC,CAAC,iBAAiB,CAAC;QAC1E,IAAI,EAAE,CAAC,UAAU,EAAE,YAAY,CAAC;QAChC,EAAE,EAAE,CAAC,UAAU,EAAE,YAAY,CAAC;KAC/B,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC,eAAe,CAAC;QAC7D,SAAS,EAAE,OAAO,CAAC,cAAc;QACjC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,OAAO,EAAE,OAAO,CAAC,EAAE;KACpB,CAAC,CAAA;AACJ,CAAC"}
@@ -1,246 +0,0 @@
1
- import { beforeEach, describe, expect, it, vi } from 'vitest';
2
- import { WalletConnectConnector } from '../src/connectors';
3
- import { UniversalAdapter } from '../src/universal-adapter/client';
4
- // Mock provider
5
- const mockProvider = {
6
- on: vi.fn(),
7
- connect: vi.fn(),
8
- disconnect: vi.fn(),
9
- setDefaultChain: vi.fn(),
10
- request: vi.fn().mockImplementation(() => Promise.resolve()),
11
- client: {
12
- core: {
13
- crypto: {
14
- getClientId: vi.fn(() => Promise.resolve('client-id'))
15
- }
16
- }
17
- }
18
- };
19
- // Mock CaipNetwork
20
- const mockCaipNetwork = {
21
- id: 1,
22
- name: 'Ethereum',
23
- chainNamespace: 'eip155',
24
- caipNetworkId: 'eip155:1',
25
- rpcUrls: {
26
- default: { http: ['https://ethereum.rpc.com'] }
27
- },
28
- nativeCurrency: {
29
- name: 'Ether',
30
- symbol: 'ETH',
31
- decimals: 18
32
- }
33
- };
34
- describe('UniversalAdapter', () => {
35
- let adapter;
36
- beforeEach(() => {
37
- vi.clearAllMocks();
38
- adapter = new UniversalAdapter();
39
- const connector = new WalletConnectConnector({
40
- provider: mockProvider,
41
- caipNetworks: [mockCaipNetwork],
42
- namespace: 'eip155'
43
- });
44
- adapter.connectors.push(vi.mocked(connector));
45
- // Set the provider directly on the adapter
46
- Object.defineProperty(adapter, 'provider', {
47
- value: mockProvider,
48
- writable: true
49
- });
50
- Object.defineProperty(adapter, 'caipNetworks', {
51
- value: [mockCaipNetwork],
52
- writable: true
53
- });
54
- });
55
- describe('connectWalletConnect', () => {
56
- it('should connect successfully', async () => {
57
- await adapter.connectWalletConnect();
58
- expect(mockProvider.connect).toHaveBeenCalledWith({
59
- optionalNamespaces: expect.any(Object)
60
- });
61
- });
62
- it('should throw error if provider is undefined', async () => {
63
- Object.defineProperty(adapter, 'connectors', {
64
- value: [],
65
- writable: true
66
- });
67
- await expect(adapter.connectWalletConnect()).rejects.toThrow('WalletConnectConnector not found');
68
- });
69
- it('should call onUri when display_uri event is emitted', async () => {
70
- const testUri = 'wc:test-uri';
71
- // Call the callback directly when 'on' is called
72
- vi.mocked(mockProvider.on).mockImplementation((event, callback) => {
73
- if (event === 'display_uri') {
74
- callback(testUri);
75
- }
76
- return mockProvider;
77
- });
78
- await adapter.connectWalletConnect();
79
- });
80
- });
81
- describe('disconnect', () => {
82
- it('should disconnect successfully', async () => {
83
- await adapter.disconnect();
84
- expect(mockProvider.disconnect).toHaveBeenCalled();
85
- });
86
- it('should handle missing provider gracefully', async () => {
87
- Object.defineProperty(adapter, 'connectors', {
88
- value: [],
89
- writable: true
90
- });
91
- await expect(adapter.disconnect()).resolves.not.toThrow();
92
- });
93
- });
94
- describe('switchNetwork', () => {
95
- beforeEach(() => {
96
- vi.clearAllMocks();
97
- Object.defineProperty(adapter, 'provider', {
98
- value: mockProvider,
99
- writable: true
100
- });
101
- });
102
- it('should switch network successfully', async () => {
103
- const polygonNetwork = {
104
- ...mockCaipNetwork,
105
- caipNetworkId: 'eip155:137',
106
- id: 137,
107
- name: 'Polygon',
108
- nativeCurrency: {
109
- name: 'MATIC',
110
- symbol: 'MATIC',
111
- decimals: 18
112
- }
113
- };
114
- await adapter.switchNetwork({ caipNetwork: polygonNetwork });
115
- expect(mockProvider.setDefaultChain).toHaveBeenCalledWith('eip155:137');
116
- });
117
- it('should not call wallet_switchEthereumChain for non-eip155 chains', async () => {
118
- const solanaNetwork = {
119
- ...mockCaipNetwork,
120
- chainNamespace: 'solana',
121
- caipNetworkId: 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',
122
- id: 101,
123
- name: 'Solana'
124
- };
125
- await adapter.switchNetwork({ caipNetwork: solanaNetwork });
126
- expect(mockProvider.request).not.toHaveBeenCalled();
127
- expect(mockProvider.setDefaultChain).toHaveBeenCalledWith(solanaNetwork.caipNetworkId);
128
- });
129
- it('should call wallet_addEthereumChain when switch fails with unrecognized chain', async () => {
130
- const arbitrumNetwork = {
131
- ...mockCaipNetwork,
132
- caipNetworkId: 'eip155:42161',
133
- id: 42161,
134
- name: 'Arbitrum One',
135
- rpcUrls: {
136
- chainDefault: { http: ['https://arb1.arbitrum.io/rpc'] },
137
- default: {
138
- http: [],
139
- webSocket: undefined
140
- }
141
- },
142
- nativeCurrency: {
143
- name: 'Ether',
144
- symbol: 'ETH',
145
- decimals: 18
146
- },
147
- blockExplorers: {
148
- default: {
149
- url: 'https://arbiscan.io',
150
- name: 'Arbitrum One'
151
- }
152
- }
153
- };
154
- mockProvider.request
155
- .mockRejectedValueOnce({ code: 4902 }) // Unrecognized chain error
156
- .mockResolvedValueOnce({});
157
- await adapter.switchNetwork({ caipNetwork: arbitrumNetwork });
158
- expect(mockProvider.request).toHaveBeenCalledTimes(2);
159
- expect(mockProvider.request).toHaveBeenNthCalledWith(1, {
160
- method: 'wallet_switchEthereumChain',
161
- params: [{ chainId: '0xa4b1' }]
162
- });
163
- expect(mockProvider.request).toHaveBeenNthCalledWith(2, {
164
- method: 'wallet_addEthereumChain',
165
- params: [
166
- {
167
- chainId: '0xa4b1',
168
- rpcUrls: [['https://arb1.arbitrum.io/rpc']],
169
- chainName: 'Arbitrum One',
170
- nativeCurrency: {
171
- name: 'Ether',
172
- decimals: 18,
173
- symbol: 'ETH'
174
- },
175
- blockExplorerUrls: ['https://arbiscan.io']
176
- }
177
- ]
178
- });
179
- expect(mockProvider.setDefaultChain).toHaveBeenCalledWith('eip155:42161');
180
- });
181
- it('should successfully switch chain without needing to add it', async () => {
182
- const mainnetNetwork = {
183
- ...mockCaipNetwork,
184
- caipNetworkId: 'eip155:1',
185
- id: 1,
186
- name: 'Ethereum'
187
- };
188
- mockProvider.request.mockResolvedValueOnce({});
189
- await adapter.switchNetwork({ caipNetwork: mainnetNetwork });
190
- expect(mockProvider.request).toHaveBeenCalledTimes(1);
191
- expect(mockProvider.request).toHaveBeenCalledWith({
192
- method: 'wallet_switchEthereumChain',
193
- params: [{ chainId: '0x1' }]
194
- });
195
- expect(mockProvider.setDefaultChain).toHaveBeenCalledWith('eip155:1');
196
- });
197
- it('should throw error if provider is undefined', async () => {
198
- Object.defineProperty(adapter, 'connectors', {
199
- value: [],
200
- writable: true
201
- });
202
- await expect(adapter.switchNetwork({
203
- caipNetwork: mockCaipNetwork
204
- })).rejects.toThrow('WalletConnectConnector not found');
205
- });
206
- });
207
- describe('getAccounts', () => {
208
- it('should return empty array if there is no accounts', async () => {
209
- mockProvider.session = undefined;
210
- const accounts = await adapter.getAccounts({ id: '', namespace: 'eip155' });
211
- expect(accounts).toEqual({ accounts: [] });
212
- });
213
- it('should return accounts successfully', async () => {
214
- mockProvider.session = {
215
- namespaces: {
216
- eip155: {
217
- accounts: ['eip155:mock_network:mock_address_1', 'eip155:mock_network:mock_address_2']
218
- }
219
- }
220
- };
221
- Object.assign(adapter, {
222
- provider: mockProvider
223
- });
224
- const accounts = await adapter.getAccounts({ id: '', namespace: 'eip155' });
225
- expect(accounts).toEqual({
226
- accounts: [
227
- {
228
- address: 'mock_address_1',
229
- namespace: 'eip155',
230
- path: undefined,
231
- publicKey: undefined,
232
- type: 'eoa'
233
- },
234
- {
235
- address: 'mock_address_2',
236
- namespace: 'eip155',
237
- path: undefined,
238
- publicKey: undefined,
239
- type: 'eoa'
240
- }
241
- ]
242
- });
243
- });
244
- });
245
- });
246
- //# sourceMappingURL=universal-adapter.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"universal-adapter.test.js","sourceRoot":"","sources":["../../../tests/universal-adapter.test.ts"],"names":[],"mappings":"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"}