@dynamic-labs/multi-wallet 0.17.0-RC.0 → 0.17.0-RC.1

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 (112) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/package.json +3 -3
  3. package/src/index.cjs +2 -2
  4. package/src/index.d.ts +1 -1
  5. package/src/index.js +1 -1
  6. package/src/multi-wallet.cjs +5 -8
  7. package/src/multi-wallet.js +5 -8
  8. package/src/utils/isEmailOTPWalletConnector/isEmailOTPWalletConnector.d.ts +2 -2
  9. package/src/utils/isEmailWalletConnector/isEmailWalletConnector.d.ts +2 -2
  10. package/src/utils/message.cjs +1 -1
  11. package/src/utils/message.js +1 -1
  12. package/src/utils/walletConnect.cjs +1 -1
  13. package/src/wallets/algorand/{myalgo.cjs → MyAlgoWalletConnector.cjs} +4 -42
  14. package/src/wallets/algorand/MyAlgoWalletConnector.d.ts +21 -0
  15. package/src/wallets/algorand/{myalgo.js → MyAlgoWalletConnector.js} +4 -42
  16. package/src/wallets/clients/coinbase/coinbase.cjs +2 -6
  17. package/src/wallets/clients/coinbase/coinbase.js +1 -1
  18. package/src/wallets/cosmos/{keplrWalletConnect.cjs → KeplrWalletConnect.cjs} +9 -25
  19. package/src/wallets/cosmos/{keplrWalletConnect.d.ts → KeplrWalletConnect.d.ts} +6 -14
  20. package/src/wallets/cosmos/{keplrWalletConnect.js → KeplrWalletConnect.js} +9 -25
  21. package/src/wallets/cosmos/{keplr.cjs → KeplrWalletConnector.cjs} +5 -17
  22. package/src/wallets/cosmos/{keplr.d.ts → KeplrWalletConnector.d.ts} +5 -13
  23. package/src/wallets/cosmos/{keplr.js → KeplrWalletConnector.js} +5 -17
  24. package/src/wallets/cosmos/getKeplrConnector.cjs +6 -6
  25. package/src/wallets/cosmos/getKeplrConnector.d.ts +3 -3
  26. package/src/wallets/cosmos/getKeplrConnector.js +3 -3
  27. package/src/wallets/cosmos/index.d.ts +1 -1
  28. package/src/wallets/ethereum/BloctoEvm.cjs +2 -31
  29. package/src/wallets/ethereum/BloctoEvm.d.ts +4 -13
  30. package/src/wallets/ethereum/BloctoEvm.js +2 -31
  31. package/src/wallets/ethereum/{ethProvider.cjs → EthWalletConnector.cjs} +38 -18
  32. package/src/wallets/ethereum/{ethProvider.d.ts → EthWalletConnector.d.ts} +4 -4
  33. package/src/wallets/ethereum/{ethProvider.js → EthWalletConnector.js} +38 -18
  34. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/EmailMagicWalletConnector.cjs +9 -4
  35. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/EmailMagicWalletConnector.d.ts +5 -5
  36. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/EmailMagicWalletConnector.js +9 -4
  37. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/EmailOTPMagicWalletConnector.cjs +1 -1
  38. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/EmailOTPMagicWalletConnector.d.ts +2 -2
  39. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/EmailOTPMagicWalletConnector.js +1 -1
  40. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.cjs +1 -2
  41. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.d.ts +2 -3
  42. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.js +1 -2
  43. package/src/wallets/ethereum/MagicConnector/MagicSocialWalletConnector/MagicSocialWalletConnector.cjs +0 -1
  44. package/src/wallets/ethereum/MagicConnector/MagicSocialWalletConnector/MagicSocialWalletConnector.js +0 -1
  45. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.cjs +6 -13
  46. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.d.ts +3 -10
  47. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.js +6 -13
  48. package/src/wallets/ethereum/coinbase.cjs +2 -18
  49. package/src/wallets/ethereum/coinbase.d.ts +3 -8
  50. package/src/wallets/ethereum/coinbase.js +2 -18
  51. package/src/wallets/ethereum/ethProviderHelper.cjs +16 -9
  52. package/src/wallets/ethereum/ethProviderHelper.js +16 -9
  53. package/src/wallets/ethereum/fortmatic.cjs +2 -25
  54. package/src/wallets/ethereum/fortmatic.d.ts +3 -11
  55. package/src/wallets/ethereum/fortmatic.js +2 -25
  56. package/src/wallets/ethereum/meta-mask.cjs +2 -9
  57. package/src/wallets/ethereum/meta-mask.d.ts +3 -7
  58. package/src/wallets/ethereum/meta-mask.js +2 -9
  59. package/src/wallets/flow/{flow-provider.cjs → FlowWalletConnector.cjs} +6 -33
  60. package/src/wallets/flow/{flow-provider.d.ts → FlowWalletConnector.d.ts} +4 -11
  61. package/src/wallets/flow/{flow-provider.js → FlowWalletConnector.js} +6 -33
  62. package/src/wallets/flow/blocto.cjs +2 -10
  63. package/src/wallets/flow/blocto.d.ts +2 -8
  64. package/src/wallets/flow/blocto.js +2 -10
  65. package/src/wallets/flow/dapper.cjs +2 -10
  66. package/src/wallets/flow/dapper.d.ts +2 -8
  67. package/src/wallets/flow/dapper.js +2 -10
  68. package/src/wallets/flow/lilico.cjs +2 -11
  69. package/src/wallets/flow/lilico.d.ts +2 -9
  70. package/src/wallets/flow/lilico.js +2 -11
  71. package/src/wallets/getMobileOrInjectedWallet.cjs +1 -1
  72. package/src/wallets/getMobileOrInjectedWallet.d.ts +1 -3
  73. package/src/wallets/getWalletConnectConnector.cjs +3 -2
  74. package/src/wallets/getWalletConnectConnector.d.ts +2 -1
  75. package/src/wallets/getWalletConnectConnector.js +2 -1
  76. package/src/wallets/solana/CoinbaseSolana.cjs +2 -25
  77. package/src/wallets/solana/CoinbaseSolana.d.ts +3 -12
  78. package/src/wallets/solana/CoinbaseSolana.js +2 -25
  79. package/src/wallets/solana/glow.cjs +2 -25
  80. package/src/wallets/solana/glow.d.ts +3 -12
  81. package/src/wallets/solana/glow.js +2 -25
  82. package/src/wallets/solana/phantom.cjs +2 -25
  83. package/src/wallets/solana/phantom.d.ts +3 -12
  84. package/src/wallets/solana/phantom.js +2 -25
  85. package/src/wallets/solana/slope.cjs +2 -31
  86. package/src/wallets/solana/slope.d.ts +2 -14
  87. package/src/wallets/solana/slope.js +2 -31
  88. package/src/wallets/solana/{solProvider.cjs → solWalletConnector.cjs} +6 -11
  89. package/src/wallets/solana/{solProvider.d.ts → solWalletConnector.d.ts} +4 -4
  90. package/src/wallets/solana/{solProvider.js → solWalletConnector.js} +6 -11
  91. package/src/wallets/solana/solflare.cjs +2 -31
  92. package/src/wallets/solana/solflare.d.ts +2 -14
  93. package/src/wallets/solana/solflare.js +2 -31
  94. package/src/wallets/starknet/argentx.cjs +2 -2
  95. package/src/wallets/starknet/argentx.d.ts +1 -1
  96. package/src/wallets/starknet/argentx.js +2 -2
  97. package/src/wallets/starknet/braavos.cjs +2 -2
  98. package/src/wallets/starknet/braavos.d.ts +1 -1
  99. package/src/wallets/starknet/braavos.js +2 -2
  100. package/src/wallets/starknet/{starknetProvider.cjs → starknetWalletConnector.cjs} +4 -34
  101. package/src/wallets/starknet/{starknetProvider.d.ts → starknetWalletConnector.d.ts} +3 -14
  102. package/src/wallets/starknet/{starknetProvider.js → starknetWalletConnector.js} +4 -34
  103. package/src/wallets/walletConnect/walletConnect.cjs +2 -19
  104. package/src/wallets/walletConnect/walletConnect.d.ts +3 -8
  105. package/src/wallets/walletConnect/walletConnect.js +2 -19
  106. package/src/wallets/walletConnect/walletConnectV2.cjs +69 -83
  107. package/src/wallets/walletConnect/walletConnectV2.d.ts +10 -12
  108. package/src/wallets/walletConnect/walletConnectV2.js +69 -80
  109. package/src/wallets/algorand/myalgo.d.ts +0 -36
  110. package/src/wallets/initializeWalletProviders.cjs +0 -14
  111. package/src/wallets/initializeWalletProviders.d.ts +0 -6
  112. package/src/wallets/initializeWalletProviders.js +0 -10
@@ -3,37 +3,25 @@
3
3
  var tslib = require('tslib');
4
4
  var ethers = require('ethers');
5
5
  var FortmaticClient = require('fortmatic');
6
- var normalizeWalletName = require('../../utils/normalizeWalletName/normalizeWalletName.cjs');
7
6
  var errors = require('../../errors.cjs');
8
7
  var logger = require('../../utils/logger.cjs');
9
8
  var ethProviderHelper = require('./ethProviderHelper.cjs');
10
- var ethProvider = require('./ethProvider.cjs');
9
+ var EthWalletConnector = require('./EthWalletConnector.cjs');
11
10
 
12
11
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
12
 
14
13
  var FortmaticClient__default = /*#__PURE__*/_interopDefaultLegacy(FortmaticClient);
15
14
 
16
- class Fortmatic extends ethProvider.EthProvider {
15
+ class Fortmatic extends EthWalletConnector.EthWalletConnector {
17
16
  constructor({ evmNetworks, apiKey, }) {
18
17
  super({ evmNetworks });
19
18
  this.name = 'Fortmatic';
20
19
  this.supportedChains = ['ETH', 'EVM'];
21
20
  this.connectedChain = 'EVM';
22
- this.canConnectViaQrCode = false;
23
21
  this.canConnectViaCustodialService = true;
24
- this.isWalletConnect = false;
25
22
  this.ethProviderHelper = new ethProviderHelper.EthProviderHelper();
26
23
  this.apiKey = apiKey;
27
24
  }
28
- get key() {
29
- return normalizeWalletName.normalizeWalletName(this.name);
30
- }
31
- setupEventListeners() {
32
- return;
33
- }
34
- teardownEventListeners() {
35
- return;
36
- }
37
25
  getFortmaticProvider() {
38
26
  const fm = new FortmaticClient__default["default"](this.apiKey);
39
27
  return fm.getProvider();
@@ -42,14 +30,6 @@ class Fortmatic extends ethProvider.EthProvider {
42
30
  const provider = new ethers.ethers.providers.Web3Provider(this.getFortmaticProvider());
43
31
  return provider;
44
32
  }
45
- isInstalledOnBrowser() {
46
- return false;
47
- }
48
- connect() {
49
- return tslib.__awaiter(this, void 0, void 0, function* () {
50
- yield this.fetchPublicAddress();
51
- });
52
- }
53
33
  fetchPublicAddress() {
54
34
  var _a;
55
35
  return tslib.__awaiter(this, void 0, void 0, function* () {
@@ -85,9 +65,6 @@ class Fortmatic extends ethProvider.EthProvider {
85
65
  fm.user.logout();
86
66
  });
87
67
  }
88
- supportsNetworkSwitching() {
89
- return false;
90
- }
91
68
  providerSwitchNetwork() {
92
69
  return tslib.__awaiter(this, void 0, void 0, function* () {
93
70
  throw new errors.DynamicError('Not supported');
@@ -1,15 +1,13 @@
1
1
  import { ethers } from 'ethers';
2
- import { Chain, WalletConnector } from '@dynamic-labs/wallet-connector-core';
2
+ import { Chain } from '@dynamic-labs/wallet-connector-core';
3
3
  import { EthProviderHelper } from './ethProviderHelper';
4
- import { EthProvider } from './ethProvider';
4
+ import { EthWalletConnector } from './EthWalletConnector';
5
5
  import { EvmNetwork } from './evm-network';
6
- declare class Fortmatic extends EthProvider implements WalletConnector {
6
+ declare class Fortmatic extends EthWalletConnector {
7
7
  name: string;
8
8
  supportedChains: Chain[];
9
9
  connectedChain: Chain;
10
- canConnectViaQrCode: boolean;
11
10
  canConnectViaCustodialService: boolean;
12
- isWalletConnect: boolean;
13
11
  ethProviderHelper: EthProviderHelper;
14
12
  publicAddress: string | undefined;
15
13
  private apiKey;
@@ -17,18 +15,12 @@ declare class Fortmatic extends EthProvider implements WalletConnector {
17
15
  apiKey: string;
18
16
  evmNetworks: EvmNetwork[];
19
17
  });
20
- get key(): string;
21
- setupEventListeners(): void;
22
- teardownEventListeners(): void;
23
18
  getFortmaticProvider(): import("fortmatic/dist/cjs/src/core/fm-provider").FmProvider;
24
19
  getWeb3Provider(): ethers.providers.Web3Provider;
25
- isInstalledOnBrowser(): boolean;
26
- connect(): Promise<void>;
27
20
  fetchPublicAddress(): Promise<string | undefined>;
28
21
  signMessage(messageToSign: string): Promise<string | undefined>;
29
22
  proveOwnership(messageToSign: string): Promise<string | undefined>;
30
23
  endSession(): Promise<void>;
31
- supportsNetworkSwitching(): boolean;
32
24
  providerSwitchNetwork(): Promise<void>;
33
25
  }
34
26
  export default Fortmatic;
@@ -1,33 +1,21 @@
1
1
  import { __awaiter } from 'tslib';
2
2
  import { ethers } from 'ethers';
3
3
  import FortmaticClient from 'fortmatic';
4
- import { normalizeWalletName } from '../../utils/normalizeWalletName/normalizeWalletName.js';
5
4
  import { DynamicError } from '../../errors.js';
6
5
  import { logger } from '../../utils/logger.js';
7
6
  import { EthProviderHelper } from './ethProviderHelper.js';
8
- import { EthProvider } from './ethProvider.js';
7
+ import { EthWalletConnector } from './EthWalletConnector.js';
9
8
 
10
- class Fortmatic extends EthProvider {
9
+ class Fortmatic extends EthWalletConnector {
11
10
  constructor({ evmNetworks, apiKey, }) {
12
11
  super({ evmNetworks });
13
12
  this.name = 'Fortmatic';
14
13
  this.supportedChains = ['ETH', 'EVM'];
15
14
  this.connectedChain = 'EVM';
16
- this.canConnectViaQrCode = false;
17
15
  this.canConnectViaCustodialService = true;
18
- this.isWalletConnect = false;
19
16
  this.ethProviderHelper = new EthProviderHelper();
20
17
  this.apiKey = apiKey;
21
18
  }
22
- get key() {
23
- return normalizeWalletName(this.name);
24
- }
25
- setupEventListeners() {
26
- return;
27
- }
28
- teardownEventListeners() {
29
- return;
30
- }
31
19
  getFortmaticProvider() {
32
20
  const fm = new FortmaticClient(this.apiKey);
33
21
  return fm.getProvider();
@@ -36,14 +24,6 @@ class Fortmatic extends EthProvider {
36
24
  const provider = new ethers.providers.Web3Provider(this.getFortmaticProvider());
37
25
  return provider;
38
26
  }
39
- isInstalledOnBrowser() {
40
- return false;
41
- }
42
- connect() {
43
- return __awaiter(this, void 0, void 0, function* () {
44
- yield this.fetchPublicAddress();
45
- });
46
- }
47
27
  fetchPublicAddress() {
48
28
  var _a;
49
29
  return __awaiter(this, void 0, void 0, function* () {
@@ -79,9 +59,6 @@ class Fortmatic extends EthProvider {
79
59
  fm.user.logout();
80
60
  });
81
61
  }
82
- supportsNetworkSwitching() {
83
- return false;
84
- }
85
62
  providerSwitchNetwork() {
86
63
  return __awaiter(this, void 0, void 0, function* () {
87
64
  throw new DynamicError('Not supported');
@@ -1,24 +1,17 @@
1
1
  'use strict';
2
2
 
3
3
  var tslib = require('tslib');
4
- var normalizeWalletName = require('../../utils/normalizeWalletName/normalizeWalletName.cjs');
5
4
  var ethProviderHelper = require('./ethProviderHelper.cjs');
6
- var ethProvider = require('./ethProvider.cjs');
5
+ var EthWalletConnector = require('./EthWalletConnector.cjs');
7
6
 
8
- class MetaMask extends ethProvider.EthProvider {
7
+ class MetaMask extends EthWalletConnector.EthWalletConnector {
9
8
  constructor() {
10
9
  super(...arguments);
11
10
  this.name = 'MetaMask';
12
11
  this.supportedChains = ['ETH', 'EVM'];
13
12
  this.connectedChain = 'EVM';
14
- this.canConnectViaQrCode = false;
15
- this.canConnectViaCustodialService = false;
16
- this.isWalletConnect = false;
17
13
  this.ethProviderHelper = new ethProviderHelper.EthProviderHelper();
18
14
  }
19
- get key() {
20
- return normalizeWalletName.normalizeWalletName(this.name);
21
- }
22
15
  setupEventListeners(listeners) {
23
16
  return this.ethProviderHelper._setupEventListeners(listeners, this.getWeb3Provider());
24
17
  }
@@ -1,18 +1,14 @@
1
1
  import { ethers } from 'ethers';
2
- import { Chain, WalletConnector, WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
2
+ import { Chain, WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
3
3
  import { EthProviderHelper } from './ethProviderHelper';
4
- import { EthProvider } from './ethProvider';
4
+ import { EthWalletConnector } from './EthWalletConnector';
5
5
  import { EvmNetwork } from './evm-network';
6
- declare class MetaMask extends EthProvider implements WalletConnector {
6
+ declare class MetaMask extends EthWalletConnector {
7
7
  name: string;
8
8
  supportedChains: Chain[];
9
9
  connectedChain: Chain;
10
- canConnectViaQrCode: boolean;
11
- canConnectViaCustodialService: boolean;
12
- isWalletConnect: boolean;
13
10
  ethProviderHelper: EthProviderHelper;
14
11
  publicAddress: string | undefined;
15
- get key(): string;
16
12
  setupEventListeners(listeners: WalletEventListeners): () => void;
17
13
  teardownEventListeners(): void;
18
14
  getWeb3Provider(): ethers.providers.Web3Provider | undefined;
@@ -1,22 +1,15 @@
1
1
  import { __awaiter } from 'tslib';
2
- import { normalizeWalletName } from '../../utils/normalizeWalletName/normalizeWalletName.js';
3
2
  import { EthProviderHelper } from './ethProviderHelper.js';
4
- import { EthProvider } from './ethProvider.js';
3
+ import { EthWalletConnector } from './EthWalletConnector.js';
5
4
 
6
- class MetaMask extends EthProvider {
5
+ class MetaMask extends EthWalletConnector {
7
6
  constructor() {
8
7
  super(...arguments);
9
8
  this.name = 'MetaMask';
10
9
  this.supportedChains = ['ETH', 'EVM'];
11
10
  this.connectedChain = 'EVM';
12
- this.canConnectViaQrCode = false;
13
- this.canConnectViaCustodialService = false;
14
- this.isWalletConnect = false;
15
11
  this.ethProviderHelper = new EthProviderHelper();
16
12
  }
17
- get key() {
18
- return normalizeWalletName(this.name);
19
- }
20
13
  setupEventListeners(listeners) {
21
14
  return this.ethProviderHelper._setupEventListeners(listeners, this.getWeb3Provider());
22
15
  }
@@ -4,6 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var tslib = require('tslib');
6
6
  var fcl = require('@onflow/fcl');
7
+ var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
7
8
  var errors = require('../../errors.cjs');
8
9
  var logger = require('../../utils/logger.cjs');
9
10
 
@@ -32,23 +33,14 @@ const LOCAL_STORAGE = {
32
33
  get: (key) => tslib.__awaiter(void 0, void 0, void 0, function* () { return get(key); }),
33
34
  put: (key, value) => tslib.__awaiter(void 0, void 0, void 0, function* () { return set(key, value); }),
34
35
  };
35
- class FlowProvider {
36
+ class FlowWalletConnector extends walletConnectorCore.WalletConnectorBase {
36
37
  constructor({ appName, appLogoUrl, }) {
37
- this.canConnectViaSocial = false;
38
+ super();
39
+ this.connectedChain = 'FLOW';
40
+ this.supportedChains = ['FLOW'];
38
41
  this.appName = appName;
39
42
  this.appLogoUrl = appLogoUrl;
40
43
  }
41
- isInstalledOnBrowser() {
42
- return false;
43
- }
44
- getNetwork() {
45
- return tslib.__awaiter(this, void 0, void 0, function* () {
46
- return undefined;
47
- });
48
- }
49
- teardownEventListeners() {
50
- return;
51
- }
52
44
  connect() {
53
45
  var _a;
54
46
  return tslib.__awaiter(this, void 0, void 0, function* () {
@@ -73,9 +65,6 @@ class FlowProvider {
73
65
  .put('flow.network', 'mainnet')
74
66
  .put('fcl.storage', LOCAL_STORAGE);
75
67
  }
76
- getDeepLink() {
77
- return undefined;
78
- }
79
68
  fetchPublicAddress() {
80
69
  return tslib.__awaiter(this, void 0, void 0, function* () {
81
70
  try {
@@ -120,19 +109,6 @@ class FlowProvider {
120
109
  return JSON.stringify(signedMessage);
121
110
  });
122
111
  }
123
- getWeb3Provider() {
124
- return undefined;
125
- }
126
- getRpcProvider() {
127
- return tslib.__awaiter(this, void 0, void 0, function* () {
128
- return;
129
- });
130
- }
131
- getSigner() {
132
- return tslib.__awaiter(this, void 0, void 0, function* () {
133
- return undefined;
134
- });
135
- }
136
112
  getBalance() {
137
113
  return tslib.__awaiter(this, void 0, void 0, function* () {
138
114
  this.baseConfig();
@@ -162,9 +138,6 @@ class FlowProvider {
162
138
  fcl.currentUser().unauthenticate();
163
139
  });
164
140
  }
165
- supportsNetworkSwitching() {
166
- return false;
167
- }
168
141
  switchNetwork() {
169
142
  return tslib.__awaiter(this, void 0, void 0, function* () {
170
143
  throw new errors.DynamicError('Not supported');
@@ -186,5 +159,5 @@ class FlowProvider {
186
159
  }
187
160
  }
188
161
 
189
- exports.FlowProvider = FlowProvider;
162
+ exports.FlowWalletConnector = FlowWalletConnector;
190
163
  exports.LOCAL_STORAGE = LOCAL_STORAGE;
@@ -1,35 +1,28 @@
1
- import { WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
1
+ import { Chain, WalletConnectorBase, WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
2
2
  export declare const LOCAL_STORAGE: {
3
3
  can: boolean;
4
4
  get: (key: string) => Promise<any>;
5
5
  put: (key: string, value: any) => Promise<void>;
6
6
  };
7
- export declare class FlowProvider {
8
- canConnectViaSocial: boolean;
7
+ export declare abstract class FlowWalletConnector extends WalletConnectorBase {
9
8
  protected appName?: string;
10
9
  protected appLogoUrl?: string;
11
10
  protected onAccountChange?: (address: string[]) => Promise<void>;
11
+ connectedChain: Chain;
12
+ supportedChains: Chain[];
12
13
  constructor({ appName, appLogoUrl, }: {
13
14
  appLogoUrl?: string;
14
15
  appName?: string;
15
16
  });
16
- isInstalledOnBrowser(): boolean;
17
- getNetwork(): Promise<number | undefined>;
18
- teardownEventListeners(): void;
19
17
  connect(): Promise<void>;
20
18
  setupEventListeners(listeners: WalletEventListeners): void;
21
19
  setupConfig(): void;
22
20
  baseConfig(): void;
23
- getDeepLink(): string | undefined;
24
21
  fetchPublicAddress(): Promise<string | undefined>;
25
22
  proveOwnership(messageToSign: string): Promise<string | undefined>;
26
23
  signMessage(messageToSign: string): Promise<string | undefined>;
27
- getWeb3Provider(): undefined;
28
- getRpcProvider(): Promise<void>;
29
- getSigner(): Promise<undefined>;
30
24
  getBalance(): Promise<string | undefined>;
31
25
  endSession(): Promise<void>;
32
- supportsNetworkSwitching(): boolean;
33
26
  switchNetwork(): Promise<void>;
34
27
  getConnectedAccounts(): Promise<string[]>;
35
28
  signDelay(): Promise<void>;
@@ -1,5 +1,6 @@
1
1
  import { __awaiter } from 'tslib';
2
2
  import { currentUser, config, send, script, decode } from '@onflow/fcl';
3
+ import { WalletConnectorBase } from '@dynamic-labs/wallet-connector-core';
3
4
  import { DynamicError } from '../../errors.js';
4
5
  import { logger } from '../../utils/logger.js';
5
6
 
@@ -28,23 +29,14 @@ const LOCAL_STORAGE = {
28
29
  get: (key) => __awaiter(void 0, void 0, void 0, function* () { return get(key); }),
29
30
  put: (key, value) => __awaiter(void 0, void 0, void 0, function* () { return set(key, value); }),
30
31
  };
31
- class FlowProvider {
32
+ class FlowWalletConnector extends WalletConnectorBase {
32
33
  constructor({ appName, appLogoUrl, }) {
33
- this.canConnectViaSocial = false;
34
+ super();
35
+ this.connectedChain = 'FLOW';
36
+ this.supportedChains = ['FLOW'];
34
37
  this.appName = appName;
35
38
  this.appLogoUrl = appLogoUrl;
36
39
  }
37
- isInstalledOnBrowser() {
38
- return false;
39
- }
40
- getNetwork() {
41
- return __awaiter(this, void 0, void 0, function* () {
42
- return undefined;
43
- });
44
- }
45
- teardownEventListeners() {
46
- return;
47
- }
48
40
  connect() {
49
41
  var _a;
50
42
  return __awaiter(this, void 0, void 0, function* () {
@@ -69,9 +61,6 @@ class FlowProvider {
69
61
  .put('flow.network', 'mainnet')
70
62
  .put('fcl.storage', LOCAL_STORAGE);
71
63
  }
72
- getDeepLink() {
73
- return undefined;
74
- }
75
64
  fetchPublicAddress() {
76
65
  return __awaiter(this, void 0, void 0, function* () {
77
66
  try {
@@ -116,19 +105,6 @@ class FlowProvider {
116
105
  return JSON.stringify(signedMessage);
117
106
  });
118
107
  }
119
- getWeb3Provider() {
120
- return undefined;
121
- }
122
- getRpcProvider() {
123
- return __awaiter(this, void 0, void 0, function* () {
124
- return;
125
- });
126
- }
127
- getSigner() {
128
- return __awaiter(this, void 0, void 0, function* () {
129
- return undefined;
130
- });
131
- }
132
108
  getBalance() {
133
109
  return __awaiter(this, void 0, void 0, function* () {
134
110
  this.baseConfig();
@@ -158,9 +134,6 @@ class FlowProvider {
158
134
  currentUser().unauthenticate();
159
135
  });
160
136
  }
161
- supportsNetworkSwitching() {
162
- return false;
163
- }
164
137
  switchNetwork() {
165
138
  return __awaiter(this, void 0, void 0, function* () {
166
139
  throw new DynamicError('Not supported');
@@ -182,4 +155,4 @@ class FlowProvider {
182
155
  }
183
156
  }
184
157
 
185
- export { FlowProvider, LOCAL_STORAGE };
158
+ export { FlowWalletConnector, LOCAL_STORAGE };
@@ -1,21 +1,13 @@
1
1
  'use strict';
2
2
 
3
3
  var fcl = require('@onflow/fcl');
4
- var normalizeWalletName = require('../../utils/normalizeWalletName/normalizeWalletName.cjs');
5
- var flowProvider = require('./flow-provider.cjs');
4
+ var FlowWalletConnector = require('./FlowWalletConnector.cjs');
6
5
 
7
- class Blocto extends flowProvider.FlowProvider {
6
+ class Blocto extends FlowWalletConnector.FlowWalletConnector {
8
7
  constructor() {
9
8
  super(...arguments);
10
9
  this.name = 'Blocto';
11
- this.supportedChains = ['FLOW'];
12
- this.connectedChain = 'FLOW';
13
- this.canConnectViaQrCode = false;
14
10
  this.canConnectViaCustodialService = true;
15
- this.isWalletConnect = false;
16
- }
17
- get key() {
18
- return normalizeWalletName.normalizeWalletName(this.name);
19
11
  }
20
12
  setupConfig() {
21
13
  super.setupConfig();
@@ -1,13 +1,7 @@
1
- import { Chain, WalletConnector } from '@dynamic-labs/wallet-connector-core';
2
- import { FlowProvider } from './flow-provider';
3
- declare class Blocto extends FlowProvider implements WalletConnector {
1
+ import { FlowWalletConnector } from './FlowWalletConnector';
2
+ declare class Blocto extends FlowWalletConnector {
4
3
  name: string;
5
- supportedChains: Chain[];
6
- connectedChain: Chain;
7
- canConnectViaQrCode: boolean;
8
4
  canConnectViaCustodialService: boolean;
9
- isWalletConnect: boolean;
10
- get key(): string;
11
5
  setupConfig(): void;
12
6
  }
13
7
  export default Blocto;
@@ -1,19 +1,11 @@
1
1
  import { config } from '@onflow/fcl';
2
- import { normalizeWalletName } from '../../utils/normalizeWalletName/normalizeWalletName.js';
3
- import { FlowProvider } from './flow-provider.js';
2
+ import { FlowWalletConnector } from './FlowWalletConnector.js';
4
3
 
5
- class Blocto extends FlowProvider {
4
+ class Blocto extends FlowWalletConnector {
6
5
  constructor() {
7
6
  super(...arguments);
8
7
  this.name = 'Blocto';
9
- this.supportedChains = ['FLOW'];
10
- this.connectedChain = 'FLOW';
11
- this.canConnectViaQrCode = false;
12
8
  this.canConnectViaCustodialService = true;
13
- this.isWalletConnect = false;
14
- }
15
- get key() {
16
- return normalizeWalletName(this.name);
17
9
  }
18
10
  setupConfig() {
19
11
  super.setupConfig();
@@ -1,21 +1,13 @@
1
1
  'use strict';
2
2
 
3
3
  var fcl = require('@onflow/fcl');
4
- var normalizeWalletName = require('../../utils/normalizeWalletName/normalizeWalletName.cjs');
5
- var flowProvider = require('./flow-provider.cjs');
4
+ var FlowWalletConnector = require('./FlowWalletConnector.cjs');
6
5
 
7
- class Dapper extends flowProvider.FlowProvider {
6
+ class Dapper extends FlowWalletConnector.FlowWalletConnector {
8
7
  constructor() {
9
8
  super(...arguments);
10
9
  this.name = 'Dapper';
11
- this.supportedChains = ['FLOW'];
12
- this.connectedChain = 'FLOW';
13
- this.canConnectViaQrCode = false;
14
10
  this.canConnectViaCustodialService = true;
15
- this.isWalletConnect = false;
16
- }
17
- get key() {
18
- return normalizeWalletName.normalizeWalletName(this.name);
19
11
  }
20
12
  setupConfig() {
21
13
  super.setupConfig();
@@ -1,13 +1,7 @@
1
- import { Chain, WalletConnector } from '@dynamic-labs/wallet-connector-core';
2
- import { FlowProvider } from './flow-provider';
3
- declare class Dapper extends FlowProvider implements WalletConnector {
1
+ import { FlowWalletConnector } from './FlowWalletConnector';
2
+ declare class Dapper extends FlowWalletConnector {
4
3
  name: string;
5
- supportedChains: Chain[];
6
- connectedChain: Chain;
7
- canConnectViaQrCode: boolean;
8
4
  canConnectViaCustodialService: boolean;
9
- isWalletConnect: boolean;
10
- get key(): string;
11
5
  setupConfig(): void;
12
6
  }
13
7
  export default Dapper;
@@ -1,19 +1,11 @@
1
1
  import { config } from '@onflow/fcl';
2
- import { normalizeWalletName } from '../../utils/normalizeWalletName/normalizeWalletName.js';
3
- import { FlowProvider } from './flow-provider.js';
2
+ import { FlowWalletConnector } from './FlowWalletConnector.js';
4
3
 
5
- class Dapper extends FlowProvider {
4
+ class Dapper extends FlowWalletConnector {
6
5
  constructor() {
7
6
  super(...arguments);
8
7
  this.name = 'Dapper';
9
- this.supportedChains = ['FLOW'];
10
- this.connectedChain = 'FLOW';
11
- this.canConnectViaQrCode = false;
12
8
  this.canConnectViaCustodialService = true;
13
- this.isWalletConnect = false;
14
- }
15
- get key() {
16
- return normalizeWalletName(this.name);
17
9
  }
18
10
  setupConfig() {
19
11
  super.setupConfig();
@@ -3,21 +3,12 @@
3
3
  var tslib = require('tslib');
4
4
  var fcl = require('@onflow/fcl');
5
5
  var isMobile = require('../../utils/isMobile.cjs');
6
- var normalizeWalletName = require('../../utils/normalizeWalletName/normalizeWalletName.cjs');
7
- var flowProvider = require('./flow-provider.cjs');
6
+ var FlowWalletConnector = require('./FlowWalletConnector.cjs');
8
7
 
9
- class Lilico extends flowProvider.FlowProvider {
8
+ class Lilico extends FlowWalletConnector.FlowWalletConnector {
10
9
  constructor() {
11
10
  super(...arguments);
12
11
  this.name = 'Lilico';
13
- this.supportedChains = ['FLOW'];
14
- this.connectedChain = 'FLOW';
15
- this.canConnectViaQrCode = false;
16
- this.canConnectViaCustodialService = false;
17
- this.isWalletConnect = false;
18
- }
19
- get key() {
20
- return normalizeWalletName.normalizeWalletName(this.name);
21
12
  }
22
13
  setupConfig() {
23
14
  super.setupConfig();
@@ -1,13 +1,6 @@
1
- import { Chain, WalletConnector } from '@dynamic-labs/wallet-connector-core';
2
- import { FlowProvider } from './flow-provider';
3
- declare class Lilico extends FlowProvider implements WalletConnector {
1
+ import { FlowWalletConnector } from './FlowWalletConnector';
2
+ declare class Lilico extends FlowWalletConnector {
4
3
  name: string;
5
- supportedChains: Chain[];
6
- connectedChain: Chain;
7
- canConnectViaQrCode: boolean;
8
- canConnectViaCustodialService: boolean;
9
- isWalletConnect: boolean;
10
- get key(): string;
11
4
  setupConfig(): void;
12
5
  isInstalledOnBrowser(): boolean;
13
6
  signDelay(): Promise<void>;
@@ -1,21 +1,12 @@
1
1
  import { __awaiter } from 'tslib';
2
2
  import { config } from '@onflow/fcl';
3
3
  import { isMobile } from '../../utils/isMobile.js';
4
- import { normalizeWalletName } from '../../utils/normalizeWalletName/normalizeWalletName.js';
5
- import { FlowProvider } from './flow-provider.js';
4
+ import { FlowWalletConnector } from './FlowWalletConnector.js';
6
5
 
7
- class Lilico extends FlowProvider {
6
+ class Lilico extends FlowWalletConnector {
8
7
  constructor() {
9
8
  super(...arguments);
10
9
  this.name = 'Lilico';
11
- this.supportedChains = ['FLOW'];
12
- this.connectedChain = 'FLOW';
13
- this.canConnectViaQrCode = false;
14
- this.canConnectViaCustodialService = false;
15
- this.isWalletConnect = false;
16
- }
17
- get key() {
18
- return normalizeWalletName(this.name);
19
10
  }
20
11
  setupConfig() {
21
12
  super.setupConfig();
@@ -10,7 +10,7 @@ const getMobileOrInjectedWallet = ({ evmNetworks, injectedWallet, isWalletConnec
10
10
  return injectedWallet;
11
11
  }
12
12
  else if (isWalletConnectV2) {
13
- return new walletConnectV2["default"]({
13
+ return new walletConnectV2({
14
14
  evmNetworks,
15
15
  walletName: walletConnectName,
16
16
  });
@@ -1,10 +1,8 @@
1
1
  import { WalletConnector } from '@dynamic-labs/wallet-connector-core';
2
- import { WalletConnectV2 } from './walletConnect';
3
- import WalletConnect from './walletConnect/walletConnect';
4
2
  import { EvmNetwork } from './ethereum/evm-network';
5
3
  export declare const getMobileOrInjectedWallet: ({ evmNetworks, injectedWallet, isWalletConnectV2, walletConnectName, }: {
6
4
  evmNetworks: EvmNetwork[];
7
5
  injectedWallet: WalletConnector;
8
6
  isWalletConnectV2?: boolean | undefined;
9
7
  walletConnectName: string;
10
- }) => WalletConnector | WalletConnectV2 | WalletConnect;
8
+ }) => WalletConnector;