@hinkal/common 0.2.19 → 0.2.21

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 (281) hide show
  1. package/API/API.cjs +1 -1
  2. package/API/API.d.ts +6 -1
  3. package/API/API.mjs +48 -41
  4. package/API/enclaveCalls.cjs +1 -1
  5. package/API/enclaveCalls.mjs +5 -4
  6. package/API/index.d.ts +1 -0
  7. package/API/proxyAccountsCalls.cjs +1 -1
  8. package/API/proxyAccountsCalls.d.ts +7 -2
  9. package/API/proxyAccountsCalls.mjs +26 -20
  10. package/API/temporaryWalletCalls.cjs +1 -0
  11. package/API/temporaryWalletCalls.d.ts +13 -0
  12. package/API/temporaryWalletCalls.mjs +20 -0
  13. package/API/unspent-utxos-calls.cjs +1 -1
  14. package/API/unspent-utxos-calls.d.ts +1 -1
  15. package/API/unspent-utxos-calls.mjs +16 -14
  16. package/README.md +36 -13
  17. package/constants/chains.constants.cjs +1 -1
  18. package/constants/chains.constants.d.ts +1 -1
  19. package/constants/chains.constants.mjs +69 -51
  20. package/constants/deploy-data/deploy-data-solana.json.cjs +1 -1
  21. package/constants/deploy-data/deploy-data-solana.json.mjs +28 -2
  22. package/constants/kyc.constants.cjs +1 -1
  23. package/constants/kyc.constants.mjs +39 -40
  24. package/constants/mediaUrls.constants.cjs +1 -1
  25. package/constants/mediaUrls.constants.d.ts +1 -0
  26. package/constants/mediaUrls.constants.mjs +2 -1
  27. package/constants/server.constants.cjs +1 -1
  28. package/constants/server.constants.d.ts +6 -1
  29. package/constants/server.constants.mjs +37 -32
  30. package/constants/token-data/polygonRegistry.json.cjs +1 -1
  31. package/constants/token-data/polygonRegistry.json.mjs +4 -4
  32. package/constants/token-data/polygonRegistryFixed.json.cjs +1 -1
  33. package/constants/token-data/polygonRegistryFixed.json.mjs +4 -4
  34. package/data-structures/AccountActions/AccountActions.cjs +1 -0
  35. package/data-structures/AccountActions/AccountActions.d.ts +18 -0
  36. package/data-structures/AccountActions/AccountActions.mjs +78 -0
  37. package/data-structures/AccountActions/index.d.ts +1 -0
  38. package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.cjs +1 -1
  39. package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.mjs +68 -71
  40. package/data-structures/BlockchainEvent/BlockchainEvent.cjs +1 -0
  41. package/data-structures/BlockchainEvent/BlockchainEvent.d.ts +14 -0
  42. package/data-structures/BlockchainEvent/BlockchainEvent.mjs +41 -0
  43. package/data-structures/Hinkal/Hinkal.cjs +1 -1
  44. package/data-structures/Hinkal/Hinkal.d.ts +14 -8
  45. package/data-structures/Hinkal/Hinkal.mjs +215 -179
  46. package/data-structures/Hinkal/IHinkal.d.ts +9 -6
  47. package/data-structures/Hinkal/handleAutoDepositBack.cjs +1 -1
  48. package/data-structures/Hinkal/handleAutoDepositBack.mjs +47 -48
  49. package/data-structures/Hinkal/hinkalActionReceive.cjs +1 -1
  50. package/data-structures/Hinkal/hinkalActionReceive.mjs +25 -22
  51. package/data-structures/Hinkal/hinkalCheckTokenRegistry.cjs +1 -1
  52. package/data-structures/Hinkal/hinkalCheckTokenRegistry.mjs +12 -12
  53. package/data-structures/Hinkal/hinkalDeposit.cjs +1 -1
  54. package/data-structures/Hinkal/hinkalDeposit.mjs +63 -63
  55. package/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
  56. package/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +60 -147
  57. package/data-structures/Hinkal/hinkalDepositOnChainUtxos.cjs +1 -0
  58. package/data-structures/Hinkal/hinkalDepositOnChainUtxos.d.ts +4 -0
  59. package/data-structures/Hinkal/hinkalDepositOnChainUtxos.mjs +103 -0
  60. package/data-structures/Hinkal/hinkalDepostAndBridge.cjs +1 -0
  61. package/data-structures/Hinkal/hinkalDepostAndBridge.d.ts +4 -0
  62. package/data-structures/Hinkal/hinkalDepostAndBridge.mjs +214 -0
  63. package/data-structures/Hinkal/hinkalGetZkMeProvider.cjs +1 -1
  64. package/data-structures/Hinkal/hinkalGetZkMeProvider.mjs +4 -4
  65. package/data-structures/Hinkal/hinkalPrivateWallet.cjs +1 -1
  66. package/data-structures/Hinkal/hinkalPrivateWallet.d.ts +2 -2
  67. package/data-structures/Hinkal/hinkalPrivateWallet.mjs +103 -99
  68. package/data-structures/Hinkal/hinkalProxySwap.cjs +1 -1
  69. package/data-structures/Hinkal/hinkalProxySwap.mjs +44 -41
  70. package/data-structures/Hinkal/hinkalProxyToPrivate.cjs +1 -1
  71. package/data-structures/Hinkal/hinkalProxyToPrivate.mjs +31 -28
  72. package/data-structures/Hinkal/hinkalSignSubAccount.cjs +1 -1
  73. package/data-structures/Hinkal/hinkalSignSubAccount.mjs +16 -13
  74. package/data-structures/Hinkal/hinkalSolanaDeposit.cjs +1 -1
  75. package/data-structures/Hinkal/hinkalSolanaDeposit.mjs +34 -34
  76. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
  77. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +67 -65
  78. package/data-structures/Hinkal/hinkalSolanaProxySend.cjs +1 -1
  79. package/data-structures/Hinkal/hinkalSolanaProxySend.mjs +35 -32
  80. package/data-structures/Hinkal/hinkalSolanaProxyShield.cjs +1 -1
  81. package/data-structures/Hinkal/hinkalSolanaProxyShield.mjs +59 -56
  82. package/data-structures/Hinkal/hinkalSolanaProxySwap.cjs +1 -1
  83. package/data-structures/Hinkal/hinkalSolanaProxySwap.mjs +35 -32
  84. package/data-structures/Hinkal/hinkalSolanaSwap.cjs +1 -1
  85. package/data-structures/Hinkal/hinkalSolanaSwap.mjs +10 -10
  86. package/data-structures/Hinkal/hinkalSolanaWithdraw.cjs +1 -1
  87. package/data-structures/Hinkal/hinkalSolanaWithdraw.mjs +25 -25
  88. package/data-structures/Hinkal/hinkalSwap.cjs +1 -1
  89. package/data-structures/Hinkal/hinkalSwap.mjs +34 -30
  90. package/data-structures/Hinkal/hinkalTransfer.cjs +1 -1
  91. package/data-structures/Hinkal/hinkalTransfer.mjs +43 -39
  92. package/data-structures/Hinkal/hinkalWithdraw.cjs +1 -1
  93. package/data-structures/Hinkal/hinkalWithdraw.mjs +47 -43
  94. package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.cjs +1 -1
  95. package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.mjs +50 -46
  96. package/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
  97. package/data-structures/Hinkal/resetMerkleTrees.mjs +36 -34
  98. package/data-structures/IndexedDB/activity-db.cjs +1 -1
  99. package/data-structures/IndexedDB/activity-db.d.ts +1 -0
  100. package/data-structures/IndexedDB/activity-db.mjs +86 -70
  101. package/data-structures/IndexedDB/balances-db.cjs +1 -1
  102. package/data-structures/IndexedDB/balances-db.mjs +33 -30
  103. package/data-structures/IndexedDB/contact-db.cjs +1 -1
  104. package/data-structures/IndexedDB/contact-db.mjs +9 -6
  105. package/data-structures/PublicBalance/PublicBalanceWatcher.cjs +1 -0
  106. package/data-structures/PublicBalance/PublicBalanceWatcher.d.ts +20 -0
  107. package/data-structures/PublicBalance/PublicBalanceWatcher.mjs +124 -0
  108. package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.cjs +1 -0
  109. package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.d.ts +15 -0
  110. package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.mjs +64 -0
  111. package/data-structures/PublicBalance/index.d.ts +2 -0
  112. package/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
  113. package/data-structures/TokenDBs/EventsPublicTokensDB.mjs +77 -78
  114. package/data-structures/crypto-keys/keys.cjs +1 -1
  115. package/data-structures/crypto-keys/keys.d.ts +0 -11
  116. package/data-structures/crypto-keys/keys.mjs +47 -107
  117. package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.cjs +1 -1
  118. package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.d.ts +3 -2
  119. package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.mjs +9 -9
  120. package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.cjs +1 -1
  121. package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.d.ts +3 -2
  122. package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.mjs +5 -5
  123. package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.cjs +1 -1
  124. package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.d.ts +3 -2
  125. package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.mjs +6 -6
  126. package/data-structures/event-service/evm/AbstractEventService.cjs +1 -1
  127. package/data-structures/event-service/evm/AbstractEventService.d.ts +3 -2
  128. package/data-structures/event-service/evm/AbstractEventService.mjs +16 -19
  129. package/data-structures/event-service/evm/AbstractNullifierSnapshotService.cjs +1 -1
  130. package/data-structures/event-service/evm/AbstractNullifierSnapshotService.d.ts +3 -3
  131. package/data-structures/event-service/evm/AbstractNullifierSnapshotService.mjs +6 -5
  132. package/data-structures/event-service/evm/AbstractSnapshotService.d.ts +1 -1
  133. package/data-structures/event-service/evm/BlockchainEventEmitter.cjs +1 -1
  134. package/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +7 -4
  135. package/data-structures/event-service/evm/BlockchainEventEmitter.mjs +35 -34
  136. package/data-structures/event-service/evm/ClientBlockchainEventEmitter.cjs +1 -0
  137. package/data-structures/event-service/evm/ClientBlockchainEventEmitter.d.ts +11 -0
  138. package/data-structures/event-service/evm/ClientBlockchainEventEmitter.mjs +21 -0
  139. package/data-structures/event-service/evm/PollingBlockchainEventEmitter.cjs +1 -0
  140. package/data-structures/event-service/evm/PollingBlockchainEventEmitter.d.ts +6 -0
  141. package/data-structures/event-service/evm/PollingBlockchainEventEmitter.mjs +16 -0
  142. package/data-structures/event-service/helpers/ClientEventHelper.cjs +1 -0
  143. package/data-structures/event-service/helpers/ClientEventHelper.d.ts +11 -0
  144. package/data-structures/event-service/helpers/ClientEventHelper.mjs +26 -0
  145. package/data-structures/event-service/helpers/PollingEventHelper.cjs +1 -0
  146. package/data-structures/event-service/helpers/PollingEventHelper.d.ts +5 -0
  147. package/data-structures/event-service/helpers/PollingEventHelper.mjs +14 -0
  148. package/data-structures/event-service/index.d.ts +4 -0
  149. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.cjs +1 -1
  150. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.d.ts +3 -2
  151. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.mjs +6 -6
  152. package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.cjs +1 -1
  153. package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.d.ts +4 -3
  154. package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.mjs +8 -8
  155. package/data-structures/event-service/solana/AbstractSolanaEventService.cjs +1 -1
  156. package/data-structures/event-service/solana/AbstractSolanaEventService.d.ts +3 -10
  157. package/data-structures/event-service/solana/AbstractSolanaEventService.mjs +5 -5
  158. package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.cjs +1 -1
  159. package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.d.ts +3 -2
  160. package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.mjs +1 -1
  161. package/data-structures/event-service/solana/AbstractSolanaSnapshotService.d.ts +1 -1
  162. package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.cjs +1 -0
  163. package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.d.ts +11 -0
  164. package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.mjs +22 -0
  165. package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.cjs +1 -0
  166. package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.d.ts +6 -0
  167. package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.mjs +16 -0
  168. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.cjs +1 -1
  169. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.d.ts +8 -14
  170. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.mjs +68 -67
  171. package/data-structures/index.d.ts +3 -0
  172. package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.cjs +1 -1
  173. package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.mjs +5 -2
  174. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.cjs +1 -1
  175. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.mjs +5 -2
  176. package/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.cjs +1 -1
  177. package/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.mjs +5 -2
  178. package/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.cjs +1 -1
  179. package/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.mjs +5 -2
  180. package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.cjs +1 -1
  181. package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.mjs +5 -2
  182. package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.cjs +1 -1
  183. package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.mjs +5 -2
  184. package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.cjs +1 -1
  185. package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.mjs +5 -2
  186. package/data-structures/utxo/Utxo.cjs +1 -1
  187. package/data-structures/utxo/Utxo.d.ts +1 -0
  188. package/data-structures/utxo/Utxo.mjs +18 -4
  189. package/error-handling/error-codes.constants.cjs +1 -1
  190. package/error-handling/error-codes.constants.mjs +2 -2
  191. package/functions/pre-transaction/getSolanaCalldataHash.cjs +1 -1
  192. package/functions/pre-transaction/getSolanaCalldataHash.mjs +22 -22
  193. package/functions/pre-transaction/sendV0Transaction.cjs +1 -1
  194. package/functions/pre-transaction/sendV0Transaction.mjs +53 -50
  195. package/functions/pre-transaction/solana.cjs +1 -1
  196. package/functions/pre-transaction/solana.mjs +93 -93
  197. package/functions/private-wallet/emporium.helpers.cjs +1 -1
  198. package/functions/private-wallet/emporium.helpers.d.ts +3 -2
  199. package/functions/private-wallet/emporium.helpers.mjs +118 -93
  200. package/functions/snarkjs/constructEmporiumProof.cjs +1 -1
  201. package/functions/snarkjs/constructEmporiumProof.d.ts +1 -2
  202. package/functions/snarkjs/constructEmporiumProof.mjs +89 -89
  203. package/functions/snarkjs/constructSolanaZkProof.cjs +1 -1
  204. package/functions/snarkjs/constructSolanaZkProof.mjs +6 -2
  205. package/functions/utils/bytes32.utils.cjs +1 -1
  206. package/functions/utils/bytes32.utils.mjs +8 -7
  207. package/functions/utils/create-provider.cjs +1 -1
  208. package/functions/utils/create-provider.d.ts +1 -1
  209. package/functions/utils/create-provider.mjs +13 -9
  210. package/functions/utils/index.d.ts +0 -1
  211. package/functions/utils/prepareHinkal.cjs +1 -1
  212. package/functions/utils/prepareHinkal.d.ts +6 -7
  213. package/functions/utils/prepareHinkal.mjs +45 -53
  214. package/functions/utils/publicBalance.utils.cjs +1 -1
  215. package/functions/utils/publicBalance.utils.mjs +49 -54
  216. package/functions/utils/socket.utils.cjs +1 -0
  217. package/functions/utils/socket.utils.d.ts +1 -0
  218. package/functions/utils/socket.utils.mjs +12 -0
  219. package/functions/utils/string.utils.cjs +1 -1
  220. package/functions/utils/string.utils.d.ts +1 -0
  221. package/functions/utils/string.utils.mjs +18 -14
  222. package/functions/utils/walletBalances.utils.cjs +1 -1
  223. package/functions/utils/walletBalances.utils.d.ts +1 -1
  224. package/functions/utils/walletBalances.utils.mjs +4 -4
  225. package/functions/web3/crypto.cjs +1 -0
  226. package/functions/web3/crypto.d.ts +1 -0
  227. package/functions/web3/crypto.mjs +7 -0
  228. package/functions/web3/events/getApprovedBalance.cjs +1 -1
  229. package/functions/web3/events/getApprovedBalance.mjs +14 -14
  230. package/functions/web3/events/getInputUtxoAndBalance.cjs +1 -1
  231. package/functions/web3/events/getInputUtxoAndBalance.mjs +61 -59
  232. package/functions/web3/events/getTransactionLogEvents.cjs +1 -1
  233. package/functions/web3/events/getTransactionLogEvents.mjs +32 -32
  234. package/functions/web3/fetchSolanaMerkleTreeRootHash.cjs +1 -1
  235. package/functions/web3/fetchSolanaMerkleTreeRootHash.mjs +6 -3
  236. package/functions/web3/functionCalls/approveToken.cjs +1 -1
  237. package/functions/web3/functionCalls/approveToken.mjs +17 -17
  238. package/functions/web3/functionCalls/transactCallDirect.cjs +1 -1
  239. package/functions/web3/functionCalls/transactCallDirect.mjs +16 -16
  240. package/functions/web3/functionCalls/transactCallRelayer.cjs +1 -1
  241. package/functions/web3/functionCalls/transactCallRelayer.mjs +13 -11
  242. package/functions/web3/getContractMetadata.cjs +1 -1
  243. package/functions/web3/getContractMetadata.mjs +17 -22
  244. package/functions/web3/getTokenHolder.cjs +1 -1
  245. package/functions/web3/getTokenHolder.mjs +20 -20
  246. package/functions/web3/index.d.ts +1 -0
  247. package/index.cjs +1 -1
  248. package/index.mjs +913 -890
  249. package/package.json +3 -2
  250. package/providers/EthersProviderAdapter.cjs +1 -1
  251. package/providers/EthersProviderAdapter.mjs +2 -5
  252. package/providers/prepareEthersHinkal.cjs +1 -1
  253. package/providers/prepareEthersHinkal.mjs +11 -4
  254. package/providers/prepareWagmiHinkal.cjs +1 -1
  255. package/providers/prepareWagmiHinkal.mjs +11 -4
  256. package/types/activities.types.d.ts +2 -0
  257. package/types/bridging-tx.types.d.ts +17 -0
  258. package/types/cache.types.cjs +1 -1
  259. package/types/cache.types.d.ts +5 -1
  260. package/types/cache.types.mjs +1 -1
  261. package/types/ethereum-network.types.d.ts +1 -0
  262. package/types/events.types.cjs +1 -0
  263. package/types/events.types.d.ts +9 -0
  264. package/types/events.types.mjs +5 -0
  265. package/types/index.d.ts +2 -0
  266. package/types/proxy.types.d.ts +11 -4
  267. package/types/sandbox.types.d.ts +2 -0
  268. package/types/solana.types.d.ts +8 -0
  269. package/types/token.types.d.ts +5 -0
  270. package/webworker/snarkjsWorker/snarkjsWorkerLauncher.cjs +1 -1
  271. package/webworker/snarkjsWorker/snarkjsWorkerLauncher.mjs +1 -1
  272. package/webworker/utxoWorker/utxoWorkerLauncher.cjs +1 -1
  273. package/webworker/utxoWorker/utxoWorkerLauncher.mjs +1 -1
  274. package/webworker/zkProofWorker/zkProofWorkerLauncher.cjs +1 -1
  275. package/webworker/zkProofWorker/zkProofWorkerLauncher.mjs +1 -1
  276. package/functions/kyc/authentoHelper.cjs +0 -1
  277. package/functions/kyc/authentoHelper.d.ts +0 -12
  278. package/functions/kyc/authentoHelper.mjs +0 -30
  279. package/functions/utils/get-hinkal-approvals.cjs +0 -1
  280. package/functions/utils/get-hinkal-approvals.d.ts +0 -3
  281. package/functions/utils/get-hinkal-approvals.mjs +0 -38
@@ -1,36 +1,36 @@
1
- import { BN as t } from "@coral-xyz/anchor";
2
- import { ethers as y } from "ethers";
1
+ import { BN as e } from "@coral-xyz/anchor";
2
+ import { ethers as B } from "ethers";
3
3
  import { CIRCOM_P as I } from "../../constants/protocol.constants.mjs";
4
- const N = (o, r, a, s, u, c, d, f) => {
5
- const B = new t(u.toString()), l = new t(c.toString()), b = s.reduce(
6
- (n, e) => [...n, ...new t(e.length).toBuffer("be", 8), ...e],
4
+ const x = (o, r, a, s, c, d, u, y) => {
5
+ const l = new e(c.toString()), b = new e(d.toString()), i = s.reduce(
6
+ (n, t) => [...n, ...new e(t.length).toArray("be", 8), ...t],
7
7
  []
8
- ), i = d.reduce((n, e) => {
9
- const p = [
10
- ...new t(e.programIndex).toBuffer("be", 1),
11
- ...new t(e.accountIndexes.length).toBuffer("be", 8),
12
- ...e.accountIndexes,
13
- ...new t(e.data.length).toBuffer("be", 8),
14
- ...e.data
8
+ ), m = u.reduce((n, t) => {
9
+ const A = [
10
+ ...new e(t.programIndex).toArray("be", 1),
11
+ ...new e(t.accountIndexes.length).toArray("be", 8),
12
+ ...t.accountIndexes,
13
+ ...new e(t.data.length).toArray("be", 8),
14
+ ...t.data
15
15
  ];
16
- return [...n, ...p];
17
- }, []), m = f.reduce(
18
- (n, e) => [...n, e.isWritable ? 1 : 0, ...e.pubkey.toBytes()],
16
+ return [...n, ...A];
17
+ }, []), g = y.reduce(
18
+ (n, t) => [...n, t.isWritable ? 1 : 0, ...t.pubkey.toBytes()],
19
19
  []
20
- ), g = [
20
+ ), p = [
21
21
  o.tokenNumber,
22
22
  o.nullifierAmount,
23
23
  o.outputAmount,
24
24
  ...r.toBytes(),
25
25
  ...a.toBytes(),
26
- ...b,
27
- ...B.toBuffer("be", 8),
28
- ...l.toBuffer("be", 8),
29
26
  ...i,
30
- ...m
27
+ ...l.toArray("be", 8),
28
+ ...b.toArray("be", 8),
29
+ ...m,
30
+ ...g
31
31
  ];
32
- return BigInt(y.utils.sha256(g)) % I;
32
+ return BigInt(B.utils.sha256(p)) % I;
33
33
  };
34
34
  export {
35
- N as getSolanaCalldataHash
35
+ x as getSolanaCalldataHash
36
36
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("@solana/spl-token"),r=require("@solana/web3.js"),T=require("../../constants/protocol.constants.cjs"),U=require("../utils/ethers-formatter.utils.cjs"),C=require("../../data-structures/crypto-keys/keys.cjs"),h=async(t,e,a,n)=>{try{const{blockhash:s}=await t.getLatestBlockhash(),o=[r.ComputeBudgetProgram.setComputeUnitLimit({units:T.MAX_COMPUTE_UNIT_LIMIT}),...a],i=new r.TransactionMessage({payerKey:e,recentBlockhash:s,instructions:o}).compileToV0Message(n),c=new r.VersionedTransaction(i),u=await t.simulateTransaction(c,{sigVerify:!1,replaceRecentBlockhash:!0}),{unitsConsumed:m}=u.value;if(!m)return T.MAX_COMPUTE_UNIT_LIMIT;const l=Math.ceil(m*(1+T.COMPUTE_UNIT_PADDING_PERCENTAGE));return Math.max(T.MIN_COMPUTE_UNIT_LIMIT,Math.min(l,T.MAX_COMPUTE_UNIT_LIMIT))}catch{return T.MAX_COMPUTE_UNIT_LIMIT}},I=async(t,e,a,n)=>{const s=a.filter(u=>!u.programId.equals(r.ComputeBudgetProgram.programId)),o=await h(t,e,s,n),i=r.ComputeBudgetProgram.setComputeUnitLimit({units:o}),c=r.ComputeBudgetProgram.setComputeUnitPrice({microLamports:T.MICRO_LAMPORTS_PER_CU});return[i,c,...s]},M=async(t,e,a,n,s)=>{if(e.length===0)return"";const{blockhash:o,lastValidBlockHeight:i}=await t.getLatestBlockhash("confirmed"),c=await I(t,a.publicKey,e,s),u=new r.TransactionMessage({payerKey:a.publicKey,instructions:c,recentBlockhash:o}).compileToV0Message(s),m=new r.VersionedTransaction(u);m.sign(n);const l=await t.sendTransaction(m);return await t.confirmTransaction({signature:l,blockhash:o,lastValidBlockHeight:i},"confirmed"),l},P=async(t,e,a,n)=>{if(!a)return null;const s=await d.getAssociatedTokenAddress(a,n,!0,d.TOKEN_PROGRAM_ID,d.ASSOCIATED_TOKEN_PROGRAM_ID);if(!await t.getAccountInfo(s)){const i=d.createAssociatedTokenAccountInstruction(e.publicKey,s,n,a,d.TOKEN_PROGRAM_ID,d.ASSOCIATED_TOKEN_PROGRAM_ID);await M(t,[i],e,[e])}return s},V=async({connection:t,chainId:e,subAccount:a,payerPublicKey:n,instructions:s,lookupTableAccounts:o,convertParams:i})=>{const{blockhash:c,lastValidBlockHeight:u}=await t.getLatestBlockhash(),m=await I(t,n,s,o),l=new r.TransactionMessage({payerKey:n,recentBlockhash:c,instructions:m}).compileToV0Message(o),_=new r.VersionedTransaction(l),g=await C.UserKeys.sendAndSignTransactionFromPrivateKey(e,a.privateKey,_);await t.confirmTransaction({signature:g,blockhash:c,lastValidBlockHeight:u},"confirmed");const p=await t.getTransaction(g,{commitment:"confirmed",maxSupportedTransactionVersion:0}),{fromAddress:f,toAddress:w,programAddress:A}=i;return U.convertSolanaTransactionToRelayer(g,p,f,w,A)},y=async(t,e,a,n)=>{const{blockhash:s}=await t.getLatestBlockhash(),o=await I(t,e,a,n),i=new r.TransactionMessage({payerKey:e,recentBlockhash:s,instructions:o}).compileToV0Message(n),c=new r.VersionedTransaction(i);return Buffer.from(c.serialize()).toString("base64")};exports.ensureAtaExists=P;exports.estimateComputeUnitLimit=h;exports.sendProxyV0Transaction=V;exports.sendV0Transaction=M;exports.serializeProxyV0Transaction=y;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("@solana/spl-token"),r=require("@solana/web3.js"),T=require("../../constants/protocol.constants.cjs"),U=require("../utils/ethers-formatter.utils.cjs"),M=require("../../data-structures/AccountActions/AccountActions.cjs"),_=async(t,s,e,a)=>{try{const{blockhash:n}=await t.getLatestBlockhash(),o=[r.ComputeBudgetProgram.setComputeUnitLimit({units:T.MAX_COMPUTE_UNIT_LIMIT}),...e],i=new r.TransactionMessage({payerKey:s,recentBlockhash:n,instructions:o}).compileToV0Message(a),c=new r.VersionedTransaction(i),u=await t.simulateTransaction(c,{sigVerify:!1,replaceRecentBlockhash:!0}),{unitsConsumed:m}=u.value;if(!m)return T.MAX_COMPUTE_UNIT_LIMIT;const l=Math.ceil(m*(1+T.COMPUTE_UNIT_PADDING_PERCENTAGE));return Math.max(T.MIN_COMPUTE_UNIT_LIMIT,Math.min(l,T.MAX_COMPUTE_UNIT_LIMIT))}catch{return T.MAX_COMPUTE_UNIT_LIMIT}},I=async(t,s,e,a)=>{const n=e.filter(u=>!u.programId.equals(r.ComputeBudgetProgram.programId)),o=await _(t,s,n,a),i=r.ComputeBudgetProgram.setComputeUnitLimit({units:o}),c=r.ComputeBudgetProgram.setComputeUnitPrice({microLamports:T.MICRO_LAMPORTS_PER_CU});return[i,c,...n]},A=async(t,s,e,a,n)=>{if(s.length===0)return"";const{blockhash:o,lastValidBlockHeight:i}=await t.getLatestBlockhash("confirmed"),c=await I(t,e.publicKey,s,n),u=new r.TransactionMessage({payerKey:e.publicKey,instructions:c,recentBlockhash:o}).compileToV0Message(n),m=new r.VersionedTransaction(u);m.sign(a);const l=await t.sendTransaction(m);return await t.confirmTransaction({signature:l,blockhash:o,lastValidBlockHeight:i},"confirmed"),l},V=async(t,s,e,a)=>{if(!e)return null;const n=await d.getAssociatedTokenAddress(e,a,!0,d.TOKEN_PROGRAM_ID,d.ASSOCIATED_TOKEN_PROGRAM_ID);if(!await t.getAccountInfo(n)){const i=d.createAssociatedTokenAccountInstruction(s.publicKey,n,a,e,d.TOKEN_PROGRAM_ID,d.ASSOCIATED_TOKEN_PROGRAM_ID);await A(t,[i],s,[s])}return n},y=async({connection:t,chainId:s,subAccount:e,payerPublicKey:a,instructions:n,lookupTableAccounts:o,convertParams:i})=>{const{blockhash:c,lastValidBlockHeight:u}=await t.getLatestBlockhash(),m=await I(t,a,n,o),l=new r.TransactionMessage({payerKey:a,recentBlockhash:c,instructions:m}).compileToV0Message(o),p=new r.VersionedTransaction(l),h=M.AccountActions.getPrivateKeyFromSubAccount(s,e);if(!h)throw Error("Private key is not available");const g=await M.AccountActions.sendAndSignTransactionFromPrivateKey(s,h,p);await t.confirmTransaction({signature:g,blockhash:c,lastValidBlockHeight:u},"confirmed");const f=await t.getTransaction(g,{commitment:"confirmed",maxSupportedTransactionVersion:0}),{fromAddress:w,toAddress:P,programAddress:C}=i;return U.convertSolanaTransactionToRelayer(g,f,w,P,C)},E=async(t,s,e,a)=>{const{blockhash:n}=await t.getLatestBlockhash(),o=await I(t,s,e,a),i=new r.TransactionMessage({payerKey:s,recentBlockhash:n,instructions:o}).compileToV0Message(a),c=new r.VersionedTransaction(i);return Buffer.from(c.serialize()).toString("base64")};exports.ensureAtaExists=V;exports.estimateComputeUnitLimit=_;exports.sendProxyV0Transaction=y;exports.sendV0Transaction=A;exports.serializeProxyV0Transaction=E;
@@ -1,16 +1,16 @@
1
- import { getAssociatedTokenAddress as V, TOKEN_PROGRAM_ID as I, ASSOCIATED_TOKEN_PROGRAM_ID as p, createAssociatedTokenAccountInstruction as y } from "@solana/spl-token";
1
+ import { getAssociatedTokenAddress as B, TOKEN_PROGRAM_ID as I, ASSOCIATED_TOKEN_PROGRAM_ID as w, createAssociatedTokenAccountInstruction as C } from "@solana/spl-token";
2
2
  import { ComputeBudgetProgram as d, TransactionMessage as h, VersionedTransaction as g } from "@solana/web3.js";
3
- import { MAX_COMPUTE_UNIT_LIMIT as l, COMPUTE_UNIT_PADDING_PERCENTAGE as B, MIN_COMPUTE_UNIT_LIMIT as C, MICRO_LAMPORTS_PER_CU as L } from "../../constants/protocol.constants.mjs";
4
- import { convertSolanaTransactionToRelayer as k } from "../utils/ethers-formatter.utils.mjs";
5
- import { UserKeys as E } from "../../data-structures/crypto-keys/keys.mjs";
6
- const P = async (t, a, n, e) => {
3
+ import { MAX_COMPUTE_UNIT_LIMIT as l, COMPUTE_UNIT_PADDING_PERCENTAGE as k, MIN_COMPUTE_UNIT_LIMIT as L, MICRO_LAMPORTS_PER_CU as P } from "../../constants/protocol.constants.mjs";
4
+ import { convertSolanaTransactionToRelayer as E } from "../utils/ethers-formatter.utils.mjs";
5
+ import { AccountActions as A } from "../../data-structures/AccountActions/AccountActions.mjs";
6
+ const R = async (t, s, n, e) => {
7
7
  try {
8
- const { blockhash: s } = await t.getLatestBlockhash(), o = [
8
+ const { blockhash: a } = await t.getLatestBlockhash(), o = [
9
9
  d.setComputeUnitLimit({ units: l }),
10
10
  ...n
11
11
  ], i = new h({
12
- payerKey: a,
13
- recentBlockhash: s,
12
+ payerKey: s,
13
+ recentBlockhash: a,
14
14
  instructions: o
15
15
  }).compileToV0Message(e), r = new g(i), c = await t.simulateTransaction(r, {
16
16
  sigVerify: !1,
@@ -18,104 +18,107 @@ const P = async (t, a, n, e) => {
18
18
  }), { unitsConsumed: m } = c.value;
19
19
  if (!m)
20
20
  return l;
21
- const u = Math.ceil(m * (1 + B));
22
- return Math.max(C, Math.min(u, l));
21
+ const u = Math.ceil(m * (1 + k));
22
+ return Math.max(L, Math.min(u, l));
23
23
  } catch {
24
24
  return l;
25
25
  }
26
- }, f = async (t, a, n, e) => {
27
- const s = n.filter(
26
+ }, T = async (t, s, n, e) => {
27
+ const a = n.filter(
28
28
  (c) => !c.programId.equals(d.programId)
29
- ), o = await P(
29
+ ), o = await R(
30
30
  t,
31
- a,
32
31
  s,
32
+ a,
33
33
  e
34
34
  ), i = d.setComputeUnitLimit({ units: o }), r = d.setComputeUnitPrice({
35
- microLamports: L
35
+ microLamports: P
36
36
  });
37
- return [i, r, ...s];
38
- }, R = async (t, a, n, e, s) => {
39
- if (a.length === 0)
37
+ return [i, r, ...a];
38
+ }, O = async (t, s, n, e, a) => {
39
+ if (s.length === 0)
40
40
  return "";
41
- const { blockhash: o, lastValidBlockHeight: i } = await t.getLatestBlockhash("confirmed"), r = await f(
41
+ const { blockhash: o, lastValidBlockHeight: i } = await t.getLatestBlockhash("confirmed"), r = await T(
42
42
  t,
43
43
  n.publicKey,
44
- a,
45
- s
44
+ s,
45
+ a
46
46
  ), c = new h({
47
47
  payerKey: n.publicKey,
48
48
  instructions: r,
49
49
  recentBlockhash: o
50
- }).compileToV0Message(s), m = new g(c);
50
+ }).compileToV0Message(a), m = new g(c);
51
51
  m.sign(e);
52
52
  const u = await t.sendTransaction(m);
53
53
  return await t.confirmTransaction({ signature: u, blockhash: o, lastValidBlockHeight: i }, "confirmed"), u;
54
- }, D = async (t, a, n, e) => {
54
+ }, D = async (t, s, n, e) => {
55
55
  if (!n)
56
56
  return null;
57
- const s = await V(n, e, !0, I, p);
58
- if (!await t.getAccountInfo(s)) {
59
- const i = y(
60
- a.publicKey,
61
- s,
57
+ const a = await B(n, e, !0, I, w);
58
+ if (!await t.getAccountInfo(a)) {
59
+ const i = C(
60
+ s.publicKey,
61
+ a,
62
62
  e,
63
63
  n,
64
64
  I,
65
- p
65
+ w
66
66
  );
67
- await R(t, [i], a, [a]);
67
+ await O(t, [i], s, [s]);
68
68
  }
69
- return s;
70
- }, v = async ({
69
+ return a;
70
+ }, G = async ({
71
71
  connection: t,
72
- chainId: a,
72
+ chainId: s,
73
73
  subAccount: n,
74
74
  payerPublicKey: e,
75
- instructions: s,
75
+ instructions: a,
76
76
  lookupTableAccounts: o,
77
77
  convertParams: i
78
78
  }) => {
79
- const { blockhash: r, lastValidBlockHeight: c } = await t.getLatestBlockhash(), m = await f(
79
+ const { blockhash: r, lastValidBlockHeight: c } = await t.getLatestBlockhash(), m = await T(
80
80
  t,
81
81
  e,
82
- s,
82
+ a,
83
83
  o
84
84
  ), u = new h({
85
85
  payerKey: e,
86
86
  recentBlockhash: r,
87
87
  instructions: m
88
- }).compileToV0Message(o), w = new g(u), T = await E.sendAndSignTransactionFromPrivateKey(a, n.privateKey, w);
88
+ }).compileToV0Message(o), M = new g(u), p = A.getPrivateKeyFromSubAccount(s, n);
89
+ if (!p)
90
+ throw Error("Private key is not available");
91
+ const f = await A.sendAndSignTransactionFromPrivateKey(s, p, M);
89
92
  await t.confirmTransaction(
90
93
  {
91
- signature: T,
94
+ signature: f,
92
95
  blockhash: r,
93
96
  lastValidBlockHeight: c
94
97
  },
95
98
  "confirmed"
96
99
  );
97
- const M = await t.getTransaction(T, {
100
+ const _ = await t.getTransaction(f, {
98
101
  commitment: "confirmed",
99
102
  maxSupportedTransactionVersion: 0
100
- }), { fromAddress: _, toAddress: A, programAddress: U } = i;
101
- return k(T, M, _, A, U);
102
- }, G = async (t, a, n, e) => {
103
- const { blockhash: s } = await t.getLatestBlockhash(), o = await f(
103
+ }), { fromAddress: V, toAddress: y, programAddress: U } = i;
104
+ return E(f, _, V, y, U);
105
+ }, b = async (t, s, n, e) => {
106
+ const { blockhash: a } = await t.getLatestBlockhash(), o = await T(
104
107
  t,
105
- a,
108
+ s,
106
109
  n,
107
110
  e
108
111
  ), i = new h({
109
- payerKey: a,
110
- recentBlockhash: s,
112
+ payerKey: s,
113
+ recentBlockhash: a,
111
114
  instructions: o
112
115
  }).compileToV0Message(e), r = new g(i);
113
116
  return Buffer.from(r.serialize()).toString("base64");
114
117
  };
115
118
  export {
116
119
  D as ensureAtaExists,
117
- P as estimateComputeUnitLimit,
118
- v as sendProxyV0Transaction,
119
- R as sendV0Transaction,
120
- G as serializeProxyV0Transaction
120
+ R as estimateComputeUnitLimit,
121
+ G as sendProxyV0Transaction,
122
+ O as sendV0Transaction,
123
+ b as serializeProxyV0Transaction
121
124
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("@coral-xyz/anchor"),n=require("@solana/web3.js"),l=require("../../crypto/poseidon.cjs"),u=e=>{const t=[];let c=e;for(;c>0n;)t.unshift(Number(c%256n)),c/=256n;for(;t.length<32;)t.unshift(0);return t},a=e=>({extraRandomization:u(e.extraRandomization),stealthAddress:u(e.stealthAddress),h0:u(e.H0),h1:u(e.H1)}),d=(e,t,c)=>{const o=u(e),r=[Buffer.from("hinkal_nullifier"),t.toBuffer(),Buffer.from(o)],[s]=n.PublicKey.findProgramAddressSync(r,c);return s},y=(e,t)=>{const c=[Buffer.from("hinkal"),t.toBuffer()],[o]=n.PublicKey.findProgramAddressSync(c,e);return o},A=(e,t)=>{const c=[Buffer.from("hinkal_merkle"),t.toBuffer()],[o]=n.PublicKey.findProgramAddressSync(c,e);return o},P=(e,t)=>{const c=[Buffer.from("hinkal_merkle_access_token"),t.toBuffer()],[o]=n.PublicKey.findProgramAddressSync(c,e);return o},g=(e,t)=>{const c=[Buffer.from("hinkal_access_token"),t.toBuffer()],[o]=n.PublicKey.findProgramAddressSync(c,e);return o},i=(e,t,c)=>{const o=[Buffer.from("hinkal_swapper"),t.toBytes(),new f.BN(c.toString()).toBuffer("be",32)],[r]=n.PublicKey.findProgramAddressSync(o,e);return r},b=(e,t,c)=>{const o=l.poseidonFunction(c);return i(e,t,o)},B=(e,t)=>{const c=[Buffer.from("hinkal_vault"),t.toBuffer()],[o]=n.PublicKey.findProgramAddressSync(c,e);return o},K=(e,t,c)=>{const o=u(e),r=[Buffer.from("hinkal_access_keys"),c.toBuffer(),Buffer.from(o)],[s]=n.PublicKey.findProgramAddressSync(r,t);return s},m=(e,t,c,o)=>{const r=[Buffer.from("hinkal_proof_part1"),t.toBuffer(),c.toBuffer(),new f.BN(o.toString()).toBuffer("be",4)],[s]=n.PublicKey.findProgramAddressSync(r,e);return s},S=(e,t,c,o)=>{const r=[Buffer.from("hinkal_proof_part2"),t.toBuffer(),c.toBuffer(),new f.BN(o.toString()).toBuffer("be",4)],[s]=n.PublicKey.findProgramAddressSync(r,e);return s},k=(e,t,c,o)=>{const r=[Buffer.from("hinkal_encrypted_outputs"),t.toBuffer(),c.toBuffer(),new f.BN(o.toString()).toBuffer("be",4)],[s]=n.PublicKey.findProgramAddressSync(r,e);return s},p=(e,t,c)=>{const o=[Buffer.from("hinkal_token_limit"),t.toBuffer(),c.toBuffer()],[r]=n.PublicKey.findProgramAddressSync(o,e);return r},h=(e,t,c,o)=>{const r=[Buffer.from("hinkal_instructions"),t.toBuffer(),c.toBuffer(),new f.BN(o.toString()).toBuffer("be",4)],[s]=n.PublicKey.findProgramAddressSync(r,e);return s};exports.buildAnchorStealthAddressStructure=a;exports.encodeToByte32Array=u;exports.getAccessTokenAccountPublicKey=K;exports.getAccessTokenMerkleAccountPublicKey=P;exports.getAccessTokenStorageAccountPublicKey=g;exports.getEncryptedOutputsAccountPublicKey=k;exports.getInstructionsAccountPublicKey=h;exports.getMerkleAccountPublicKey=A;exports.getNullifierAccount=d;exports.getProofAccountPart1PublicKey=m;exports.getProofAccountPart2PublicKey=S;exports.getStorageAccountPublicKey=y;exports.getStorageVaultPublicKey=B;exports.getSwapperAccountPublicKey=i;exports.getSwapperAccountPublicKeyFromSalt=b;exports.getTokenLimitStorageAccountPublicKey=p;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("@coral-xyz/anchor"),r=require("@solana/web3.js"),l=require("../../crypto/poseidon.cjs"),s=e=>new TextEncoder().encode(e),i=e=>{const t=[];let c=e;for(;c>0n;)t.unshift(Number(c%256n)),c/=256n;for(;t.length<32;)t.unshift(0);return t},d=e=>({extraRandomization:i(e.extraRandomization),stealthAddress:i(e.stealthAddress),h0:i(e.H0),h1:i(e.H1)}),A=(e,t,c)=>{const n=i(e),o=[s("hinkal_nullifier"),t.toBytes(),new Uint8Array(n)],[u]=r.PublicKey.findProgramAddressSync(o,c);return u},g=(e,t)=>{const c=[s("hinkal"),t.toBytes()],[n]=r.PublicKey.findProgramAddressSync(c,e);return n},P=(e,t)=>{const c=[s("hinkal_merkle"),t.toBytes()],[n]=r.PublicKey.findProgramAddressSync(c,e);return n},b=(e,t)=>{const c=[s("hinkal_merkle_access_token"),t.toBytes()],[n]=r.PublicKey.findProgramAddressSync(c,e);return n},K=(e,t)=>{const c=[s("hinkal_access_token"),t.toBytes()],[n]=r.PublicKey.findProgramAddressSync(c,e);return n},a=(e,t,c)=>{const n=[s("hinkal_swapper"),t.toBytes(),new Uint8Array(new y.BN(c.toString()).toArray("be",32))],[o]=r.PublicKey.findProgramAddressSync(n,e);return o},S=(e,t,c)=>{const n=l.poseidonFunction(c);return a(e,t,n)},k=(e,t)=>{const c=[s("hinkal_vault"),t.toBytes()],[n]=r.PublicKey.findProgramAddressSync(c,e);return n},f=(e,t,c)=>{const n=i(e),o=[s("hinkal_access_keys"),c.toBytes(),new Uint8Array(n)],[u]=r.PublicKey.findProgramAddressSync(o,t);return u},p=(e,t,c,n)=>{const o=[s("hinkal_proof_part1"),t.toBytes(),c.toBytes(),new Uint8Array(new y.BN(n.toString()).toArray("be",4))],[u]=r.PublicKey.findProgramAddressSync(o,e);return u},h=(e,t,c,n)=>{const o=[s("hinkal_proof_part2"),t.toBytes(),c.toBytes(),new Uint8Array(new y.BN(n.toString()).toArray("be",4))],[u]=r.PublicKey.findProgramAddressSync(o,e);return u},B=(e,t,c,n)=>{const o=[s("hinkal_encrypted_outputs"),t.toBytes(),c.toBytes(),new Uint8Array(new y.BN(n.toString()).toArray("be",4))],[u]=r.PublicKey.findProgramAddressSync(o,e);return u},m=(e,t,c)=>{const n=[s("hinkal_token_limit"),t.toBytes(),c.toBytes()],[o]=r.PublicKey.findProgramAddressSync(n,e);return o},w=(e,t,c,n)=>{const o=[s("hinkal_instructions"),t.toBytes(),c.toBytes(),new Uint8Array(new y.BN(n.toString()).toArray("be",4))],[u]=r.PublicKey.findProgramAddressSync(o,e);return u};exports.buildAnchorStealthAddressStructure=d;exports.encodeToByte32Array=i;exports.getAccessTokenAccountPublicKey=f;exports.getAccessTokenMerkleAccountPublicKey=b;exports.getAccessTokenStorageAccountPublicKey=K;exports.getEncryptedOutputsAccountPublicKey=B;exports.getInstructionsAccountPublicKey=w;exports.getMerkleAccountPublicKey=P;exports.getNullifierAccount=A;exports.getProofAccountPart1PublicKey=p;exports.getProofAccountPart2PublicKey=h;exports.getStorageAccountPublicKey=g;exports.getStorageVaultPublicKey=k;exports.getSwapperAccountPublicKey=a;exports.getSwapperAccountPublicKeyFromSalt=S;exports.getTokenLimitStorageAccountPublicKey=m;
@@ -1,105 +1,105 @@
1
1
  import { BN as u } from "@coral-xyz/anchor";
2
- import { PublicKey as c } from "@solana/web3.js";
3
- import { poseidonFunction as i } from "../../crypto/poseidon.mjs";
4
- const f = (e) => {
5
- const t = [];
6
- let o = e;
7
- for (; o > 0n; )
8
- t.unshift(Number(o % 256n)), o /= 256n;
9
- for (; t.length < 32; )
10
- t.unshift(0);
11
- return t;
12
- }, m = (e) => ({
13
- extraRandomization: f(e.extraRandomization),
14
- stealthAddress: f(e.stealthAddress),
15
- h0: f(e.H0),
16
- h1: f(e.H1)
17
- }), B = (e, t, o) => {
18
- const r = f(e), n = [Buffer.from("hinkal_nullifier"), t.toBuffer(), Buffer.from(r)], [s] = c.findProgramAddressSync(n, o);
2
+ import { PublicKey as r } from "@solana/web3.js";
3
+ import { poseidonFunction as d } from "../../crypto/poseidon.mjs";
4
+ const c = (t) => new TextEncoder().encode(t), a = (t) => {
5
+ const e = [];
6
+ let n = t;
7
+ for (; n > 0n; )
8
+ e.unshift(Number(n % 256n)), n /= 256n;
9
+ for (; e.length < 32; )
10
+ e.unshift(0);
11
+ return e;
12
+ }, P = (t) => ({
13
+ extraRandomization: a(t.extraRandomization),
14
+ stealthAddress: a(t.stealthAddress),
15
+ h0: a(t.H0),
16
+ h1: a(t.H1)
17
+ }), k = (t, e, n) => {
18
+ const o = a(t), s = [c("hinkal_nullifier"), e.toBytes(), new Uint8Array(o)], [i] = r.findProgramAddressSync(s, n);
19
+ return i;
20
+ }, S = (t, e) => {
21
+ const n = [c("hinkal"), e.toBytes()], [o] = r.findProgramAddressSync(n, t);
22
+ return o;
23
+ }, f = (t, e) => {
24
+ const n = [c("hinkal_merkle"), e.toBytes()], [o] = r.findProgramAddressSync(n, t);
25
+ return o;
26
+ }, m = (t, e) => {
27
+ const n = [c("hinkal_merkle_access_token"), e.toBytes()], [o] = r.findProgramAddressSync(n, t);
28
+ return o;
29
+ }, p = (t, e) => {
30
+ const n = [c("hinkal_access_token"), e.toBytes()], [o] = r.findProgramAddressSync(n, t);
31
+ return o;
32
+ }, y = (t, e, n) => {
33
+ const o = [
34
+ c("hinkal_swapper"),
35
+ e.toBytes(),
36
+ new Uint8Array(new u(n.toString()).toArray("be", 32))
37
+ ], [s] = r.findProgramAddressSync(o, t);
19
38
  return s;
20
- }, g = (e, t) => {
21
- const o = [Buffer.from("hinkal"), t.toBuffer()], [r] = c.findProgramAddressSync(o, e);
22
- return r;
23
- }, y = (e, t) => {
24
- const o = [Buffer.from("hinkal_merkle"), t.toBuffer()], [r] = c.findProgramAddressSync(o, e);
25
- return r;
26
- }, P = (e, t) => {
27
- const o = [Buffer.from("hinkal_merkle_access_token"), t.toBuffer()], [r] = c.findProgramAddressSync(o, e);
28
- return r;
29
- }, k = (e, t) => {
30
- const o = [Buffer.from("hinkal_access_token"), t.toBuffer()], [r] = c.findProgramAddressSync(o, e);
31
- return r;
32
- }, d = (e, t, o) => {
33
- const r = [
34
- Buffer.from("hinkal_swapper"),
35
- t.toBytes(),
36
- new u(o.toString()).toBuffer("be", 32)
37
- ], [n] = c.findProgramAddressSync(r, e);
38
- return n;
39
- }, S = (e, t, o) => {
40
- const r = i(o);
41
- return d(e, t, r);
42
- }, p = (e, t) => {
43
- const o = [Buffer.from("hinkal_vault"), t.toBuffer()], [r] = c.findProgramAddressSync(o, e);
44
- return r;
45
- }, h = (e, t, o) => {
46
- const r = f(e), n = [Buffer.from("hinkal_access_keys"), o.toBuffer(), Buffer.from(r)], [s] = c.findProgramAddressSync(n, t);
47
- return s;
48
- }, b = (e, t, o, r) => {
49
- const n = [
50
- Buffer.from("hinkal_proof_part1"),
51
- t.toBuffer(),
52
- o.toBuffer(),
53
- new u(r.toString()).toBuffer("be", 4)
39
+ }, h = (t, e, n) => {
40
+ const o = d(n);
41
+ return y(t, e, o);
42
+ }, B = (t, e) => {
43
+ const n = [c("hinkal_vault"), e.toBytes()], [o] = r.findProgramAddressSync(n, t);
44
+ return o;
45
+ }, b = (t, e, n) => {
46
+ const o = a(t), s = [c("hinkal_access_keys"), n.toBytes(), new Uint8Array(o)], [i] = r.findProgramAddressSync(s, e);
47
+ return i;
48
+ }, w = (t, e, n, o) => {
49
+ const s = [
50
+ c("hinkal_proof_part1"),
51
+ e.toBytes(),
52
+ n.toBytes(),
53
+ new Uint8Array(new u(o.toString()).toArray("be", 4))
54
54
  // 4 here because type of id is u32
55
- ], [s] = c.findProgramAddressSync(n, e);
56
- return s;
57
- }, _ = (e, t, o, r) => {
58
- const n = [
59
- Buffer.from("hinkal_proof_part2"),
60
- t.toBuffer(),
61
- o.toBuffer(),
62
- new u(r.toString()).toBuffer("be", 4)
55
+ ], [i] = r.findProgramAddressSync(s, t);
56
+ return i;
57
+ }, _ = (t, e, n, o) => {
58
+ const s = [
59
+ c("hinkal_proof_part2"),
60
+ e.toBytes(),
61
+ n.toBytes(),
62
+ new Uint8Array(new u(o.toString()).toArray("be", 4))
63
63
  // 4 here because type of id is u32
64
- ], [s] = c.findProgramAddressSync(n, e);
65
- return s;
66
- }, K = (e, t, o, r) => {
67
- const n = [
68
- Buffer.from("hinkal_encrypted_outputs"),
69
- t.toBuffer(),
70
- o.toBuffer(),
71
- new u(r.toString()).toBuffer("be", 4)
64
+ ], [i] = r.findProgramAddressSync(s, t);
65
+ return i;
66
+ }, K = (t, e, n, o) => {
67
+ const s = [
68
+ c("hinkal_encrypted_outputs"),
69
+ e.toBytes(),
70
+ n.toBytes(),
71
+ new Uint8Array(new u(o.toString()).toArray("be", 4))
72
72
  // 4 here because type of id is u32
73
- ], [s] = c.findProgramAddressSync(n, e);
73
+ ], [i] = r.findProgramAddressSync(s, t);
74
+ return i;
75
+ }, T = (t, e, n) => {
76
+ const o = [c("hinkal_token_limit"), e.toBytes(), n.toBytes()], [s] = r.findProgramAddressSync(o, t);
74
77
  return s;
75
- }, w = (e, t, o) => {
76
- const r = [Buffer.from("hinkal_token_limit"), t.toBuffer(), o.toBuffer()], [n] = c.findProgramAddressSync(r, e);
77
- return n;
78
- }, T = (e, t, o, r) => {
79
- const n = [
80
- Buffer.from("hinkal_instructions"),
81
- t.toBuffer(),
82
- o.toBuffer(),
83
- new u(r.toString()).toBuffer("be", 4)
78
+ }, U = (t, e, n, o) => {
79
+ const s = [
80
+ c("hinkal_instructions"),
81
+ e.toBytes(),
82
+ n.toBytes(),
83
+ new Uint8Array(new u(o.toString()).toArray("be", 4))
84
84
  // 4 here because type of id is u32
85
- ], [s] = c.findProgramAddressSync(n, e);
86
- return s;
85
+ ], [i] = r.findProgramAddressSync(s, t);
86
+ return i;
87
87
  };
88
88
  export {
89
- m as buildAnchorStealthAddressStructure,
90
- f as encodeToByte32Array,
91
- h as getAccessTokenAccountPublicKey,
92
- P as getAccessTokenMerkleAccountPublicKey,
93
- k as getAccessTokenStorageAccountPublicKey,
89
+ P as buildAnchorStealthAddressStructure,
90
+ a as encodeToByte32Array,
91
+ b as getAccessTokenAccountPublicKey,
92
+ m as getAccessTokenMerkleAccountPublicKey,
93
+ p as getAccessTokenStorageAccountPublicKey,
94
94
  K as getEncryptedOutputsAccountPublicKey,
95
- T as getInstructionsAccountPublicKey,
96
- y as getMerkleAccountPublicKey,
97
- B as getNullifierAccount,
98
- b as getProofAccountPart1PublicKey,
95
+ U as getInstructionsAccountPublicKey,
96
+ f as getMerkleAccountPublicKey,
97
+ k as getNullifierAccount,
98
+ w as getProofAccountPart1PublicKey,
99
99
  _ as getProofAccountPart2PublicKey,
100
- g as getStorageAccountPublicKey,
101
- p as getStorageVaultPublicKey,
102
- d as getSwapperAccountPublicKey,
103
- S as getSwapperAccountPublicKeyFromSalt,
104
- w as getTokenLimitStorageAccountPublicKey
100
+ S as getStorageAccountPublicKey,
101
+ B as getStorageVaultPublicKey,
102
+ y as getSwapperAccountPublicKey,
103
+ h as getSwapperAccountPublicKeyFromSalt,
104
+ T as getTokenLimitStorageAccountPublicKey
105
105
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("ethers"),g=require("../../constants/protocol.constants.cjs"),p=require("../../types/ethereum-network.types.cjs");require("idb-keyval");const y=require("../../constants/chains.constants.cjs"),E=require("../utils/create-provider.cjs");require("../../constants/token-data/index.cjs");require("../../error-handling/error-codes.constants.cjs");require("../utils/convertIntegrationProviderToExternalActionId.cjs");require("../../types/circom-data.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");require("circomlibjs-hinkal-fork");const d=require("../../data-structures/crypto-keys/keys.cjs");require("../../constants/server.constants.cjs");require("../../API/getServerURL.cjs");require("../../data-structures/http/HttpClient.cjs");require("axios");require("../../constants/vite.constants.cjs");const f=require("../utils/caseInsensitive.utils.cjs"),w=require("../../error-handling/logger.cjs");require("@solana/web3.js");require("@coral-xyz/anchor");require("@solana/spl-token");require("../../constants/contracts.constants.cjs");require("../../constants/kyc.constants.cjs");require("../../constants/coingecko.constants.cjs");require("../../constants/reorg-depths.constants.cjs");require("../../constants/addresses.constants.cjs");require("../../constants/token.limits.constants.cjs");require("../../constants/presale.constants.cjs");require("../../constants/activity.constants.cjs");require("../../constants/tasks.constants.cjs");require("../../constants/events.constants.cjs");require("../utils/userAgent.cjs");const D=require("../utils/string.utils.cjs");require("libsodium-wrappers");require("multiformats");require("async-mutex");require("../../API/tenderly.api.cjs");require("process");require("buffer");require("../../providers/EthersProviderAdapter.cjs");const P=require("ethers-v6h"),l=({contract:e,func:r,args:t,callDataString:i,invokeWallet:s,value:n})=>{let o=new Uint8Array,u=i?a.utils.arrayify(i):new Uint8Array;if(typeof e=="object"&&"address"in e){if(o=a.utils.arrayify(e.address),i?.length&&i?.length>0)throw Error("If function and args are providedm no calldata is needed");r&&t&&!i&&(u=a.utils.arrayify(e.interface.encodeFunctionData(r,t)))}else o=a.utils.arrayify(e);const c=a.utils.arrayify([s?1:0]),m=a.utils.zeroPad(a.utils.arrayify(a.BigNumber.from(n??0n)),16),A=a.utils.concat([o,c,m,u]);return a.utils.hexlify(A)},k=async(e,r,t,i,s,n)=>{const o=t?await d.UserKeys.signTypedDataFromPrivateKey(e,t,{name:"Emporium",version:"1.0.0",chainId:e,verifyingContract:r},{EmporiumSignature:[{name:"message",type:"uint256"}]},{message:s}):void 0,{v:u,r:c,s:m}=o?a.utils.splitSignature(o):{v:0,r:"0x",s:"0x"};return a.utils.defaultAbiCoder.encode(["tuple(uint8 v,bytes32 r, bytes32 s, uint256 message, address signerAddress, bytes[] ops)"],[{v:u,r:c,s:m,message:s??0n,signerAddress:n??g.zeroAddress,ops:i}])},q=(e,r,t,i)=>l(e?{contract:e,func:"transfer",args:[r,t],invokeWallet:i}:{contract:r,value:t,invokeWallet:i}),C=(e,r,t,i,s)=>{const n=e.getContractWithFetcher(r,p.ContractType.HinkalContract);return t.map((o,u)=>{const c=f.caseInsensitiveEqual(o,g.zeroAddress)?void 0:e.getContractWithFetcher(r,p.ContractType.ERC20Contract,o);return q(c,s??n.address,i[u],!0)})},O=(e,r,t,i)=>l({contract:e,func:"approve",args:[r,t],invokeWallet:i}),h=(e,r,t)=>{const{hinkalAddress:i}=y.networkRegistry[e].contractData;if(!i)throw Error("No Hinkal Address Provided to modifyDataForProxy");return D.replaceAllInstances(t,i.slice(2),r.slice(2))},x=(e,r,t)=>{if(!r)throw Error("No private key provided to modifyDataForProxy");const i=d.UserKeys.getSignerAddressFromPrivateKey(e,r);return h(e,i,t)},F="0xef0100",v=async(e,r)=>{try{const{fetchRpcUrl:t}=y.networkRegistry[e];if(!t)throw new Error("RPC URL not found for the specified chain ID");const i=E.createCustomRpcProvider(t),s=await i.getCode(r);if(s==="0x"||!s)return{delegated:!1,implementation:void 0,nonce:void 0};if(s.toLowerCase().startsWith(F)&&s.length===48){const n=`0x${s.slice(8)}`,o=await i.getTransactionCount(r);return{delegated:!0,implementation:a.utils.getAddress(n),nonce:o}}else throw Error("checkEOAWithDelegation: It is a contract")}catch(t){throw w.Logger.error("checkEOAWithDelegation error",{error:t}),t}},I=e=>{const{hinkalWalletAddress:r}=y.networkRegistry[e].contractData;if(!r||f.caseInsensitiveEqual(r,g.zeroAddress))throw Error("Hinkal Wallet Address is not set");return r},W=async(e,r)=>{if(e===y.chainIds.localhost||!r)return;const t=d.UserKeys.getSignerAddressFromPrivateKey(e,r),{delegated:i,implementation:s}=await v(e,t),n=I(e);if(!i||!f.caseInsensitiveEqual(s,n)){const o=await d.UserKeys.authorizeDelegation(e,r,n);return{v:o.signature.v.toString(),r:o.signature.r,s:o.signature.s,nonce:o.nonce.toString(),address:n,chainId:String(e)}}},T=e=>{if(!e)return;const{v:r,r:t,s:i,nonce:s,chainId:n,address:o}=e;return{signature:P.ethers.Signature.from({v:r,r:t,s:i}),nonce:BigInt(s),chainId:BigInt(n),address:o}};exports.checkEOAWithDelegation=v;exports.createApproveEmporiumOp=O;exports.createTransaferEmporiumOpsBatch=C;exports.createTransferToEmporiumOp=q;exports.emporiumOp=l;exports.encodeEmporiumMetadata=k;exports.getAuthorizationDataIfNeeded=W;exports.modifyDataForProxy=h;exports.modifyDataForProxyWithPrivateKey=x;exports.recoverAuthorizationData=T;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("ethers"),p=require("../../constants/protocol.constants.cjs"),q=require("../../types/ethereum-network.types.cjs");require("idb-keyval");const A=require("../../constants/chains.constants.cjs"),F=require("../utils/create-provider.cjs");require("../../constants/token-data/index.cjs");require("../../error-handling/error-codes.constants.cjs");require("../utils/convertIntegrationProviderToExternalActionId.cjs");require("../../types/circom-data.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");require("circomlibjs-hinkal-fork");require("../../data-structures/crypto-keys/keys.cjs");require("../../constants/server.constants.cjs");require("../../API/getServerURL.cjs");require("../../data-structures/http/HttpClient.cjs");require("axios");require("../../constants/vite.constants.cjs");const g=require("../utils/caseInsensitive.utils.cjs"),I=require("../../error-handling/logger.cjs");require("@solana/web3.js");require("@coral-xyz/anchor");require("@solana/spl-token");const v=require("../../data-structures/AccountActions/AccountActions.cjs");require("buffer");require("../../constants/contracts.constants.cjs");require("../../constants/kyc.constants.cjs");require("../../constants/coingecko.constants.cjs");require("../../constants/reorg-depths.constants.cjs");require("../../constants/addresses.constants.cjs");require("../../constants/token.limits.constants.cjs");require("../../constants/presale.constants.cjs");require("../../constants/activity.constants.cjs");require("../../constants/tasks.constants.cjs");require("../../constants/events.constants.cjs");require("../utils/userAgent.cjs");require("libsodium-wrappers");require("multiformats");require("../../API/enclaveCalls.cjs");require("async-mutex");require("process");require("../../providers/EthersProviderAdapter.cjs");const z=require("ethers-v6h"),m=({contract:e,func:t,args:n,callDataString:r,invokeWallet:s,value:o})=>{let i=new Uint8Array,a=r?u.utils.arrayify(r):new Uint8Array;if(typeof e=="object"&&"address"in e){if(i=u.utils.arrayify(e.address),r?.length&&r?.length>0)throw Error("If function and args are providedm no calldata is needed");t&&n&&!r&&(a=u.utils.arrayify(e.interface.encodeFunctionData(t,n)))}else i=u.utils.arrayify(e);const d=u.utils.arrayify([s?1:0]),c=u.utils.zeroPad(u.utils.arrayify(u.BigNumber.from(o??0n)),16),l=u.utils.concat([i,d,c,a]);return u.utils.hexlify(l)},W=async(e,t,n,r,s,o)=>{const i=n?await v.AccountActions.signTypedDataFromPrivateKey(e,n,{name:"Emporium",version:"1.0.0",chainId:e,verifyingContract:t},{EmporiumSignature:[{name:"message",type:"uint256"}]},{message:s}):void 0,{v:a,r:d,s:c}=i?u.utils.splitSignature(i):{v:0,r:u.ethers.constants.HashZero,s:u.ethers.constants.HashZero};return u.utils.defaultAbiCoder.encode(["tuple(uint8 v,bytes32 r, bytes32 s, uint256 message, address signerAddress, bytes[] ops)"],[{v:a,r:d,s:c,message:s??0n,signerAddress:o??p.zeroAddress,ops:r}])},y=(e,t,n,r)=>m(e?{contract:e,func:"transfer",args:[t,n],invokeWallet:r}:{contract:t,value:n,invokeWallet:r}),B=(e,t,n,r,s)=>{const o=e.getContractWithFetcher(t,q.ContractType.HinkalContract);return n.map((i,a)=>{const d=g.caseInsensitiveEqual(i,p.zeroAddress)?void 0:e.getContractWithFetcher(t,q.ContractType.ERC20Contract,i);return y(d,s??o.address,r[a],!0)})},E=(e,t,n,r)=>m({contract:e,func:"approve",args:[t,n],invokeWallet:r}),C=(e,t,n,r,s,o,i,a)=>{const d=[];for(let c=0;c<n.length;c+=1){const l=n[c],h=g.caseInsensitiveEqual(l,p.zeroAddress)?void 0:e.getContractWithFetcher(t,q.ContractType.ERC20Contract,l);d.push(y(h,i,r[c],!1))}if(a)for(let c=0;c<s.length;c+=1){const l=s[c];if(!g.caseInsensitiveEqual(l,p.zeroAddress)){const h=e.getContractWithFetcher(t,q.ContractType.ERC20Contract,l);d.push(E(h,a,o[c],!0))}}return d},T=(e,t,n,r,s,o,i,a)=>{const d=[],c=[s],l=[o];a.nativeFee>0n&&!g.caseInsensitiveEqual(s,p.zeroAddress)&&(c.push(p.zeroAddress),l.push(a.nativeFee));const w=C(e,t,c,l,[s],[i],n,r);d.push(...w);let f=a.nativeFee;return g.caseInsensitiveEqual(s,p.zeroAddress)&&(f+=i),d.push(m({contract:r,callDataString:a.calldata,value:f>0n?f:void 0,invokeWallet:!0})),d},k="0xef0100",O=async(e,t)=>{try{const n=F.createCustomRpcProvider(e),r=await n.getCode(t);if(r==="0x"||!r)return{delegated:!1,implementation:void 0,nonce:void 0};if(r.toLowerCase().startsWith(k)&&r.length===48){const s=`0x${r.slice(8)}`,o=await n.getTransactionCount(t);return{delegated:!0,implementation:u.utils.getAddress(s),nonce:o}}else throw Error("checkEOAWithDelegation: It is a contract")}catch(n){throw I.Logger.error("checkEOAWithDelegation error",{error:n}),n}},D=e=>{const{hinkalWalletAddress:t}=A.networkRegistry[e].contractData;if(!t||g.caseInsensitiveEqual(t,p.zeroAddress))throw Error("Hinkal Wallet Address is not set");return t},b=async(e,t)=>{if(e===A.chainIds.localhost||!t)return;const n=v.AccountActions.getSignerAddressFromPrivateKey(e,t),{delegated:r,implementation:s}=await O(e,n),o=D(e);if(!r||!g.caseInsensitiveEqual(s,o)){const i=await v.AccountActions.authorizeDelegation(e,t,o);return{v:i.signature.v.toString(),r:i.signature.r,s:i.signature.s,nonce:i.nonce.toString(),address:o,chainId:String(e)}}},P=e=>{if(!e)return;const{v:t,r:n,s:r,nonce:s,chainId:o,address:i}=e;return{signature:z.ethers.Signature.from({v:t,r:n,s:r}),nonce:BigInt(s),chainId:BigInt(o),address:i}};exports.checkEOAWithDelegation=O;exports.createApproveEmporiumOp=E;exports.createLifiBridgeOps=T;exports.createTransaferEmporiumOpsBatch=B;exports.createTransferToEmporiumOp=y;exports.emporiumOp=m;exports.encodeEmporiumMetadata=W;exports.generateFundAndApproveOps=C;exports.getAuthorizationDataIfNeeded=b;exports.recoverAuthorizationData=P;
@@ -2,6 +2,7 @@ import { Contract, ContractTransaction, ethers } from 'ethers';
2
2
  import { IHinkal } from '../../data-structures/Hinkal/IHinkal';
3
3
  import { type AuthorizationData } from '../../types/hinkal.types';
4
4
  import { ethers as ethersV6 } from 'ethers-v6h';
5
+ import { BridgeQuote } from '../../types/bridging-tx.types';
5
6
  export declare const emporiumOp: <ContractInstance extends Contract, ContractFunctions extends ContractInstance["functions"], ExactFunction extends { [K in keyof ContractFunctions]: ReturnType<ContractFunctions[K]> extends Promise<ContractTransaction> ? K : never; }[keyof ContractFunctions], FunctionArguments extends Parameters<ContractFunctions[ExactFunction]>>({ contract, func, args, callDataString, invokeWallet, value, }: {
6
7
  contract: ContractInstance | string;
7
8
  func?: ExactFunction | undefined;
@@ -14,8 +15,8 @@ export declare const encodeEmporiumMetadata: (chainId: number, emporiumAddress:
14
15
  export declare const createTransferToEmporiumOp: (tokenContract: ethers.Contract | undefined, to: string, amount: bigint, invokeWallet: boolean) => string;
15
16
  export declare const createTransaferEmporiumOpsBatch: (hinkal: IHinkal, chainId: number, erc20TokenAddresses: string[], amounts: bigint[], to?: string) => string[];
16
17
  export declare const createApproveEmporiumOp: (tokenContract: ethers.Contract, to: string, amount: bigint, invokeWallet: boolean) => string;
17
- export declare const modifyDataForProxy: (chainId: number, userAddress: string, data: string) => string;
18
- export declare const modifyDataForProxyWithPrivateKey: (chainId: number, privateKey: string | undefined, data: string) => string;
18
+ export declare const generateFundAndApproveOps: (hinkal: IHinkal, chainId: number, erc20AddressesToFund: string[], fundAmounts: bigint[], approveTokenAddresses: string[], approveAmounts: bigint[], walletAddress: string, spenderAddress: string | undefined) => string[];
19
+ export declare const createLifiBridgeOps: (hinkal: IHinkal, chainId: number, fromAddress: string, lifiRouterAddress: string, tokenAddress: string, fundAmount: bigint, bridgeAmount: bigint, quote: BridgeQuote) => string[];
19
20
  export declare const checkEOAWithDelegation: (chainId: number, eoaAddress: string) => Promise<{
20
21
  delegated: boolean;
21
22
  implementation: undefined;