@reown/appkit-controllers 1.8.15 → 1.8.17-05762b5280c09a1bf72bc5d7617df3119be653a4.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.
- package/dist/esm/exports/react.js +21 -20
- package/dist/esm/exports/react.js.map +1 -1
- package/dist/esm/src/controllers/AdapterController/ChainAdapterBlueprint.js.map +1 -1
- package/dist/esm/src/controllers/AlertController.js +18 -2
- package/dist/esm/src/controllers/AlertController.js.map +1 -1
- package/dist/esm/src/controllers/BlockchainApiController.js +2 -2
- package/dist/esm/src/controllers/BlockchainApiController.js.map +1 -1
- package/dist/esm/src/controllers/ConnectionController.js +3 -0
- package/dist/esm/src/controllers/ConnectionController.js.map +1 -1
- package/dist/esm/src/controllers/ConnectorController.js +48 -2
- package/dist/esm/src/controllers/ConnectorController.js.map +1 -1
- package/dist/esm/src/controllers/RouterController.js.map +1 -1
- package/dist/esm/src/controllers/SwapController.js +7 -2
- package/dist/esm/src/controllers/SwapController.js.map +1 -1
- package/dist/esm/src/utils/AssetUtil.js +37 -1
- package/dist/esm/src/utils/AssetUtil.js.map +1 -1
- package/dist/esm/src/utils/BalanceUtil.js +10 -7
- package/dist/esm/src/utils/BalanceUtil.js.map +1 -1
- package/dist/esm/src/utils/ChainControllerUtil.js +8 -0
- package/dist/esm/src/utils/ChainControllerUtil.js.map +1 -1
- package/dist/esm/src/utils/ConnectorUtil.js +27 -0
- package/dist/esm/src/utils/ConnectorUtil.js.map +1 -1
- package/dist/esm/src/utils/CoreHelperUtil.js +13 -0
- package/dist/esm/src/utils/CoreHelperUtil.js.map +1 -1
- package/dist/esm/src/utils/SwapApiUtil.js +5 -1
- package/dist/esm/src/utils/SwapApiUtil.js.map +1 -1
- package/dist/esm/tests/controllers/AlertController.test.js +62 -9
- package/dist/esm/tests/controllers/AlertController.test.js.map +1 -1
- package/dist/esm/tests/controllers/ChainController.test.js +1 -0
- package/dist/esm/tests/controllers/ChainController.test.js.map +1 -1
- package/dist/esm/tests/controllers/ConnectionController.test.js +2 -0
- package/dist/esm/tests/controllers/ConnectionController.test.js.map +1 -1
- package/dist/esm/tests/controllers/SwapController.test.js +19 -0
- package/dist/esm/tests/controllers/SwapController.test.js.map +1 -1
- package/dist/esm/tests/hooks/react.test.js +29 -0
- package/dist/esm/tests/hooks/react.test.js.map +1 -1
- package/dist/esm/tests/utils/BalanceUtil.test.js +0 -5
- package/dist/esm/tests/utils/BalanceUtil.test.js.map +1 -1
- package/dist/esm/tests/utils/ConnectorUtil.test.js +83 -0
- package/dist/esm/tests/utils/ConnectorUtil.test.js.map +1 -0
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/types/src/controllers/AdapterController/ChainAdapterBlueprint.d.ts +15 -1
- package/dist/types/src/controllers/BlockchainApiController.d.ts +1 -1
- package/dist/types/src/controllers/ConnectionController.d.ts +3 -1
- package/dist/types/src/controllers/ConnectorController.d.ts +14 -3
- package/dist/types/src/controllers/OptionsController.d.ts +1 -1
- package/dist/types/src/controllers/RouterController.d.ts +1 -1
- package/dist/types/src/utils/AssetUtil.d.ts +14 -0
- package/dist/types/src/utils/BalanceUtil.d.ts +6 -1
- package/dist/types/src/utils/ChainControllerUtil.d.ts +7 -1
- package/dist/types/src/utils/ConnectorUtil.d.ts +16 -0
- package/dist/types/src/utils/ConstantsUtil.d.ts +1 -1
- package/dist/types/src/utils/CoreHelperUtil.d.ts +1 -0
- package/dist/types/src/utils/TypeUtil.d.ts +13 -0
- package/dist/types/src/utils/ViemUtil.d.ts +53 -53
- package/dist/types/tests/utils/ConnectorUtil.test.d.ts +1 -0
- package/package.json +5 -5
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { ConstantsUtil } from '@reown/appkit-common';
|
|
3
|
+
import { ConnectorUtil } from '../../src/utils/ConnectorUtil';
|
|
4
|
+
// -- Helpers ------------------------------------------------------------------
|
|
5
|
+
function createMockConnector(id, name) {
|
|
6
|
+
return {
|
|
7
|
+
id,
|
|
8
|
+
name,
|
|
9
|
+
type: 'EXTERNAL',
|
|
10
|
+
chain: 'eip155'
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
// -- Tests --------------------------------------------------------------------
|
|
14
|
+
describe('ConnectorUtil', () => {
|
|
15
|
+
describe('sortConnectorsByPriority', () => {
|
|
16
|
+
it('should put BASE_ACCOUNT connector first', () => {
|
|
17
|
+
const connectors = [
|
|
18
|
+
createMockConnector('metamask', 'MetaMask'),
|
|
19
|
+
createMockConnector(ConstantsUtil.CONNECTOR_ID.BASE_ACCOUNT, 'Base Account'),
|
|
20
|
+
createMockConnector('rainbow', 'Rainbow')
|
|
21
|
+
];
|
|
22
|
+
const sorted = ConnectorUtil.sortConnectorsByPriority(connectors);
|
|
23
|
+
expect(sorted[0]?.id).toBe(ConstantsUtil.CONNECTOR_ID.BASE_ACCOUNT);
|
|
24
|
+
});
|
|
25
|
+
it('should put COINBASE connector after BASE_ACCOUNT', () => {
|
|
26
|
+
const connectors = [
|
|
27
|
+
createMockConnector('metamask', 'MetaMask'),
|
|
28
|
+
createMockConnector(ConstantsUtil.CONNECTOR_ID.COINBASE, 'Coinbase Wallet'),
|
|
29
|
+
createMockConnector(ConstantsUtil.CONNECTOR_ID.BASE_ACCOUNT, 'Base Account')
|
|
30
|
+
];
|
|
31
|
+
const sorted = ConnectorUtil.sortConnectorsByPriority(connectors);
|
|
32
|
+
expect(sorted[0]?.id).toBe(ConstantsUtil.CONNECTOR_ID.BASE_ACCOUNT);
|
|
33
|
+
expect(sorted[1]?.id).toBe(ConstantsUtil.CONNECTOR_ID.COINBASE);
|
|
34
|
+
});
|
|
35
|
+
it('should put COINBASE_SDK connector after BASE_ACCOUNT', () => {
|
|
36
|
+
const connectors = [
|
|
37
|
+
createMockConnector('rainbow', 'Rainbow'),
|
|
38
|
+
createMockConnector(ConstantsUtil.CONNECTOR_ID.COINBASE_SDK, 'Coinbase SDK'),
|
|
39
|
+
createMockConnector(ConstantsUtil.CONNECTOR_ID.BASE_ACCOUNT, 'Base Account')
|
|
40
|
+
];
|
|
41
|
+
const sorted = ConnectorUtil.sortConnectorsByPriority(connectors);
|
|
42
|
+
expect(sorted[0]?.id).toBe(ConstantsUtil.CONNECTOR_ID.BASE_ACCOUNT);
|
|
43
|
+
expect(sorted[1]?.id).toBe(ConstantsUtil.CONNECTOR_ID.COINBASE_SDK);
|
|
44
|
+
});
|
|
45
|
+
it('should maintain relative order for other connectors', () => {
|
|
46
|
+
const connectors = [
|
|
47
|
+
createMockConnector('metamask', 'MetaMask'),
|
|
48
|
+
createMockConnector('rainbow', 'Rainbow'),
|
|
49
|
+
createMockConnector('trust', 'Trust Wallet')
|
|
50
|
+
];
|
|
51
|
+
const sorted = ConnectorUtil.sortConnectorsByPriority(connectors);
|
|
52
|
+
expect(sorted[0]?.id).toBe('metamask');
|
|
53
|
+
expect(sorted[1]?.id).toBe('rainbow');
|
|
54
|
+
expect(sorted[2]?.id).toBe('trust');
|
|
55
|
+
});
|
|
56
|
+
it('should handle empty array', () => {
|
|
57
|
+
const sorted = ConnectorUtil.sortConnectorsByPriority([]);
|
|
58
|
+
expect(sorted).toEqual([]);
|
|
59
|
+
});
|
|
60
|
+
it('should handle array with only BASE_ACCOUNT', () => {
|
|
61
|
+
const connectors = [
|
|
62
|
+
createMockConnector(ConstantsUtil.CONNECTOR_ID.BASE_ACCOUNT, 'Base Account')
|
|
63
|
+
];
|
|
64
|
+
const sorted = ConnectorUtil.sortConnectorsByPriority(connectors);
|
|
65
|
+
expect(sorted).toHaveLength(1);
|
|
66
|
+
expect(sorted[0]?.id).toBe(ConstantsUtil.CONNECTOR_ID.BASE_ACCOUNT);
|
|
67
|
+
});
|
|
68
|
+
it('should sort correctly with all priority connectors present', () => {
|
|
69
|
+
const connectors = [
|
|
70
|
+
createMockConnector('metamask', 'MetaMask'),
|
|
71
|
+
createMockConnector(ConstantsUtil.CONNECTOR_ID.COINBASE_SDK, 'Coinbase SDK'),
|
|
72
|
+
createMockConnector('rainbow', 'Rainbow'),
|
|
73
|
+
createMockConnector(ConstantsUtil.CONNECTOR_ID.BASE_ACCOUNT, 'Base Account'),
|
|
74
|
+
createMockConnector(ConstantsUtil.CONNECTOR_ID.COINBASE, 'Coinbase Wallet')
|
|
75
|
+
];
|
|
76
|
+
const sorted = ConnectorUtil.sortConnectorsByPriority(connectors);
|
|
77
|
+
expect(sorted[0]?.id).toBe(ConstantsUtil.CONNECTOR_ID.BASE_ACCOUNT);
|
|
78
|
+
expect(sorted[1]?.id).toBe(ConstantsUtil.CONNECTOR_ID.COINBASE_SDK);
|
|
79
|
+
expect(sorted[2]?.id).toBe(ConstantsUtil.CONNECTOR_ID.COINBASE);
|
|
80
|
+
});
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
//# sourceMappingURL=ConnectorUtil.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConnectorUtil.test.js","sourceRoot":"","sources":["../../../../tests/utils/ConnectorUtil.test.ts"],"names":[],"mappings":"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"}
|