@dynamic-labs/multi-wallet 0.17.0-RC.6 → 0.17.0-RC.8

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 (164) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/package.json +8 -6
  3. package/src/index.cjs +0 -18
  4. package/src/index.d.ts +0 -4
  5. package/src/index.js +1 -4
  6. package/src/multi-wallet.cjs +53 -96
  7. package/src/multi-wallet.js +53 -96
  8. package/src/types.d.ts +9 -47
  9. package/src/utils/assignConfirmationScreenToProvider/assignConfirmationScreenToProvider.d.ts +1 -1
  10. package/src/utils/getApiProviders.cjs +15 -0
  11. package/src/utils/getApiProviders.d.ts +10 -0
  12. package/src/utils/getApiProviders.js +11 -0
  13. package/src/utils/message.cjs +2 -2
  14. package/src/utils/message.d.ts +2 -2
  15. package/src/utils/message.js +1 -1
  16. package/src/utils/walletConnect.cjs +11 -8
  17. package/src/utils/walletConnect.d.ts +4 -4
  18. package/src/utils/walletConnect.js +11 -8
  19. package/src/wallets/algorand/MyAlgoWalletConnector.cjs +3 -3
  20. package/src/wallets/algorand/MyAlgoWalletConnector.js +1 -1
  21. package/src/wallets/clients/coinbase/coinbase.cjs +4 -4
  22. package/src/wallets/clients/coinbase/coinbase.js +1 -1
  23. package/src/wallets/clients/coinbase/types.d.ts +2 -2
  24. package/src/wallets/clients/walletConnect/walletConnect.cjs +20 -46
  25. package/src/wallets/clients/walletConnect/walletConnect.d.ts +1 -3
  26. package/src/wallets/clients/walletConnect/walletConnect.js +18 -43
  27. package/src/wallets/cosmos/KeplrWalletConnect.cjs +18 -16
  28. package/src/wallets/cosmos/KeplrWalletConnect.d.ts +7 -6
  29. package/src/wallets/cosmos/KeplrWalletConnect.js +14 -12
  30. package/src/wallets/cosmos/KeplrWalletConnector.cjs +21 -6
  31. package/src/wallets/cosmos/KeplrWalletConnector.d.ts +10 -5
  32. package/src/wallets/cosmos/KeplrWalletConnector.js +21 -6
  33. package/src/wallets/cosmos/wcClient.lib.cjs +100 -0
  34. package/src/wallets/cosmos/wcClient.lib.d.ts +20 -0
  35. package/src/wallets/cosmos/wcClient.lib.js +87 -0
  36. package/src/wallets/ethereum/BloctoEvm.cjs +10 -12
  37. package/src/wallets/ethereum/BloctoEvm.d.ts +2 -7
  38. package/src/wallets/ethereum/BloctoEvm.js +8 -10
  39. package/src/wallets/ethereum/EthWalletConnector.cjs +34 -19
  40. package/src/wallets/ethereum/EthWalletConnector.d.ts +8 -4
  41. package/src/wallets/ethereum/EthWalletConnector.js +28 -13
  42. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/EmailMagicWalletConnector.cjs +0 -2
  43. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/EmailMagicWalletConnector.js +0 -2
  44. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/EmailOTPMagicWalletConnector.cjs +2 -2
  45. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/EmailOTPMagicWalletConnector.js +1 -1
  46. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.cjs +14 -38
  47. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.d.ts +5 -7
  48. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.js +14 -38
  49. package/src/wallets/ethereum/MagicConnector/MagicSocialWalletConnector/MagicSocialWalletConnector.cjs +10 -4
  50. package/src/wallets/ethereum/MagicConnector/MagicSocialWalletConnector/MagicSocialWalletConnector.js +9 -3
  51. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.cjs +15 -11
  52. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.d.ts +9 -8
  53. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.js +13 -9
  54. package/src/wallets/ethereum/coinbase.cjs +9 -11
  55. package/src/wallets/ethereum/coinbase.d.ts +7 -11
  56. package/src/wallets/ethereum/coinbase.js +10 -12
  57. package/src/wallets/ethereum/ethProviderHelper.cjs +103 -101
  58. package/src/wallets/ethereum/ethProviderHelper.d.ts +24 -31
  59. package/src/wallets/ethereum/ethProviderHelper.js +100 -98
  60. package/src/wallets/ethereum/evm-network.cjs +2 -2
  61. package/src/wallets/ethereum/evm-network.d.ts +1 -17
  62. package/src/wallets/ethereum/evm-network.js +2 -2
  63. package/src/wallets/ethereum/injected/BloctoInjected.cjs +2 -3
  64. package/src/wallets/ethereum/injected/BloctoInjected.d.ts +2 -3
  65. package/src/wallets/ethereum/injected/BloctoInjected.js +2 -3
  66. package/src/wallets/ethereum/injected/BraveEvm.cjs +2 -3
  67. package/src/wallets/ethereum/injected/BraveEvm.d.ts +2 -3
  68. package/src/wallets/ethereum/injected/BraveEvm.js +2 -3
  69. package/src/wallets/ethereum/injected/Dawn.cjs +2 -3
  70. package/src/wallets/ethereum/injected/Dawn.d.ts +2 -3
  71. package/src/wallets/ethereum/injected/Dawn.js +2 -3
  72. package/src/wallets/ethereum/injected/ExodusEvm.cjs +2 -3
  73. package/src/wallets/ethereum/injected/ExodusEvm.d.ts +2 -3
  74. package/src/wallets/ethereum/injected/ExodusEvm.js +2 -3
  75. package/src/wallets/ethereum/injected/Frame.cjs +2 -3
  76. package/src/wallets/ethereum/injected/Frame.d.ts +2 -3
  77. package/src/wallets/ethereum/injected/Frame.js +2 -3
  78. package/src/wallets/ethereum/injected/GameStop.cjs +2 -3
  79. package/src/wallets/ethereum/injected/GameStop.d.ts +2 -3
  80. package/src/wallets/ethereum/injected/GameStop.js +2 -3
  81. package/src/wallets/ethereum/injected/InjectedWalletBase.cjs +74 -0
  82. package/src/wallets/ethereum/{meta-mask.d.ts → injected/InjectedWalletBase.d.ts} +7 -9
  83. package/src/wallets/ethereum/injected/InjectedWalletBase.js +72 -0
  84. package/src/wallets/ethereum/injected/MetaMask.cjs +13 -0
  85. package/src/wallets/ethereum/injected/MetaMask.d.ts +6 -0
  86. package/src/wallets/ethereum/injected/MetaMask.js +11 -0
  87. package/src/wallets/ethereum/injected/Opera.cjs +2 -3
  88. package/src/wallets/ethereum/injected/Opera.d.ts +2 -3
  89. package/src/wallets/ethereum/injected/Opera.js +2 -3
  90. package/src/wallets/ethereum/injected/PhantomEvm.cjs +2 -3
  91. package/src/wallets/ethereum/injected/PhantomEvm.d.ts +2 -3
  92. package/src/wallets/ethereum/injected/PhantomEvm.js +2 -3
  93. package/src/wallets/ethereum/injected/Trust.cjs +3 -3
  94. package/src/wallets/ethereum/injected/Trust.d.ts +3 -3
  95. package/src/wallets/ethereum/injected/Trust.js +3 -3
  96. package/src/wallets/ethereum/injected/UnknownInjectedWallet.cjs +2 -3
  97. package/src/wallets/ethereum/injected/UnknownInjectedWallet.d.ts +2 -3
  98. package/src/wallets/ethereum/injected/UnknownInjectedWallet.js +2 -3
  99. package/src/wallets/ethereum/injected/Zerion.cjs +3 -3
  100. package/src/wallets/ethereum/injected/Zerion.d.ts +3 -3
  101. package/src/wallets/ethereum/injected/Zerion.js +3 -3
  102. package/src/wallets/flow/FlowWalletConnector.cjs +7 -8
  103. package/src/wallets/flow/FlowWalletConnector.js +2 -3
  104. package/src/wallets/getWalletConnectConnector.cjs +7 -10
  105. package/src/wallets/getWalletConnectConnector.d.ts +2 -5
  106. package/src/wallets/getWalletConnectConnector.js +7 -10
  107. package/src/wallets/solana/CoinbaseSolana.cjs +8 -11
  108. package/src/wallets/solana/CoinbaseSolana.d.ts +1 -3
  109. package/src/wallets/solana/CoinbaseSolana.js +8 -11
  110. package/src/wallets/solana/glow.cjs +8 -11
  111. package/src/wallets/solana/glow.d.ts +1 -3
  112. package/src/wallets/solana/glow.js +8 -11
  113. package/src/wallets/solana/injected/BraveSol.cjs +2 -1
  114. package/src/wallets/solana/injected/BraveSol.js +2 -1
  115. package/src/wallets/solana/phantom-ledger.cjs +5 -5
  116. package/src/wallets/solana/phantom-ledger.js +1 -1
  117. package/src/wallets/solana/phantom.cjs +8 -12
  118. package/src/wallets/solana/phantom.d.ts +1 -3
  119. package/src/wallets/solana/phantom.js +8 -12
  120. package/src/wallets/solana/slope.cjs +4 -4
  121. package/src/wallets/solana/slope.js +1 -1
  122. package/src/wallets/solana/solProviderHelper.cjs +47 -48
  123. package/src/wallets/solana/solProviderHelper.d.ts +18 -18
  124. package/src/wallets/solana/solProviderHelper.js +47 -48
  125. package/src/wallets/solana/solWalletConnector.cjs +24 -6
  126. package/src/wallets/solana/solWalletConnector.d.ts +8 -5
  127. package/src/wallets/solana/solWalletConnector.js +23 -5
  128. package/src/wallets/solana/solflare.cjs +6 -7
  129. package/src/wallets/solana/solflare.d.ts +0 -2
  130. package/src/wallets/solana/solflare.js +6 -7
  131. package/src/wallets/starknet/starknetWalletConnector.cjs +5 -6
  132. package/src/wallets/starknet/starknetWalletConnector.js +2 -3
  133. package/src/wallets/walletConnect/index.d.ts +1 -1
  134. package/src/wallets/walletConnect/walletConnect.cjs +8 -7
  135. package/src/wallets/walletConnect/walletConnect.d.ts +7 -7
  136. package/src/wallets/walletConnect/walletConnect.js +6 -5
  137. package/src/wallets/walletConnect/walletConnectV2.cjs +14 -14
  138. package/src/wallets/walletConnect/walletConnectV2.d.ts +7 -7
  139. package/src/wallets/walletConnect/walletConnectV2.js +3 -3
  140. package/src/wallets/walletConnect/zerion.d.ts +2 -4
  141. package/src/errors.cjs +0 -66
  142. package/src/errors.d.ts +0 -34
  143. package/src/errors.js +0 -54
  144. package/src/rpcProviders.cjs +0 -76
  145. package/src/rpcProviders.d.ts +0 -5
  146. package/src/rpcProviders.js +0 -69
  147. package/src/utils/CancellablePromise/CancellablePromise.cjs +0 -33
  148. package/src/utils/CancellablePromise/CancellablePromise.d.ts +0 -9
  149. package/src/utils/CancellablePromise/CancellablePromise.js +0 -29
  150. package/src/utils/CancellablePromise/index.d.ts +0 -1
  151. package/src/utils/logger.cjs +0 -9
  152. package/src/utils/logger.d.ts +0 -2
  153. package/src/utils/logger.js +0 -5
  154. package/src/wallets/cosmos/getKeplrConnector.cjs +0 -18
  155. package/src/wallets/cosmos/getKeplrConnector.d.ts +0 -6
  156. package/src/wallets/cosmos/getKeplrConnector.js +0 -14
  157. package/src/wallets/ethereum/fortmatic.cjs +0 -75
  158. package/src/wallets/ethereum/fortmatic.d.ts +0 -26
  159. package/src/wallets/ethereum/fortmatic.js +0 -69
  160. package/src/wallets/ethereum/meta-mask.cjs +0 -63
  161. package/src/wallets/ethereum/meta-mask.js +0 -61
  162. package/src/wallets/getMobileOrInjectedWallet.cjs +0 -26
  163. package/src/wallets/getMobileOrInjectedWallet.d.ts +0 -8
  164. package/src/wallets/getMobileOrInjectedWallet.js +0 -22
@@ -8,42 +8,39 @@ class Glow extends solWalletConnector.SolWalletConnector {
8
8
  constructor() {
9
9
  super(...arguments);
10
10
  this.name = 'Glow';
11
- this.solProviderHelper = new solProviderHelper.SolProviderHelper();
12
11
  }
13
12
  setupEventListeners(listeners) {
14
- return tslib.__awaiter(this, void 0, void 0, function* () {
15
- return this.solProviderHelper._setupEventListeners(listeners, this.solProviderHelper.findProvider(this.name));
16
- });
13
+ solProviderHelper.SolProviderHelper._setupEventListeners(listeners, solProviderHelper.SolProviderHelper.findProvider(this.name));
17
14
  }
18
15
  teardownEventListeners() {
19
- this.solProviderHelper._teardownEventListeners(this.name);
16
+ solProviderHelper.SolProviderHelper._teardownEventListeners(this.name);
20
17
  }
21
18
  connect() {
22
19
  return tslib.__awaiter(this, void 0, void 0, function* () {
23
- yield this.solProviderHelper.connectWithName(this.name);
20
+ yield solProviderHelper.SolProviderHelper.connectWithName(this.name);
24
21
  });
25
22
  }
26
23
  getSigner() {
27
24
  return tslib.__awaiter(this, void 0, void 0, function* () {
28
- return this.solProviderHelper.connectWithName(this.name);
25
+ return solProviderHelper.SolProviderHelper.connectWithName(this.name);
29
26
  });
30
27
  }
31
28
  isInstalledOnBrowser() {
32
- return this.solProviderHelper.isInstalledHelper(this.name);
29
+ return solProviderHelper.SolProviderHelper.isInstalledHelper(this.name);
33
30
  }
34
31
  fetchPublicAddress() {
35
32
  return tslib.__awaiter(this, void 0, void 0, function* () {
36
- return this.solProviderHelper.fetchPublicAddressWithName(this.name);
33
+ return solProviderHelper.SolProviderHelper.fetchPublicAddressWithName(this.name);
37
34
  });
38
35
  }
39
36
  signMessage(messageToSign) {
40
37
  return tslib.__awaiter(this, void 0, void 0, function* () {
41
- return this.solProviderHelper.signMessageWithName(messageToSign, this.name);
38
+ return solProviderHelper.SolProviderHelper.signMessageWithName(messageToSign, this.name);
42
39
  });
43
40
  }
44
41
  getConnectedAccounts() {
45
42
  return tslib.__awaiter(this, void 0, void 0, function* () {
46
- return this.solProviderHelper.getConnectedAccountsWithName(this.name);
43
+ return solProviderHelper.SolProviderHelper.getConnectedAccountsWithName(this.name);
47
44
  });
48
45
  }
49
46
  }
@@ -1,10 +1,8 @@
1
1
  import { WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
2
2
  import { SolWalletConnector } from './solWalletConnector';
3
- import { SolProviderHelper } from './solProviderHelper';
4
3
  declare class Glow extends SolWalletConnector {
5
4
  name: string;
6
- solProviderHelper: SolProviderHelper;
7
- setupEventListeners(listeners: WalletEventListeners): Promise<() => void>;
5
+ setupEventListeners(listeners: WalletEventListeners): void;
8
6
  teardownEventListeners(): void;
9
7
  connect(): Promise<void>;
10
8
  getSigner(): Promise<import("../window").ISolana | undefined>;
@@ -6,42 +6,39 @@ class Glow extends SolWalletConnector {
6
6
  constructor() {
7
7
  super(...arguments);
8
8
  this.name = 'Glow';
9
- this.solProviderHelper = new SolProviderHelper();
10
9
  }
11
10
  setupEventListeners(listeners) {
12
- return __awaiter(this, void 0, void 0, function* () {
13
- return this.solProviderHelper._setupEventListeners(listeners, this.solProviderHelper.findProvider(this.name));
14
- });
11
+ SolProviderHelper._setupEventListeners(listeners, SolProviderHelper.findProvider(this.name));
15
12
  }
16
13
  teardownEventListeners() {
17
- this.solProviderHelper._teardownEventListeners(this.name);
14
+ SolProviderHelper._teardownEventListeners(this.name);
18
15
  }
19
16
  connect() {
20
17
  return __awaiter(this, void 0, void 0, function* () {
21
- yield this.solProviderHelper.connectWithName(this.name);
18
+ yield SolProviderHelper.connectWithName(this.name);
22
19
  });
23
20
  }
24
21
  getSigner() {
25
22
  return __awaiter(this, void 0, void 0, function* () {
26
- return this.solProviderHelper.connectWithName(this.name);
23
+ return SolProviderHelper.connectWithName(this.name);
27
24
  });
28
25
  }
29
26
  isInstalledOnBrowser() {
30
- return this.solProviderHelper.isInstalledHelper(this.name);
27
+ return SolProviderHelper.isInstalledHelper(this.name);
31
28
  }
32
29
  fetchPublicAddress() {
33
30
  return __awaiter(this, void 0, void 0, function* () {
34
- return this.solProviderHelper.fetchPublicAddressWithName(this.name);
31
+ return SolProviderHelper.fetchPublicAddressWithName(this.name);
35
32
  });
36
33
  }
37
34
  signMessage(messageToSign) {
38
35
  return __awaiter(this, void 0, void 0, function* () {
39
- return this.solProviderHelper.signMessageWithName(messageToSign, this.name);
36
+ return SolProviderHelper.signMessageWithName(messageToSign, this.name);
40
37
  });
41
38
  }
42
39
  getConnectedAccounts() {
43
40
  return __awaiter(this, void 0, void 0, function* () {
44
- return this.solProviderHelper.getConnectedAccountsWithName(this.name);
41
+ return SolProviderHelper.getConnectedAccountsWithName(this.name);
45
42
  });
46
43
  }
47
44
  }
@@ -2,6 +2,7 @@
2
2
 
3
3
  var tslib = require('tslib');
4
4
  var phantom = require('../phantom.cjs');
5
+ var solProviderHelper = require('../solProviderHelper.cjs');
5
6
 
6
7
  class BraveSol extends phantom {
7
8
  constructor() {
@@ -10,7 +11,7 @@ class BraveSol extends phantom {
10
11
  }
11
12
  fetchPublicAddress() {
12
13
  return tslib.__awaiter(this, void 0, void 0, function* () {
13
- return this.solProviderHelper.fetchPublicAddressWithName(this.name);
14
+ return solProviderHelper.SolProviderHelper.fetchPublicAddressWithName(this.name);
14
15
  });
15
16
  }
16
17
  }
@@ -1,5 +1,6 @@
1
1
  import { __awaiter } from 'tslib';
2
2
  import Phantom from '../phantom.js';
3
+ import { SolProviderHelper } from '../solProviderHelper.js';
3
4
 
4
5
  class BraveSol extends Phantom {
5
6
  constructor() {
@@ -8,7 +9,7 @@ class BraveSol extends Phantom {
8
9
  }
9
10
  fetchPublicAddress() {
10
11
  return __awaiter(this, void 0, void 0, function* () {
11
- return this.solProviderHelper.fetchPublicAddressWithName(this.name);
12
+ return SolProviderHelper.fetchPublicAddressWithName(this.name);
12
13
  });
13
14
  }
14
15
  }
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var tslib = require('tslib');
6
6
  var web3_js = require('@solana/web3.js');
7
- var errors = require('../../errors.cjs');
7
+ var utils = require('@dynamic-labs/utils');
8
8
  var extractNonce = require('../../utils/extractNonce.cjs');
9
9
  var phantom = require('./phantom.cjs');
10
10
 
@@ -30,7 +30,7 @@ class PhantomLedger extends phantom {
30
30
  }
31
31
  signMessage() {
32
32
  return tslib.__awaiter(this, void 0, void 0, function* () {
33
- throw new errors.NotSupportedError(`Message signing is currently not supported on ${walletName}
33
+ throw new utils.NotSupportedError(`Message signing is currently not supported on ${walletName}
34
34
  You can use signMessageViaTransaction instead to achieve similar functionality
35
35
  by signing a transaction with a memo instruction.
36
36
  You can read more about it here https://github.com/solana-labs/solana/issues/21366`);
@@ -40,7 +40,7 @@ class PhantomLedger extends phantom {
40
40
  return tslib.__awaiter(this, void 0, void 0, function* () {
41
41
  const nonce = extractNonce.extractNonce(messageToSign);
42
42
  if (!nonce) {
43
- throw new errors.DynamicError('Nonce missing');
43
+ throw new utils.DynamicError('Nonce missing');
44
44
  }
45
45
  return this.signMessageViaTransaction(nonce);
46
46
  });
@@ -49,14 +49,14 @@ class PhantomLedger extends phantom {
49
49
  return tslib.__awaiter(this, void 0, void 0, function* () {
50
50
  const address = yield this.fetchPublicAddress();
51
51
  if (!address) {
52
- throw new errors.DynamicError('Address missing');
52
+ throw new utils.DynamicError('Address missing');
53
53
  }
54
54
  const transaction = this.buildAuthTx(messageToSign);
55
55
  transaction.feePayer = new web3_js.PublicKey(address);
56
56
  transaction.recentBlockhash = (yield this.getWeb3Provider().getLatestBlockhash()).blockhash;
57
57
  const signer = yield this.getSigner();
58
58
  if (!signer) {
59
- throw new errors.DynamicError('Signer not found');
59
+ throw new utils.DynamicError('Signer not found');
60
60
  }
61
61
  const signedTransaction = yield signer.signTransaction(transaction);
62
62
  return JSON.stringify({
@@ -1,6 +1,6 @@
1
1
  import { __awaiter } from 'tslib';
2
2
  import { PublicKey, Transaction, TransactionInstruction } from '@solana/web3.js';
3
- import { NotSupportedError, DynamicError } from '../../errors.js';
3
+ import { NotSupportedError, DynamicError } from '@dynamic-labs/utils';
4
4
  import { extractNonce } from '../../utils/extractNonce.js';
5
5
  import Phantom from './phantom.js';
6
6
 
@@ -9,24 +9,21 @@ class Phantom extends solWalletConnector.SolWalletConnector {
9
9
  constructor() {
10
10
  super(...arguments);
11
11
  this.name = 'Phantom';
12
- this.solProviderHelper = new solProviderHelper.SolProviderHelper();
13
12
  }
14
13
  setupEventListeners(listeners) {
15
- return tslib.__awaiter(this, void 0, void 0, function* () {
16
- return this.solProviderHelper._setupEventListeners(listeners, this.solProviderHelper.findProvider(this.name));
17
- });
14
+ solProviderHelper.SolProviderHelper._setupEventListeners(listeners, solProviderHelper.SolProviderHelper.findProvider(this.name));
18
15
  }
19
16
  teardownEventListeners() {
20
- this.solProviderHelper._teardownEventListeners(this.name);
17
+ solProviderHelper.SolProviderHelper._teardownEventListeners(this.name);
21
18
  }
22
19
  connect() {
23
20
  return tslib.__awaiter(this, void 0, void 0, function* () {
24
- yield this.solProviderHelper.connectWithName(this.name);
21
+ yield solProviderHelper.SolProviderHelper.connectWithName(this.name);
25
22
  });
26
23
  }
27
24
  getSigner() {
28
25
  return tslib.__awaiter(this, void 0, void 0, function* () {
29
- return this.solProviderHelper.connectWithName(this.name);
26
+ return solProviderHelper.SolProviderHelper.connectWithName(this.name);
30
27
  });
31
28
  }
32
29
  isInstalledOnBrowser() {
@@ -37,13 +34,12 @@ class Phantom extends solWalletConnector.SolWalletConnector {
37
34
  * It relies on the fact that if both Glow and Phantom are enabled,
38
35
  * solana.isGlow will return false.
39
36
  */
40
- return (this.solProviderHelper.isInstalledHelper(this.name) &&
41
- !((_a = window.solana) === null || _a === void 0 ? void 0 : _a.isGlow));
37
+ return (solProviderHelper.SolProviderHelper.isInstalledHelper(this.name) && !((_a = window.solana) === null || _a === void 0 ? void 0 : _a.isGlow));
42
38
  }
43
39
  fetchPublicAddress() {
44
40
  return tslib.__awaiter(this, void 0, void 0, function* () {
45
41
  if (this.isInstalledOnBrowser()) {
46
- return this.solProviderHelper.fetchPublicAddressWithName(this.name);
42
+ return solProviderHelper.SolProviderHelper.fetchPublicAddressWithName(this.name);
47
43
  }
48
44
  const url = encodeURIComponent(window.location.toString());
49
45
  const ref = encodeURIComponent(window.location.origin);
@@ -61,12 +57,12 @@ class Phantom extends solWalletConnector.SolWalletConnector {
61
57
  }
62
58
  signMessage(messageToSign) {
63
59
  return tslib.__awaiter(this, void 0, void 0, function* () {
64
- return this.solProviderHelper.signMessageWithName(messageToSign, this.name);
60
+ return solProviderHelper.SolProviderHelper.signMessageWithName(messageToSign, this.name);
65
61
  });
66
62
  }
67
63
  getConnectedAccounts() {
68
64
  return tslib.__awaiter(this, void 0, void 0, function* () {
69
- return this.solProviderHelper.getConnectedAccountsWithName(this.name);
65
+ return solProviderHelper.SolProviderHelper.getConnectedAccountsWithName(this.name);
70
66
  });
71
67
  }
72
68
  }
@@ -1,11 +1,9 @@
1
1
  import { WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
2
2
  import { ISolana } from '../window';
3
3
  import { SolWalletConnector } from './solWalletConnector';
4
- import { SolProviderHelper } from './solProviderHelper';
5
4
  declare class Phantom extends SolWalletConnector {
6
5
  name: string;
7
- solProviderHelper: SolProviderHelper;
8
- setupEventListeners(listeners: WalletEventListeners): Promise<() => void>;
6
+ setupEventListeners(listeners: WalletEventListeners): void;
9
7
  teardownEventListeners(): void;
10
8
  connect(): Promise<void>;
11
9
  getSigner(): Promise<ISolana | undefined>;
@@ -7,24 +7,21 @@ class Phantom extends SolWalletConnector {
7
7
  constructor() {
8
8
  super(...arguments);
9
9
  this.name = 'Phantom';
10
- this.solProviderHelper = new SolProviderHelper();
11
10
  }
12
11
  setupEventListeners(listeners) {
13
- return __awaiter(this, void 0, void 0, function* () {
14
- return this.solProviderHelper._setupEventListeners(listeners, this.solProviderHelper.findProvider(this.name));
15
- });
12
+ SolProviderHelper._setupEventListeners(listeners, SolProviderHelper.findProvider(this.name));
16
13
  }
17
14
  teardownEventListeners() {
18
- this.solProviderHelper._teardownEventListeners(this.name);
15
+ SolProviderHelper._teardownEventListeners(this.name);
19
16
  }
20
17
  connect() {
21
18
  return __awaiter(this, void 0, void 0, function* () {
22
- yield this.solProviderHelper.connectWithName(this.name);
19
+ yield SolProviderHelper.connectWithName(this.name);
23
20
  });
24
21
  }
25
22
  getSigner() {
26
23
  return __awaiter(this, void 0, void 0, function* () {
27
- return this.solProviderHelper.connectWithName(this.name);
24
+ return SolProviderHelper.connectWithName(this.name);
28
25
  });
29
26
  }
30
27
  isInstalledOnBrowser() {
@@ -35,13 +32,12 @@ class Phantom extends SolWalletConnector {
35
32
  * It relies on the fact that if both Glow and Phantom are enabled,
36
33
  * solana.isGlow will return false.
37
34
  */
38
- return (this.solProviderHelper.isInstalledHelper(this.name) &&
39
- !((_a = window.solana) === null || _a === void 0 ? void 0 : _a.isGlow));
35
+ return (SolProviderHelper.isInstalledHelper(this.name) && !((_a = window.solana) === null || _a === void 0 ? void 0 : _a.isGlow));
40
36
  }
41
37
  fetchPublicAddress() {
42
38
  return __awaiter(this, void 0, void 0, function* () {
43
39
  if (this.isInstalledOnBrowser()) {
44
- return this.solProviderHelper.fetchPublicAddressWithName(this.name);
40
+ return SolProviderHelper.fetchPublicAddressWithName(this.name);
45
41
  }
46
42
  const url = encodeURIComponent(window.location.toString());
47
43
  const ref = encodeURIComponent(window.location.origin);
@@ -59,12 +55,12 @@ class Phantom extends SolWalletConnector {
59
55
  }
60
56
  signMessage(messageToSign) {
61
57
  return __awaiter(this, void 0, void 0, function* () {
62
- return this.solProviderHelper.signMessageWithName(messageToSign, this.name);
58
+ return SolProviderHelper.signMessageWithName(messageToSign, this.name);
63
59
  });
64
60
  }
65
61
  getConnectedAccounts() {
66
62
  return __awaiter(this, void 0, void 0, function* () {
67
- return this.solProviderHelper.getConnectedAccountsWithName(this.name);
63
+ return SolProviderHelper.getConnectedAccountsWithName(this.name);
68
64
  });
69
65
  }
70
66
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  var tslib = require('tslib');
4
4
  var web3_js = require('@solana/web3.js');
5
- var logger = require('../../utils/logger.cjs');
5
+ var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
6
6
  var solWalletConnector = require('./solWalletConnector.cjs');
7
7
 
8
8
  class Slope extends solWalletConnector.SolWalletConnector {
@@ -44,7 +44,7 @@ class Slope extends solWalletConnector.SolWalletConnector {
44
44
  return balance.toString();
45
45
  }
46
46
  catch (e) {
47
- logger.logger.debug(e);
47
+ walletConnectorCore.logger.debug(e);
48
48
  return undefined;
49
49
  }
50
50
  });
@@ -61,7 +61,7 @@ class Slope extends solWalletConnector.SolWalletConnector {
61
61
  return this.isConnectData(response) ? response.data.publicKey : undefined;
62
62
  }
63
63
  catch (e) {
64
- logger.logger.debug(e);
64
+ walletConnectorCore.logger.debug(e);
65
65
  return undefined;
66
66
  }
67
67
  });
@@ -78,7 +78,7 @@ class Slope extends solWalletConnector.SolWalletConnector {
78
78
  : undefined;
79
79
  }
80
80
  catch (e) {
81
- logger.logger.debug(e);
81
+ walletConnectorCore.logger.debug(e);
82
82
  return undefined;
83
83
  }
84
84
  });
@@ -1,6 +1,6 @@
1
1
  import { __awaiter } from 'tslib';
2
2
  import { PublicKey } from '@solana/web3.js';
3
- import { logger } from '../../utils/logger.js';
3
+ import { logger } from '@dynamic-labs/wallet-connector-core';
4
4
  import { SolWalletConnector } from './solWalletConnector.js';
5
5
 
6
6
  class Slope extends SolWalletConnector {
@@ -7,41 +7,15 @@ var convertors = require('../../utils/convertors.cjs');
7
7
  var ProviderLookup = require('../ProviderLookup.cjs');
8
8
  var normalizeWalletName = require('../../utils/normalizeWalletName/normalizeWalletName.cjs');
9
9
 
10
+ var _a;
10
11
  class SolProviderHelper {
11
- constructor() {
12
- this.GlowProvider = () => this.installedProviderLookup([{ flag: 'isGlow', value: true }]);
13
- this.CoinbaseProvider = () => this.findSolanaProviders(window.coinbaseSolana)[0];
14
- this.PhantomProvider = () => this.installedProviderLookup([
15
- { flag: 'isPhantom', value: true },
16
- { flag: 'isBraveWallet', value: false },
17
- { flag: 'isExodus', value: false },
18
- ]);
19
- this.SolflareProvider = () => this.installedProviderLookup([{ flag: 'isSolflare', value: true }]);
20
- this.BraveProvider = () => this.installedProviderLookup([
21
- { flag: 'isPhantom', value: true },
22
- { flag: 'isBraveWallet', value: true },
23
- ]);
24
- this.ExodusProvider = () => this.installedProviderLookup([
25
- { flag: 'isPhantom', value: true },
26
- { flag: 'isExodus', value: true },
27
- ]);
28
- this.providers = {
29
- bravesol: this.BraveProvider,
30
- coinbasesolana: this.CoinbaseProvider,
31
- exodussol: this.ExodusProvider,
32
- glow: this.GlowProvider,
33
- phantom: this.PhantomProvider,
34
- phantomledger: this.PhantomProvider,
35
- solflare: this.SolflareProvider,
36
- };
37
- }
38
- installedProviderLookup(providerFlags) {
12
+ static installedProviderLookup(providerFlags) {
39
13
  return ProviderLookup.ProviderLookup(this.allInstalledProviders(), providerFlags);
40
14
  }
41
- allInstalledProviders() {
15
+ static allInstalledProviders() {
42
16
  return this.findSolanaProviders(window.solana).concat(this.findSolanaProviders(window.solflare), this.findSolanaProviders(window.glowSolana));
43
17
  }
44
- findSolanaProviders(solana) {
18
+ static findSolanaProviders(solana) {
45
19
  const solanaProviders = [];
46
20
  if (solana && !solana.providers) {
47
21
  solanaProviders.push(solana);
@@ -53,14 +27,14 @@ class SolProviderHelper {
53
27
  }
54
28
  return solanaProviders;
55
29
  }
56
- isInstalledHelper(walletName) {
30
+ static isInstalledHelper(walletName) {
57
31
  return this.findProvider(walletName) !== undefined;
58
32
  }
59
- findProvider(walletName) {
60
- var _a, _b;
61
- return (_b = (_a = this.providers)[normalizeWalletName.normalizeWalletName(walletName)]) === null || _b === void 0 ? void 0 : _b.call(_a);
33
+ static findProvider(walletName) {
34
+ var _b, _c;
35
+ return (_c = (_b = this.providers)[normalizeWalletName.normalizeWalletName(walletName)]) === null || _c === void 0 ? void 0 : _c.call(_b);
62
36
  }
63
- fetchPublicAddressWithName(name) {
37
+ static fetchPublicAddressWithName(name) {
64
38
  return tslib.__awaiter(this, void 0, void 0, function* () {
65
39
  const provider = this.findProvider(name);
66
40
  if (!provider) {
@@ -71,7 +45,7 @@ class SolProviderHelper {
71
45
  return publicKey ? publicKey.toString() : Promise.resolve(undefined);
72
46
  });
73
47
  }
74
- connectWithName(name) {
48
+ static connectWithName(name) {
75
49
  return tslib.__awaiter(this, void 0, void 0, function* () {
76
50
  const provider = this.findProvider(name);
77
51
  if (!provider) {
@@ -86,7 +60,7 @@ class SolProviderHelper {
86
60
  }
87
61
  });
88
62
  }
89
- signMessageWithName(messageToSign, name) {
63
+ static signMessageWithName(messageToSign, name) {
90
64
  return tslib.__awaiter(this, void 0, void 0, function* () {
91
65
  const walletAddress = yield this.fetchPublicAddressWithName(name);
92
66
  if (!walletAddress) {
@@ -103,36 +77,35 @@ class SolProviderHelper {
103
77
  }));
104
78
  });
105
79
  }
106
- _setupEventListeners(listeners, web3Provider) {
80
+ static _setupEventListeners(listeners, web3Provider) {
107
81
  const handleAccountChange = (address) => tslib.__awaiter(this, void 0, void 0, function* () {
108
- var _a, _b, _c;
82
+ var _b, _c, _d;
109
83
  if (!address) {
110
84
  yield (web3Provider === null || web3Provider === void 0 ? void 0 : web3Provider.connect());
111
- if ((_a = web3Provider === null || web3Provider === void 0 ? void 0 : web3Provider.publicKey) === null || _a === void 0 ? void 0 : _a.toString()) {
112
- (_b = listeners.onAccountChange) === null || _b === void 0 ? void 0 : _b.call(listeners, [web3Provider.publicKey.toString()]);
85
+ if ((_b = web3Provider === null || web3Provider === void 0 ? void 0 : web3Provider.publicKey) === null || _b === void 0 ? void 0 : _b.toString()) {
86
+ (_c = listeners.onAccountChange) === null || _c === void 0 ? void 0 : _c.call(listeners, [web3Provider.publicKey.toString()]);
113
87
  }
114
88
  return;
115
89
  }
116
90
  if (address.toString()) {
117
- yield ((_c = listeners.onAccountChange) === null || _c === void 0 ? void 0 : _c.call(listeners, [address.toString()]));
91
+ yield ((_d = listeners.onAccountChange) === null || _d === void 0 ? void 0 : _d.call(listeners, [address.toString()]));
118
92
  }
119
93
  });
120
94
  const handleDisconnect = () => tslib.__awaiter(this, void 0, void 0, function* () {
121
- var _d;
122
- yield ((_d = listeners.onDisconnect) === null || _d === void 0 ? void 0 : _d.call(listeners));
95
+ var _e;
96
+ yield ((_e = listeners.onDisconnect) === null || _e === void 0 ? void 0 : _e.call(listeners));
123
97
  });
124
98
  web3Provider === null || web3Provider === void 0 ? void 0 : web3Provider.on('accountChanged', handleAccountChange);
125
99
  web3Provider === null || web3Provider === void 0 ? void 0 : web3Provider.on('disconnect', handleDisconnect);
126
- return () => { };
127
100
  }
128
- _teardownEventListeners(name) {
101
+ static _teardownEventListeners(name) {
129
102
  const web3Provider = this.findProvider(name);
130
103
  if (!web3Provider) {
131
104
  return;
132
105
  }
133
106
  web3Provider.removeAllListeners();
134
107
  }
135
- getConnectedAccountsWithName(name) {
108
+ static getConnectedAccountsWithName(name) {
136
109
  return tslib.__awaiter(this, void 0, void 0, function* () {
137
110
  const provider = this.findProvider(name);
138
111
  if (!provider) {
@@ -159,6 +132,32 @@ class SolProviderHelper {
159
132
  }
160
133
  });
161
134
  }
162
- }
135
+ }
136
+ _a = SolProviderHelper;
137
+ SolProviderHelper.GlowProvider = () => _a.installedProviderLookup([{ flag: 'isGlow', value: true }]);
138
+ SolProviderHelper.CoinbaseProvider = () => _a.findSolanaProviders(window.coinbaseSolana)[0];
139
+ SolProviderHelper.PhantomProvider = () => _a.installedProviderLookup([
140
+ { flag: 'isPhantom', value: true },
141
+ { flag: 'isBraveWallet', value: false },
142
+ { flag: 'isExodus', value: false },
143
+ ]);
144
+ SolProviderHelper.SolflareProvider = () => _a.installedProviderLookup([{ flag: 'isSolflare', value: true }]);
145
+ SolProviderHelper.BraveProvider = () => _a.installedProviderLookup([
146
+ { flag: 'isPhantom', value: true },
147
+ { flag: 'isBraveWallet', value: true },
148
+ ]);
149
+ SolProviderHelper.ExodusProvider = () => _a.installedProviderLookup([
150
+ { flag: 'isPhantom', value: true },
151
+ { flag: 'isExodus', value: true },
152
+ ]);
153
+ SolProviderHelper.providers = {
154
+ bravesol: _a.BraveProvider,
155
+ coinbasesolana: _a.CoinbaseProvider,
156
+ exodussol: _a.ExodusProvider,
157
+ glow: _a.GlowProvider,
158
+ phantom: _a.PhantomProvider,
159
+ phantomledger: _a.PhantomProvider,
160
+ solflare: _a.SolflareProvider,
161
+ };
163
162
 
164
163
  exports.SolProviderHelper = SolProviderHelper;
@@ -5,25 +5,25 @@ export interface SignedMessage {
5
5
  }
6
6
  type Provider = () => ISolana | undefined;
7
7
  export declare class SolProviderHelper {
8
- GlowProvider: Provider;
9
- CoinbaseProvider: Provider;
10
- PhantomProvider: Provider;
11
- SolflareProvider: Provider;
12
- BraveProvider: Provider;
13
- ExodusProvider: Provider;
14
- providers: {
8
+ static GlowProvider: Provider;
9
+ static CoinbaseProvider: Provider;
10
+ static PhantomProvider: Provider;
11
+ static SolflareProvider: Provider;
12
+ static BraveProvider: Provider;
13
+ static ExodusProvider: Provider;
14
+ static providers: {
15
15
  [wallet: string]: Provider;
16
16
  };
17
- installedProviderLookup(providerFlags: Array<ProviderCondition>): ISolana | undefined;
18
- allInstalledProviders(): ISolana[];
19
- findSolanaProviders(solana?: ISolana): ISolana[];
20
- isInstalledHelper(walletName: string): boolean;
21
- findProvider(walletName: string): ISolana | undefined;
22
- fetchPublicAddressWithName(name: string): Promise<string | undefined>;
23
- connectWithName(name: string): Promise<ISolana | undefined>;
24
- signMessageWithName(messageToSign: string, name: string): Promise<string | undefined>;
25
- _setupEventListeners(listeners: WalletEventListeners, web3Provider?: ISolana): () => void;
26
- _teardownEventListeners(name: string): void;
27
- getConnectedAccountsWithName(name: string): Promise<string[]>;
17
+ static installedProviderLookup(providerFlags: Array<ProviderCondition>): ISolana | undefined;
18
+ static allInstalledProviders(): ISolana[];
19
+ static findSolanaProviders(solana?: ISolana): ISolana[];
20
+ static isInstalledHelper(walletName: string): boolean;
21
+ static findProvider(walletName: string): ISolana | undefined;
22
+ static fetchPublicAddressWithName(name: string): Promise<string | undefined>;
23
+ static connectWithName(name: string): Promise<ISolana | undefined>;
24
+ static signMessageWithName(messageToSign: string, name: string): Promise<string | undefined>;
25
+ static _setupEventListeners(listeners: WalletEventListeners, web3Provider?: ISolana): void;
26
+ static _teardownEventListeners(name: string): void;
27
+ static getConnectedAccountsWithName(name: string): Promise<string[]>;
28
28
  }
29
29
  export {};