@reown/appkit-utils 1.8.15-e95f0d61c614677233e13ea9f055d3f75fcdba81.0 → 1.8.15-viem-upgrade.0

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 (126) hide show
  1. package/package.json +9 -9
  2. package/dist/esm/exports/bitcoin.js +0 -2
  3. package/dist/esm/exports/bitcoin.js.map +0 -1
  4. package/dist/esm/exports/ethers.js +0 -6
  5. package/dist/esm/exports/ethers.js.map +0 -1
  6. package/dist/esm/exports/index.js +0 -10
  7. package/dist/esm/exports/index.js.map +0 -1
  8. package/dist/esm/exports/solana.js +0 -3
  9. package/dist/esm/exports/solana.js.map +0 -1
  10. package/dist/esm/exports/ton.js +0 -2
  11. package/dist/esm/exports/ton.js.map +0 -1
  12. package/dist/esm/exports/wallet-standard.js +0 -2
  13. package/dist/esm/exports/wallet-standard.js.map +0 -1
  14. package/dist/esm/package.json +0 -121
  15. package/dist/esm/src/CaipNetworkUtil.js +0 -256
  16. package/dist/esm/src/CaipNetworkUtil.js.map +0 -1
  17. package/dist/esm/src/ConstantsUtil.js +0 -56
  18. package/dist/esm/src/ConstantsUtil.js.map +0 -1
  19. package/dist/esm/src/ErrorUtil.js +0 -92
  20. package/dist/esm/src/ErrorUtil.js.map +0 -1
  21. package/dist/esm/src/HelpersUtil.js +0 -93
  22. package/dist/esm/src/HelpersUtil.js.map +0 -1
  23. package/dist/esm/src/LoggerUtil.js +0 -22
  24. package/dist/esm/src/LoggerUtil.js.map +0 -1
  25. package/dist/esm/src/PresetsUtil.js +0 -176
  26. package/dist/esm/src/PresetsUtil.js.map +0 -1
  27. package/dist/esm/src/SemVerUtils.js +0 -77
  28. package/dist/esm/src/SemVerUtils.js.map +0 -1
  29. package/dist/esm/src/TokenUtil.js +0 -17
  30. package/dist/esm/src/TokenUtil.js.map +0 -1
  31. package/dist/esm/src/TypeUtil.js +0 -21
  32. package/dist/esm/src/TypeUtil.js.map +0 -1
  33. package/dist/esm/src/WCNamespaceUtil.js +0 -86
  34. package/dist/esm/src/WCNamespaceUtil.js.map +0 -1
  35. package/dist/esm/src/bitcoin/BitcoinConstantsUtil.js +0 -7
  36. package/dist/esm/src/bitcoin/BitcoinConstantsUtil.js.map +0 -1
  37. package/dist/esm/src/bitcoin/BitcoinTypesUtil.js +0 -8
  38. package/dist/esm/src/bitcoin/BitcoinTypesUtil.js.map +0 -1
  39. package/dist/esm/src/ethers/BaseProvider.js +0 -34
  40. package/dist/esm/src/ethers/BaseProvider.js.map +0 -1
  41. package/dist/esm/src/ethers/EthersHelpersUtil.js +0 -51
  42. package/dist/esm/src/ethers/EthersHelpersUtil.js.map +0 -1
  43. package/dist/esm/src/ethers/EthersProvider.js +0 -9
  44. package/dist/esm/src/ethers/EthersProvider.js.map +0 -1
  45. package/dist/esm/src/ethers/EthersStoreUtil.js +0 -58
  46. package/dist/esm/src/ethers/EthersStoreUtil.js.map +0 -1
  47. package/dist/esm/src/ethers/EthersTypesUtil.js +0 -2
  48. package/dist/esm/src/ethers/EthersTypesUtil.js.map +0 -1
  49. package/dist/esm/src/ethers/InjectedProvider.js +0 -15
  50. package/dist/esm/src/ethers/InjectedProvider.js.map +0 -1
  51. package/dist/esm/src/ethers/SafeProvider.js +0 -34
  52. package/dist/esm/src/ethers/SafeProvider.js.map +0 -1
  53. package/dist/esm/src/solana/SolanaConstantsUtil.js +0 -57
  54. package/dist/esm/src/solana/SolanaConstantsUtil.js.map +0 -1
  55. package/dist/esm/src/solana/SolanaHelpersUtils.js +0 -27
  56. package/dist/esm/src/solana/SolanaHelpersUtils.js.map +0 -1
  57. package/dist/esm/src/solana/SolanaTypesUtil.js +0 -2
  58. package/dist/esm/src/solana/SolanaTypesUtil.js.map +0 -1
  59. package/dist/esm/src/ton/TonTypesUtil.js +0 -2
  60. package/dist/esm/src/ton/TonTypesUtil.js.map +0 -1
  61. package/dist/esm/src/wallet-standard/SolanaWalletConnectStandardWallet.js +0 -334
  62. package/dist/esm/src/wallet-standard/SolanaWalletConnectStandardWallet.js.map +0 -1
  63. package/dist/esm/src/wallet-standard/WalletConnectAccount.js +0 -53
  64. package/dist/esm/src/wallet-standard/WalletConnectAccount.js.map +0 -1
  65. package/dist/esm/src/wallet-standard/constants.js +0 -8
  66. package/dist/esm/src/wallet-standard/constants.js.map +0 -1
  67. package/dist/esm/src/wallet-standard/utils.js +0 -11
  68. package/dist/esm/src/wallet-standard/utils.js.map +0 -1
  69. package/dist/esm/tests/CaipNetworkUtil.test.js +0 -333
  70. package/dist/esm/tests/CaipNetworkUtil.test.js.map +0 -1
  71. package/dist/esm/tests/EthersHelpersUtil.test.js +0 -61
  72. package/dist/esm/tests/EthersHelpersUtil.test.js.map +0 -1
  73. package/dist/esm/tests/HelperUtil.test.js +0 -84
  74. package/dist/esm/tests/HelperUtil.test.js.map +0 -1
  75. package/dist/esm/tests/HelpersUtil.test.js +0 -76
  76. package/dist/esm/tests/HelpersUtil.test.js.map +0 -1
  77. package/dist/esm/tests/SemVerUtil.test.js +0 -206
  78. package/dist/esm/tests/SemVerUtil.test.js.map +0 -1
  79. package/dist/esm/tests/SolanaHelpersUtil.test.js +0 -107
  80. package/dist/esm/tests/SolanaHelpersUtil.test.js.map +0 -1
  81. package/dist/esm/tests/TokenUtil.test.js +0 -27
  82. package/dist/esm/tests/TokenUtil.test.js.map +0 -1
  83. package/dist/esm/tests/WalletConnectWalletStandard.test.js +0 -322
  84. package/dist/esm/tests/WalletConnectWalletStandard.test.js.map +0 -1
  85. package/dist/esm/tsconfig.tsbuildinfo +0 -1
  86. package/dist/types/exports/bitcoin.d.ts +0 -2
  87. package/dist/types/exports/ethers.d.ts +0 -6
  88. package/dist/types/exports/index.d.ts +0 -35
  89. package/dist/types/exports/solana.d.ts +0 -3
  90. package/dist/types/exports/ton.d.ts +0 -1
  91. package/dist/types/exports/wallet-standard.d.ts +0 -1
  92. package/dist/types/src/CaipNetworkUtil.d.ts +0 -59
  93. package/dist/types/src/ConstantsUtil.d.ts +0 -28
  94. package/dist/types/src/ErrorUtil.d.ts +0 -88
  95. package/dist/types/src/HelpersUtil.d.ts +0 -46
  96. package/dist/types/src/LoggerUtil.d.ts +0 -3
  97. package/dist/types/src/PresetsUtil.d.ts +0 -9
  98. package/dist/types/src/SemVerUtils.d.ts +0 -7
  99. package/dist/types/src/TokenUtil.d.ts +0 -9
  100. package/dist/types/src/TypeUtil.d.ts +0 -25
  101. package/dist/types/src/WCNamespaceUtil.d.ts +0 -11
  102. package/dist/types/src/bitcoin/BitcoinConstantsUtil.d.ts +0 -6
  103. package/dist/types/src/bitcoin/BitcoinTypesUtil.d.ts +0 -121
  104. package/dist/types/src/ethers/BaseProvider.d.ts +0 -6
  105. package/dist/types/src/ethers/EthersHelpersUtil.d.ts +0 -14
  106. package/dist/types/src/ethers/EthersProvider.d.ts +0 -12
  107. package/dist/types/src/ethers/EthersStoreUtil.d.ts +0 -29
  108. package/dist/types/src/ethers/EthersTypesUtil.d.ts +0 -54
  109. package/dist/types/src/ethers/InjectedProvider.d.ts +0 -5
  110. package/dist/types/src/ethers/SafeProvider.d.ts +0 -13
  111. package/dist/types/src/solana/SolanaConstantsUtil.d.ts +0 -35
  112. package/dist/types/src/solana/SolanaHelpersUtils.d.ts +0 -8
  113. package/dist/types/src/solana/SolanaTypesUtil.d.ts +0 -82
  114. package/dist/types/src/ton/TonTypesUtil.d.ts +0 -89
  115. package/dist/types/src/wallet-standard/SolanaWalletConnectStandardWallet.d.ts +0 -22
  116. package/dist/types/src/wallet-standard/WalletConnectAccount.d.ts +0 -14
  117. package/dist/types/src/wallet-standard/constants.d.ts +0 -2
  118. package/dist/types/src/wallet-standard/utils.d.ts +0 -8
  119. package/dist/types/tests/CaipNetworkUtil.test.d.ts +0 -1
  120. package/dist/types/tests/EthersHelpersUtil.test.d.ts +0 -1
  121. package/dist/types/tests/HelperUtil.test.d.ts +0 -1
  122. package/dist/types/tests/HelpersUtil.test.d.ts +0 -1
  123. package/dist/types/tests/SemVerUtil.test.d.ts +0 -1
  124. package/dist/types/tests/SolanaHelpersUtil.test.d.ts +0 -1
  125. package/dist/types/tests/TokenUtil.test.d.ts +0 -1
  126. package/dist/types/tests/WalletConnectWalletStandard.test.d.ts +0 -1
@@ -1,322 +0,0 @@
1
- import { PublicKey, Transaction } from '@solana/web3.js';
2
- import bs58 from 'bs58';
3
- import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest';
4
- import { createNamespaces } from '../src/WCNamespaceUtil.js';
5
- import { SolConstantsUtil } from '../src/solana/SolanaConstantsUtil.js';
6
- import { SolanaWalletConnectStandardWallet } from '../src/wallet-standard/SolanaWalletConnectStandardWallet.js';
7
- const SOLANA_CHAINS = ['solana:mainnet', 'solana:devnet', 'solana:testnet', 'solana:localnet'];
8
- // Mock dependencies
9
- vi.mock('@walletconnect/universal-provider');
10
- vi.mock('@wallet-standard/wallet');
11
- const mockAddress = 'HPAccp9wmUAP4kxATmf1CjARHfPzB1HXKWoEaNiZqvUQ';
12
- const mockPublicKey = bs58.decode(mockAddress);
13
- // Create a mock transaction bytes array
14
- const mockTransactionBytes = Uint8Array.from([
15
- 0x01, // version
16
- 0x00, // header
17
- 0x00,
18
- 0x00,
19
- 0x00,
20
- 0x00, // recent blockhash
21
- 0x00,
22
- 0x00,
23
- 0x00,
24
- 0x00, // fee payer
25
- 0x00,
26
- 0x00,
27
- 0x00,
28
- 0x00, // instructions
29
- 0x00,
30
- 0x00,
31
- 0x00,
32
- 0x00 // signatures
33
- ]);
34
- describe('SolanaWalletConnectStandardWallet', () => {
35
- let mockProvider;
36
- let wallet;
37
- beforeEach(() => {
38
- // Reset mocks
39
- vi.clearAllMocks();
40
- // Setup mock provider
41
- mockProvider = {
42
- connect: vi.fn(),
43
- disconnect: vi.fn(),
44
- request: vi.fn(),
45
- on: vi.fn(),
46
- session: vi.fn()
47
- };
48
- // Create wallet instance using the static register method
49
- SolanaWalletConnectStandardWallet.register(mockProvider);
50
- wallet = new SolanaWalletConnectStandardWallet(mockProvider);
51
- });
52
- describe('constructor and initialization', () => {
53
- it('should initialize with correct properties', () => {
54
- expect(wallet.name).toBe('WalletConnect');
55
- expect(wallet.version).toBe('1.0.0');
56
- expect(wallet.chains).toEqual(SOLANA_CHAINS);
57
- });
58
- it('should set up event listeners on provider', () => {
59
- expect(mockProvider.on).toHaveBeenCalledWith('connect', expect.any(Function));
60
- expect(mockProvider.on).toHaveBeenCalledWith('disconnect', expect.any(Function));
61
- expect(mockProvider.on).toHaveBeenCalledWith('accountsChanged', expect.any(Function));
62
- expect(mockProvider.on).toHaveBeenCalledWith('chainChanged', expect.any(Function));
63
- });
64
- });
65
- describe('connect', () => {
66
- beforeEach(() => {
67
- vi.spyOn(mockProvider, 'connect').mockResolvedValue({
68
- namespaces: {
69
- solana: {
70
- accounts: [`solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp:${mockAddress}`],
71
- chains: ['solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp'],
72
- methods: [
73
- 'solana:signAndSendTransaction',
74
- 'solana:signTransaction',
75
- 'solana:signMessage'
76
- ],
77
- events: ['change']
78
- }
79
- }
80
- });
81
- });
82
- it('should connect successfully', async () => {
83
- const connectResult = await wallet.features['standard:connect'].connect();
84
- expect(connectResult.accounts).toBeDefined();
85
- expect(mockProvider.connect).toHaveBeenCalledWith({
86
- namespaces: createNamespaces([SolConstantsUtil.DEFAULT_CHAIN])
87
- });
88
- });
89
- });
90
- describe('disconnect', () => {
91
- beforeEach(() => {
92
- vi.spyOn(mockProvider, 'session', 'get').mockReturnValue({
93
- namespaces: {
94
- solana: {
95
- accounts: [`solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp:${mockAddress}`],
96
- chains: ['solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp'],
97
- methods: [
98
- 'solana:signAndSendTransaction',
99
- 'solana:signTransaction',
100
- 'solana:signMessage'
101
- ],
102
- events: ['change']
103
- }
104
- }
105
- });
106
- });
107
- afterEach(() => {
108
- vi.clearAllMocks();
109
- });
110
- it('should disconnect successfully', async () => {
111
- await wallet.features['standard:disconnect'].disconnect();
112
- expect(mockProvider.disconnect).toHaveBeenCalled();
113
- });
114
- });
115
- describe('signAndSendTransaction', () => {
116
- const mockAccount = {
117
- address: mockAddress,
118
- publicKey: new PublicKey(mockPublicKey).toBytes(),
119
- chains: ['solana:mainnet'],
120
- features: ['solana:signAndSendTransaction']
121
- };
122
- beforeEach(async () => {
123
- vi.restoreAllMocks();
124
- vi.spyOn(mockProvider, 'session', 'get').mockReturnValue({
125
- namespaces: {
126
- solana: {
127
- accounts: [`solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp:${mockAddress}`],
128
- chains: ['solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp'],
129
- methods: ['solana:signAndSendTransaction'],
130
- events: ['change']
131
- }
132
- }
133
- });
134
- });
135
- afterEach(() => {
136
- vi.clearAllMocks();
137
- });
138
- it('should throw error when not connected', async () => {
139
- const mockTransactionBytes = new Uint8Array([1, 2, 3, 4, 5]); // Mock transaction bytes
140
- await expect(wallet.features['solana:signAndSendTransaction'].signAndSendTransaction({
141
- transaction: mockTransactionBytes,
142
- account: mockAccount,
143
- chain: 'solana:mainnet'
144
- })).rejects.toThrow('not connected');
145
- });
146
- it('should sign and send transaction successfully', async () => {
147
- await wallet.features['standard:connect'].connect();
148
- const mockSignature = 'mockSignature';
149
- vi.spyOn(mockProvider, 'request').mockResolvedValueOnce({
150
- signature: mockSignature
151
- });
152
- const result = await wallet.features['solana:signAndSendTransaction'].signAndSendTransaction({
153
- transaction: mockTransactionBytes,
154
- account: mockAccount,
155
- chain: 'solana:mainnet'
156
- });
157
- expect(result?.[0]?.signature).toBeDefined();
158
- expect(mockProvider.request).toHaveBeenCalledWith({
159
- method: 'solana_signAndSendTransaction',
160
- params: expect.any(Object)
161
- });
162
- });
163
- });
164
- describe('signTransaction', () => {
165
- const mockAccount = {
166
- address: mockAddress,
167
- publicKey: new PublicKey(mockPublicKey).toBytes(),
168
- chains: ['solana:mainnet'],
169
- features: ['solana:signTransaction']
170
- };
171
- beforeEach(async () => {
172
- vi.restoreAllMocks();
173
- vi.spyOn(mockProvider, 'session', 'get').mockReturnValue({
174
- namespaces: {
175
- solana: {
176
- accounts: [`solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp:${mockAddress}`],
177
- chains: ['solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp'],
178
- methods: ['solana:signTransaction'],
179
- events: ['change']
180
- }
181
- }
182
- });
183
- });
184
- afterEach(() => {
185
- vi.clearAllMocks();
186
- });
187
- it('should throw error when not connected', async () => {
188
- await expect(wallet.features['solana:signTransaction'].signTransaction({
189
- transaction: mockTransactionBytes,
190
- account: mockAccount,
191
- chain: 'solana:mainnet'
192
- })).rejects.toThrow('not connected');
193
- });
194
- it('should sign transaction successfully', async () => {
195
- vi.spyOn(Transaction, 'from').mockImplementation(buffer => {
196
- return {
197
- serialize: vi.fn().mockReturnValue(new Uint8Array(buffer)),
198
- recentBlockhash: 'mockBlockhash',
199
- feePayer: new PublicKey(mockPublicKey)
200
- };
201
- });
202
- await wallet.features['standard:connect'].connect();
203
- const mockSignedTx = 'mockSignedTransaction';
204
- vi.spyOn(mockProvider, 'request').mockResolvedValueOnce({
205
- transaction: mockSignedTx
206
- });
207
- const result = await wallet.features['solana:signTransaction'].signTransaction({
208
- transaction: mockTransactionBytes,
209
- account: mockAccount,
210
- chain: 'solana:mainnet'
211
- });
212
- expect(result?.[0]?.signedTransaction).toBeDefined();
213
- expect(mockProvider.request).toHaveBeenCalledWith({
214
- method: 'solana_signTransaction',
215
- params: expect.any(Object)
216
- });
217
- });
218
- });
219
- describe('signMessage', () => {
220
- const mockAccount = {
221
- address: mockAddress,
222
- publicKey: new PublicKey(mockPublicKey).toBytes(),
223
- chains: ['solana:mainnet'],
224
- features: ['solana:signMessage']
225
- };
226
- beforeEach(() => {
227
- vi.restoreAllMocks();
228
- vi.spyOn(mockProvider, 'session', 'get').mockReturnValue({
229
- namespaces: {
230
- solana: {
231
- accounts: [`solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp:${mockAddress}`],
232
- chains: ['solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp'],
233
- methods: ['solana:signMessage'],
234
- events: ['change']
235
- }
236
- }
237
- });
238
- });
239
- afterEach(() => {
240
- vi.clearAllMocks();
241
- });
242
- it('should throw error when not connected', async () => {
243
- vi.spyOn(mockProvider, 'session', 'get').mockReturnValue(undefined);
244
- const mockMessage = new Uint8Array([1, 2, 3]);
245
- await expect(wallet.features['solana:signMessage'].signMessage({
246
- message: mockMessage,
247
- account: mockAccount
248
- })).rejects.toThrow('not connected');
249
- });
250
- it('should sign message successfully', async () => {
251
- await wallet.features['standard:connect'].connect();
252
- const mockMessage = new Uint8Array([1, 2, 3]);
253
- const mockSignature = 'mockSignature';
254
- vi.spyOn(mockProvider, 'request').mockResolvedValueOnce({
255
- signature: mockSignature
256
- });
257
- const result = await wallet.features['solana:signMessage'].signMessage({
258
- message: mockMessage,
259
- account: mockAccount
260
- });
261
- expect(result?.[0]?.signature).toBeDefined();
262
- expect(result?.[0]?.signedMessage).toEqual(mockMessage);
263
- expect(mockProvider.request).toHaveBeenCalledWith({
264
- method: 'solana_signMessage',
265
- params: expect.any(Object)
266
- });
267
- });
268
- });
269
- describe('events', () => {
270
- let connectHandler;
271
- let disconnectHandler;
272
- beforeEach(() => {
273
- vi.restoreAllMocks();
274
- vi.spyOn(mockProvider, 'session', 'get').mockReturnValue({
275
- namespaces: {
276
- solana: {
277
- accounts: [`solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp:${mockAddress}`],
278
- chains: ['solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp'],
279
- methods: [
280
- 'solana:signAndSendTransaction',
281
- 'solana:signTransaction',
282
- 'solana:signMessage'
283
- ],
284
- events: ['change']
285
- }
286
- }
287
- });
288
- // Store event handlers when they're registered
289
- vi.spyOn(mockProvider, 'on').mockImplementation((event, handler) => {
290
- if (event === 'connect') {
291
- connectHandler = handler;
292
- }
293
- else if (event === 'disconnect') {
294
- disconnectHandler = handler;
295
- }
296
- });
297
- wallet.setProvider(mockProvider);
298
- });
299
- afterEach(() => {
300
- vi.clearAllMocks();
301
- });
302
- it('should handle connect event', () => {
303
- const mockListener = vi.fn();
304
- wallet.features['standard:events'].on('change', mockListener);
305
- // Call the connect handler directly
306
- if (connectHandler) {
307
- connectHandler();
308
- }
309
- expect(mockListener).toHaveBeenCalled();
310
- });
311
- it('should handle disconnect event', () => {
312
- const mockListener = vi.fn();
313
- wallet.features['standard:events'].on('change', mockListener);
314
- // Call the disconnect handler directly
315
- if (disconnectHandler) {
316
- disconnectHandler();
317
- }
318
- expect(mockListener).toHaveBeenCalled();
319
- });
320
- });
321
- });
322
- //# sourceMappingURL=WalletConnectWalletStandard.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WalletConnectWalletStandard.test.js","sourceRoot":"","sources":["../../../tests/WalletConnectWalletStandard.test.ts"],"names":[],"mappings":"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"}