@hinkal/common 0.3.4 → 0.3.6

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 (69) hide show
  1. package/assets/snarkjsWorkerLauncher-SrStwJvX.js +1 -0
  2. package/assets/snarkjsWorkerLogic-DtIjisbE.js +132 -0
  3. package/assets/utxoWorkerLauncher-CIBeBAML.js +1 -0
  4. package/assets/utxoWorkerLogic-C8R4GSaf.js +199 -0
  5. package/assets/zkProofWorkerLauncher-DfwteloJ.js +1 -0
  6. package/assets/zkProofWorkerLogic-CY9y6rOV.js +199 -0
  7. package/common/src/constants/vite.constants.cjs +1 -1
  8. package/common/src/constants/vite.constants.mjs +23 -5
  9. package/common/src/data-structures/Hinkal/hinkalSolanaClaimUtxo.cjs +1 -1
  10. package/common/src/data-structures/Hinkal/hinkalSolanaClaimUtxo.mjs +50 -97
  11. package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
  12. package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +90 -128
  13. package/common/src/data-structures/Hinkal/hinkalSolanaSwap.cjs +1 -1
  14. package/common/src/data-structures/Hinkal/hinkalSolanaSwap.mjs +56 -110
  15. package/common/src/data-structures/Hinkal/hinkalSolanaTransact.cjs +1 -0
  16. package/common/src/data-structures/Hinkal/hinkalSolanaTransact.d.ts +3 -0
  17. package/common/src/data-structures/Hinkal/hinkalSolanaTransact.mjs +117 -0
  18. package/common/src/data-structures/Hinkal/hinkalSolanaTransfer.cjs +1 -1
  19. package/common/src/data-structures/Hinkal/hinkalSolanaTransfer.d.ts +2 -31
  20. package/common/src/data-structures/Hinkal/hinkalSolanaTransfer.mjs +45 -121
  21. package/common/src/data-structures/Hinkal/hinkalSolanaWithdraw.cjs +1 -1
  22. package/common/src/data-structures/Hinkal/hinkalSolanaWithdraw.mjs +41 -83
  23. package/common/src/data-structures/Hinkal/hinkalTransact.cjs +1 -1
  24. package/common/src/data-structures/Hinkal/hinkalTransact.mjs +41 -42
  25. package/common/src/data-structures/Hinkal/hinkalWithdrawStuckUtxos.cjs +1 -1
  26. package/common/src/data-structures/Hinkal/hinkalWithdrawStuckUtxos.mjs +106 -125
  27. package/common/src/data-structures/IndexedDB/pay-activity-db.cjs +1 -1
  28. package/common/src/data-structures/IndexedDB/pay-activity-db.mjs +43 -1
  29. package/common/src/functions/index.cjs +1 -1
  30. package/common/src/functions/index.mjs +0 -1
  31. package/common/src/functions/pre-transaction/ensureAmountChanges.cjs +1 -1
  32. package/common/src/functions/pre-transaction/ensureAmountChanges.mjs +3 -10
  33. package/common/src/functions/pre-transaction/outputUtxoProcessing.cjs +1 -1
  34. package/common/src/functions/pre-transaction/outputUtxoProcessing.d.ts +1 -0
  35. package/common/src/functions/pre-transaction/outputUtxoProcessing.mjs +13 -9
  36. package/common/src/functions/snarkjs/constructSolanaZkProof.cjs +1 -1
  37. package/common/src/functions/snarkjs/constructSolanaZkProof.d.ts +1 -1
  38. package/common/src/functions/snarkjs/constructSolanaZkProof.mjs +35 -35
  39. package/common/src/functions/snarkjs/constructTxEnclave.cjs +1 -1
  40. package/common/src/functions/snarkjs/constructTxEnclave.d.ts +2 -0
  41. package/common/src/functions/snarkjs/constructTxEnclave.mjs +40 -40
  42. package/common/src/functions/utils/enum.utils.cjs +1 -0
  43. package/common/src/functions/utils/enum.utils.mjs +12 -0
  44. package/common/src/functions/utils/index.cjs +1 -1
  45. package/common/src/functions/utils/index.mjs +0 -1
  46. package/common/src/types/index.cjs +1 -1
  47. package/common/src/types/index.d.ts +1 -0
  48. package/common/src/types/index.mjs +1 -0
  49. package/common/src/types/pay-activities.types.d.ts +18 -3
  50. package/common/src/types/solana-transact.types.cjs +1 -0
  51. package/common/src/types/solana-transact.types.d.ts +35 -0
  52. package/common/src/types/solana-transact.types.mjs +6 -0
  53. package/common/src/webworker/logError-Dex6ch32.js +2 -0
  54. package/common/src/webworker/package.json +5 -3
  55. package/common/src/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.cjs +1 -1
  56. package/common/src/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.mjs +1 -1
  57. package/common/src/webworker/snarkjsWorkerNode.cjs +1 -1
  58. package/common/src/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.cjs +1 -1
  59. package/common/src/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.mjs +1 -1
  60. package/common/src/webworker/utxoWorkerNode.cjs +1 -1
  61. package/common/src/webworker/viteWorkerURL.constant.cjs +1 -28
  62. package/common/src/webworker/viteWorkerURL.constant.mjs +13 -27
  63. package/common/src/webworker/workerProxy-BuJUMCQ4.js +1 -0
  64. package/common/src/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.cjs +1 -1
  65. package/common/src/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.mjs +1 -1
  66. package/common/src/webworker/zkProofWorkerNode.cjs +1 -1
  67. package/package.json +5 -3
  68. package/common/src/webworker/logError-CxZzSALU.js +0 -2
  69. package/common/src/webworker/workerProxy-swwPYw6e.js +0 -1
@@ -1 +1 @@
1
- require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../types/cache.types.cjs`);require(`../../types/index.cjs`);const t=require(`./activity-db.cjs`);let n=require(`idb-keyval`);new class extends t.ActivityStorage{async savePrivateSendTx(t){let r=this.generateTxId(),i={timestamp:new Date,...t};return await(0,n.update)(e.StorageKeys.TX_ACTIVITY,(e={})=>(e[r]=i,e)),r}async saveMultiplePrivateSendTxs(e){let t=e.map(e=>this.savePrivateSendTx(e));return Promise.all(t)}async getTransactionRecords(){return await(0,n.get)(e.StorageKeys.TX_ACTIVITY)||[]}};
1
+ require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../types/cache.types.cjs`);require(`../../types/index.cjs`);const t=require(`./activity-db.cjs`);let n=require(`idb-keyval`);var r=e=>{let{token:t,amount:n,amountInDollar:r,...i}=e;return i.tokens?.length?{...i,tokens:[...i.tokens]}:t?{...i,tokens:[{token:t,amount:n??`0`,amountInDollar:r??`0`}]}:{...i,tokens:[]}},i=e=>[e.txHash,e.to?.toLowerCase(),e.activityType,e.sentFrom,e.sentTo].join(`-`),a=e=>{let t={...e},n=new Map,a=!1;return Object.entries(e).forEach(([e,o])=>{let s=r(o);if(s.tokens.length===0||(o.token&&(a=!0),t[e]=s,!s.txHash))return;let c=i(s),l=n.get(c);if(l===void 0){n.set(c,e);return}t[l].tokens.push(...s.tokens),delete t[e],a=!0}),{mergedRecords:t,needsWrite:a}};new class extends t.ActivityStorage{async savePrivateSendTx(t){let r=this.generateTxId(),i={timestamp:new Date,...t};return await(0,n.update)(e.StorageKeys.TX_ACTIVITY,(e={})=>(e[r]=i,e)),r}async saveMultiplePrivateSendTxs(e){let t=e.map(e=>this.savePrivateSendTx(e));return Promise.all(t)}async getTransactionRecords(){let t=await(0,n.get)(e.StorageKeys.TX_ACTIVITY);if(!t)return[];let i=a(t);return i.needsWrite&&await(0,n.update)(e.StorageKeys.TX_ACTIVITY,(e={})=>(i=a(e),i.mergedRecords)),Object.values(i.mergedRecords).map(r).filter(e=>e.tokens.length>0)}};
@@ -2,6 +2,45 @@ import { StorageKeys as e } from "../../types/cache.types.mjs";
2
2
  import "../../types/index.mjs";
3
3
  import { ActivityStorage as t } from "./activity-db.mjs";
4
4
  import { get as n, update as r } from "idb-keyval";
5
+ //#region libs/shared/common/src/data-structures/IndexedDB/pay-activity-db.ts
6
+ var i = (e) => {
7
+ let { token: t, amount: n, amountInDollar: r, ...i } = e;
8
+ return i.tokens?.length ? {
9
+ ...i,
10
+ tokens: [...i.tokens]
11
+ } : t ? {
12
+ ...i,
13
+ tokens: [{
14
+ token: t,
15
+ amount: n ?? "0",
16
+ amountInDollar: r ?? "0"
17
+ }]
18
+ } : {
19
+ ...i,
20
+ tokens: []
21
+ };
22
+ }, a = (e) => [
23
+ e.txHash,
24
+ e.to?.toLowerCase(),
25
+ e.activityType,
26
+ e.sentFrom,
27
+ e.sentTo
28
+ ].join("-"), o = (e) => {
29
+ let t = { ...e }, n = /* @__PURE__ */ new Map(), r = !1;
30
+ return Object.entries(e).forEach(([e, o]) => {
31
+ let s = i(o);
32
+ if (s.tokens.length === 0 || (o.token && (r = !0), t[e] = s, !s.txHash)) return;
33
+ let c = a(s), l = n.get(c);
34
+ if (l === void 0) {
35
+ n.set(c, e);
36
+ return;
37
+ }
38
+ t[l].tokens.push(...s.tokens), delete t[e], r = !0;
39
+ }), {
40
+ mergedRecords: t,
41
+ needsWrite: r
42
+ };
43
+ };
5
44
  new class extends t {
6
45
  async savePrivateSendTx(t) {
7
46
  let n = this.generateTxId(), i = {
@@ -15,7 +54,10 @@ new class extends t {
15
54
  return Promise.all(t);
16
55
  }
17
56
  async getTransactionRecords() {
18
- return await n(e.TX_ACTIVITY) || [];
57
+ let t = await n(e.TX_ACTIVITY);
58
+ if (!t) return [];
59
+ let a = o(t);
60
+ return a.needsWrite && await r(e.TX_ACTIVITY, (e = {}) => (a = o(e), a.mergedRecords)), Object.values(a.mergedRecords).map(i).filter((e) => e.tokens.length > 0);
19
61
  }
20
62
  }();
21
63
  //#endregion
@@ -1 +1 @@
1
- require(`./utils/abi.utils.cjs`),require(`./utils/serialize.utils.cjs`),require(`./utils/caseInsensitive.utils.cjs`),require(`./utils/amounts.utils.cjs`),require(`./web3/etherFunctions.cjs`),require(`./utils/time.utils.cjs`),require(`./utils/upToDateState.cjs`),require(`./utils/cacheFunctions.cjs`),require(`./utils/enclaveHandshakeService.cjs`),require(`./utils/encryptInputForEnclave.cjs`),require(`./utils/solanaMint.utils.cjs`),require(`./utils/serialize-utxos.utils.cjs`),require(`./utils/customEnclaveFunctionsRegister.cjs`),require(`./utils/addresses.cjs`),require(`./utils/tron.utils.cjs`),require(`./web3/events/getInputUtxoAndBalance.cjs`),require(`./utils/legacyKeys.cjs`),require(`./utils/auth.utils.cjs`),require(`./utils/string.utils.cjs`),require(`./utils/token-check.utils.cjs`),require(`./utils/map.utils.cjs`),require(`./utils/mutexes.utils.cjs`),require(`./utils/erc20tokenFunctions.cjs`),require(`./web3/events/getShieldedBalance.cjs`),require(`./pre-transaction/outputUtxoProcessing.cjs`),require(`./utils/external-action.utils.cjs`),require(`./snarkjs/common.snarkjs.cjs`),require(`./pre-transaction/solana.cjs`),require(`./snarkjs/signedMessageHash.cjs`),require(`./pre-transaction/process-gas-estimates.cjs`),require(`./pre-transaction/getVolatileTransferAmount.cjs`),require(`./pre-transaction/constructAdminData.cjs`),require(`./utils/create-provider.cjs`),require(`./pre-transaction/calculateSolanaNullifierCount.cjs`),require(`./pre-transaction/convert-okx-instructions.cjs`),require(`./web3/getSolanaPriorityFee.cjs`),require(`./utils/process.utils.cjs`),require(`./pre-transaction/sendV0Transaction.cjs`),require(`./utils/bytes32.utils.cjs`),require(`./pre-transaction/ensureAmountChanges.cjs`),require(`./pre-transaction/getFeeStructure.cjs`),require(`./pre-transaction/getExternalSwapAddress.cjs`),require(`./pre-transaction/waitForDepositedUtxosInMerkleTree.cjs`),require(`./pre-transaction/buildCommitmentValidationData.cjs`),require(`./pre-transaction/index.cjs`),require(`./snarkjs/generateZkProof.cjs`),require(`./snarkjs/generateMainAndCommitmentZkProof.cjs`),require(`./snarkjs/fetchOnChainRootHashes.cjs`),require(`./utils/getContractAddress.cjs`),require(`./private-wallet/emporium.helpers.cjs`),require(`./snarkjs/constructGeneralZkProof.cjs`),require(`./utils/getSignerFromContract.cjs`),require(`./utils/tronSimulation.utils.cjs`),require(`./utils/tx-confirmation.utils.cjs`),require(`./utils/getUtxosFromReceipt.utils.cjs`),require(`./utils/getRecipientInfoFromUserKeys.cjs`),require(`./utils/resolve-sync.utils.cjs`),require(`./utils/reloadPage.cjs`),require(`./utils/cacheDevice.utils.cjs`),require(`./utils/involves-permit2-op.cjs`),require(`./utils/convertEmporiumOpToCallInfo.cjs`),require(`./utils/publicBalance.utils.cjs`),require(`./utils/postToOffscreen.cjs`),require(`./utils/getUtxosFromReceiptSolana.cjs`),require(`./utils/fees.utils.cjs`),require(`./utils/proxyAvatar.utils.cjs`),require(`./utils/enclave-signature-storage.cjs`),require(`./utils/temp-wallet.utils.cjs`),require(`./utils/mnemonics.cjs`),require(`./utils/nearIntents.utils.cjs`),require(`./utils/index.cjs`),require(`./web3/lifiAPI.cjs`),require(`./web3/okxAPI.cjs`),require(`./web3/index.cjs`),require(`./snarkjs/constructSolanaZkProof.cjs`),require(`./snarkjs/index.cjs`),require(`./private-wallet/emporium.swap.helpers.cjs`),require(`./private-wallet/index.cjs`),require(`./auto-deposit-back-helpers/get-tokens-to-deposit-back.cjs`),require(`./auto-deposit-back-helpers/get-gas-token-records.cjs`),require(`./auto-deposit-back-helpers/select-gas-token.cjs`),require(`./auto-deposit-back-helpers/update-hinkal.cjs`),require(`./auto-deposit-back-helpers/index.cjs`);
1
+ require(`./utils/abi.utils.cjs`),require(`./utils/serialize.utils.cjs`),require(`./utils/caseInsensitive.utils.cjs`),require(`./utils/amounts.utils.cjs`),require(`./web3/etherFunctions.cjs`),require(`./utils/time.utils.cjs`),require(`./utils/upToDateState.cjs`),require(`./utils/cacheFunctions.cjs`),require(`./utils/enclaveHandshakeService.cjs`),require(`./utils/encryptInputForEnclave.cjs`),require(`./utils/solanaMint.utils.cjs`),require(`./utils/serialize-utxos.utils.cjs`),require(`./utils/customEnclaveFunctionsRegister.cjs`),require(`./utils/addresses.cjs`),require(`./utils/tron.utils.cjs`),require(`./web3/events/getInputUtxoAndBalance.cjs`),require(`./utils/legacyKeys.cjs`),require(`./utils/auth.utils.cjs`),require(`./utils/string.utils.cjs`),require(`./utils/token-check.utils.cjs`),require(`./utils/map.utils.cjs`),require(`./utils/mutexes.utils.cjs`),require(`./utils/erc20tokenFunctions.cjs`),require(`./web3/events/getShieldedBalance.cjs`),require(`./pre-transaction/outputUtxoProcessing.cjs`),require(`./utils/external-action.utils.cjs`),require(`./snarkjs/common.snarkjs.cjs`),require(`./pre-transaction/solana.cjs`),require(`./snarkjs/signedMessageHash.cjs`),require(`./pre-transaction/process-gas-estimates.cjs`),require(`./pre-transaction/getVolatileTransferAmount.cjs`),require(`./pre-transaction/constructAdminData.cjs`),require(`./utils/create-provider.cjs`),require(`./pre-transaction/calculateSolanaNullifierCount.cjs`),require(`./pre-transaction/convert-okx-instructions.cjs`),require(`./web3/getSolanaPriorityFee.cjs`),require(`./utils/process.utils.cjs`),require(`./pre-transaction/sendV0Transaction.cjs`),require(`./utils/bytes32.utils.cjs`),require(`./pre-transaction/getFeeStructure.cjs`),require(`./pre-transaction/getExternalSwapAddress.cjs`),require(`./pre-transaction/waitForDepositedUtxosInMerkleTree.cjs`),require(`./pre-transaction/buildCommitmentValidationData.cjs`),require(`./pre-transaction/index.cjs`),require(`./snarkjs/generateZkProof.cjs`),require(`./snarkjs/generateMainAndCommitmentZkProof.cjs`),require(`./snarkjs/fetchOnChainRootHashes.cjs`),require(`./utils/getContractAddress.cjs`),require(`./private-wallet/emporium.helpers.cjs`),require(`./snarkjs/constructGeneralZkProof.cjs`),require(`./utils/getSignerFromContract.cjs`),require(`./utils/tronSimulation.utils.cjs`),require(`./utils/tx-confirmation.utils.cjs`),require(`./utils/getUtxosFromReceipt.utils.cjs`),require(`./utils/getRecipientInfoFromUserKeys.cjs`),require(`./utils/resolve-sync.utils.cjs`),require(`./utils/reloadPage.cjs`),require(`./utils/cacheDevice.utils.cjs`),require(`./utils/involves-permit2-op.cjs`),require(`./utils/convertEmporiumOpToCallInfo.cjs`),require(`./utils/publicBalance.utils.cjs`),require(`./utils/postToOffscreen.cjs`),require(`./utils/getUtxosFromReceiptSolana.cjs`),require(`./utils/fees.utils.cjs`),require(`./utils/proxyAvatar.utils.cjs`),require(`./utils/enclave-signature-storage.cjs`),require(`./utils/temp-wallet.utils.cjs`),require(`./utils/mnemonics.cjs`),require(`./utils/nearIntents.utils.cjs`),require(`./utils/index.cjs`),require(`./web3/lifiAPI.cjs`),require(`./web3/okxAPI.cjs`),require(`./web3/index.cjs`),require(`./snarkjs/constructSolanaZkProof.cjs`),require(`./snarkjs/index.cjs`),require(`./private-wallet/emporium.swap.helpers.cjs`),require(`./private-wallet/index.cjs`),require(`./auto-deposit-back-helpers/get-tokens-to-deposit-back.cjs`),require(`./auto-deposit-back-helpers/get-gas-token-records.cjs`),require(`./auto-deposit-back-helpers/select-gas-token.cjs`),require(`./auto-deposit-back-helpers/update-hinkal.cjs`),require(`./auto-deposit-back-helpers/index.cjs`);
@@ -37,7 +37,6 @@ import "./web3/getSolanaPriorityFee.mjs";
37
37
  import "./utils/process.utils.mjs";
38
38
  import "./pre-transaction/sendV0Transaction.mjs";
39
39
  import "./utils/bytes32.utils.mjs";
40
- import "./pre-transaction/ensureAmountChanges.mjs";
41
40
  import "./pre-transaction/getFeeStructure.mjs";
42
41
  import "./pre-transaction/getExternalSwapAddress.mjs";
43
42
  import "./pre-transaction/waitForDepositedUtxosInMerkleTree.mjs";
@@ -1 +1 @@
1
- require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/protocol.constants.cjs`),t=require(`../snarkjs/common.snarkjs.cjs`);let n=require(`lodash`);var r=(r,i,a)=>{let o=t.calcAmountChanges(r,i),s=a.map(t=>t<0n?e.CIRCOM_P+t:t);if(o.length!==s.length||!(0,n.isEqual)(o,s))throw Error(`Amount changes are not equal`)};exports.ensureAmountChanges=r;
1
+ require(`../../constants/protocol.constants.cjs`),require(`../snarkjs/common.snarkjs.cjs`),require(`lodash`);
@@ -1,10 +1,3 @@
1
- import { CIRCOM_P as e } from "../../constants/protocol.constants.mjs";
2
- import { calcAmountChanges as t } from "../snarkjs/common.snarkjs.mjs";
3
- import { isEqual as n } from "lodash";
4
- //#region libs/shared/common/src/functions/pre-transaction/ensureAmountChanges.ts
5
- var r = (r, i, a) => {
6
- let o = t(r, i), s = a.map((t) => t < 0n ? e + t : t);
7
- if (o.length !== s.length || !n(o, s)) throw Error("Amount changes are not equal");
8
- };
9
- //#endregion
10
- export { r as ensureAmountChanges };
1
+ import "../../constants/protocol.constants.mjs";
2
+ import "../snarkjs/common.snarkjs.mjs";
3
+ import "lodash";
@@ -1 +1 @@
1
- const e=require(`../utils/amounts.utils.cjs`),t=require(`../../error-handling/error-codes.constants.cjs`),n=require(`../../data-structures/utxo/Utxo.cjs`);var r=(r,i,a,o,s=!0,c,l)=>{let u=e.countTotalAmountInUtxos(i),{erc20TokenAddress:d,mintAddress:f}=i[0];if(s&&a<0n&&u+a<0n)throw Error(t.transactionErrorCodes.INSUFFICIENT_FUNDS_TO_TRANSACT);let p=[new n.Utxo({amount:e.bigintMax(u+a,0n),erc20TokenAddress:d,mintAddress:f,nullifyingKey:r.getShieldedPrivateKey(),timeStamp:o,spendingPublicKey:r.getSpendingKeyPair().pubSpendingBJJPoint})];return c!==void 0&&l!==void 0&&c.forEach((e,t)=>{let[r,i,a,,,s]=e.split(`,`);p.push(new n.Utxo({amount:l[t],erc20TokenAddress:d,mintAddress:f,H0:[BigInt(i),BigInt(a)],stealthAddress:r,encryptionKey:s,timeStamp:o}))}),{outputUtxos:p}};exports.outputUtxoProcessing=r;
1
+ const e=require(`../utils/amounts.utils.cjs`),t=require(`../../error-handling/error-codes.constants.cjs`),n=require(`../utils/time.utils.cjs`),r=require(`../../data-structures/utxo/Utxo.cjs`);var i=(n,i,a,o,s=!0,c,l)=>{let u=e.countTotalAmountInUtxos(i),{erc20TokenAddress:d,mintAddress:f}=i[0];if(s&&a<0n&&u+a<0n)throw Error(t.transactionErrorCodes.INSUFFICIENT_FUNDS_TO_TRANSACT);let p=[new r.Utxo({amount:e.bigintMax(u+a,0n),erc20TokenAddress:d,mintAddress:f,nullifyingKey:n.getShieldedPrivateKey(),timeStamp:o,spendingPublicKey:n.getSpendingKeyPair().pubSpendingBJJPoint})];return c!==void 0&&l!==void 0&&c.forEach((e,t)=>{let[n,i,a,,,s]=e.split(`,`);p.push(new r.Utxo({amount:l[t],erc20TokenAddress:d,mintAddress:f,H0:[BigInt(i),BigInt(a)],stealthAddress:n,encryptionKey:s,timeStamp:o}))}),{outputUtxos:p}},a=(e,t,r,a,o)=>{let s=n.getCurrentTimeInSeconds().toString();return t.map((t,n)=>i(e,t,r[n],s,!0,a,a===void 0?void 0:o?.map(e=>e[n]??0n)).outputUtxos)};exports.buildOutputUtxos=a,exports.outputUtxoProcessing=i;
@@ -3,3 +3,4 @@ import { Utxo } from '../../data-structures/utxo/Utxo';
3
3
  export declare const outputUtxoProcessing: (userKeys: UserKeys, inputUtxos: Utxo[], amountChange: bigint, timeStamp?: string, revertIfNegative?: boolean, recipientAddresses?: string[], recipientAmountChanges?: bigint[]) => {
4
4
  outputUtxos: Utxo[];
5
5
  };
6
+ export declare const buildOutputUtxos: (userKeys: UserKeys, inputUtxosArray: Utxo[][], amountChanges: bigint[], recipientAddresses?: string[], recipientAmountChanges?: bigint[][]) => Utxo[][];
@@ -1,30 +1,34 @@
1
1
  import { bigintMax as e, countTotalAmountInUtxos as t } from "../utils/amounts.utils.mjs";
2
2
  import { transactionErrorCodes as n } from "../../error-handling/error-codes.constants.mjs";
3
- import { Utxo as r } from "../../data-structures/utxo/Utxo.mjs";
3
+ import { getCurrentTimeInSeconds as r } from "../utils/time.utils.mjs";
4
+ import { Utxo as i } from "../../data-structures/utxo/Utxo.mjs";
4
5
  //#region libs/shared/common/src/functions/pre-transaction/outputUtxoProcessing.ts
5
- var i = (i, a, o, s, c = !0, l, u) => {
6
+ var a = (r, a, o, s, c = !0, l, u) => {
6
7
  let d = t(a), { erc20TokenAddress: f, mintAddress: p } = a[0];
7
8
  if (c && o < 0n && d + o < 0n) throw Error(n.INSUFFICIENT_FUNDS_TO_TRANSACT);
8
- let m = [new r({
9
+ let m = [new i({
9
10
  amount: e(d + o, 0n),
10
11
  erc20TokenAddress: f,
11
12
  mintAddress: p,
12
- nullifyingKey: i.getShieldedPrivateKey(),
13
+ nullifyingKey: r.getShieldedPrivateKey(),
13
14
  timeStamp: s,
14
- spendingPublicKey: i.getSpendingKeyPair().pubSpendingBJJPoint
15
+ spendingPublicKey: r.getSpendingKeyPair().pubSpendingBJJPoint
15
16
  })];
16
17
  return l !== void 0 && u !== void 0 && l.forEach((e, t) => {
17
- let [n, i, a, , , o] = e.split(",");
18
- m.push(new r({
18
+ let [n, r, a, , , o] = e.split(",");
19
+ m.push(new i({
19
20
  amount: u[t],
20
21
  erc20TokenAddress: f,
21
22
  mintAddress: p,
22
- H0: [BigInt(i), BigInt(a)],
23
+ H0: [BigInt(r), BigInt(a)],
23
24
  stealthAddress: n,
24
25
  encryptionKey: o,
25
26
  timeStamp: s
26
27
  }));
27
28
  }), { outputUtxos: m };
29
+ }, o = (e, t, n, i, o) => {
30
+ let s = r().toString();
31
+ return t.map((t, r) => a(e, t, n[r], s, !0, i, i === void 0 ? void 0 : o?.map((e) => e[r] ?? 0n)).outputUtxos);
28
32
  };
29
33
  //#endregion
30
- export { i as outputUtxoProcessing };
34
+ export { o as buildOutputUtxos, a as outputUtxoProcessing };
@@ -1 +1 @@
1
- require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../crypto/poseidon.cjs`),n=require(`../web3/etherFunctions.cjs`),r=require(`../../data-structures/crypto-keys/keys.cjs`),i=require(`../utils/solanaMint.utils.cjs`),a=require(`./common.snarkjs.cjs`),o=require(`../pre-transaction/solana.cjs`),s=require(`./signedMessageHash.cjs`);require(`../pre-transaction/index.cjs`);const c=require(`./generateMainAndCommitmentZkProof.cjs`),l=require(`./getMerkleTreeSiblingsAndRootHashes.cjs`);require(`../web3/index.cjs`);const u=require(`../pre-transaction/getSolanaCalldataHash.cjs`);let d=require(`ethers`),f=require(`@solana/web3.js`);var p=async(p,m,h,g,_,v,y,b,x,S,C,w=[],T=e.chainIds.solanaLocalnet,E=[],D=[],O=0n)=>{let k=new f.PublicKey(x),ee=new f.PublicKey(S),A=m.getShieldedPrivateKey(),{pubSpendingBJJPoint:j}=m.getSpendingKeyPair(),M=a.calcStealthAddressStructure(v,A,m.getSpendingKeyPair().pubSpendingBJJPoint),N=w.some(Boolean)?a.calcOnchainEncryptedOutput(r.UserKeys.getEncryptionKeyPair(A).publicKey,M):`0x`,P=a.calcEncryptedOutputs(_).flatMap((e,t)=>w[t]?e.map(()=>[]):e.map(e=>[...d.ethers.getBytes(e)])),F=n.randomBigInt(31),I=t.poseidonFunction(F),L=t.poseidonFunction(O),R=h.map(e=>i.formatMintAddress(e)),z=R.map(e=>e.mintAccountPart1),B=R.map(e=>e.mintAccountPart2),V=u.getSolanaCalldataHash(C,k,ee,P,N,y,b,E,D),H=`${C.tokenNumber}x${C.nullifierAmount}x${C.outputAmount}`,U=a.calcAmountChanges(g,_),{inCommitmentSiblings:W,inCommitmentSiblingSides:G,rootHashHinkal:K,rootHashHinkalIndex:q,inNullifiers:J}=await l.getDataFromWorkers(T,p,g.map(e=>e.map(e=>e.getConstructableParams()))),Y=a.buildOutCommitments(_),X=M.H0x,Z=M.H0y,Q=s.computeSignedMessageHashSolana({rootHashHinkal:K,mintAccountPart1:z,mintAccountPart2:B,amountChanges:U,outTimeStamp:BigInt(_[0][0].timeStamp),inNullifiers:J,outCommitments:Y,calldataHash:V,message:I,swapperAccountAdditionalSeed:L,outH1Ay:M.H1y,H0Ax:X,H0Ay:Z}),{R8:$,S:te}=m.signEddsa(Q),ne={rootHashHinkal:K,spendingPublicKey:j,eddsaSignature:[$[0],$[1],te],signedMessageHash:Q,nullifyingPrivateKey:A,mintAccountPart1:z,mintAccountPart2:B,amountChanges:U,inAmounts:g.map(e=>e.map(e=>e.amount.toString())),inH0Ax:g.map(e=>e.map(e=>a.getUtxoCircuitH0Coords(e)[0].toString())),inH0Ay:g.map(e=>e.map(e=>a.getUtxoCircuitH0Coords(e)[1].toString())),inTimeStamps:g.map(e=>e.map(e=>e.timeStamp)),inNullifiers:J,inCommitmentSiblings:W,inCommitmentSiblingSides:G,outAmounts:_.map(e=>e.map(e=>e.amount.toString())),outTimeStamp:BigInt(_[0][0].timeStamp),outPublicKeys:_.map(e=>e.map(e=>e.getStealthAddress())),outCommitments:Y,calldataHash:V,messageSeed:F,swapperAccountSalt:O,H0Ax:X,H0Ay:Z},{zkCallData:re,publicSignals:ie,commitmentValidationData:ae}=await c.generateMainAndCommitmentZkProof(T,m,h,g,`mainSolanaCircuit${H}`,ne),[oe,se,ce]=re;return{proofAArr:oe.map(BigInt).map(o.encodeToByte32Array).flat(),proofBArr:se.flat().map(BigInt).map(o.encodeToByte32Array).flat(),proofCArr:ce.map(BigInt).map(o.encodeToByte32Array).flat(),publicInputsArr:ie.map(BigInt).map(o.encodeToByte32Array),commitmentValidationData:ae,rootHashHinkalIndex:q,encryptedOutputs:P,onChainEncryptedOutput:N}};exports.constructSolanaZkProof=p;
1
+ require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../crypto/poseidon.cjs`),n=require(`../web3/etherFunctions.cjs`),r=require(`../../data-structures/crypto-keys/keys.cjs`),i=require(`../utils/solanaMint.utils.cjs`),a=require(`./common.snarkjs.cjs`),o=require(`../pre-transaction/solana.cjs`),s=require(`./signedMessageHash.cjs`);require(`../pre-transaction/index.cjs`);const c=require(`./generateMainAndCommitmentZkProof.cjs`),l=require(`./getMerkleTreeSiblingsAndRootHashes.cjs`);require(`../web3/index.cjs`);const u=require(`../pre-transaction/getSolanaCalldataHash.cjs`);let d=require(`ethers`),f=require(`@solana/web3.js`);var p=async(p,m,h,g,_,v,y,b,x,S,C=[],w=e.chainIds.solanaLocalnet,T=[],E=[],D=0n)=>{let O=new f.PublicKey(b),k=new f.PublicKey(x),A=m.getShieldedPrivateKey(),{pubSpendingBJJPoint:j}=m.getSpendingKeyPair(),M=a.calcStealthAddressStructure(r.UserKeys.findCorrectRandomization(n.randomBigInt(31),A),A,m.getSpendingKeyPair().pubSpendingBJJPoint),N=C.some(Boolean)?a.calcOnchainEncryptedOutput(r.UserKeys.getEncryptionKeyPair(A).publicKey,M):`0x`,P=a.calcEncryptedOutputs(_).flatMap((e,t)=>C[t]?e.map(()=>[]):e.map(e=>[...d.ethers.getBytes(e)])),F=n.randomBigInt(31),I=t.poseidonFunction(F),L=t.poseidonFunction(D),R=h.map(e=>i.formatMintAddress(e)),z=R.map(e=>e.mintAccountPart1),B=R.map(e=>e.mintAccountPart2),V=u.getSolanaCalldataHash(S,O,k,P,N,v,y,T,E),H=`${S.tokenNumber}x${S.nullifierAmount}x${S.outputAmount}`,U=a.calcAmountChanges(g,_),{inCommitmentSiblings:W,inCommitmentSiblingSides:G,rootHashHinkal:K,rootHashHinkalIndex:q,inNullifiers:J}=await l.getDataFromWorkers(w,p,g.map(e=>e.map(e=>e.getConstructableParams()))),Y=a.buildOutCommitments(_),X=M.H0x,Z=M.H0y,Q=s.computeSignedMessageHashSolana({rootHashHinkal:K,mintAccountPart1:z,mintAccountPart2:B,amountChanges:U,outTimeStamp:BigInt(_[0][0].timeStamp),inNullifiers:J,outCommitments:Y,calldataHash:V,message:I,swapperAccountAdditionalSeed:L,outH1Ay:M.H1y,H0Ax:X,H0Ay:Z}),{R8:$,S:ee}=m.signEddsa(Q),te={rootHashHinkal:K,spendingPublicKey:j,eddsaSignature:[$[0],$[1],ee],signedMessageHash:Q,nullifyingPrivateKey:A,mintAccountPart1:z,mintAccountPart2:B,amountChanges:U,inAmounts:g.map(e=>e.map(e=>e.amount.toString())),inH0Ax:g.map(e=>e.map(e=>a.getUtxoCircuitH0Coords(e)[0].toString())),inH0Ay:g.map(e=>e.map(e=>a.getUtxoCircuitH0Coords(e)[1].toString())),inTimeStamps:g.map(e=>e.map(e=>e.timeStamp)),inNullifiers:J,inCommitmentSiblings:W,inCommitmentSiblingSides:G,outAmounts:_.map(e=>e.map(e=>e.amount.toString())),outTimeStamp:BigInt(_[0][0].timeStamp),outPublicKeys:_.map(e=>e.map(e=>e.getStealthAddress())),outCommitments:Y,calldataHash:V,messageSeed:F,swapperAccountSalt:D,H0Ax:X,H0Ay:Z},{zkCallData:ne,publicSignals:re,commitmentValidationData:ie}=await c.generateMainAndCommitmentZkProof(w,m,h,g,`mainSolanaCircuit${H}`,te),[ae,oe,se]=ne;return{proofAArr:ae.map(BigInt).map(o.encodeToByte32Array).flat(),proofBArr:oe.flat().map(BigInt).map(o.encodeToByte32Array).flat(),proofCArr:se.map(BigInt).map(o.encodeToByte32Array).flat(),publicInputsArr:re.map(BigInt).map(o.encodeToByte32Array),commitmentValidationData:ie,rootHashHinkalIndex:q,encryptedOutputs:P,onChainEncryptedOutput:N}};exports.constructSolanaZkProof=p;
@@ -4,7 +4,7 @@ import { AccountMeta } from '@solana/web3.js';
4
4
  import { DimDataType } from '../../types/circom-data.types';
5
5
  import { MerkleTree } from '../../data-structures/merkle-tree';
6
6
  import { UserKeys } from '../../data-structures/crypto-keys/keys';
7
- export declare const constructSolanaZkProof: (merkleTreeHinkal: MerkleTree<bigint>, userKeys: UserKeys, mintAddresses: string[], inputUtxosArray: Utxo[][], outputUtxosArray: Utxo[][], extraRandomization: bigint, relayerFee: bigint, variableRate: bigint, recipientAddress: string, signerAddress: string, dimensions: DimDataType, onChainCreation?: boolean[], chainId?: number, instructions?: HinkalInstruction[], remainingAccounts?: AccountMeta[], swapperAccountSalt?: bigint) => Promise<{
7
+ export declare const constructSolanaZkProof: (merkleTreeHinkal: MerkleTree<bigint>, userKeys: UserKeys, mintAddresses: string[], inputUtxosArray: Utxo[][], outputUtxosArray: Utxo[][], relayerFee: bigint, variableRate: bigint, recipientAddress: string, signerAddress: string, dimensions: DimDataType, onChainCreation?: boolean[], chainId?: number, instructions?: HinkalInstruction[], remainingAccounts?: AccountMeta[], swapperAccountSalt?: bigint) => Promise<{
8
8
  proofAArr: number[];
9
9
  proofBArr: number[];
10
10
  proofCArr: number[];
@@ -1,26 +1,26 @@
1
1
  import { chainIds as e } from "../../constants/chains.constants.mjs";
2
2
  import { poseidonFunction as t } from "../../crypto/poseidon.mjs";
3
- import { randomBigInt as ee } from "../web3/etherFunctions.mjs";
4
- import { UserKeys as te } from "../../data-structures/crypto-keys/keys.mjs";
5
- import { formatMintAddress as n } from "../utils/solanaMint.utils.mjs";
6
- import { buildOutCommitments as r, calcAmountChanges as i, calcEncryptedOutputs as a, calcOnchainEncryptedOutput as o, calcStealthAddressStructure as s, getUtxoCircuitH0Coords as c } from "./common.snarkjs.mjs";
7
- import { encodeToByte32Array as l } from "../pre-transaction/solana.mjs";
8
- import { computeSignedMessageHashSolana as ne } from "./signedMessageHash.mjs";
3
+ import { randomBigInt as n } from "../web3/etherFunctions.mjs";
4
+ import { UserKeys as r } from "../../data-structures/crypto-keys/keys.mjs";
5
+ import { formatMintAddress as i } from "../utils/solanaMint.utils.mjs";
6
+ import { buildOutCommitments as a, calcAmountChanges as o, calcEncryptedOutputs as s, calcOnchainEncryptedOutput as c, calcStealthAddressStructure as l, getUtxoCircuitH0Coords as u } from "./common.snarkjs.mjs";
7
+ import { encodeToByte32Array as d } from "../pre-transaction/solana.mjs";
8
+ import { computeSignedMessageHashSolana as f } from "./signedMessageHash.mjs";
9
9
  import "../pre-transaction/index.mjs";
10
- import { generateMainAndCommitmentZkProof as u } from "./generateMainAndCommitmentZkProof.mjs";
11
- import { getDataFromWorkers as d } from "./getMerkleTreeSiblingsAndRootHashes.mjs";
10
+ import { generateMainAndCommitmentZkProof as p } from "./generateMainAndCommitmentZkProof.mjs";
11
+ import { getDataFromWorkers as ee } from "./getMerkleTreeSiblingsAndRootHashes.mjs";
12
12
  import "../web3/index.mjs";
13
- import { getSolanaCalldataHash as f } from "../pre-transaction/getSolanaCalldataHash.mjs";
14
- import { ethers as p } from "ethers";
15
- import { PublicKey as m } from "@solana/web3.js";
13
+ import { getSolanaCalldataHash as te } from "../pre-transaction/getSolanaCalldataHash.mjs";
14
+ import { ethers as m } from "ethers";
15
+ import { PublicKey as h } from "@solana/web3.js";
16
16
  //#region libs/shared/common/src/functions/snarkjs/constructSolanaZkProof.ts
17
- var h = async (h, g, _, v, y, b, x, S, re, ie, C, w = [], T = e.solanaLocalnet, ae = [], E = [], D = 0n) => {
18
- let O = new m(re), k = new m(ie), A = g.getShieldedPrivateKey(), { pubSpendingBJJPoint: j } = g.getSpendingKeyPair(), M = s(b, A, g.getSpendingKeyPair().pubSpendingBJJPoint), N = w.some(Boolean) ? o(te.getEncryptionKeyPair(A).publicKey, M) : "0x", P = a(y).flatMap((e, t) => w[t] ? e.map(() => []) : e.map((e) => [...p.getBytes(e)])), F = ee(31), I = t(F), L = t(D), R = _.map((e) => n(e)), z = R.map((e) => e.mintAccountPart1), B = R.map((e) => e.mintAccountPart2), V = f(C, O, k, P, N, x, S, ae, E), oe = `${C.tokenNumber}x${C.nullifierAmount}x${C.outputAmount}`, H = i(v, y), { inCommitmentSiblings: U, inCommitmentSiblingSides: W, rootHashHinkal: G, rootHashHinkalIndex: K, inNullifiers: q } = await d(T, h, v.map((e) => e.map((e) => e.getConstructableParams()))), J = r(y), Y = M.H0x, X = M.H0y, Z = ne({
17
+ var g = async (g, _, v, y, b, x, S, C, w, T, E = [], D = e.solanaLocalnet, ne = [], re = [], O = 0n) => {
18
+ let ie = new h(C), k = new h(w), A = _.getShieldedPrivateKey(), { pubSpendingBJJPoint: j } = _.getSpendingKeyPair(), M = l(r.findCorrectRandomization(n(31), A), A, _.getSpendingKeyPair().pubSpendingBJJPoint), N = E.some(Boolean) ? c(r.getEncryptionKeyPair(A).publicKey, M) : "0x", P = s(b).flatMap((e, t) => E[t] ? e.map(() => []) : e.map((e) => [...m.getBytes(e)])), F = n(31), I = t(F), L = t(O), R = v.map((e) => i(e)), z = R.map((e) => e.mintAccountPart1), B = R.map((e) => e.mintAccountPart2), V = te(T, ie, k, P, N, x, S, ne, re), H = `${T.tokenNumber}x${T.nullifierAmount}x${T.outputAmount}`, U = o(y, b), { inCommitmentSiblings: W, inCommitmentSiblingSides: ae, rootHashHinkal: G, rootHashHinkalIndex: K, inNullifiers: q } = await ee(D, g, y.map((e) => e.map((e) => e.getConstructableParams()))), J = a(b), Y = M.H0x, X = M.H0y, Z = f({
19
19
  rootHashHinkal: G,
20
20
  mintAccountPart1: z,
21
21
  mintAccountPart2: B,
22
- amountChanges: H,
23
- outTimeStamp: BigInt(y[0][0].timeStamp),
22
+ amountChanges: U,
23
+ outTimeStamp: BigInt(b[0][0].timeStamp),
24
24
  inNullifiers: q,
25
25
  outCommitments: J,
26
26
  calldataHash: V,
@@ -29,46 +29,46 @@ var h = async (h, g, _, v, y, b, x, S, re, ie, C, w = [], T = e.solanaLocalnet,
29
29
  outH1Ay: M.H1y,
30
30
  H0Ax: Y,
31
31
  H0Ay: X
32
- }), { R8: Q, S: se } = g.signEddsa(Z), ce = {
32
+ }), { R8: Q, S: oe } = _.signEddsa(Z), se = {
33
33
  rootHashHinkal: G,
34
34
  spendingPublicKey: j,
35
35
  eddsaSignature: [
36
36
  Q[0],
37
37
  Q[1],
38
- se
38
+ oe
39
39
  ],
40
40
  signedMessageHash: Z,
41
41
  nullifyingPrivateKey: A,
42
42
  mintAccountPart1: z,
43
43
  mintAccountPart2: B,
44
- amountChanges: H,
45
- inAmounts: v.map((e) => e.map((e) => e.amount.toString())),
46
- inH0Ax: v.map((e) => e.map((e) => c(e)[0].toString())),
47
- inH0Ay: v.map((e) => e.map((e) => c(e)[1].toString())),
48
- inTimeStamps: v.map((e) => e.map((e) => e.timeStamp)),
44
+ amountChanges: U,
45
+ inAmounts: y.map((e) => e.map((e) => e.amount.toString())),
46
+ inH0Ax: y.map((e) => e.map((e) => u(e)[0].toString())),
47
+ inH0Ay: y.map((e) => e.map((e) => u(e)[1].toString())),
48
+ inTimeStamps: y.map((e) => e.map((e) => e.timeStamp)),
49
49
  inNullifiers: q,
50
- inCommitmentSiblings: U,
51
- inCommitmentSiblingSides: W,
52
- outAmounts: y.map((e) => e.map((e) => e.amount.toString())),
53
- outTimeStamp: BigInt(y[0][0].timeStamp),
54
- outPublicKeys: y.map((e) => e.map((e) => e.getStealthAddress())),
50
+ inCommitmentSiblings: W,
51
+ inCommitmentSiblingSides: ae,
52
+ outAmounts: b.map((e) => e.map((e) => e.amount.toString())),
53
+ outTimeStamp: BigInt(b[0][0].timeStamp),
54
+ outPublicKeys: b.map((e) => e.map((e) => e.getStealthAddress())),
55
55
  outCommitments: J,
56
56
  calldataHash: V,
57
57
  messageSeed: F,
58
- swapperAccountSalt: D,
58
+ swapperAccountSalt: O,
59
59
  H0Ax: Y,
60
60
  H0Ay: X
61
- }, { zkCallData: le, publicSignals: $, commitmentValidationData: ue } = await u(T, g, _, v, `mainSolanaCircuit${oe}`, ce), [de, fe, pe] = le;
61
+ }, { zkCallData: ce, publicSignals: le, commitmentValidationData: $ } = await p(D, _, v, y, `mainSolanaCircuit${H}`, se), [ue, de, fe] = ce;
62
62
  return {
63
- proofAArr: de.map(BigInt).map(l).flat(),
64
- proofBArr: fe.flat().map(BigInt).map(l).flat(),
65
- proofCArr: pe.map(BigInt).map(l).flat(),
66
- publicInputsArr: $.map(BigInt).map(l),
67
- commitmentValidationData: ue,
63
+ proofAArr: ue.map(BigInt).map(d).flat(),
64
+ proofBArr: de.flat().map(BigInt).map(d).flat(),
65
+ proofCArr: fe.map(BigInt).map(d).flat(),
66
+ publicInputsArr: le.map(BigInt).map(d),
67
+ commitmentValidationData: $,
68
68
  rootHashHinkalIndex: K,
69
69
  encryptedOutputs: P,
70
70
  onChainEncryptedOutput: N
71
71
  };
72
72
  };
73
73
  //#endregion
74
- export { h as constructSolanaZkProof };
74
+ export { g as constructSolanaZkProof };
@@ -1 +1 @@
1
- const e=require(`./constant.cjs`),t=require(`../../data-structures/http/HttpClient.cjs`);require(`../../data-structures/http/index.cjs`);const n=require(`../utils/encryptInputForEnclave.cjs`),r=require(`./verifySignedEnclaveResponse.cjs`);var i=async(i,a)=>{let{keyCiphertext:o,inputCiphertext:s}=await n.makeEnclaveHandshakeAndEncryptInput(a),c=await t.httpClient.post(`${e.ENCLAVE_URL}${i}`,{key:o,inputs:s});return r.verifySignedEnclaveResponse(c.data,c.signature)},a=e=>{if(Array.isArray(e))return`[${e.map(a).join(`,`)}]`;if(e&&typeof e==`object`){let t=e;return`{${Object.keys(t).filter(e=>t[e]!==void 0).sort().map(e=>`${JSON.stringify(e)}:${a(t[e])}`).join(`,`)}}`}return JSON.stringify(e)},o=(e,t)=>{if(a({chainId:String(e.chainId),erc20Addresses:e.erc20Addresses,amountChanges:e.amountChanges,externalAddress:e.externalAddress,...e.originalSender?{originalSender:e.originalSender}:{},relay:e.relay??``,feeStructure:e.feeStructure?{feeToken:e.feeStructure.feeToken,flatFee:e.feeStructure.flatFee.toString(),variableRate:e.feeStructure.variableRate.toString()}:null,externalActionId:e.externalActionId??``,externalActionMetadata:e.externalActionMetadata??``,onChainCreation:e.onChainCreation??null,recipientAddress:e.recipientAddress??null,recipientAmounts:e.recipientAmounts??null,selfOutputAmounts:e.selfOutputAmounts??null,inputCommitments:e.inputCommitments??null,useBlockedUtxos:e.useBlockedUtxos??!1,createBlockedUtxos:e.createBlockedUtxos??!1,...e.forceEmptyUtxos?{forceEmptyUtxos:!0}:{},messageSeed:e.messageSeed??``,skipLock:e.skipLock??!1})!==a(t))throw Error(`Enclave prepare-tx response does not match the request sent - refusing to sign`)},s=(e,t)=>{let n={chainId:String(e.chainId),mintAddresses:e.mintAddresses,amountChanges:e.amountChanges,relayAddress:e.relayAddress,recipient:e.recipient,signer:e.signer??e.relayAddress,functionName:e.functionName??`transact`,accounts:e.accounts,onChainCreation:e.onChainCreation??null,relayerFee:e.relayerFee??`0`,variableRate:e.variableRate??`0`,hinkalInstructions:e.hinkalInstructions??null,remainingAccounts:e.remainingAccounts??null,swapperAccountSalt:e.swapperAccountSalt??`0`,recipientAddress:e.recipientAddress??``,recipientAmounts:e.recipientAmounts??null,inputCommitments:e.inputCommitments??null,useBlockedUtxos:e.useBlockedUtxos??!1,messageSeed:e.messageSeed??``};if(e.recipientAmount&&(n.recipientAmount=e.recipientAmount),e.displayRecipient&&(n.displayRecipient=e.displayRecipient),a(n)!==a(t))throw Error(`Enclave prepare-solana-tx response does not match the request sent - refusing to sign`)},c=e=>({R8:e.R8.map(String),S:e.S.toString()}),l=e=>({feeToken:e.feeToken,flatFee:e.flatFee.toString(),variableRate:e.variableRate.toString()}),u=(e,t)=>{if(a({chainId:String(e.chainId),erc20Address:e.erc20Address,externalAddress:e.externalAddress,relay:e.relay,feeStructure:{feeToken:e.feeStructure.feeToken,flatFee:e.feeStructure.flatFee.toString(),variableRate:e.feeStructure.variableRate.toString()},hashedEthereumAddress:e.hashedEthereumAddress})!==a(t))throw Error(`Enclave prepare-stuck-withdraw response does not match the request sent - refusing to sign`)},d=async(e,t,n=e.userKeys)=>{let r={...t,amountChanges:t.amountChanges.map(String),recipientAmounts:t.recipientAmounts?.map(e=>e.map(String)),selfOutputAmounts:t.selfOutputAmounts?.map(String),messageSeed:t.messageSeed?.toString(),nullifyingKey:n.getShieldedPrivateKey(),spendingPublicKey:n.getSpendingKeyPair().pubSpendingBJJPoint.map(String)},a=await i(`/prepare-tx`,r);return o(r,a.request),a},f=async(e,t)=>{let{nullifierCount:n}=await i(`/estimate-nullifiers`,{...t,amountChanges:t.amountChanges.map(String),nullifyingKey:e.userKeys.getShieldedPrivateKey(),spendingPublicKey:e.userKeys.getSpendingKeyPair().pubSpendingBJJPoint.map(String)});return n},p=async(e,t,n=e.userKeys)=>{let r={...t,amountChanges:t.amountChanges.map(String),relayerFee:t.relayerFee?.toString(),variableRate:t.variableRate?.toString(),swapperAccountSalt:t.swapperAccountSalt?.toString(),recipientAmounts:t.recipientAmounts?.map(String),messageSeed:t.messageSeed?.toString(),nullifyingKey:n.getShieldedPrivateKey(),spendingPublicKey:n.getSpendingKeyPair().pubSpendingBJJPoint.map(String)},a=await i(`/prepare-solana-tx`,r);return s(r,a.request),a},m=async(e,t)=>{let n={...t,nullifyingKey:e.userKeys.getShieldedPrivateKey(),spendingPublicKey:e.userKeys.getSpendingKeyPair().pubSpendingBJJPoint.map(String)},{jobs:r,request:a}=await i(`/prepare-stuck-withdraw`,n);return u(n,a),r},h=async(e,t)=>{let n=Object.fromEntries(Object.entries(t.feeStructures).map(([e,t])=>[e,l(t)])),{jobs:r}=await i(`/prepare-solana-stuck-withdraw`,{...t,feeStructures:n,nullifyingKey:e.userKeys.getShieldedPrivateKey(),spendingPublicKey:e.userKeys.getSpendingKeyPair().pubSpendingBJJPoint.map(String)});return r},g=async(e,t)=>i(`/finalize-tx`,{jobId:e,eddsaSignature:c(t)}),_=async(e,t)=>i(`/finalize-solana-tx`,{jobId:e,eddsaSignature:c(t)}),v=async(e,t,n,r)=>{let{txHash:a}=await i(`/finalize-tx-relay`,{jobId:e,eddsaSignature:c(t),chainId:n,adminData:r?.adminData,authorizationData:r?.authorizationData,withUniswapWorkAround:r?.withUniswapWorkAround});return a},y=async(e,t,n,r)=>{let{txHash:a}=await i(`/finalize-solana-tx-relay`,{jobId:e,eddsaSignature:c(t),chainId:n,adminData:r?.adminData});return a};exports.estimateNullifiersEnclaveCall=f,exports.finalizeSolanaTxEnclaveCall=_,exports.finalizeSolanaTxEnclaveCallRelay=y,exports.finalizeTxEnclaveCall=g,exports.finalizeTxEnclaveCallRelay=v,exports.prepareSolanaStuckWithdrawEnclaveCall=h,exports.prepareSolanaTxEnclaveCall=p,exports.prepareStuckWithdrawEnclaveCall=m,exports.prepareTxEnclaveCall=d;
1
+ const e=require(`./constant.cjs`),t=require(`../../data-structures/http/HttpClient.cjs`);require(`../../data-structures/http/index.cjs`);const n=require(`../utils/encryptInputForEnclave.cjs`),r=require(`./verifySignedEnclaveResponse.cjs`);var i=e=>e?.flat().filter(e=>e.amount>0n).map(e=>e.getCommitment()),a=async(i,a)=>{let{keyCiphertext:o,inputCiphertext:s}=await n.makeEnclaveHandshakeAndEncryptInput(a),c=await t.httpClient.post(`${e.ENCLAVE_URL}${i}`,{key:o,inputs:s});return r.verifySignedEnclaveResponse(c.data,c.signature)},o=e=>{if(Array.isArray(e))return`[${e.map(o).join(`,`)}]`;if(e&&typeof e==`object`){let t=e;return`{${Object.keys(t).filter(e=>t[e]!==void 0).sort().map(e=>`${JSON.stringify(e)}:${o(t[e])}`).join(`,`)}}`}return JSON.stringify(e)},s=(e,t)=>{if(o({chainId:String(e.chainId),erc20Addresses:e.erc20Addresses,amountChanges:e.amountChanges,externalAddress:e.externalAddress,...e.originalSender?{originalSender:e.originalSender}:{},relay:e.relay??``,feeStructure:e.feeStructure?{feeToken:e.feeStructure.feeToken,flatFee:e.feeStructure.flatFee.toString(),variableRate:e.feeStructure.variableRate.toString()}:null,externalActionId:e.externalActionId??``,externalActionMetadata:e.externalActionMetadata??``,onChainCreation:e.onChainCreation??null,recipientAddress:e.recipientAddress??null,recipientAmounts:e.recipientAmounts??null,selfOutputAmounts:e.selfOutputAmounts??null,inputCommitments:e.inputCommitments??null,useBlockedUtxos:e.useBlockedUtxos??!1,createBlockedUtxos:e.createBlockedUtxos??!1,...e.forceEmptyUtxos?{forceEmptyUtxos:!0}:{},messageSeed:e.messageSeed??``,skipLock:e.skipLock??!1})!==o(t))throw Error(`Enclave prepare-tx response does not match the request sent - refusing to sign`)},c=(e,t)=>{let n={chainId:String(e.chainId),mintAddresses:e.mintAddresses,amountChanges:e.amountChanges,relayAddress:e.relayAddress,recipient:e.recipient,signer:e.signer??e.relayAddress,functionName:e.functionName??`transact`,accounts:e.accounts,onChainCreation:e.onChainCreation??null,relayerFee:e.relayerFee??`0`,variableRate:e.variableRate??`0`,hinkalInstructions:e.hinkalInstructions??null,remainingAccounts:e.remainingAccounts??null,swapperAccountSalt:e.swapperAccountSalt??`0`,recipientAddress:e.recipientAddress??``,recipientAmounts:e.recipientAmounts??null,inputCommitments:e.inputCommitments??null,useBlockedUtxos:e.useBlockedUtxos??!1,messageSeed:e.messageSeed??``};if(e.recipientAmount&&(n.recipientAmount=e.recipientAmount),e.displayRecipient&&(n.displayRecipient=e.displayRecipient),o(n)!==o(t))throw Error(`Enclave prepare-solana-tx response does not match the request sent - refusing to sign`)},l=e=>({R8:e.R8.map(String),S:e.S.toString()}),u=e=>({feeToken:e.feeToken,flatFee:e.flatFee.toString(),variableRate:e.variableRate.toString()}),d=(e,t)=>{if(o({chainId:String(e.chainId),erc20Address:e.erc20Address,externalAddress:e.externalAddress,relay:e.relay,feeStructure:{feeToken:e.feeStructure.feeToken,flatFee:e.feeStructure.flatFee.toString(),variableRate:e.feeStructure.variableRate.toString()},hashedEthereumAddress:e.hashedEthereumAddress})!==o(t))throw Error(`Enclave prepare-stuck-withdraw response does not match the request sent - refusing to sign`)},f=async(e,t,n=e.userKeys)=>{let r={...t,amountChanges:t.amountChanges.map(String),recipientAmounts:t.recipientAmounts?.map(e=>e.map(String)),selfOutputAmounts:t.selfOutputAmounts?.map(String),messageSeed:t.messageSeed?.toString(),nullifyingKey:n.getShieldedPrivateKey(),spendingPublicKey:n.getSpendingKeyPair().pubSpendingBJJPoint.map(String)},i=await a(`/prepare-tx`,r);return s(r,i.request),i},p=async(e,t)=>{let{nullifierCount:n}=await a(`/estimate-nullifiers`,{...t,amountChanges:t.amountChanges.map(String),nullifyingKey:e.userKeys.getShieldedPrivateKey(),spendingPublicKey:e.userKeys.getSpendingKeyPair().pubSpendingBJJPoint.map(String)});return n},m=async(e,t,n=e.userKeys)=>{let r={...t,amountChanges:t.amountChanges.map(String),relayerFee:t.relayerFee?.toString(),variableRate:t.variableRate?.toString(),swapperAccountSalt:t.swapperAccountSalt?.toString(),recipientAmounts:t.recipientAmounts?.map(String),messageSeed:t.messageSeed?.toString(),nullifyingKey:n.getShieldedPrivateKey(),spendingPublicKey:n.getSpendingKeyPair().pubSpendingBJJPoint.map(String)},i=await a(`/prepare-solana-tx`,r);return c(r,i.request),i},h=async(e,t)=>{let n={...t,nullifyingKey:e.userKeys.getShieldedPrivateKey(),spendingPublicKey:e.userKeys.getSpendingKeyPair().pubSpendingBJJPoint.map(String)},{jobs:r,request:i}=await a(`/prepare-stuck-withdraw`,n);return d(n,i),r},g=async(e,t)=>{let n=Object.fromEntries(Object.entries(t.feeStructures).map(([e,t])=>[e,u(t)])),{jobs:r}=await a(`/prepare-solana-stuck-withdraw`,{...t,feeStructures:n,nullifyingKey:e.userKeys.getShieldedPrivateKey(),spendingPublicKey:e.userKeys.getSpendingKeyPair().pubSpendingBJJPoint.map(String)});return r},_=async(e,t)=>a(`/finalize-tx`,{jobId:e,eddsaSignature:l(t)}),v=async(e,t)=>a(`/finalize-solana-tx`,{jobId:e,eddsaSignature:l(t)}),y=async(e,t,n,r)=>{let{txHash:i}=await a(`/finalize-tx-relay`,{jobId:e,eddsaSignature:l(t),chainId:n,adminData:r?.adminData,authorizationData:r?.authorizationData,withUniswapWorkAround:r?.withUniswapWorkAround});return i},b=async(e,t,n,r)=>{let{txHash:i}=await a(`/finalize-solana-tx-relay`,{jobId:e,eddsaSignature:l(t),chainId:n,adminData:r?.adminData});return i};exports.collectInputCommitments=i,exports.estimateNullifiersEnclaveCall=p,exports.finalizeSolanaTxEnclaveCall=v,exports.finalizeSolanaTxEnclaveCallRelay=b,exports.finalizeTxEnclaveCall=_,exports.finalizeTxEnclaveCallRelay=y,exports.prepareSolanaStuckWithdrawEnclaveCall=g,exports.prepareSolanaTxEnclaveCall=m,exports.prepareStuckWithdrawEnclaveCall=h,exports.prepareTxEnclaveCall=f;
@@ -1,8 +1,10 @@
1
1
  import { IHinkal } from '../../data-structures/Hinkal/IHinkal';
2
2
  import { UserKeys } from '../../data-structures/crypto-keys/keys';
3
+ import { Utxo } from '../../data-structures/utxo/Utxo';
3
4
  import { EstimateNullifiersParams, FinalizeSolanaTxResponseType, FinalizeTxResponseType, PreparedJobType, PrepareSolanaStuckWithdrawParams, PrepareSolanaTxParams, PrepareSolanaTxResponseType, PrepareStuckWithdrawRequestType, PrepareTxParams, PrepareTxResponseType } from '../../types/remote-tx-build.types';
4
5
  import { AdminDataType } from '../../types/admin.types';
5
6
  import { AuthorizationData } from '../../types/hinkal.types';
7
+ export declare const collectInputCommitments: (inputUtxos?: Utxo[][]) => string[] | undefined;
6
8
  export declare const prepareTxEnclaveCall: (hinkal: IHinkal, params: PrepareTxParams, userKeys?: UserKeys) => Promise<PrepareTxResponseType>;
7
9
  export declare const estimateNullifiersEnclaveCall: (hinkal: IHinkal, params: EstimateNullifiersParams) => Promise<number>;
8
10
  export declare const prepareSolanaTxEnclaveCall: (hinkal: IHinkal, params: PrepareSolanaTxParams, userKeys?: UserKeys) => Promise<PrepareSolanaTxResponseType>;
@@ -4,21 +4,21 @@ import "../../data-structures/http/index.mjs";
4
4
  import { makeEnclaveHandshakeAndEncryptInput as n } from "../utils/encryptInputForEnclave.mjs";
5
5
  import { verifySignedEnclaveResponse as r } from "./verifySignedEnclaveResponse.mjs";
6
6
  //#region libs/shared/common/src/functions/snarkjs/constructTxEnclave.ts
7
- var i = async (i, a) => {
7
+ var i = (e) => e?.flat().filter((e) => e.amount > 0n).map((e) => e.getCommitment()), a = async (i, a) => {
8
8
  let { keyCiphertext: o, inputCiphertext: s } = await n(a), c = await t.post(`${e}${i}`, {
9
9
  key: o,
10
10
  inputs: s
11
11
  });
12
12
  return r(c.data, c.signature);
13
- }, a = (e) => {
14
- if (Array.isArray(e)) return `[${e.map(a).join(",")}]`;
13
+ }, o = (e) => {
14
+ if (Array.isArray(e)) return `[${e.map(o).join(",")}]`;
15
15
  if (e && typeof e == "object") {
16
16
  let t = e;
17
- return `{${Object.keys(t).filter((e) => t[e] !== void 0).sort().map((e) => `${JSON.stringify(e)}:${a(t[e])}`).join(",")}}`;
17
+ return `{${Object.keys(t).filter((e) => t[e] !== void 0).sort().map((e) => `${JSON.stringify(e)}:${o(t[e])}`).join(",")}}`;
18
18
  }
19
19
  return JSON.stringify(e);
20
- }, o = (e, t) => {
21
- if (a({
20
+ }, s = (e, t) => {
21
+ if (o({
22
22
  chainId: String(e.chainId),
23
23
  erc20Addresses: e.erc20Addresses,
24
24
  amountChanges: e.amountChanges,
@@ -42,8 +42,8 @@ var i = async (i, a) => {
42
42
  ...e.forceEmptyUtxos ? { forceEmptyUtxos: !0 } : {},
43
43
  messageSeed: e.messageSeed ?? "",
44
44
  skipLock: e.skipLock ?? !1
45
- }) !== a(t)) throw Error("Enclave prepare-tx response does not match the request sent - refusing to sign");
46
- }, s = (e, t) => {
45
+ }) !== o(t)) throw Error("Enclave prepare-tx response does not match the request sent - refusing to sign");
46
+ }, c = (e, t) => {
47
47
  let n = {
48
48
  chainId: String(e.chainId),
49
49
  mintAddresses: e.mintAddresses,
@@ -65,16 +65,16 @@ var i = async (i, a) => {
65
65
  useBlockedUtxos: e.useBlockedUtxos ?? !1,
66
66
  messageSeed: e.messageSeed ?? ""
67
67
  };
68
- if (e.recipientAmount && (n.recipientAmount = e.recipientAmount), e.displayRecipient && (n.displayRecipient = e.displayRecipient), a(n) !== a(t)) throw Error("Enclave prepare-solana-tx response does not match the request sent - refusing to sign");
69
- }, c = (e) => ({
68
+ if (e.recipientAmount && (n.recipientAmount = e.recipientAmount), e.displayRecipient && (n.displayRecipient = e.displayRecipient), o(n) !== o(t)) throw Error("Enclave prepare-solana-tx response does not match the request sent - refusing to sign");
69
+ }, l = (e) => ({
70
70
  R8: e.R8.map(String),
71
71
  S: e.S.toString()
72
- }), l = (e) => ({
72
+ }), u = (e) => ({
73
73
  feeToken: e.feeToken,
74
74
  flatFee: e.flatFee.toString(),
75
75
  variableRate: e.variableRate.toString()
76
- }), u = (e, t) => {
77
- if (a({
76
+ }), d = (e, t) => {
77
+ if (o({
78
78
  chainId: String(e.chainId),
79
79
  erc20Address: e.erc20Address,
80
80
  externalAddress: e.externalAddress,
@@ -85,8 +85,8 @@ var i = async (i, a) => {
85
85
  variableRate: e.feeStructure.variableRate.toString()
86
86
  },
87
87
  hashedEthereumAddress: e.hashedEthereumAddress
88
- }) !== a(t)) throw Error("Enclave prepare-stuck-withdraw response does not match the request sent - refusing to sign");
89
- }, d = async (e, t, n = e.userKeys) => {
88
+ }) !== o(t)) throw Error("Enclave prepare-stuck-withdraw response does not match the request sent - refusing to sign");
89
+ }, f = async (e, t, n = e.userKeys) => {
90
90
  let r = {
91
91
  ...t,
92
92
  amountChanges: t.amountChanges.map(String),
@@ -95,17 +95,17 @@ var i = async (i, a) => {
95
95
  messageSeed: t.messageSeed?.toString(),
96
96
  nullifyingKey: n.getShieldedPrivateKey(),
97
97
  spendingPublicKey: n.getSpendingKeyPair().pubSpendingBJJPoint.map(String)
98
- }, a = await i("/prepare-tx", r);
99
- return o(r, a.request), a;
100
- }, f = async (e, t) => {
101
- let { nullifierCount: n } = await i("/estimate-nullifiers", {
98
+ }, i = await a("/prepare-tx", r);
99
+ return s(r, i.request), i;
100
+ }, p = async (e, t) => {
101
+ let { nullifierCount: n } = await a("/estimate-nullifiers", {
102
102
  ...t,
103
103
  amountChanges: t.amountChanges.map(String),
104
104
  nullifyingKey: e.userKeys.getShieldedPrivateKey(),
105
105
  spendingPublicKey: e.userKeys.getSpendingKeyPair().pubSpendingBJJPoint.map(String)
106
106
  });
107
107
  return n;
108
- }, p = async (e, t, n = e.userKeys) => {
108
+ }, m = async (e, t, n = e.userKeys) => {
109
109
  let r = {
110
110
  ...t,
111
111
  amountChanges: t.amountChanges.map(String),
@@ -116,47 +116,47 @@ var i = async (i, a) => {
116
116
  messageSeed: t.messageSeed?.toString(),
117
117
  nullifyingKey: n.getShieldedPrivateKey(),
118
118
  spendingPublicKey: n.getSpendingKeyPair().pubSpendingBJJPoint.map(String)
119
- }, a = await i("/prepare-solana-tx", r);
120
- return s(r, a.request), a;
121
- }, m = async (e, t) => {
119
+ }, i = await a("/prepare-solana-tx", r);
120
+ return c(r, i.request), i;
121
+ }, h = async (e, t) => {
122
122
  let n = {
123
123
  ...t,
124
124
  nullifyingKey: e.userKeys.getShieldedPrivateKey(),
125
125
  spendingPublicKey: e.userKeys.getSpendingKeyPair().pubSpendingBJJPoint.map(String)
126
- }, { jobs: r, request: a } = await i("/prepare-stuck-withdraw", n);
127
- return u(n, a), r;
128
- }, h = async (e, t) => {
129
- let n = Object.fromEntries(Object.entries(t.feeStructures).map(([e, t]) => [e, l(t)])), { jobs: r } = await i("/prepare-solana-stuck-withdraw", {
126
+ }, { jobs: r, request: i } = await a("/prepare-stuck-withdraw", n);
127
+ return d(n, i), r;
128
+ }, g = async (e, t) => {
129
+ let n = Object.fromEntries(Object.entries(t.feeStructures).map(([e, t]) => [e, u(t)])), { jobs: r } = await a("/prepare-solana-stuck-withdraw", {
130
130
  ...t,
131
131
  feeStructures: n,
132
132
  nullifyingKey: e.userKeys.getShieldedPrivateKey(),
133
133
  spendingPublicKey: e.userKeys.getSpendingKeyPair().pubSpendingBJJPoint.map(String)
134
134
  });
135
135
  return r;
136
- }, g = async (e, t) => i("/finalize-tx", {
136
+ }, _ = async (e, t) => a("/finalize-tx", {
137
137
  jobId: e,
138
- eddsaSignature: c(t)
139
- }), _ = async (e, t) => i("/finalize-solana-tx", {
138
+ eddsaSignature: l(t)
139
+ }), v = async (e, t) => a("/finalize-solana-tx", {
140
140
  jobId: e,
141
- eddsaSignature: c(t)
142
- }), v = async (e, t, n, r) => {
143
- let { txHash: a } = await i("/finalize-tx-relay", {
141
+ eddsaSignature: l(t)
142
+ }), y = async (e, t, n, r) => {
143
+ let { txHash: i } = await a("/finalize-tx-relay", {
144
144
  jobId: e,
145
- eddsaSignature: c(t),
145
+ eddsaSignature: l(t),
146
146
  chainId: n,
147
147
  adminData: r?.adminData,
148
148
  authorizationData: r?.authorizationData,
149
149
  withUniswapWorkAround: r?.withUniswapWorkAround
150
150
  });
151
- return a;
152
- }, y = async (e, t, n, r) => {
153
- let { txHash: a } = await i("/finalize-solana-tx-relay", {
151
+ return i;
152
+ }, b = async (e, t, n, r) => {
153
+ let { txHash: i } = await a("/finalize-solana-tx-relay", {
154
154
  jobId: e,
155
- eddsaSignature: c(t),
155
+ eddsaSignature: l(t),
156
156
  chainId: n,
157
157
  adminData: r?.adminData
158
158
  });
159
- return a;
159
+ return i;
160
160
  };
161
161
  //#endregion
162
- export { f as estimateNullifiersEnclaveCall, _ as finalizeSolanaTxEnclaveCall, y as finalizeSolanaTxEnclaveCallRelay, g as finalizeTxEnclaveCall, v as finalizeTxEnclaveCallRelay, h as prepareSolanaStuckWithdrawEnclaveCall, p as prepareSolanaTxEnclaveCall, m as prepareStuckWithdrawEnclaveCall, d as prepareTxEnclaveCall };
162
+ export { i as collectInputCommitments, p as estimateNullifiersEnclaveCall, v as finalizeSolanaTxEnclaveCall, b as finalizeSolanaTxEnclaveCallRelay, _ as finalizeTxEnclaveCall, y as finalizeTxEnclaveCallRelay, g as prepareSolanaStuckWithdrawEnclaveCall, m as prepareSolanaTxEnclaveCall, h as prepareStuckWithdrawEnclaveCall, f as prepareTxEnclaveCall };
@@ -0,0 +1 @@
1
+ const e=require(`./serialize.utils.cjs`);function t(e,t){return Object.values(e).includes(t)}function n(n,r,i=!1){if(t(n,r))return r;let a=`Value ${e.safeJsonStringify(r)} is not a valid member of enum ${e.safeJsonStringify(n)}.`;if(i)throw Error(a)}exports.toEnumValue=n;
@@ -0,0 +1,12 @@
1
+ import { safeJsonStringify as e } from "./serialize.utils.mjs";
2
+ //#region libs/shared/common/src/functions/utils/enum.utils.ts
3
+ function t(e, t) {
4
+ return Object.values(e).includes(t);
5
+ }
6
+ function n(n, r, i = !1) {
7
+ if (t(n, r)) return r;
8
+ let a = `Value ${e(r)} is not a valid member of enum ${e(n)}.`;
9
+ if (i) throw Error(a);
10
+ }
11
+ //#endregion
12
+ export { n as toEnumValue };
@@ -1 +1 @@
1
- require(`./abi.utils.cjs`),require(`./serialize.utils.cjs`),require(`./caseInsensitive.utils.cjs`),require(`./amounts.utils.cjs`),require(`./time.utils.cjs`),require(`./upToDateState.cjs`),require(`./cacheFunctions.cjs`),require(`./enclaveHandshakeService.cjs`),require(`./encryptInputForEnclave.cjs`),require(`./solanaMint.utils.cjs`),require(`./serialize-utxos.utils.cjs`),require(`./customEnclaveFunctionsRegister.cjs`),require(`./addresses.cjs`),require(`./tron.utils.cjs`),require(`./legacyKeys.cjs`),require(`./auth.utils.cjs`),require(`./string.utils.cjs`),require(`./token-check.utils.cjs`),require(`./map.utils.cjs`),require(`./mutexes.utils.cjs`),require(`./erc20tokenFunctions.cjs`),require(`../pre-transaction/outputUtxoProcessing.cjs`),require(`./external-action.utils.cjs`),require(`../pre-transaction/solana.cjs`),require(`../pre-transaction/process-gas-estimates.cjs`),require(`../pre-transaction/getVolatileTransferAmount.cjs`),require(`../pre-transaction/constructAdminData.cjs`),require(`./create-provider.cjs`),require(`../pre-transaction/calculateSolanaNullifierCount.cjs`),require(`../pre-transaction/convert-okx-instructions.cjs`),require(`./process.utils.cjs`),require(`../pre-transaction/sendV0Transaction.cjs`),require(`./bytes32.utils.cjs`),require(`../pre-transaction/ensureAmountChanges.cjs`),require(`../pre-transaction/getFeeStructure.cjs`),require(`../pre-transaction/getExternalSwapAddress.cjs`),require(`../pre-transaction/waitForDepositedUtxosInMerkleTree.cjs`),require(`../pre-transaction/buildCommitmentValidationData.cjs`),require(`../pre-transaction/index.cjs`),require(`./getContractAddress.cjs`),require(`./getSignerFromContract.cjs`),require(`./tronSimulation.utils.cjs`),require(`./tx-confirmation.utils.cjs`),require(`./getUtxosFromReceipt.utils.cjs`),require(`./getRecipientInfoFromUserKeys.cjs`),require(`./resolve-domain-address.cjs`),require(`./resolve-sync.utils.cjs`),require(`./convertIntegrationProviderToExternalActionId.cjs`),require(`./evmNetworkFunctions.cjs`),require(`./userAgent.cjs`),require(`./reloadPage.cjs`),require(`./cacheDevice.utils.cjs`),require(`./getBlockExplorerUrl.cjs`),require(`./involves-permit2-op.cjs`),require(`./convertEmporiumOpToCallInfo.cjs`),require(`./publicBalance.utils.cjs`),require(`./rpc-int-encode.cjs`),require(`./walletBalances.utils.cjs`),require(`./nftTokenFunctions.cjs`),require(`./inLogicMetadata.cjs`),require(`./networks.utils.cjs`),require(`./postToOffscreen.cjs`),require(`./solanaSendPreflight.utils.cjs`),require(`./voidWallets.utils.cjs`),require(`./prepareHinkal.cjs`),require(`./getUtxosFromReceiptSolana.cjs`),require(`./fees.utils.cjs`),require(`./proxyAvatar.utils.cjs`),require(`./enclave-utxo-storage.cjs`),require(`./enclave-signature-storage.cjs`),require(`./buildClaimableDepositPlan.cjs`),require(`./deposit-claimable.utils.cjs`),require(`./formatter.cjs`),require(`./transfer-claimable.utils.cjs`),require(`./bridge-flow.utils.cjs`),require(`./bridge-claimable.utils.cjs`),require(`./temp-wallet.utils.cjs`),require(`./dispatchBalanceRefreshes.cjs`),require(`./lifi.utils.cjs`),require(`./enclave-recipient-info-storage.cjs`),require(`./solana-memo.cjs`),require(`./mnemonics.cjs`),require(`./nearIntents.utils.cjs`),require(`./enclaveSessionSigning.cjs`),require(`./validateWalletAddress.cjs`),require(`./waasStamp.cjs`);
1
+ require(`./abi.utils.cjs`),require(`./serialize.utils.cjs`),require(`./caseInsensitive.utils.cjs`),require(`./amounts.utils.cjs`),require(`./time.utils.cjs`),require(`./upToDateState.cjs`),require(`./cacheFunctions.cjs`),require(`./enclaveHandshakeService.cjs`),require(`./encryptInputForEnclave.cjs`),require(`./solanaMint.utils.cjs`),require(`./serialize-utxos.utils.cjs`),require(`./customEnclaveFunctionsRegister.cjs`),require(`./addresses.cjs`),require(`./tron.utils.cjs`),require(`./legacyKeys.cjs`),require(`./auth.utils.cjs`),require(`./string.utils.cjs`),require(`./token-check.utils.cjs`),require(`./map.utils.cjs`),require(`./mutexes.utils.cjs`),require(`./erc20tokenFunctions.cjs`),require(`../pre-transaction/outputUtxoProcessing.cjs`),require(`./external-action.utils.cjs`),require(`../pre-transaction/solana.cjs`),require(`../pre-transaction/process-gas-estimates.cjs`),require(`../pre-transaction/getVolatileTransferAmount.cjs`),require(`../pre-transaction/constructAdminData.cjs`),require(`./create-provider.cjs`),require(`../pre-transaction/calculateSolanaNullifierCount.cjs`),require(`../pre-transaction/convert-okx-instructions.cjs`),require(`./process.utils.cjs`),require(`../pre-transaction/sendV0Transaction.cjs`),require(`./bytes32.utils.cjs`),require(`../pre-transaction/getFeeStructure.cjs`),require(`../pre-transaction/getExternalSwapAddress.cjs`),require(`../pre-transaction/waitForDepositedUtxosInMerkleTree.cjs`),require(`../pre-transaction/buildCommitmentValidationData.cjs`),require(`../pre-transaction/index.cjs`),require(`./getContractAddress.cjs`),require(`./getSignerFromContract.cjs`),require(`./tronSimulation.utils.cjs`),require(`./tx-confirmation.utils.cjs`),require(`./getUtxosFromReceipt.utils.cjs`),require(`./getRecipientInfoFromUserKeys.cjs`),require(`./resolve-domain-address.cjs`),require(`./resolve-sync.utils.cjs`),require(`./convertIntegrationProviderToExternalActionId.cjs`),require(`./evmNetworkFunctions.cjs`),require(`./userAgent.cjs`),require(`./reloadPage.cjs`),require(`./cacheDevice.utils.cjs`),require(`./getBlockExplorerUrl.cjs`),require(`./involves-permit2-op.cjs`),require(`./convertEmporiumOpToCallInfo.cjs`),require(`./publicBalance.utils.cjs`),require(`./rpc-int-encode.cjs`),require(`./walletBalances.utils.cjs`),require(`./nftTokenFunctions.cjs`),require(`./inLogicMetadata.cjs`),require(`./networks.utils.cjs`),require(`./postToOffscreen.cjs`),require(`./solanaSendPreflight.utils.cjs`),require(`./voidWallets.utils.cjs`),require(`./prepareHinkal.cjs`),require(`./getUtxosFromReceiptSolana.cjs`),require(`./fees.utils.cjs`),require(`./proxyAvatar.utils.cjs`),require(`./enclave-utxo-storage.cjs`),require(`./enclave-signature-storage.cjs`),require(`./buildClaimableDepositPlan.cjs`),require(`./deposit-claimable.utils.cjs`),require(`./formatter.cjs`),require(`./transfer-claimable.utils.cjs`),require(`./bridge-flow.utils.cjs`),require(`./bridge-claimable.utils.cjs`),require(`./temp-wallet.utils.cjs`),require(`./dispatchBalanceRefreshes.cjs`),require(`./lifi.utils.cjs`),require(`./enclave-recipient-info-storage.cjs`),require(`./solana-memo.cjs`),require(`./mnemonics.cjs`),require(`./nearIntents.utils.cjs`),require(`./enclaveSessionSigning.cjs`),require(`./validateWalletAddress.cjs`),require(`./waasStamp.cjs`);
@@ -31,7 +31,6 @@ import "../pre-transaction/convert-okx-instructions.mjs";
31
31
  import "./process.utils.mjs";
32
32
  import "../pre-transaction/sendV0Transaction.mjs";
33
33
  import "./bytes32.utils.mjs";
34
- import "../pre-transaction/ensureAmountChanges.mjs";
35
34
  import "../pre-transaction/getFeeStructure.mjs";
36
35
  import "../pre-transaction/getExternalSwapAddress.mjs";
37
36
  import "../pre-transaction/waitForDepositedUtxosInMerkleTree.mjs";
@@ -1 +1 @@
1
- require(`./chains.types.cjs`),require(`./hinkal.types.cjs`),require(`./circom-data.types.cjs`),require(`./ethereum-network.types.cjs`),require(`./external-action.types.cjs`),require(`./token.types.cjs`),require(`./transactions.types.cjs`),require(`./admin.types.cjs`),require(`./activities.types.cjs`),require(`./transaction.types.cjs`),require(`./balances.types.cjs`),require(`./cache.types.cjs`),require(`./eip5792.types.cjs`),require(`./offscreen.types.cjs`),require(`./scheduled-transactions.types.cjs`),require(`./events.types.cjs`),require(`./schedule.types.cjs`),require(`./transact.types.cjs`);
1
+ require(`./chains.types.cjs`),require(`./hinkal.types.cjs`),require(`./circom-data.types.cjs`),require(`./ethereum-network.types.cjs`),require(`./external-action.types.cjs`),require(`./token.types.cjs`),require(`./transactions.types.cjs`),require(`./admin.types.cjs`),require(`./activities.types.cjs`),require(`./transaction.types.cjs`),require(`./balances.types.cjs`),require(`./cache.types.cjs`),require(`./eip5792.types.cjs`),require(`./offscreen.types.cjs`),require(`./scheduled-transactions.types.cjs`),require(`./events.types.cjs`),require(`./schedule.types.cjs`),require(`./transact.types.cjs`),require(`./solana-transact.types.cjs`);
@@ -58,3 +58,4 @@ export * from './enclaveApi.types';
58
58
  export * from './transact.types';
59
59
  export * from './proxy-progress.types';
60
60
  export * from './bridging-tx.types';
61
+ export * from './solana-transact.types';
@@ -16,3 +16,4 @@ import "./scheduled-transactions.types.mjs";
16
16
  import "./events.types.mjs";
17
17
  import "./schedule.types.mjs";
18
18
  import "./transact.types.mjs";
19
+ import "./solana-transact.types.mjs";