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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (268) hide show
  1. package/CHANGELOG.md +137 -0
  2. package/package.json +11 -14
  3. package/src/index.cjs +2 -66
  4. package/src/index.d.ts +1 -16
  5. package/src/index.js +2 -21
  6. package/src/multi-wallet.cjs +46 -159
  7. package/src/multi-wallet.d.ts +0 -3
  8. package/src/multi-wallet.js +44 -156
  9. package/src/types.d.ts +9 -49
  10. package/src/utils/convertors.cjs +0 -7
  11. package/src/utils/convertors.d.ts +0 -1
  12. package/src/utils/convertors.js +1 -7
  13. package/src/utils/getApiProviders.cjs +15 -0
  14. package/src/utils/getApiProviders.d.ts +10 -0
  15. package/src/utils/getApiProviders.js +11 -0
  16. package/src/utils/message.cjs +4 -5
  17. package/src/utils/message.d.ts +2 -2
  18. package/src/utils/message.js +2 -3
  19. package/src/wallets/constants.cjs +0 -2
  20. package/src/wallets/constants.js +1 -2
  21. package/src/wallets/cosmos/{keplrWalletConnect.cjs → KeplrWalletConnect.cjs} +27 -43
  22. package/src/wallets/cosmos/{keplrWalletConnect.d.ts → KeplrWalletConnect.d.ts} +16 -20
  23. package/src/wallets/cosmos/{keplrWalletConnect.js → KeplrWalletConnect.js} +20 -36
  24. package/src/wallets/cosmos/{keplr.cjs → KeplrWalletConnector.cjs} +24 -21
  25. package/src/wallets/cosmos/{keplr.d.ts → KeplrWalletConnector.d.ts} +14 -18
  26. package/src/wallets/cosmos/{keplr.js → KeplrWalletConnector.js} +23 -20
  27. package/src/wallets/cosmos/index.d.ts +1 -1
  28. package/src/wallets/{clients/walletConnect/walletConnect.cjs → cosmos/wcClient.lib.cjs} +38 -101
  29. package/src/wallets/{clients/walletConnect/walletConnect.d.ts → cosmos/wcClient.lib.d.ts} +8 -10
  30. package/src/wallets/{clients/walletConnect/walletConnect.js → cosmos/wcClient.lib.js} +36 -97
  31. package/src/wallets/flow/{flow-provider.cjs → FlowWalletConnector.cjs} +13 -41
  32. package/src/wallets/flow/{flow-provider.d.ts → FlowWalletConnector.d.ts} +4 -11
  33. package/src/wallets/flow/{flow-provider.js → FlowWalletConnector.js} +7 -35
  34. package/src/wallets/flow/blocto.cjs +2 -10
  35. package/src/wallets/flow/blocto.d.ts +2 -8
  36. package/src/wallets/flow/blocto.js +2 -10
  37. package/src/wallets/flow/dapper.cjs +2 -10
  38. package/src/wallets/flow/dapper.d.ts +2 -8
  39. package/src/wallets/flow/dapper.js +2 -10
  40. package/src/wallets/flow/lilico.cjs +4 -13
  41. package/src/wallets/flow/lilico.d.ts +2 -9
  42. package/src/wallets/flow/lilico.js +3 -12
  43. package/src/wallets/starknet/argentx.cjs +2 -2
  44. package/src/wallets/starknet/argentx.d.ts +1 -1
  45. package/src/wallets/starknet/argentx.js +2 -2
  46. package/src/wallets/starknet/braavos.cjs +4 -4
  47. package/src/wallets/starknet/braavos.d.ts +1 -1
  48. package/src/wallets/starknet/braavos.js +3 -3
  49. package/src/wallets/starknet/{starknetProvider.cjs → starknetWalletConnector.cjs} +9 -40
  50. package/src/wallets/starknet/{starknetProvider.d.ts → starknetWalletConnector.d.ts} +3 -14
  51. package/src/wallets/starknet/{starknetProvider.js → starknetWalletConnector.js} +5 -36
  52. package/src/wallets/window.d.ts +0 -77
  53. package/src/errors.cjs +0 -65
  54. package/src/errors.d.ts +0 -30
  55. package/src/errors.js +0 -53
  56. package/src/rpcProviders.cjs +0 -76
  57. package/src/rpcProviders.d.ts +0 -5
  58. package/src/rpcProviders.js +0 -69
  59. package/src/utils/CancellablePromise/CancellablePromise.cjs +0 -33
  60. package/src/utils/CancellablePromise/CancellablePromise.d.ts +0 -9
  61. package/src/utils/CancellablePromise/CancellablePromise.js +0 -29
  62. package/src/utils/CancellablePromise/index.d.ts +0 -1
  63. package/src/utils/assignConfirmationScreenToProvider/assignConfirmationScreenToProvider.cjs +0 -54
  64. package/src/utils/assignConfirmationScreenToProvider/assignConfirmationScreenToProvider.d.ts +0 -3
  65. package/src/utils/assignConfirmationScreenToProvider/assignConfirmationScreenToProvider.js +0 -50
  66. package/src/utils/assignConfirmationScreenToProvider/index.d.ts +0 -1
  67. package/src/utils/encoding.cjs +0 -18
  68. package/src/utils/encoding.d.ts +0 -4
  69. package/src/utils/encoding.js +0 -12
  70. package/src/utils/extractNonce.cjs +0 -13
  71. package/src/utils/extractNonce.d.ts +0 -1
  72. package/src/utils/extractNonce.js +0 -9
  73. package/src/utils/getChainInfo/getChainInfo.cjs +0 -59
  74. package/src/utils/getChainInfo/getChainInfo.d.ts +0 -2
  75. package/src/utils/getChainInfo/getChainInfo.js +0 -55
  76. package/src/utils/getChainInfo/index.d.ts +0 -1
  77. package/src/utils/getWalletConnectorByName.cjs +0 -19
  78. package/src/utils/getWalletConnectorByName.d.ts +0 -2
  79. package/src/utils/getWalletConnectorByName.js +0 -15
  80. package/src/utils/isEmailOTPWalletConnector/index.d.ts +0 -1
  81. package/src/utils/isEmailOTPWalletConnector/isEmailOTPWalletConnector.cjs +0 -7
  82. package/src/utils/isEmailOTPWalletConnector/isEmailOTPWalletConnector.d.ts +0 -2
  83. package/src/utils/isEmailOTPWalletConnector/isEmailOTPWalletConnector.js +0 -3
  84. package/src/utils/isEmailWalletConnector/index.d.ts +0 -1
  85. package/src/utils/isEmailWalletConnector/isEmailWalletConnector.cjs +0 -7
  86. package/src/utils/isEmailWalletConnector/isEmailWalletConnector.d.ts +0 -2
  87. package/src/utils/isEmailWalletConnector/isEmailWalletConnector.js +0 -3
  88. package/src/utils/isFunction/index.d.ts +0 -1
  89. package/src/utils/isFunction/isFunction.cjs +0 -8
  90. package/src/utils/isFunction/isFunction.d.ts +0 -1
  91. package/src/utils/isFunction/isFunction.js +0 -4
  92. package/src/utils/isMobile.cjs +0 -54
  93. package/src/utils/isMobile.d.ts +0 -13
  94. package/src/utils/isMobile.js +0 -46
  95. package/src/utils/isSameAddress/index.d.ts +0 -1
  96. package/src/utils/isSameAddress/isSameAddress.cjs +0 -9
  97. package/src/utils/isSameAddress/isSameAddress.d.ts +0 -1
  98. package/src/utils/isSameAddress/isSameAddress.js +0 -5
  99. package/src/utils/isSameAddress/utils/index.d.ts +0 -1
  100. package/src/utils/isSameAddress/utils/normalizeAddress/index.d.ts +0 -1
  101. package/src/utils/isSameAddress/utils/normalizeAddress/normalizeAddress.cjs +0 -17
  102. package/src/utils/isSameAddress/utils/normalizeAddress/normalizeAddress.d.ts +0 -1
  103. package/src/utils/isSameAddress/utils/normalizeAddress/normalizeAddress.js +0 -13
  104. package/src/utils/isSocialWalletConnector/index.d.ts +0 -1
  105. package/src/utils/isSocialWalletConnector/isSocialWalletConnector.cjs +0 -7
  106. package/src/utils/isSocialWalletConnector/isSocialWalletConnector.d.ts +0 -2
  107. package/src/utils/isSocialWalletConnector/isSocialWalletConnector.js +0 -3
  108. package/src/utils/isUnsupportedProviderError/index.d.ts +0 -1
  109. package/src/utils/isUnsupportedProviderError/isUnsupportedProviderError.cjs +0 -13
  110. package/src/utils/isUnsupportedProviderError/isUnsupportedProviderError.d.ts +0 -6
  111. package/src/utils/isUnsupportedProviderError/isUnsupportedProviderError.js +0 -9
  112. package/src/utils/localStorageAsync.cjs +0 -28
  113. package/src/utils/localStorageAsync.d.ts +0 -3
  114. package/src/utils/localStorageAsync.js +0 -22
  115. package/src/utils/logger.cjs +0 -9
  116. package/src/utils/logger.d.ts +0 -2
  117. package/src/utils/logger.js +0 -5
  118. package/src/utils/normalizeWalletName/index.d.ts +0 -1
  119. package/src/utils/normalizeWalletName/normalizeWalletName.cjs +0 -7
  120. package/src/utils/normalizeWalletName/normalizeWalletName.d.ts +0 -1
  121. package/src/utils/normalizeWalletName/normalizeWalletName.js +0 -3
  122. package/src/utils/shouldLowercaseAddress.cjs +0 -11
  123. package/src/utils/shouldLowercaseAddress.d.ts +0 -1
  124. package/src/utils/shouldLowercaseAddress.js +0 -7
  125. package/src/utils/walletConnect.cjs +0 -30
  126. package/src/utils/walletConnect.d.ts +0 -4
  127. package/src/utils/walletConnect.js +0 -26
  128. package/src/wallets/ProviderLookup.cjs +0 -18
  129. package/src/wallets/ProviderLookup.d.ts +0 -4
  130. package/src/wallets/ProviderLookup.js +0 -14
  131. package/src/wallets/algorand/myalgo.cjs +0 -187
  132. package/src/wallets/algorand/myalgo.d.ts +0 -36
  133. package/src/wallets/algorand/myalgo.js +0 -181
  134. package/src/wallets/algorand/myalgoSigner.cjs +0 -24
  135. package/src/wallets/algorand/myalgoSigner.d.ts +0 -21
  136. package/src/wallets/algorand/myalgoSigner.js +0 -20
  137. package/src/wallets/clients/coinbase/coinbase.cjs +0 -77
  138. package/src/wallets/clients/coinbase/coinbase.d.ts +0 -6
  139. package/src/wallets/clients/coinbase/coinbase.js +0 -66
  140. package/src/wallets/clients/coinbase/index.d.ts +0 -2
  141. package/src/wallets/clients/coinbase/types.d.ts +0 -14
  142. package/src/wallets/clients/walletConnect/index.d.ts +0 -1
  143. package/src/wallets/clients/walletConnect/types.d.ts +0 -4
  144. package/src/wallets/cosmos/getKeplrConnector.cjs +0 -18
  145. package/src/wallets/cosmos/getKeplrConnector.d.ts +0 -6
  146. package/src/wallets/cosmos/getKeplrConnector.js +0 -14
  147. package/src/wallets/ethereum/BloctoEvm.cjs +0 -140
  148. package/src/wallets/ethereum/BloctoEvm.d.ts +0 -34
  149. package/src/wallets/ethereum/BloctoEvm.js +0 -134
  150. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/EmailMagicWalletConnector.cjs +0 -58
  151. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/EmailMagicWalletConnector.d.ts +0 -12
  152. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/EmailMagicWalletConnector.js +0 -54
  153. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/index.d.ts +0 -1
  154. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/EmailOTPMagicWalletConnector.cjs +0 -62
  155. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/EmailOTPMagicWalletConnector.d.ts +0 -11
  156. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/EmailOTPMagicWalletConnector.js +0 -58
  157. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/index.d.ts +0 -1
  158. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.cjs +0 -103
  159. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.d.ts +0 -34
  160. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/MagicClientNetworkHandler.js +0 -99
  161. package/src/wallets/ethereum/MagicConnector/MagicClientNetworkHandler/index.d.ts +0 -2
  162. package/src/wallets/ethereum/MagicConnector/MagicSocialWalletConnector/MagicSocialWalletConnector.cjs +0 -56
  163. package/src/wallets/ethereum/MagicConnector/MagicSocialWalletConnector/MagicSocialWalletConnector.d.ts +0 -12
  164. package/src/wallets/ethereum/MagicConnector/MagicSocialWalletConnector/MagicSocialWalletConnector.js +0 -52
  165. package/src/wallets/ethereum/MagicConnector/MagicSocialWalletConnector/index.d.ts +0 -1
  166. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.cjs +0 -182
  167. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.d.ts +0 -60
  168. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.js +0 -178
  169. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/index.d.ts +0 -2
  170. package/src/wallets/ethereum/MagicConnector/index.d.ts +0 -5
  171. package/src/wallets/ethereum/coinbase.cjs +0 -81
  172. package/src/wallets/ethereum/coinbase.d.ts +0 -31
  173. package/src/wallets/ethereum/coinbase.js +0 -79
  174. package/src/wallets/ethereum/ethProvider.cjs +0 -171
  175. package/src/wallets/ethereum/ethProvider.d.ts +0 -35
  176. package/src/wallets/ethereum/ethProvider.js +0 -167
  177. package/src/wallets/ethereum/ethProviderHelper.cjs +0 -190
  178. package/src/wallets/ethereum/ethProviderHelper.d.ts +0 -40
  179. package/src/wallets/ethereum/ethProviderHelper.js +0 -186
  180. package/src/wallets/ethereum/evm-network.cjs +0 -20
  181. package/src/wallets/ethereum/evm-network.d.ts +0 -22
  182. package/src/wallets/ethereum/evm-network.js +0 -16
  183. package/src/wallets/ethereum/fortmatic.cjs +0 -98
  184. package/src/wallets/ethereum/fortmatic.d.ts +0 -34
  185. package/src/wallets/ethereum/fortmatic.js +0 -92
  186. package/src/wallets/ethereum/injected/BloctoInjected.cjs +0 -13
  187. package/src/wallets/ethereum/injected/BloctoInjected.d.ts +0 -6
  188. package/src/wallets/ethereum/injected/BloctoInjected.js +0 -11
  189. package/src/wallets/ethereum/injected/BraveEvm.cjs +0 -13
  190. package/src/wallets/ethereum/injected/BraveEvm.d.ts +0 -6
  191. package/src/wallets/ethereum/injected/BraveEvm.js +0 -11
  192. package/src/wallets/ethereum/injected/Dawn.cjs +0 -13
  193. package/src/wallets/ethereum/injected/Dawn.d.ts +0 -6
  194. package/src/wallets/ethereum/injected/Dawn.js +0 -11
  195. package/src/wallets/ethereum/injected/ExodusEvm.cjs +0 -13
  196. package/src/wallets/ethereum/injected/ExodusEvm.d.ts +0 -6
  197. package/src/wallets/ethereum/injected/ExodusEvm.js +0 -11
  198. package/src/wallets/ethereum/injected/Frame.cjs +0 -13
  199. package/src/wallets/ethereum/injected/Frame.d.ts +0 -6
  200. package/src/wallets/ethereum/injected/Frame.js +0 -11
  201. package/src/wallets/ethereum/injected/GameStop.cjs +0 -13
  202. package/src/wallets/ethereum/injected/GameStop.d.ts +0 -6
  203. package/src/wallets/ethereum/injected/GameStop.js +0 -11
  204. package/src/wallets/ethereum/injected/Opera.cjs +0 -13
  205. package/src/wallets/ethereum/injected/Opera.d.ts +0 -6
  206. package/src/wallets/ethereum/injected/Opera.js +0 -11
  207. package/src/wallets/ethereum/injected/PhantomEvm.cjs +0 -37
  208. package/src/wallets/ethereum/injected/PhantomEvm.d.ts +0 -7
  209. package/src/wallets/ethereum/injected/PhantomEvm.js +0 -35
  210. package/src/wallets/ethereum/injected/Trust.cjs +0 -13
  211. package/src/wallets/ethereum/injected/Trust.d.ts +0 -6
  212. package/src/wallets/ethereum/injected/Trust.js +0 -11
  213. package/src/wallets/ethereum/injected/UnknownInjectedWallet.cjs +0 -13
  214. package/src/wallets/ethereum/injected/UnknownInjectedWallet.d.ts +0 -6
  215. package/src/wallets/ethereum/injected/UnknownInjectedWallet.js +0 -11
  216. package/src/wallets/ethereum/injected/Zerion.cjs +0 -13
  217. package/src/wallets/ethereum/injected/Zerion.d.ts +0 -6
  218. package/src/wallets/ethereum/injected/Zerion.js +0 -11
  219. package/src/wallets/ethereum/meta-mask.cjs +0 -70
  220. package/src/wallets/ethereum/meta-mask.d.ts +0 -30
  221. package/src/wallets/ethereum/meta-mask.js +0 -68
  222. package/src/wallets/getMobileOrInjectedWallet.cjs +0 -26
  223. package/src/wallets/getMobileOrInjectedWallet.d.ts +0 -10
  224. package/src/wallets/getMobileOrInjectedWallet.js +0 -22
  225. package/src/wallets/getWalletConnectConnector.cjs +0 -18
  226. package/src/wallets/getWalletConnectConnector.d.ts +0 -7
  227. package/src/wallets/getWalletConnectConnector.js +0 -14
  228. package/src/wallets/initializeWalletProviders.cjs +0 -14
  229. package/src/wallets/initializeWalletProviders.d.ts +0 -6
  230. package/src/wallets/initializeWalletProviders.js +0 -10
  231. package/src/wallets/solana/CoinbaseSolana.cjs +0 -77
  232. package/src/wallets/solana/CoinbaseSolana.d.ts +0 -26
  233. package/src/wallets/solana/CoinbaseSolana.js +0 -75
  234. package/src/wallets/solana/glow.cjs +0 -74
  235. package/src/wallets/solana/glow.d.ts +0 -25
  236. package/src/wallets/solana/glow.js +0 -72
  237. package/src/wallets/solana/injected/BraveSol.cjs +0 -18
  238. package/src/wallets/solana/injected/BraveSol.d.ts +0 -6
  239. package/src/wallets/solana/injected/BraveSol.js +0 -16
  240. package/src/wallets/solana/injected/ExodusSol.cjs +0 -12
  241. package/src/wallets/solana/injected/ExodusSol.d.ts +0 -5
  242. package/src/wallets/solana/injected/ExodusSol.js +0 -10
  243. package/src/wallets/solana/phantom-ledger.cjs +0 -71
  244. package/src/wallets/solana/phantom-ledger.d.ts +0 -16
  245. package/src/wallets/solana/phantom-ledger.js +0 -65
  246. package/src/wallets/solana/phantom.cjs +0 -97
  247. package/src/wallets/solana/phantom.d.ts +0 -26
  248. package/src/wallets/solana/phantom.js +0 -95
  249. package/src/wallets/solana/slope.cjs +0 -125
  250. package/src/wallets/solana/slope.d.ts +0 -39
  251. package/src/wallets/solana/slope.js +0 -123
  252. package/src/wallets/solana/solProvider.cjs +0 -62
  253. package/src/wallets/solana/solProvider.d.ts +0 -18
  254. package/src/wallets/solana/solProvider.js +0 -58
  255. package/src/wallets/solana/solProviderHelper.cjs +0 -164
  256. package/src/wallets/solana/solProviderHelper.d.ts +0 -29
  257. package/src/wallets/solana/solProviderHelper.js +0 -160
  258. package/src/wallets/solana/solflare.cjs +0 -94
  259. package/src/wallets/solana/solflare.d.ts +0 -26
  260. package/src/wallets/solana/solflare.js +0 -92
  261. package/src/wallets/walletConnect/index.d.ts +0 -2
  262. package/src/wallets/walletConnect/walletConnect.cjs +0 -147
  263. package/src/wallets/walletConnect/walletConnect.d.ts +0 -39
  264. package/src/wallets/walletConnect/walletConnect.js +0 -141
  265. package/src/wallets/walletConnect/walletConnectV2.cjs +0 -282
  266. package/src/wallets/walletConnect/walletConnectV2.d.ts +0 -40
  267. package/src/wallets/walletConnect/walletConnectV2.js +0 -273
  268. package/src/wallets/walletConnect/zerion.d.ts +0 -8
@@ -1,94 +0,0 @@
1
- 'use strict';
2
-
3
- var tslib = require('tslib');
4
- var errors = require('../../errors.cjs');
5
- var convertors = require('../../utils/convertors.cjs');
6
- var normalizeWalletName = require('../../utils/normalizeWalletName/normalizeWalletName.cjs');
7
- var solProvider = require('./solProvider.cjs');
8
- var solProviderHelper = require('./solProviderHelper.cjs');
9
-
10
- class Solflare extends solProvider.SolProvider {
11
- constructor() {
12
- super(...arguments);
13
- this.name = 'Solflare';
14
- this.supportedChains = ['SOL'];
15
- this.connectedChain = 'SOL';
16
- this.canConnectViaQrCode = false;
17
- this.canConnectViaCustodialService = false;
18
- this.isWalletConnect = false;
19
- this.solProviderHelper = new solProviderHelper.SolProviderHelper();
20
- }
21
- get key() {
22
- return normalizeWalletName.normalizeWalletName(this.name);
23
- }
24
- setupEventListeners() {
25
- return;
26
- }
27
- teardownEventListeners() {
28
- return;
29
- }
30
- isInstalledOnBrowser() {
31
- return this.solProviderHelper.isInstalledHelper(this.name);
32
- }
33
- fetchPublicAddress() {
34
- return tslib.__awaiter(this, void 0, void 0, function* () {
35
- return this.solProviderHelper.fetchPublicAddressWithName(this.name);
36
- });
37
- }
38
- connect() {
39
- return tslib.__awaiter(this, void 0, void 0, function* () {
40
- yield this.solProviderHelper.connectWithName(this.name);
41
- });
42
- }
43
- getSigner() {
44
- return tslib.__awaiter(this, void 0, void 0, function* () {
45
- return this.solProviderHelper.connectWithName(this.name);
46
- });
47
- }
48
- signMessage(messageToSign) {
49
- return tslib.__awaiter(this, void 0, void 0, function* () {
50
- const walletAddress = yield this.fetchPublicAddress();
51
- if (!walletAddress) {
52
- return undefined;
53
- }
54
- const provider = this.solProviderHelper.findProvider(this.name);
55
- if (!provider) {
56
- return undefined;
57
- }
58
- const encodedMessage = new TextEncoder().encode(messageToSign);
59
- const isSignedMessage = (value) => value.signature !== undefined;
60
- yield provider.connect();
61
- /**
62
- * TODO: Remove the sleep once problem is fixed on Solflare's extension.
63
- * Tracked in DYN-442
64
- */
65
- yield new Promise((resolve) => {
66
- setTimeout(resolve, 100);
67
- });
68
- const rawMessage = yield provider.signMessage(encodedMessage, 'utf8');
69
- return isSignedMessage(rawMessage)
70
- ? convertors.bufferToBase64(rawMessage.signature)
71
- : undefined;
72
- });
73
- }
74
- proveOwnership(messageToSign) {
75
- return tslib.__awaiter(this, void 0, void 0, function* () {
76
- return this.signMessage(messageToSign);
77
- });
78
- }
79
- supportsNetworkSwitching() {
80
- return false;
81
- }
82
- switchNetwork() {
83
- return tslib.__awaiter(this, void 0, void 0, function* () {
84
- throw new errors.DynamicError('Not supported');
85
- });
86
- }
87
- getConnectedAccounts() {
88
- return tslib.__awaiter(this, void 0, void 0, function* () {
89
- return this.solProviderHelper.getConnectedAccountsWithName(this.name);
90
- });
91
- }
92
- }
93
-
94
- module.exports = Solflare;
@@ -1,26 +0,0 @@
1
- import { Chain, WalletConnector } from '@dynamic-labs/wallet-connector-core';
2
- import { ISolana } from '../window';
3
- import { SolProvider } from './solProvider';
4
- import { SolProviderHelper } from './solProviderHelper';
5
- declare class Solflare extends SolProvider implements WalletConnector {
6
- name: string;
7
- supportedChains: Chain[];
8
- connectedChain: Chain;
9
- canConnectViaQrCode: boolean;
10
- canConnectViaCustodialService: boolean;
11
- isWalletConnect: boolean;
12
- solProviderHelper: SolProviderHelper;
13
- get key(): string;
14
- setupEventListeners(): void;
15
- teardownEventListeners(): void;
16
- isInstalledOnBrowser(): boolean;
17
- fetchPublicAddress(): Promise<string | undefined>;
18
- connect(): Promise<void>;
19
- getSigner(): Promise<ISolana | undefined>;
20
- signMessage(messageToSign: string): Promise<string | undefined>;
21
- proveOwnership(messageToSign: string): Promise<string | undefined>;
22
- supportsNetworkSwitching(): boolean;
23
- switchNetwork(): Promise<void>;
24
- getConnectedAccounts(): Promise<string[]>;
25
- }
26
- export default Solflare;
@@ -1,92 +0,0 @@
1
- import { __awaiter } from 'tslib';
2
- import { DynamicError } from '../../errors.js';
3
- import { bufferToBase64 } from '../../utils/convertors.js';
4
- import { normalizeWalletName } from '../../utils/normalizeWalletName/normalizeWalletName.js';
5
- import { SolProvider } from './solProvider.js';
6
- import { SolProviderHelper } from './solProviderHelper.js';
7
-
8
- class Solflare extends SolProvider {
9
- constructor() {
10
- super(...arguments);
11
- this.name = 'Solflare';
12
- this.supportedChains = ['SOL'];
13
- this.connectedChain = 'SOL';
14
- this.canConnectViaQrCode = false;
15
- this.canConnectViaCustodialService = false;
16
- this.isWalletConnect = false;
17
- this.solProviderHelper = new SolProviderHelper();
18
- }
19
- get key() {
20
- return normalizeWalletName(this.name);
21
- }
22
- setupEventListeners() {
23
- return;
24
- }
25
- teardownEventListeners() {
26
- return;
27
- }
28
- isInstalledOnBrowser() {
29
- return this.solProviderHelper.isInstalledHelper(this.name);
30
- }
31
- fetchPublicAddress() {
32
- return __awaiter(this, void 0, void 0, function* () {
33
- return this.solProviderHelper.fetchPublicAddressWithName(this.name);
34
- });
35
- }
36
- connect() {
37
- return __awaiter(this, void 0, void 0, function* () {
38
- yield this.solProviderHelper.connectWithName(this.name);
39
- });
40
- }
41
- getSigner() {
42
- return __awaiter(this, void 0, void 0, function* () {
43
- return this.solProviderHelper.connectWithName(this.name);
44
- });
45
- }
46
- signMessage(messageToSign) {
47
- return __awaiter(this, void 0, void 0, function* () {
48
- const walletAddress = yield this.fetchPublicAddress();
49
- if (!walletAddress) {
50
- return undefined;
51
- }
52
- const provider = this.solProviderHelper.findProvider(this.name);
53
- if (!provider) {
54
- return undefined;
55
- }
56
- const encodedMessage = new TextEncoder().encode(messageToSign);
57
- const isSignedMessage = (value) => value.signature !== undefined;
58
- yield provider.connect();
59
- /**
60
- * TODO: Remove the sleep once problem is fixed on Solflare's extension.
61
- * Tracked in DYN-442
62
- */
63
- yield new Promise((resolve) => {
64
- setTimeout(resolve, 100);
65
- });
66
- const rawMessage = yield provider.signMessage(encodedMessage, 'utf8');
67
- return isSignedMessage(rawMessage)
68
- ? bufferToBase64(rawMessage.signature)
69
- : undefined;
70
- });
71
- }
72
- proveOwnership(messageToSign) {
73
- return __awaiter(this, void 0, void 0, function* () {
74
- return this.signMessage(messageToSign);
75
- });
76
- }
77
- supportsNetworkSwitching() {
78
- return false;
79
- }
80
- switchNetwork() {
81
- return __awaiter(this, void 0, void 0, function* () {
82
- throw new DynamicError('Not supported');
83
- });
84
- }
85
- getConnectedAccounts() {
86
- return __awaiter(this, void 0, void 0, function* () {
87
- return this.solProviderHelper.getConnectedAccountsWithName(this.name);
88
- });
89
- }
90
- }
91
-
92
- export { Solflare as default };
@@ -1,2 +0,0 @@
1
- export { default } from './walletConnect';
2
- export { default as WalletConnectV2 } from './walletConnectV2';
@@ -1,147 +0,0 @@
1
- 'use strict';
2
-
3
- var tslib = require('tslib');
4
- var WalletConnectProvider = require('@walletconnect/ethereum-provider');
5
- var ethers = require('ethers');
6
- var walletBook = require('@dynamic-labs/wallet-book');
7
- var constants = require('../constants.cjs');
8
- var ethProvider = require('../ethereum/ethProvider.cjs');
9
- var walletConnect = require('../clients/walletConnect/walletConnect.cjs');
10
- var isMobile = require('../../utils/isMobile.cjs');
11
- var normalizeWalletName = require('../../utils/normalizeWalletName/normalizeWalletName.cjs');
12
- var errors = require('../../errors.cjs');
13
-
14
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
15
-
16
- var WalletConnectProvider__default = /*#__PURE__*/_interopDefaultLegacy(WalletConnectProvider);
17
-
18
- class WalletConnect extends ethProvider.EthProvider {
19
- constructor({ walletName, evmNetworks, }) {
20
- super({ evmNetworks });
21
- this.supportedChains = ['EVM', 'ETH'];
22
- this.connectedChain = 'EVM';
23
- this.canConnectViaQrCode = true;
24
- this.canConnectViaCustodialService = false;
25
- this.isWalletConnect = true;
26
- this.switchNetworkOnlyFromWallet = false;
27
- this.name = walletName;
28
- }
29
- get key() {
30
- return normalizeWalletName.normalizeWalletName(this.name);
31
- }
32
- getClient() {
33
- if (this.client) {
34
- return this.client;
35
- }
36
- this.client = walletConnect.initClient(normalizeWalletName.normalizeWalletName(this.name), this.clientOptions);
37
- return this.client;
38
- }
39
- supportsNetworkSwitching() {
40
- if (this.connectedChain === 'EVM') {
41
- return true;
42
- }
43
- else {
44
- const client = this.getClient();
45
- return Boolean(client === null || client === void 0 ? void 0 : client.chainId);
46
- }
47
- }
48
- setupEventListeners(listeners) {
49
- return walletConnect.setupWalletConnectEventListeners({
50
- onAccountChange: listeners.onAccountChange,
51
- onChainChange: listeners.onChainChange,
52
- onDisconnect: listeners.onDisconnect,
53
- }, this.getClient());
54
- }
55
- teardownEventListeners() {
56
- walletConnect.teardownWalletConnectEventListeners(this.getClient());
57
- }
58
- getWeb3Provider() {
59
- const client = this.getClient();
60
- return client
61
- ? new ethers.ethers.providers.Web3Provider(new WalletConnectProvider__default["default"]({
62
- connector: client,
63
- infuraId: constants.infuraId,
64
- rpc: this.evmNetworkRpcMap(),
65
- }), 'any')
66
- : undefined;
67
- }
68
- isInstalledOnBrowser() {
69
- return false;
70
- }
71
- connect() {
72
- return tslib.__awaiter(this, void 0, void 0, function* () {
73
- yield this.fetchPublicAddress();
74
- });
75
- }
76
- fetchPublicAddress(opts) {
77
- return tslib.__awaiter(this, void 0, void 0, function* () {
78
- return walletConnect.fetchWalletConnectEVMPublicAddress(walletBook.getWalletBookWallet(this.name), this.getClient(), Object.assign(Object.assign({}, opts), { onConnect: (payload) => {
79
- var _a;
80
- (_a = opts === null || opts === void 0 ? void 0 : opts.onConnect) === null || _a === void 0 ? void 0 : _a.call(opts, payload);
81
- this.connectedChain = payload.params[0].chainId ? 'EVM' : 'SOL';
82
- } }));
83
- });
84
- }
85
- getDeepLink() {
86
- var _a;
87
- const wallet = walletBook.getWalletBookWallet(this.name);
88
- if (!isMobile.isMobile() && !((_a = wallet.desktop) === null || _a === void 0 ? void 0 : _a.native)) {
89
- return undefined;
90
- }
91
- return walletConnect.getDeepLink(this.getClient().uri, wallet, {
92
- removeWCUri: isMobile.isIOS() && normalizeWalletName.normalizeWalletName(this.name) === 'cryptocom',
93
- });
94
- }
95
- signMessage(messageToSign) {
96
- return tslib.__awaiter(this, void 0, void 0, function* () {
97
- return walletConnect.signWalletConnectPersonalMessage(messageToSign, walletBook.getWalletBookWallet(this.name), this.getClient());
98
- });
99
- }
100
- proveOwnership(messageToSign) {
101
- return tslib.__awaiter(this, void 0, void 0, function* () {
102
- return this.signMessage(messageToSign);
103
- });
104
- }
105
- endSession() {
106
- return tslib.__awaiter(this, void 0, void 0, function* () {
107
- walletConnect.killWalletConnectSession(this.getClient());
108
- });
109
- }
110
- providerSwitchNetwork({ network, provider, }) {
111
- const _super = Object.create(null, {
112
- providerSwitchNetwork: { get: () => super.providerSwitchNetwork }
113
- });
114
- return tslib.__awaiter(this, void 0, void 0, function* () {
115
- const client = this.getClient();
116
- const currentNetworkId = yield this.getNetwork();
117
- if (currentNetworkId && currentNetworkId === network.chainId) {
118
- return;
119
- }
120
- if (this.switchNetworkOnlyFromWallet !== undefined &&
121
- this.switchNetworkOnlyFromWallet) {
122
- throw new errors.DynamicError('Network switching is only supported through the wallet');
123
- }
124
- if (!this.supportsNetworkSwitching()) {
125
- throw new errors.DynamicError('Network switching not supported');
126
- }
127
- if (!client) {
128
- throw new errors.DynamicError('Client not found');
129
- }
130
- if (isMobile.isMobile()) {
131
- const deepLink = walletConnect.getDeepLink(client.uri, walletBook.getWalletBookWallet(this.name));
132
- window.location.href = deepLink;
133
- }
134
- return _super.providerSwitchNetwork.call(this, { network, provider });
135
- });
136
- }
137
- getConnectedAccounts() {
138
- return tslib.__awaiter(this, void 0, void 0, function* () {
139
- const client = this.getClient();
140
- if (!client.connected)
141
- return [];
142
- return client.accounts;
143
- });
144
- }
145
- }
146
-
147
- module.exports = WalletConnect;
@@ -1,39 +0,0 @@
1
- import Client from '@walletconnect/client';
2
- import { ethers } from 'ethers';
3
- import { Chain, FetchPublicAddressOpts, WalletConnector, WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
4
- import { EthProvider } from '../ethereum/ethProvider';
5
- import { EvmNetwork } from '../ethereum/evm-network';
6
- declare class WalletConnect extends EthProvider implements WalletConnector {
7
- supportedChains: Chain[];
8
- connectedChain: Chain;
9
- name: string;
10
- canConnectViaQrCode: boolean;
11
- canConnectViaCustodialService: boolean;
12
- isWalletConnect: boolean;
13
- switchNetworkOnlyFromWallet: boolean;
14
- client?: Client;
15
- clientOptions?: any;
16
- constructor({ walletName, evmNetworks, }: {
17
- evmNetworks: EvmNetwork[];
18
- walletName: string;
19
- });
20
- get key(): string;
21
- getClient(): Client;
22
- supportsNetworkSwitching(): boolean;
23
- setupEventListeners(listeners: WalletEventListeners): () => void;
24
- teardownEventListeners(): void;
25
- getWeb3Provider(): ethers.providers.Web3Provider | undefined;
26
- isInstalledOnBrowser(): boolean;
27
- connect(): Promise<void>;
28
- fetchPublicAddress(opts?: FetchPublicAddressOpts): Promise<string | undefined>;
29
- getDeepLink(): string | undefined;
30
- signMessage(messageToSign: string): Promise<string | undefined>;
31
- proveOwnership(messageToSign: string): Promise<string | undefined>;
32
- endSession(): Promise<void>;
33
- providerSwitchNetwork({ network, provider, }: {
34
- network: EvmNetwork;
35
- provider: ethers.providers.Web3Provider;
36
- }): Promise<void>;
37
- getConnectedAccounts(): Promise<string[]>;
38
- }
39
- export default WalletConnect;
@@ -1,141 +0,0 @@
1
- import { __awaiter } from 'tslib';
2
- import WalletConnectProvider from '@walletconnect/ethereum-provider';
3
- import { ethers } from 'ethers';
4
- import { getWalletBookWallet } from '@dynamic-labs/wallet-book';
5
- import { infuraId } from '../constants.js';
6
- import { EthProvider } from '../ethereum/ethProvider.js';
7
- import { initClient, setupWalletConnectEventListeners, teardownWalletConnectEventListeners, fetchWalletConnectEVMPublicAddress, getDeepLink, signWalletConnectPersonalMessage, killWalletConnectSession } from '../clients/walletConnect/walletConnect.js';
8
- import { isMobile, isIOS } from '../../utils/isMobile.js';
9
- import { normalizeWalletName } from '../../utils/normalizeWalletName/normalizeWalletName.js';
10
- import { DynamicError } from '../../errors.js';
11
-
12
- class WalletConnect extends EthProvider {
13
- constructor({ walletName, evmNetworks, }) {
14
- super({ evmNetworks });
15
- this.supportedChains = ['EVM', 'ETH'];
16
- this.connectedChain = 'EVM';
17
- this.canConnectViaQrCode = true;
18
- this.canConnectViaCustodialService = false;
19
- this.isWalletConnect = true;
20
- this.switchNetworkOnlyFromWallet = false;
21
- this.name = walletName;
22
- }
23
- get key() {
24
- return normalizeWalletName(this.name);
25
- }
26
- getClient() {
27
- if (this.client) {
28
- return this.client;
29
- }
30
- this.client = initClient(normalizeWalletName(this.name), this.clientOptions);
31
- return this.client;
32
- }
33
- supportsNetworkSwitching() {
34
- if (this.connectedChain === 'EVM') {
35
- return true;
36
- }
37
- else {
38
- const client = this.getClient();
39
- return Boolean(client === null || client === void 0 ? void 0 : client.chainId);
40
- }
41
- }
42
- setupEventListeners(listeners) {
43
- return setupWalletConnectEventListeners({
44
- onAccountChange: listeners.onAccountChange,
45
- onChainChange: listeners.onChainChange,
46
- onDisconnect: listeners.onDisconnect,
47
- }, this.getClient());
48
- }
49
- teardownEventListeners() {
50
- teardownWalletConnectEventListeners(this.getClient());
51
- }
52
- getWeb3Provider() {
53
- const client = this.getClient();
54
- return client
55
- ? new ethers.providers.Web3Provider(new WalletConnectProvider({
56
- connector: client,
57
- infuraId,
58
- rpc: this.evmNetworkRpcMap(),
59
- }), 'any')
60
- : undefined;
61
- }
62
- isInstalledOnBrowser() {
63
- return false;
64
- }
65
- connect() {
66
- return __awaiter(this, void 0, void 0, function* () {
67
- yield this.fetchPublicAddress();
68
- });
69
- }
70
- fetchPublicAddress(opts) {
71
- return __awaiter(this, void 0, void 0, function* () {
72
- return fetchWalletConnectEVMPublicAddress(getWalletBookWallet(this.name), this.getClient(), Object.assign(Object.assign({}, opts), { onConnect: (payload) => {
73
- var _a;
74
- (_a = opts === null || opts === void 0 ? void 0 : opts.onConnect) === null || _a === void 0 ? void 0 : _a.call(opts, payload);
75
- this.connectedChain = payload.params[0].chainId ? 'EVM' : 'SOL';
76
- } }));
77
- });
78
- }
79
- getDeepLink() {
80
- var _a;
81
- const wallet = getWalletBookWallet(this.name);
82
- if (!isMobile() && !((_a = wallet.desktop) === null || _a === void 0 ? void 0 : _a.native)) {
83
- return undefined;
84
- }
85
- return getDeepLink(this.getClient().uri, wallet, {
86
- removeWCUri: isIOS() && normalizeWalletName(this.name) === 'cryptocom',
87
- });
88
- }
89
- signMessage(messageToSign) {
90
- return __awaiter(this, void 0, void 0, function* () {
91
- return signWalletConnectPersonalMessage(messageToSign, getWalletBookWallet(this.name), this.getClient());
92
- });
93
- }
94
- proveOwnership(messageToSign) {
95
- return __awaiter(this, void 0, void 0, function* () {
96
- return this.signMessage(messageToSign);
97
- });
98
- }
99
- endSession() {
100
- return __awaiter(this, void 0, void 0, function* () {
101
- killWalletConnectSession(this.getClient());
102
- });
103
- }
104
- providerSwitchNetwork({ network, provider, }) {
105
- const _super = Object.create(null, {
106
- providerSwitchNetwork: { get: () => super.providerSwitchNetwork }
107
- });
108
- return __awaiter(this, void 0, void 0, function* () {
109
- const client = this.getClient();
110
- const currentNetworkId = yield this.getNetwork();
111
- if (currentNetworkId && currentNetworkId === network.chainId) {
112
- return;
113
- }
114
- if (this.switchNetworkOnlyFromWallet !== undefined &&
115
- this.switchNetworkOnlyFromWallet) {
116
- throw new DynamicError('Network switching is only supported through the wallet');
117
- }
118
- if (!this.supportsNetworkSwitching()) {
119
- throw new DynamicError('Network switching not supported');
120
- }
121
- if (!client) {
122
- throw new DynamicError('Client not found');
123
- }
124
- if (isMobile()) {
125
- const deepLink = getDeepLink(client.uri, getWalletBookWallet(this.name));
126
- window.location.href = deepLink;
127
- }
128
- return _super.providerSwitchNetwork.call(this, { network, provider });
129
- });
130
- }
131
- getConnectedAccounts() {
132
- return __awaiter(this, void 0, void 0, function* () {
133
- const client = this.getClient();
134
- if (!client.connected)
135
- return [];
136
- return client.accounts;
137
- });
138
- }
139
- }
140
-
141
- export { WalletConnect as default };