@reown/appkit-utils 1.8.15-viem-upgrade.0 → 1.8.15-wc-linking-reset-headless.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/bitcoin.js +2 -0
- package/dist/esm/exports/bitcoin.js.map +1 -0
- package/dist/esm/exports/ethers.js +6 -0
- package/dist/esm/exports/ethers.js.map +1 -0
- package/dist/esm/exports/index.js +10 -0
- package/dist/esm/exports/index.js.map +1 -0
- package/dist/esm/exports/solana.js +3 -0
- package/dist/esm/exports/solana.js.map +1 -0
- package/dist/esm/exports/ton.js +2 -0
- package/dist/esm/exports/ton.js.map +1 -0
- package/dist/esm/exports/wallet-standard.js +2 -0
- package/dist/esm/exports/wallet-standard.js.map +1 -0
- package/dist/esm/package.json +121 -0
- package/dist/esm/src/CaipNetworkUtil.js +256 -0
- package/dist/esm/src/CaipNetworkUtil.js.map +1 -0
- package/dist/esm/src/ConstantsUtil.js +56 -0
- package/dist/esm/src/ConstantsUtil.js.map +1 -0
- package/dist/esm/src/ErrorUtil.js +92 -0
- package/dist/esm/src/ErrorUtil.js.map +1 -0
- package/dist/esm/src/HelpersUtil.js +93 -0
- package/dist/esm/src/HelpersUtil.js.map +1 -0
- package/dist/esm/src/LoggerUtil.js +22 -0
- package/dist/esm/src/LoggerUtil.js.map +1 -0
- package/dist/esm/src/PresetsUtil.js +176 -0
- package/dist/esm/src/PresetsUtil.js.map +1 -0
- package/dist/esm/src/SemVerUtils.js +77 -0
- package/dist/esm/src/SemVerUtils.js.map +1 -0
- package/dist/esm/src/TokenUtil.js +17 -0
- package/dist/esm/src/TokenUtil.js.map +1 -0
- package/dist/esm/src/TypeUtil.js +21 -0
- package/dist/esm/src/TypeUtil.js.map +1 -0
- package/dist/esm/src/WCNamespaceUtil.js +86 -0
- package/dist/esm/src/WCNamespaceUtil.js.map +1 -0
- package/dist/esm/src/bitcoin/BitcoinConstantsUtil.js +7 -0
- package/dist/esm/src/bitcoin/BitcoinConstantsUtil.js.map +1 -0
- package/dist/esm/src/bitcoin/BitcoinTypesUtil.js +8 -0
- package/dist/esm/src/bitcoin/BitcoinTypesUtil.js.map +1 -0
- package/dist/esm/src/ethers/BaseProvider.js +34 -0
- package/dist/esm/src/ethers/BaseProvider.js.map +1 -0
- package/dist/esm/src/ethers/EthersHelpersUtil.js +51 -0
- package/dist/esm/src/ethers/EthersHelpersUtil.js.map +1 -0
- package/dist/esm/src/ethers/EthersProvider.js +9 -0
- package/dist/esm/src/ethers/EthersProvider.js.map +1 -0
- package/dist/esm/src/ethers/EthersStoreUtil.js +58 -0
- package/dist/esm/src/ethers/EthersStoreUtil.js.map +1 -0
- package/dist/esm/src/ethers/EthersTypesUtil.js +2 -0
- package/dist/esm/src/ethers/EthersTypesUtil.js.map +1 -0
- package/dist/esm/src/ethers/InjectedProvider.js +15 -0
- package/dist/esm/src/ethers/InjectedProvider.js.map +1 -0
- package/dist/esm/src/ethers/SafeProvider.js +34 -0
- package/dist/esm/src/ethers/SafeProvider.js.map +1 -0
- package/dist/esm/src/solana/SolanaConstantsUtil.js +57 -0
- package/dist/esm/src/solana/SolanaConstantsUtil.js.map +1 -0
- package/dist/esm/src/solana/SolanaHelpersUtils.js +27 -0
- package/dist/esm/src/solana/SolanaHelpersUtils.js.map +1 -0
- package/dist/esm/src/solana/SolanaTypesUtil.js +2 -0
- package/dist/esm/src/solana/SolanaTypesUtil.js.map +1 -0
- package/dist/esm/src/ton/TonTypesUtil.js +2 -0
- package/dist/esm/src/ton/TonTypesUtil.js.map +1 -0
- package/dist/esm/src/wallet-standard/SolanaWalletConnectStandardWallet.js +334 -0
- package/dist/esm/src/wallet-standard/SolanaWalletConnectStandardWallet.js.map +1 -0
- package/dist/esm/src/wallet-standard/WalletConnectAccount.js +53 -0
- package/dist/esm/src/wallet-standard/WalletConnectAccount.js.map +1 -0
- package/dist/esm/src/wallet-standard/constants.js +8 -0
- package/dist/esm/src/wallet-standard/constants.js.map +1 -0
- package/dist/esm/src/wallet-standard/utils.js +11 -0
- package/dist/esm/src/wallet-standard/utils.js.map +1 -0
- package/dist/esm/tests/CaipNetworkUtil.test.js +333 -0
- package/dist/esm/tests/CaipNetworkUtil.test.js.map +1 -0
- package/dist/esm/tests/EthersHelpersUtil.test.js +61 -0
- package/dist/esm/tests/EthersHelpersUtil.test.js.map +1 -0
- package/dist/esm/tests/HelperUtil.test.js +84 -0
- package/dist/esm/tests/HelperUtil.test.js.map +1 -0
- package/dist/esm/tests/HelpersUtil.test.js +76 -0
- package/dist/esm/tests/HelpersUtil.test.js.map +1 -0
- package/dist/esm/tests/SemVerUtil.test.js +206 -0
- package/dist/esm/tests/SemVerUtil.test.js.map +1 -0
- package/dist/esm/tests/SolanaHelpersUtil.test.js +107 -0
- package/dist/esm/tests/SolanaHelpersUtil.test.js.map +1 -0
- package/dist/esm/tests/TokenUtil.test.js +27 -0
- package/dist/esm/tests/TokenUtil.test.js.map +1 -0
- package/dist/esm/tests/WalletConnectWalletStandard.test.js +322 -0
- package/dist/esm/tests/WalletConnectWalletStandard.test.js.map +1 -0
- package/dist/esm/tsconfig.tsbuildinfo +1 -0
- package/dist/types/exports/bitcoin.d.ts +2 -0
- package/dist/types/exports/ethers.d.ts +6 -0
- package/dist/types/exports/index.d.ts +35 -0
- package/dist/types/exports/solana.d.ts +3 -0
- package/dist/types/exports/ton.d.ts +1 -0
- package/dist/types/exports/wallet-standard.d.ts +1 -0
- package/dist/types/src/CaipNetworkUtil.d.ts +59 -0
- package/dist/types/src/ConstantsUtil.d.ts +28 -0
- package/dist/types/src/ErrorUtil.d.ts +88 -0
- package/dist/types/src/HelpersUtil.d.ts +46 -0
- package/dist/types/src/LoggerUtil.d.ts +3 -0
- package/dist/types/src/PresetsUtil.d.ts +9 -0
- package/dist/types/src/SemVerUtils.d.ts +7 -0
- package/dist/types/src/TokenUtil.d.ts +9 -0
- package/dist/types/src/TypeUtil.d.ts +25 -0
- package/dist/types/src/WCNamespaceUtil.d.ts +11 -0
- package/dist/types/src/bitcoin/BitcoinConstantsUtil.d.ts +6 -0
- package/dist/types/src/bitcoin/BitcoinTypesUtil.d.ts +121 -0
- package/dist/types/src/ethers/BaseProvider.d.ts +6 -0
- package/dist/types/src/ethers/EthersHelpersUtil.d.ts +14 -0
- package/dist/types/src/ethers/EthersProvider.d.ts +12 -0
- package/dist/types/src/ethers/EthersStoreUtil.d.ts +29 -0
- package/dist/types/src/ethers/EthersTypesUtil.d.ts +54 -0
- package/dist/types/src/ethers/InjectedProvider.d.ts +5 -0
- package/dist/types/src/ethers/SafeProvider.d.ts +13 -0
- package/dist/types/src/solana/SolanaConstantsUtil.d.ts +35 -0
- package/dist/types/src/solana/SolanaHelpersUtils.d.ts +8 -0
- package/dist/types/src/solana/SolanaTypesUtil.d.ts +82 -0
- package/dist/types/src/ton/TonTypesUtil.d.ts +93 -0
- package/dist/types/src/wallet-standard/SolanaWalletConnectStandardWallet.d.ts +22 -0
- package/dist/types/src/wallet-standard/WalletConnectAccount.d.ts +14 -0
- package/dist/types/src/wallet-standard/constants.d.ts +2 -0
- package/dist/types/src/wallet-standard/utils.d.ts +8 -0
- package/dist/types/tests/CaipNetworkUtil.test.d.ts +1 -0
- package/dist/types/tests/EthersHelpersUtil.test.d.ts +1 -0
- package/dist/types/tests/HelperUtil.test.d.ts +1 -0
- package/dist/types/tests/HelpersUtil.test.d.ts +1 -0
- package/dist/types/tests/SemVerUtil.test.d.ts +1 -0
- package/dist/types/tests/SolanaHelpersUtil.test.d.ts +1 -0
- package/dist/types/tests/TokenUtil.test.d.ts +1 -0
- package/dist/types/tests/WalletConnectWalletStandard.test.d.ts +1 -0
- package/package.json +6 -6
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bitcoin.js","sourceRoot":"","sources":["../../../exports/bitcoin.ts"],"names":[],"mappings":"AAAA,cAAc,wCAAwC,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from '../src/ethers/EthersHelpersUtil.js';
|
|
2
|
+
export * from '../src/ethers/BaseProvider.js';
|
|
3
|
+
export * from '../src/ethers/SafeProvider.js';
|
|
4
|
+
export * from '../src/ethers/InjectedProvider.js';
|
|
5
|
+
export * from '../src/ethers/EthersProvider.js';
|
|
6
|
+
//# sourceMappingURL=ethers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ethers.js","sourceRoot":"","sources":["../../../exports/ethers.ts"],"names":[],"mappings":"AAAA,cAAc,oCAAoC,CAAA;AAClD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,mCAAmC,CAAA;AACjD,cAAc,iCAAiC,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { ConstantsUtil } from '../src/ConstantsUtil.js';
|
|
2
|
+
export { PresetsUtil } from '../src/PresetsUtil.js';
|
|
3
|
+
export { HelpersUtil } from '../src/HelpersUtil.js';
|
|
4
|
+
export { SemVerUtils } from '../src/SemVerUtils.js';
|
|
5
|
+
export { ErrorUtil } from '../src/ErrorUtil.js';
|
|
6
|
+
export { TokenUtil } from '../src/TokenUtil.js';
|
|
7
|
+
export { LoggerUtil } from '../src/LoggerUtil.js';
|
|
8
|
+
export { CaipNetworksUtil, getBlockchainApiRpcUrl } from '../src/CaipNetworkUtil.js';
|
|
9
|
+
export { SocialProviderEnum } from '../src/TypeUtil.js';
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../exports/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAA;AAGpF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solana.js","sourceRoot":"","sources":["../../../exports/solana.ts"],"names":[],"mappings":"AAAA,cAAc,sCAAsC,CAAA;AACpD,cAAc,qCAAqC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ton.js","sourceRoot":"","sources":["../../../exports/ton.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet-standard.js","sourceRoot":"","sources":["../../../exports/wallet-standard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,MAAM,6DAA6D,CAAA"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@reown/appkit-utils",
|
|
3
|
+
"version": "1.8.15-wc-linking-reset-headless.0",
|
|
4
|
+
"sideEffects": false,
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/esm/exports/index.js",
|
|
7
|
+
"types": "./dist/types/exports/index.d.ts",
|
|
8
|
+
"files": [
|
|
9
|
+
"dist",
|
|
10
|
+
"!tsconfig.tsbuildinfo",
|
|
11
|
+
"README.md"
|
|
12
|
+
],
|
|
13
|
+
"exports": {
|
|
14
|
+
".": {
|
|
15
|
+
"types": "./dist/types/exports/index.d.ts",
|
|
16
|
+
"import": "./dist/esm/exports/index.js",
|
|
17
|
+
"default": "./dist/esm/exports/index.js"
|
|
18
|
+
},
|
|
19
|
+
"./ethers": {
|
|
20
|
+
"types": "./dist/types/exports/ethers.d.ts",
|
|
21
|
+
"import": "./dist/esm/exports/ethers.js",
|
|
22
|
+
"default": "./dist/esm/exports/ethers.js"
|
|
23
|
+
},
|
|
24
|
+
"./solana": {
|
|
25
|
+
"types": "./dist/types/exports/solana.d.ts",
|
|
26
|
+
"import": "./dist/esm/exports/solana.js",
|
|
27
|
+
"default": "./dist/esm/exports/solana.js"
|
|
28
|
+
},
|
|
29
|
+
"./wallet-standard": {
|
|
30
|
+
"types": "./dist/types/exports/wallet-standard.d.ts",
|
|
31
|
+
"import": "./dist/esm/exports/wallet-standard.js",
|
|
32
|
+
"default": "./dist/esm/exports/wallet-standard.js"
|
|
33
|
+
},
|
|
34
|
+
"./bitcoin": {
|
|
35
|
+
"types": "./dist/types/exports/bitcoin.d.ts",
|
|
36
|
+
"import": "./dist/esm/exports/bitcoin.js",
|
|
37
|
+
"default": "./dist/esm/exports/bitcoin.js"
|
|
38
|
+
},
|
|
39
|
+
"./ton": {
|
|
40
|
+
"types": "./dist/types/exports/ton.d.ts",
|
|
41
|
+
"import": "./dist/esm/exports/ton.js",
|
|
42
|
+
"default": "./dist/esm/exports/ton.js"
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"typesVersions": {
|
|
46
|
+
"*": {
|
|
47
|
+
"ethers": [
|
|
48
|
+
"./dist/types/exports/ethers.d.ts"
|
|
49
|
+
],
|
|
50
|
+
"solana": [
|
|
51
|
+
"./dist/types/exports/solana.d.ts"
|
|
52
|
+
],
|
|
53
|
+
"ton": [
|
|
54
|
+
"./dist/types/exports/ton.d.ts"
|
|
55
|
+
]
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
"scripts": {
|
|
59
|
+
"build:clean": "rm -rf dist",
|
|
60
|
+
"build": "tsc --build",
|
|
61
|
+
"watch": "tsc --watch",
|
|
62
|
+
"typecheck": "tsc --noEmit",
|
|
63
|
+
"lint": "eslint . --ext .js,.jsx,.ts,.tsx",
|
|
64
|
+
"test": "vitest run --dir tests --coverage.enabled=true --coverage.reporter=json --coverage.reporter=json-summary --coverage.reportOnFailure=true"
|
|
65
|
+
},
|
|
66
|
+
"dependencies": {
|
|
67
|
+
"@reown/appkit-common": "workspace:*",
|
|
68
|
+
"@reown/appkit-controllers": "workspace:*",
|
|
69
|
+
"@reown/appkit-polyfills": "workspace:*",
|
|
70
|
+
"@reown/appkit-wallet": "workspace:*",
|
|
71
|
+
"@wallet-standard/wallet": "1.1.0",
|
|
72
|
+
"@walletconnect/logger": "3.0.1",
|
|
73
|
+
"@walletconnect/universal-provider": "2.23.1",
|
|
74
|
+
"valtio": "2.1.7",
|
|
75
|
+
"viem": ">=2.37.9"
|
|
76
|
+
},
|
|
77
|
+
"optionalDependencies": {
|
|
78
|
+
"@base-org/account": "2.4.0",
|
|
79
|
+
"@safe-global/safe-apps-provider": "0.18.6",
|
|
80
|
+
"@safe-global/safe-apps-sdk": "9.1.0"
|
|
81
|
+
},
|
|
82
|
+
"devDependencies": {
|
|
83
|
+
"@walletconnect/types": "2.23.1",
|
|
84
|
+
"bs58": "6.0.0",
|
|
85
|
+
"@solana/web3.js": "1.98.4",
|
|
86
|
+
"@wallet-standard/features": "1.1.0",
|
|
87
|
+
"@wallet-standard/base": "1.1.0",
|
|
88
|
+
"@solana/wallet-standard-features": "1.3.0",
|
|
89
|
+
"@solana/wallet-adapter-base": "0.9.26",
|
|
90
|
+
"@vitest/coverage-v8": "2.1.9",
|
|
91
|
+
"vitest": "3.1.3"
|
|
92
|
+
},
|
|
93
|
+
"peerDependencies": {
|
|
94
|
+
"valtio": "2.1.7"
|
|
95
|
+
},
|
|
96
|
+
"author": "Reown (https://discord.gg/reown)",
|
|
97
|
+
"license": "SEE LICENSE IN LICENSE.md",
|
|
98
|
+
"homepage": "https://github.com/reown-com/appkit",
|
|
99
|
+
"repository": {
|
|
100
|
+
"type": "git",
|
|
101
|
+
"url": "git+https://github.com/reown-com/appkit.git"
|
|
102
|
+
},
|
|
103
|
+
"bugs": {
|
|
104
|
+
"url": "https://github.com/reown-com/appkit/issues"
|
|
105
|
+
},
|
|
106
|
+
"keywords": [
|
|
107
|
+
"appkit",
|
|
108
|
+
"wallet",
|
|
109
|
+
"onboarding",
|
|
110
|
+
"reown",
|
|
111
|
+
"dapps",
|
|
112
|
+
"web3",
|
|
113
|
+
"wagmi",
|
|
114
|
+
"ethereum",
|
|
115
|
+
"solana",
|
|
116
|
+
"bitcoin"
|
|
117
|
+
],
|
|
118
|
+
"publishConfig": {
|
|
119
|
+
"provenance": true
|
|
120
|
+
}
|
|
121
|
+
}
|
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
import { fallback, http } from 'viem';
|
|
2
|
+
import { ConstantsUtil } from '@reown/appkit-common';
|
|
3
|
+
import { ChainController, StorageUtil } from '@reown/appkit-controllers';
|
|
4
|
+
import { PresetsUtil } from './PresetsUtil.js';
|
|
5
|
+
const RPC_URL_HOST = 'rpc.walletconnect.org';
|
|
6
|
+
export function getBlockchainApiRpcUrl(caipNetworkId, projectId) {
|
|
7
|
+
const url = new URL('https://rpc.walletconnect.org/v1/');
|
|
8
|
+
url.searchParams.set('chainId', caipNetworkId);
|
|
9
|
+
url.searchParams.set('projectId', projectId);
|
|
10
|
+
return url.toString();
|
|
11
|
+
}
|
|
12
|
+
const WC_HTTP_RPC_SUPPORTED_CHAINS = [
|
|
13
|
+
'near:mainnet',
|
|
14
|
+
'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',
|
|
15
|
+
'eip155:1101',
|
|
16
|
+
'eip155:56',
|
|
17
|
+
'eip155:42161',
|
|
18
|
+
'eip155:7777777',
|
|
19
|
+
'eip155:59144',
|
|
20
|
+
'eip155:324',
|
|
21
|
+
'solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1',
|
|
22
|
+
'eip155:5000',
|
|
23
|
+
'solana:4sgjmw1sunhzsxgspuhpqldx6wiyjntz',
|
|
24
|
+
'eip155:80084',
|
|
25
|
+
'eip155:5003',
|
|
26
|
+
'eip155:100',
|
|
27
|
+
'eip155:8453',
|
|
28
|
+
'eip155:42220',
|
|
29
|
+
'eip155:1313161555',
|
|
30
|
+
'eip155:17000',
|
|
31
|
+
'eip155:1',
|
|
32
|
+
'eip155:300',
|
|
33
|
+
'eip155:1313161554',
|
|
34
|
+
'eip155:1329',
|
|
35
|
+
'eip155:84532',
|
|
36
|
+
'eip155:421614',
|
|
37
|
+
'eip155:11155111',
|
|
38
|
+
'eip155:8217',
|
|
39
|
+
'eip155:43114',
|
|
40
|
+
'solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z',
|
|
41
|
+
'eip155:999999999',
|
|
42
|
+
'eip155:11155420',
|
|
43
|
+
'eip155:80002',
|
|
44
|
+
'eip155:97',
|
|
45
|
+
'eip155:43113',
|
|
46
|
+
'eip155:137',
|
|
47
|
+
'eip155:10',
|
|
48
|
+
'eip155:1301',
|
|
49
|
+
'eip155:80094',
|
|
50
|
+
'eip155:80069',
|
|
51
|
+
'eip155:560048',
|
|
52
|
+
'eip155:31',
|
|
53
|
+
'eip155:2818',
|
|
54
|
+
'eip155:57054',
|
|
55
|
+
'eip155:911867',
|
|
56
|
+
'eip155:534351',
|
|
57
|
+
'eip155:1112',
|
|
58
|
+
'eip155:534352',
|
|
59
|
+
'eip155:1111',
|
|
60
|
+
'eip155:146',
|
|
61
|
+
'eip155:130',
|
|
62
|
+
'eip155:1284',
|
|
63
|
+
'eip155:30',
|
|
64
|
+
'eip155:2810',
|
|
65
|
+
'bip122:000000000019d6689c085ae165831e93',
|
|
66
|
+
'bip122:000000000933ea01ad0ee984209779ba'
|
|
67
|
+
];
|
|
68
|
+
export const CaipNetworksUtil = {
|
|
69
|
+
/**
|
|
70
|
+
* Extends the RPC URL with the project ID if the RPC URL is a Reown URL
|
|
71
|
+
* @param rpcUrl - The RPC URL to extend
|
|
72
|
+
* @param projectId - The project ID to extend the RPC URL with
|
|
73
|
+
* @returns The extended RPC URL
|
|
74
|
+
*/
|
|
75
|
+
extendRpcUrlWithProjectId(rpcUrl, projectId) {
|
|
76
|
+
let isReownUrl = false;
|
|
77
|
+
try {
|
|
78
|
+
const url = new URL(rpcUrl);
|
|
79
|
+
isReownUrl = url.host === RPC_URL_HOST;
|
|
80
|
+
}
|
|
81
|
+
catch (e) {
|
|
82
|
+
isReownUrl = false;
|
|
83
|
+
}
|
|
84
|
+
if (isReownUrl) {
|
|
85
|
+
const url = new URL(rpcUrl);
|
|
86
|
+
if (!url.searchParams.has('projectId')) {
|
|
87
|
+
url.searchParams.set('projectId', projectId);
|
|
88
|
+
}
|
|
89
|
+
return url.toString();
|
|
90
|
+
}
|
|
91
|
+
return rpcUrl;
|
|
92
|
+
},
|
|
93
|
+
isCaipNetwork(network) {
|
|
94
|
+
return 'chainNamespace' in network && 'caipNetworkId' in network;
|
|
95
|
+
},
|
|
96
|
+
getChainNamespace(network) {
|
|
97
|
+
if (this.isCaipNetwork(network)) {
|
|
98
|
+
return network.chainNamespace;
|
|
99
|
+
}
|
|
100
|
+
return ConstantsUtil.CHAIN.EVM;
|
|
101
|
+
},
|
|
102
|
+
getCaipNetworkId(network) {
|
|
103
|
+
if (this.isCaipNetwork(network)) {
|
|
104
|
+
return network.caipNetworkId;
|
|
105
|
+
}
|
|
106
|
+
return `${ConstantsUtil.CHAIN.EVM}:${network.id}`;
|
|
107
|
+
},
|
|
108
|
+
// eslint-disable-next-line max-params
|
|
109
|
+
getDefaultRpcUrl(caipNetwork, caipNetworkId, projectId) {
|
|
110
|
+
const defaultRpcUrl = caipNetwork.rpcUrls?.default?.http?.[0];
|
|
111
|
+
if (WC_HTTP_RPC_SUPPORTED_CHAINS.includes(caipNetworkId)) {
|
|
112
|
+
return getBlockchainApiRpcUrl(caipNetworkId, projectId);
|
|
113
|
+
}
|
|
114
|
+
return defaultRpcUrl || '';
|
|
115
|
+
},
|
|
116
|
+
/**
|
|
117
|
+
* Extends the CaipNetwork object with the image ID and image URL if the image ID is not provided
|
|
118
|
+
* @param params - The parameters object
|
|
119
|
+
* @param params.caipNetwork - The CaipNetwork object to extend
|
|
120
|
+
* @param params.networkImageIds - The network image IDs
|
|
121
|
+
* @param params.customNetworkImageUrls - The custom network image URLs
|
|
122
|
+
* @param params.projectId - The project ID
|
|
123
|
+
* @param params.customRpc - Boolean to indicate if the custom RPC URL should be used
|
|
124
|
+
* @param params.customRpcUrls - The map of chain and custom RPC URLs to be used by the AppKit
|
|
125
|
+
* @returns The extended array of CaipNetwork objects
|
|
126
|
+
*/
|
|
127
|
+
extendCaipNetwork(caipNetwork, { customNetworkImageUrls, projectId, customRpcUrls }) {
|
|
128
|
+
const chainNamespace = this.getChainNamespace(caipNetwork);
|
|
129
|
+
const caipNetworkId = this.getCaipNetworkId(caipNetwork);
|
|
130
|
+
const networkDefaultRpcUrl = caipNetwork.rpcUrls?.default?.http?.[0];
|
|
131
|
+
const reownRpcUrl = this.getDefaultRpcUrl(caipNetwork, caipNetworkId, projectId);
|
|
132
|
+
const chainDefaultRpcUrl = caipNetwork?.rpcUrls?.['chainDefault']?.http?.[0] || networkDefaultRpcUrl;
|
|
133
|
+
const customRpcUrlsOfNetwork = customRpcUrls?.[caipNetworkId]?.map(i => i.url) || [];
|
|
134
|
+
const rpcUrls = [...customRpcUrlsOfNetwork, ...(reownRpcUrl ? [reownRpcUrl] : [])];
|
|
135
|
+
const rpcUrlsWithoutReown = [...customRpcUrlsOfNetwork];
|
|
136
|
+
if (chainDefaultRpcUrl && !rpcUrlsWithoutReown.includes(chainDefaultRpcUrl)) {
|
|
137
|
+
rpcUrlsWithoutReown.push(chainDefaultRpcUrl);
|
|
138
|
+
}
|
|
139
|
+
return {
|
|
140
|
+
...caipNetwork,
|
|
141
|
+
chainNamespace,
|
|
142
|
+
caipNetworkId,
|
|
143
|
+
assets: {
|
|
144
|
+
imageId: PresetsUtil.NetworkImageIds[caipNetwork.id],
|
|
145
|
+
imageUrl: customNetworkImageUrls?.[caipNetwork.id]
|
|
146
|
+
},
|
|
147
|
+
rpcUrls: {
|
|
148
|
+
...caipNetwork.rpcUrls,
|
|
149
|
+
default: {
|
|
150
|
+
http: rpcUrls
|
|
151
|
+
},
|
|
152
|
+
// Save the networks original RPC URL default
|
|
153
|
+
chainDefault: {
|
|
154
|
+
http: rpcUrlsWithoutReown
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
};
|
|
158
|
+
},
|
|
159
|
+
/**
|
|
160
|
+
* Extends the array of CaipNetwork objects with the image ID and image URL if the image ID is not provided
|
|
161
|
+
* @param caipNetworks - The array of CaipNetwork objects to extend
|
|
162
|
+
* @param params - The parameters object
|
|
163
|
+
* @param params.networkImageIds - The network image IDs
|
|
164
|
+
* @param params.customNetworkImageUrls - The custom network image URLs
|
|
165
|
+
* @param params.customRpcUrls - The map of chain and custom RPC URLs to be used by the AppKit
|
|
166
|
+
* @param params.projectId - The project ID
|
|
167
|
+
* @returns The extended array of CaipNetwork objects
|
|
168
|
+
*/
|
|
169
|
+
extendCaipNetworks(caipNetworks, { customNetworkImageUrls, projectId, customRpcUrls }) {
|
|
170
|
+
return caipNetworks.map(caipNetwork => CaipNetworksUtil.extendCaipNetwork(caipNetwork, {
|
|
171
|
+
customNetworkImageUrls,
|
|
172
|
+
customRpcUrls,
|
|
173
|
+
projectId
|
|
174
|
+
}));
|
|
175
|
+
},
|
|
176
|
+
getViemTransport(caipNetwork, projectId, customRpcUrls) {
|
|
177
|
+
const transports = [];
|
|
178
|
+
// Add custom RPC URLs
|
|
179
|
+
customRpcUrls?.forEach(rpcUrl => {
|
|
180
|
+
transports.push(http(rpcUrl.url, rpcUrl.config));
|
|
181
|
+
});
|
|
182
|
+
// Add Reown RPC URL
|
|
183
|
+
if (WC_HTTP_RPC_SUPPORTED_CHAINS.includes(caipNetwork.caipNetworkId)) {
|
|
184
|
+
transports.push(http(getBlockchainApiRpcUrl(caipNetwork.caipNetworkId, projectId), {
|
|
185
|
+
/*
|
|
186
|
+
* The Blockchain API uses "Content-Type: text/plain" to avoid OPTIONS preflight requests
|
|
187
|
+
* It will only work for viem >= 2.17.7
|
|
188
|
+
*/
|
|
189
|
+
fetchOptions: {
|
|
190
|
+
headers: {
|
|
191
|
+
'Content-Type': 'text/plain'
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
}));
|
|
195
|
+
}
|
|
196
|
+
// Add original fallback transports
|
|
197
|
+
caipNetwork?.rpcUrls?.default?.http?.forEach(rpcUrl => {
|
|
198
|
+
transports.push(http(rpcUrl));
|
|
199
|
+
});
|
|
200
|
+
return fallback(transports);
|
|
201
|
+
},
|
|
202
|
+
extendWagmiTransports(caipNetwork, projectId, transport) {
|
|
203
|
+
if (WC_HTTP_RPC_SUPPORTED_CHAINS.includes(caipNetwork.caipNetworkId)) {
|
|
204
|
+
const reownRpcUrl = this.getDefaultRpcUrl(caipNetwork, caipNetwork.caipNetworkId, projectId);
|
|
205
|
+
return fallback([transport, http(reownRpcUrl)]);
|
|
206
|
+
}
|
|
207
|
+
return transport;
|
|
208
|
+
},
|
|
209
|
+
/**
|
|
210
|
+
* Generates the unsupported network object with the given CaipNetwork ID
|
|
211
|
+
* @param caipNetworkId - The CAIP network ID
|
|
212
|
+
* @returns The unsupported CAIP network object
|
|
213
|
+
*/
|
|
214
|
+
getUnsupportedNetwork(caipNetworkId) {
|
|
215
|
+
return {
|
|
216
|
+
id: caipNetworkId.split(':')[1],
|
|
217
|
+
caipNetworkId,
|
|
218
|
+
name: ConstantsUtil.UNSUPPORTED_NETWORK_NAME,
|
|
219
|
+
chainNamespace: caipNetworkId.split(':')[0],
|
|
220
|
+
nativeCurrency: {
|
|
221
|
+
name: '',
|
|
222
|
+
decimals: 0,
|
|
223
|
+
symbol: ''
|
|
224
|
+
},
|
|
225
|
+
rpcUrls: {
|
|
226
|
+
default: {
|
|
227
|
+
http: []
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
};
|
|
231
|
+
},
|
|
232
|
+
/**
|
|
233
|
+
* Gets the CaipNetwork object from the storage if `@appkit/active_caip_network_id` is being set
|
|
234
|
+
* @returns CaipNetwork or undefined
|
|
235
|
+
*/
|
|
236
|
+
getCaipNetworkFromStorage(defaultCaipNetwork) {
|
|
237
|
+
const caipNetworkIdFromStorage = StorageUtil.getActiveCaipNetworkId();
|
|
238
|
+
const caipNetworks = ChainController.getAllRequestedCaipNetworks();
|
|
239
|
+
const availableNamespaces = Array.from(ChainController.state.chains?.keys() || []);
|
|
240
|
+
const namespace = caipNetworkIdFromStorage?.split(':')[0];
|
|
241
|
+
const isNamespaceAvailable = namespace ? availableNamespaces.includes(namespace) : false;
|
|
242
|
+
const caipNetwork = caipNetworks?.find(cn => cn.caipNetworkId === caipNetworkIdFromStorage);
|
|
243
|
+
const isUnsupportedNetwork = isNamespaceAvailable && !caipNetwork && caipNetworkIdFromStorage;
|
|
244
|
+
if (isUnsupportedNetwork) {
|
|
245
|
+
return this.getUnsupportedNetwork(caipNetworkIdFromStorage);
|
|
246
|
+
}
|
|
247
|
+
if (caipNetwork) {
|
|
248
|
+
return caipNetwork;
|
|
249
|
+
}
|
|
250
|
+
if (defaultCaipNetwork) {
|
|
251
|
+
return defaultCaipNetwork;
|
|
252
|
+
}
|
|
253
|
+
return caipNetworks?.[0];
|
|
254
|
+
}
|
|
255
|
+
};
|
|
256
|
+
//# sourceMappingURL=CaipNetworkUtil.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CaipNetworkUtil.js","sourceRoot":"","sources":["../../../src/CaipNetworkUtil.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { ConstantsUtil as CommonConstantsUtil } from '@reown/appkit-common';
|
|
2
|
+
export const ConstantsUtil = {
|
|
3
|
+
/* Connector names */
|
|
4
|
+
METMASK_CONNECTOR_NAME: 'MetaMask',
|
|
5
|
+
TRUST_CONNECTOR_NAME: 'Trust Wallet',
|
|
6
|
+
SOLFLARE_CONNECTOR_NAME: 'Solflare',
|
|
7
|
+
PHANTOM_CONNECTOR_NAME: 'Phantom',
|
|
8
|
+
COIN98_CONNECTOR_NAME: 'Coin98',
|
|
9
|
+
MAGIC_EDEN_CONNECTOR_NAME: 'Magic Eden',
|
|
10
|
+
BACKPACK_CONNECTOR_NAME: 'Backpack',
|
|
11
|
+
BITGET_CONNECTOR_NAME: 'Bitget Wallet',
|
|
12
|
+
FRONTIER_CONNECTOR_NAME: 'Frontier',
|
|
13
|
+
XVERSE_CONNECTOR_NAME: 'Xverse Wallet',
|
|
14
|
+
LEATHER_CONNECTOR_NAME: 'Leather',
|
|
15
|
+
OKX_CONNECTOR_NAME: 'OKX Wallet',
|
|
16
|
+
BINANCE_CONNECTOR_NAME: 'Binance Wallet',
|
|
17
|
+
EIP155: CommonConstantsUtil.CHAIN.EVM,
|
|
18
|
+
ADD_CHAIN_METHOD: 'wallet_addEthereumChain',
|
|
19
|
+
EIP6963_ANNOUNCE_EVENT: 'eip6963:announceProvider',
|
|
20
|
+
EIP6963_REQUEST_EVENT: 'eip6963:requestProvider',
|
|
21
|
+
CONNECTOR_RDNS_MAP: {
|
|
22
|
+
coinbaseWallet: 'com.coinbase.wallet',
|
|
23
|
+
coinbaseWalletSDK: 'com.coinbase.wallet'
|
|
24
|
+
},
|
|
25
|
+
CONNECTOR_TYPE_EXTERNAL: 'EXTERNAL',
|
|
26
|
+
CONNECTOR_TYPE_WALLET_CONNECT: 'WALLET_CONNECT',
|
|
27
|
+
CONNECTOR_TYPE_INJECTED: 'INJECTED',
|
|
28
|
+
CONNECTOR_TYPE_ANNOUNCED: 'ANNOUNCED',
|
|
29
|
+
CONNECTOR_TYPE_AUTH: 'AUTH',
|
|
30
|
+
CONNECTOR_TYPE_MULTI_CHAIN: 'MULTI_CHAIN',
|
|
31
|
+
CONNECTOR_TYPE_W3M_AUTH: 'AUTH',
|
|
32
|
+
getSDKVersionWarningMessage(currentVersion, latestVersion) {
|
|
33
|
+
return `
|
|
34
|
+
@@@@@@@ @@@@@@@@@@@@@@@@@@
|
|
35
|
+
@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@
|
|
36
|
+
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
37
|
+
@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
38
|
+
@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@ @@@@@@@@@@@
|
|
39
|
+
@@@@@@@@@@@@@@@ @@@@@@@@@@@@@ @@@@@@@@@@@@
|
|
40
|
+
@@@@@@@@@@@@@@@ @@@@@@@@@@@@@ @@@@@@@@@@@@@
|
|
41
|
+
@@@@@@@@@@@@@@@ @@@@@@@@@@@@ @@@@@@@@@@@@@
|
|
42
|
+
@@@@@@ @@@@@@ @@@@@@@@@@@ @@@@@@@@@@@@@@
|
|
43
|
+
@@@@@@ @@@@@@ @@@@@@@@@@@ @@@@@@@@@@@@@@@
|
|
44
|
+
@@@@@@@@@@@@@@@ @@@@@@@@@@ @@@@@@@@@@@@@@@
|
|
45
|
+
@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
46
|
+
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
47
|
+
@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@
|
|
48
|
+
@@@@@ @@@@@@@@@@@@@@@@@@
|
|
49
|
+
|
|
50
|
+
AppKit SDK version ${currentVersion} is outdated. Latest version is ${latestVersion}. Please update to the latest version for bug fixes and new features.
|
|
51
|
+
|
|
52
|
+
Changelog: https://github.com/reown-com/appkit/releases
|
|
53
|
+
NPM Registry: https://www.npmjs.com/package/@reown/appkit`;
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=ConstantsUtil.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConstantsUtil.js","sourceRoot":"","sources":["../../../src/ConstantsUtil.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,IAAI,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAE3E,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,qBAAqB;IACrB,sBAAsB,EAAE,UAAU;IAClC,oBAAoB,EAAE,cAAc;IACpC,uBAAuB,EAAE,UAAU;IACnC,sBAAsB,EAAE,SAAS;IACjC,qBAAqB,EAAE,QAAQ;IAC/B,yBAAyB,EAAE,YAAY;IACvC,uBAAuB,EAAE,UAAU;IACnC,qBAAqB,EAAE,eAAe;IACtC,uBAAuB,EAAE,UAAU;IACnC,qBAAqB,EAAE,eAAe;IACtC,sBAAsB,EAAE,SAAS;IACjC,kBAAkB,EAAE,YAAY;IAChC,sBAAsB,EAAE,gBAAgB;IAExC,MAAM,EAAE,mBAAmB,CAAC,KAAK,CAAC,GAAG;IACrC,gBAAgB,EAAE,yBAAyB;IAC3C,sBAAsB,EAAE,0BAA0B;IAClD,qBAAqB,EAAE,yBAAyB;IAChD,kBAAkB,EAAE;QAClB,cAAc,EAAE,qBAAqB;QACrC,iBAAiB,EAAE,qBAAqB;KACf;IAC3B,uBAAuB,EAAE,UAAU;IACnC,6BAA6B,EAAE,gBAAgB;IAC/C,uBAAuB,EAAE,UAAU;IACnC,wBAAwB,EAAE,WAAW;IACrC,mBAAmB,EAAE,MAAM;IAC3B,0BAA0B,EAAE,aAAa;IACzC,uBAAuB,EAAE,MAAM;IAC/B,2BAA2B,CAAC,cAAsB,EAAE,aAAqB;QACvE,OAAO;;;;;;;;;;;;;;;;;qBAiBU,cAAc,mCAAmC,aAAa;;;0DAGzB,CAAA;IACxD,CAAC;CACF,CAAA"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { isSafe } from '@reown/appkit-common';
|
|
2
|
+
import { OptionsController } from '@reown/appkit-controllers';
|
|
3
|
+
const abortController = new AbortController();
|
|
4
|
+
export const ErrorUtil = {
|
|
5
|
+
EmbeddedWalletAbortController: abortController,
|
|
6
|
+
/**
|
|
7
|
+
* Universal Provider errors. Make sure the `message` is matching with the errors thrown by the Universal Provider.
|
|
8
|
+
* We use the `alertErrorKey` to map the error to the correct AppKit alert error.
|
|
9
|
+
*/
|
|
10
|
+
UniversalProviderErrors: {
|
|
11
|
+
UNAUTHORIZED_DOMAIN_NOT_ALLOWED: {
|
|
12
|
+
message: 'Unauthorized: origin not allowed',
|
|
13
|
+
alertErrorKey: 'ORIGIN_NOT_ALLOWED'
|
|
14
|
+
},
|
|
15
|
+
JWT_VALIDATION_ERROR: {
|
|
16
|
+
message: 'JWT validation error: JWT Token is not yet valid',
|
|
17
|
+
alertErrorKey: 'JWT_TOKEN_NOT_VALID'
|
|
18
|
+
},
|
|
19
|
+
INVALID_KEY: {
|
|
20
|
+
message: 'Unauthorized: invalid key',
|
|
21
|
+
alertErrorKey: 'INVALID_PROJECT_ID'
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
ALERT_ERRORS: {
|
|
25
|
+
SWITCH_NETWORK_NOT_FOUND: {
|
|
26
|
+
code: 'APKT001',
|
|
27
|
+
displayMessage: 'Network Not Found',
|
|
28
|
+
debugMessage: 'The specified network is not recognized. Please ensure it is included in the `networks` array of your `createAppKit` configuration.'
|
|
29
|
+
},
|
|
30
|
+
ORIGIN_NOT_ALLOWED: {
|
|
31
|
+
code: 'APKT002',
|
|
32
|
+
displayMessage: 'Invalid App Configuration',
|
|
33
|
+
debugMessage: () => `The origin ${isSafe() ? window.origin : 'unknown'} is not in your allow list. Please update your allowed domains at https://dashboard.reown.com. [PID: ${OptionsController.state.projectId}]`
|
|
34
|
+
},
|
|
35
|
+
IFRAME_LOAD_FAILED: {
|
|
36
|
+
code: 'APKT003',
|
|
37
|
+
displayMessage: 'Network Error: Wallet Load Failed',
|
|
38
|
+
debugMessage: () => 'Failed to load the embedded wallet. This may be due to network issues or server downtime. Please check your network connection and try again shortly. Contact support if the issue persists.'
|
|
39
|
+
},
|
|
40
|
+
IFRAME_REQUEST_TIMEOUT: {
|
|
41
|
+
code: 'APKT004',
|
|
42
|
+
displayMessage: 'Wallet Request Timeout',
|
|
43
|
+
debugMessage: () => 'The request to the embedded wallet timed out. Please check your network connection and try again shortly. Contact support if the issue persists.'
|
|
44
|
+
},
|
|
45
|
+
UNVERIFIED_DOMAIN: {
|
|
46
|
+
code: 'APKT005',
|
|
47
|
+
displayMessage: 'Unverified Domain',
|
|
48
|
+
debugMessage: () => 'Embedded wallet load failed. Ensure your domain is verified in https://dashboard.reown.com.'
|
|
49
|
+
},
|
|
50
|
+
JWT_TOKEN_NOT_VALID: {
|
|
51
|
+
code: 'APKT006',
|
|
52
|
+
displayMessage: 'Session Expired',
|
|
53
|
+
debugMessage: 'Your session is invalid or expired. Please check your system’s date and time settings, then reconnect.'
|
|
54
|
+
},
|
|
55
|
+
INVALID_PROJECT_ID: {
|
|
56
|
+
code: 'APKT007',
|
|
57
|
+
displayMessage: 'Invalid Project ID',
|
|
58
|
+
debugMessage: 'The specified project ID is invalid. Please visit https://dashboard.reown.com to obtain a valid project ID.'
|
|
59
|
+
},
|
|
60
|
+
PROJECT_ID_NOT_CONFIGURED: {
|
|
61
|
+
code: 'APKT008',
|
|
62
|
+
displayMessage: 'Project ID Missing',
|
|
63
|
+
debugMessage: 'No project ID is configured. You can create and configure a project ID at https://dashboard.reown.com.'
|
|
64
|
+
},
|
|
65
|
+
SERVER_ERROR_APP_CONFIGURATION: {
|
|
66
|
+
code: 'APKT009',
|
|
67
|
+
displayMessage: 'Server Error',
|
|
68
|
+
debugMessage: (errorMessage) => `Unable to fetch App Configuration. ${errorMessage}. Please check your network connection and try again shortly. Contact support if the issue persists.`
|
|
69
|
+
},
|
|
70
|
+
RATE_LIMITED_APP_CONFIGURATION: {
|
|
71
|
+
code: 'APKT010',
|
|
72
|
+
displayMessage: 'Rate Limited',
|
|
73
|
+
debugMessage: 'You have been rate limited while retrieving App Configuration. Please wait a few minutes and try again. Contact support if the issue persists.'
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
ALERT_WARNINGS: {
|
|
77
|
+
LOCAL_CONFIGURATION_IGNORED: {
|
|
78
|
+
debugMessage: (warningMessage) => `[Reown Config Notice] ${warningMessage}`
|
|
79
|
+
},
|
|
80
|
+
INACTIVE_NAMESPACE_NOT_CONNECTED: {
|
|
81
|
+
code: 'APKTW001',
|
|
82
|
+
displayMessage: 'Inactive Namespace Not Connected',
|
|
83
|
+
debugMessage: (namespace, errorMessage) => `An error occurred while connecting an inactive namespace ${namespace}: "${errorMessage}"`
|
|
84
|
+
},
|
|
85
|
+
INVALID_EMAIL: {
|
|
86
|
+
code: 'APKTW002',
|
|
87
|
+
displayMessage: 'Invalid Email Address',
|
|
88
|
+
debugMessage: 'Please enter a valid email address'
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
//# sourceMappingURL=ErrorUtil.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorUtil.js","sourceRoot":"","sources":["../../../src/ErrorUtil.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAE7D,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAA;AAE7C,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,6BAA6B,EAAE,eAAe;IAC9C;;;OAGG;IACH,uBAAuB,EAAE;QACvB,+BAA+B,EAAE;YAC/B,OAAO,EAAE,kCAAkC;YAC3C,aAAa,EAAE,oBAAoB;SACpC;QACD,oBAAoB,EAAE;YACpB,OAAO,EAAE,kDAAkD;YAC3D,aAAa,EAAE,qBAAqB;SACrC;QACD,WAAW,EAAE;YACX,OAAO,EAAE,2BAA2B;YACpC,aAAa,EAAE,oBAAoB;SACpC;KACF;IACD,YAAY,EAAE;QACZ,wBAAwB,EAAE;YACxB,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,mBAAmB;YACnC,YAAY,EACV,qIAAqI;SACxI;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,2BAA2B;YAC3C,YAAY,EAAE,GAAG,EAAE,CACjB,cAAc,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,wGAAwG,iBAAiB,CAAC,KAAK,CAAC,SAAS,GAAG;SACjM;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,mCAAmC;YACnD,YAAY,EAAE,GAAG,EAAE,CACjB,8LAA8L;SACjM;QACD,sBAAsB,EAAE;YACtB,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,wBAAwB;YACxC,YAAY,EAAE,GAAG,EAAE,CACjB,kJAAkJ;SACrJ;QACD,iBAAiB,EAAE;YACjB,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,mBAAmB;YACnC,YAAY,EAAE,GAAG,EAAE,CACjB,6FAA6F;SAChG;QACD,mBAAmB,EAAE;YACnB,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,iBAAiB;YACjC,YAAY,EACV,wGAAwG;SAC3G;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,oBAAoB;YACpC,YAAY,EACV,6GAA6G;SAChH;QACD,yBAAyB,EAAE;YACzB,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,oBAAoB;YACpC,YAAY,EACV,wGAAwG;SAC3G;QACD,8BAA8B,EAAE;YAC9B,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,cAAc;YAC9B,YAAY,EAAE,CAAC,YAAqB,EAAE,EAAE,CACtC,sCAAsC,YAAY,sGAAsG;SAC3J;QACD,8BAA8B,EAAE;YAC9B,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,cAAc;YAC9B,YAAY,EACV,gJAAgJ;SACnJ;KACF;IACD,cAAc,EAAE;QACd,2BAA2B,EAAE;YAC3B,YAAY,EAAE,CAAC,cAAsB,EAAE,EAAE,CAAC,yBAAyB,cAAc,EAAE;SACpF;QACD,gCAAgC,EAAE;YAChC,IAAI,EAAE,UAAU;YAChB,cAAc,EAAE,kCAAkC;YAClD,YAAY,EAAE,CAAC,SAAiB,EAAE,YAAqB,EAAE,EAAE,CACzD,4DAA4D,SAAS,MAAM,YAAY,GAAG;SAC7F;QACD,aAAa,EAAE;YACb,IAAI,EAAE,UAAU;YAChB,cAAc,EAAE,uBAAuB;YACvC,YAAY,EAAE,oCAAoC;SACnD;KACF;CACF,CAAA"}
|