@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,123 +0,0 @@
1
- import { __awaiter } from 'tslib';
2
- import { PublicKey } from '@solana/web3.js';
3
- import { DynamicError } from '../../errors.js';
4
- import { logger } from '../../utils/logger.js';
5
- import { normalizeWalletName } from '../../utils/normalizeWalletName/normalizeWalletName.js';
6
- import { SolProvider } from './solProvider.js';
7
-
8
- class Slope extends SolProvider {
9
- constructor() {
10
- super(...arguments);
11
- this.name = 'Slope';
12
- this.supportedChains = ['SOL'];
13
- this.connectedChain = 'SOL';
14
- this.canConnectViaQrCode = false;
15
- this.canConnectViaCustodialService = false;
16
- this.isWalletConnect = false;
17
- this.isConnectData = (value) => { var _a; return ((_a = value.data) === null || _a === void 0 ? void 0 : _a.publicKey) !== undefined; };
18
- this.isSignatureData = (value) => { var _a; return ((_a = value.data) === null || _a === void 0 ? void 0 : _a.signature) !== undefined; };
19
- }
20
- get key() {
21
- return normalizeWalletName(this.name);
22
- }
23
- get wallet() {
24
- if (!window.Slope) {
25
- return undefined;
26
- }
27
- if (!Slope._wallet) {
28
- Slope._wallet = new window.Slope();
29
- }
30
- return Slope._wallet;
31
- }
32
- setupEventListeners() {
33
- return;
34
- }
35
- teardownEventListeners() {
36
- return;
37
- }
38
- connect() {
39
- return __awaiter(this, void 0, void 0, function* () {
40
- if (this.wallet === undefined)
41
- return;
42
- yield this.wallet.connect();
43
- });
44
- }
45
- getSigner() {
46
- return __awaiter(this, void 0, void 0, function* () {
47
- return undefined;
48
- });
49
- }
50
- getBalance() {
51
- return __awaiter(this, void 0, void 0, function* () {
52
- try {
53
- if (this.wallet === undefined)
54
- return undefined;
55
- const response = yield this.wallet.connect();
56
- const publicKey = new PublicKey(this.isConnectData(response) && response.data.publicKey);
57
- const balance = this.lamportsToSol(yield this.getWeb3Provider().getBalance(publicKey));
58
- return balance.toString();
59
- }
60
- catch (e) {
61
- logger.debug(e);
62
- return undefined;
63
- }
64
- });
65
- }
66
- isInstalledOnBrowser() {
67
- return typeof window.Slope === 'function';
68
- }
69
- fetchPublicAddress() {
70
- return __awaiter(this, void 0, void 0, function* () {
71
- try {
72
- if (this.wallet === undefined)
73
- return undefined;
74
- const response = yield this.wallet.connect();
75
- return this.isConnectData(response) ? response.data.publicKey : undefined;
76
- }
77
- catch (e) {
78
- logger.debug(e);
79
- return undefined;
80
- }
81
- });
82
- }
83
- signMessage(messageToSign) {
84
- return __awaiter(this, void 0, void 0, function* () {
85
- const encodedMessage = new TextEncoder().encode(messageToSign);
86
- try {
87
- if (this.wallet === undefined)
88
- return undefined;
89
- const response = yield this.wallet.signMessage(encodedMessage);
90
- return this.isSignatureData(response)
91
- ? response.data.signature
92
- : undefined;
93
- }
94
- catch (e) {
95
- logger.debug(e);
96
- return undefined;
97
- }
98
- });
99
- }
100
- proveOwnership(messageToSign) {
101
- return __awaiter(this, void 0, void 0, function* () {
102
- return this.signMessage(messageToSign);
103
- });
104
- }
105
- supportsNetworkSwitching() {
106
- return false;
107
- }
108
- switchNetwork() {
109
- return __awaiter(this, void 0, void 0, function* () {
110
- throw new DynamicError('Not supported');
111
- });
112
- }
113
- getConnectedAccounts() {
114
- return __awaiter(this, void 0, void 0, function* () {
115
- if (this.wallet === undefined)
116
- return [];
117
- const response = yield this.wallet.connect();
118
- return this.isConnectData(response) ? [response.data.publicKey] : [];
119
- });
120
- }
121
- }
122
-
123
- export { Slope as default };
@@ -1,62 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var tslib = require('tslib');
6
- var web3_js = require('@solana/web3.js');
7
- var rpcProviders = require('../../rpcProviders.cjs');
8
- var errors = require('../../errors.cjs');
9
-
10
- class SolProvider {
11
- constructor({ solNetworks }) {
12
- this.canConnectViaSocial = false;
13
- this.solNetworks = solNetworks;
14
- }
15
- getDeepLink() {
16
- return undefined;
17
- }
18
- getWeb3Provider() {
19
- var _a;
20
- const [network] = this.solNetworks;
21
- if (!network) {
22
- throw new errors.DynamicError('No enabled networks');
23
- }
24
- const rpcUrl = ((_a = network.privateCustomerRpcUrls) === null || _a === void 0 ? void 0 : _a[0]) || network.rpcUrls[0];
25
- return new web3_js.Connection(rpcUrl, 'confirmed');
26
- }
27
- getRpcProvider() {
28
- var _a;
29
- return tslib.__awaiter(this, void 0, void 0, function* () {
30
- if (this.solNetworks.length === 0)
31
- return;
32
- const configurations = {
33
- cosmos: [],
34
- evm: undefined,
35
- solana: this.solNetworks,
36
- starknet: undefined,
37
- };
38
- return (_a = rpcProviders.getSolanaDefaultRpcProvider(configurations)) === null || _a === void 0 ? void 0 : _a.provider;
39
- });
40
- }
41
- getNetwork() {
42
- return tslib.__awaiter(this, void 0, void 0, function* () {
43
- return undefined;
44
- });
45
- }
46
- getBalance() {
47
- return tslib.__awaiter(this, void 0, void 0, function* () {
48
- const signer = yield this.getSigner();
49
- if (!signer)
50
- return;
51
- const publicKey = new web3_js.PublicKey(signer.publicKey.toString());
52
- const balance = this.lamportsToSol(yield this.getWeb3Provider().getBalance(publicKey));
53
- return balance.toString();
54
- });
55
- }
56
- // Solana uses lamports as the smallest unit of currency. This converts lamports to SOL.
57
- lamportsToSol(lamports) {
58
- return lamports / 1000000000;
59
- }
60
- }
61
-
62
- exports.SolProvider = SolProvider;
@@ -1,18 +0,0 @@
1
- import { Connection } from '@solana/web3.js';
2
- import type { NetworkConfiguration } from '@dynamic-labs/sdk-api';
3
- import { ISolana } from '../window';
4
- export declare abstract class SolProvider {
5
- canConnectViaSocial: boolean;
6
- solNetworks: NetworkConfiguration[];
7
- constructor({ solNetworks }: {
8
- solNetworks: NetworkConfiguration[];
9
- });
10
- getDeepLink(): string | undefined;
11
- getWeb3Provider(): Connection;
12
- getRpcProvider(): Promise<Connection | undefined>;
13
- abstract getSigner(): Promise<ISolana | undefined>;
14
- abstract connect(): Promise<void>;
15
- getNetwork(): Promise<number | undefined>;
16
- getBalance(): Promise<string | undefined>;
17
- lamportsToSol(lamports: number): number;
18
- }
@@ -1,58 +0,0 @@
1
- import { __awaiter } from 'tslib';
2
- import { Connection, PublicKey } from '@solana/web3.js';
3
- import { getSolanaDefaultRpcProvider } from '../../rpcProviders.js';
4
- import { DynamicError } from '../../errors.js';
5
-
6
- class SolProvider {
7
- constructor({ solNetworks }) {
8
- this.canConnectViaSocial = false;
9
- this.solNetworks = solNetworks;
10
- }
11
- getDeepLink() {
12
- return undefined;
13
- }
14
- getWeb3Provider() {
15
- var _a;
16
- const [network] = this.solNetworks;
17
- if (!network) {
18
- throw new DynamicError('No enabled networks');
19
- }
20
- const rpcUrl = ((_a = network.privateCustomerRpcUrls) === null || _a === void 0 ? void 0 : _a[0]) || network.rpcUrls[0];
21
- return new Connection(rpcUrl, 'confirmed');
22
- }
23
- getRpcProvider() {
24
- var _a;
25
- return __awaiter(this, void 0, void 0, function* () {
26
- if (this.solNetworks.length === 0)
27
- return;
28
- const configurations = {
29
- cosmos: [],
30
- evm: undefined,
31
- solana: this.solNetworks,
32
- starknet: undefined,
33
- };
34
- return (_a = getSolanaDefaultRpcProvider(configurations)) === null || _a === void 0 ? void 0 : _a.provider;
35
- });
36
- }
37
- getNetwork() {
38
- return __awaiter(this, void 0, void 0, function* () {
39
- return undefined;
40
- });
41
- }
42
- getBalance() {
43
- return __awaiter(this, void 0, void 0, function* () {
44
- const signer = yield this.getSigner();
45
- if (!signer)
46
- return;
47
- const publicKey = new PublicKey(signer.publicKey.toString());
48
- const balance = this.lamportsToSol(yield this.getWeb3Provider().getBalance(publicKey));
49
- return balance.toString();
50
- });
51
- }
52
- // Solana uses lamports as the smallest unit of currency. This converts lamports to SOL.
53
- lamportsToSol(lamports) {
54
- return lamports / 1000000000;
55
- }
56
- }
57
-
58
- export { SolProvider };
@@ -1,164 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var tslib = require('tslib');
6
- var convertors = require('../../utils/convertors.cjs');
7
- var ProviderLookup = require('../ProviderLookup.cjs');
8
- var normalizeWalletName = require('../../utils/normalizeWalletName/normalizeWalletName.cjs');
9
-
10
- 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) {
39
- return ProviderLookup.ProviderLookup(this.allInstalledProviders(), providerFlags);
40
- }
41
- allInstalledProviders() {
42
- return this.findSolanaProviders(window.solana).concat(this.findSolanaProviders(window.solflare), this.findSolanaProviders(window.glowSolana));
43
- }
44
- findSolanaProviders(solana) {
45
- const solanaProviders = [];
46
- if (solana && !solana.providers) {
47
- solanaProviders.push(solana);
48
- }
49
- else if (solana && solana.providers) {
50
- solana.providers.forEach((provider) => {
51
- solanaProviders.push(provider);
52
- });
53
- }
54
- return solanaProviders;
55
- }
56
- isInstalledHelper(walletName) {
57
- return this.findProvider(walletName) !== undefined;
58
- }
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);
62
- }
63
- fetchPublicAddressWithName(name) {
64
- return tslib.__awaiter(this, void 0, void 0, function* () {
65
- const provider = this.findProvider(name);
66
- if (!provider) {
67
- return Promise.resolve(undefined);
68
- }
69
- yield provider.connect();
70
- const { publicKey } = provider;
71
- return publicKey ? publicKey.toString() : Promise.resolve(undefined);
72
- });
73
- }
74
- connectWithName(name) {
75
- return tslib.__awaiter(this, void 0, void 0, function* () {
76
- const provider = this.findProvider(name);
77
- if (!provider) {
78
- return Promise.resolve(undefined);
79
- }
80
- try {
81
- yield provider.connect();
82
- return provider;
83
- }
84
- catch (err) {
85
- return undefined;
86
- }
87
- });
88
- }
89
- signMessageWithName(messageToSign, name) {
90
- return tslib.__awaiter(this, void 0, void 0, function* () {
91
- const walletAddress = yield this.fetchPublicAddressWithName(name);
92
- if (!walletAddress) {
93
- return Promise.resolve(undefined);
94
- }
95
- const provider = this.findProvider(name);
96
- if (!provider) {
97
- return Promise.resolve(undefined);
98
- }
99
- const encodedMessage = new TextEncoder().encode(messageToSign);
100
- return provider.connect().then(() => tslib.__awaiter(this, void 0, void 0, function* () {
101
- const { signature } = (yield provider.signMessage(encodedMessage, 'utf8'));
102
- return convertors.bufferToBase64(signature);
103
- }));
104
- });
105
- }
106
- _setupEventListeners(listeners, web3Provider) {
107
- const handleAccountChange = (address) => tslib.__awaiter(this, void 0, void 0, function* () {
108
- var _a, _b, _c;
109
- if (!address) {
110
- 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()]);
113
- }
114
- return;
115
- }
116
- if (address.toString()) {
117
- yield ((_c = listeners.onAccountChange) === null || _c === void 0 ? void 0 : _c.call(listeners, [address.toString()]));
118
- }
119
- });
120
- 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));
123
- });
124
- web3Provider === null || web3Provider === void 0 ? void 0 : web3Provider.on('accountChanged', handleAccountChange);
125
- web3Provider === null || web3Provider === void 0 ? void 0 : web3Provider.on('disconnect', handleDisconnect);
126
- return () => { };
127
- }
128
- _teardownEventListeners(name) {
129
- const web3Provider = this.findProvider(name);
130
- if (!web3Provider) {
131
- return;
132
- }
133
- web3Provider.removeAllListeners();
134
- }
135
- getConnectedAccountsWithName(name) {
136
- return tslib.__awaiter(this, void 0, void 0, function* () {
137
- const provider = this.findProvider(name);
138
- if (!provider) {
139
- return [];
140
- }
141
- let connectionResult;
142
- try {
143
- connectionResult = yield provider.connect({
144
- onlyIfTrusted: true,
145
- });
146
- }
147
- catch (e) {
148
- return [];
149
- }
150
- const { address, publicKey } = connectionResult !== null && connectionResult !== void 0 ? connectionResult : {};
151
- if (address) {
152
- return [address];
153
- }
154
- else if (publicKey) {
155
- return [publicKey.toString()];
156
- }
157
- else {
158
- return [];
159
- }
160
- });
161
- }
162
- }
163
-
164
- exports.SolProviderHelper = SolProviderHelper;
@@ -1,29 +0,0 @@
1
- import { WalletEventListeners } from '@dynamic-labs/wallet-connector-core';
2
- import { ISolana, ProviderCondition } from '../window';
3
- export interface SignedMessage {
4
- signature: Uint8Array;
5
- }
6
- type Provider = () => ISolana | undefined;
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: {
15
- [wallet: string]: Provider;
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[]>;
28
- }
29
- export {};
@@ -1,160 +0,0 @@
1
- import { __awaiter } from 'tslib';
2
- import { bufferToBase64 } from '../../utils/convertors.js';
3
- import { ProviderLookup } from '../ProviderLookup.js';
4
- import { normalizeWalletName } from '../../utils/normalizeWalletName/normalizeWalletName.js';
5
-
6
- class SolProviderHelper {
7
- constructor() {
8
- this.GlowProvider = () => this.installedProviderLookup([{ flag: 'isGlow', value: true }]);
9
- this.CoinbaseProvider = () => this.findSolanaProviders(window.coinbaseSolana)[0];
10
- this.PhantomProvider = () => this.installedProviderLookup([
11
- { flag: 'isPhantom', value: true },
12
- { flag: 'isBraveWallet', value: false },
13
- { flag: 'isExodus', value: false },
14
- ]);
15
- this.SolflareProvider = () => this.installedProviderLookup([{ flag: 'isSolflare', value: true }]);
16
- this.BraveProvider = () => this.installedProviderLookup([
17
- { flag: 'isPhantom', value: true },
18
- { flag: 'isBraveWallet', value: true },
19
- ]);
20
- this.ExodusProvider = () => this.installedProviderLookup([
21
- { flag: 'isPhantom', value: true },
22
- { flag: 'isExodus', value: true },
23
- ]);
24
- this.providers = {
25
- bravesol: this.BraveProvider,
26
- coinbasesolana: this.CoinbaseProvider,
27
- exodussol: this.ExodusProvider,
28
- glow: this.GlowProvider,
29
- phantom: this.PhantomProvider,
30
- phantomledger: this.PhantomProvider,
31
- solflare: this.SolflareProvider,
32
- };
33
- }
34
- installedProviderLookup(providerFlags) {
35
- return ProviderLookup(this.allInstalledProviders(), providerFlags);
36
- }
37
- allInstalledProviders() {
38
- return this.findSolanaProviders(window.solana).concat(this.findSolanaProviders(window.solflare), this.findSolanaProviders(window.glowSolana));
39
- }
40
- findSolanaProviders(solana) {
41
- const solanaProviders = [];
42
- if (solana && !solana.providers) {
43
- solanaProviders.push(solana);
44
- }
45
- else if (solana && solana.providers) {
46
- solana.providers.forEach((provider) => {
47
- solanaProviders.push(provider);
48
- });
49
- }
50
- return solanaProviders;
51
- }
52
- isInstalledHelper(walletName) {
53
- return this.findProvider(walletName) !== undefined;
54
- }
55
- findProvider(walletName) {
56
- var _a, _b;
57
- return (_b = (_a = this.providers)[normalizeWalletName(walletName)]) === null || _b === void 0 ? void 0 : _b.call(_a);
58
- }
59
- fetchPublicAddressWithName(name) {
60
- return __awaiter(this, void 0, void 0, function* () {
61
- const provider = this.findProvider(name);
62
- if (!provider) {
63
- return Promise.resolve(undefined);
64
- }
65
- yield provider.connect();
66
- const { publicKey } = provider;
67
- return publicKey ? publicKey.toString() : Promise.resolve(undefined);
68
- });
69
- }
70
- connectWithName(name) {
71
- return __awaiter(this, void 0, void 0, function* () {
72
- const provider = this.findProvider(name);
73
- if (!provider) {
74
- return Promise.resolve(undefined);
75
- }
76
- try {
77
- yield provider.connect();
78
- return provider;
79
- }
80
- catch (err) {
81
- return undefined;
82
- }
83
- });
84
- }
85
- signMessageWithName(messageToSign, name) {
86
- return __awaiter(this, void 0, void 0, function* () {
87
- const walletAddress = yield this.fetchPublicAddressWithName(name);
88
- if (!walletAddress) {
89
- return Promise.resolve(undefined);
90
- }
91
- const provider = this.findProvider(name);
92
- if (!provider) {
93
- return Promise.resolve(undefined);
94
- }
95
- const encodedMessage = new TextEncoder().encode(messageToSign);
96
- return provider.connect().then(() => __awaiter(this, void 0, void 0, function* () {
97
- const { signature } = (yield provider.signMessage(encodedMessage, 'utf8'));
98
- return bufferToBase64(signature);
99
- }));
100
- });
101
- }
102
- _setupEventListeners(listeners, web3Provider) {
103
- const handleAccountChange = (address) => __awaiter(this, void 0, void 0, function* () {
104
- var _a, _b, _c;
105
- if (!address) {
106
- yield (web3Provider === null || web3Provider === void 0 ? void 0 : web3Provider.connect());
107
- if ((_a = web3Provider === null || web3Provider === void 0 ? void 0 : web3Provider.publicKey) === null || _a === void 0 ? void 0 : _a.toString()) {
108
- (_b = listeners.onAccountChange) === null || _b === void 0 ? void 0 : _b.call(listeners, [web3Provider.publicKey.toString()]);
109
- }
110
- return;
111
- }
112
- if (address.toString()) {
113
- yield ((_c = listeners.onAccountChange) === null || _c === void 0 ? void 0 : _c.call(listeners, [address.toString()]));
114
- }
115
- });
116
- const handleDisconnect = () => __awaiter(this, void 0, void 0, function* () {
117
- var _d;
118
- yield ((_d = listeners.onDisconnect) === null || _d === void 0 ? void 0 : _d.call(listeners));
119
- });
120
- web3Provider === null || web3Provider === void 0 ? void 0 : web3Provider.on('accountChanged', handleAccountChange);
121
- web3Provider === null || web3Provider === void 0 ? void 0 : web3Provider.on('disconnect', handleDisconnect);
122
- return () => { };
123
- }
124
- _teardownEventListeners(name) {
125
- const web3Provider = this.findProvider(name);
126
- if (!web3Provider) {
127
- return;
128
- }
129
- web3Provider.removeAllListeners();
130
- }
131
- getConnectedAccountsWithName(name) {
132
- return __awaiter(this, void 0, void 0, function* () {
133
- const provider = this.findProvider(name);
134
- if (!provider) {
135
- return [];
136
- }
137
- let connectionResult;
138
- try {
139
- connectionResult = yield provider.connect({
140
- onlyIfTrusted: true,
141
- });
142
- }
143
- catch (e) {
144
- return [];
145
- }
146
- const { address, publicKey } = connectionResult !== null && connectionResult !== void 0 ? connectionResult : {};
147
- if (address) {
148
- return [address];
149
- }
150
- else if (publicKey) {
151
- return [publicKey.toString()];
152
- }
153
- else {
154
- return [];
155
- }
156
- });
157
- }
158
- }
159
-
160
- export { SolProviderHelper };