@reown/appkit 1.1.1-40d0859f0.0 → 1.1.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.
- package/dist/esm/exports/constants.js +1 -1
- package/dist/esm/exports/constants.js.map +1 -1
- package/dist/esm/package.json +1 -1
- package/dist/esm/src/client.js +6 -29
- package/dist/esm/src/client.js.map +1 -1
- package/dist/esm/src/universal-adapter/client.js +7 -3
- package/dist/esm/src/universal-adapter/client.js.map +1 -1
- package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/exports/constants.d.ts +1 -1
- package/dist/types/src/client.d.ts +4 -5
- package/dist/types/src/universal-adapter/client.d.ts +1 -1
- package/package.json +9 -9
- package/dist/esm/src/tests/appkit.test.js +0 -345
- package/dist/esm/src/tests/appkit.test.js.map +0 -1
- package/dist/esm/src/tests/mocks/AppKit.js +0 -23
- package/dist/esm/src/tests/mocks/AppKit.js.map +0 -1
- package/dist/esm/src/tests/mocks/Options.js +0 -14
- package/dist/esm/src/tests/mocks/Options.js.map +0 -1
- package/dist/esm/src/tests/mocks/UniversalProvider.js +0 -131
- package/dist/esm/src/tests/mocks/UniversalProvider.js.map +0 -1
- package/dist/esm/src/tests/universal-adapter.test.js +0 -151
- package/dist/esm/src/tests/universal-adapter.test.js.map +0 -1
- package/dist/esm/src/tests/utils/HelpersUtil.test.js +0 -148
- package/dist/esm/src/tests/utils/HelpersUtil.test.js.map +0 -1
- package/dist/esm/tsconfig.tsbuildinfo +0 -1
- package/dist/types/src/tests/appkit.test.d.ts +0 -1
- package/dist/types/src/tests/mocks/AppKit.d.ts +0 -3
- package/dist/types/src/tests/mocks/Options.d.ts +0 -18
- package/dist/types/src/tests/mocks/UniversalProvider.d.ts +0 -3
- package/dist/types/src/tests/universal-adapter.test.d.ts +0 -1
- package/dist/types/src/tests/utils/HelpersUtil.test.d.ts +0 -1
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, beforeEach, vi, afterEach } from 'vitest';
|
|
2
|
-
import { mainnet, solana } from '../networks';
|
|
3
|
-
import { UniversalAdapterClient } from '../universal-adapter';
|
|
4
|
-
import { mockOptions } from './mocks/Options';
|
|
5
|
-
import mockProvider from './mocks/UniversalProvider';
|
|
6
|
-
import { NetworkController } from '@reown/appkit-core';
|
|
7
|
-
import { ProviderUtil } from '../store/index.js';
|
|
8
|
-
import { ConstantsUtil, PresetsUtil } from '@reown/appkit-utils';
|
|
9
|
-
import mockAppKit from './mocks/AppKit';
|
|
10
|
-
describe('UniversalAdapter', () => {
|
|
11
|
-
let universalAdapter;
|
|
12
|
-
beforeEach(() => {
|
|
13
|
-
universalAdapter = new UniversalAdapterClient(mockOptions);
|
|
14
|
-
universalAdapter.walletConnectProvider = mockProvider;
|
|
15
|
-
universalAdapter.construct(mockAppKit, mockOptions);
|
|
16
|
-
});
|
|
17
|
-
afterEach(() => {
|
|
18
|
-
vi.clearAllMocks();
|
|
19
|
-
});
|
|
20
|
-
describe('UniversalAdapter - Initialization', () => {
|
|
21
|
-
it('should set caipNetworks to provided caipNetworks options', () => {
|
|
22
|
-
expect(universalAdapter?.caipNetworks).toEqual(mockOptions.networks);
|
|
23
|
-
});
|
|
24
|
-
it('should set defaultNetwork to first caipNetwork option', () => {
|
|
25
|
-
expect(universalAdapter?.defaultNetwork).toEqual(mockOptions.networks[0]);
|
|
26
|
-
});
|
|
27
|
-
it('should set metadata to metadata options', () => {
|
|
28
|
-
expect(universalAdapter.appKit).toEqual(mockAppKit);
|
|
29
|
-
});
|
|
30
|
-
});
|
|
31
|
-
describe('UniversalAdapter - Public Methods', () => {
|
|
32
|
-
it('should return walletConnectProvider when getWalletConnectProvider is invoked', async () => {
|
|
33
|
-
const switchNetworkSpy = vi.spyOn(universalAdapter, 'switchNetwork');
|
|
34
|
-
await universalAdapter.networkControllerClient.switchCaipNetwork(mainnet);
|
|
35
|
-
expect(switchNetworkSpy).toHaveBeenCalledWith(mainnet);
|
|
36
|
-
});
|
|
37
|
-
});
|
|
38
|
-
describe('UniversalAdapter - Network', () => {
|
|
39
|
-
it('should call switchCaipNetwork when networkControllerClient.switchCaipNetwork is invoked', async () => {
|
|
40
|
-
const provider = await universalAdapter.getWalletConnectProvider();
|
|
41
|
-
expect(provider).toEqual(mockProvider);
|
|
42
|
-
});
|
|
43
|
-
it('should call return correct approvedCaipNetworksData', async () => {
|
|
44
|
-
const approvedCaipNetworksData = await universalAdapter.networkControllerClient.getApprovedCaipNetworksData();
|
|
45
|
-
expect(approvedCaipNetworksData).toMatchObject({
|
|
46
|
-
supportsAllNetworks: false,
|
|
47
|
-
approvedCaipNetworkIds: [
|
|
48
|
-
mockProvider.session?.namespaces['eip155']?.chains?.[0],
|
|
49
|
-
mockProvider.session?.namespaces['solana']?.chains?.[0]
|
|
50
|
-
]
|
|
51
|
-
});
|
|
52
|
-
});
|
|
53
|
-
it('should call setDefaultNetwork and set first caipNetwork on setActiveCaipNetwork when there is no active caipNetwork', async () => {
|
|
54
|
-
vi.spyOn(NetworkController, 'state', 'get').mockReturnValue({
|
|
55
|
-
caipNetwork: undefined,
|
|
56
|
-
requestedCaipNetworks: [mainnet, solana],
|
|
57
|
-
approvedCaipNetworkIds: [],
|
|
58
|
-
supportsAllNetworks: true
|
|
59
|
-
});
|
|
60
|
-
const adapterSpy = vi.spyOn(universalAdapter, 'setDefaultNetwork');
|
|
61
|
-
const networkControllerSpy = vi.spyOn(NetworkController, 'setActiveCaipNetwork');
|
|
62
|
-
const mockOnUri = vi.fn();
|
|
63
|
-
await universalAdapter?.connectionControllerClient?.connectWalletConnect?.(mockOnUri);
|
|
64
|
-
expect(adapterSpy).toHaveBeenCalledWith(mockProvider.session?.namespaces);
|
|
65
|
-
expect(networkControllerSpy).toHaveBeenCalledWith(mainnet);
|
|
66
|
-
});
|
|
67
|
-
it('should set correct requestedCaipNetworks in AppKit when syncRequestedNetworks has been called', () => {
|
|
68
|
-
;
|
|
69
|
-
universalAdapter.syncRequestedNetworks(mockOptions.networks);
|
|
70
|
-
expect(mockAppKit.setRequestedCaipNetworks).toHaveBeenCalledWith([mainnet], 'eip155');
|
|
71
|
-
expect(mockAppKit.setRequestedCaipNetworks).toHaveBeenCalledWith([solana], 'solana');
|
|
72
|
-
});
|
|
73
|
-
});
|
|
74
|
-
describe('UniversalAdapter - Connection', () => {
|
|
75
|
-
it('should connect the walletConnectProvider with the right namespaces when connectionControllerClient.connectWalletConnect is invoked', async () => {
|
|
76
|
-
const providerSpy = vi.spyOn(universalAdapter.walletConnectProvider, 'connect');
|
|
77
|
-
const mockOnUri = vi.fn();
|
|
78
|
-
await universalAdapter?.connectionControllerClient?.connectWalletConnect?.(mockOnUri);
|
|
79
|
-
expect(providerSpy).toHaveBeenCalledWith({
|
|
80
|
-
optionalNamespaces: universalAdapter.walletConnectProvider?.namespaces
|
|
81
|
-
});
|
|
82
|
-
});
|
|
83
|
-
it('should update AppKit state when connectionControllerClient.connectWalletConnect is invoked', async () => {
|
|
84
|
-
const mockOnUri = vi.fn();
|
|
85
|
-
await universalAdapter?.connectionControllerClient?.connectWalletConnect?.(mockOnUri);
|
|
86
|
-
expect(mockAppKit.setCaipAddress).toHaveBeenCalledWith(mockProvider.session?.namespaces['eip155']?.accounts[0], 'eip155');
|
|
87
|
-
expect(mockAppKit.setCaipAddress).toHaveBeenCalledWith(mockProvider.session?.namespaces['solana']?.accounts[0], 'solana');
|
|
88
|
-
});
|
|
89
|
-
it('should return correct provider data when getProviderData is invoked', async () => {
|
|
90
|
-
const data = universalAdapter.getProviderData();
|
|
91
|
-
expect(data).toMatchObject({
|
|
92
|
-
provider: mockProvider,
|
|
93
|
-
namespaces: mockProvider.session?.namespaces,
|
|
94
|
-
namespaceKeys: Object.keys(mockProvider.session?.namespaces || {}),
|
|
95
|
-
isConnected: true,
|
|
96
|
-
preferredAccountType: 'eoa'
|
|
97
|
-
});
|
|
98
|
-
});
|
|
99
|
-
it('should disconnect the walletConnectProvider when disconnect is invoked', async () => {
|
|
100
|
-
const providerSpy = vi.spyOn(universalAdapter.walletConnectProvider, 'disconnect');
|
|
101
|
-
await universalAdapter?.connectionControllerClient?.disconnect?.();
|
|
102
|
-
expect(providerSpy).toHaveBeenCalled();
|
|
103
|
-
expect(mockAppKit.resetAccount).toHaveBeenCalledWith('eip155');
|
|
104
|
-
expect(mockAppKit.resetAccount).toHaveBeenCalledWith('solana');
|
|
105
|
-
});
|
|
106
|
-
it('should set the ApprovedCaipNetworksData', async () => {
|
|
107
|
-
const mockOnUri = vi.fn();
|
|
108
|
-
await universalAdapter?.connectionControllerClient?.connectWalletConnect?.(mockOnUri);
|
|
109
|
-
expect(mockAppKit.setApprovedCaipNetworksData).toHaveBeenCalledWith('eip155');
|
|
110
|
-
expect(mockAppKit.setApprovedCaipNetworksData).toHaveBeenCalledWith('solana');
|
|
111
|
-
});
|
|
112
|
-
});
|
|
113
|
-
describe('UniversalAdapter - ProviderUtil', () => {
|
|
114
|
-
it('should set the provider in ProviderUtil when setWalletConnectProvider is called', async () => {
|
|
115
|
-
const mockSetProvider = vi.spyOn(ProviderUtil, 'setProvider');
|
|
116
|
-
const mockSetProviderId = vi.spyOn(ProviderUtil, 'setProviderId');
|
|
117
|
-
await universalAdapter.setWalletConnectProvider();
|
|
118
|
-
expect(mockSetProvider).toHaveBeenCalledWith('eip155', universalAdapter.walletConnectProvider);
|
|
119
|
-
expect(mockSetProviderId).toHaveBeenCalledWith('eip155', 'walletConnect');
|
|
120
|
-
expect(mockSetProvider).toHaveBeenCalledWith('solana', universalAdapter.walletConnectProvider);
|
|
121
|
-
expect(mockSetProviderId).toHaveBeenCalledWith('solana', 'walletConnect');
|
|
122
|
-
});
|
|
123
|
-
});
|
|
124
|
-
describe('UniversalAdapter - Provider', () => {
|
|
125
|
-
it('should set up event listeners when watchWalletConnect is called', async () => {
|
|
126
|
-
const provider = await universalAdapter.getWalletConnectProvider();
|
|
127
|
-
const providerOnSpy = vi.spyOn(provider, 'on');
|
|
128
|
-
await universalAdapter.watchWalletConnect();
|
|
129
|
-
expect(providerOnSpy).toHaveBeenCalledWith('disconnect', expect.any(Function));
|
|
130
|
-
expect(providerOnSpy).toHaveBeenCalledWith('accountsChanged', expect.any(Function));
|
|
131
|
-
expect(providerOnSpy).toHaveBeenCalledWith('chainChanged', expect.any(Function));
|
|
132
|
-
});
|
|
133
|
-
});
|
|
134
|
-
describe('UniversalAdapter - Connectors', () => {
|
|
135
|
-
it('should sync connectors correctly', () => {
|
|
136
|
-
;
|
|
137
|
-
universalAdapter.syncConnectors();
|
|
138
|
-
expect(mockAppKit.setConnectors).toHaveBeenCalledWith([
|
|
139
|
-
{
|
|
140
|
-
id: ConstantsUtil.WALLET_CONNECT_CONNECTOR_ID,
|
|
141
|
-
explorerId: PresetsUtil.ConnectorExplorerIds[ConstantsUtil.WALLET_CONNECT_CONNECTOR_ID],
|
|
142
|
-
imageId: PresetsUtil.ConnectorImageIds[ConstantsUtil.WALLET_CONNECT_CONNECTOR_ID],
|
|
143
|
-
name: PresetsUtil.ConnectorNamesMap[ConstantsUtil.WALLET_CONNECT_CONNECTOR_ID],
|
|
144
|
-
type: 'WALLET_CONNECT',
|
|
145
|
-
chain: universalAdapter.chainNamespace
|
|
146
|
-
}
|
|
147
|
-
]);
|
|
148
|
-
});
|
|
149
|
-
});
|
|
150
|
-
});
|
|
151
|
-
//# sourceMappingURL=universal-adapter.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"universal-adapter.test.js","sourceRoot":"","sources":["../../../../src/tests/universal-adapter.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
import { describe, test, expect } from 'vitest';
|
|
2
|
-
import { WcHelpersUtil } from '../../utils/HelpersUtil';
|
|
3
|
-
const mockEthereumNetwork = {
|
|
4
|
-
id: 'eip155:1',
|
|
5
|
-
chainNamespace: 'eip155',
|
|
6
|
-
chainId: '1',
|
|
7
|
-
name: 'Ethereum',
|
|
8
|
-
explorerUrl: 'https://etherscan.io',
|
|
9
|
-
rpcUrl: 'https://mainnet.infura.io/v3/YOUR-PROJECT-ID',
|
|
10
|
-
currency: 'ETH'
|
|
11
|
-
};
|
|
12
|
-
const mockPolygonNetwork = {
|
|
13
|
-
id: 'eip155:137',
|
|
14
|
-
chainNamespace: 'eip155',
|
|
15
|
-
chainId: '137',
|
|
16
|
-
name: 'Polygon',
|
|
17
|
-
explorerUrl: 'https://polygonscan.com',
|
|
18
|
-
rpcUrl: 'https://polygon.rpc.com',
|
|
19
|
-
currency: 'MATIC'
|
|
20
|
-
};
|
|
21
|
-
const mockSolanaNetwork = {
|
|
22
|
-
id: 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',
|
|
23
|
-
chainNamespace: 'solana',
|
|
24
|
-
chainId: '5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',
|
|
25
|
-
name: 'Solana',
|
|
26
|
-
explorerUrl: 'https://explorer.solana.com',
|
|
27
|
-
rpcUrl: 'https://api.mainnet-beta.solana.com',
|
|
28
|
-
currency: 'SOL'
|
|
29
|
-
};
|
|
30
|
-
describe('WcHelpersUtil', () => {
|
|
31
|
-
describe('getMethodsByChainNamespace', () => {
|
|
32
|
-
test('returns correct methods for solana', () => {
|
|
33
|
-
const methods = WcHelpersUtil.getMethodsByChainNamespace('solana');
|
|
34
|
-
expect(methods).toEqual([
|
|
35
|
-
'solana_signMessage',
|
|
36
|
-
'solana_signTransaction',
|
|
37
|
-
'solana_requestAccounts',
|
|
38
|
-
'solana_getAccounts',
|
|
39
|
-
'solana_signAllTransactions',
|
|
40
|
-
'solana_signAndSendTransaction'
|
|
41
|
-
]);
|
|
42
|
-
});
|
|
43
|
-
test('returns correct methods for eip155', () => {
|
|
44
|
-
const methods = WcHelpersUtil.getMethodsByChainNamespace('eip155');
|
|
45
|
-
expect(methods).toEqual([
|
|
46
|
-
'personal_sign',
|
|
47
|
-
'eth_sign',
|
|
48
|
-
'eth_signTransaction',
|
|
49
|
-
'eth_signTypedData',
|
|
50
|
-
'eth_signTypedData_v3',
|
|
51
|
-
'eth_signTypedData_v4',
|
|
52
|
-
'eth_sendRawTransaction',
|
|
53
|
-
'eth_sendTransaction',
|
|
54
|
-
'wallet_getCapabilities',
|
|
55
|
-
'wallet_sendCalls',
|
|
56
|
-
'wallet_showCallsStatus',
|
|
57
|
-
'wallet_getCallsStatus',
|
|
58
|
-
'wallet_switchEthereumChain'
|
|
59
|
-
]);
|
|
60
|
-
});
|
|
61
|
-
test('returns empty array for unknown namespace', () => {
|
|
62
|
-
const methods = WcHelpersUtil.getMethodsByChainNamespace('unknown');
|
|
63
|
-
expect(methods).toEqual([]);
|
|
64
|
-
});
|
|
65
|
-
});
|
|
66
|
-
describe('createNamespaces', () => {
|
|
67
|
-
test('creates correct namespaces for multiple chains', () => {
|
|
68
|
-
const caipNetworks = [
|
|
69
|
-
mockEthereumNetwork,
|
|
70
|
-
mockPolygonNetwork,
|
|
71
|
-
mockSolanaNetwork
|
|
72
|
-
];
|
|
73
|
-
const namespaces = WcHelpersUtil.createNamespaces(caipNetworks);
|
|
74
|
-
expect(namespaces).toEqual({
|
|
75
|
-
eip155: {
|
|
76
|
-
methods: expect.arrayContaining([
|
|
77
|
-
'personal_sign',
|
|
78
|
-
'eth_sign',
|
|
79
|
-
'eth_signTransaction',
|
|
80
|
-
'eth_signTypedData',
|
|
81
|
-
'eth_signTypedData_v3',
|
|
82
|
-
'eth_signTypedData_v4',
|
|
83
|
-
'eth_sendRawTransaction',
|
|
84
|
-
'eth_sendTransaction',
|
|
85
|
-
'wallet_getCapabilities',
|
|
86
|
-
'wallet_sendCalls',
|
|
87
|
-
'wallet_showCallsStatus',
|
|
88
|
-
'wallet_getCallsStatus',
|
|
89
|
-
'wallet_switchEthereumChain'
|
|
90
|
-
]),
|
|
91
|
-
events: ['accountsChanged', 'chainChanged'],
|
|
92
|
-
chains: ['eip155:1', 'eip155:137'],
|
|
93
|
-
rpcMap: {
|
|
94
|
-
'1': 'https://mainnet.infura.io/v3/YOUR-PROJECT-ID',
|
|
95
|
-
'137': 'https://polygon.rpc.com'
|
|
96
|
-
}
|
|
97
|
-
},
|
|
98
|
-
solana: {
|
|
99
|
-
methods: [
|
|
100
|
-
'solana_signMessage',
|
|
101
|
-
'solana_signTransaction',
|
|
102
|
-
'solana_requestAccounts',
|
|
103
|
-
'solana_getAccounts',
|
|
104
|
-
'solana_signAllTransactions',
|
|
105
|
-
'solana_signAndSendTransaction'
|
|
106
|
-
],
|
|
107
|
-
events: ['accountsChanged', 'chainChanged'],
|
|
108
|
-
chains: ['solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp'],
|
|
109
|
-
rpcMap: {
|
|
110
|
-
'5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp': 'https://api.mainnet-beta.solana.com'
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
});
|
|
114
|
-
});
|
|
115
|
-
test('creates empty namespaces for empty input', () => {
|
|
116
|
-
const namespaces = WcHelpersUtil.createNamespaces([]);
|
|
117
|
-
expect(namespaces).toEqual({});
|
|
118
|
-
});
|
|
119
|
-
});
|
|
120
|
-
describe('getChainsFromNamespaces', () => {
|
|
121
|
-
test('returns correct chain ids', () => {
|
|
122
|
-
const namespaces = {
|
|
123
|
-
eip155: {
|
|
124
|
-
methods: [],
|
|
125
|
-
events: [],
|
|
126
|
-
chains: ['eip155:1', 'eip155:137'],
|
|
127
|
-
accounts: ['eip155:4000:0x123', 'eip155:3000:0x456']
|
|
128
|
-
},
|
|
129
|
-
solana: {
|
|
130
|
-
methods: [],
|
|
131
|
-
events: [],
|
|
132
|
-
chains: ['solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp'],
|
|
133
|
-
accounts: ['solana:mainnet:address', 'solana:devnet:address']
|
|
134
|
-
}
|
|
135
|
-
};
|
|
136
|
-
expect(WcHelpersUtil.getChainsFromNamespaces(namespaces)).toEqual([
|
|
137
|
-
'eip155:1',
|
|
138
|
-
'eip155:137',
|
|
139
|
-
'eip155:4000',
|
|
140
|
-
'eip155:3000',
|
|
141
|
-
'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',
|
|
142
|
-
'solana:mainnet',
|
|
143
|
-
'solana:devnet'
|
|
144
|
-
]);
|
|
145
|
-
});
|
|
146
|
-
});
|
|
147
|
-
});
|
|
148
|
-
//# sourceMappingURL=HelpersUtil.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"HelpersUtil.test.js","sourceRoot":"","sources":["../../../../../src/tests/utils/HelpersUtil.test.ts"],"names":[],"mappings":"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"}
|