@dynamic-labs/multi-wallet 0.15.0-RC.0 → 0.15.0-RC.10
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 +214 -0
- package/package.json +8 -5
- package/src/data/wallet-connect-wallets.json +1 -1
- package/src/data/wallet-links.json +17 -3
- package/src/index.d.ts +1 -3
- package/src/index.js +2 -3
- package/src/index.js.map +1 -1
- package/src/multi-wallet.d.ts +2 -2
- package/src/multi-wallet.js +32 -11
- package/src/multi-wallet.js.map +1 -1
- package/src/types.d.ts +4 -2
- package/src/utils/encoding.d.ts +3 -0
- package/src/utils/encoding.js +17 -0
- package/src/utils/encoding.js.map +1 -0
- package/src/utils/getWalletConnectorByName.d.ts +1 -1
- package/src/utils/isSameAddress/index.d.ts +1 -0
- package/src/utils/isSameAddress/index.js +6 -0
- package/src/utils/isSameAddress/index.js.map +1 -0
- package/src/utils/{isSameAddress.d.ts → isSameAddress/isSameAddress.d.ts} +0 -0
- package/src/utils/isSameAddress/isSameAddress.js +7 -0
- package/src/utils/isSameAddress/isSameAddress.js.map +1 -0
- package/src/utils/isSameAddress/utils/index.d.ts +1 -0
- package/src/utils/isSameAddress/utils/index.js +5 -0
- package/src/utils/isSameAddress/utils/index.js.map +1 -0
- package/src/utils/isSameAddress/utils/normalizeAddress/index.d.ts +1 -0
- package/src/utils/isSameAddress/utils/normalizeAddress/index.js +6 -0
- package/src/utils/isSameAddress/utils/normalizeAddress/index.js.map +1 -0
- package/src/utils/{normalizeAddress.d.ts → isSameAddress/utils/normalizeAddress/normalizeAddress.d.ts} +0 -0
- package/src/utils/{normalizeAddress.js → isSameAddress/utils/normalizeAddress/normalizeAddress.js} +4 -1
- package/src/utils/isSameAddress/utils/normalizeAddress/normalizeAddress.js.map +1 -0
- package/src/utils/logger.d.ts +2 -0
- package/src/utils/logger.js +6 -0
- package/src/utils/logger.js.map +1 -0
- package/src/utils/message.d.ts +1 -1
- package/src/utils/message.js +2 -3
- package/src/utils/message.js.map +1 -1
- package/src/utils/walletConnect.d.ts +1 -1
- package/src/utils/walletConnect.js +6 -4
- package/src/utils/walletConnect.js.map +1 -1
- package/src/wallets/algorand/myalgo.d.ts +1 -1
- package/src/wallets/algorand/myalgo.js.map +1 -1
- package/src/wallets/clients/coinbase/coinbase.d.ts +1 -1
- package/src/wallets/clients/coinbase/coinbase.js +1 -0
- package/src/wallets/clients/coinbase/coinbase.js.map +1 -1
- package/src/wallets/clients/walletConnect/walletConnect.d.ts +1 -1
- package/src/wallets/clients/walletConnect/walletConnect.js +13 -14
- package/src/wallets/clients/walletConnect/walletConnect.js.map +1 -1
- package/src/wallets/ethereum/BloctoEvm.d.ts +1 -1
- package/src/wallets/ethereum/BloctoEvm.js +3 -3
- package/src/wallets/ethereum/BloctoEvm.js.map +1 -1
- package/src/wallets/ethereum/coinbase.d.ts +1 -1
- package/src/wallets/ethereum/coinbase.js.map +1 -1
- package/src/wallets/ethereum/ethProviderHelper.d.ts +2 -1
- package/src/wallets/ethereum/ethProviderHelper.js +10 -6
- package/src/wallets/ethereum/ethProviderHelper.js.map +1 -1
- package/src/wallets/ethereum/fortmatic.d.ts +1 -1
- package/src/wallets/ethereum/fortmatic.js +2 -2
- package/src/wallets/ethereum/fortmatic.js.map +1 -1
- package/src/wallets/ethereum/injected/PhantomEvm.d.ts +7 -0
- package/src/wallets/ethereum/injected/PhantomEvm.js +36 -0
- package/src/wallets/ethereum/injected/PhantomEvm.js.map +1 -0
- package/src/wallets/ethereum/meta-mask.d.ts +1 -1
- package/src/wallets/ethereum/meta-mask.js.map +1 -1
- package/src/wallets/flow/blocto.d.ts +2 -2
- package/src/wallets/flow/blocto.js +6 -12
- package/src/wallets/flow/blocto.js.map +1 -1
- package/src/wallets/flow/dapper.d.ts +2 -2
- package/src/wallets/flow/dapper.js +6 -12
- package/src/wallets/flow/dapper.js.map +1 -1
- package/src/wallets/flow/flow-provider.d.ts +6 -2
- package/src/wallets/flow/flow-provider.js +30 -21
- package/src/wallets/flow/flow-provider.js.map +1 -1
- package/src/wallets/flow/lilico.d.ts +15 -0
- package/src/wallets/flow/lilico.js +50 -0
- package/src/wallets/flow/lilico.js.map +1 -0
- package/src/wallets/getTrustConnector.d.ts +2 -1
- package/src/wallets/getTrustConnector.js +5 -4
- package/src/wallets/getTrustConnector.js.map +1 -1
- package/src/wallets/getWalletConnectConnector.d.ts +2 -1
- package/src/wallets/getWalletConnectConnector.js +1 -2
- package/src/wallets/getWalletConnectConnector.js.map +1 -1
- package/src/wallets/initializeWalletProviders.d.ts +6 -0
- package/src/wallets/initializeWalletProviders.js +12 -0
- package/src/wallets/initializeWalletProviders.js.map +1 -0
- package/src/wallets/solana/CoinbaseSolana.d.ts +1 -1
- package/src/wallets/solana/CoinbaseSolana.js.map +1 -1
- package/src/wallets/solana/glow.d.ts +1 -1
- package/src/wallets/solana/glow.js.map +1 -1
- package/src/wallets/solana/phantom.d.ts +1 -1
- package/src/wallets/solana/phantom.js.map +1 -1
- package/src/wallets/solana/slope.d.ts +1 -1
- package/src/wallets/solana/slope.js +4 -4
- package/src/wallets/solana/slope.js.map +1 -1
- package/src/wallets/solana/solProviderHelper.d.ts +1 -1
- package/src/wallets/solana/solProviderHelper.js.map +1 -1
- package/src/wallets/solana/solflare.d.ts +1 -1
- package/src/wallets/solana/solflare.js.map +1 -1
- package/src/wallets/starknet/argentx.d.ts +1 -1
- package/src/wallets/starknet/braavos.d.ts +1 -1
- package/src/wallets/starknet/starknetProvider.d.ts +1 -1
- package/src/wallets/starknet/starknetProvider.js.map +1 -1
- package/src/wallets/starknet/starknetProviderHelper.d.ts +1 -1
- package/src/wallets/starknet/starknetProviderHelper.js.map +1 -1
- package/src/wallets/walletConnect/walletConnect.d.ts +1 -1
- package/src/wallets/walletConnect/walletConnect.js.map +1 -1
- package/src/wallets/walletConnect/walletConnectV2.d.ts +13 -8
- package/src/wallets/walletConnect/walletConnectV2.js +153 -82
- package/src/wallets/walletConnect/walletConnectV2.js.map +1 -1
- package/src/wallets/window.d.ts +4 -0
- package/test/setupAfterEnv.config.js +4 -0
- package/test/setupAfterEnv.config.js.map +1 -1
- package/src/utils/console.d.ts +0 -4
- package/src/utils/console.js +0 -16
- package/src/utils/console.js.map +0 -1
- package/src/utils/isSameAddress.js +0 -7
- package/src/utils/isSameAddress.js.map +0 -1
- package/src/utils/isWalletConnectV2Enabled.d.ts +0 -1
- package/src/utils/isWalletConnectV2Enabled.js +0 -10
- package/src/utils/isWalletConnectV2Enabled.js.map +0 -1
- package/src/utils/normalizeAddress.js.map +0 -1
- package/src/wallets/wallet-connector.d.ts +0 -53
- package/src/wallets/wallet-connector.js +0 -3
- package/src/wallets/wallet-connector.js.map +0 -1
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const isMobile_1 = require("../../../utils/isMobile");
|
|
5
|
+
const meta_mask_1 = tslib_1.__importDefault(require("../meta-mask"));
|
|
6
|
+
class PhantomEvm extends meta_mask_1.default {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.name = 'PhantomEvm';
|
|
10
|
+
this.canConnectViaQrCode = false;
|
|
11
|
+
}
|
|
12
|
+
fetchPublicAddress() {
|
|
13
|
+
const _super = Object.create(null, {
|
|
14
|
+
fetchPublicAddress: { get: () => super.fetchPublicAddress }
|
|
15
|
+
});
|
|
16
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
17
|
+
if (this.isInstalledOnBrowser()) {
|
|
18
|
+
return _super.fetchPublicAddress.call(this);
|
|
19
|
+
}
|
|
20
|
+
const url = encodeURIComponent(window.location.toString());
|
|
21
|
+
const ref = encodeURIComponent(window.location.origin);
|
|
22
|
+
// samsung browser only supports native links, not universal links
|
|
23
|
+
if ((0, isMobile_1.isMobile)()) {
|
|
24
|
+
if ((0, isMobile_1.isSamsungBrowser)()) {
|
|
25
|
+
window.location.assign(`phantom://browse/${url}?ref=${ref}`);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
window.location.assign(`https://phantom.app/ul/browse/${url}?ref=${ref}`);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return undefined;
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.default = PhantomEvm;
|
|
36
|
+
//# sourceMappingURL=PhantomEvm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PhantomEvm.js","sourceRoot":"","sources":["../../../../../../../packages/multi-wallet/src/wallets/ethereum/injected/PhantomEvm.ts"],"names":[],"mappings":";;;AAAA,sDAAqE;AACrE,qEAAoC;AAEpC,MAAM,UAAW,SAAQ,mBAAQ;IAAjC;;QACW,SAAI,GAAG,YAAY,CAAC;QACpB,wBAAmB,GAAG,KAAK,CAAC;IAsBvC,CAAC;IApBgB,kBAAkB;;;;;YAC/B,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAE;gBAC/B,OAAO,OAAM,kBAAkB,YAAG;aACnC;YAED,MAAM,GAAG,GAAG,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3D,MAAM,GAAG,GAAG,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAEvD,kEAAkE;YAClE,IAAI,IAAA,mBAAQ,GAAE,EAAE;gBACd,IAAI,IAAA,2BAAgB,GAAE,EAAE;oBACtB,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,GAAG,QAAQ,GAAG,EAAE,CAAC,CAAC;iBAC9D;qBAAM;oBACL,MAAM,CAAC,QAAQ,CAAC,MAAM,CACpB,iCAAiC,GAAG,QAAQ,GAAG,EAAE,CAClD,CAAC;iBACH;aACF;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;KAAA;CACF;AAED,kBAAe,UAAU,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ethers } from 'ethers';
|
|
2
|
-
import { Chain, WalletConnector, WalletEventListeners } from '
|
|
2
|
+
import { Chain, WalletConnector, WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
|
|
3
3
|
import { EthProviderHelper } from './ethProviderHelper';
|
|
4
4
|
import { EthProvider } from './ethProvider';
|
|
5
5
|
import { EvmNetwork } from './evm-network';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta-mask.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/ethereum/meta-mask.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"meta-mask.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/ethereum/meta-mask.ts"],"names":[],"mappings":";;;AAQA,yEAAsE;AAEtE,2DAAwD;AACxD,+CAA4C;AAG5C,MAAM,QAAS,SAAQ,yBAAW;IAAlC;;QACE,SAAI,GAAG,UAAU,CAAC;QAClB,oBAAe,GAAY,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAE1C,mBAAc,GAAU,KAAK,CAAC;QAE9B,wBAAmB,GAAG,KAAK,CAAC;QAC5B,kCAA6B,GAAG,KAAK,CAAC;QACtC,oBAAe,GAAG,KAAK,CAAC;QACxB,sBAAiB,GAAG,IAAI,qCAAiB,EAAE,CAAC;IAwD9C,CAAC;IArDC,IAAI,GAAG;QACL,OAAO,IAAA,yCAAmB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,mBAAmB,CAAC,SAA+B;QACjD,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAChD,SAAS,EACT,IAAI,CAAC,eAAe,EAAE,CACvB,CAAC;IACJ,CAAC;IAED,sBAAsB;QACpB,OAAO,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnE,CAAC;IAEQ,eAAe;QACtB,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxD,CAAC;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IAEK,OAAO;;YACX,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAClC,CAAC;KAAA;IAEK,kBAAkB;;YACtB,OAAO,IAAI,CAAC,iBAAiB,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtE,CAAC;KAAA;IAEK,WAAW,CAAC,aAAqB;;YACrC,OAAO,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9E,CAAC;KAAA;IAEK,cAAc,CAAC,aAAqB;;YACxC,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QACzC,CAAC;KAAA;IAEK,UAAU;;YACd,0CAA0C;YAC1C,OAAO;QACT,CAAC;KAAA;IAEc,qBAAqB,CAAC,EACnC,OAAO,EACP,QAAQ,GAIT;;;;;YACC,OAAO,OAAM,qBAAqB,YAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE;QAC5D,CAAC;KAAA;CACF;AAED,kBAAe,QAAQ,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Chain, WalletConnector } from '
|
|
1
|
+
import { Chain, WalletConnector } from '@dynamic-labs/wallet-connector-core';
|
|
2
2
|
import { FlowProvider } from './flow-provider';
|
|
3
3
|
declare class Blocto extends FlowProvider implements WalletConnector {
|
|
4
4
|
name: string;
|
|
@@ -8,6 +8,6 @@ declare class Blocto extends FlowProvider implements WalletConnector {
|
|
|
8
8
|
canConnectViaCustodialService: boolean;
|
|
9
9
|
isWalletConnect: boolean;
|
|
10
10
|
get key(): string;
|
|
11
|
-
setupConfig():
|
|
11
|
+
setupConfig(): void;
|
|
12
12
|
}
|
|
13
13
|
export default Blocto;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
3
|
const fcl_1 = require("@onflow/fcl");
|
|
5
4
|
const normalizeWalletName_1 = require("../../utils/normalizeWalletName");
|
|
6
5
|
const flow_provider_1 = require("./flow-provider");
|
|
@@ -18,17 +17,12 @@ class Blocto extends flow_provider_1.FlowProvider {
|
|
|
18
17
|
return (0, normalizeWalletName_1.normalizeWalletName)(this.name);
|
|
19
18
|
}
|
|
20
19
|
setupConfig() {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
.put('challenge.scope', 'email')
|
|
28
|
-
.put('discovery.wallet', 'https://flow-wallet.blocto.app/authn')
|
|
29
|
-
.put('service.OpenID.scopes', 'email!')
|
|
30
|
-
.put('discovery.wallet.method', undefined);
|
|
31
|
-
});
|
|
20
|
+
super.setupConfig();
|
|
21
|
+
(0, fcl_1.config)()
|
|
22
|
+
.put('challenge.scope', 'email')
|
|
23
|
+
.put('discovery.wallet', 'https://flow-wallet.blocto.app/authn')
|
|
24
|
+
.put('service.OpenID.scopes', 'email!')
|
|
25
|
+
.put('discovery.wallet.method', undefined);
|
|
32
26
|
}
|
|
33
27
|
}
|
|
34
28
|
exports.default = Blocto;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blocto.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/flow/blocto.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"blocto.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/flow/blocto.ts"],"names":[],"mappings":";;AAAA,qCAAqC;AAIrC,yEAAsE;AAEtE,mDAA+C;AAE/C,MAAM,MAAO,SAAQ,4BAAY;IAAjC;;QACE,SAAI,GAAG,QAAQ,CAAC;QAEhB,oBAAe,GAAY,CAAC,MAAM,CAAC,CAAC;QAEpC,mBAAc,GAAU,MAAM,CAAC;QAE/B,wBAAmB,GAAG,KAAK,CAAC;QAC5B,kCAA6B,GAAG,IAAI,CAAC;QACrC,oBAAe,GAAG,KAAK,CAAC;IAe1B,CAAC;IAbC,IAAI,GAAG;QACL,OAAO,IAAA,yCAAmB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAEQ,WAAW;QAClB,KAAK,CAAC,WAAW,EAAE,CAAC;QAEpB,IAAA,YAAM,GAAE;aACL,GAAG,CAAC,iBAAiB,EAAE,OAAO,CAAC;aAC/B,GAAG,CAAC,kBAAkB,EAAE,sCAAsC,CAAC;aAC/D,GAAG,CAAC,uBAAuB,EAAE,QAAQ,CAAC;aACtC,GAAG,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;IAC/C,CAAC;CACF;AAED,kBAAe,MAAM,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Chain, WalletConnector } from '
|
|
1
|
+
import { Chain, WalletConnector } from '@dynamic-labs/wallet-connector-core';
|
|
2
2
|
import { FlowProvider } from './flow-provider';
|
|
3
3
|
declare class Dapper extends FlowProvider implements WalletConnector {
|
|
4
4
|
name: string;
|
|
@@ -8,6 +8,6 @@ declare class Dapper extends FlowProvider implements WalletConnector {
|
|
|
8
8
|
canConnectViaCustodialService: boolean;
|
|
9
9
|
isWalletConnect: boolean;
|
|
10
10
|
get key(): string;
|
|
11
|
-
setupConfig():
|
|
11
|
+
setupConfig(): void;
|
|
12
12
|
}
|
|
13
13
|
export default Dapper;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
3
|
const fcl_1 = require("@onflow/fcl");
|
|
5
4
|
const normalizeWalletName_1 = require("../../utils/normalizeWalletName");
|
|
6
5
|
const flow_provider_1 = require("./flow-provider");
|
|
@@ -18,17 +17,12 @@ class Dapper extends flow_provider_1.FlowProvider {
|
|
|
18
17
|
return (0, normalizeWalletName_1.normalizeWalletName)(this.name);
|
|
19
18
|
}
|
|
20
19
|
setupConfig() {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
.put('challenge.scope', undefined)
|
|
28
|
-
.put('discovery.wallet', 'https://accounts.meetdapper.com/fcl/authn-restricted')
|
|
29
|
-
.put('service.OpenID.scopes', undefined)
|
|
30
|
-
.put('discovery.wallet.method', 'POP/RPC');
|
|
31
|
-
});
|
|
20
|
+
super.setupConfig();
|
|
21
|
+
(0, fcl_1.config)()
|
|
22
|
+
.put('challenge.scope', undefined)
|
|
23
|
+
.put('discovery.wallet', 'https://accounts.meetdapper.com/fcl/authn-restricted')
|
|
24
|
+
.put('service.OpenID.scopes', undefined)
|
|
25
|
+
.put('discovery.wallet.method', 'POP/RPC');
|
|
32
26
|
}
|
|
33
27
|
}
|
|
34
28
|
exports.default = Dapper;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dapper.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/flow/dapper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dapper.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/flow/dapper.ts"],"names":[],"mappings":";;AAAA,qCAAqC;AAIrC,yEAAsE;AAEtE,mDAA+C;AAE/C,MAAM,MAAO,SAAQ,4BAAY;IAAjC;;QACE,SAAI,GAAG,QAAQ,CAAC;QAEhB,oBAAe,GAAY,CAAC,MAAM,CAAC,CAAC;QAEpC,mBAAc,GAAU,MAAM,CAAC;QAE/B,wBAAmB,GAAG,KAAK,CAAC;QAC5B,kCAA6B,GAAG,IAAI,CAAC;QACrC,oBAAe,GAAG,KAAK,CAAC;IAkB1B,CAAC;IAhBC,IAAI,GAAG;QACL,OAAO,IAAA,yCAAmB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAEQ,WAAW;QAClB,KAAK,CAAC,WAAW,EAAE,CAAC;QAEpB,IAAA,YAAM,GAAE;aACL,GAAG,CAAC,iBAAiB,EAAE,SAAS,CAAC;aACjC,GAAG,CACF,kBAAkB,EAClB,sDAAsD,CACvD;aACA,GAAG,CAAC,uBAAuB,EAAE,SAAS,CAAC;aACvC,GAAG,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;IAC/C,CAAC;CACF;AAED,kBAAe,MAAM,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
|
|
1
2
|
export declare const LOCAL_STORAGE: {
|
|
2
3
|
can: boolean;
|
|
3
4
|
get: (key: string) => Promise<any>;
|
|
@@ -6,16 +7,18 @@ export declare const LOCAL_STORAGE: {
|
|
|
6
7
|
export declare class FlowProvider {
|
|
7
8
|
protected appName?: string;
|
|
8
9
|
protected appLogoUrl?: string;
|
|
10
|
+
protected onAccountChange?: (address: string[]) => Promise<void>;
|
|
9
11
|
constructor({ appName, appLogoUrl, }: {
|
|
10
12
|
appLogoUrl?: string;
|
|
11
13
|
appName?: string;
|
|
12
14
|
});
|
|
13
15
|
isInstalledOnBrowser(): boolean;
|
|
14
|
-
setupEventListeners(): void;
|
|
15
16
|
getNetwork(): Promise<number | undefined>;
|
|
16
17
|
teardownEventListeners(): void;
|
|
17
18
|
connect(): Promise<void>;
|
|
18
|
-
|
|
19
|
+
setupEventListeners(listeners: WalletEventListeners): void;
|
|
20
|
+
setupConfig(): void;
|
|
21
|
+
baseConfig(): void;
|
|
19
22
|
fetchPublicAddress(): Promise<string | undefined>;
|
|
20
23
|
proveOwnership(messageToSign: string): Promise<string | undefined>;
|
|
21
24
|
signMessage(messageToSign: string): Promise<string | undefined>;
|
|
@@ -27,4 +30,5 @@ export declare class FlowProvider {
|
|
|
27
30
|
supportsNetworkSwitching(): boolean;
|
|
28
31
|
switchNetwork(): Promise<void>;
|
|
29
32
|
getConnectedAccounts(): Promise<string[]>;
|
|
33
|
+
signDelay(): Promise<void>;
|
|
30
34
|
}
|
|
@@ -5,7 +5,7 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
6
6
|
const fcl_1 = require("@onflow/fcl");
|
|
7
7
|
const errors_1 = require("../../errors");
|
|
8
|
-
const
|
|
8
|
+
const logger_1 = require("../../utils/logger");
|
|
9
9
|
const get = (key) => {
|
|
10
10
|
if (typeof window === 'undefined') {
|
|
11
11
|
return undefined;
|
|
@@ -17,7 +17,7 @@ const get = (key) => {
|
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
catch (e) {
|
|
20
|
-
|
|
20
|
+
logger_1.logger.error(e);
|
|
21
21
|
}
|
|
22
22
|
return undefined;
|
|
23
23
|
};
|
|
@@ -39,9 +39,6 @@ class FlowProvider {
|
|
|
39
39
|
isInstalledOnBrowser() {
|
|
40
40
|
return false;
|
|
41
41
|
}
|
|
42
|
-
setupEventListeners() {
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
42
|
getNetwork() {
|
|
46
43
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
47
44
|
return undefined;
|
|
@@ -51,20 +48,28 @@ class FlowProvider {
|
|
|
51
48
|
return;
|
|
52
49
|
}
|
|
53
50
|
connect() {
|
|
51
|
+
var _a;
|
|
54
52
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
55
|
-
|
|
56
|
-
yield (0, fcl_1.currentUser)().authenticate();
|
|
53
|
+
this.setupConfig();
|
|
54
|
+
const { addr } = yield (0, fcl_1.currentUser)().authenticate();
|
|
55
|
+
if (addr) {
|
|
56
|
+
yield ((_a = this.onAccountChange) === null || _a === void 0 ? void 0 : _a.call(this, [addr]));
|
|
57
|
+
}
|
|
57
58
|
});
|
|
58
59
|
}
|
|
60
|
+
setupEventListeners(listeners) {
|
|
61
|
+
this.onAccountChange = listeners.onAccountChange;
|
|
62
|
+
}
|
|
59
63
|
setupConfig() {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
64
|
+
this.baseConfig();
|
|
65
|
+
}
|
|
66
|
+
baseConfig() {
|
|
67
|
+
(0, fcl_1.config)()
|
|
68
|
+
.put('app.detail.title', this.appName)
|
|
69
|
+
.put('app.detail.icon', this.appLogoUrl)
|
|
70
|
+
.put('accessNode.api', 'https://rest-mainnet.onflow.org')
|
|
71
|
+
.put('flow.network', 'mainnet')
|
|
72
|
+
.put('fcl.storage', exports.LOCAL_STORAGE);
|
|
68
73
|
}
|
|
69
74
|
fetchPublicAddress() {
|
|
70
75
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
@@ -74,7 +79,7 @@ class FlowProvider {
|
|
|
74
79
|
return user.addr;
|
|
75
80
|
}
|
|
76
81
|
catch (error) {
|
|
77
|
-
|
|
82
|
+
logger_1.logger.error(error);
|
|
78
83
|
return undefined;
|
|
79
84
|
}
|
|
80
85
|
});
|
|
@@ -83,6 +88,7 @@ class FlowProvider {
|
|
|
83
88
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
84
89
|
try {
|
|
85
90
|
yield this.connect();
|
|
91
|
+
yield this.signDelay();
|
|
86
92
|
const signedMessage = yield this.signMessage(messageToSign);
|
|
87
93
|
if (!signedMessage) {
|
|
88
94
|
return undefined;
|
|
@@ -94,7 +100,7 @@ class FlowProvider {
|
|
|
94
100
|
return JSON.stringify(data);
|
|
95
101
|
}
|
|
96
102
|
catch (error) {
|
|
97
|
-
|
|
103
|
+
logger_1.logger.error(error);
|
|
98
104
|
return undefined;
|
|
99
105
|
}
|
|
100
106
|
});
|
|
@@ -102,7 +108,6 @@ class FlowProvider {
|
|
|
102
108
|
signMessage(messageToSign) {
|
|
103
109
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
104
110
|
const message = Buffer.from(messageToSign).toString('hex');
|
|
105
|
-
yield this.setupConfig();
|
|
106
111
|
const signedMessage = yield (0, fcl_1.currentUser)().signUserMessage(message);
|
|
107
112
|
if (signedMessage.includes('Declined')) {
|
|
108
113
|
throw new errors_1.DynamicError('User declined the signature');
|
|
@@ -125,7 +130,7 @@ class FlowProvider {
|
|
|
125
130
|
}
|
|
126
131
|
getBalance() {
|
|
127
132
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
128
|
-
|
|
133
|
+
this.baseConfig();
|
|
129
134
|
const address = yield this.fetchPublicAddress();
|
|
130
135
|
if (address) {
|
|
131
136
|
const code = `
|
|
@@ -138,7 +143,7 @@ class FlowProvider {
|
|
|
138
143
|
return yield (0, fcl_1.send)([(0, fcl_1.script)(code)]).then(fcl_1.decode);
|
|
139
144
|
}
|
|
140
145
|
catch (error) {
|
|
141
|
-
|
|
146
|
+
logger_1.logger.error(error);
|
|
142
147
|
return undefined;
|
|
143
148
|
}
|
|
144
149
|
}
|
|
@@ -162,7 +167,6 @@ class FlowProvider {
|
|
|
162
167
|
}
|
|
163
168
|
getConnectedAccounts() {
|
|
164
169
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
165
|
-
yield this.setupConfig();
|
|
166
170
|
const user = yield (0, fcl_1.currentUser)().snapshot();
|
|
167
171
|
if (user.addr) {
|
|
168
172
|
return [user.addr];
|
|
@@ -170,6 +174,11 @@ class FlowProvider {
|
|
|
170
174
|
return [];
|
|
171
175
|
});
|
|
172
176
|
}
|
|
177
|
+
signDelay() {
|
|
178
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
179
|
+
return Promise.resolve();
|
|
180
|
+
});
|
|
181
|
+
}
|
|
173
182
|
}
|
|
174
183
|
exports.FlowProvider = FlowProvider;
|
|
175
184
|
//# sourceMappingURL=flow-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow-provider.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/flow/flow-provider.ts"],"names":[],"mappings":";;;;AAAA,uDAAuD;AACvD,qCAMqB;
|
|
1
|
+
{"version":3,"file":"flow-provider.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/flow/flow-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Chain, WalletConnector } from '@dynamic-labs/wallet-connector-core';
|
|
2
|
+
import { FlowProvider } from './flow-provider';
|
|
3
|
+
declare class Lilico extends FlowProvider implements WalletConnector {
|
|
4
|
+
name: string;
|
|
5
|
+
supportedChains: Chain[];
|
|
6
|
+
connectedChain: Chain;
|
|
7
|
+
canConnectViaQrCode: boolean;
|
|
8
|
+
canConnectViaCustodialService: boolean;
|
|
9
|
+
isWalletConnect: boolean;
|
|
10
|
+
get key(): string;
|
|
11
|
+
setupConfig(): void;
|
|
12
|
+
isInstalledOnBrowser(): boolean;
|
|
13
|
+
signDelay(): Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
export default Lilico;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const fcl_1 = require("@onflow/fcl");
|
|
5
|
+
const isMobile_1 = require("../../utils/isMobile");
|
|
6
|
+
const normalizeWalletName_1 = require("../../utils/normalizeWalletName");
|
|
7
|
+
const flow_provider_1 = require("./flow-provider");
|
|
8
|
+
class Lilico extends flow_provider_1.FlowProvider {
|
|
9
|
+
constructor() {
|
|
10
|
+
super(...arguments);
|
|
11
|
+
this.name = 'Lilico';
|
|
12
|
+
this.supportedChains = ['FLOW'];
|
|
13
|
+
this.connectedChain = 'FLOW';
|
|
14
|
+
this.canConnectViaQrCode = false;
|
|
15
|
+
this.canConnectViaCustodialService = false;
|
|
16
|
+
this.isWalletConnect = false;
|
|
17
|
+
}
|
|
18
|
+
get key() {
|
|
19
|
+
return (0, normalizeWalletName_1.normalizeWalletName)(this.name);
|
|
20
|
+
}
|
|
21
|
+
setupConfig() {
|
|
22
|
+
super.setupConfig();
|
|
23
|
+
(0, fcl_1.config)()
|
|
24
|
+
.put('challenge.scope', undefined)
|
|
25
|
+
.put('discovery.wallet', 'chrome-extension://hpclkefagolihohboafpheddmmgdffjm/popup.html')
|
|
26
|
+
.put('service.OpenID.scopes', undefined)
|
|
27
|
+
.put('discovery.wallet.method', 'EXT/RPC');
|
|
28
|
+
}
|
|
29
|
+
isInstalledOnBrowser() {
|
|
30
|
+
var _a;
|
|
31
|
+
if (typeof window === 'undefined') {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
return Boolean((_a = window.fcl_extensions) === null || _a === void 0 ? void 0 : _a.some((ext) => ext.id === 'hpclkefagolihohboafpheddmmgdffjm'));
|
|
35
|
+
}
|
|
36
|
+
signDelay() {
|
|
37
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
38
|
+
if ((0, isMobile_1.isMobile)()) {
|
|
39
|
+
return Promise.resolve();
|
|
40
|
+
}
|
|
41
|
+
return new Promise((resolve) => {
|
|
42
|
+
setTimeout(() => {
|
|
43
|
+
resolve();
|
|
44
|
+
}, 500);
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
exports.default = Lilico;
|
|
50
|
+
//# sourceMappingURL=lilico.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lilico.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/flow/lilico.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AAIrC,mDAAgD;AAChD,yEAAsE;AAGtE,mDAA+C;AAI/C,MAAM,MAAO,SAAQ,4BAAY;IAAjC;;QACE,SAAI,GAAG,QAAQ,CAAC;QAEhB,oBAAe,GAAY,CAAC,MAAM,CAAC,CAAC;QAEpC,mBAAc,GAAU,MAAM,CAAC;QAE/B,wBAAmB,GAAG,KAAK,CAAC;QAC5B,kCAA6B,GAAG,KAAK,CAAC;QACtC,oBAAe,GAAG,KAAK,CAAC;IAyC1B,CAAC;IAvCC,IAAI,GAAG;QACL,OAAO,IAAA,yCAAmB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAEQ,WAAW;QAClB,KAAK,CAAC,WAAW,EAAE,CAAC;QAEpB,IAAA,YAAM,GAAE;aACL,GAAG,CAAC,iBAAiB,EAAE,SAAS,CAAC;aACjC,GAAG,CACF,kBAAkB,EAClB,gEAAgE,CACjE;aACA,GAAG,CAAC,uBAAuB,EAAE,SAAS,CAAC;aACvC,GAAG,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;IAC/C,CAAC;IAEQ,oBAAoB;;QAC3B,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;YACjC,OAAO,KAAK,CAAC;SACd;QACD,OAAO,OAAO,CACZ,MAAA,MAAM,CAAC,cAAc,0CAAE,IAAI,CACzB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,kCAAkC,CACvD,CACF,CAAC;IACJ,CAAC;IAEc,SAAS;;YACtB,IAAI,IAAA,mBAAQ,GAAE,EAAE;gBACd,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;aAC1B;YAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC7B,UAAU,CAAC,GAAG,EAAE;oBACd,OAAO,EAAE,CAAC;gBACZ,CAAC,EAAE,GAAG,CAAC,CAAC;YACV,CAAC,CAAC,CAAC;QACL,CAAC;KAAA;CACF;AAED,kBAAe,MAAM,CAAC"}
|
|
@@ -2,6 +2,7 @@ import TrustBrowser from './ethereum/injected/Trust';
|
|
|
2
2
|
import TrustWalletConnect from './walletConnect/trust';
|
|
3
3
|
import TrustWalletConnectV2 from './walletConnect/trustV2';
|
|
4
4
|
import { EvmNetwork } from './ethereum/evm-network';
|
|
5
|
-
export declare const getTrustConnector: ({ evmNetworks, }: {
|
|
5
|
+
export declare const getTrustConnector: ({ evmNetworks, isWalletConnectV2Enabled, }: {
|
|
6
6
|
evmNetworks: EvmNetwork[];
|
|
7
|
+
isWalletConnectV2Enabled: boolean;
|
|
7
8
|
}) => TrustBrowser | TrustWalletConnect | TrustWalletConnectV2;
|
|
@@ -2,17 +2,18 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getTrustConnector = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const isWalletConnectV2Enabled_1 = require("../utils/isWalletConnectV2Enabled");
|
|
6
5
|
const Trust_1 = tslib_1.__importDefault(require("./ethereum/injected/Trust"));
|
|
7
6
|
const trust_1 = tslib_1.__importDefault(require("./walletConnect/trust"));
|
|
8
7
|
const trustV2_1 = tslib_1.__importDefault(require("./walletConnect/trustV2"));
|
|
9
|
-
const getTrustConnector = ({ evmNetworks, }) => {
|
|
8
|
+
const getTrustConnector = ({ evmNetworks, isWalletConnectV2Enabled, }) => {
|
|
10
9
|
const trust = new Trust_1.default({ evmNetworks });
|
|
11
10
|
if (trust.isInstalledOnBrowser()) {
|
|
12
11
|
return trust;
|
|
13
12
|
}
|
|
14
|
-
else if (
|
|
15
|
-
return new trustV2_1.default({
|
|
13
|
+
else if (isWalletConnectV2Enabled) {
|
|
14
|
+
return new trustV2_1.default({
|
|
15
|
+
evmNetworks,
|
|
16
|
+
});
|
|
16
17
|
}
|
|
17
18
|
else {
|
|
18
19
|
return new trust_1.default({ evmNetworks });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTrustConnector.js","sourceRoot":"","sources":["../../../../../packages/multi-wallet/src/wallets/getTrustConnector.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"getTrustConnector.js","sourceRoot":"","sources":["../../../../../packages/multi-wallet/src/wallets/getTrustConnector.ts"],"names":[],"mappings":";;;;AAAA,8EAAqD;AACrD,0EAAuD;AACvD,8EAA2D;AAGpD,MAAM,iBAAiB,GAAG,CAAC,EAChC,WAAW,EACX,wBAAwB,GAIzB,EAAE,EAAE;IACH,MAAM,KAAK,GAAG,IAAI,eAAY,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAChD,IAAI,KAAK,CAAC,oBAAoB,EAAE,EAAE;QAChC,OAAO,KAAK,CAAC;KACd;SAAM,IAAI,wBAAwB,EAAE;QACnC,OAAO,IAAI,iBAAoB,CAAC;YAC9B,WAAW;SACZ,CAAC,CAAC;KACJ;SAAM;QACL,OAAO,IAAI,eAAkB,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;KAChD;AACH,CAAC,CAAC;AAjBW,QAAA,iBAAiB,qBAiB5B"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { EvmNetwork } from './ethereum/evm-network';
|
|
2
2
|
import WalletConnect from './walletConnect';
|
|
3
3
|
import WalletConnectV2 from './walletConnect/walletConnectV2';
|
|
4
|
-
export declare const getWalletConnectConnector: ({ evmNetworks, }: {
|
|
4
|
+
export declare const getWalletConnectConnector: ({ evmNetworks, isWalletConnectV2Enabled, }: {
|
|
5
5
|
evmNetworks: EvmNetwork[];
|
|
6
|
+
isWalletConnectV2Enabled: boolean;
|
|
6
7
|
}) => WalletConnect | WalletConnectV2;
|
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getWalletConnectConnector = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const isWalletConnectV2Enabled_1 = require("../utils/isWalletConnectV2Enabled");
|
|
6
5
|
const walletConnect_1 = tslib_1.__importDefault(require("./walletConnect"));
|
|
7
6
|
const walletConnectV2_1 = tslib_1.__importDefault(require("./walletConnect/walletConnectV2"));
|
|
8
|
-
const getWalletConnectConnector = ({ evmNetworks, }) =>
|
|
7
|
+
const getWalletConnectConnector = ({ evmNetworks, isWalletConnectV2Enabled, }) => isWalletConnectV2Enabled
|
|
9
8
|
? new walletConnectV2_1.default({
|
|
10
9
|
evmNetworks,
|
|
11
10
|
walletName: 'WalletConnect',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getWalletConnectConnector.js","sourceRoot":"","sources":["../../../../../packages/multi-wallet/src/wallets/getWalletConnectConnector.ts"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"getWalletConnectConnector.js","sourceRoot":"","sources":["../../../../../packages/multi-wallet/src/wallets/getWalletConnectConnector.ts"],"names":[],"mappings":";;;;AACA,4EAA4C;AAC5C,8FAA8D;AAEvD,MAAM,yBAAyB,GAAG,CAAC,EACxC,WAAW,EACX,wBAAwB,GAIzB,EAAE,EAAE,CACH,wBAAwB;IACtB,CAAC,CAAC,IAAI,yBAAe,CAAC;QAClB,WAAW;QACX,UAAU,EAAE,eAAe;KAC5B,CAAC;IACJ,CAAC,CAAC,IAAI,uBAAa,CAAC;QAChB,WAAW;QACX,UAAU,EAAE,eAAe;KAC5B,CAAC,CAAC;AAfI,QAAA,yBAAyB,6BAe7B"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { EvmNetwork } from './ethereum/evm-network';
|
|
2
|
+
export declare const initializeWalletProviders: ({ evmNetworks, isWalletConnectV2Enabled, walletConnectProjectId, }: {
|
|
3
|
+
evmNetworks: EvmNetwork[];
|
|
4
|
+
isWalletConnectV2Enabled: boolean;
|
|
5
|
+
walletConnectProjectId: string | undefined;
|
|
6
|
+
}) => Promise<void>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.initializeWalletProviders = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const walletConnectV2_1 = require("./walletConnect/walletConnectV2");
|
|
6
|
+
const initializeWalletProviders = ({ evmNetworks, isWalletConnectV2Enabled, walletConnectProjectId, }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
7
|
+
if (isWalletConnectV2Enabled) {
|
|
8
|
+
yield (0, walletConnectV2_1.getInitializedProvider)({ projectId: walletConnectProjectId }, evmNetworks);
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
exports.initializeWalletProviders = initializeWalletProviders;
|
|
12
|
+
//# sourceMappingURL=initializeWalletProviders.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"initializeWalletProviders.js","sourceRoot":"","sources":["../../../../../packages/multi-wallet/src/wallets/initializeWalletProviders.ts"],"names":[],"mappings":";;;;AACA,qEAAyE;AAElE,MAAM,yBAAyB,GAAG,CAAO,EAC9C,WAAW,EACX,wBAAwB,EACxB,sBAAsB,GAKvB,EAAiB,EAAE;IAClB,IAAI,wBAAwB,EAAE;QAC5B,MAAM,IAAA,wCAAsB,EAC1B,EAAE,SAAS,EAAE,sBAAsB,EAAE,EACrC,WAAW,CACZ,CAAC;KACH;AACH,CAAC,CAAA,CAAC;AAfW,QAAA,yBAAyB,6BAepC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Chain, WalletConnector, WalletEventListeners } from '
|
|
1
|
+
import { Chain, WalletConnector, WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
|
|
2
2
|
import { ISolana } from '../window';
|
|
3
3
|
import { SolProvider } from './solProvider';
|
|
4
4
|
import { SolProviderHelper } from './solProviderHelper';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoinbaseSolana.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/solana/CoinbaseSolana.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"CoinbaseSolana.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/solana/CoinbaseSolana.ts"],"names":[],"mappings":";;;AAMA,yCAA4C;AAC5C,yEAAsE;AAGtE,+CAA4C;AAC5C,2DAAwD;AAExD,MAAM,cAAe,SAAQ,yBAAW;IAAxC;;QACE,SAAI,GAAG,gBAAgB,CAAC;QAExB,oBAAe,GAAY,CAAC,KAAK,CAAC,CAAC;QACnC,mBAAc,GAAU,KAAK,CAAC;QAE9B,wBAAmB,GAAG,KAAK,CAAC;QAC5B,kCAA6B,GAAG,KAAK,CAAC;QACtC,oBAAe,GAAG,KAAK,CAAC;QACxB,sBAAiB,GAAG,IAAI,qCAAiB,EAAE,CAAC;IA0D9C,CAAC;IAxDC,IAAI,GAAG;QACL,OAAO,IAAA,yCAAmB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAEK,mBAAmB,CACvB,SAA+B;;YAE/B,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAChD,SAAS,EACT,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAC/C,CAAC;QACJ,CAAC;KAAA;IAED,sBAAsB;QACpB,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC;IAEc,OAAO;;YACpB,MAAM,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC;KAAA;IAEc,SAAS;;YACtB,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,CAAC;KAAA;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IAEK,kBAAkB;;YACtB,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAE;gBAC/B,OAAO,IAAI,CAAC,iBAAiB,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACrE;YAED,OAAO;QACT,CAAC;KAAA;IAEK,WAAW,CAAC,aAAqB;;YACrC,OAAO,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9E,CAAC;KAAA;IAEK,cAAc,CAAC,aAAqB;;YACxC,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QACzC,CAAC;KAAA;IAED,wBAAwB;QACtB,OAAO,KAAK,CAAC;IACf,CAAC;IAEK,aAAa;;YACjB,MAAM,IAAI,qBAAY,CAAC,eAAe,CAAC,CAAC;QAC1C,CAAC;KAAA;IAEK,oBAAoB;;YACxB,OAAO,IAAI,CAAC,iBAAiB,CAAC,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxE,CAAC;KAAA;CACF;AAED,kBAAe,cAAc,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Chain, WalletConnector, WalletEventListeners } from '
|
|
1
|
+
import { Chain, WalletConnector, WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
|
|
2
2
|
import { SolProvider } from './solProvider';
|
|
3
3
|
import { SolProviderHelper } from './solProviderHelper';
|
|
4
4
|
declare class Glow extends SolProvider implements WalletConnector {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glow.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/solana/glow.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"glow.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/solana/glow.ts"],"names":[],"mappings":";;;AAMA,yCAA4C;AAC5C,yEAAsE;AAEtE,+CAA4C;AAC5C,2DAAwD;AAExD,MAAM,IAAK,SAAQ,yBAAW;IAA9B;;QACE,SAAI,GAAG,MAAM,CAAC;QAEd,oBAAe,GAAY,CAAC,KAAK,CAAC,CAAC;QAEnC,mBAAc,GAAU,KAAK,CAAC;QAE9B,wBAAmB,GAAG,KAAK,CAAC;QAC5B,kCAA6B,GAAG,KAAK,CAAC;QACtC,oBAAe,GAAG,KAAK,CAAC;QACxB,sBAAiB,GAAG,IAAI,qCAAiB,EAAE,CAAC;IAsD9C,CAAC;IApDC,IAAI,GAAG;QACL,OAAO,IAAA,yCAAmB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAEK,mBAAmB,CACvB,SAA+B;;YAE/B,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAChD,SAAS,EACT,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAC/C,CAAC;QACJ,CAAC;KAAA;IAED,sBAAsB;QACpB,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC;IAEc,OAAO;;YACpB,MAAM,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC;KAAA;IAEc,SAAS;;YACtB,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,CAAC;KAAA;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IAEK,kBAAkB;;YACtB,OAAO,IAAI,CAAC,iBAAiB,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtE,CAAC;KAAA;IAEK,WAAW,CAAC,aAAqB;;YACrC,OAAO,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9E,CAAC;KAAA;IAEK,cAAc,CAAC,aAAqB;;YACxC,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QACzC,CAAC;KAAA;IAED,wBAAwB;QACtB,OAAO,KAAK,CAAC;IACf,CAAC;IAEK,aAAa;;YACjB,MAAM,IAAI,qBAAY,CAAC,eAAe,CAAC,CAAC;QAC1C,CAAC;KAAA;IAEK,oBAAoB;;YACxB,OAAO,IAAI,CAAC,iBAAiB,CAAC,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxE,CAAC;KAAA;CACF;AAED,kBAAe,IAAI,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Chain, WalletConnector, WalletEventListeners } from '
|
|
1
|
+
import { Chain, WalletConnector, WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
|
|
2
2
|
import { ISolana } from '../window';
|
|
3
3
|
import { SolProvider } from './solProvider';
|
|
4
4
|
import { SolProviderHelper } from './solProviderHelper';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phantom.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/solana/phantom.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"phantom.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/solana/phantom.ts"],"names":[],"mappings":"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"}
|