@layerswap/widget 0.1.4 → 0.1.15

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 (266) hide show
  1. package/README.md +78 -3
  2. package/dist/Models/Theme.d.ts +7 -6
  3. package/dist/Models/Theme.js +7 -7
  4. package/dist/Models/WalletProvider.d.ts +0 -4
  5. package/dist/Models/WalletProvider.js +2 -0
  6. package/dist/components/Buttons/copyButton.js +4 -3
  7. package/dist/components/ColorSchema.js +79 -45
  8. package/dist/components/Common/AddressIcon.js +1 -0
  9. package/dist/components/Common/AverageCompletionTime.js +1 -1
  10. package/dist/components/Common/CountDownTimer.js +2 -2
  11. package/dist/components/Common/FormattedAverageCompletionTime.js +1 -1
  12. package/dist/components/HeaderWithMenu/index.js +1 -8
  13. package/dist/components/Input/Address/AddressNote.js +3 -2
  14. package/dist/components/Input/Address/AddressPicker/AddressWithIcon.js +2 -2
  15. package/dist/components/Input/Address/AddressPicker/ConnectedWallets/ConnectWalletButton.js +12 -5
  16. package/dist/components/Input/Address/AddressPicker/ExchangeNote.d.ts +1 -1
  17. package/dist/components/Input/Address/AddressPicker/ExchangeNote.js +1 -1
  18. package/dist/components/Input/RouteIcon.js +1 -1
  19. package/dist/components/LayerswapMenu/MenuList.js +2 -56
  20. package/dist/components/Pages/404/index.js +1 -0
  21. package/dist/components/Pages/Auth/Steps/CodeStep/VerifyEmailCode.js +1 -0
  22. package/dist/components/Pages/Auth/index.d.ts +1 -1
  23. package/dist/components/Pages/Auth/index.js +3 -2
  24. package/dist/components/Pages/Campaigns/Details/Leaderboard.js +1 -0
  25. package/dist/components/Pages/Campaigns/Details/index.d.ts +1 -1
  26. package/dist/components/Pages/Campaigns/Details/index.js +3 -2
  27. package/dist/components/Pages/Campaigns/index.d.ts +1 -1
  28. package/dist/components/Pages/Campaigns/index.js +3 -2
  29. package/dist/components/Pages/Maintanance/index.js +1 -0
  30. package/dist/components/Pages/NoCookies/index.js +2 -1
  31. package/dist/components/Pages/SwapHistory/History.js +1 -2
  32. package/dist/components/Pages/SwapHistory/index.d.ts +1 -1
  33. package/dist/components/Pages/SwapHistory/index.js +4 -3
  34. package/dist/components/Pages/SwapPages/Form/FeeDetails/Campaign.js +1 -0
  35. package/dist/components/Pages/SwapPages/Form/Form.js +1 -4
  36. package/dist/components/Pages/SwapPages/Form/SecondaryComponents/ValidationError.js +1 -1
  37. package/dist/components/Pages/SwapPages/Form/Select/Popover/PopoverSelect.js +1 -1
  38. package/dist/components/Pages/SwapPages/Form/index.js +1 -0
  39. package/dist/components/Pages/SwapPages/Withdraw/Coinbase/Carousel.js +8 -6
  40. package/dist/components/Pages/SwapPages/Withdraw/Processing/Processing.js +2 -2
  41. package/dist/components/Pages/SwapPages/Withdraw/Wallet/FuelWalletWithdrawal.d.ts +0 -4
  42. package/dist/components/Pages/SwapPages/Withdraw/Wallet/FuelWalletWithdrawal.js +159 -125
  43. package/dist/components/Pages/SwapPages/Withdraw/Wallet/ImtblxWalletWithdrawStep.d.ts +0 -4
  44. package/dist/components/Pages/SwapPages/Withdraw/Wallet/ImtblxWalletWithdrawStep.js +69 -51
  45. package/dist/components/Pages/SwapPages/Withdraw/Wallet/Loopring/ActivationTokentPicker.d.ts +0 -8
  46. package/dist/components/Pages/SwapPages/Withdraw/Wallet/Loopring/ActivationTokentPicker.js +87 -45
  47. package/dist/components/Pages/SwapPages/Withdraw/Wallet/Loopring/hooks.d.ts +0 -40
  48. package/dist/components/Pages/SwapPages/Withdraw/Wallet/Loopring/hooks.js +73 -46
  49. package/dist/components/Pages/SwapPages/Withdraw/Wallet/Loopring/index.d.ts +0 -4
  50. package/dist/components/Pages/SwapPages/Withdraw/Wallet/Loopring/index.js +175 -128
  51. package/dist/components/Pages/SwapPages/Withdraw/Wallet/SVMWalletWithdraw/index.d.ts +0 -7
  52. package/dist/components/Pages/SwapPages/Withdraw/Wallet/SVMWalletWithdraw/index.js +138 -116
  53. package/dist/components/Pages/SwapPages/Withdraw/Wallet/SVMWalletWithdraw/transactionSender.d.ts +0 -8
  54. package/dist/components/Pages/SwapPages/Withdraw/Wallet/SVMWalletWithdraw/transactionSender.js +96 -75
  55. package/dist/components/Pages/SwapPages/Withdraw/Wallet/SophonWalletWithdraw.js +2 -2
  56. package/dist/components/Pages/SwapPages/Withdraw/Wallet/StarknetWalletWithdraw.d.ts +0 -4
  57. package/dist/components/Pages/SwapPages/Withdraw/Wallet/StarknetWalletWithdraw.js +88 -71
  58. package/dist/components/Pages/SwapPages/Withdraw/Wallet/TonWalletWithdraw.d.ts +0 -4
  59. package/dist/components/Pages/SwapPages/Withdraw/Wallet/TonWalletWithdraw.js +146 -136
  60. package/dist/components/Pages/SwapPages/Withdraw/Wallet/TronWalletWithdraw.d.ts +0 -4
  61. package/dist/components/Pages/SwapPages/Withdraw/Wallet/TronWalletWithdraw.js +120 -99
  62. package/dist/components/Pages/SwapPages/Withdraw/Wallet/WalletTransfer/TransferToken.js +3 -3
  63. package/dist/components/Pages/SwapPages/Withdraw/Wallet/WalletTransfer/buttons.js +1 -0
  64. package/dist/components/Pages/SwapPages/Withdraw/Wallet/WalletTransfer/index.js +1 -1
  65. package/dist/components/Pages/SwapPages/Withdraw/Wallet/WalletTransfer/transactionMessage.js +2 -2
  66. package/dist/components/Pages/SwapPages/Withdraw/Wallet/WalletTransferContent.js +101 -33
  67. package/dist/components/Pages/SwapPages/Withdraw/Wallet/paradex/Evm.d.ts +0 -4
  68. package/dist/components/Pages/SwapPages/Withdraw/Wallet/paradex/Evm.js +60 -55
  69. package/dist/components/Pages/SwapPages/Withdraw/Wallet/paradex/Starknet.d.ts +0 -4
  70. package/dist/components/Pages/SwapPages/Withdraw/Wallet/paradex/Starknet.js +71 -55
  71. package/dist/components/Pages/SwapPages/Withdraw/Wallet/paradex/buttons.js +1 -0
  72. package/dist/components/Pages/SwapPages/Withdraw/Wallet/paradex/index.d.ts +0 -4
  73. package/dist/components/Pages/SwapPages/Withdraw/Wallet/paradex/index.js +56 -52
  74. package/dist/components/Pages/SwapPages/Withdraw/index.d.ts +1 -1
  75. package/dist/components/Pages/SwapPages/Withdraw/index.js +3 -2
  76. package/dist/components/Wallet/WalletModal/Connector.js +1 -1
  77. package/dist/components/Wallet/WalletProviders/FuelProvider.d.ts +0 -5
  78. package/dist/components/Wallet/WalletProviders/FuelProvider.js +25 -20
  79. package/dist/components/Wallet/WalletProviders/ImtblPassportProvider.d.ts +0 -5
  80. package/dist/components/Wallet/WalletProviders/ImtblPassportProvider.js +39 -36
  81. package/dist/components/Wallet/WalletProviders/SolanaProvider.d.ts +0 -5
  82. package/dist/components/Wallet/WalletProviders/SolanaProvider.js +49 -38
  83. package/dist/components/Wallet/WalletProviders/StarknetProvider.d.ts +0 -5
  84. package/dist/components/Wallet/WalletProviders/StarknetProvider.js +112 -117
  85. package/dist/components/Wallet/WalletProviders/TonConnectProvider.d.ts +0 -6
  86. package/dist/components/Wallet/WalletProviders/TonConnectProvider.js +58 -50
  87. package/dist/components/Wallet/WalletProviders/TronProvider.d.ts +0 -3
  88. package/dist/components/Wallet/WalletProviders/TronProvider.js +23 -15
  89. package/dist/components/Wallet/WalletProviders/Wagmi.d.ts +1 -1
  90. package/dist/components/Wallet/WalletProviders/Wagmi.js +20 -10
  91. package/dist/components/Wallet/WalletProviders/index.js +13 -6
  92. package/dist/components/Widget/Footer.d.ts +2 -1
  93. package/dist/components/Widget/Footer.js +13 -4
  94. package/dist/components/Widget/Index.d.ts +1 -1
  95. package/dist/components/Widget/Index.js +1 -1
  96. package/dist/components/WidgetLoading.d.ts +1 -0
  97. package/dist/components/WidgetLoading.js +5 -0
  98. package/dist/components/Wizard/Wizard.js +1 -1
  99. package/dist/components/shadcn/command.js +1 -1
  100. package/dist/components/themeWrapper.js +4 -3
  101. package/dist/context/{LayerswapContext.d.ts → LayerswapProvider.d.ts} +3 -8
  102. package/dist/context/{LayerswapContext.js → LayerswapProvider.js} +8 -9
  103. package/dist/context/authContext.js +1 -0
  104. package/dist/context/walletHooksProvider.js +1 -0
  105. package/dist/hooks/useWallet.js +10 -14
  106. package/dist/index.css +1 -1
  107. package/dist/index.d.ts +3 -5
  108. package/dist/index.js +2 -4
  109. package/dist/index.mjs +19 -0
  110. package/dist/lib/AppSettings.d.ts +7 -3
  111. package/dist/lib/AppSettings.js +8 -7
  112. package/dist/lib/address/formatter/index.js +8 -9
  113. package/dist/lib/address/validator/index.js +18 -20
  114. package/dist/lib/axiosInterceptor.js +1 -2
  115. package/dist/lib/balances/balanceResolver.js +16 -16
  116. package/dist/lib/balances/providers/evmBalanceProvider.js +3 -3
  117. package/dist/lib/balances/providers/loopringBalanceProvider.d.ts +0 -6
  118. package/dist/lib/balances/providers/loopringBalanceProvider.js +56 -43
  119. package/dist/lib/balances/providers/paradexBalanceProvider.d.ts +0 -6
  120. package/dist/lib/balances/providers/paradexBalanceProvider.js +42 -42
  121. package/dist/lib/balances/providers/solanaBalanceProvider.d.ts +0 -6
  122. package/dist/lib/balances/providers/solanaBalanceProvider.js +70 -71
  123. package/dist/lib/balances/providers/starknetBalanceProvider.d.ts +0 -6
  124. package/dist/lib/balances/providers/starknetBalanceProvider.js +48 -45
  125. package/dist/lib/balances/providers/tonBalanceProvider.d.ts +0 -18
  126. package/dist/lib/balances/providers/tonBalanceProvider.js +104 -100
  127. package/dist/lib/balances/providers/tronBalanceResolver.js +2 -3
  128. package/dist/lib/fuels/common/FakeAccount.d.ts +0 -24
  129. package/dist/lib/fuels/common/FakeAccount.js +58 -36
  130. package/dist/lib/fuels/common/PredicateConnector.d.ts +0 -54
  131. package/dist/lib/fuels/common/PredicateConnector.js +292 -205
  132. package/dist/lib/fuels/common/PredicateFactory.d.ts +0 -29
  133. package/dist/lib/fuels/common/PredicateFactory.js +123 -76
  134. package/dist/lib/fuels/common/PredicateWalletAdapter.d.ts +0 -17
  135. package/dist/lib/fuels/common/PredicateWalletAdapter.js +44 -29
  136. package/dist/lib/fuels/common/index.d.ts +0 -4
  137. package/dist/lib/fuels/common/index.js +4 -4
  138. package/dist/lib/fuels/connectors/fuel-wallet/FuelWalletConnector.d.ts +0 -51
  139. package/dist/lib/fuels/connectors/fuel-wallet/FuelWalletConnector.js +268 -234
  140. package/dist/lib/fuels/connectors/fuel-wallet/index.d.ts +0 -2
  141. package/dist/lib/fuels/connectors/fuel-wallet/index.js +2 -2
  142. package/dist/lib/fuels/connectors/fuel-wallet/types.d.ts +0 -50
  143. package/dist/lib/fuels/connectors/fuel-wallet/types.js +53 -9
  144. package/dist/lib/fuels/connectors/fuelet-wallet/FueletWalletConnector.d.ts +0 -7
  145. package/dist/lib/fuels/connectors/fuelet-wallet/FueletWalletConnector.js +20 -19
  146. package/dist/lib/fuels/connectors/fuelet-wallet/index.d.ts +0 -1
  147. package/dist/lib/fuels/connectors/fuelet-wallet/index.js +1 -1
  148. package/dist/lib/gases/gasResolver.d.ts +1 -1
  149. package/dist/lib/gases/gasResolver.js +10 -10
  150. package/dist/lib/gases/providers/evmGasProvider.js +5 -4
  151. package/dist/lib/gases/providers/loopringGasProvider.d.ts +0 -6
  152. package/dist/lib/gases/providers/loopringGasProvider.js +27 -24
  153. package/dist/lib/gases/providers/solanaGasProvider.d.ts +0 -7
  154. package/dist/lib/gases/providers/solanaGasProvider.js +32 -31
  155. package/dist/lib/gases/providers/starknetGasProvider.d.ts +0 -7
  156. package/dist/lib/gases/providers/starknetGasProvider.js +34 -33
  157. package/dist/lib/imtbl.d.ts +0 -69
  158. package/dist/lib/imtbl.js +63 -60
  159. package/dist/lib/internalApiClient.d.ts +0 -2
  160. package/dist/lib/internalApiClient.js +1 -4
  161. package/dist/lib/layerSwapApiClient.js +3 -3
  162. package/dist/lib/logError.js +2 -2
  163. package/dist/lib/nft/nftBalanceResolver.js +1 -2
  164. package/dist/lib/nft/providers/starknetNftProvider.d.ts +0 -6
  165. package/dist/lib/nft/providers/starknetNftProvider.js +49 -50
  166. package/dist/lib/wallets/connectors/useSyncProviders/store.d.ts +1 -4
  167. package/dist/lib/wallets/fuel/Bako.d.ts +0 -15
  168. package/dist/lib/wallets/fuel/Bako.js +34 -29
  169. package/dist/lib/wallets/fuel/Basko.d.ts +0 -15
  170. package/dist/lib/wallets/fuel/Basko.js +34 -29
  171. package/dist/lib/wallets/fuel/useFuel.d.ts +0 -2
  172. package/dist/lib/wallets/fuel/useFuel.js +211 -192
  173. package/dist/lib/wallets/imtblX/useImtblX.d.ts +0 -2
  174. package/dist/lib/wallets/imtblX/useImtblX.js +87 -87
  175. package/dist/lib/wallets/paradex/Authorize/Ethereum.d.ts +0 -2
  176. package/dist/lib/wallets/paradex/Authorize/Ethereum.js +24 -23
  177. package/dist/lib/wallets/paradex/Authorize/Starknet.d.ts +0 -2
  178. package/dist/lib/wallets/paradex/Authorize/Starknet.js +14 -13
  179. package/dist/lib/wallets/paradex/lib/account.d.ts +0 -28
  180. package/dist/lib/wallets/paradex/lib/account.js +102 -53
  181. package/dist/lib/wallets/paradex/lib/index.d.ts +0 -24
  182. package/dist/lib/wallets/paradex/lib/index.js +20 -20
  183. package/dist/lib/wallets/paradex/lib/paraclear-provider.d.ts +0 -6
  184. package/dist/lib/wallets/paradex/lib/paraclear-provider.js +13 -9
  185. package/dist/lib/wallets/paradex/lib/paraclear.d.ts +0 -137
  186. package/dist/lib/wallets/paradex/lib/paraclear.js +258 -131
  187. package/dist/lib/wallets/paradex/lib/starknet-account-support.d.ts +0 -22
  188. package/dist/lib/wallets/paradex/lib/starknet-account-support.js +296 -220
  189. package/dist/lib/wallets/paradex/lib/starknet-signer.d.ts +0 -15
  190. package/dist/lib/wallets/paradex/lib/starknet-signer.js +120 -94
  191. package/dist/lib/wallets/paradex/useParadex.d.ts +0 -7
  192. package/dist/lib/wallets/paradex/useParadex.js +197 -194
  193. package/dist/lib/wallets/solana/transactionBuilder.d.ts +0 -4
  194. package/dist/lib/wallets/solana/transactionBuilder.js +63 -39
  195. package/dist/lib/wallets/solana/useSVM.d.ts +0 -5
  196. package/dist/lib/wallets/solana/useSVM.js +139 -142
  197. package/dist/lib/wallets/starknet/useStarknet.d.ts +0 -2
  198. package/dist/lib/wallets/starknet/useStarknet.js +139 -139
  199. package/dist/lib/wallets/ton/client.d.ts +0 -3
  200. package/dist/lib/wallets/ton/client.js +7 -7
  201. package/dist/lib/wallets/ton/useTON.d.ts +0 -2
  202. package/dist/lib/wallets/ton/useTON.js +121 -122
  203. package/dist/lib/wallets/tron/connectors/bitkeep.d.ts +0 -61
  204. package/dist/lib/wallets/tron/connectors/bitkeep.js +326 -303
  205. package/dist/lib/wallets/tron/connectors/index.d.ts +0 -4
  206. package/dist/lib/wallets/tron/connectors/index.js +4 -4
  207. package/dist/lib/wallets/tron/connectors/okxWallet.d.ts +0 -66
  208. package/dist/lib/wallets/tron/connectors/okxWallet.js +364 -336
  209. package/dist/lib/wallets/tron/connectors/tokenPocket.d.ts +0 -72
  210. package/dist/lib/wallets/tron/connectors/tokenPocket.js +337 -308
  211. package/dist/lib/wallets/tron/connectors/tronLink/index.d.ts +0 -102
  212. package/dist/lib/wallets/tron/connectors/tronLink/index.js +560 -520
  213. package/dist/lib/wallets/tron/connectors/tronLink/types.d.ts +0 -56
  214. package/dist/lib/wallets/tron/connectors/tronLink/types.js +53 -1
  215. package/dist/lib/wallets/tron/connectors/tronLink/utils.d.ts +0 -14
  216. package/dist/lib/wallets/tron/connectors/tronLink/utils.js +64 -61
  217. package/dist/lib/wallets/tron/useTron.d.ts +0 -2
  218. package/dist/lib/wallets/tron/useTron.js +111 -111
  219. package/dist/lib/wallets/utils/resolveWalletIcon.js +1 -0
  220. package/package.json +26 -77
  221. package/dist/hooks/useCopyClipboard.d.ts +0 -1
  222. package/dist/hooks/useCopyClipboard.js +0 -21
  223. package/dist/index.cjs +0 -125
  224. package/dist/lib/abis/ERC20.json +0 -258
  225. package/dist/lib/fuels/connectors/walletConnect/WalletConnectConnector.d.ts +0 -42
  226. package/dist/lib/fuels/connectors/walletConnect/WalletConnectConnector.js +0 -357
  227. package/dist/lib/fuels/connectors/walletConnect/constants.d.ts +0 -6
  228. package/dist/lib/fuels/connectors/walletConnect/constants.js +0 -7
  229. package/dist/lib/fuels/connectors/walletConnect/index.d.ts +0 -3
  230. package/dist/lib/fuels/connectors/walletConnect/index.js +0 -3
  231. package/dist/lib/fuels/connectors/walletConnect/types.d.ts +0 -12
  232. package/dist/lib/fuels/connectors/walletConnect/types.js +0 -1
  233. package/dist/lib/fuels/connectors/walletConnect/utils/index.d.ts +0 -1
  234. package/dist/lib/fuels/connectors/walletConnect/utils/index.js +0 -1
  235. package/dist/lib/fuels/connectors/walletConnect/utils/subscribeAndEnforceChain.d.ts +0 -2
  236. package/dist/lib/fuels/connectors/walletConnect/utils/subscribeAndEnforceChain.js +0 -39
  237. package/dist/lib/fuels/connectors/walletConnect/web3Modal.d.ts +0 -10
  238. package/dist/lib/fuels/connectors/walletConnect/web3Modal.js +0 -38
  239. package/dist/lib/loopring/LoopringAPI.d.ts +0 -12
  240. package/dist/lib/loopring/LoopringAPI.js +0 -13
  241. package/dist/lib/loopring/defs.d.ts +0 -425
  242. package/dist/lib/loopring/defs.js +0 -217
  243. package/dist/lib/loopring/eddsa.d.ts +0 -29
  244. package/dist/lib/loopring/eddsa.js +0 -208
  245. package/dist/lib/loopring/field.d.ts +0 -17
  246. package/dist/lib/loopring/field.js +0 -61
  247. package/dist/lib/loopring/formatter.d.ts +0 -137
  248. package/dist/lib/loopring/formatter.js +0 -516
  249. package/dist/lib/loopring/helpers.d.ts +0 -36
  250. package/dist/lib/loopring/helpers.js +0 -140
  251. package/dist/lib/loopring/jubjub.d.ts +0 -19
  252. package/dist/lib/loopring/jubjub.js +0 -79
  253. package/dist/lib/loopring/permutation.d.ts +0 -22
  254. package/dist/lib/loopring/permutation.js +0 -198
  255. package/dist/lib/loopring/poseidon/EDDSAUtil.d.ts +0 -14
  256. package/dist/lib/loopring/poseidon/EDDSAUtil.js +0 -61
  257. package/dist/lib/loopring/poseidon/babyJub.d.ts +0 -6
  258. package/dist/lib/loopring/poseidon/babyJub.js +0 -51
  259. package/dist/lib/loopring/poseidon/eddsa.d.ts +0 -29
  260. package/dist/lib/loopring/poseidon/eddsa.js +0 -210
  261. package/dist/lib/loopring/utils.d.ts +0 -76
  262. package/dist/lib/loopring/utils.js +0 -230
  263. package/dist/styles/dialog-transition.css +0 -28
  264. package/dist/styles/globals.css +0 -372
  265. package/dist/styles/manual-trasnfer-svg.css +0 -299
  266. package/dist/styles/vaul.css +0 -256
@@ -1,76 +1,123 @@
1
- import { arrayify } from '@ethersproject/bytes';
2
- import { Address, Predicate, ScriptTransactionRequest, ZeroBytes32, bn, getPredicateRoot, } from 'fuels';
3
- import memoize from 'memoizee';
4
- export class PredicateFactory {
5
- constructor(adapter, { abi, bin }, root, generatedAt = Date.now()) {
6
- this.generatedAt = Date.now();
7
- this.getRoot = () => this.root;
8
- this.getPredicateAddress = memoize((address) => {
9
- // @ts-expect-error processPredicateData is only available in the Predicate class
10
- const { predicateBytes } = Predicate.processPredicateData(this.bytecode, this.abi, {
11
- SIGNER: this.adapter.convertAddress(address),
12
- });
13
- return Address.fromB256(getPredicateRoot(predicateBytes)).toString();
14
- });
15
- this.build = memoize((address, provider, data) => new Predicate({
16
- bytecode: arrayify(this.bytecode),
17
- abi: this.abi,
18
- provider,
19
- configurableConstants: {
20
- SIGNER: this.adapter.convertAddress(address),
21
- },
22
- data,
23
- }));
24
- this.getAccountAddress = (address, accounts = []) => accounts.find((account) => this.getPredicateAddress(account) === address);
25
- this.getPredicateAddresses = (accounts = []) => accounts.map((account) => this.getPredicateAddress(account));
26
- this.getMaxPredicateGasUsed = memoize(async (provider) => {
27
- const fakeAccount = this.adapter.generateFakeAccount();
28
- const chainId = await provider.getChainId();
29
- const fakePredicate = this.build(fakeAccount.getAddress(), provider, [0]);
30
- const request = new ScriptTransactionRequest();
31
- request.addCoinInput({
32
- id: ZeroBytes32,
33
- assetId: ZeroBytes32,
34
- amount: bn(),
35
- owner: fakePredicate.address,
36
- blockCreated: bn(),
37
- txCreatedIdx: bn(),
38
- });
39
- fakePredicate.populateTransactionPredicateData(request);
40
- const txId = request.getTransactionId(chainId);
41
- //
42
- const signature = await fakeAccount.signMessage(txId);
43
- request.witnesses = this.adapter.buildWitnessData(fakeAccount, signature);
44
- //
45
- await fakePredicate.provider.estimatePredicates(request);
46
- const predicateInput = request.inputs[0];
47
- if (predicateInput && 'predicate' in predicateInput) {
48
- return bn(predicateInput.predicateGasUsed);
49
- }
50
- return bn();
51
- });
52
- this.equals = (predicate) => !!predicate && predicate.root === this.root;
53
- this.sort = (predicate) => predicate.generatedAt - this.generatedAt;
54
- this.adapter = adapter;
55
- this.abi = abi;
56
- this.bytecode = bin;
57
- this.root = root;
58
- this.generatedAt = generatedAt;
59
- }
60
- }
61
- /**
62
- * Since the predicate resources were fetched and added to the TransactionRequest before the predicate
63
- * was instantiated, it is very likely that they were fetched and added as normal account resources,
64
- * resulting in a witness placeholder being added to the witnesses of the TransactionRequest to
65
- * later be replaced with an actual signature. Since predicate resources do not require a signature,
66
- * this placeholder witness will be removed when calling `Predicate.populateTransactionPredicateData`.
67
- * However, we need to validate if this placeholder witness was added here in order to instantiate the
68
- * predicate with the correct witness index argument.
69
- */
70
- export const getMockedSignatureIndex = (witnesses) => {
71
- const hasPlaceholderWitness = witnesses.some((item) => item instanceof Uint8Array &&
72
- item.length === 64 &&
73
- item.every((value) => value === 0));
74
- // if it is a placeholder witness, we can safely replace it, otherwise we will consider a new element.
75
- return hasPlaceholderWitness ? witnesses.length - 1 : witnesses.length;
76
- };
1
+ // import { arrayify } from '@ethersproject/bytes';
2
+ // import {
3
+ // Address,
4
+ // type B256Address,
5
+ // type BN,
6
+ // type BytesLike,
7
+ // type InputValue,
8
+ // type JsonAbi,
9
+ // Predicate,
10
+ // type Provider,
11
+ // ScriptTransactionRequest,
12
+ // ZeroBytes32,
13
+ // bn,
14
+ // getPredicateRoot,
15
+ // } from 'fuels';
16
+ // import memoize from 'memoizee';
17
+ // // import type { PredicateWalletAdapter } from './PredicateWalletAdapter';
18
+ // import type { Maybe, PredicateConfig } from './types';
19
+ // export class PredicateFactory {
20
+ // private abi: JsonAbi;
21
+ // private bytecode: BytesLike;
22
+ // private adapter: any//PredicateWalletAdapter;
23
+ // private root: string;
24
+ // private generatedAt: number = Date.now();
25
+ // constructor(
26
+ // adapter: any, //PredicateWalletAdapter,
27
+ // { abi, bin }: PredicateConfig,
28
+ // root: string,
29
+ // generatedAt: number = Date.now(),
30
+ // ) {
31
+ // this.adapter = adapter;
32
+ // this.abi = abi;
33
+ // this.bytecode = bin;
34
+ // this.root = root;
35
+ // this.generatedAt = generatedAt;
36
+ // }
37
+ // getRoot = (): string => this.root;
38
+ // getPredicateAddress = memoize((address: string | B256Address): string => {
39
+ // // @ts-expect-error processPredicateData is only available in the Predicate class
40
+ // const { predicateBytes } = Predicate.processPredicateData(
41
+ // this.bytecode,
42
+ // this.abi,
43
+ // {
44
+ // SIGNER: this.adapter.convertAddress(address),
45
+ // },
46
+ // );
47
+ // return Address.fromB256(getPredicateRoot(predicateBytes)).toString();
48
+ // });
49
+ // build = memoize(
50
+ // <T extends InputValue[]>(
51
+ // address: string | B256Address,
52
+ // provider: Provider,
53
+ // data?: T,
54
+ // ): Predicate<T> =>
55
+ // new Predicate({
56
+ // bytecode: arrayify(this.bytecode),
57
+ // abi: this.abi,
58
+ // provider,
59
+ // configurableConstants: {
60
+ // SIGNER: this.adapter.convertAddress(address),
61
+ // },
62
+ // data,
63
+ // }),
64
+ // );
65
+ // getAccountAddress = (
66
+ // address: string,
67
+ // accounts: Array<string> = [],
68
+ // ): Maybe<string> =>
69
+ // accounts.find(
70
+ // (account: string) => this.getPredicateAddress(account) === address,
71
+ // );
72
+ // getPredicateAddresses = (accounts: Array<string> = []): Array<string> =>
73
+ // accounts.map((account) => this.getPredicateAddress(account));
74
+ // getMaxPredicateGasUsed = memoize(async (provider: Provider): Promise<BN> => {
75
+ // const fakeAccount = this.adapter.generateFakeAccount();
76
+ // const chainId = await provider.getChainId();
77
+ // const fakePredicate = this.build(fakeAccount.getAddress(), provider, [0]);
78
+ // const request = new ScriptTransactionRequest();
79
+ // request.addCoinInput({
80
+ // id: ZeroBytes32,
81
+ // assetId: ZeroBytes32,
82
+ // amount: bn(),
83
+ // owner: fakePredicate.address,
84
+ // blockCreated: bn(),
85
+ // txCreatedIdx: bn(),
86
+ // });
87
+ // fakePredicate.populateTransactionPredicateData(request);
88
+ // const txId = request.getTransactionId(chainId);
89
+ // //
90
+ // const signature = await fakeAccount.signMessage(txId);
91
+ // request.witnesses = this.adapter.buildWitnessData(fakeAccount, signature);
92
+ // //
93
+ // await fakePredicate.provider.estimatePredicates(request);
94
+ // const predicateInput = request.inputs[0];
95
+ // if (predicateInput && 'predicate' in predicateInput) {
96
+ // return bn(predicateInput.predicateGasUsed);
97
+ // }
98
+ // return bn();
99
+ // });
100
+ // equals = (predicate: Maybe<PredicateFactory>): boolean =>
101
+ // !!predicate && predicate.root === this.root;
102
+ // sort = (predicate: PredicateFactory): number =>
103
+ // predicate.generatedAt - this.generatedAt;
104
+ // }
105
+ // /**
106
+ // * Since the predicate resources were fetched and added to the TransactionRequest before the predicate
107
+ // * was instantiated, it is very likely that they were fetched and added as normal account resources,
108
+ // * resulting in a witness placeholder being added to the witnesses of the TransactionRequest to
109
+ // * later be replaced with an actual signature. Since predicate resources do not require a signature,
110
+ // * this placeholder witness will be removed when calling `Predicate.populateTransactionPredicateData`.
111
+ // * However, we need to validate if this placeholder witness was added here in order to instantiate the
112
+ // * predicate with the correct witness index argument.
113
+ // */
114
+ // export const getMockedSignatureIndex = (witnesses: BytesLike[]) => {
115
+ // const hasPlaceholderWitness = witnesses.some(
116
+ // (item) =>
117
+ // item instanceof Uint8Array &&
118
+ // item.length === 64 &&
119
+ // item.every((value) => value === 0),
120
+ // );
121
+ // // if it is a placeholder witness, we can safely replace it, otherwise we will consider a new element.
122
+ // return hasPlaceholderWitness ? witnesses.length - 1 : witnesses.length;
123
+ // };
@@ -1,17 +0,0 @@
1
- import { type FakeAccount } from './FakeAccount';
2
- import type { Hash, Option } from './types';
3
- export interface PredicateWalletAdapter {
4
- convertAddress: (address: string) => string;
5
- generateFakeAccount: () => FakeAccount;
6
- buildWitnessData: (account: FakeAccount, signature: Option<string, Uint8Array, Hash>) => Array<Option<string, Uint8Array, Hash>>;
7
- }
8
- export declare class EthereumWalletAdapter implements PredicateWalletAdapter {
9
- convertAddress: (address: string) => string;
10
- generateFakeAccount: () => FakeAccount;
11
- buildWitnessData: (_account: FakeAccount, signature: Option<string, Uint8Array, Hash>) => Array<Option<string, Uint8Array, Hash>>;
12
- }
13
- export declare class SolanaWalletAdapter implements PredicateWalletAdapter {
14
- convertAddress: (address: string) => string;
15
- generateFakeAccount: () => FakeAccount;
16
- buildWitnessData: (_account: FakeAccount, signature: Option<string, Uint8Array, Hash>) => Array<Option<string, Uint8Array, Hash>>;
17
- }
@@ -1,29 +1,44 @@
1
- import bs58 from 'bs58';
2
- import { Address, hexlify } from 'fuels';
3
- import { EthereumFakeAccount, SolanaFakeAccount, } from './FakeAccount';
4
- export class EthereumWalletAdapter {
5
- constructor() {
6
- this.convertAddress = (address) => {
7
- return Address.fromEvmAddress(address).toString();
8
- };
9
- this.generateFakeAccount = () => {
10
- return new EthereumFakeAccount();
11
- };
12
- this.buildWitnessData = (_account, signature) => {
13
- return [signature];
14
- };
15
- }
16
- }
17
- export class SolanaWalletAdapter {
18
- constructor() {
19
- this.convertAddress = (address) => {
20
- return hexlify(bs58.decode(address));
21
- };
22
- this.generateFakeAccount = () => {
23
- return new SolanaFakeAccount();
24
- };
25
- this.buildWitnessData = (_account, signature) => {
26
- return [signature];
27
- };
28
- }
29
- }
1
+ // import bs58 from 'bs58';
2
+ // import { Address, hexlify } from 'fuels';
3
+ // import {
4
+ // EthereumFakeAccount,
5
+ // type FakeAccount,
6
+ // SolanaFakeAccount,
7
+ // } from './FakeAccount';
8
+ // import type { Hash, Option } from './types';
9
+ // export interface PredicateWalletAdapter {
10
+ // convertAddress: (address: string) => string;
11
+ // generateFakeAccount: () => FakeAccount;
12
+ // buildWitnessData: (
13
+ // account: FakeAccount,
14
+ // signature: Option<string, Uint8Array, Hash>,
15
+ // ) => Array<Option<string, Uint8Array, Hash>>;
16
+ // }
17
+ // export class EthereumWalletAdapter implements PredicateWalletAdapter {
18
+ // convertAddress = (address: string): string => {
19
+ // return Address.fromEvmAddress(address).toString();
20
+ // };
21
+ // generateFakeAccount = (): FakeAccount => {
22
+ // return new EthereumFakeAccount();
23
+ // };
24
+ // buildWitnessData = (
25
+ // _account: FakeAccount,
26
+ // signature: Option<string, Uint8Array, Hash>,
27
+ // ): Array<Option<string, Uint8Array, Hash>> => {
28
+ // return [signature];
29
+ // };
30
+ // }
31
+ // export class SolanaWalletAdapter implements PredicateWalletAdapter {
32
+ // convertAddress = (address: string): string => {
33
+ // return hexlify(bs58.decode(address));
34
+ // };
35
+ // generateFakeAccount = (): FakeAccount => {
36
+ // return new SolanaFakeAccount();
37
+ // };
38
+ // buildWitnessData = (
39
+ // _account: FakeAccount,
40
+ // signature: Option<string, Uint8Array, Hash>,
41
+ // ): Array<Option<string, Uint8Array, Hash>> => {
42
+ // return [signature];
43
+ // };
44
+ // }
@@ -1,7 +1,3 @@
1
- export * from './PredicateFactory';
2
- export * from './PredicateWalletAdapter';
3
- export * from './FakeAccount';
4
1
  export * from './types';
5
- export * from './PredicateConnector';
6
2
  export * from './utils';
7
3
  export * from './networks';
@@ -1,7 +1,7 @@
1
- export * from './PredicateFactory';
2
- export * from './PredicateWalletAdapter';
3
- export * from './FakeAccount';
1
+ // export * from './PredicateFactory';
2
+ // export * from './PredicateWalletAdapter';
3
+ // export * from './FakeAccount';
4
4
  export * from './types';
5
- export * from './PredicateConnector';
5
+ // export * from './PredicateConnector';
6
6
  export * from './utils';
7
7
  export * from './networks';
@@ -1,51 +0,0 @@
1
- import { type Asset, type ConnectorMetadata, type FuelABI, FuelConnector, FuelConnectorEventTypes, type Network, type SelectNetworkArguments, type TransactionRequestLike, type Version } from 'fuels';
2
- import { JSONRPCClient } from 'json-rpc-2.0';
3
- export declare class FuelWalletConnector extends FuelConnector {
4
- name: string;
5
- connected: boolean;
6
- installed: boolean;
7
- external: boolean;
8
- events: typeof FuelConnectorEventTypes;
9
- metadata: ConnectorMetadata;
10
- readonly client: JSONRPCClient;
11
- constructor(name?: string);
12
- /**
13
- * ============================================================
14
- * Application communication methods
15
- * ============================================================
16
- */
17
- private setupConnector;
18
- private acceptMessage;
19
- private setupListener;
20
- private createRequestId;
21
- private postMessage;
22
- private sendRequest;
23
- private onResponse;
24
- private onEvent;
25
- private onMessage;
26
- private onCommunicationMessage;
27
- /**
28
- * ============================================================
29
- * Connector methods
30
- * ============================================================
31
- */
32
- ping(): Promise<boolean>;
33
- isConnected(): Promise<boolean>;
34
- connect(): Promise<boolean>;
35
- disconnect(): Promise<boolean>;
36
- accounts(): Promise<Array<string>>;
37
- currentAccount(): Promise<string | null>;
38
- signMessage(address: string, message: string): Promise<string>;
39
- sendTransaction(address: string, transaction: TransactionRequestLike): Promise<string>;
40
- assets(): Promise<Array<Asset>>;
41
- addAsset(asset: Asset): Promise<boolean>;
42
- addAssets(assets: Asset[]): Promise<boolean>;
43
- addABI(contractId: string, abi: FuelABI): Promise<boolean>;
44
- getABI(contractId: string): Promise<FuelABI>;
45
- hasABI(contractId: string): Promise<boolean>;
46
- currentNetwork(): Promise<Network>;
47
- selectNetwork(network: SelectNetworkArguments): Promise<boolean>;
48
- networks(): Promise<Network[]>;
49
- addNetwork(networkUrl: string): Promise<boolean>;
50
- version(): Promise<Version>;
51
- }