@reown/appkit 1.7.2-rc2 → 1.7.2

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 (83) 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/dist/types/src/client/appkit-base-client.d.ts +1 -1
  7. package/package.json +9 -9
  8. package/dist/esm/tests/client/adapter-management.test.js +0 -85
  9. package/dist/esm/tests/client/adapter-management.test.js.map +0 -1
  10. package/dist/esm/tests/client/appkit-core.test.js +0 -88
  11. package/dist/esm/tests/client/appkit-core.test.js.map +0 -1
  12. package/dist/esm/tests/client/balance.test.js +0 -56
  13. package/dist/esm/tests/client/balance.test.js.map +0 -1
  14. package/dist/esm/tests/client/connection.test.js +0 -191
  15. package/dist/esm/tests/client/connection.test.js.map +0 -1
  16. package/dist/esm/tests/client/debug-mode.test.js +0 -64
  17. package/dist/esm/tests/client/debug-mode.test.js.map +0 -1
  18. package/dist/esm/tests/client/estimate-gas.test.js +0 -117
  19. package/dist/esm/tests/client/estimate-gas.test.js.map +0 -1
  20. package/dist/esm/tests/client/initialization.test.js +0 -121
  21. package/dist/esm/tests/client/initialization.test.js.map +0 -1
  22. package/dist/esm/tests/client/listeners.test.js +0 -130
  23. package/dist/esm/tests/client/listeners.test.js.map +0 -1
  24. package/dist/esm/tests/client/public-methods.test.js +0 -823
  25. package/dist/esm/tests/client/public-methods.test.js.map +0 -1
  26. package/dist/esm/tests/client/universal-adapter.test.js +0 -46
  27. package/dist/esm/tests/client/universal-adapter.test.js.map +0 -1
  28. package/dist/esm/tests/client/walletconnect-events.test.js +0 -82
  29. package/dist/esm/tests/client/walletconnect-events.test.js.map +0 -1
  30. package/dist/esm/tests/connectors/WalletConnectConnector.test.js +0 -63
  31. package/dist/esm/tests/connectors/WalletConnectConnector.test.js.map +0 -1
  32. package/dist/esm/tests/library/vue.test.js +0 -75
  33. package/dist/esm/tests/library/vue.test.js.map +0 -1
  34. package/dist/esm/tests/mocks/Account.js +0 -13
  35. package/dist/esm/tests/mocks/Account.js.map +0 -1
  36. package/dist/esm/tests/mocks/Adapter.js +0 -100
  37. package/dist/esm/tests/mocks/Adapter.js.map +0 -1
  38. package/dist/esm/tests/mocks/AppKit.js +0 -24
  39. package/dist/esm/tests/mocks/AppKit.js.map +0 -1
  40. package/dist/esm/tests/mocks/LocalStorage.js +0 -37
  41. package/dist/esm/tests/mocks/LocalStorage.js.map +0 -1
  42. package/dist/esm/tests/mocks/Networks.js +0 -17
  43. package/dist/esm/tests/mocks/Networks.js.map +0 -1
  44. package/dist/esm/tests/mocks/Options.js +0 -17
  45. package/dist/esm/tests/mocks/Options.js.map +0 -1
  46. package/dist/esm/tests/mocks/Providers.js +0 -46
  47. package/dist/esm/tests/mocks/Providers.js.map +0 -1
  48. package/dist/esm/tests/mocks/UniversalProvider.js +0 -139
  49. package/dist/esm/tests/mocks/UniversalProvider.js.map +0 -1
  50. package/dist/esm/tests/siwe.test.js +0 -261
  51. package/dist/esm/tests/siwe.test.js.map +0 -1
  52. package/dist/esm/tests/test-utils.js +0 -53
  53. package/dist/esm/tests/test-utils.js.map +0 -1
  54. package/dist/esm/tests/universal-adapter.test.js +0 -246
  55. package/dist/esm/tests/universal-adapter.test.js.map +0 -1
  56. package/dist/esm/tests/utils/HelpersUtil.test.js +0 -416
  57. package/dist/esm/tests/utils/HelpersUtil.test.js.map +0 -1
  58. package/dist/esm/tsconfig.tsbuildinfo +0 -1
  59. package/dist/types/tests/client/adapter-management.test.d.ts +0 -1
  60. package/dist/types/tests/client/appkit-core.test.d.ts +0 -1
  61. package/dist/types/tests/client/balance.test.d.ts +0 -1
  62. package/dist/types/tests/client/connection.test.d.ts +0 -1
  63. package/dist/types/tests/client/debug-mode.test.d.ts +0 -1
  64. package/dist/types/tests/client/estimate-gas.test.d.ts +0 -1
  65. package/dist/types/tests/client/initialization.test.d.ts +0 -1
  66. package/dist/types/tests/client/listeners.test.d.ts +0 -1
  67. package/dist/types/tests/client/public-methods.test.d.ts +0 -1
  68. package/dist/types/tests/client/universal-adapter.test.d.ts +0 -1
  69. package/dist/types/tests/client/walletconnect-events.test.d.ts +0 -1
  70. package/dist/types/tests/connectors/WalletConnectConnector.test.d.ts +0 -1
  71. package/dist/types/tests/library/vue.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 -8
  74. package/dist/types/tests/mocks/AppKit.d.ts +0 -3
  75. package/dist/types/tests/mocks/LocalStorage.d.ts +0 -12
  76. package/dist/types/tests/mocks/Networks.d.ts +0 -4
  77. package/dist/types/tests/mocks/Options.d.ts +0 -6
  78. package/dist/types/tests/mocks/Providers.d.ts +0 -42
  79. package/dist/types/tests/mocks/UniversalProvider.d.ts +0 -3
  80. package/dist/types/tests/siwe.test.d.ts +0 -1
  81. package/dist/types/tests/test-utils.d.ts +0 -5
  82. package/dist/types/tests/universal-adapter.test.d.ts +0 -1
  83. package/dist/types/tests/utils/HelpersUtil.test.d.ts +0 -1
@@ -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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"}
@@ -1,416 +0,0 @@
1
- import { describe, expect, test } from 'vitest';
2
- import { ConstantsUtil } from '@reown/appkit-common';
3
- import { WcHelpersUtil } from '../../src/utils/HelpersUtil';
4
- const mockEthereumNetwork = {
5
- id: 1,
6
- chainNamespace: ConstantsUtil.CHAIN.EVM,
7
- caipNetworkId: 'eip155:1',
8
- name: 'Ethereum',
9
- nativeCurrency: {
10
- name: 'Ethereum',
11
- decimals: 18,
12
- symbol: 'ETH'
13
- },
14
- rpcUrls: {
15
- default: {
16
- http: ['https://mainnet.infura.io/v3/YOUR-PROJECT-ID']
17
- }
18
- }
19
- };
20
- const mockPolygonNetwork = {
21
- id: 137,
22
- chainNamespace: ConstantsUtil.CHAIN.EVM,
23
- caipNetworkId: 'eip155:137',
24
- name: 'Polygon',
25
- nativeCurrency: {
26
- name: 'Matic',
27
- decimals: 18,
28
- symbol: 'MATIC'
29
- },
30
- rpcUrls: {
31
- default: {
32
- http: ['https://polygon.rpc.com']
33
- }
34
- }
35
- };
36
- const mockSolanaNetwork = {
37
- id: '5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',
38
- chainNamespace: ConstantsUtil.CHAIN.SOLANA,
39
- caipNetworkId: 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',
40
- name: 'Solana',
41
- nativeCurrency: {
42
- name: 'Solana',
43
- decimals: 9,
44
- symbol: 'SOL'
45
- },
46
- rpcUrls: {
47
- default: {
48
- http: ['https://api.mainnet-beta.solana.com']
49
- }
50
- }
51
- };
52
- const mockSolanaDevnetNetwork = {
53
- id: 'EtWTRABZaYq6iMfeYKouRu166VU2xqa1',
54
- chainNamespace: ConstantsUtil.CHAIN.SOLANA,
55
- caipNetworkId: 'solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1',
56
- name: 'Solana',
57
- nativeCurrency: {
58
- name: 'Solana',
59
- decimals: 9,
60
- symbol: 'SOL'
61
- },
62
- rpcUrls: {
63
- default: {
64
- http: ['https://api.mainnet-beta.solana.com']
65
- }
66
- }
67
- };
68
- describe('WcHelpersUtil', () => {
69
- describe('getMethodsByChainNamespace', () => {
70
- test('returns correct methods for solana', () => {
71
- const methods = WcHelpersUtil.getMethodsByChainNamespace('solana');
72
- expect(methods).toEqual([
73
- 'solana_signMessage',
74
- 'solana_signTransaction',
75
- 'solana_requestAccounts',
76
- 'solana_getAccounts',
77
- 'solana_signAllTransactions',
78
- 'solana_signAndSendTransaction'
79
- ]);
80
- });
81
- test('returns correct methods for eip155', () => {
82
- const methods = WcHelpersUtil.getMethodsByChainNamespace('eip155');
83
- expect(methods).toEqual([
84
- 'eth_accounts',
85
- 'eth_requestAccounts',
86
- 'eth_sendRawTransaction',
87
- 'eth_sign',
88
- 'eth_signTransaction',
89
- 'eth_signTypedData',
90
- 'eth_signTypedData_v3',
91
- 'eth_signTypedData_v4',
92
- 'eth_sendTransaction',
93
- 'personal_sign',
94
- 'wallet_switchEthereumChain',
95
- 'wallet_addEthereumChain',
96
- 'wallet_getPermissions',
97
- 'wallet_requestPermissions',
98
- 'wallet_registerOnboarding',
99
- 'wallet_watchAsset',
100
- 'wallet_scanQRCode',
101
- // EIP-5792
102
- 'wallet_getCallsStatus',
103
- 'wallet_showCallsStatus',
104
- 'wallet_sendCalls',
105
- 'wallet_getCapabilities',
106
- // EIP-7715
107
- 'wallet_grantPermissions',
108
- 'wallet_revokePermissions',
109
- //EIP-7811
110
- 'wallet_getAssets'
111
- ]);
112
- });
113
- test('returns empty array for unknown namespace', () => {
114
- const methods = WcHelpersUtil.getMethodsByChainNamespace('unknown');
115
- expect(methods).toEqual([]);
116
- });
117
- });
118
- describe('createNamespaces', () => {
119
- test('creates correct namespaces for multiple chains', () => {
120
- const caipNetworks = [
121
- mockEthereumNetwork,
122
- mockPolygonNetwork,
123
- mockSolanaNetwork,
124
- mockSolanaDevnetNetwork
125
- ];
126
- const namespaces = WcHelpersUtil.createNamespaces(caipNetworks);
127
- expect(namespaces).toEqual({
128
- eip155: {
129
- methods: expect.arrayContaining([
130
- 'personal_sign',
131
- 'eth_sign',
132
- 'eth_signTransaction',
133
- 'eth_signTypedData',
134
- 'eth_signTypedData_v3',
135
- 'eth_signTypedData_v4',
136
- 'eth_sendRawTransaction',
137
- 'eth_sendTransaction',
138
- 'wallet_getCapabilities',
139
- 'wallet_sendCalls',
140
- 'wallet_showCallsStatus',
141
- 'wallet_getCallsStatus',
142
- 'wallet_switchEthereumChain'
143
- ]),
144
- events: ['accountsChanged', 'chainChanged'],
145
- chains: ['eip155:1', 'eip155:137'],
146
- rpcMap: {
147
- '1': 'https://mainnet.infura.io/v3/YOUR-PROJECT-ID',
148
- '137': 'https://polygon.rpc.com'
149
- }
150
- },
151
- solana: {
152
- methods: [
153
- 'solana_signMessage',
154
- 'solana_signTransaction',
155
- 'solana_requestAccounts',
156
- 'solana_getAccounts',
157
- 'solana_signAllTransactions',
158
- 'solana_signAndSendTransaction'
159
- ],
160
- events: ['accountsChanged', 'chainChanged'],
161
- chains: [
162
- 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',
163
- 'solana:4sGjMW1sUnHzSxGspuhpqLDx6wiyjNtZ',
164
- 'solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1',
165
- 'solana:8E9rvCKLFQia2Y35HXjjpWzj8weVo44K'
166
- ],
167
- rpcMap: {
168
- '5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp': 'https://api.mainnet-beta.solana.com',
169
- EtWTRABZaYq6iMfeYKouRu166VU2xqa1: 'https://api.mainnet-beta.solana.com'
170
- }
171
- }
172
- });
173
- });
174
- test('creates empty namespaces for empty input', () => {
175
- const namespaces = WcHelpersUtil.createNamespaces([]);
176
- expect(namespaces).toEqual({});
177
- });
178
- });
179
- describe('getChainsFromNamespaces', () => {
180
- test('returns correct chain ids', () => {
181
- const namespaces = {
182
- eip155: {
183
- methods: [],
184
- events: [],
185
- chains: ['eip155:1', 'eip155:137'],
186
- accounts: ['eip155:4000:0x123', 'eip155:3000:0x456']
187
- },
188
- solana: {
189
- methods: [],
190
- events: [],
191
- chains: ['solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp'],
192
- accounts: ['solana:mainnet:address', 'solana:devnet:address']
193
- }
194
- };
195
- expect(WcHelpersUtil.getChainsFromNamespaces(namespaces)).toEqual([
196
- 'eip155:1',
197
- 'eip155:137',
198
- 'eip155:4000',
199
- 'eip155:3000',
200
- 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',
201
- 'solana:mainnet',
202
- 'solana:devnet'
203
- ]);
204
- });
205
- });
206
- describe('isSessionEventData', () => {
207
- test.each([
208
- [undefined, false],
209
- [{}, false],
210
- [
211
- {
212
- id: 1734112958243866,
213
- topic: 'b2cb2748499532d9c307846c444b364dd881c959d9a080e30d63b6a76270a0f8',
214
- params: {
215
- event: {
216
- name: 'accountsChanged',
217
- data: ['eip155:1:0x53F31e8972Ebddac1553E37887C25C1b748485A6']
218
- },
219
- chainId: 'eip155:1'
220
- }
221
- },
222
- true
223
- ]
224
- ])('should validate session event data', (data, expected) => {
225
- expect(WcHelpersUtil.isSessionEventData(data)).toBe(expected);
226
- });
227
- });
228
- describe('createDefaultNamespace', () => {
229
- test('creates correct namespace structure for solana', () => {
230
- const namespace = WcHelpersUtil.createDefaultNamespace('solana');
231
- expect(namespace).toEqual({
232
- methods: [
233
- 'solana_signMessage',
234
- 'solana_signTransaction',
235
- 'solana_requestAccounts',
236
- 'solana_getAccounts',
237
- 'solana_signAllTransactions',
238
- 'solana_signAndSendTransaction'
239
- ],
240
- events: ['accountsChanged', 'chainChanged'],
241
- chains: [],
242
- rpcMap: {}
243
- });
244
- });
245
- test('creates correct namespace structure for eip155', () => {
246
- const namespace = WcHelpersUtil.createDefaultNamespace('eip155');
247
- expect(namespace).toEqual({
248
- methods: expect.arrayContaining([
249
- 'personal_sign',
250
- 'eth_sign',
251
- 'eth_signTransaction',
252
- 'eth_signTypedData',
253
- 'eth_sendTransaction',
254
- 'wallet_switchEthereumChain'
255
- ]),
256
- events: ['accountsChanged', 'chainChanged'],
257
- chains: [],
258
- rpcMap: {}
259
- });
260
- });
261
- test('creates namespace with empty methods for unknown chain namespace', () => {
262
- const namespace = WcHelpersUtil.createDefaultNamespace('unknown');
263
- expect(namespace).toEqual({
264
- methods: [],
265
- events: ['accountsChanged', 'chainChanged'],
266
- chains: [],
267
- rpcMap: {}
268
- });
269
- });
270
- });
271
- describe('applyNamespaceOverrides', () => {
272
- test('returns a copy of baseNamespaces when overrides is undefined', () => {
273
- const baseNamespaces = {
274
- eip155: {
275
- methods: ['eth_sign'],
276
- events: ['accountsChanged'],
277
- chains: ['eip155:1'],
278
- rpcMap: { '1': 'https://ethereum.rpc.com' }
279
- }
280
- };
281
- const result = WcHelpersUtil.applyNamespaceOverrides(baseNamespaces, undefined);
282
- // Should return a copy, not the original object
283
- expect(result).not.toBe(baseNamespaces);
284
- expect(result).toEqual(baseNamespaces);
285
- });
286
- test('handles empty overrides object', () => {
287
- const baseNamespaces = {
288
- eip155: {
289
- methods: ['eth_sign'],
290
- events: ['accountsChanged'],
291
- chains: ['eip155:1'],
292
- rpcMap: { '1': 'https://ethereum.rpc.com' }
293
- }
294
- };
295
- const result = WcHelpersUtil.applyNamespaceOverrides(baseNamespaces, {});
296
- expect(result).toEqual(baseNamespaces);
297
- });
298
- test('creates new namespace that does not exist in base when referenced in multiple override types', () => {
299
- const baseNamespaces = {
300
- eip155: {
301
- methods: ['eth_sign'],
302
- events: ['accountsChanged'],
303
- chains: ['eip155:1'],
304
- rpcMap: { '1': 'https://ethereum.rpc.com' }
305
- }
306
- };
307
- const result = WcHelpersUtil.applyNamespaceOverrides(baseNamespaces, {
308
- methods: { cosmos: ['cosmos_method'] },
309
- chains: { cosmos: ['cosmos:cosmoshub-4'] },
310
- events: { cosmos: ['cosmos_event'] },
311
- rpcMap: { 'cosmos:cosmoshub-4': 'https://cosmos-hub.rpc.com' }
312
- });
313
- expect(result['cosmos']).toBeDefined();
314
- expect(result['cosmos']?.methods).toEqual(['cosmos_method']);
315
- expect(result['cosmos']?.chains).toEqual(['cosmos:cosmoshub-4']);
316
- expect(result['cosmos']?.events).toEqual(['cosmos_event']);
317
- expect(result['cosmos']?.rpcMap).toEqual({ 'cosmoshub-4': 'https://cosmos-hub.rpc.com' });
318
- // Original namespace should remain unchanged
319
- expect(result['eip155']).toEqual(baseNamespaces['eip155']);
320
- });
321
- test('handles missing rpcMap in base namespace when applying rpcMap overrides', () => {
322
- const baseNamespaces = {
323
- eip155: {
324
- methods: ['eth_sign'],
325
- events: ['accountsChanged'],
326
- chains: ['eip155:1']
327
- }
328
- };
329
- const result = WcHelpersUtil.applyNamespaceOverrides(baseNamespaces, {
330
- rpcMap: { 'eip155:42': 'https://kovan.rpc.com' }
331
- });
332
- expect(result['eip155']?.rpcMap).toEqual({ '42': 'https://kovan.rpc.com' });
333
- });
334
- test('applies method overrides for existing namespace', () => {
335
- const baseNamespaces = {
336
- eip155: {
337
- methods: ['eth_sign', 'personal_sign'],
338
- events: ['accountsChanged', 'chainChanged'],
339
- chains: ['eip155:1'],
340
- rpcMap: { '1': 'https://ethereum.rpc.com' }
341
- }
342
- };
343
- const result = WcHelpersUtil.applyNamespaceOverrides(baseNamespaces, {
344
- methods: { eip155: ['new_method1', 'new_method2'] }
345
- });
346
- expect(result['eip155']?.methods).toEqual(['new_method1', 'new_method2']);
347
- // Other properties should remain unchanged
348
- expect(result['eip155']?.events).toEqual(['accountsChanged', 'chainChanged']);
349
- expect(result['eip155']?.chains).toEqual(['eip155:1']);
350
- expect(result['eip155']?.rpcMap).toEqual({ '1': 'https://ethereum.rpc.com' });
351
- });
352
- test('applies chain overrides for existing namespace', () => {
353
- const baseNamespaces = {
354
- eip155: {
355
- methods: ['eth_sign', 'personal_sign'],
356
- events: ['accountsChanged', 'chainChanged'],
357
- chains: ['eip155:1'],
358
- rpcMap: { '1': 'https://ethereum.rpc.com' }
359
- }
360
- };
361
- const result = WcHelpersUtil.applyNamespaceOverrides(baseNamespaces, {
362
- chains: { eip155: ['eip155:42', 'eip155:56'] }
363
- });
364
- expect(result['eip155']?.chains).toEqual(['eip155:42', 'eip155:56']);
365
- // Other properties should remain unchanged
366
- expect(result['eip155']?.methods).toEqual(['eth_sign', 'personal_sign']);
367
- expect(result['eip155']?.events).toEqual(['accountsChanged', 'chainChanged']);
368
- expect(result['eip155']?.rpcMap).toEqual({ '1': 'https://ethereum.rpc.com' });
369
- });
370
- test('applies event overrides for existing namespace', () => {
371
- const baseNamespaces = {
372
- eip155: {
373
- methods: ['eth_sign', 'personal_sign'],
374
- events: ['accountsChanged', 'chainChanged'],
375
- chains: ['eip155:1'],
376
- rpcMap: { '1': 'https://ethereum.rpc.com' }
377
- }
378
- };
379
- const result = WcHelpersUtil.applyNamespaceOverrides(baseNamespaces, {
380
- events: { eip155: ['newEvent1', 'newEvent2'] }
381
- });
382
- expect(result['eip155']?.events).toEqual(['newEvent1', 'newEvent2']);
383
- // Other properties should remain unchanged
384
- expect(result['eip155']?.methods).toEqual(['eth_sign', 'personal_sign']);
385
- expect(result['eip155']?.chains).toEqual(['eip155:1']);
386
- expect(result['eip155']?.rpcMap).toEqual({ '1': 'https://ethereum.rpc.com' });
387
- });
388
- test('handles multiple types of overrides simultaneously', () => {
389
- const baseNamespaces = {
390
- eip155: {
391
- methods: ['eth_sign', 'personal_sign'],
392
- events: ['accountsChanged', 'chainChanged'],
393
- chains: ['eip155:1'],
394
- rpcMap: { '1': 'https://ethereum.rpc.com' }
395
- }
396
- };
397
- const result = WcHelpersUtil.applyNamespaceOverrides(baseNamespaces, {
398
- methods: { eip155: ['method1', 'method2'] },
399
- chains: { eip155: ['eip155:42'] },
400
- events: { eip155: ['event1'] },
401
- rpcMap: { 'eip155:42': 'https://kovan.rpc.com' }
402
- });
403
- expect(result).toEqual({
404
- eip155: {
405
- methods: ['method1', 'method2'],
406
- events: ['event1'],
407
- chains: ['eip155:42'],
408
- rpcMap: {
409
- '42': 'https://kovan.rpc.com'
410
- }
411
- }
412
- });
413
- });
414
- });
415
- });
416
- //# sourceMappingURL=HelpersUtil.test.js.map