@dynamic-labs/multi-wallet 0.17.0-RC.5 → 0.17.0-RC.7

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.
Files changed (69) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/package.json +7 -4
  3. package/src/index.cjs +0 -5
  4. package/src/index.d.ts +0 -2
  5. package/src/index.js +0 -1
  6. package/src/multi-wallet.cjs +45 -76
  7. package/src/multi-wallet.js +45 -76
  8. package/src/types.d.ts +9 -28
  9. package/src/utils/findProvider/findProvider.cjs +7 -0
  10. package/src/utils/findProvider/findProvider.d.ts +2 -0
  11. package/src/utils/findProvider/findProvider.js +3 -0
  12. package/src/utils/findProvider/index.d.ts +1 -0
  13. package/src/utils/message.d.ts +2 -2
  14. package/src/utils/walletConnect.cjs +21 -20
  15. package/src/utils/walletConnect.d.ts +4 -3
  16. package/src/utils/walletConnect.js +21 -20
  17. package/src/wallets/clients/coinbase/types.d.ts +2 -2
  18. package/src/wallets/clients/walletConnect/walletConnect.cjs +8 -13
  19. package/src/wallets/clients/walletConnect/walletConnect.js +8 -13
  20. package/src/wallets/cosmos/KeplrWalletConnect.cjs +7 -6
  21. package/src/wallets/cosmos/KeplrWalletConnect.d.ts +3 -3
  22. package/src/wallets/cosmos/KeplrWalletConnect.js +7 -6
  23. package/src/wallets/cosmos/KeplrWalletConnector.cjs +9 -2
  24. package/src/wallets/cosmos/KeplrWalletConnector.d.ts +5 -3
  25. package/src/wallets/cosmos/KeplrWalletConnector.js +9 -2
  26. package/src/wallets/cosmos/getKeplrConnector.d.ts +2 -2
  27. package/src/wallets/ethereum/BloctoEvm.cjs +7 -7
  28. package/src/wallets/ethereum/BloctoEvm.d.ts +2 -5
  29. package/src/wallets/ethereum/BloctoEvm.js +7 -7
  30. package/src/wallets/ethereum/EthWalletConnector.cjs +27 -11
  31. package/src/wallets/ethereum/EthWalletConnector.d.ts +7 -4
  32. package/src/wallets/ethereum/EthWalletConnector.js +27 -11
  33. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.cjs +5 -4
  34. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.d.ts +3 -3
  35. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.js +5 -4
  36. package/src/wallets/ethereum/MagicConnector/MagicSocialWalletConnector/MagicSocialWalletConnector.cjs +1 -0
  37. package/src/wallets/ethereum/MagicConnector/MagicSocialWalletConnector/MagicSocialWalletConnector.js +1 -0
  38. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.cjs +4 -2
  39. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.d.ts +4 -3
  40. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.js +4 -2
  41. package/src/wallets/ethereum/coinbase.cjs +3 -2
  42. package/src/wallets/ethereum/coinbase.d.ts +6 -7
  43. package/src/wallets/ethereum/coinbase.js +4 -3
  44. package/src/wallets/ethereum/evm-network.cjs +2 -2
  45. package/src/wallets/ethereum/evm-network.d.ts +1 -17
  46. package/src/wallets/ethereum/evm-network.js +2 -2
  47. package/src/wallets/ethereum/fortmatic.cjs +3 -2
  48. package/src/wallets/ethereum/fortmatic.d.ts +5 -6
  49. package/src/wallets/ethereum/fortmatic.js +4 -3
  50. package/src/wallets/ethereum/meta-mask.d.ts +1 -1
  51. package/src/wallets/getMobileOrInjectedWallet.cjs +5 -9
  52. package/src/wallets/getMobileOrInjectedWallet.d.ts +5 -4
  53. package/src/wallets/getMobileOrInjectedWallet.js +5 -9
  54. package/src/wallets/getWalletConnectConnector.cjs +7 -10
  55. package/src/wallets/getWalletConnectConnector.d.ts +2 -5
  56. package/src/wallets/getWalletConnectConnector.js +7 -10
  57. package/src/wallets/solana/solWalletConnector.cjs +22 -4
  58. package/src/wallets/solana/solWalletConnector.d.ts +8 -5
  59. package/src/wallets/solana/solWalletConnector.js +22 -4
  60. package/src/wallets/walletConnect/walletConnect.cjs +3 -2
  61. package/src/wallets/walletConnect/walletConnect.d.ts +6 -6
  62. package/src/wallets/walletConnect/walletConnect.js +4 -3
  63. package/src/wallets/walletConnect/walletConnectV2.cjs +1 -1
  64. package/src/wallets/walletConnect/walletConnectV2.d.ts +7 -7
  65. package/src/wallets/walletConnect/walletConnectV2.js +1 -1
  66. package/src/wallets/walletConnect/zerion.d.ts +2 -4
  67. package/src/rpcProviders.cjs +0 -76
  68. package/src/rpcProviders.d.ts +0 -5
  69. package/src/rpcProviders.js +0 -69
@@ -16,8 +16,9 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
16
16
  var WalletConnectProvider__default = /*#__PURE__*/_interopDefaultLegacy(WalletConnectProvider);
17
17
 
18
18
  class WalletConnect extends EthWalletConnector.EthWalletConnector {
19
- constructor({ walletName, evmNetworks, }) {
20
- super({ evmNetworks });
19
+ constructor(_a) {
20
+ var { walletName } = _a, props = tslib.__rest(_a, ["walletName"]);
21
+ super(props);
21
22
  this.supportedChains = ['EVM', 'ETH'];
22
23
  this.connectedChain = 'EVM';
23
24
  this.canConnectViaQrCode = true;
@@ -1,8 +1,11 @@
1
1
  import Client from '@walletconnect/client';
2
2
  import { ethers } from 'ethers';
3
3
  import { Chain, FetchPublicAddressOpts, WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
4
- import { EthWalletConnector } from '../ethereum/EthWalletConnector';
5
- import { EvmNetwork } from '../ethereum/evm-network';
4
+ import { EvmNetwork } from '@dynamic-labs/types';
5
+ import { EthWalletConnector, EthWalletConnectorOpts } from '../ethereum/EthWalletConnector';
6
+ export type WalletConnectOpts = EthWalletConnectorOpts & {
7
+ walletName: string;
8
+ };
6
9
  declare class WalletConnect extends EthWalletConnector {
7
10
  supportedChains: Chain[];
8
11
  connectedChain: Chain;
@@ -12,10 +15,7 @@ declare class WalletConnect extends EthWalletConnector {
12
15
  switchNetworkOnlyFromWallet: boolean;
13
16
  client?: Client;
14
17
  clientOptions?: any;
15
- constructor({ walletName, evmNetworks, }: {
16
- evmNetworks: EvmNetwork[];
17
- walletName: string;
18
- });
18
+ constructor({ walletName, ...props }: WalletConnectOpts);
19
19
  getClient(): Client;
20
20
  supportsNetworkSwitching(): boolean;
21
21
  setupEventListeners(listeners: WalletEventListeners): () => void;
@@ -1,4 +1,4 @@
1
- import { __awaiter } from 'tslib';
1
+ import { __rest, __awaiter } from 'tslib';
2
2
  import WalletConnectProvider from '@walletconnect/ethereum-provider';
3
3
  import { ethers } from 'ethers';
4
4
  import { getWalletBookWallet } from '@dynamic-labs/wallet-book';
@@ -10,8 +10,9 @@ import { normalizeWalletName } from '../../utils/normalizeWalletName/normalizeWa
10
10
  import { DynamicError } from '../../errors.js';
11
11
 
12
12
  class WalletConnect extends EthWalletConnector {
13
- constructor({ walletName, evmNetworks, }) {
14
- super({ evmNetworks });
13
+ constructor(_a) {
14
+ var { walletName } = _a, props = __rest(_a, ["walletName"]);
15
+ super(props);
15
16
  this.supportedChains = ['EVM', 'ETH'];
16
17
  this.connectedChain = 'EVM';
17
18
  this.canConnectViaQrCode = true;
@@ -32,7 +32,7 @@ const performPlatformSpecificConnectionMethod = (uri, metadata, opts) => {
32
32
  const sessionTopicKey = (walletName) => `dynamic-wc2-session-topic-${walletName}`;
33
33
  class WalletConnectV2 extends EthWalletConnector.EthWalletConnector {
34
34
  constructor(opts) {
35
- super({ evmNetworks: opts.evmNetworks });
35
+ super(opts);
36
36
  this.supportedChains = ['EVM', 'ETH'];
37
37
  this.connectedChain = 'EVM';
38
38
  this.canConnectViaQrCode = true;
@@ -1,8 +1,12 @@
1
1
  import { ethers } from 'ethers';
2
2
  import type { SessionTypes } from '@walletconnect/types';
3
3
  import { Chain, FetchPublicAddressOpts, WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
4
- import { EvmNetwork } from '../ethereum/evm-network';
5
- import { EthWalletConnector } from '../ethereum/EthWalletConnector';
4
+ import { EvmNetwork } from '@dynamic-labs/types';
5
+ import { EthWalletConnector, EthWalletConnectorOpts } from '../ethereum/EthWalletConnector';
6
+ export type WalletConnectorV2Opts = EthWalletConnectorOpts & {
7
+ projectId?: string;
8
+ walletName: string;
9
+ };
6
10
  declare class WalletConnectV2 extends EthWalletConnector {
7
11
  supportedChains: Chain[];
8
12
  connectedChain: Chain;
@@ -13,11 +17,7 @@ declare class WalletConnectV2 extends EthWalletConnector {
13
17
  private static provider;
14
18
  private static createSession;
15
19
  private projectId?;
16
- constructor(opts: {
17
- evmNetworks: EvmNetwork[];
18
- projectId?: string;
19
- walletName: string;
20
- });
20
+ constructor(opts: WalletConnectorV2Opts);
21
21
  private initProvider;
22
22
  init(): Promise<void>;
23
23
  get sessionTopicKey(): string;
@@ -26,7 +26,7 @@ const performPlatformSpecificConnectionMethod = (uri, metadata, opts) => {
26
26
  const sessionTopicKey = (walletName) => `dynamic-wc2-session-topic-${walletName}`;
27
27
  class WalletConnectV2 extends EthWalletConnector {
28
28
  constructor(opts) {
29
- super({ evmNetworks: opts.evmNetworks });
29
+ super(opts);
30
30
  this.supportedChains = ['EVM', 'ETH'];
31
31
  this.connectedChain = 'EVM';
32
32
  this.canConnectViaQrCode = true;
@@ -1,8 +1,6 @@
1
- import { EvmNetwork } from '../ethereum/evm-network';
1
+ import { EthWalletConnectorOpts } from '../ethereum/EthWalletConnector';
2
2
  import WalletConnect from '.';
3
3
  declare class TrustWalletConnect extends WalletConnect {
4
- constructor({ evmNetworks }: {
5
- evmNetworks: EvmNetwork[];
6
- });
4
+ constructor(props: EthWalletConnectorOpts);
7
5
  }
8
6
  export default TrustWalletConnect;
@@ -1,76 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var web3_js = require('@solana/web3.js');
6
- var ethers = require('ethers');
7
-
8
- const getRpcProviders = (configurations) => {
9
- const rpcProviders = {};
10
- if (configurations === null || configurations === void 0 ? void 0 : configurations.evm) {
11
- rpcProviders.evm = configurations.evm.map((network) => {
12
- var _a;
13
- const rpcUrl = ((_a = network.privateCustomerRpcUrls) === null || _a === void 0 ? void 0 : _a[0]) || network.rpcUrls[0];
14
- const provider = new ethers.ethers.providers.JsonRpcProvider(rpcUrl, network.chainId);
15
- return {
16
- chainId: network.chainId,
17
- chainName: network.chainName,
18
- provider,
19
- };
20
- });
21
- }
22
- if (configurations === null || configurations === void 0 ? void 0 : configurations.solana) {
23
- rpcProviders.solana = configurations.solana.map((network) => {
24
- var _a;
25
- const rpcUrl = ((_a = network.privateCustomerRpcUrls) === null || _a === void 0 ? void 0 : _a[0]) || network.rpcUrls[0];
26
- const provider = new web3_js.Connection(rpcUrl);
27
- return {
28
- chainId: parseInt(network.chainId),
29
- chainName: network.name,
30
- provider,
31
- };
32
- });
33
- }
34
- if (Object.keys(rpcProviders).length === 0) {
35
- return undefined;
36
- }
37
- return rpcProviders;
38
- };
39
- const getEvmDefaultRpcProvider = (configurations) => {
40
- const rpcProviders = getRpcProviders(configurations);
41
- if (!rpcProviders) {
42
- return undefined;
43
- }
44
- if (!rpcProviders.evm) {
45
- return undefined;
46
- }
47
- const defaultProvider = rpcProviders.evm.find((provider) => provider.chainId === 1);
48
- return defaultProvider;
49
- };
50
- const getSolanaDefaultRpcProvider = (configurations) => {
51
- const rpcProviders = getRpcProviders(configurations);
52
- if (!rpcProviders) {
53
- return undefined;
54
- }
55
- if (!rpcProviders.solana) {
56
- return undefined;
57
- }
58
- const defaultProvider = rpcProviders.solana.find((provider) => provider.chainId === 101);
59
- return defaultProvider;
60
- };
61
- const getEvmRpcProviderByChainId = (configurations, chainId) => {
62
- const rpcProviders = getRpcProviders(configurations);
63
- if (!rpcProviders) {
64
- return undefined;
65
- }
66
- if (rpcProviders.evm) {
67
- const evmRpcProvider = rpcProviders.evm.find((rpcProvider) => rpcProvider.chainId === chainId);
68
- return evmRpcProvider;
69
- }
70
- return undefined;
71
- };
72
-
73
- exports.getEvmDefaultRpcProvider = getEvmDefaultRpcProvider;
74
- exports.getEvmRpcProviderByChainId = getEvmRpcProviderByChainId;
75
- exports.getRpcProviders = getRpcProviders;
76
- exports.getSolanaDefaultRpcProvider = getSolanaDefaultRpcProvider;
@@ -1,5 +0,0 @@
1
- import { EvmRpcProvider, NetworkConfigurationMap, RpcProviders, SolanaRpcProvider } from './types';
2
- export declare const getRpcProviders: (configurations: NetworkConfigurationMap) => RpcProviders | undefined;
3
- export declare const getEvmDefaultRpcProvider: (configurations: NetworkConfigurationMap) => EvmRpcProvider | undefined;
4
- export declare const getSolanaDefaultRpcProvider: (configurations: NetworkConfigurationMap) => SolanaRpcProvider | undefined;
5
- export declare const getEvmRpcProviderByChainId: (configurations: NetworkConfigurationMap, chainId: number) => EvmRpcProvider | undefined;
@@ -1,69 +0,0 @@
1
- import { Connection } from '@solana/web3.js';
2
- import { ethers } from 'ethers';
3
-
4
- const getRpcProviders = (configurations) => {
5
- const rpcProviders = {};
6
- if (configurations === null || configurations === void 0 ? void 0 : configurations.evm) {
7
- rpcProviders.evm = configurations.evm.map((network) => {
8
- var _a;
9
- const rpcUrl = ((_a = network.privateCustomerRpcUrls) === null || _a === void 0 ? void 0 : _a[0]) || network.rpcUrls[0];
10
- const provider = new ethers.providers.JsonRpcProvider(rpcUrl, network.chainId);
11
- return {
12
- chainId: network.chainId,
13
- chainName: network.chainName,
14
- provider,
15
- };
16
- });
17
- }
18
- if (configurations === null || configurations === void 0 ? void 0 : configurations.solana) {
19
- rpcProviders.solana = configurations.solana.map((network) => {
20
- var _a;
21
- const rpcUrl = ((_a = network.privateCustomerRpcUrls) === null || _a === void 0 ? void 0 : _a[0]) || network.rpcUrls[0];
22
- const provider = new Connection(rpcUrl);
23
- return {
24
- chainId: parseInt(network.chainId),
25
- chainName: network.name,
26
- provider,
27
- };
28
- });
29
- }
30
- if (Object.keys(rpcProviders).length === 0) {
31
- return undefined;
32
- }
33
- return rpcProviders;
34
- };
35
- const getEvmDefaultRpcProvider = (configurations) => {
36
- const rpcProviders = getRpcProviders(configurations);
37
- if (!rpcProviders) {
38
- return undefined;
39
- }
40
- if (!rpcProviders.evm) {
41
- return undefined;
42
- }
43
- const defaultProvider = rpcProviders.evm.find((provider) => provider.chainId === 1);
44
- return defaultProvider;
45
- };
46
- const getSolanaDefaultRpcProvider = (configurations) => {
47
- const rpcProviders = getRpcProviders(configurations);
48
- if (!rpcProviders) {
49
- return undefined;
50
- }
51
- if (!rpcProviders.solana) {
52
- return undefined;
53
- }
54
- const defaultProvider = rpcProviders.solana.find((provider) => provider.chainId === 101);
55
- return defaultProvider;
56
- };
57
- const getEvmRpcProviderByChainId = (configurations, chainId) => {
58
- const rpcProviders = getRpcProviders(configurations);
59
- if (!rpcProviders) {
60
- return undefined;
61
- }
62
- if (rpcProviders.evm) {
63
- const evmRpcProvider = rpcProviders.evm.find((rpcProvider) => rpcProvider.chainId === chainId);
64
- return evmRpcProvider;
65
- }
66
- return undefined;
67
- };
68
-
69
- export { getEvmDefaultRpcProvider, getEvmRpcProviderByChainId, getRpcProviders, getSolanaDefaultRpcProvider };