@dynamic-labs/multi-wallet 0.16.0-RC.4 → 0.16.0-RC.6
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/CHANGELOG.md +57 -0
- package/package.json +6 -3
- package/src/index.d.ts +1 -3
- package/src/index.js +3 -6
- package/src/index.js.map +1 -1
- package/src/multi-wallet.js +42 -48
- package/src/multi-wallet.js.map +1 -1
- package/src/types.d.ts +21 -42
- package/src/utils/assignConfirmationScreenToProvider/assignConfirmationScreenToProvider.js +43 -22
- package/src/utils/assignConfirmationScreenToProvider/assignConfirmationScreenToProvider.js.map +1 -1
- package/src/utils/getChainInfo/getChainInfo.d.ts +2 -0
- package/src/utils/getChainInfo/getChainInfo.js +52 -0
- package/src/utils/getChainInfo/getChainInfo.js.map +1 -0
- package/src/utils/getChainInfo/index.d.ts +1 -0
- package/src/utils/getChainInfo/index.js +6 -0
- package/src/utils/getChainInfo/index.js.map +1 -0
- package/src/utils/isFunction/index.d.ts +1 -0
- package/src/utils/isFunction/index.js +6 -0
- package/src/utils/isFunction/index.js.map +1 -0
- package/src/utils/isFunction/isFunction.d.ts +1 -0
- package/src/utils/isFunction/isFunction.js +7 -0
- package/src/utils/isFunction/isFunction.js.map +1 -0
- package/src/utils/message.js +3 -9
- package/src/utils/message.js.map +1 -1
- package/src/utils/walletConnect.d.ts +1 -4
- package/src/utils/walletConnect.js +15 -15
- package/src/utils/walletConnect.js.map +1 -1
- package/src/wallets/algorand/myalgo.d.ts +1 -0
- package/src/wallets/algorand/myalgo.js +3 -0
- package/src/wallets/algorand/myalgo.js.map +1 -1
- package/src/wallets/clients/walletConnect/walletConnect.d.ts +4 -4
- package/src/wallets/clients/walletConnect/walletConnect.js +5 -4
- package/src/wallets/clients/walletConnect/walletConnect.js.map +1 -1
- package/src/wallets/ethereum/MagicLink.d.ts +9 -3
- package/src/wallets/ethereum/MagicLink.js +8 -2
- package/src/wallets/ethereum/MagicLink.js.map +1 -1
- package/src/wallets/ethereum/ethProvider.d.ts +1 -0
- package/src/wallets/ethereum/ethProvider.js +3 -0
- package/src/wallets/ethereum/ethProvider.js.map +1 -1
- package/src/wallets/ethereum/ethProviderHelper.d.ts +1 -0
- package/src/wallets/ethereum/ethProviderHelper.js +4 -1
- package/src/wallets/ethereum/ethProviderHelper.js.map +1 -1
- package/src/wallets/ethereum/injected/Dawn.d.ts +6 -0
- package/src/wallets/ethereum/injected/Dawn.js +13 -0
- package/src/wallets/ethereum/injected/Dawn.js.map +1 -0
- package/src/wallets/flow/flow-provider.d.ts +1 -0
- package/src/wallets/flow/flow-provider.js +3 -0
- package/src/wallets/flow/flow-provider.js.map +1 -1
- package/src/wallets/solana/solProvider.d.ts +1 -0
- package/src/wallets/solana/solProvider.js +3 -0
- package/src/wallets/solana/solProvider.js.map +1 -1
- package/src/wallets/starknet/braavos.d.ts +2 -1
- package/src/wallets/starknet/braavos.js +21 -0
- package/src/wallets/starknet/braavos.js.map +1 -1
- package/src/wallets/starknet/starknetProvider.d.ts +1 -0
- package/src/wallets/starknet/starknetProvider.js +3 -0
- package/src/wallets/starknet/starknetProvider.js.map +1 -1
- package/src/wallets/walletConnect/walletConnect.d.ts +1 -0
- package/src/wallets/walletConnect/walletConnect.js +19 -9
- package/src/wallets/walletConnect/walletConnect.js.map +1 -1
- package/src/wallets/walletConnect/walletConnectV2.d.ts +1 -0
- package/src/wallets/walletConnect/walletConnectV2.js +17 -7
- package/src/wallets/walletConnect/walletConnectV2.js.map +1 -1
- package/src/wallets/window.d.ts +3 -1
- package/src/data/wallet-connect-wallets.json +0 -9926
- package/src/data/wallet-links.json +0 -3912
- package/src/fixtures.d.ts +0 -11
- package/src/fixtures.js +0 -67
- package/src/fixtures.js.map +0 -1
- package/src/utils/walletLinks.d.ts +0 -13
- package/src/utils/walletLinks.js +0 -12
- package/src/utils/walletLinks.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,61 @@
|
|
|
1
1
|
|
|
2
|
+
## [0.16.0-RC.6](https://github.com/dynamic-labs/DynamicAuth/compare/v0.16.0-RC.5...v0.16.0-RC.6) (2023-03-21)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
* add Braavos in-App browser navigation ([5c59e5a](https://github.com/dynamic-labs/DynamicAuth/commit/5c59e5a24f00a0ed74561a30a42ac3ec0b801998))
|
|
8
|
+
* add Dawn wallet ([6fc9135](https://github.com/dynamic-labs/DynamicAuth/commit/6fc91354083433cbebbdd8fd593db78eea7307d7))
|
|
9
|
+
* add getDeepLink to WalletConnector ([7af621c](https://github.com/dynamic-labs/DynamicAuth/commit/7af621ccc35875c296b7698c5c474f53ba702dca))
|
|
10
|
+
* add new link-wallet icon ([bf8b7ce](https://github.com/dynamic-labs/DynamicAuth/commit/bf8b7ce35612a73b3b4b0d4ee670c4294c9ae9a2))
|
|
11
|
+
* change buttonSize prop name to buttonPadding and add a padding-none variant ([91ec635](https://github.com/dynamic-labs/DynamicAuth/commit/91ec63520dbc1f87f351c1b1716d4a07068b34e0))
|
|
12
|
+
* create LogoutButton ([6c76820](https://github.com/dynamic-labs/DynamicAuth/commit/6c76820d4c23122e1227372c7badad63dca28ad1))
|
|
13
|
+
* **DYN-2039:** expose defaultNumberOfWalletsToShow ([bf069b9](https://github.com/dynamic-labs/DynamicAuth/commit/bf069b9810ef64f1872f8f68f27c3d950ce87efd))
|
|
14
|
+
* **DYN-2044:** update network switcher in kyc step ([687d38c](https://github.com/dynamic-labs/DynamicAuth/commit/687d38ce7f844e26ea288389124e65e392fd8429))
|
|
15
|
+
* fix tests ([8977740](https://github.com/dynamic-labs/DynamicAuth/commit/8977740f0f8e75e4dcba1fe0fad773ba4c5030ac))
|
|
16
|
+
* **magic:** add network/testMode/locale/redirectURI magic configuration ([34b7a97](https://github.com/dynamic-labs/DynamicAuth/commit/34b7a9721c0d67e13809e44ca2983bcbb2240b22))
|
|
17
|
+
* **magic:** sendTransaction/signMessage modal improvements ([6ee448e](https://github.com/dynamic-labs/DynamicAuth/commit/6ee448ecf726905934e1a5d8e7c23bc2e9b77ee9))
|
|
18
|
+
* make profile the 1st option in the widget switcher ([9693f47](https://github.com/dynamic-labs/DynamicAuth/commit/9693f47279d92ebacc13e5c8e08a24a002d0e8c6))
|
|
19
|
+
* move LinkWalletIcon to iconic ([76ba74d](https://github.com/dynamic-labs/DynamicAuth/commit/76ba74d8feda15b2ee4903e441d5394e4fe55ce3))
|
|
20
|
+
* move logout button from widget header to index view footer and profile view footer ([c919005](https://github.com/dynamic-labs/DynamicAuth/commit/c919005ccd43444f734bdafd6e9876e6bf59327d))
|
|
21
|
+
* move widget switcher to the top ([e038744](https://github.com/dynamic-labs/DynamicAuth/commit/e0387444813dadc8f4494edca152649f9e3a3a56))
|
|
22
|
+
* set max height to onboarding user data form ([a25129e](https://github.com/dynamic-labs/DynamicAuth/commit/a25129ed72460b392fa54cdc85e7d7276ffc826b))
|
|
23
|
+
* set max height to user profile view ([c207b21](https://github.com/dynamic-labs/DynamicAuth/commit/c207b2111bb39189487e08b95889ab9977d9db81))
|
|
24
|
+
* update buttons aligment in footer ([e6f3638](https://github.com/dynamic-labs/DynamicAuth/commit/e6f36384a902db03b5ae7aec0909192a0ddf5776))
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
### Bug Fixes
|
|
28
|
+
|
|
29
|
+
* add missing width to dynamic logo to work with webkit browsers ([c03cdfb](https://github.com/dynamic-labs/DynamicAuth/commit/c03cdfb6577f6a9b6c0432befb6bec57fa89afa0))
|
|
30
|
+
* **DYN-2045:** no access icon is too big ([8c34ab7](https://github.com/dynamic-labs/DynamicAuth/commit/8c34ab74643f0c8bf06bedfda7f8487f8d0591fc))
|
|
31
|
+
* **DynamicContext:** use the app name and logo from project settings ([0a08dc8](https://github.com/dynamic-labs/DynamicAuth/commit/0a08dc80ab699e3c4b499e1180dac2f22b7b1604))
|
|
32
|
+
* icon with spinner inner icon size ([b8f94e2](https://github.com/dynamic-labs/DynamicAuth/commit/b8f94e2d4239bd2992e7918dbd27848f3878825e))
|
|
33
|
+
* PendingConnectView icon size ([a801edf](https://github.com/dynamic-labs/DynamicAuth/commit/a801edff524e8993b8f6a6723ca4c0eca0349c01))
|
|
34
|
+
* remove IsBrowser from dynamic wagmi connector ([f89d5c0](https://github.com/dynamic-labs/DynamicAuth/commit/f89d5c0b6368d873181bdfc51656db638d8c2692))
|
|
35
|
+
* remove scroll copy ([601774c](https://github.com/dynamic-labs/DynamicAuth/commit/601774c12debc02f3f14a772c1cf54a792addded))
|
|
36
|
+
|
|
37
|
+
## [0.16.0-RC.5](https://github.com/dynamic-labs/DynamicAuth/compare/v0.16.0-RC.4...v0.16.0-RC.5) (2023-03-16)
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
### Features
|
|
41
|
+
|
|
42
|
+
* add modal backdrop css variables ([8b872d4](https://github.com/dynamic-labs/DynamicAuth/commit/8b872d403437da4232698dd059ad727aec74c24b))
|
|
43
|
+
* add optional evmNetworks prop to dynamic wagmi connector ([29f1a95](https://github.com/dynamic-labs/DynamicAuth/commit/29f1a951b96ab17025da60e95cceeda2e7d644e9))
|
|
44
|
+
* add optional evmNetworks prop to dynamic wagmi connector ([62da3fa](https://github.com/dynamic-labs/DynamicAuth/commit/62da3fa024480c65eea7343037101e9a65b79ffa))
|
|
45
|
+
* implement @dynamic-labs/wallet-book ([f6ebbee](https://github.com/dynamic-labs/DynamicAuth/commit/f6ebbee99786409cb8ee037a53942bac3aab1ca6))
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
### Bug Fixes
|
|
49
|
+
|
|
50
|
+
* **bundle_size:** move bundle size to its own CI job ([6870845](https://github.com/dynamic-labs/DynamicAuth/commit/68708457464f7d740e055cda00dd5c26f42d8c83))
|
|
51
|
+
* coolwallet icon id ([c48e1bf](https://github.com/dynamic-labs/DynamicAuth/commit/c48e1bf4331594d11f3fceee17fc726a7f28970d))
|
|
52
|
+
* **DYN-2016:** User is not able to logout when 'wallet not connected' promp shows ([a19b113](https://github.com/dynamic-labs/DynamicAuth/commit/a19b1132290c5602c4cbfb24240588d2343da0d6))
|
|
53
|
+
* image-update-npm ([ae05791](https://github.com/dynamic-labs/DynamicAuth/commit/ae05791434c6f12cc3953bcda33d430d15b056d0))
|
|
54
|
+
* **magic_wallet:** add confirmation to transactions ([14d0e20](https://github.com/dynamic-labs/DynamicAuth/commit/14d0e2069e64a393d82f97d7214d8449e930b341))
|
|
55
|
+
* **react-focus-lock:** ensure it will not fight with blocto focus ([631f0f9](https://github.com/dynamic-labs/DynamicAuth/commit/631f0f9c6bdeca47baec65078f996e0ae26bb905))
|
|
56
|
+
* **UserAddress:** use correct user address in UserAddress component ([9ea8754](https://github.com/dynamic-labs/DynamicAuth/commit/9ea875482fe2f27aaeb97a7186596f85489a44b4))
|
|
57
|
+
* **UserProfile:** Submit button should be active after changes are made ([3d36e2e](https://github.com/dynamic-labs/DynamicAuth/commit/3d36e2e374646f7981765845a2c547af969927a1))
|
|
58
|
+
|
|
2
59
|
## [0.16.0-RC.4](https://github.com/dynamic-labs/DynamicAuth/compare/v0.16.0-RC.3...v0.16.0-RC.4) (2023-03-10)
|
|
3
60
|
|
|
4
61
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/multi-wallet",
|
|
3
|
-
"version": "0.16.0-RC.
|
|
3
|
+
"version": "0.16.0-RC.6",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/dynamic-labs/DynamicAuth.git",
|
|
@@ -9,7 +9,9 @@
|
|
|
9
9
|
"dependencies": {
|
|
10
10
|
"@blocto/sdk": "0.3.3",
|
|
11
11
|
"@coinbase/wallet-sdk": "3.6.4",
|
|
12
|
+
"@dynamic-labs/iconic": "0.1.9",
|
|
12
13
|
"@dynamic-labs/sdk-api": "0.0.155",
|
|
14
|
+
"@dynamic-labs/wallet-book": "0.0.6",
|
|
13
15
|
"@onflow/fcl": "1.3.2",
|
|
14
16
|
"@randlabs/myalgo-connect": "1.4.2",
|
|
15
17
|
"@solana/web3.js": "1.70.1",
|
|
@@ -21,10 +23,11 @@
|
|
|
21
23
|
"fortmatic": "2.4.0",
|
|
22
24
|
"get-starknet": "1.5.0",
|
|
23
25
|
"magic-sdk": "13.4.0",
|
|
26
|
+
"react": "18.2.0",
|
|
24
27
|
"starknet": "3.19.0",
|
|
25
28
|
"tslib": "2.4.1",
|
|
26
|
-
"@dynamic-labs/logger": "0.16.0-RC.
|
|
27
|
-
"@dynamic-labs/wallet-connector-core": "0.16.0-RC.
|
|
29
|
+
"@dynamic-labs/logger": "0.16.0-RC.6",
|
|
30
|
+
"@dynamic-labs/wallet-connector-core": "0.16.0-RC.6"
|
|
28
31
|
},
|
|
29
32
|
"devDependencies": {
|
|
30
33
|
"@walletconnect/types": "^2.2.1"
|
package/src/index.d.ts
CHANGED
|
@@ -9,9 +9,7 @@ export { generateMessageToSign } from './utils/message';
|
|
|
9
9
|
export { isIPad, isIPhone, isMobile } from './utils/isMobile';
|
|
10
10
|
export { normalizeWalletName } from './utils/normalizeWalletName';
|
|
11
11
|
export { isEmailWalletConnector } from './utils/isEmailWalletConnector';
|
|
12
|
-
export {
|
|
13
|
-
export { getWalletLinks } from './utils/walletLinks';
|
|
14
|
-
export type { BrowserName, WalletLinks } from './utils/walletLinks';
|
|
12
|
+
export { getChainInfo } from './utils/getChainInfo';
|
|
15
13
|
export { getWalletConnectorByName } from './utils/getWalletConnectorByName';
|
|
16
14
|
export * from './wallets/clients/walletConnect';
|
|
17
15
|
export * from './wallets/clients/coinbase';
|
package/src/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.defaultStarknetTypedDataDomain = exports.getWalletConnectorByName = exports.
|
|
3
|
+
exports.defaultStarknetTypedDataDomain = exports.getWalletConnectorByName = exports.getChainInfo = exports.isEmailWalletConnector = exports.normalizeWalletName = exports.isMobile = exports.isIPhone = exports.isIPad = exports.generateMessageToSign = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
require("./polyfills");
|
|
6
6
|
tslib_1.__exportStar(require("./multi-wallet"), exports);
|
|
@@ -19,11 +19,8 @@ var normalizeWalletName_1 = require("./utils/normalizeWalletName");
|
|
|
19
19
|
Object.defineProperty(exports, "normalizeWalletName", { enumerable: true, get: function () { return normalizeWalletName_1.normalizeWalletName; } });
|
|
20
20
|
var isEmailWalletConnector_1 = require("./utils/isEmailWalletConnector");
|
|
21
21
|
Object.defineProperty(exports, "isEmailWalletConnector", { enumerable: true, get: function () { return isEmailWalletConnector_1.isEmailWalletConnector; } });
|
|
22
|
-
var
|
|
23
|
-
Object.defineProperty(exports, "
|
|
24
|
-
Object.defineProperty(exports, "getWalletConnectMetadata", { enumerable: true, get: function () { return walletConnect_1.getWalletConnectMetadata; } });
|
|
25
|
-
var walletLinks_1 = require("./utils/walletLinks");
|
|
26
|
-
Object.defineProperty(exports, "getWalletLinks", { enumerable: true, get: function () { return walletLinks_1.getWalletLinks; } });
|
|
22
|
+
var getChainInfo_1 = require("./utils/getChainInfo");
|
|
23
|
+
Object.defineProperty(exports, "getChainInfo", { enumerable: true, get: function () { return getChainInfo_1.getChainInfo; } });
|
|
27
24
|
var getWalletConnectorByName_1 = require("./utils/getWalletConnectorByName");
|
|
28
25
|
Object.defineProperty(exports, "getWalletConnectorByName", { enumerable: true, get: function () { return getWalletConnectorByName_1.getWalletConnectorByName; } });
|
|
29
26
|
tslib_1.__exportStar(require("./wallets/clients/walletConnect"), exports);
|
package/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/multi-wallet/src/index.ts"],"names":[],"mappings":";;;;AAAA,uBAAqB;AAErB,yDAA+B;AAC/B,kDAAwB;AACxB,mDAAyB;AACzB,yDAA+B;AAC/B,yDAA+B;AAC/B,uEAA6C;AAE7C,2CAAwD;AAA/C,gHAAA,qBAAqB,OAAA;AAC9B,6CAA8D;AAArD,kGAAA,MAAM,OAAA;AAAE,oGAAA,QAAQ,OAAA;AAAE,oGAAA,QAAQ,OAAA;AAEnC,mEAAkE;AAAzD,0HAAA,mBAAmB,OAAA;AAC5B,yEAAwE;AAA/D,gIAAA,sBAAsB,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/multi-wallet/src/index.ts"],"names":[],"mappings":";;;;AAAA,uBAAqB;AAErB,yDAA+B;AAC/B,kDAAwB;AACxB,mDAAyB;AACzB,yDAA+B;AAC/B,yDAA+B;AAC/B,uEAA6C;AAE7C,2CAAwD;AAA/C,gHAAA,qBAAqB,OAAA;AAC9B,6CAA8D;AAArD,kGAAA,MAAM,OAAA;AAAE,oGAAA,QAAQ,OAAA;AAAE,oGAAA,QAAQ,OAAA;AAEnC,mEAAkE;AAAzD,0HAAA,mBAAmB,OAAA;AAC5B,yEAAwE;AAA/D,gIAAA,sBAAsB,OAAA;AAC/B,qDAAoD;AAA3C,4GAAA,YAAY,OAAA;AACrB,6EAA4E;AAAnE,oIAAA,wBAAwB,OAAA;AAEjC,0EAAgD;AAChD,qEAA2C;AAI3C,gEAAsC;AAEtC,iDAAqE;AAA5D,2HAAA,8BAA8B,OAAA"}
|
package/src/multi-wallet.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getEnabledWallets = exports.getSupportedChainsForWalletConnector = exports.getSupportedWallets = exports.filteredWalletConnectWallets = exports.phantomLedgerWalletName = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
+
const wallet_book_1 = require("@dynamic-labs/wallet-book");
|
|
5
6
|
const phantom_1 = tslib_1.__importDefault(require("./wallets/solana/phantom"));
|
|
6
7
|
const coinbase_1 = tslib_1.__importDefault(require("./wallets/ethereum/coinbase"));
|
|
7
8
|
const slope_1 = tslib_1.__importDefault(require("./wallets/solana/slope"));
|
|
@@ -10,7 +11,6 @@ const glow_1 = tslib_1.__importDefault(require("./wallets/solana/glow"));
|
|
|
10
11
|
const blocto_1 = tslib_1.__importDefault(require("./wallets/flow/blocto"));
|
|
11
12
|
const dapper_1 = tslib_1.__importDefault(require("./wallets/flow/dapper"));
|
|
12
13
|
const isMobile_1 = require("./utils/isMobile");
|
|
13
|
-
const walletLinks_1 = require("./utils/walletLinks");
|
|
14
14
|
const walletConnect_1 = require("./utils/walletConnect");
|
|
15
15
|
const myalgo_1 = tslib_1.__importDefault(require("./wallets/algorand/myalgo"));
|
|
16
16
|
const BraveEvm_1 = tslib_1.__importDefault(require("./wallets/ethereum/injected/BraveEvm"));
|
|
@@ -34,7 +34,7 @@ const getMetaMaskConnector_1 = require("./wallets/getMetaMaskConnector");
|
|
|
34
34
|
const getTrustConnector_1 = require("./wallets/getTrustConnector");
|
|
35
35
|
const getWalletConnectConnector_1 = require("./wallets/getWalletConnectConnector");
|
|
36
36
|
const initializeWalletProviders_1 = require("./wallets/initializeWalletProviders");
|
|
37
|
-
const
|
|
37
|
+
const Dawn_1 = tslib_1.__importDefault(require("./wallets/ethereum/injected/Dawn"));
|
|
38
38
|
const PhantomEvm_1 = tslib_1.__importDefault(require("./wallets/ethereum/injected/PhantomEvm"));
|
|
39
39
|
const MagicLink_1 = require("./wallets/ethereum/MagicLink");
|
|
40
40
|
const isEmailWalletConnector_1 = require("./utils/isEmailWalletConnector");
|
|
@@ -53,14 +53,14 @@ const defaultWalletUiUtils = {
|
|
|
53
53
|
enableInternalSign: () => {
|
|
54
54
|
throw Error('enableInternalSign, not implemented');
|
|
55
55
|
},
|
|
56
|
-
|
|
56
|
+
sendTransaction: () => {
|
|
57
57
|
throw Error('requestSendTransactionConfirmation not implemented');
|
|
58
58
|
},
|
|
59
|
-
|
|
60
|
-
throw Error('
|
|
59
|
+
signMessage: () => {
|
|
60
|
+
throw Error('signMessage not implemented');
|
|
61
61
|
},
|
|
62
62
|
};
|
|
63
|
-
const getSupportedWallets = ({ appLogoUrl, appName, isWalletConnectV2Enabled, networkConfigurations, skipMemo, vendorCredentials, walletConnectProjectId, walletUiUtils, magicLinkApiKey, } = {
|
|
63
|
+
const getSupportedWallets = ({ appLogoUrl, appName, isWalletConnectV2Enabled, networkConfigurations, skipMemo, vendorCredentials, walletConnectProjectId, walletUiUtils, magicLinkApiKey, magicLinkConfig, } = {
|
|
64
64
|
appLogoUrl: '',
|
|
65
65
|
appName: '',
|
|
66
66
|
isWalletConnectV2Enabled: false,
|
|
@@ -79,6 +79,7 @@ const getSupportedWallets = ({ appLogoUrl, appName, isWalletConnectV2Enabled, ne
|
|
|
79
79
|
// functionality built-in
|
|
80
80
|
const filtered = walletConnectWallets.filter(({ name }) => !exports.filteredWalletConnectWallets.includes(name));
|
|
81
81
|
const allWallets = [
|
|
82
|
+
new Dawn_1.default({ evmNetworks: evmNetworkConfigs }),
|
|
82
83
|
new phantom_1.default({ solNetworks: solanaNetworkConfigs }),
|
|
83
84
|
(0, getMetaMaskConnector_1.getMetaMaskConnector)({ evmNetworks: evmNetworkConfigs }),
|
|
84
85
|
(0, getTrustConnector_1.getTrustConnector)({
|
|
@@ -112,6 +113,7 @@ const getSupportedWallets = ({ appLogoUrl, appName, isWalletConnectV2Enabled, ne
|
|
|
112
113
|
? [
|
|
113
114
|
new MagicLink_1.MagicConnector({
|
|
114
115
|
apiKey: magicLinkApiKey,
|
|
116
|
+
config: magicLinkConfig,
|
|
115
117
|
evmNetworks: evmNetworkConfigs,
|
|
116
118
|
walletUiUtils: walletUiUtils || defaultWalletUiUtils,
|
|
117
119
|
}),
|
|
@@ -147,37 +149,32 @@ const getSupportedWallets = ({ appLogoUrl, appName, isWalletConnectV2Enabled, ne
|
|
|
147
149
|
});
|
|
148
150
|
exports.getSupportedWallets = getSupportedWallets;
|
|
149
151
|
const applyLinksOverrides = (wallets) => wallets.map((wallet) => {
|
|
150
|
-
const
|
|
151
|
-
if (
|
|
152
|
-
|
|
153
|
-
wallet.switchNetworkOnlyFromWallet = links.switchNetworkOnlyFromWallet;
|
|
152
|
+
const metadata = (0, wallet_book_1.getWalletBookWallet)(wallet.name);
|
|
153
|
+
if (metadata.switchNetworkOnlyFromWallet !== undefined) {
|
|
154
|
+
wallet.switchNetworkOnlyFromWallet = metadata.switchNetworkOnlyFromWallet;
|
|
154
155
|
}
|
|
155
156
|
return wallet;
|
|
156
157
|
});
|
|
157
158
|
const filterWalletsForPlatform = (wallets) => wallets.filter((wallet) => {
|
|
158
|
-
const
|
|
159
|
-
if (links === undefined) {
|
|
160
|
-
logger_1.logger.error(`Missing wallet configuration for ${wallet.name}`);
|
|
161
|
-
return false;
|
|
162
|
-
}
|
|
159
|
+
const metadata = (0, wallet_book_1.getWalletBookWallet)(wallet.name);
|
|
163
160
|
if (wallet.isInstalledOnBrowser()) {
|
|
164
161
|
return true;
|
|
165
162
|
}
|
|
166
163
|
else if ((0, isEmailWalletConnector_1.isEmailWalletConnector)(wallet)) {
|
|
167
164
|
return true;
|
|
168
165
|
}
|
|
169
|
-
else if (
|
|
166
|
+
else if (metadata.showOnlyIfInstalled) {
|
|
170
167
|
return false;
|
|
171
168
|
}
|
|
172
169
|
else if (!(0, isMobile_1.isMobile)()) {
|
|
173
170
|
return true;
|
|
174
171
|
}
|
|
175
172
|
else {
|
|
176
|
-
return handleMobileWalletFilter(wallet,
|
|
173
|
+
return handleMobileWalletFilter(wallet, metadata);
|
|
177
174
|
}
|
|
178
175
|
});
|
|
179
|
-
const handleMobileWalletFilter = (wallet,
|
|
180
|
-
if (
|
|
176
|
+
const handleMobileWalletFilter = (wallet, metadata) => {
|
|
177
|
+
if (!metadata.mobile)
|
|
181
178
|
return false;
|
|
182
179
|
/**
|
|
183
180
|
* Custom check added with DYN-1489 for mobile version only:
|
|
@@ -187,31 +184,28 @@ const handleMobileWalletFilter = (wallet, links) => {
|
|
|
187
184
|
if (wallet.isWalletConnect && wallet.name === 'WalletConnect') {
|
|
188
185
|
return true;
|
|
189
186
|
}
|
|
190
|
-
const walletConnectMetadata = (0, walletConnect_1.getWalletConnectMetadata)(wallet.name);
|
|
191
187
|
/**
|
|
192
188
|
* WalletConnect provides a "universal" and "native" deep link. They recommend using
|
|
193
189
|
* the universal deep link over the native one due to UX differences, and our current
|
|
194
190
|
* implementation uses only universal. This means we need to filter for wallets that
|
|
195
191
|
* have a universal deep link available.
|
|
196
192
|
*/
|
|
197
|
-
const hasWalletConnectLink =
|
|
198
|
-
|
|
199
|
-
Boolean(walletConnectMetadata.mobile.native));
|
|
200
|
-
const isWalletConnectWallet = walletConnectMetadata !== undefined;
|
|
193
|
+
const hasWalletConnectLink = Boolean(metadata.mobile.universal) || Boolean(metadata.mobile.native);
|
|
194
|
+
const isWalletConnectWallet = metadata.walletConnect !== undefined;
|
|
201
195
|
/**
|
|
202
196
|
* wallets-links.json is the source of truth for wallet support on mobile platforms.
|
|
203
197
|
* if a wallet has a non-empty value for ios, that means that wallet has an ios app
|
|
204
198
|
* and we support that app. the same goes for android
|
|
205
199
|
*/
|
|
206
200
|
if ((0, isMobile_1.isIPad)() || (0, isMobile_1.isIPhone)()) {
|
|
207
|
-
const hasIOSLink =
|
|
201
|
+
const hasIOSLink = metadata.mobile.iosId !== undefined;
|
|
208
202
|
return !isWalletConnectWallet
|
|
209
203
|
? hasIOSLink
|
|
210
204
|
: hasIOSLink && hasWalletConnectLink;
|
|
211
205
|
// It is an android device
|
|
212
206
|
}
|
|
213
207
|
else {
|
|
214
|
-
const hasAndroidLink =
|
|
208
|
+
const hasAndroidLink = metadata.mobile.androidId !== undefined;
|
|
215
209
|
return !isWalletConnectWallet
|
|
216
210
|
? hasAndroidLink
|
|
217
211
|
: hasAndroidLink && hasWalletConnectLink;
|
|
@@ -222,29 +216,29 @@ const chainStringToChains = {
|
|
|
222
216
|
'flow:mainnet': ['FLOW'],
|
|
223
217
|
};
|
|
224
218
|
const getSupportedChainsForWalletConnector = (walletConnector) => {
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
chainSet.add(chain);
|
|
243
|
-
});
|
|
219
|
+
var _a;
|
|
220
|
+
const metadata = (0, wallet_book_1.getWalletBookWallet)(walletConnector.name);
|
|
221
|
+
/**
|
|
222
|
+
* chains could contain multiple eth networks eg
|
|
223
|
+
* "eip155:1",
|
|
224
|
+
* "eip155:10",
|
|
225
|
+
* "eip155:56",
|
|
226
|
+
* "eip155:100",
|
|
227
|
+
*
|
|
228
|
+
* so we will use a set to ensure uniqueness
|
|
229
|
+
*/
|
|
230
|
+
const chainSet = new Set();
|
|
231
|
+
const chainStringList = (_a = metadata.chains) !== null && _a !== void 0 ? _a : [];
|
|
232
|
+
chainStringList.forEach((chainString) => {
|
|
233
|
+
const chains = chainStringToChains[chainString];
|
|
234
|
+
chains === null || chains === void 0 ? void 0 : chains.forEach((chain) => {
|
|
235
|
+
chainSet.add(chain);
|
|
244
236
|
});
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
237
|
+
});
|
|
238
|
+
walletConnector.supportedChains.forEach((chain) => {
|
|
239
|
+
chainSet.add(chain);
|
|
240
|
+
});
|
|
241
|
+
return [...chainSet];
|
|
248
242
|
};
|
|
249
243
|
exports.getSupportedChainsForWalletConnector = getSupportedChainsForWalletConnector;
|
|
250
244
|
const getEnabledWallets = (props) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
package/src/multi-wallet.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-wallet.js","sourceRoot":"","sources":["../../../../packages/multi-wallet/src/multi-wallet.ts"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"multi-wallet.js","sourceRoot":"","sources":["../../../../packages/multi-wallet/src/multi-wallet.ts"],"names":[],"mappings":"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"}
|
package/src/types.d.ts
CHANGED
|
@@ -1,47 +1,9 @@
|
|
|
1
1
|
import { Connection } from '@solana/web3.js';
|
|
2
2
|
import { ethers } from 'ethers';
|
|
3
3
|
import type { NetworkConfiguration } from '@dynamic-labs/sdk-api';
|
|
4
|
-
import { WalletConnector } from '@dynamic-labs/wallet-connector-core';
|
|
4
|
+
import { WalletConnector, Chain } from '@dynamic-labs/wallet-connector-core';
|
|
5
5
|
import { EvmNetwork } from './wallets/ethereum/evm-network';
|
|
6
|
-
|
|
7
|
-
app: {
|
|
8
|
-
android: string | null;
|
|
9
|
-
browser: string | null;
|
|
10
|
-
ios: string | null;
|
|
11
|
-
linux: string | null;
|
|
12
|
-
mac: string | null;
|
|
13
|
-
windows: string | null;
|
|
14
|
-
};
|
|
15
|
-
app_type: string;
|
|
16
|
-
chains: string[];
|
|
17
|
-
description: string | null;
|
|
18
|
-
desktop: {
|
|
19
|
-
native: string | null;
|
|
20
|
-
universal: string | null;
|
|
21
|
-
};
|
|
22
|
-
homepage: string;
|
|
23
|
-
id: string;
|
|
24
|
-
image_id: string;
|
|
25
|
-
image_url: {
|
|
26
|
-
lg: string;
|
|
27
|
-
md: string;
|
|
28
|
-
sm: string;
|
|
29
|
-
};
|
|
30
|
-
metadata: {
|
|
31
|
-
colors: {
|
|
32
|
-
primary: string | null;
|
|
33
|
-
secondary: string | null;
|
|
34
|
-
};
|
|
35
|
-
shortName: string | null;
|
|
36
|
-
};
|
|
37
|
-
mobile: {
|
|
38
|
-
native: string | null;
|
|
39
|
-
universal: string | null;
|
|
40
|
-
};
|
|
41
|
-
name: string;
|
|
42
|
-
sdks: string[];
|
|
43
|
-
versions: string[];
|
|
44
|
-
};
|
|
6
|
+
import { MagicLinkConfig } from './wallets/ethereum/MagicLink';
|
|
45
7
|
export type VendorCredentials = {
|
|
46
8
|
fortmatic?: string;
|
|
47
9
|
};
|
|
@@ -69,6 +31,7 @@ export type GetSupportedWalletsOpts = {
|
|
|
69
31
|
appName?: string;
|
|
70
32
|
isWalletConnectV2Enabled: boolean;
|
|
71
33
|
magicLinkApiKey?: string;
|
|
34
|
+
magicLinkConfig?: MagicLinkConfig;
|
|
72
35
|
networkConfigurations: NetworkConfigurationMap | undefined;
|
|
73
36
|
skipMemo?: boolean;
|
|
74
37
|
vendorCredentials?: VendorCredentials;
|
|
@@ -78,6 +41,22 @@ export type GetSupportedWalletsOpts = {
|
|
|
78
41
|
export type GetSupportedWallets = (opts?: GetSupportedWalletsOpts) => Promise<WalletConnector[]>;
|
|
79
42
|
export type WalletUiUtils = {
|
|
80
43
|
enableInternalSign: () => void;
|
|
81
|
-
|
|
82
|
-
|
|
44
|
+
sendTransaction: (props: {
|
|
45
|
+
handler: (transaction: ethers.utils.Deferrable<ethers.providers.TransactionRequest>) => Promise<ethers.providers.TransactionResponse>;
|
|
46
|
+
transaction: ethers.utils.Deferrable<ethers.providers.TransactionRequest>;
|
|
47
|
+
}) => Promise<ethers.providers.TransactionResponse>;
|
|
48
|
+
signMessage: (props: {
|
|
49
|
+
handler: (message: string | ethers.utils.Bytes) => Promise<string>;
|
|
50
|
+
message: string | ethers.utils.Bytes;
|
|
51
|
+
}) => Promise<string>;
|
|
52
|
+
};
|
|
53
|
+
export type ChainInfo = {
|
|
54
|
+
blockchainName: string;
|
|
55
|
+
displayName: string;
|
|
56
|
+
name: string;
|
|
57
|
+
symbol: Chain;
|
|
58
|
+
};
|
|
59
|
+
export type ChainWihtIcon = {
|
|
60
|
+
icon?: string;
|
|
61
|
+
name: string | undefined;
|
|
83
62
|
};
|
|
@@ -2,29 +2,50 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.assignConfirmationScreenToProvider = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
const originalSignMessage =
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
5
|
+
const isFunction_1 = require("../isFunction");
|
|
6
|
+
const applyJsonRpcSignerGates = (jsonRpcSigner, walletUiUtils) => {
|
|
7
|
+
const originalSignMessage = jsonRpcSigner.signMessage;
|
|
8
|
+
const originalSendUncheckedTransaction = jsonRpcSigner.sendUncheckedTransaction;
|
|
9
|
+
if ((0, isFunction_1.isFunction)(originalSignMessage)) {
|
|
10
|
+
Object.assign(jsonRpcSigner, {
|
|
11
|
+
signMessage: (message) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
12
|
+
return walletUiUtils.signMessage({
|
|
13
|
+
handler: originalSignMessage.bind(jsonRpcSigner),
|
|
14
|
+
message,
|
|
15
|
+
});
|
|
16
|
+
}),
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
if ((0, isFunction_1.isFunction)(originalSendUncheckedTransaction)) {
|
|
20
|
+
Object.assign(jsonRpcSigner, {
|
|
21
|
+
sendUncheckedTransaction: (transaction) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
22
|
+
return walletUiUtils.sendTransaction({
|
|
23
|
+
handler: originalSendUncheckedTransaction.bind(jsonRpcSigner),
|
|
24
|
+
transaction,
|
|
25
|
+
});
|
|
26
|
+
}),
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
const assignConfirmationScreenToIntermediaryMethods = (parent, walletUiUtils) => {
|
|
31
|
+
const methods = ['getSigner', 'getUncheckedSigner', 'connectUnchecked'];
|
|
32
|
+
methods.forEach((methodName) => {
|
|
33
|
+
const method = parent[methodName];
|
|
34
|
+
if (!(0, isFunction_1.isFunction)(method)) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
Object.assign(parent, {
|
|
38
|
+
[methodName]: (...args) => {
|
|
39
|
+
const result = method.bind(parent)(...args);
|
|
40
|
+
if (typeof result === 'object' && result !== null) {
|
|
41
|
+
assignConfirmationScreenToIntermediaryMethods(result, walletUiUtils);
|
|
42
|
+
applyJsonRpcSignerGates(result, walletUiUtils);
|
|
43
|
+
}
|
|
44
|
+
return result;
|
|
45
|
+
},
|
|
46
|
+
});
|
|
27
47
|
});
|
|
28
48
|
};
|
|
49
|
+
const assignConfirmationScreenToProvider = (provider, walletUiUtils) => assignConfirmationScreenToIntermediaryMethods(provider, walletUiUtils);
|
|
29
50
|
exports.assignConfirmationScreenToProvider = assignConfirmationScreenToProvider;
|
|
30
51
|
//# sourceMappingURL=assignConfirmationScreenToProvider.js.map
|
package/src/utils/assignConfirmationScreenToProvider/assignConfirmationScreenToProvider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assignConfirmationScreenToProvider.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/utils/assignConfirmationScreenToProvider/assignConfirmationScreenToProvider.ts"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"assignConfirmationScreenToProvider.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/utils/assignConfirmationScreenToProvider/assignConfirmationScreenToProvider.ts"],"names":[],"mappings":";;;;AAGA,8CAA2C;AAE3C,MAAM,uBAAuB,GAAG,CAG9B,aAAgB,EAChB,aAA4B,EAC5B,EAAE;IACF,MAAM,mBAAmB,GAAG,aAAa,CAAC,WAAW,CAAC;IACtD,MAAM,gCAAgC,GACpC,aAAa,CAAC,wBAAwB,CAAC;IAEzC,IAAI,IAAA,uBAAU,EAAC,mBAAmB,CAAC,EAAE;QACnC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE;YAC3B,WAAW,EAAE,CAAO,OAAe,EAAE,EAAE;gBACrC,OAAA,aAAa,CAAC,WAAW,CAAC;oBACxB,OAAO,EAAE,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC;oBAChD,OAAO;iBACR,CAAC,CAAA;cAAA;SACL,CAAC,CAAC;KACJ;IAED,IAAI,IAAA,uBAAU,EAAC,gCAAgC,CAAC,EAAE;QAChD,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE;YAC3B,wBAAwB,EAAE,CACxB,WAAyE,EACzE,EAAE;gBACF,OAAA,aAAa,CAAC,eAAe,CAAC;oBAC5B,OAAO,EAAE,gCAAgC,CAAC,IAAI,CAAC,aAAa,CAAC;oBAC7D,WAAW;iBACZ,CAAC,CAAA;cAAA;SACL,CAAC,CAAC;KACJ;AACH,CAAC,CAAC;AAEF,MAAM,6CAA6C,GAAG,CACpD,MAAc,EACd,aAA4B,EAC5B,EAAE;IACF,MAAM,OAAO,GAAG,CAAC,WAAW,EAAE,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;IAExE,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAI,MAAc,CAAC,UAAU,CAAC,CAAC;QAE3C,IAAI,CAAC,IAAA,uBAAU,EAAC,MAAM,CAAC,EAAE;YACvB,OAAO;SACR;QAED,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;YACpB,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE;gBACnC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;gBAE5C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE;oBACjD,6CAA6C,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;oBACrE,uBAAuB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;iBAChD;gBAED,OAAO,MAAM,CAAC;YAChB,CAAC;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEK,MAAM,kCAAkC,GAAG,CAChD,QAAuC,EACvC,aAA4B,EAC5B,EAAE,CAAC,6CAA6C,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;AAH/D,QAAA,kCAAkC,sCAG6B"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getChainInfo = void 0;
|
|
4
|
+
const chainsInfo = [
|
|
5
|
+
{
|
|
6
|
+
blockchainName: 'Algorand',
|
|
7
|
+
displayName: 'Algorand',
|
|
8
|
+
name: 'algorand',
|
|
9
|
+
symbol: 'ALGO',
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
blockchainName: 'Ethereum',
|
|
13
|
+
displayName: 'EVM',
|
|
14
|
+
name: 'evm',
|
|
15
|
+
symbol: 'ETH',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
blockchainName: 'Flow',
|
|
19
|
+
displayName: 'Flow',
|
|
20
|
+
name: 'flow',
|
|
21
|
+
symbol: 'FLOW',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
blockchainName: 'Solana',
|
|
25
|
+
displayName: 'Solana',
|
|
26
|
+
name: 'solana',
|
|
27
|
+
symbol: 'SOL',
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
blockchainName: 'Starknet',
|
|
31
|
+
displayName: 'Starknet',
|
|
32
|
+
name: 'starknet',
|
|
33
|
+
symbol: 'STARK',
|
|
34
|
+
},
|
|
35
|
+
];
|
|
36
|
+
const chainOverrides = {
|
|
37
|
+
eip155: 'evm',
|
|
38
|
+
eth: 'evm',
|
|
39
|
+
};
|
|
40
|
+
const getChainInfo = (chain) => {
|
|
41
|
+
var _a;
|
|
42
|
+
const lowerCasedChain = chain.toLowerCase();
|
|
43
|
+
const normalizedChain = (_a = chainOverrides[lowerCasedChain]) !== null && _a !== void 0 ? _a : lowerCasedChain;
|
|
44
|
+
const chainInfo = chainsInfo.find((info) => info.name === normalizedChain ||
|
|
45
|
+
info.symbol.toLocaleLowerCase() === normalizedChain);
|
|
46
|
+
if (!chainInfo) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
return chainInfo;
|
|
50
|
+
};
|
|
51
|
+
exports.getChainInfo = getChainInfo;
|
|
52
|
+
//# sourceMappingURL=getChainInfo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getChainInfo.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/utils/getChainInfo/getChainInfo.ts"],"names":[],"mappings":";;;AAEA,MAAM,UAAU,GAAgB;IAC9B;QACE,cAAc,EAAE,UAAU;QAC1B,WAAW,EAAE,UAAU;QACvB,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE,MAAM;KACf;IACD;QACE,cAAc,EAAE,UAAU;QAC1B,WAAW,EAAE,KAAK;QAClB,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,KAAK;KACd;IACD;QACE,cAAc,EAAE,MAAM;QACtB,WAAW,EAAE,MAAM;QACnB,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,MAAM;KACf;IACD;QACE,cAAc,EAAE,QAAQ;QACxB,WAAW,EAAE,QAAQ;QACrB,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,KAAK;KACd;IACD;QACE,cAAc,EAAE,UAAU;QAC1B,WAAW,EAAE,UAAU;QACvB,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE,OAAO;KAChB;CACF,CAAC;AAEF,MAAM,cAAc,GAA2B;IAC7C,MAAM,EAAE,KAAK;IACb,GAAG,EAAE,KAAK;CACX,CAAC;AAEK,MAAM,YAAY,GAAG,CAAC,KAAa,EAAyB,EAAE;;IACnE,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAC5C,MAAM,eAAe,GAAG,MAAA,cAAc,CAAC,eAAe,CAAC,mCAAI,eAAe,CAAC;IAC3E,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAC/B,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,KAAK,eAAe;QAC7B,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,KAAK,eAAe,CACtD,CAAC;IAEF,IAAI,CAAC,SAAS,EAAE;QACd,OAAO;KACR;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAdW,QAAA,YAAY,gBAcvB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { getChainInfo } from './getChainInfo';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getChainInfo = void 0;
|
|
4
|
+
var getChainInfo_1 = require("./getChainInfo");
|
|
5
|
+
Object.defineProperty(exports, "getChainInfo", { enumerable: true, get: function () { return getChainInfo_1.getChainInfo; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/utils/getChainInfo/index.ts"],"names":[],"mappings":";;;AAAA,+CAA8C;AAArC,4GAAA,YAAY,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { isFunction } from './isFunction';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isFunction = void 0;
|
|
4
|
+
var isFunction_1 = require("./isFunction");
|
|
5
|
+
Object.defineProperty(exports, "isFunction", { enumerable: true, get: function () { return isFunction_1.isFunction; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|