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

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 (233) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/package.json +8 -14
  3. package/src/index.cjs +0 -57
  4. package/src/index.d.ts +0 -13
  5. package/src/index.js +1 -18
  6. package/src/multi-wallet.cjs +27 -87
  7. package/src/multi-wallet.d.ts +0 -1
  8. package/src/multi-wallet.js +25 -84
  9. package/src/types.d.ts +2 -23
  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 +3 -4
  14. package/src/utils/message.js +1 -2
  15. package/src/wallets/algorand/MyAlgoWalletConnector.cjs +3 -3
  16. package/src/wallets/algorand/MyAlgoWalletConnector.js +1 -1
  17. package/src/wallets/constants.cjs +0 -2
  18. package/src/wallets/constants.js +1 -2
  19. package/src/wallets/cosmos/KeplrWalletConnect.cjs +16 -17
  20. package/src/wallets/cosmos/KeplrWalletConnect.d.ts +9 -5
  21. package/src/wallets/cosmos/KeplrWalletConnect.js +9 -10
  22. package/src/wallets/cosmos/KeplrWalletConnector.cjs +13 -5
  23. package/src/wallets/cosmos/KeplrWalletConnector.d.ts +6 -4
  24. package/src/wallets/cosmos/KeplrWalletConnector.js +13 -5
  25. package/src/wallets/cosmos/wcClient.lib.cjs +141 -0
  26. package/src/wallets/{clients/walletConnect/walletConnect.d.ts → cosmos/wcClient.lib.d.ts} +8 -11
  27. package/src/wallets/cosmos/wcClient.lib.js +126 -0
  28. package/src/wallets/flow/FlowWalletConnector.cjs +7 -8
  29. package/src/wallets/flow/FlowWalletConnector.js +2 -3
  30. package/src/wallets/flow/lilico.cjs +2 -2
  31. package/src/wallets/flow/lilico.js +1 -1
  32. package/src/wallets/solana/CoinbaseSolana.cjs +8 -11
  33. package/src/wallets/solana/CoinbaseSolana.d.ts +1 -3
  34. package/src/wallets/solana/CoinbaseSolana.js +8 -11
  35. package/src/wallets/solana/glow.cjs +8 -11
  36. package/src/wallets/solana/glow.d.ts +1 -3
  37. package/src/wallets/solana/glow.js +8 -11
  38. package/src/wallets/solana/injected/BraveSol.cjs +2 -1
  39. package/src/wallets/solana/injected/BraveSol.js +2 -1
  40. package/src/wallets/solana/phantom-ledger.cjs +5 -5
  41. package/src/wallets/solana/phantom-ledger.js +1 -1
  42. package/src/wallets/solana/phantom.cjs +11 -15
  43. package/src/wallets/solana/phantom.d.ts +1 -3
  44. package/src/wallets/solana/phantom.js +9 -13
  45. package/src/wallets/solana/slope.cjs +4 -4
  46. package/src/wallets/solana/slope.js +1 -1
  47. package/src/wallets/solana/solProviderHelper.cjs +49 -51
  48. package/src/wallets/solana/solProviderHelper.d.ts +20 -20
  49. package/src/wallets/solana/solProviderHelper.js +48 -50
  50. package/src/wallets/solana/solWalletConnector.cjs +2 -2
  51. package/src/wallets/solana/solWalletConnector.js +1 -1
  52. package/src/wallets/solana/solflare.cjs +6 -7
  53. package/src/wallets/solana/solflare.d.ts +0 -2
  54. package/src/wallets/solana/solflare.js +6 -7
  55. package/src/wallets/starknet/braavos.cjs +2 -2
  56. package/src/wallets/starknet/braavos.js +1 -1
  57. package/src/wallets/starknet/starknetWalletConnector.cjs +5 -6
  58. package/src/wallets/starknet/starknetWalletConnector.js +2 -3
  59. package/src/wallets/window.d.ts +10 -22
  60. package/src/errors.cjs +0 -66
  61. package/src/errors.d.ts +0 -34
  62. package/src/errors.js +0 -54
  63. package/src/utils/CancellablePromise/CancellablePromise.cjs +0 -33
  64. package/src/utils/CancellablePromise/CancellablePromise.d.ts +0 -9
  65. package/src/utils/CancellablePromise/CancellablePromise.js +0 -29
  66. package/src/utils/CancellablePromise/index.d.ts +0 -1
  67. package/src/utils/assignConfirmationScreenToProvider/assignConfirmationScreenToProvider.cjs +0 -54
  68. package/src/utils/assignConfirmationScreenToProvider/assignConfirmationScreenToProvider.d.ts +0 -3
  69. package/src/utils/assignConfirmationScreenToProvider/assignConfirmationScreenToProvider.js +0 -50
  70. package/src/utils/assignConfirmationScreenToProvider/index.d.ts +0 -1
  71. package/src/utils/encoding.cjs +0 -18
  72. package/src/utils/encoding.d.ts +0 -4
  73. package/src/utils/encoding.js +0 -12
  74. package/src/utils/findProvider/findProvider.cjs +0 -7
  75. package/src/utils/findProvider/findProvider.d.ts +0 -2
  76. package/src/utils/findProvider/findProvider.js +0 -3
  77. package/src/utils/findProvider/index.d.ts +0 -1
  78. package/src/utils/getChainInfo/getChainInfo.cjs +0 -59
  79. package/src/utils/getChainInfo/getChainInfo.d.ts +0 -2
  80. package/src/utils/getChainInfo/getChainInfo.js +0 -55
  81. package/src/utils/getChainInfo/index.d.ts +0 -1
  82. package/src/utils/getWalletConnectorByName.cjs +0 -19
  83. package/src/utils/getWalletConnectorByName.d.ts +0 -2
  84. package/src/utils/getWalletConnectorByName.js +0 -15
  85. package/src/utils/isEmailOTPWalletConnector/index.d.ts +0 -1
  86. package/src/utils/isEmailOTPWalletConnector/isEmailOTPWalletConnector.cjs +0 -7
  87. package/src/utils/isEmailOTPWalletConnector/isEmailOTPWalletConnector.d.ts +0 -2
  88. package/src/utils/isEmailOTPWalletConnector/isEmailOTPWalletConnector.js +0 -3
  89. package/src/utils/isEmailWalletConnector/index.d.ts +0 -1
  90. package/src/utils/isEmailWalletConnector/isEmailWalletConnector.cjs +0 -7
  91. package/src/utils/isEmailWalletConnector/isEmailWalletConnector.d.ts +0 -2
  92. package/src/utils/isEmailWalletConnector/isEmailWalletConnector.js +0 -3
  93. package/src/utils/isFunction/index.d.ts +0 -1
  94. package/src/utils/isFunction/isFunction.cjs +0 -8
  95. package/src/utils/isFunction/isFunction.d.ts +0 -1
  96. package/src/utils/isFunction/isFunction.js +0 -4
  97. package/src/utils/isMobile.cjs +0 -54
  98. package/src/utils/isMobile.d.ts +0 -13
  99. package/src/utils/isMobile.js +0 -46
  100. package/src/utils/isSameAddress/index.d.ts +0 -1
  101. package/src/utils/isSameAddress/isSameAddress.cjs +0 -9
  102. package/src/utils/isSameAddress/isSameAddress.d.ts +0 -1
  103. package/src/utils/isSameAddress/isSameAddress.js +0 -5
  104. package/src/utils/isSameAddress/utils/index.d.ts +0 -1
  105. package/src/utils/isSameAddress/utils/normalizeAddress/index.d.ts +0 -1
  106. package/src/utils/isSameAddress/utils/normalizeAddress/normalizeAddress.cjs +0 -17
  107. package/src/utils/isSameAddress/utils/normalizeAddress/normalizeAddress.d.ts +0 -1
  108. package/src/utils/isSameAddress/utils/normalizeAddress/normalizeAddress.js +0 -13
  109. package/src/utils/isSocialWalletConnector/index.d.ts +0 -1
  110. package/src/utils/isSocialWalletConnector/isSocialWalletConnector.cjs +0 -7
  111. package/src/utils/isSocialWalletConnector/isSocialWalletConnector.d.ts +0 -2
  112. package/src/utils/isSocialWalletConnector/isSocialWalletConnector.js +0 -3
  113. package/src/utils/isUnsupportedProviderError/index.d.ts +0 -1
  114. package/src/utils/isUnsupportedProviderError/isUnsupportedProviderError.cjs +0 -13
  115. package/src/utils/isUnsupportedProviderError/isUnsupportedProviderError.d.ts +0 -6
  116. package/src/utils/isUnsupportedProviderError/isUnsupportedProviderError.js +0 -9
  117. package/src/utils/logger.cjs +0 -9
  118. package/src/utils/logger.d.ts +0 -2
  119. package/src/utils/logger.js +0 -5
  120. package/src/utils/normalizeWalletName/index.d.ts +0 -1
  121. package/src/utils/normalizeWalletName/normalizeWalletName.cjs +0 -7
  122. package/src/utils/normalizeWalletName/normalizeWalletName.d.ts +0 -1
  123. package/src/utils/normalizeWalletName/normalizeWalletName.js +0 -3
  124. package/src/utils/shouldLowercaseAddress.cjs +0 -11
  125. package/src/utils/shouldLowercaseAddress.d.ts +0 -1
  126. package/src/utils/shouldLowercaseAddress.js +0 -7
  127. package/src/utils/walletConnect.cjs +0 -31
  128. package/src/utils/walletConnect.d.ts +0 -5
  129. package/src/utils/walletConnect.js +0 -27
  130. package/src/wallets/ProviderLookup.cjs +0 -18
  131. package/src/wallets/ProviderLookup.d.ts +0 -4
  132. package/src/wallets/ProviderLookup.js +0 -14
  133. package/src/wallets/clients/coinbase/coinbase.cjs +0 -73
  134. package/src/wallets/clients/coinbase/coinbase.d.ts +0 -6
  135. package/src/wallets/clients/coinbase/coinbase.js +0 -66
  136. package/src/wallets/clients/coinbase/index.d.ts +0 -2
  137. package/src/wallets/clients/coinbase/types.d.ts +0 -14
  138. package/src/wallets/clients/walletConnect/index.d.ts +0 -1
  139. package/src/wallets/clients/walletConnect/types.d.ts +0 -4
  140. package/src/wallets/clients/walletConnect/walletConnect.cjs +0 -250
  141. package/src/wallets/clients/walletConnect/walletConnect.js +0 -233
  142. package/src/wallets/cosmos/getKeplrConnector.cjs +0 -18
  143. package/src/wallets/cosmos/getKeplrConnector.d.ts +0 -6
  144. package/src/wallets/cosmos/getKeplrConnector.js +0 -14
  145. package/src/wallets/ethereum/BloctoEvm.cjs +0 -111
  146. package/src/wallets/ethereum/BloctoEvm.d.ts +0 -22
  147. package/src/wallets/ethereum/BloctoEvm.js +0 -105
  148. package/src/wallets/ethereum/EthWalletConnector.cjs +0 -207
  149. package/src/wallets/ethereum/EthWalletConnector.d.ts +0 -38
  150. package/src/wallets/ethereum/EthWalletConnector.js +0 -203
  151. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/EmailMagicWalletConnector.cjs +0 -63
  152. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/EmailMagicWalletConnector.d.ts +0 -12
  153. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/EmailMagicWalletConnector.js +0 -59
  154. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/index.d.ts +0 -1
  155. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/EmailOTPMagicWalletConnector.cjs +0 -62
  156. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/EmailOTPMagicWalletConnector.d.ts +0 -11
  157. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/EmailOTPMagicWalletConnector.js +0 -58
  158. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/index.d.ts +0 -1
  159. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.cjs +0 -103
  160. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.d.ts +0 -33
  161. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.js +0 -99
  162. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/index.d.ts +0 -2
  163. package/src/wallets/ethereum/MagicConnector/MagicSocialWalletConnector/MagicSocialWalletConnector.cjs +0 -56
  164. package/src/wallets/ethereum/MagicConnector/MagicSocialWalletConnector/MagicSocialWalletConnector.d.ts +0 -12
  165. package/src/wallets/ethereum/MagicConnector/MagicSocialWalletConnector/MagicSocialWalletConnector.js +0 -52
  166. package/src/wallets/ethereum/MagicConnector/MagicSocialWalletConnector/index.d.ts +0 -1
  167. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.cjs +0 -177
  168. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.d.ts +0 -54
  169. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.js +0 -173
  170. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/index.d.ts +0 -2
  171. package/src/wallets/ethereum/MagicConnector/index.d.ts +0 -5
  172. package/src/wallets/ethereum/coinbase.cjs +0 -66
  173. package/src/wallets/ethereum/coinbase.d.ts +0 -25
  174. package/src/wallets/ethereum/coinbase.js +0 -64
  175. package/src/wallets/ethereum/ethProviderHelper.cjs +0 -197
  176. package/src/wallets/ethereum/ethProviderHelper.d.ts +0 -40
  177. package/src/wallets/ethereum/ethProviderHelper.js +0 -193
  178. package/src/wallets/ethereum/evm-network.cjs +0 -20
  179. package/src/wallets/ethereum/evm-network.d.ts +0 -6
  180. package/src/wallets/ethereum/evm-network.js +0 -16
  181. package/src/wallets/ethereum/fortmatic.cjs +0 -76
  182. package/src/wallets/ethereum/fortmatic.d.ts +0 -25
  183. package/src/wallets/ethereum/fortmatic.js +0 -70
  184. package/src/wallets/ethereum/injected/BloctoInjected.cjs +0 -13
  185. package/src/wallets/ethereum/injected/BloctoInjected.d.ts +0 -6
  186. package/src/wallets/ethereum/injected/BloctoInjected.js +0 -11
  187. package/src/wallets/ethereum/injected/BraveEvm.cjs +0 -13
  188. package/src/wallets/ethereum/injected/BraveEvm.d.ts +0 -6
  189. package/src/wallets/ethereum/injected/BraveEvm.js +0 -11
  190. package/src/wallets/ethereum/injected/Dawn.cjs +0 -13
  191. package/src/wallets/ethereum/injected/Dawn.d.ts +0 -6
  192. package/src/wallets/ethereum/injected/Dawn.js +0 -11
  193. package/src/wallets/ethereum/injected/ExodusEvm.cjs +0 -13
  194. package/src/wallets/ethereum/injected/ExodusEvm.d.ts +0 -6
  195. package/src/wallets/ethereum/injected/ExodusEvm.js +0 -11
  196. package/src/wallets/ethereum/injected/Frame.cjs +0 -13
  197. package/src/wallets/ethereum/injected/Frame.d.ts +0 -6
  198. package/src/wallets/ethereum/injected/Frame.js +0 -11
  199. package/src/wallets/ethereum/injected/GameStop.cjs +0 -13
  200. package/src/wallets/ethereum/injected/GameStop.d.ts +0 -6
  201. package/src/wallets/ethereum/injected/GameStop.js +0 -11
  202. package/src/wallets/ethereum/injected/Opera.cjs +0 -13
  203. package/src/wallets/ethereum/injected/Opera.d.ts +0 -6
  204. package/src/wallets/ethereum/injected/Opera.js +0 -11
  205. package/src/wallets/ethereum/injected/PhantomEvm.cjs +0 -37
  206. package/src/wallets/ethereum/injected/PhantomEvm.d.ts +0 -7
  207. package/src/wallets/ethereum/injected/PhantomEvm.js +0 -35
  208. package/src/wallets/ethereum/injected/Trust.cjs +0 -13
  209. package/src/wallets/ethereum/injected/Trust.d.ts +0 -6
  210. package/src/wallets/ethereum/injected/Trust.js +0 -11
  211. package/src/wallets/ethereum/injected/UnknownInjectedWallet.cjs +0 -13
  212. package/src/wallets/ethereum/injected/UnknownInjectedWallet.d.ts +0 -6
  213. package/src/wallets/ethereum/injected/UnknownInjectedWallet.js +0 -11
  214. package/src/wallets/ethereum/injected/Zerion.cjs +0 -13
  215. package/src/wallets/ethereum/injected/Zerion.d.ts +0 -6
  216. package/src/wallets/ethereum/injected/Zerion.js +0 -11
  217. package/src/wallets/ethereum/meta-mask.cjs +0 -63
  218. package/src/wallets/ethereum/meta-mask.d.ts +0 -26
  219. package/src/wallets/ethereum/meta-mask.js +0 -61
  220. package/src/wallets/getMobileOrInjectedWallet.cjs +0 -22
  221. package/src/wallets/getMobileOrInjectedWallet.d.ts +0 -9
  222. package/src/wallets/getMobileOrInjectedWallet.js +0 -18
  223. package/src/wallets/getWalletConnectConnector.cjs +0 -16
  224. package/src/wallets/getWalletConnectConnector.d.ts +0 -5
  225. package/src/wallets/getWalletConnectConnector.js +0 -12
  226. package/src/wallets/walletConnect/index.d.ts +0 -2
  227. package/src/wallets/walletConnect/walletConnect.cjs +0 -133
  228. package/src/wallets/walletConnect/walletConnect.d.ts +0 -34
  229. package/src/wallets/walletConnect/walletConnect.js +0 -127
  230. package/src/wallets/walletConnect/walletConnectV2.cjs +0 -268
  231. package/src/wallets/walletConnect/walletConnectV2.d.ts +0 -38
  232. package/src/wallets/walletConnect/walletConnectV2.js +0 -262
  233. package/src/wallets/walletConnect/zerion.d.ts +0 -6
@@ -9,24 +9,23 @@ class Solflare extends solWalletConnector.SolWalletConnector {
9
9
  constructor() {
10
10
  super(...arguments);
11
11
  this.name = 'Solflare';
12
- this.solProviderHelper = new solProviderHelper.SolProviderHelper();
13
12
  }
14
13
  isInstalledOnBrowser() {
15
- return this.solProviderHelper.isInstalledHelper(this.name);
14
+ return solProviderHelper.SolProviderHelper.isInstalledHelper(this.name);
16
15
  }
17
16
  fetchPublicAddress() {
18
17
  return tslib.__awaiter(this, void 0, void 0, function* () {
19
- return this.solProviderHelper.fetchPublicAddressWithName(this.name);
18
+ return solProviderHelper.SolProviderHelper.fetchPublicAddressWithName(this.name);
20
19
  });
21
20
  }
22
21
  connect() {
23
22
  return tslib.__awaiter(this, void 0, void 0, function* () {
24
- yield this.solProviderHelper.connectWithName(this.name);
23
+ yield solProviderHelper.SolProviderHelper.connectWithName(this.name);
25
24
  });
26
25
  }
27
26
  getSigner() {
28
27
  return tslib.__awaiter(this, void 0, void 0, function* () {
29
- return this.solProviderHelper.connectWithName(this.name);
28
+ return solProviderHelper.SolProviderHelper.connectWithName(this.name);
30
29
  });
31
30
  }
32
31
  signMessage(messageToSign) {
@@ -35,7 +34,7 @@ class Solflare extends solWalletConnector.SolWalletConnector {
35
34
  if (!walletAddress) {
36
35
  return undefined;
37
36
  }
38
- const provider = this.solProviderHelper.findProvider(this.name);
37
+ const provider = solProviderHelper.SolProviderHelper.findProvider(this.name);
39
38
  if (!provider) {
40
39
  return undefined;
41
40
  }
@@ -57,7 +56,7 @@ class Solflare extends solWalletConnector.SolWalletConnector {
57
56
  }
58
57
  getConnectedAccounts() {
59
58
  return tslib.__awaiter(this, void 0, void 0, function* () {
60
- return this.solProviderHelper.getConnectedAccountsWithName(this.name);
59
+ return solProviderHelper.SolProviderHelper.getConnectedAccountsWithName(this.name);
61
60
  });
62
61
  }
63
62
  }
@@ -1,9 +1,7 @@
1
1
  import { ISolana } from '../window';
2
2
  import { SolWalletConnector } from './solWalletConnector';
3
- import { SolProviderHelper } from './solProviderHelper';
4
3
  declare class Solflare extends SolWalletConnector {
5
4
  name: string;
6
- solProviderHelper: SolProviderHelper;
7
5
  isInstalledOnBrowser(): boolean;
8
6
  fetchPublicAddress(): Promise<string | undefined>;
9
7
  connect(): Promise<void>;
@@ -7,24 +7,23 @@ class Solflare extends SolWalletConnector {
7
7
  constructor() {
8
8
  super(...arguments);
9
9
  this.name = 'Solflare';
10
- this.solProviderHelper = new SolProviderHelper();
11
10
  }
12
11
  isInstalledOnBrowser() {
13
- return this.solProviderHelper.isInstalledHelper(this.name);
12
+ return SolProviderHelper.isInstalledHelper(this.name);
14
13
  }
15
14
  fetchPublicAddress() {
16
15
  return __awaiter(this, void 0, void 0, function* () {
17
- return this.solProviderHelper.fetchPublicAddressWithName(this.name);
16
+ return SolProviderHelper.fetchPublicAddressWithName(this.name);
18
17
  });
19
18
  }
20
19
  connect() {
21
20
  return __awaiter(this, void 0, void 0, function* () {
22
- yield this.solProviderHelper.connectWithName(this.name);
21
+ yield SolProviderHelper.connectWithName(this.name);
23
22
  });
24
23
  }
25
24
  getSigner() {
26
25
  return __awaiter(this, void 0, void 0, function* () {
27
- return this.solProviderHelper.connectWithName(this.name);
26
+ return SolProviderHelper.connectWithName(this.name);
28
27
  });
29
28
  }
30
29
  signMessage(messageToSign) {
@@ -33,7 +32,7 @@ class Solflare extends SolWalletConnector {
33
32
  if (!walletAddress) {
34
33
  return undefined;
35
34
  }
36
- const provider = this.solProviderHelper.findProvider(this.name);
35
+ const provider = SolProviderHelper.findProvider(this.name);
37
36
  if (!provider) {
38
37
  return undefined;
39
38
  }
@@ -55,7 +54,7 @@ class Solflare extends SolWalletConnector {
55
54
  }
56
55
  getConnectedAccounts() {
57
56
  return __awaiter(this, void 0, void 0, function* () {
58
- return this.solProviderHelper.getConnectedAccountsWithName(this.name);
57
+ return SolProviderHelper.getConnectedAccountsWithName(this.name);
59
58
  });
60
59
  }
61
60
  }
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var tslib = require('tslib');
4
- var isMobile = require('../../utils/isMobile.cjs');
4
+ var utils = require('@dynamic-labs/utils');
5
5
  var starknetWalletConnector = require('./starknetWalletConnector.cjs');
6
6
 
7
7
  class Braavos extends starknetWalletConnector {
@@ -22,7 +22,7 @@ class Braavos extends starknetWalletConnector {
22
22
  */
23
23
  const url = window.location.toString().replace(/http(s)?:\/\//, '');
24
24
  const targetUrl = `starknet://dapp/${url}`;
25
- if (isMobile.isMobile()) {
25
+ if (utils.isMobile()) {
26
26
  window.location.assign(targetUrl);
27
27
  }
28
28
  return Promise.resolve(undefined);
@@ -1,5 +1,5 @@
1
1
  import { __awaiter } from 'tslib';
2
- import { isMobile } from '../../utils/isMobile.js';
2
+ import { isMobile } from '@dynamic-labs/utils';
3
3
  import StarknetWalletConnector from './starknetWalletConnector.js';
4
4
 
5
5
  class Braavos extends StarknetWalletConnector {
@@ -6,8 +6,7 @@ var starknet = require('starknet');
6
6
  var constants = require('starknet/constants');
7
7
  var uint256 = require('starknet/dist/utils/uint256');
8
8
  var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
9
- var errors = require('../../errors.cjs');
10
- var logger = require('../../utils/logger.cjs');
9
+ var utils = require('@dynamic-labs/utils');
11
10
  var convertors = require('../../utils/convertors.cjs');
12
11
  var constants$1 = require('../constants.cjs');
13
12
  var ethereumContractAbi = require('./ethereumContractAbi.cjs');
@@ -31,7 +30,7 @@ class StarknetWalletConnector extends walletConnectorCore.WalletConnectorBase {
31
30
  }
32
31
  }
33
32
  catch (err) {
34
- logger.logger.error(err);
33
+ walletConnectorCore.logger.error(err);
35
34
  }
36
35
  });
37
36
  }
@@ -68,7 +67,7 @@ class StarknetWalletConnector extends walletConnectorCore.WalletConnectorBase {
68
67
  const wallet = yield this.getWallet();
69
68
  const walletAddress = yield this.fetchPublicAddress();
70
69
  if (!walletAddress || !wallet) {
71
- logger.logger.error('Could not fetch wallet address for signing message');
70
+ walletConnectorCore.logger.error('Could not fetch wallet address for signing message');
72
71
  return undefined;
73
72
  }
74
73
  const { account } = wallet;
@@ -83,7 +82,7 @@ class StarknetWalletConnector extends walletConnectorCore.WalletConnectorBase {
83
82
  const walletAddress = yield this.fetchPublicAddress();
84
83
  const provider = yield this.getWeb3Provider();
85
84
  if (!walletAddress || !provider) {
86
- logger.logger.error('Could not fetch wallet address for getting balance');
85
+ walletConnectorCore.logger.error('Could not fetch wallet address for getting balance');
87
86
  return undefined;
88
87
  }
89
88
  const contract = new starknet.Contract(ethereumContractAbi, constants$1.ETH_STARKNET_ADDRESS, provider);
@@ -97,7 +96,7 @@ class StarknetWalletConnector extends walletConnectorCore.WalletConnectorBase {
97
96
  return (gweiBalance / 1e18).toFixed(6);
98
97
  }
99
98
  catch (error) {
100
- throw new errors.DynamicError('Something went wrong');
99
+ throw new utils.DynamicError('Something went wrong');
101
100
  }
102
101
  });
103
102
  }
@@ -3,9 +3,8 @@ import { getInstalledWallets, disconnect } from 'get-starknet';
3
3
  import { Contract } from 'starknet';
4
4
  import { StarknetChainId } from 'starknet/constants.js';
5
5
  import { uint256ToBN } from 'starknet/dist/utils/uint256.js';
6
- import { WalletConnectorBase } from '@dynamic-labs/wallet-connector-core';
7
- import { DynamicError } from '../../errors.js';
8
- import { logger } from '../../utils/logger.js';
6
+ import { WalletConnectorBase, logger } from '@dynamic-labs/wallet-connector-core';
7
+ import { DynamicError } from '@dynamic-labs/utils';
9
8
  import { formatTypedDataMessage } from '../../utils/convertors.js';
10
9
  import { ETH_STARKNET_ADDRESS } from '../constants.js';
11
10
  import ETH_CONTRACT_ABI from './ethereumContractAbi.js';
@@ -23,12 +23,8 @@ export interface IProvider {
23
23
  isTrustWallet?: boolean;
24
24
  isZerion?: boolean;
25
25
  }
26
- export type ProviderFlag = 'isDawn' | 'isBraveWallet' | 'isCoinbaseWallet' | 'isFrame' | 'isGamestop' | 'isMetaMask' | 'isExodus' | 'isOpera' | 'isBlocto' | 'isTrustWallet' | 'isZerion';
27
- export type ProviderCondition = {
28
- flag: ProviderFlag | SolProviderFlag;
29
- value: boolean;
30
- };
31
- export type SolProviderFlag = 'isBraveWallet' | 'isGlow' | 'isPhantom' | 'isSolflare';
26
+ export type ProviderFlag = 'isDawn' | 'isBraveWallet' | 'isCoinbaseWallet' | 'isFrame' | 'isGamestop' | 'isMetaMask' | 'isExodus' | 'isOpera' | 'isBlocto' | 'isTrustWallet' | 'isZerion' | 'isPhantom';
27
+ export type SolProviderFlag = 'isBraveWallet' | 'isGlow' | 'isPhantom' | 'isSolflare' | 'isExodus';
32
28
  export interface IWindow {
33
29
  Slope: {
34
30
  new (): ISolana;
@@ -47,20 +43,14 @@ export interface IWindow {
47
43
  starknet_braavos: IStarknetWindowObject;
48
44
  zerionWallet: IEthereum;
49
45
  }
50
- export interface IEthereum {
51
- isBraveWallet: boolean;
52
- isCoinbaseWallet: boolean;
53
- isDawn: boolean;
54
- isMetaMask: boolean;
55
- isOpera: boolean;
56
- isPhantom: boolean;
57
- isTrustWallet: boolean;
58
- isZerion: boolean;
46
+ export type IEthereum = {
47
+ [key in ProviderFlag]: boolean;
48
+ } & {
59
49
  providers: object[];
60
50
  request: <T extends string>(params: {
61
51
  method: T;
62
52
  } | object) => Promise<T extends 'eth_requestAccounts' ? [string] : object>;
63
- }
53
+ };
64
54
  type PublicKey = {
65
55
  toString: () => string;
66
56
  };
@@ -68,15 +58,13 @@ export type ConnectionResult = {
68
58
  address?: string;
69
59
  publicKey?: PublicKey;
70
60
  } | undefined;
71
- export interface ISolana {
61
+ export type ISolana = {
62
+ [key in SolProviderFlag]: boolean;
63
+ } & {
72
64
  connect: (args?: {
73
65
  onlyIfTrusted: boolean;
74
66
  }) => Promise<ConnectionResult>;
75
67
  disconnect: () => Promise<void | object>;
76
- isBraveWallet: boolean;
77
- isGlow: boolean;
78
- isPhantom: boolean;
79
- isSolflare: boolean;
80
68
  on: (eventMessage: string, callback?: (publickey: string) => void) => Promise<void | object>;
81
69
  providers: object[];
82
70
  publicKey: PublicKey;
@@ -84,7 +72,7 @@ export interface ISolana {
84
72
  removeListener: (eventMessage: string, callback?: (publickey: string) => void) => Promise<void | object>;
85
73
  signMessage: (message: Uint8Array, encoding?: string) => Promise<void | object>;
86
74
  signTransaction: (transaction: Transaction) => Promise<Transaction>;
87
- }
75
+ };
88
76
  export interface IFclProvider {
89
77
  id: string;
90
78
  }
package/src/errors.cjs DELETED
@@ -1,66 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- class DynamicError extends Error {
6
- }
7
- class NotSupportedError extends DynamicError {
8
- }
9
- class EmailVerificationError extends DynamicError {
10
- constructor(code) {
11
- super();
12
- this.name = 'EmailVerificationError';
13
- this.code = code;
14
- }
15
- }
16
- class NoAccessError extends DynamicError {
17
- constructor({ walletPublicKey, email, }) {
18
- super('User does not have access');
19
- this.name = 'NoAccessError';
20
- this.email = email;
21
- this.walletPublicKey = walletPublicKey;
22
- }
23
- }
24
- class ChainalysisError extends DynamicError {
25
- constructor(walletPublicKey) {
26
- super('This address is not approved for access');
27
- this.name = 'ChainalysisError';
28
- this.walletPublicKey = walletPublicKey;
29
- }
30
- }
31
- class EmailAlreadyExistsError extends DynamicError {
32
- constructor() {
33
- super('Email already exists');
34
- this.name = 'EmailAlreadyExistsError';
35
- }
36
- }
37
- class UsernameAlreadyExistsError extends DynamicError {
38
- constructor() {
39
- super('Username already exists');
40
- this.name = 'UsernameAlreadyExistsError';
41
- }
42
- }
43
- class WalletNotDeployedError extends DynamicError {
44
- constructor() {
45
- super('Wallet has not been deployed');
46
- this.name = 'WalletNotDeployedError';
47
- this.code = 'wallet_not_deployed';
48
- }
49
- }
50
- class WalletUsedError extends DynamicError {
51
- constructor(code) {
52
- super();
53
- this.name = 'WalletUsedError';
54
- this.code = code;
55
- }
56
- }
57
-
58
- exports.ChainalysisError = ChainalysisError;
59
- exports.DynamicError = DynamicError;
60
- exports.EmailAlreadyExistsError = EmailAlreadyExistsError;
61
- exports.EmailVerificationError = EmailVerificationError;
62
- exports.NoAccessError = NoAccessError;
63
- exports.NotSupportedError = NotSupportedError;
64
- exports.UsernameAlreadyExistsError = UsernameAlreadyExistsError;
65
- exports.WalletNotDeployedError = WalletNotDeployedError;
66
- exports.WalletUsedError = WalletUsedError;
package/src/errors.d.ts DELETED
@@ -1,34 +0,0 @@
1
- export declare class DynamicError extends Error {
2
- }
3
- export declare class NotSupportedError extends DynamicError {
4
- }
5
- export declare class EmailVerificationError extends DynamicError {
6
- code: string | undefined;
7
- constructor(code: string);
8
- }
9
- export declare class NoAccessError extends DynamicError {
10
- walletPublicKey?: string;
11
- email?: string;
12
- constructor({ walletPublicKey, email, }: {
13
- email?: string;
14
- walletPublicKey?: string;
15
- });
16
- }
17
- export declare class ChainalysisError extends DynamicError {
18
- walletPublicKey: string | undefined;
19
- constructor(walletPublicKey: string);
20
- }
21
- export declare class EmailAlreadyExistsError extends DynamicError {
22
- constructor();
23
- }
24
- export declare class UsernameAlreadyExistsError extends DynamicError {
25
- constructor();
26
- }
27
- export declare class WalletNotDeployedError extends DynamicError {
28
- code: string | undefined;
29
- constructor();
30
- }
31
- export declare class WalletUsedError extends DynamicError {
32
- code: string | undefined;
33
- constructor(code: string);
34
- }
package/src/errors.js DELETED
@@ -1,54 +0,0 @@
1
- class DynamicError extends Error {
2
- }
3
- class NotSupportedError extends DynamicError {
4
- }
5
- class EmailVerificationError extends DynamicError {
6
- constructor(code) {
7
- super();
8
- this.name = 'EmailVerificationError';
9
- this.code = code;
10
- }
11
- }
12
- class NoAccessError extends DynamicError {
13
- constructor({ walletPublicKey, email, }) {
14
- super('User does not have access');
15
- this.name = 'NoAccessError';
16
- this.email = email;
17
- this.walletPublicKey = walletPublicKey;
18
- }
19
- }
20
- class ChainalysisError extends DynamicError {
21
- constructor(walletPublicKey) {
22
- super('This address is not approved for access');
23
- this.name = 'ChainalysisError';
24
- this.walletPublicKey = walletPublicKey;
25
- }
26
- }
27
- class EmailAlreadyExistsError extends DynamicError {
28
- constructor() {
29
- super('Email already exists');
30
- this.name = 'EmailAlreadyExistsError';
31
- }
32
- }
33
- class UsernameAlreadyExistsError extends DynamicError {
34
- constructor() {
35
- super('Username already exists');
36
- this.name = 'UsernameAlreadyExistsError';
37
- }
38
- }
39
- class WalletNotDeployedError extends DynamicError {
40
- constructor() {
41
- super('Wallet has not been deployed');
42
- this.name = 'WalletNotDeployedError';
43
- this.code = 'wallet_not_deployed';
44
- }
45
- }
46
- class WalletUsedError extends DynamicError {
47
- constructor(code) {
48
- super();
49
- this.name = 'WalletUsedError';
50
- this.code = code;
51
- }
52
- }
53
-
54
- export { ChainalysisError, DynamicError, EmailAlreadyExistsError, EmailVerificationError, NoAccessError, NotSupportedError, UsernameAlreadyExistsError, WalletNotDeployedError, WalletUsedError };
@@ -1,33 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- class CancellablePromise extends Promise {
6
- constructor(executor) {
7
- super((resolve, reject) => {
8
- executor((val) => {
9
- if (this.isCancelled)
10
- return;
11
- resolve(val);
12
- }, (err) => {
13
- if (this.isCancelled)
14
- return;
15
- reject(err);
16
- });
17
- });
18
- this._controller = new AbortController();
19
- }
20
- get isCancelled() {
21
- return this._controller.signal.aborted;
22
- }
23
- cancel() {
24
- this._controller.abort();
25
- }
26
- static fromPromise(promise) {
27
- return new CancellablePromise((resolve, reject) => {
28
- promise.then(resolve).catch(reject);
29
- });
30
- }
31
- }
32
-
33
- exports.CancellablePromise = CancellablePromise;
@@ -1,9 +0,0 @@
1
- type Executor<T> = (resolve: (value: T | PromiseLike<T>) => void, reject: (reason?: unknown) => void) => void;
2
- export declare class CancellablePromise<T> extends Promise<T> {
3
- _controller: AbortController;
4
- constructor(executor: Executor<T>);
5
- get isCancelled(): boolean;
6
- cancel(): void;
7
- static fromPromise<T>(promise: Promise<T>): CancellablePromise<T>;
8
- }
9
- export {};
@@ -1,29 +0,0 @@
1
- class CancellablePromise extends Promise {
2
- constructor(executor) {
3
- super((resolve, reject) => {
4
- executor((val) => {
5
- if (this.isCancelled)
6
- return;
7
- resolve(val);
8
- }, (err) => {
9
- if (this.isCancelled)
10
- return;
11
- reject(err);
12
- });
13
- });
14
- this._controller = new AbortController();
15
- }
16
- get isCancelled() {
17
- return this._controller.signal.aborted;
18
- }
19
- cancel() {
20
- this._controller.abort();
21
- }
22
- static fromPromise(promise) {
23
- return new CancellablePromise((resolve, reject) => {
24
- promise.then(resolve).catch(reject);
25
- });
26
- }
27
- }
28
-
29
- export { CancellablePromise };
@@ -1 +0,0 @@
1
- export { CancellablePromise } from './CancellablePromise';
@@ -1,54 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var tslib = require('tslib');
6
- var isFunction = require('../isFunction/isFunction.cjs');
7
-
8
- const applyJsonRpcSignerGates = (jsonRpcSigner, walletUiUtils, provider) => {
9
- const originalSignMessage = jsonRpcSigner.signMessage;
10
- const originalSendUncheckedTransaction = jsonRpcSigner.sendUncheckedTransaction;
11
- if (isFunction.isFunction(originalSignMessage)) {
12
- Object.assign(jsonRpcSigner, {
13
- signMessage: (message) => tslib.__awaiter(void 0, void 0, void 0, function* () {
14
- return walletUiUtils.signMessage({
15
- handler: originalSignMessage.bind(jsonRpcSigner),
16
- message,
17
- });
18
- }),
19
- });
20
- }
21
- if (isFunction.isFunction(originalSendUncheckedTransaction)) {
22
- Object.assign(jsonRpcSigner, {
23
- sendUncheckedTransaction: (transaction) => tslib.__awaiter(void 0, void 0, void 0, function* () {
24
- return walletUiUtils.sendTransaction({
25
- handler: originalSendUncheckedTransaction.bind(jsonRpcSigner),
26
- provider,
27
- transaction,
28
- });
29
- }),
30
- });
31
- }
32
- };
33
- const assignConfirmationScreenToIntermediaryMethods = (parent, walletUiUtils, provider) => {
34
- const methods = ['getSigner', 'getUncheckedSigner', 'connectUnchecked'];
35
- methods.forEach((methodName) => {
36
- const method = parent[methodName];
37
- if (!isFunction.isFunction(method)) {
38
- return;
39
- }
40
- Object.assign(parent, {
41
- [methodName]: (...args) => {
42
- const result = method.bind(parent)(...args);
43
- if (typeof result === 'object' && result !== null) {
44
- assignConfirmationScreenToIntermediaryMethods(result, walletUiUtils, provider);
45
- applyJsonRpcSignerGates(result, walletUiUtils, provider);
46
- }
47
- return result;
48
- },
49
- });
50
- });
51
- };
52
- const assignConfirmationScreenToProvider = (provider, walletUiUtils) => assignConfirmationScreenToIntermediaryMethods(provider, walletUiUtils, provider);
53
-
54
- exports.assignConfirmationScreenToProvider = assignConfirmationScreenToProvider;
@@ -1,3 +0,0 @@
1
- import { ethers } from 'ethers';
2
- import { WalletUiUtils } from '../../types';
3
- export declare const assignConfirmationScreenToProvider: (provider: ethers.providers.Web3Provider, walletUiUtils: WalletUiUtils) => void;
@@ -1,50 +0,0 @@
1
- import { __awaiter } from 'tslib';
2
- import { isFunction } from '../isFunction/isFunction.js';
3
-
4
- const applyJsonRpcSignerGates = (jsonRpcSigner, walletUiUtils, provider) => {
5
- const originalSignMessage = jsonRpcSigner.signMessage;
6
- const originalSendUncheckedTransaction = jsonRpcSigner.sendUncheckedTransaction;
7
- if (isFunction(originalSignMessage)) {
8
- Object.assign(jsonRpcSigner, {
9
- signMessage: (message) => __awaiter(void 0, void 0, void 0, function* () {
10
- return walletUiUtils.signMessage({
11
- handler: originalSignMessage.bind(jsonRpcSigner),
12
- message,
13
- });
14
- }),
15
- });
16
- }
17
- if (isFunction(originalSendUncheckedTransaction)) {
18
- Object.assign(jsonRpcSigner, {
19
- sendUncheckedTransaction: (transaction) => __awaiter(void 0, void 0, void 0, function* () {
20
- return walletUiUtils.sendTransaction({
21
- handler: originalSendUncheckedTransaction.bind(jsonRpcSigner),
22
- provider,
23
- transaction,
24
- });
25
- }),
26
- });
27
- }
28
- };
29
- const assignConfirmationScreenToIntermediaryMethods = (parent, walletUiUtils, provider) => {
30
- const methods = ['getSigner', 'getUncheckedSigner', 'connectUnchecked'];
31
- methods.forEach((methodName) => {
32
- const method = parent[methodName];
33
- if (!isFunction(method)) {
34
- return;
35
- }
36
- Object.assign(parent, {
37
- [methodName]: (...args) => {
38
- const result = method.bind(parent)(...args);
39
- if (typeof result === 'object' && result !== null) {
40
- assignConfirmationScreenToIntermediaryMethods(result, walletUiUtils, provider);
41
- applyJsonRpcSignerGates(result, walletUiUtils, provider);
42
- }
43
- return result;
44
- },
45
- });
46
- });
47
- };
48
- const assignConfirmationScreenToProvider = (provider, walletUiUtils) => assignConfirmationScreenToIntermediaryMethods(provider, walletUiUtils, provider);
49
-
50
- export { assignConfirmationScreenToProvider };
@@ -1 +0,0 @@
1
- export { assignConfirmationScreenToProvider } from './assignConfirmationScreenToProvider';
@@ -1,18 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- // taken from https://github.com/WalletConnect/walletconnect-utils/blob/master/misc/encoding/src/index.ts
6
- const ENC_HEX = 'hex';
7
- const ENC_UTF8 = 'utf8';
8
- const utf8ToBuffer = (utf8) => Buffer.from(utf8, ENC_UTF8);
9
- const addHexPrefix = (hex) => hex.startsWith('0x') ? hex : `0x${hex}`;
10
- const bufferToHex = (buf, prefixed = false) => {
11
- const hex = buf.toString(ENC_HEX);
12
- return prefixed ? addHexPrefix(hex) : hex;
13
- };
14
- const utf8ToHex = (utf8, prefixed = false) => bufferToHex(utf8ToBuffer(utf8), prefixed);
15
-
16
- exports.addHexPrefix = addHexPrefix;
17
- exports.bufferToHex = bufferToHex;
18
- exports.utf8ToHex = utf8ToHex;
@@ -1,4 +0,0 @@
1
- /// <reference types="node" />
2
- export declare const addHexPrefix: (hex: string) => string;
3
- export declare const bufferToHex: (buf: Buffer, prefixed?: boolean) => string;
4
- export declare const utf8ToHex: (utf8: string, prefixed?: boolean) => string;
@@ -1,12 +0,0 @@
1
- // taken from https://github.com/WalletConnect/walletconnect-utils/blob/master/misc/encoding/src/index.ts
2
- const ENC_HEX = 'hex';
3
- const ENC_UTF8 = 'utf8';
4
- const utf8ToBuffer = (utf8) => Buffer.from(utf8, ENC_UTF8);
5
- const addHexPrefix = (hex) => hex.startsWith('0x') ? hex : `0x${hex}`;
6
- const bufferToHex = (buf, prefixed = false) => {
7
- const hex = buf.toString(ENC_HEX);
8
- return prefixed ? addHexPrefix(hex) : hex;
9
- };
10
- const utf8ToHex = (utf8, prefixed = false) => bufferToHex(utf8ToBuffer(utf8), prefixed);
11
-
12
- export { addHexPrefix, bufferToHex, utf8ToHex };
@@ -1,7 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const findProvider = (providers, provider) => providers.find((providerSetting) => providerSetting.provider === provider);
6
-
7
- exports.findProvider = findProvider;
@@ -1,2 +0,0 @@
1
- import { Provider, ProviderEnum } from '@dynamic-labs/sdk-api';
2
- export declare const findProvider: (providers: Provider[], provider: ProviderEnum) => Provider | undefined;
@@ -1,3 +0,0 @@
1
- const findProvider = (providers, provider) => providers.find((providerSetting) => providerSetting.provider === provider);
2
-
3
- export { findProvider };