dop-wallet-v6 1.2.1 → 1.2.2
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.
- package/dist/services/artifacts/__tests__/artifact-downloader.test.js.map +1 -1
- package/dist/services/artifacts/artifact-downloader.d.ts +1 -1
- package/dist/services/artifacts/artifact-downloader.js.map +1 -1
- package/dist/services/artifacts/artifact-hash.d.ts +1 -1
- package/dist/services/artifacts/artifact-hash.js.map +1 -1
- package/dist/services/artifacts/artifact-util.d.ts +1 -1
- package/dist/services/artifacts/artifact-util.js.map +1 -1
- package/dist/services/dop/core/__tests__/providers.test.js.map +1 -1
- package/dist/services/dop/core/artifacts.d.ts +2 -2
- package/dist/services/dop/core/artifacts.js.map +1 -1
- package/dist/services/dop/core/encrypts.d.ts +1 -1
- package/dist/services/dop/core/encrypts.js.map +1 -1
- package/dist/services/dop/core/engine.d.ts +1 -1
- package/dist/services/dop/core/engine.js.map +1 -1
- package/dist/services/dop/core/init.d.ts +2 -2
- package/dist/services/dop/core/init.js.map +1 -1
- package/dist/services/dop/core/load-provider.d.ts +1 -1
- package/dist/services/dop/core/load-provider.js.map +1 -1
- package/dist/services/dop/core/merkletree.d.ts +2 -2
- package/dist/services/dop/core/merkletree.js.map +1 -1
- package/dist/services/dop/core/prover.d.ts +1 -1
- package/dist/services/dop/core/prover.js.map +1 -1
- package/dist/services/dop/core/providers.d.ts +2 -2
- package/dist/services/dop/core/providers.js.map +1 -1
- package/dist/services/dop/dop-txids/__tests__/dop-txid-sync-graph-v2.test.js.map +1 -1
- package/dist/services/dop/dop-txids/blinded-commitments.d.ts +1 -1
- package/dist/services/dop/dop-txids/blinded-commitments.js.map +1 -1
- package/dist/services/dop/dop-txids/dop-txid-graph-type-formatters.d.ts +1 -1
- package/dist/services/dop/dop-txids/dop-txid-graph-type-formatters.js.map +1 -1
- package/dist/services/dop/dop-txids/dop-txid-merkletrees.d.ts +1 -1
- package/dist/services/dop/dop-txids/dop-txid-merkletrees.js.map +1 -1
- package/dist/services/dop/dop-txids/dop-txid-sync-graph-v2.d.ts +1 -1
- package/dist/services/dop/dop-txids/dop-txid-sync-graph-v2.js.map +1 -1
- package/dist/services/dop/history/transaction-history.d.ts +2 -2
- package/dist/services/dop/history/transaction-history.js.map +1 -1
- package/dist/services/dop/process/extract-transaction-data.d.ts +1 -1
- package/dist/services/dop/process/extract-transaction-data.js.map +1 -1
- package/dist/services/dop/quick-sync/V2/__tests__/quick-sync-events-graph-v2.test.js.map +1 -1
- package/dist/services/dop/quick-sync/V2/graph-type-formatters-v2.d.ts +1 -1
- package/dist/services/dop/quick-sync/V2/graph-type-formatters-v2.js.map +1 -1
- package/dist/services/dop/quick-sync/V2/quick-sync-events-graph-v2.d.ts +1 -1
- package/dist/services/dop/quick-sync/V2/quick-sync-events-graph-v2.js.map +1 -1
- package/dist/services/dop/quick-sync/V3/__tests__/quick-sync-events-graph-v3.test.js.map +1 -1
- package/dist/services/dop/quick-sync/V3/graph-type-formatters-v3.d.ts +1 -1
- package/dist/services/dop/quick-sync/V3/graph-type-formatters-v3.js.map +1 -1
- package/dist/services/dop/quick-sync/V3/quick-sync-events-graph-v3.d.ts +1 -1
- package/dist/services/dop/quick-sync/V3/quick-sync-events-graph-v3.js.map +1 -1
- package/dist/services/dop/quick-sync/graph-query.d.ts +1 -1
- package/dist/services/dop/quick-sync/graph-query.js.map +1 -1
- package/dist/services/dop/quick-sync/quick-sync-events.d.ts +1 -1
- package/dist/services/dop/quick-sync/quick-sync-events.js.map +1 -1
- package/dist/services/dop/quick-sync/shared-formatters.d.ts +1 -1
- package/dist/services/dop/quick-sync/shared-formatters.js.map +1 -1
- package/dist/services/dop/util/bytes.d.ts +1 -1
- package/dist/services/dop/util/bytes.js.map +1 -1
- package/dist/services/dop/util/crypto.d.ts +2 -2
- package/dist/services/dop/util/crypto.js.map +1 -1
- package/dist/services/dop/wallets/__tests__/balances-live.test.js.map +1 -1
- package/dist/services/dop/wallets/__tests__/balances-update.test.js.map +1 -1
- package/dist/services/dop/wallets/__tests__/balances.test.js.map +1 -1
- package/dist/services/dop/wallets/__tests__/wallets.test.js.map +1 -1
- package/dist/services/dop/wallets/balance-update.d.ts +2 -2
- package/dist/services/dop/wallets/balance-update.js.map +1 -1
- package/dist/services/dop/wallets/balances.d.ts +1 -1
- package/dist/services/dop/wallets/balances.js.map +1 -1
- package/dist/services/dop/wallets/wallets.d.ts +2 -2
- package/dist/services/dop/wallets/wallets.js.map +1 -1
- package/dist/services/ethers/ethers-util.js.map +1 -1
- package/dist/services/transactions/__tests__/proof-cache.test.js.map +1 -1
- package/dist/services/transactions/__tests__/tx-cross-contract-calls.test.js.map +1 -1
- package/dist/services/transactions/__tests__/tx-encrypt-base-token.test.js.map +1 -1
- package/dist/services/transactions/__tests__/tx-gas-details.test.js.map +1 -1
- package/dist/services/transactions/__tests__/tx-notes.test.js.map +1 -1
- package/dist/services/transactions/__tests__/tx-transfer.test.js.map +1 -1
- package/dist/services/transactions/proof-cache.d.ts +1 -1
- package/dist/services/transactions/proof-cache.js.map +1 -1
- package/dist/services/transactions/tx-cross-contract-calls.d.ts +2 -2
- package/dist/services/transactions/tx-cross-contract-calls.js.map +1 -1
- package/dist/services/transactions/tx-decrypt.d.ts +1 -1
- package/dist/services/transactions/tx-decrypt.js.map +1 -1
- package/dist/services/transactions/tx-encrypt-base-token.d.ts +1 -1
- package/dist/services/transactions/tx-encrypt-base-token.js.map +1 -1
- package/dist/services/transactions/tx-encrypt.d.ts +1 -1
- package/dist/services/transactions/tx-encrypt.js.map +1 -1
- package/dist/services/transactions/tx-gas-broadcaster-fee-estimator.d.ts +2 -2
- package/dist/services/transactions/tx-gas-broadcaster-fee-estimator.js.map +1 -1
- package/dist/services/transactions/tx-gas-details.d.ts +1 -1
- package/dist/services/transactions/tx-gas-details.js.map +1 -1
- package/dist/services/transactions/tx-generator.d.ts +2 -2
- package/dist/services/transactions/tx-generator.js.map +1 -1
- package/dist/services/transactions/tx-notes.d.ts +2 -2
- package/dist/services/transactions/tx-notes.js.map +1 -1
- package/dist/services/transactions/tx-nullifiers.d.ts +1 -1
- package/dist/services/transactions/tx-nullifiers.js.map +1 -1
- package/dist/services/transactions/tx-proof-decrypt.d.ts +1 -1
- package/dist/services/transactions/tx-proof-decrypt.js.map +1 -1
- package/dist/services/transactions/tx-proof-transfer.d.ts +1 -1
- package/dist/services/transactions/tx-proof-transfer.js.map +1 -1
- package/dist/services/transactions/tx-transfer.d.ts +1 -1
- package/dist/services/transactions/tx-transfer.js.map +1 -1
- package/dist/tests/helper.test.d.ts +1 -1
- package/dist/tests/helper.test.js.map +1 -1
- package/dist/tests/mocks.test.d.ts +2 -2
- package/dist/tests/mocks.test.js.map +1 -1
- package/dist/tests/poi/test-wallet-poi-requester.test.d.ts +2 -2
- package/dist/tests/poi/test-wallet-poi-requester.test.js.map +1 -1
- package/dist/tests/setup.test.d.ts +1 -1
- package/dist/tests/setup.test.js.map +1 -1
- package/dist/tests/stubs/engine-stubs.test.d.ts +1 -1
- package/dist/tests/stubs/engine-stubs.test.js.map +1 -1
- package/dist/utils/blocked-address.js.map +1 -1
- package/dist/utils/error.js.map +1 -1
- package/dist/utils/gas-price.d.ts +1 -1
- package/dist/utils/gas-price.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx-generator.js","sourceRoot":"","sources":["../../../src/services/transactions/tx-generator.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n DopWallet,\n TransactionBatch,\n AdaptID,\n OutputType,\n getTokenDataERC20,\n getTokenDataNFT,\n ERC721_NOTE_VALUE,\n NFTTokenData,\n DopVersionedSmartContracts,\n TransactionStructV2,\n TransactionStructV3,\n RelayAdaptVersionedSmartContracts,\n} from 'dop-engine-v3';\nimport {\n DopERC20Amount,\n DopERC20AmountRecipient,\n NetworkName,\n NETWORK_CONFIG,\n ProofType,\n DopNFTAmountRecipient,\n NFTTokenType,\n TXIDVersion,\n} from 'dop-sharedmodels-v3';\nimport {\n erc20NoteFromERC20AmountRecipient,\n nftNoteFromNFTAmountRecipient,\n} from './tx-notes';\nimport { getProver } from '../dop/core/prover';\nimport {\n assertValidEthAddress,\n assertValidDopAddress,\n fullWalletForID,\n walletForID,\n} from '../dop/wallets/wallets';\nimport { assertNotBlockedAddress } from '../../utils/blocked-address';\nimport { shouldSetOverallBatchMinGasPriceForNetwork } from '../../utils/gas-price';\nimport { ContractTransaction } from 'ethers';\n\nconst DUMMY_AMOUNT = 0n;\nexport const DUMMY_FROM_ADDRESS = '0x000000000000000000000000000000000000dEaD';\n\nexport type GenerateTransactionsProgressCallback = (\n progress: number,\n status: string,\n) => void;\n\nexport const generateProofTransactions = async (\n proofType: ProofType,\n networkName: NetworkName,\n dopWalletID: string,\n txidVersion: TXIDVersion,\n encryptionKey: string,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n erc20AmountRecipients: DopERC20AmountRecipient[],\n nftAmountRecipients: DopNFTAmountRecipient[],\n broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient>,\n sendWithPublicWallet: boolean,\n relayAdaptID: Optional<AdaptID>,\n useDummyProof: boolean,\n overallBatchMinGasPrice: Optional<bigint>,\n progressCallback: GenerateTransactionsProgressCallback,\n originEncryptTxidForSpendabilityOverride?: string,\n): Promise<{\n provedTransactions: (TransactionStructV2 | TransactionStructV3)[];\n}> => {\n const dopWallet = fullWalletForID(dopWalletID);\n\n console.log(\"dopWallet\", dopWallet)\n\n const txs = await transactionsFromERC20Amounts(\n proofType,\n erc20AmountRecipients,\n nftAmountRecipients,\n dopWallet,\n txidVersion,\n encryptionKey,\n showSenderAddressToRecipient,\n memoText,\n networkName,\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n relayAdaptID,\n useDummyProof,\n overallBatchMinGasPrice,\n progressCallback,\n originEncryptTxidForSpendabilityOverride,\n );\n return txs;\n};\n\nexport const nullifiersForTransactions = (\n transactions: (TransactionStructV2 | TransactionStructV3)[],\n): string[] => {\n return transactions\n .map(transaction => transaction.nullifiers)\n .flat() as string[];\n};\n\nexport const createDummyBroadcasterFeeERC20Amount = (feeTokenAddress: string) => {\n const broadcasterFeeERC20Amount: DopERC20Amount = {\n tokenAddress: feeTokenAddress,\n amount: DUMMY_AMOUNT,\n };\n return broadcasterFeeERC20Amount;\n};\n\nexport const generateDummyProofTransactions = async (\n proofType: ProofType,\n networkName: NetworkName,\n dopWalletID: string,\n txidVersion: TXIDVersion,\n encryptionKey: string,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n erc20AmountRecipients: DopERC20AmountRecipient[],\n nftAmountRecipients: DopNFTAmountRecipient[],\n broadcasterFeeERC20Amount: Optional<DopERC20Amount>,\n sendWithPublicWallet: boolean,\n overallBatchMinGasPrice: Optional<bigint>,\n originEncryptTxidForSpendabilityOverride?: string,\n): Promise<(TransactionStructV2 | TransactionStructV3)[]> => {\n if (!broadcasterFeeERC20Amount && !sendWithPublicWallet) {\n throw new Error('Must send with broadcaster or public wallet.');\n }\n\n const dopWallet = walletForID(dopWalletID);\n\n // Use self-wallet as dummy broadcaster address.\n const broadcasterDopAddress = dopWallet.getAddress(undefined);\n\n const broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient> =\n broadcasterFeeERC20Amount\n ? {\n ...broadcasterFeeERC20Amount,\n recipientAddress: broadcasterDopAddress,\n }\n : undefined;\n\n return (\n await generateProofTransactions(\n proofType,\n networkName,\n dopWalletID,\n txidVersion,\n encryptionKey,\n showSenderAddressToRecipient,\n memoText,\n erc20AmountRecipients,\n nftAmountRecipients,\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n undefined, // relayAdaptID\n true, // useDummyProof\n overallBatchMinGasPrice,\n () => {}, // progressCallback (not necessary for dummy txs)\n originEncryptTxidForSpendabilityOverride,\n )\n ).provedTransactions;\n};\n\nexport const generateTransact = async (\n txidVersion: TXIDVersion,\n txs: (TransactionStructV2 | TransactionStructV3)[],\n networkName: NetworkName,\n value: bigint,\n useDummyProof = false,\n): Promise<ContractTransaction> => {\n const chain = NETWORK_CONFIG[networkName].chain;\n const transaction = await DopVersionedSmartContracts.generateTransact(\n txidVersion,\n chain,\n txs,\n );\n if (useDummyProof) {\n return {\n ...transaction,\n from: DUMMY_FROM_ADDRESS,\n value,\n };\n }\n return transaction;\n};\n\nexport const generateDecryptBaseToken = async (\n txidVersion: TXIDVersion,\n txs: (TransactionStructV2 | TransactionStructV3)[],\n networkName: NetworkName,\n toWalletAddress: string,\n relayAdaptParamsRandom: string,\n useDummyProof = false,\n): Promise<ContractTransaction> => {\n assertValidEthAddress(toWalletAddress);\n assertNotBlockedAddress(toWalletAddress);\n\n const chain = NETWORK_CONFIG[networkName].chain;\n\n const transaction =\n await RelayAdaptVersionedSmartContracts.populateDecryptBaseToken(\n txidVersion,\n chain,\n txs,\n toWalletAddress,\n relayAdaptParamsRandom,\n );\n if (useDummyProof) {\n return {\n ...transaction,\n from: DUMMY_FROM_ADDRESS,\n };\n }\n return transaction;\n};\n\nconst transactionsFromERC20Amounts = async (\n proofType: ProofType,\n erc20AmountRecipients: DopERC20AmountRecipient[],\n nftAmountRecipients: DopNFTAmountRecipient[],\n dopWallet: DopWallet,\n txidVersion: TXIDVersion,\n encryptionKey: string,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n networkName: NetworkName,\n broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient>,\n sendWithPublicWallet: boolean,\n relayAdaptID: Optional<AdaptID>,\n useDummyProof: boolean,\n overallBatchMinGasPrice: Optional<bigint>,\n progressCallback: GenerateTransactionsProgressCallback,\n originEncryptTxidForSpendabilityOverride?: string,\n): Promise<{\n provedTransactions: (TransactionStructV2 | TransactionStructV3)[];\n}> => {\n const network = NETWORK_CONFIG[networkName];\n const { chain } = network;\n\n\n // Removes overallBatchMinGasPrice for L2 networks and non-Broadcaster transactions.\n const validatedOverallBatchMinGasPrice =\n shouldSetOverallBatchMinGasPriceForNetwork(\n sendWithPublicWallet,\n networkName,\n )\n ? BigInt(overallBatchMinGasPrice ?? 0)\n : BigInt(0);\n\n const transactionBatch = new TransactionBatch(\n chain,\n validatedOverallBatchMinGasPrice,\n );\n console.log(\"transactionBatch 0: \", transactionBatch)\n\n if (relayAdaptID) {\n transactionBatch.setAdaptID(relayAdaptID);\n }\n\n if (broadcasterFeeERC20AmountRecipient && !sendWithPublicWallet) {\n assertValidDopAddress(broadcasterFeeERC20AmountRecipient.recipientAddress);\n\n // Add Broadcaster Fee - must be first transaction in the batch, and first output for the transaction.\n transactionBatch.addOutput(\n erc20NoteFromERC20AmountRecipient(\n broadcasterFeeERC20AmountRecipient,\n dopWallet,\n OutputType.BroadcasterFee,\n false, // showSenderAddressToRecipient - never show sender for Broadcaster fees\n undefined, // memoText\n ),\n );\n }\n\n\n nftAmountRecipients.forEach(\n (nftAmountRecipient: DopNFTAmountRecipient) => {\n addTransactionOutputsNFT(\n proofType,\n transactionBatch,\n nftAmountRecipient,\n dopWallet,\n showSenderAddressToRecipient,\n memoText,\n );\n },\n );\n\n console.log(\"transactionBatch 11: \", transactionBatch)\n\n erc20AmountRecipients.forEach(\n (erc20AmountRecipient: DopERC20AmountRecipient) => {\n addTransactionOutputsERC20(\n proofType,\n transactionBatch,\n erc20AmountRecipient,\n dopWallet,\n showSenderAddressToRecipient,\n memoText,\n );\n },\n );\n\n console.log(\"transactionBatch 22: \", transactionBatch)\n\n const txBatches = await generateAllProofs(\n transactionBatch,\n dopWallet,\n txidVersion,\n encryptionKey,\n useDummyProof,\n progressCallback,\n originEncryptTxidForSpendabilityOverride,\n );\n console.log(\"txBatches 0: \", txBatches)\n\n return txBatches;\n};\n\nconst addTransactionOutputsERC20 = (\n proofType: ProofType,\n transactionBatch: TransactionBatch,\n erc20AmountRecipient: DopERC20AmountRecipient,\n dopWallet: DopWallet,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n) => {\n switch (proofType) {\n case ProofType.Transfer: {\n addTransactionOutputsTransferERC20(\n transactionBatch,\n erc20AmountRecipient,\n dopWallet,\n showSenderAddressToRecipient,\n memoText,\n );\n break;\n }\n case ProofType.CrossContractCalls:\n case ProofType.DecryptBaseToken:\n case ProofType.Decrypt: {\n addTransactionOutputsDecryptERC20(\n transactionBatch,\n erc20AmountRecipient,\n false, // allowOverride\n );\n break;\n }\n }\n};\n\nconst addTransactionOutputsNFT = (\n proofType: ProofType,\n transactionBatch: TransactionBatch,\n nftAmountRecipient: DopNFTAmountRecipient,\n dopWallet: DopWallet,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n) => {\n switch (proofType) {\n case ProofType.Transfer: {\n addTransactionOutputsTransferNFT(\n transactionBatch,\n nftAmountRecipient,\n dopWallet,\n showSenderAddressToRecipient,\n memoText,\n );\n break;\n }\n case ProofType.CrossContractCalls:\n case ProofType.DecryptBaseToken:\n case ProofType.Decrypt: {\n addTransactionOutputsDecryptNFT(\n transactionBatch,\n nftAmountRecipient,\n false, // allowOverride\n );\n break;\n }\n }\n};\n\nconst addTransactionOutputsTransferERC20 = (\n transactionBatch: TransactionBatch,\n erc20AmountRecipient: DopERC20AmountRecipient,\n dopWallet: DopWallet,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n) => {\n assertValidDopAddress(erc20AmountRecipient.recipientAddress);\n\n transactionBatch.addOutput(\n erc20NoteFromERC20AmountRecipient(\n erc20AmountRecipient,\n dopWallet,\n OutputType.Transfer,\n showSenderAddressToRecipient,\n memoText,\n ),\n );\n};\n\nconst addTransactionOutputsDecryptERC20 = (\n transactionBatch: TransactionBatch,\n erc20AmountRecipient: DopERC20AmountRecipient,\n allowOverride?: boolean,\n) => {\n const { recipientAddress, amount } = erc20AmountRecipient;\n\n assertValidEthAddress(recipientAddress);\n assertNotBlockedAddress(recipientAddress);\n\n const tokenData = getTokenDataERC20(erc20AmountRecipient.tokenAddress);\n\n transactionBatch.addDecryptData({\n toAddress: erc20AmountRecipient.recipientAddress,\n value: amount,\n tokenData,\n allowOverride,\n });\n};\n\nconst addTransactionOutputsTransferNFT = (\n transactionBatch: TransactionBatch,\n nftAmountRecipient: DopNFTAmountRecipient,\n dopWallet: DopWallet,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n) => {\n assertValidDopAddress(nftAmountRecipient.recipientAddress);\n\n transactionBatch.addOutput(\n nftNoteFromNFTAmountRecipient(\n nftAmountRecipient,\n dopWallet,\n showSenderAddressToRecipient,\n memoText,\n ),\n );\n};\n\nconst addTransactionOutputsDecryptNFT = (\n transactionBatch: TransactionBatch,\n nftAmountRecipient: DopNFTAmountRecipient,\n allowOverride?: boolean,\n) => {\n const { recipientAddress, nftAddress, tokenSubID, nftTokenType, amount } =\n nftAmountRecipient;\n\n assertValidEthAddress(recipientAddress);\n assertNotBlockedAddress(recipientAddress);\n\n const tokenData: NFTTokenData = getTokenDataNFT(\n nftAddress,\n nftTokenType as 1 | 2,\n tokenSubID,\n );\n\n const value: bigint =\n nftTokenType === NFTTokenType.ERC721 ? ERC721_NOTE_VALUE : amount;\n\n transactionBatch.addDecryptData({\n toAddress: recipientAddress,\n value,\n tokenData,\n allowOverride,\n });\n};\n\nconst generateAllProofs = async (\n transactionBatch: TransactionBatch,\n dopWallet: DopWallet,\n txidVersion: TXIDVersion,\n encryptionKey: string,\n useDummyProof: boolean,\n progressCallback: GenerateTransactionsProgressCallback,\n originEncryptTxidForSpendabilityOverride?: string,\n): Promise<{\n provedTransactions: (TransactionStructV2 | TransactionStructV3)[];\n}> => {\n const prover = getProver();\n if (useDummyProof) {\n return {\n provedTransactions: await transactionBatch.generateDummyTransactions(\n prover,\n dopWallet,\n txidVersion,\n encryptionKey,\n originEncryptTxidForSpendabilityOverride,\n ),\n };\n }\n return transactionBatch.generateTransactions(\n prover,\n dopWallet,\n txidVersion,\n encryptionKey,\n progressCallback,\n false,\n originEncryptTxidForSpendabilityOverride,\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"tx-generator.js","sourceRoot":"","sources":["../../../src/services/transactions/tx-generator.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n DopWallet,\n TransactionBatch,\n AdaptID,\n OutputType,\n getTokenDataERC20,\n getTokenDataNFT,\n ERC721_NOTE_VALUE,\n NFTTokenData,\n DopVersionedSmartContracts,\n TransactionStructV2,\n TransactionStructV3,\n RelayAdaptVersionedSmartContracts,\n} from 'dop-engine-v5';\nimport {\n DopERC20Amount,\n DopERC20AmountRecipient,\n NetworkName,\n NETWORK_CONFIG,\n ProofType,\n DopNFTAmountRecipient,\n NFTTokenType,\n TXIDVersion,\n} from 'dop-sharedmodels-v5';\nimport {\n erc20NoteFromERC20AmountRecipient,\n nftNoteFromNFTAmountRecipient,\n} from './tx-notes';\nimport { getProver } from '../dop/core/prover';\nimport {\n assertValidEthAddress,\n assertValidDopAddress,\n fullWalletForID,\n walletForID,\n} from '../dop/wallets/wallets';\nimport { assertNotBlockedAddress } from '../../utils/blocked-address';\nimport { shouldSetOverallBatchMinGasPriceForNetwork } from '../../utils/gas-price';\nimport { ContractTransaction } from 'ethers';\n\nconst DUMMY_AMOUNT = 0n;\nexport const DUMMY_FROM_ADDRESS = '0x000000000000000000000000000000000000dEaD';\n\nexport type GenerateTransactionsProgressCallback = (\n progress: number,\n status: string,\n) => void;\n\nexport const generateProofTransactions = async (\n proofType: ProofType,\n networkName: NetworkName,\n dopWalletID: string,\n txidVersion: TXIDVersion,\n encryptionKey: string,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n erc20AmountRecipients: DopERC20AmountRecipient[],\n nftAmountRecipients: DopNFTAmountRecipient[],\n broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient>,\n sendWithPublicWallet: boolean,\n relayAdaptID: Optional<AdaptID>,\n useDummyProof: boolean,\n overallBatchMinGasPrice: Optional<bigint>,\n progressCallback: GenerateTransactionsProgressCallback,\n originEncryptTxidForSpendabilityOverride?: string,\n): Promise<{\n provedTransactions: (TransactionStructV2 | TransactionStructV3)[];\n}> => {\n const dopWallet = fullWalletForID(dopWalletID);\n\n console.log(\"dopWallet\", dopWallet)\n\n const txs = await transactionsFromERC20Amounts(\n proofType,\n erc20AmountRecipients,\n nftAmountRecipients,\n dopWallet,\n txidVersion,\n encryptionKey,\n showSenderAddressToRecipient,\n memoText,\n networkName,\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n relayAdaptID,\n useDummyProof,\n overallBatchMinGasPrice,\n progressCallback,\n originEncryptTxidForSpendabilityOverride,\n );\n return txs;\n};\n\nexport const nullifiersForTransactions = (\n transactions: (TransactionStructV2 | TransactionStructV3)[],\n): string[] => {\n return transactions\n .map(transaction => transaction.nullifiers)\n .flat() as string[];\n};\n\nexport const createDummyBroadcasterFeeERC20Amount = (feeTokenAddress: string) => {\n const broadcasterFeeERC20Amount: DopERC20Amount = {\n tokenAddress: feeTokenAddress,\n amount: DUMMY_AMOUNT,\n };\n return broadcasterFeeERC20Amount;\n};\n\nexport const generateDummyProofTransactions = async (\n proofType: ProofType,\n networkName: NetworkName,\n dopWalletID: string,\n txidVersion: TXIDVersion,\n encryptionKey: string,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n erc20AmountRecipients: DopERC20AmountRecipient[],\n nftAmountRecipients: DopNFTAmountRecipient[],\n broadcasterFeeERC20Amount: Optional<DopERC20Amount>,\n sendWithPublicWallet: boolean,\n overallBatchMinGasPrice: Optional<bigint>,\n originEncryptTxidForSpendabilityOverride?: string,\n): Promise<(TransactionStructV2 | TransactionStructV3)[]> => {\n if (!broadcasterFeeERC20Amount && !sendWithPublicWallet) {\n throw new Error('Must send with broadcaster or public wallet.');\n }\n\n const dopWallet = walletForID(dopWalletID);\n\n // Use self-wallet as dummy broadcaster address.\n const broadcasterDopAddress = dopWallet.getAddress(undefined);\n\n const broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient> =\n broadcasterFeeERC20Amount\n ? {\n ...broadcasterFeeERC20Amount,\n recipientAddress: broadcasterDopAddress,\n }\n : undefined;\n\n return (\n await generateProofTransactions(\n proofType,\n networkName,\n dopWalletID,\n txidVersion,\n encryptionKey,\n showSenderAddressToRecipient,\n memoText,\n erc20AmountRecipients,\n nftAmountRecipients,\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n undefined, // relayAdaptID\n true, // useDummyProof\n overallBatchMinGasPrice,\n () => {}, // progressCallback (not necessary for dummy txs)\n originEncryptTxidForSpendabilityOverride,\n )\n ).provedTransactions;\n};\n\nexport const generateTransact = async (\n txidVersion: TXIDVersion,\n txs: (TransactionStructV2 | TransactionStructV3)[],\n networkName: NetworkName,\n value: bigint,\n useDummyProof = false,\n): Promise<ContractTransaction> => {\n const chain = NETWORK_CONFIG[networkName].chain;\n const transaction = await DopVersionedSmartContracts.generateTransact(\n txidVersion,\n chain,\n txs,\n );\n if (useDummyProof) {\n return {\n ...transaction,\n from: DUMMY_FROM_ADDRESS,\n value,\n };\n }\n return transaction;\n};\n\nexport const generateDecryptBaseToken = async (\n txidVersion: TXIDVersion,\n txs: (TransactionStructV2 | TransactionStructV3)[],\n networkName: NetworkName,\n toWalletAddress: string,\n relayAdaptParamsRandom: string,\n useDummyProof = false,\n): Promise<ContractTransaction> => {\n assertValidEthAddress(toWalletAddress);\n assertNotBlockedAddress(toWalletAddress);\n\n const chain = NETWORK_CONFIG[networkName].chain;\n\n const transaction =\n await RelayAdaptVersionedSmartContracts.populateDecryptBaseToken(\n txidVersion,\n chain,\n txs,\n toWalletAddress,\n relayAdaptParamsRandom,\n );\n if (useDummyProof) {\n return {\n ...transaction,\n from: DUMMY_FROM_ADDRESS,\n };\n }\n return transaction;\n};\n\nconst transactionsFromERC20Amounts = async (\n proofType: ProofType,\n erc20AmountRecipients: DopERC20AmountRecipient[],\n nftAmountRecipients: DopNFTAmountRecipient[],\n dopWallet: DopWallet,\n txidVersion: TXIDVersion,\n encryptionKey: string,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n networkName: NetworkName,\n broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient>,\n sendWithPublicWallet: boolean,\n relayAdaptID: Optional<AdaptID>,\n useDummyProof: boolean,\n overallBatchMinGasPrice: Optional<bigint>,\n progressCallback: GenerateTransactionsProgressCallback,\n originEncryptTxidForSpendabilityOverride?: string,\n): Promise<{\n provedTransactions: (TransactionStructV2 | TransactionStructV3)[];\n}> => {\n const network = NETWORK_CONFIG[networkName];\n const { chain } = network;\n\n\n // Removes overallBatchMinGasPrice for L2 networks and non-Broadcaster transactions.\n const validatedOverallBatchMinGasPrice =\n shouldSetOverallBatchMinGasPriceForNetwork(\n sendWithPublicWallet,\n networkName,\n )\n ? BigInt(overallBatchMinGasPrice ?? 0)\n : BigInt(0);\n\n const transactionBatch = new TransactionBatch(\n chain,\n validatedOverallBatchMinGasPrice,\n );\n console.log(\"transactionBatch 0: \", transactionBatch)\n\n if (relayAdaptID) {\n transactionBatch.setAdaptID(relayAdaptID);\n }\n\n if (broadcasterFeeERC20AmountRecipient && !sendWithPublicWallet) {\n assertValidDopAddress(broadcasterFeeERC20AmountRecipient.recipientAddress);\n\n // Add Broadcaster Fee - must be first transaction in the batch, and first output for the transaction.\n transactionBatch.addOutput(\n erc20NoteFromERC20AmountRecipient(\n broadcasterFeeERC20AmountRecipient,\n dopWallet,\n OutputType.BroadcasterFee,\n false, // showSenderAddressToRecipient - never show sender for Broadcaster fees\n undefined, // memoText\n ),\n );\n }\n\n\n nftAmountRecipients.forEach(\n (nftAmountRecipient: DopNFTAmountRecipient) => {\n addTransactionOutputsNFT(\n proofType,\n transactionBatch,\n nftAmountRecipient,\n dopWallet,\n showSenderAddressToRecipient,\n memoText,\n );\n },\n );\n\n console.log(\"transactionBatch 11: \", transactionBatch)\n\n erc20AmountRecipients.forEach(\n (erc20AmountRecipient: DopERC20AmountRecipient) => {\n addTransactionOutputsERC20(\n proofType,\n transactionBatch,\n erc20AmountRecipient,\n dopWallet,\n showSenderAddressToRecipient,\n memoText,\n );\n },\n );\n\n console.log(\"transactionBatch 22: \", transactionBatch)\n\n const txBatches = await generateAllProofs(\n transactionBatch,\n dopWallet,\n txidVersion,\n encryptionKey,\n useDummyProof,\n progressCallback,\n originEncryptTxidForSpendabilityOverride,\n );\n console.log(\"txBatches 0: \", txBatches)\n\n return txBatches;\n};\n\nconst addTransactionOutputsERC20 = (\n proofType: ProofType,\n transactionBatch: TransactionBatch,\n erc20AmountRecipient: DopERC20AmountRecipient,\n dopWallet: DopWallet,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n) => {\n switch (proofType) {\n case ProofType.Transfer: {\n addTransactionOutputsTransferERC20(\n transactionBatch,\n erc20AmountRecipient,\n dopWallet,\n showSenderAddressToRecipient,\n memoText,\n );\n break;\n }\n case ProofType.CrossContractCalls:\n case ProofType.DecryptBaseToken:\n case ProofType.Decrypt: {\n addTransactionOutputsDecryptERC20(\n transactionBatch,\n erc20AmountRecipient,\n false, // allowOverride\n );\n break;\n }\n }\n};\n\nconst addTransactionOutputsNFT = (\n proofType: ProofType,\n transactionBatch: TransactionBatch,\n nftAmountRecipient: DopNFTAmountRecipient,\n dopWallet: DopWallet,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n) => {\n switch (proofType) {\n case ProofType.Transfer: {\n addTransactionOutputsTransferNFT(\n transactionBatch,\n nftAmountRecipient,\n dopWallet,\n showSenderAddressToRecipient,\n memoText,\n );\n break;\n }\n case ProofType.CrossContractCalls:\n case ProofType.DecryptBaseToken:\n case ProofType.Decrypt: {\n addTransactionOutputsDecryptNFT(\n transactionBatch,\n nftAmountRecipient,\n false, // allowOverride\n );\n break;\n }\n }\n};\n\nconst addTransactionOutputsTransferERC20 = (\n transactionBatch: TransactionBatch,\n erc20AmountRecipient: DopERC20AmountRecipient,\n dopWallet: DopWallet,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n) => {\n assertValidDopAddress(erc20AmountRecipient.recipientAddress);\n\n transactionBatch.addOutput(\n erc20NoteFromERC20AmountRecipient(\n erc20AmountRecipient,\n dopWallet,\n OutputType.Transfer,\n showSenderAddressToRecipient,\n memoText,\n ),\n );\n};\n\nconst addTransactionOutputsDecryptERC20 = (\n transactionBatch: TransactionBatch,\n erc20AmountRecipient: DopERC20AmountRecipient,\n allowOverride?: boolean,\n) => {\n const { recipientAddress, amount } = erc20AmountRecipient;\n\n assertValidEthAddress(recipientAddress);\n assertNotBlockedAddress(recipientAddress);\n\n const tokenData = getTokenDataERC20(erc20AmountRecipient.tokenAddress);\n\n transactionBatch.addDecryptData({\n toAddress: erc20AmountRecipient.recipientAddress,\n value: amount,\n tokenData,\n allowOverride,\n });\n};\n\nconst addTransactionOutputsTransferNFT = (\n transactionBatch: TransactionBatch,\n nftAmountRecipient: DopNFTAmountRecipient,\n dopWallet: DopWallet,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n) => {\n assertValidDopAddress(nftAmountRecipient.recipientAddress);\n\n transactionBatch.addOutput(\n nftNoteFromNFTAmountRecipient(\n nftAmountRecipient,\n dopWallet,\n showSenderAddressToRecipient,\n memoText,\n ),\n );\n};\n\nconst addTransactionOutputsDecryptNFT = (\n transactionBatch: TransactionBatch,\n nftAmountRecipient: DopNFTAmountRecipient,\n allowOverride?: boolean,\n) => {\n const { recipientAddress, nftAddress, tokenSubID, nftTokenType, amount } =\n nftAmountRecipient;\n\n assertValidEthAddress(recipientAddress);\n assertNotBlockedAddress(recipientAddress);\n\n const tokenData: NFTTokenData = getTokenDataNFT(\n nftAddress,\n nftTokenType as 1 | 2,\n tokenSubID,\n );\n\n const value: bigint =\n nftTokenType === NFTTokenType.ERC721 ? ERC721_NOTE_VALUE : amount;\n\n transactionBatch.addDecryptData({\n toAddress: recipientAddress,\n value,\n tokenData,\n allowOverride,\n });\n};\n\nconst generateAllProofs = async (\n transactionBatch: TransactionBatch,\n dopWallet: DopWallet,\n txidVersion: TXIDVersion,\n encryptionKey: string,\n useDummyProof: boolean,\n progressCallback: GenerateTransactionsProgressCallback,\n originEncryptTxidForSpendabilityOverride?: string,\n): Promise<{\n provedTransactions: (TransactionStructV2 | TransactionStructV3)[];\n}> => {\n const prover = getProver();\n if (useDummyProof) {\n return {\n provedTransactions: await transactionBatch.generateDummyTransactions(\n prover,\n dopWallet,\n txidVersion,\n encryptionKey,\n originEncryptTxidForSpendabilityOverride,\n ),\n };\n }\n return transactionBatch.generateTransactions(\n prover,\n dopWallet,\n txidVersion,\n encryptionKey,\n progressCallback,\n false,\n originEncryptTxidForSpendabilityOverride,\n );\n};\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { OutputType, TransactNote, DopWallet } from 'dop-engine-
|
|
2
|
-
import { DopNFTAmountRecipient, DopERC20Amount, DopERC20AmountRecipient, DopNFTAmount, DopERC20Recipient } from 'dop-sharedmodels-
|
|
1
|
+
import { OutputType, TransactNote, DopWallet } from 'dop-engine-v5';
|
|
2
|
+
import { DopNFTAmountRecipient, DopERC20Amount, DopERC20AmountRecipient, DopNFTAmount, DopERC20Recipient } from 'dop-sharedmodels-v5';
|
|
3
3
|
export declare const erc20NoteFromERC20AmountRecipient: (erc20AmountRecipient: DopERC20AmountRecipient, dopWallet: DopWallet, outputType: OutputType, showSenderAddressToRecipient: boolean, memoText: Optional<string>) => TransactNote;
|
|
4
4
|
export declare const nftNoteFromNFTAmountRecipient: (nftAmountRecipient: DopNFTAmountRecipient, dopWallet: DopWallet, showSenderAddressToRecipient: boolean, memoText: Optional<string>) => TransactNote;
|
|
5
5
|
export declare const compareERC20AmountRecipients: (a: Optional<DopERC20AmountRecipient>, b: Optional<DopERC20AmountRecipient>) => boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx-notes.js","sourceRoot":"","sources":["../../../src/services/transactions/tx-notes.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n OutputType,\n TransactNote,\n DopWallet,\n DopEngine,\n getTokenDataERC20,\n getTokenDataNFT,\n} from 'dop-engine-v3';\nimport {\n NFTTokenType,\n DopNFTAmountRecipient,\n DopERC20Amount,\n DopERC20AmountRecipient,\n DopNFTAmount,\n DopERC20Recipient,\n} from 'dop-sharedmodels-v3';\n\nexport const erc20NoteFromERC20AmountRecipient = (\n erc20AmountRecipient: DopERC20AmountRecipient,\n dopWallet: DopWallet,\n outputType: OutputType,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n): TransactNote => {\n const { amount, recipientAddress } = erc20AmountRecipient;\n\n const receiverAddressData = DopEngine.decodeAddress(recipientAddress);\n\n const tokenData = getTokenDataERC20(erc20AmountRecipient.tokenAddress);\n\n return TransactNote.createTransfer(\n receiverAddressData,\n dopWallet.addressKeys,\n amount,\n tokenData,\n showSenderAddressToRecipient,\n outputType,\n memoText,\n );\n};\n\nexport const nftNoteFromNFTAmountRecipient = (\n nftAmountRecipient: DopNFTAmountRecipient,\n dopWallet: DopWallet,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n): TransactNote => {\n const { recipientAddress, nftAddress, nftTokenType, tokenSubID, amount } =\n nftAmountRecipient;\n\n const receiverAddressData = DopEngine.decodeAddress(recipientAddress);\n\n const tokenData = getTokenDataNFT(\n nftAddress,\n nftTokenType as 1 | 2,\n tokenSubID,\n );\n\n switch (nftTokenType) {\n case NFTTokenType.ERC721:\n return TransactNote.createERC721Transfer(\n receiverAddressData,\n dopWallet.addressKeys,\n tokenData,\n showSenderAddressToRecipient,\n memoText,\n );\n case NFTTokenType.ERC1155:\n return TransactNote.createERC1155Transfer(\n receiverAddressData,\n dopWallet.addressKeys,\n tokenData,\n BigInt(amount),\n showSenderAddressToRecipient,\n memoText,\n );\n }\n};\n\nconst compareERC20Amounts = (\n a: Optional<DopERC20Amount>,\n b: Optional<DopERC20Amount>,\n) => {\n return a?.tokenAddress === b?.tokenAddress && a?.amount === b?.amount;\n};\n\nexport const compareERC20AmountRecipients = (\n a: Optional<DopERC20AmountRecipient>,\n b: Optional<DopERC20AmountRecipient>,\n) => {\n return (\n compareERC20Amounts(a, b) && a?.recipientAddress === b?.recipientAddress\n );\n};\n\nexport const compareERC20AmountArrays = (\n a: Optional<DopERC20Amount[]>,\n b: Optional<DopERC20Amount[]>,\n) => {\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n for (const erc20Amount of a) {\n const found = b.find(ta => ta.tokenAddress === erc20Amount.tokenAddress);\n if (!found) {\n return false;\n }\n if (found.amount !== erc20Amount.amount) {\n return false;\n }\n }\n return true;\n};\n\nexport const compareERC20AmountRecipientArrays = (\n a: Optional<DopERC20AmountRecipient[]>,\n b: Optional<DopERC20AmountRecipient[]>,\n) => {\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n for (const erc20Amount of a) {\n const found = b.find(\n ta =>\n ta.tokenAddress === erc20Amount.tokenAddress &&\n ta.recipientAddress === erc20Amount.recipientAddress,\n );\n if (!found) {\n return false;\n }\n if (found.amount !== erc20Amount.amount) {\n return false;\n }\n }\n return true;\n};\n\nexport const compareERC20RecipientArrays = (\n a: Optional<DopERC20Recipient[]>,\n b: Optional<DopERC20Recipient[]>,\n) => {\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n for (const erc20Recipient of a) {\n const found =\n b.find(\n ta =>\n ta.tokenAddress === erc20Recipient.tokenAddress &&\n ta.recipientAddress === erc20Recipient.recipientAddress,\n ) != null;\n if (!found) {\n return false;\n }\n }\n return true;\n};\n\nexport const compareNFTAmountArrays = (\n a: Optional<DopNFTAmount[]>,\n b: Optional<DopNFTAmount[]>,\n) => {\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n for (const nftAmountRecipient of a) {\n const found = b.find(\n ta =>\n ta.nftAddress === nftAmountRecipient.nftAddress &&\n ta.tokenSubID === nftAmountRecipient.tokenSubID,\n );\n if (!found) {\n return false;\n }\n if (found.nftTokenType !== nftAmountRecipient.nftTokenType) {\n return false;\n }\n if (found.amount !== nftAmountRecipient.amount) {\n return false;\n }\n }\n return true;\n};\n\nexport const compareNFTAmountRecipientArrays = (\n a: Optional<DopNFTAmountRecipient[]>,\n b: Optional<DopNFTAmountRecipient[]>,\n) => {\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n for (const nftAmountRecipient of a) {\n const found = b.find(\n ta =>\n ta.nftAddress === nftAmountRecipient.nftAddress &&\n ta.tokenSubID === nftAmountRecipient.tokenSubID,\n );\n if (!found) {\n return false;\n }\n if (found.nftTokenType !== nftAmountRecipient.nftTokenType) {\n return false;\n }\n if (found.recipientAddress !== nftAmountRecipient.recipientAddress) {\n return false;\n }\n if (found.amount !== nftAmountRecipient.amount) {\n return false;\n }\n }\n return true;\n};\n\nexport { TransactNote };\n"]}
|
|
1
|
+
{"version":3,"file":"tx-notes.js","sourceRoot":"","sources":["../../../src/services/transactions/tx-notes.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n OutputType,\n TransactNote,\n DopWallet,\n DopEngine,\n getTokenDataERC20,\n getTokenDataNFT,\n} from 'dop-engine-v5';\nimport {\n NFTTokenType,\n DopNFTAmountRecipient,\n DopERC20Amount,\n DopERC20AmountRecipient,\n DopNFTAmount,\n DopERC20Recipient,\n} from 'dop-sharedmodels-v5';\n\nexport const erc20NoteFromERC20AmountRecipient = (\n erc20AmountRecipient: DopERC20AmountRecipient,\n dopWallet: DopWallet,\n outputType: OutputType,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n): TransactNote => {\n const { amount, recipientAddress } = erc20AmountRecipient;\n\n const receiverAddressData = DopEngine.decodeAddress(recipientAddress);\n\n const tokenData = getTokenDataERC20(erc20AmountRecipient.tokenAddress);\n\n return TransactNote.createTransfer(\n receiverAddressData,\n dopWallet.addressKeys,\n amount,\n tokenData,\n showSenderAddressToRecipient,\n outputType,\n memoText,\n );\n};\n\nexport const nftNoteFromNFTAmountRecipient = (\n nftAmountRecipient: DopNFTAmountRecipient,\n dopWallet: DopWallet,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n): TransactNote => {\n const { recipientAddress, nftAddress, nftTokenType, tokenSubID, amount } =\n nftAmountRecipient;\n\n const receiverAddressData = DopEngine.decodeAddress(recipientAddress);\n\n const tokenData = getTokenDataNFT(\n nftAddress,\n nftTokenType as 1 | 2,\n tokenSubID,\n );\n\n switch (nftTokenType) {\n case NFTTokenType.ERC721:\n return TransactNote.createERC721Transfer(\n receiverAddressData,\n dopWallet.addressKeys,\n tokenData,\n showSenderAddressToRecipient,\n memoText,\n );\n case NFTTokenType.ERC1155:\n return TransactNote.createERC1155Transfer(\n receiverAddressData,\n dopWallet.addressKeys,\n tokenData,\n BigInt(amount),\n showSenderAddressToRecipient,\n memoText,\n );\n }\n};\n\nconst compareERC20Amounts = (\n a: Optional<DopERC20Amount>,\n b: Optional<DopERC20Amount>,\n) => {\n return a?.tokenAddress === b?.tokenAddress && a?.amount === b?.amount;\n};\n\nexport const compareERC20AmountRecipients = (\n a: Optional<DopERC20AmountRecipient>,\n b: Optional<DopERC20AmountRecipient>,\n) => {\n return (\n compareERC20Amounts(a, b) && a?.recipientAddress === b?.recipientAddress\n );\n};\n\nexport const compareERC20AmountArrays = (\n a: Optional<DopERC20Amount[]>,\n b: Optional<DopERC20Amount[]>,\n) => {\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n for (const erc20Amount of a) {\n const found = b.find(ta => ta.tokenAddress === erc20Amount.tokenAddress);\n if (!found) {\n return false;\n }\n if (found.amount !== erc20Amount.amount) {\n return false;\n }\n }\n return true;\n};\n\nexport const compareERC20AmountRecipientArrays = (\n a: Optional<DopERC20AmountRecipient[]>,\n b: Optional<DopERC20AmountRecipient[]>,\n) => {\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n for (const erc20Amount of a) {\n const found = b.find(\n ta =>\n ta.tokenAddress === erc20Amount.tokenAddress &&\n ta.recipientAddress === erc20Amount.recipientAddress,\n );\n if (!found) {\n return false;\n }\n if (found.amount !== erc20Amount.amount) {\n return false;\n }\n }\n return true;\n};\n\nexport const compareERC20RecipientArrays = (\n a: Optional<DopERC20Recipient[]>,\n b: Optional<DopERC20Recipient[]>,\n) => {\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n for (const erc20Recipient of a) {\n const found =\n b.find(\n ta =>\n ta.tokenAddress === erc20Recipient.tokenAddress &&\n ta.recipientAddress === erc20Recipient.recipientAddress,\n ) != null;\n if (!found) {\n return false;\n }\n }\n return true;\n};\n\nexport const compareNFTAmountArrays = (\n a: Optional<DopNFTAmount[]>,\n b: Optional<DopNFTAmount[]>,\n) => {\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n for (const nftAmountRecipient of a) {\n const found = b.find(\n ta =>\n ta.nftAddress === nftAmountRecipient.nftAddress &&\n ta.tokenSubID === nftAmountRecipient.tokenSubID,\n );\n if (!found) {\n return false;\n }\n if (found.nftTokenType !== nftAmountRecipient.nftTokenType) {\n return false;\n }\n if (found.amount !== nftAmountRecipient.amount) {\n return false;\n }\n }\n return true;\n};\n\nexport const compareNFTAmountRecipientArrays = (\n a: Optional<DopNFTAmountRecipient[]>,\n b: Optional<DopNFTAmountRecipient[]>,\n) => {\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n for (const nftAmountRecipient of a) {\n const found = b.find(\n ta =>\n ta.nftAddress === nftAmountRecipient.nftAddress &&\n ta.tokenSubID === nftAmountRecipient.tokenSubID,\n );\n if (!found) {\n return false;\n }\n if (found.nftTokenType !== nftAmountRecipient.nftTokenType) {\n return false;\n }\n if (found.recipientAddress !== nftAmountRecipient.recipientAddress) {\n return false;\n }\n if (found.amount !== nftAmountRecipient.amount) {\n return false;\n }\n }\n return true;\n};\n\nexport { TransactNote };\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { Chain, DopTxidFromNullifiersResponse, TXIDVersion } from 'dop-sharedmodels-
|
|
1
|
+
import { Chain, DopTxidFromNullifiersResponse, TXIDVersion } from 'dop-sharedmodels-v5';
|
|
2
2
|
export declare const getCompletedTxidFromNullifiers: (txidVersion: TXIDVersion, chain: Chain, nullifiers: string[]) => Promise<DopTxidFromNullifiersResponse>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx-nullifiers.js","sourceRoot":"","sources":["../../../src/services/transactions/tx-nullifiers.ts"],"names":[],"mappings":";;;AAKA,6CAA2D;AAC3D,+CAA+C;AAExC,MAAM,8BAA8B,GAAG,KAAK,EACjD,WAAwB,EACxB,KAAY,EACZ,UAAoB,EACoB,EAAE;IAC1C,IAAI;QACF,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;QAC3B,MAAM,IAAI,GAAqB,MAAM,MAAM,CAAC,8BAA8B,CACxE,WAAW,EACX,KAAK,EACL,UAAU,CACX,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,CAAC;KACjB;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAA,8BAAsB,EAAC,sCAA8B,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KACxE;AACH,CAAC,CAAC;AAhBW,QAAA,8BAA8B,kCAgBzC","sourcesContent":["import {\n Chain,\n DopTxidFromNullifiersResponse,\n TXIDVersion,\n} from 'dop-sharedmodels-
|
|
1
|
+
{"version":3,"file":"tx-nullifiers.js","sourceRoot":"","sources":["../../../src/services/transactions/tx-nullifiers.ts"],"names":[],"mappings":";;;AAKA,6CAA2D;AAC3D,+CAA+C;AAExC,MAAM,8BAA8B,GAAG,KAAK,EACjD,WAAwB,EACxB,KAAY,EACZ,UAAoB,EACoB,EAAE;IAC1C,IAAI;QACF,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;QAC3B,MAAM,IAAI,GAAqB,MAAM,MAAM,CAAC,8BAA8B,CACxE,WAAW,EACX,KAAK,EACL,UAAU,CACX,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,CAAC;KACjB;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAA,8BAAsB,EAAC,sCAA8B,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KACxE;AACH,CAAC,CAAC;AAhBW,QAAA,8BAA8B,kCAgBzC","sourcesContent":["import {\n Chain,\n DopTxidFromNullifiersResponse,\n TXIDVersion,\n} from 'dop-sharedmodels-v5';\nimport { reportAndSanitizeError } from '../../utils/error';\nimport { getEngine } from '../dop/core/engine';\n\nexport const getCompletedTxidFromNullifiers = async (\n txidVersion: TXIDVersion,\n chain: Chain,\n nullifiers: string[],\n): Promise<DopTxidFromNullifiersResponse> => {\n try {\n const engine = getEngine();\n const txid: Optional<string> = await engine.getCompletedTxidFromNullifiers(\n txidVersion,\n chain,\n nullifiers,\n );\n return { txid };\n } catch (err) {\n throw reportAndSanitizeError(getCompletedTxidFromNullifiers.name, err);\n }\n};\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DopERC20Amount, NetworkName, DopERC20AmountRecipient, DopNFTAmountRecipient, TXIDVersion } from 'dop-sharedmodels-
|
|
1
|
+
import { DopERC20Amount, NetworkName, DopERC20AmountRecipient, DopNFTAmountRecipient, TXIDVersion } from 'dop-sharedmodels-v5';
|
|
2
2
|
import { GenerateTransactionsProgressCallback } from './tx-generator';
|
|
3
3
|
export declare const generateDecryptProof: (txidVersion: TXIDVersion, networkName: NetworkName, dopWalletID: string, encryptionKey: string, erc20AmountRecipients: DopERC20AmountRecipient[], nftAmountRecipients: DopNFTAmountRecipient[], broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient>, sendWithPublicWallet: boolean, overallBatchMinGasPrice: Optional<bigint>, progressCallback: GenerateTransactionsProgressCallback, value: bigint) => Promise<void>;
|
|
4
4
|
export declare const generateDecryptToOriginProof: (originalEncryptTxid: string, txidVersion: TXIDVersion, networkName: NetworkName, dopWalletID: string, encryptionKey: string, erc20AmountRecipients: DopERC20AmountRecipient[], nftAmountRecipients: DopNFTAmountRecipient[], progressCallback: GenerateTransactionsProgressCallback, value: bigint) => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx-proof-decrypt.js","sourceRoot":"","sources":["../../../src/services/transactions/tx-proof-decrypt.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n DopERC20Amount,\n NetworkName,\n ProofType,\n DopERC20AmountRecipient,\n DopNFTAmountRecipient,\n TXIDVersion,\n NETWORK_CONFIG,\n} from 'dop-sharedmodels-v3';\nimport {\n GenerateTransactionsProgressCallback,\n generateDummyProofTransactions,\n generateProofTransactions,\n generateTransact,\n generateDecryptBaseToken,\n nullifiersForTransactions,\n} from './tx-generator';\nimport { assertValidEthAddress } from '../dop/wallets/wallets';\nimport { setCachedProvedTransaction } from './proof-cache';\nimport {\n AdaptID,\n RelayAdaptVersionedSmartContracts,\n ByteUtils,\n} from 'dop-engine-v3';\nimport { assertNotBlockedAddress } from '../../utils/blocked-address';\nimport { createRelayAdaptDecryptERC20AmountRecipients } from './tx-cross-contract-calls';\nimport { reportAndSanitizeError } from '../../utils/error';\n\nexport const generateDecryptProof = async (\n txidVersion: TXIDVersion,\n networkName: NetworkName,\n dopWalletID: string,\n encryptionKey: string,\n erc20AmountRecipients: DopERC20AmountRecipient[],\n nftAmountRecipients: DopNFTAmountRecipient[],\n broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient>,\n sendWithPublicWallet: boolean,\n overallBatchMinGasPrice: Optional<bigint>,\n progressCallback: GenerateTransactionsProgressCallback,\n value:bigint,\n): Promise<void> => {\n try {\n setCachedProvedTransaction(undefined);\n\n console.log(\"pre provedTransactions\")\n\n const { provedTransactions, } =\n await generateProofTransactions(\n ProofType.Decrypt,\n networkName,\n dopWalletID,\n txidVersion,\n encryptionKey,\n false, // showSenderAddressToRecipient\n undefined, // memoText\n erc20AmountRecipients,\n nftAmountRecipients,\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n undefined, // relayAdaptID\n false, // useDummyProof\n overallBatchMinGasPrice,\n progressCallback,\n );\n const transaction = await generateTransact(\n txidVersion,\n provedTransactions,\n networkName,\n value\n );\n\n const nullifiers = nullifiersForTransactions(provedTransactions);\n\n setCachedProvedTransaction({\n proofType: ProofType.Decrypt,\n txidVersion,\n dopWalletID,\n showSenderAddressToRecipient: false,\n memoText: undefined,\n erc20AmountRecipients,\n nftAmountRecipients,\n relayAdaptDecryptERC20Amounts: undefined,\n relayAdaptDecryptNFTAmounts: undefined,\n relayAdaptEncryptERC20Recipients: undefined,\n relayAdaptEncryptNFTRecipients: undefined,\n crossContractCalls: undefined,\n broadcasterFeeERC20AmountRecipient,\n transaction,\n sendWithPublicWallet,\n overallBatchMinGasPrice,\n nullifiers,\n });\n } catch (err) {\n throw reportAndSanitizeError(generateDecryptProof.name, err);\n }\n};\n\nexport const generateDecryptToOriginProof = async (\n originalEncryptTxid: string,\n txidVersion: TXIDVersion,\n networkName: NetworkName,\n dopWalletID: string,\n encryptionKey: string,\n erc20AmountRecipients: DopERC20AmountRecipient[],\n nftAmountRecipients: DopNFTAmountRecipient[],\n progressCallback: GenerateTransactionsProgressCallback,\n value:bigint,\n): Promise<void> => {\n try {\n setCachedProvedTransaction(undefined);\n\n const { provedTransactions, } =\n await generateProofTransactions(\n ProofType.Decrypt,\n networkName,\n dopWalletID,\n txidVersion,\n encryptionKey,\n false, // showSenderAddressToRecipient\n undefined, // memoText\n erc20AmountRecipients,\n nftAmountRecipients,\n undefined, // broadcasterFeeERC20AmountRecipient\n true, // sendWithPublicWallet\n undefined, // relayAdaptID\n false, // useDummyProof\n undefined, // overallBatchMinGasPrice\n progressCallback,\n originalEncryptTxid,\n );\n const transaction = await generateTransact(\n txidVersion,\n provedTransactions,\n networkName,\n value,\n );\n\n const nullifiers = nullifiersForTransactions(provedTransactions);\n\n setCachedProvedTransaction({\n proofType: ProofType.Decrypt,\n txidVersion,\n dopWalletID,\n showSenderAddressToRecipient: false,\n memoText: undefined,\n erc20AmountRecipients,\n nftAmountRecipients,\n relayAdaptDecryptERC20Amounts: undefined,\n relayAdaptDecryptNFTAmounts: undefined,\n relayAdaptEncryptERC20Recipients: undefined,\n relayAdaptEncryptNFTRecipients: undefined,\n crossContractCalls: undefined,\n broadcasterFeeERC20AmountRecipient: undefined,\n transaction,\n sendWithPublicWallet: true,\n overallBatchMinGasPrice: undefined,\n nullifiers,\n });\n } catch (err) {\n throw reportAndSanitizeError(generateDecryptProof.name, err);\n }\n};\n\nexport const generateDecryptBaseTokenProof = async (\n txidVersion: TXIDVersion,\n networkName: NetworkName,\n publicWalletAddress: string,\n dopWalletID: string,\n encryptionKey: string,\n wrappedERC20Amount: DopERC20Amount,\n broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient>,\n sendWithPublicWallet: boolean,\n overallBatchMinGasPrice: Optional<bigint>,\n progressCallback: GenerateTransactionsProgressCallback,\n): Promise<void> => {\n try {\n assertNotBlockedAddress(publicWalletAddress);\n assertValidEthAddress(publicWalletAddress);\n\n setCachedProvedTransaction(undefined);\n\n const erc20AmountRecipients: DopERC20AmountRecipient[] = [\n {\n ...wrappedERC20Amount,\n recipientAddress: publicWalletAddress,\n },\n ];\n\n const relayAdaptDecryptERC20Amounts: DopERC20Amount[] = [\n wrappedERC20Amount,\n ];\n\n const relayAdaptDecryptERC20AmountRecipients: DopERC20AmountRecipient[] =\n createRelayAdaptDecryptERC20AmountRecipients(txidVersion, networkName, [\n wrappedERC20Amount,\n ]);\n\n // Empty NFT recipients.\n const nftAmountRecipients: DopNFTAmountRecipient[] = [];\n const relayAdaptDecryptNFTAmountRecipients: DopNFTAmountRecipient[] =\n [];\n\n // Generate dummy txs for relay adapt params.\n const dummyTxs = await generateDummyProofTransactions(\n ProofType.DecryptBaseToken,\n networkName,\n dopWalletID,\n txidVersion,\n encryptionKey,\n false, // showSenderAddressToRecipient\n undefined, // memoText\n relayAdaptDecryptERC20AmountRecipients,\n relayAdaptDecryptNFTAmountRecipients,\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n overallBatchMinGasPrice,\n );\n\n const { chain } = NETWORK_CONFIG[networkName];\n\n const relayAdaptParamsRandom = ByteUtils.randomHex(31);\n const relayAdaptParams =\n await RelayAdaptVersionedSmartContracts.getRelayAdaptParamsDecryptBaseToken(\n txidVersion,\n chain,\n dummyTxs,\n publicWalletAddress,\n relayAdaptParamsRandom,\n );\n const relayAdaptContract =\n RelayAdaptVersionedSmartContracts.getRelayAdaptContract(\n txidVersion,\n chain,\n );\n const relayAdaptID: AdaptID = {\n contract: relayAdaptContract.address,\n parameters: relayAdaptParams,\n };\n\n const showSenderAddressToRecipient = false;\n const memoText: Optional<string> = undefined;\n\n // Generate final txs with relay adapt ID.\n const { provedTransactions, } =\n await generateProofTransactions(\n ProofType.DecryptBaseToken,\n networkName,\n dopWalletID,\n txidVersion,\n encryptionKey,\n showSenderAddressToRecipient,\n memoText,\n relayAdaptDecryptERC20AmountRecipients,\n relayAdaptDecryptNFTAmountRecipients,\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n relayAdaptID,\n false, // useDummyProof\n overallBatchMinGasPrice,\n progressCallback,\n );\n\n const transaction = await generateDecryptBaseToken(\n txidVersion,\n provedTransactions,\n networkName,\n publicWalletAddress,\n relayAdaptParamsRandom,\n false, // useDummyProof\n );\n\n const nullifiers = nullifiersForTransactions(provedTransactions);\n\n setCachedProvedTransaction({\n proofType: ProofType.DecryptBaseToken,\n txidVersion,\n dopWalletID,\n showSenderAddressToRecipient,\n memoText,\n erc20AmountRecipients,\n nftAmountRecipients,\n relayAdaptDecryptERC20Amounts,\n relayAdaptDecryptNFTAmounts: undefined,\n relayAdaptEncryptERC20Recipients: undefined,\n relayAdaptEncryptNFTRecipients: undefined,\n crossContractCalls: undefined,\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n transaction,\n overallBatchMinGasPrice,\n nullifiers,\n });\n } catch (err) {\n throw reportAndSanitizeError(generateDecryptBaseTokenProof.name, err);\n }\n};\n"]}
|
|
1
|
+
{"version":3,"file":"tx-proof-decrypt.js","sourceRoot":"","sources":["../../../src/services/transactions/tx-proof-decrypt.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n DopERC20Amount,\n NetworkName,\n ProofType,\n DopERC20AmountRecipient,\n DopNFTAmountRecipient,\n TXIDVersion,\n NETWORK_CONFIG,\n} from 'dop-sharedmodels-v5';\nimport {\n GenerateTransactionsProgressCallback,\n generateDummyProofTransactions,\n generateProofTransactions,\n generateTransact,\n generateDecryptBaseToken,\n nullifiersForTransactions,\n} from './tx-generator';\nimport { assertValidEthAddress } from '../dop/wallets/wallets';\nimport { setCachedProvedTransaction } from './proof-cache';\nimport {\n AdaptID,\n RelayAdaptVersionedSmartContracts,\n ByteUtils,\n} from 'dop-engine-v5';\nimport { assertNotBlockedAddress } from '../../utils/blocked-address';\nimport { createRelayAdaptDecryptERC20AmountRecipients } from './tx-cross-contract-calls';\nimport { reportAndSanitizeError } from '../../utils/error';\n\nexport const generateDecryptProof = async (\n txidVersion: TXIDVersion,\n networkName: NetworkName,\n dopWalletID: string,\n encryptionKey: string,\n erc20AmountRecipients: DopERC20AmountRecipient[],\n nftAmountRecipients: DopNFTAmountRecipient[],\n broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient>,\n sendWithPublicWallet: boolean,\n overallBatchMinGasPrice: Optional<bigint>,\n progressCallback: GenerateTransactionsProgressCallback,\n value:bigint,\n): Promise<void> => {\n try {\n setCachedProvedTransaction(undefined);\n\n console.log(\"pre provedTransactions\")\n\n const { provedTransactions, } =\n await generateProofTransactions(\n ProofType.Decrypt,\n networkName,\n dopWalletID,\n txidVersion,\n encryptionKey,\n false, // showSenderAddressToRecipient\n undefined, // memoText\n erc20AmountRecipients,\n nftAmountRecipients,\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n undefined, // relayAdaptID\n false, // useDummyProof\n overallBatchMinGasPrice,\n progressCallback,\n );\n const transaction = await generateTransact(\n txidVersion,\n provedTransactions,\n networkName,\n value\n );\n\n const nullifiers = nullifiersForTransactions(provedTransactions);\n\n setCachedProvedTransaction({\n proofType: ProofType.Decrypt,\n txidVersion,\n dopWalletID,\n showSenderAddressToRecipient: false,\n memoText: undefined,\n erc20AmountRecipients,\n nftAmountRecipients,\n relayAdaptDecryptERC20Amounts: undefined,\n relayAdaptDecryptNFTAmounts: undefined,\n relayAdaptEncryptERC20Recipients: undefined,\n relayAdaptEncryptNFTRecipients: undefined,\n crossContractCalls: undefined,\n broadcasterFeeERC20AmountRecipient,\n transaction,\n sendWithPublicWallet,\n overallBatchMinGasPrice,\n nullifiers,\n });\n } catch (err) {\n throw reportAndSanitizeError(generateDecryptProof.name, err);\n }\n};\n\nexport const generateDecryptToOriginProof = async (\n originalEncryptTxid: string,\n txidVersion: TXIDVersion,\n networkName: NetworkName,\n dopWalletID: string,\n encryptionKey: string,\n erc20AmountRecipients: DopERC20AmountRecipient[],\n nftAmountRecipients: DopNFTAmountRecipient[],\n progressCallback: GenerateTransactionsProgressCallback,\n value:bigint,\n): Promise<void> => {\n try {\n setCachedProvedTransaction(undefined);\n\n const { provedTransactions, } =\n await generateProofTransactions(\n ProofType.Decrypt,\n networkName,\n dopWalletID,\n txidVersion,\n encryptionKey,\n false, // showSenderAddressToRecipient\n undefined, // memoText\n erc20AmountRecipients,\n nftAmountRecipients,\n undefined, // broadcasterFeeERC20AmountRecipient\n true, // sendWithPublicWallet\n undefined, // relayAdaptID\n false, // useDummyProof\n undefined, // overallBatchMinGasPrice\n progressCallback,\n originalEncryptTxid,\n );\n const transaction = await generateTransact(\n txidVersion,\n provedTransactions,\n networkName,\n value,\n );\n\n const nullifiers = nullifiersForTransactions(provedTransactions);\n\n setCachedProvedTransaction({\n proofType: ProofType.Decrypt,\n txidVersion,\n dopWalletID,\n showSenderAddressToRecipient: false,\n memoText: undefined,\n erc20AmountRecipients,\n nftAmountRecipients,\n relayAdaptDecryptERC20Amounts: undefined,\n relayAdaptDecryptNFTAmounts: undefined,\n relayAdaptEncryptERC20Recipients: undefined,\n relayAdaptEncryptNFTRecipients: undefined,\n crossContractCalls: undefined,\n broadcasterFeeERC20AmountRecipient: undefined,\n transaction,\n sendWithPublicWallet: true,\n overallBatchMinGasPrice: undefined,\n nullifiers,\n });\n } catch (err) {\n throw reportAndSanitizeError(generateDecryptProof.name, err);\n }\n};\n\nexport const generateDecryptBaseTokenProof = async (\n txidVersion: TXIDVersion,\n networkName: NetworkName,\n publicWalletAddress: string,\n dopWalletID: string,\n encryptionKey: string,\n wrappedERC20Amount: DopERC20Amount,\n broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient>,\n sendWithPublicWallet: boolean,\n overallBatchMinGasPrice: Optional<bigint>,\n progressCallback: GenerateTransactionsProgressCallback,\n): Promise<void> => {\n try {\n assertNotBlockedAddress(publicWalletAddress);\n assertValidEthAddress(publicWalletAddress);\n\n setCachedProvedTransaction(undefined);\n\n const erc20AmountRecipients: DopERC20AmountRecipient[] = [\n {\n ...wrappedERC20Amount,\n recipientAddress: publicWalletAddress,\n },\n ];\n\n const relayAdaptDecryptERC20Amounts: DopERC20Amount[] = [\n wrappedERC20Amount,\n ];\n\n const relayAdaptDecryptERC20AmountRecipients: DopERC20AmountRecipient[] =\n createRelayAdaptDecryptERC20AmountRecipients(txidVersion, networkName, [\n wrappedERC20Amount,\n ]);\n\n // Empty NFT recipients.\n const nftAmountRecipients: DopNFTAmountRecipient[] = [];\n const relayAdaptDecryptNFTAmountRecipients: DopNFTAmountRecipient[] =\n [];\n\n // Generate dummy txs for relay adapt params.\n const dummyTxs = await generateDummyProofTransactions(\n ProofType.DecryptBaseToken,\n networkName,\n dopWalletID,\n txidVersion,\n encryptionKey,\n false, // showSenderAddressToRecipient\n undefined, // memoText\n relayAdaptDecryptERC20AmountRecipients,\n relayAdaptDecryptNFTAmountRecipients,\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n overallBatchMinGasPrice,\n );\n\n const { chain } = NETWORK_CONFIG[networkName];\n\n const relayAdaptParamsRandom = ByteUtils.randomHex(31);\n const relayAdaptParams =\n await RelayAdaptVersionedSmartContracts.getRelayAdaptParamsDecryptBaseToken(\n txidVersion,\n chain,\n dummyTxs,\n publicWalletAddress,\n relayAdaptParamsRandom,\n );\n const relayAdaptContract =\n RelayAdaptVersionedSmartContracts.getRelayAdaptContract(\n txidVersion,\n chain,\n );\n const relayAdaptID: AdaptID = {\n contract: relayAdaptContract.address,\n parameters: relayAdaptParams,\n };\n\n const showSenderAddressToRecipient = false;\n const memoText: Optional<string> = undefined;\n\n // Generate final txs with relay adapt ID.\n const { provedTransactions, } =\n await generateProofTransactions(\n ProofType.DecryptBaseToken,\n networkName,\n dopWalletID,\n txidVersion,\n encryptionKey,\n showSenderAddressToRecipient,\n memoText,\n relayAdaptDecryptERC20AmountRecipients,\n relayAdaptDecryptNFTAmountRecipients,\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n relayAdaptID,\n false, // useDummyProof\n overallBatchMinGasPrice,\n progressCallback,\n );\n\n const transaction = await generateDecryptBaseToken(\n txidVersion,\n provedTransactions,\n networkName,\n publicWalletAddress,\n relayAdaptParamsRandom,\n false, // useDummyProof\n );\n\n const nullifiers = nullifiersForTransactions(provedTransactions);\n\n setCachedProvedTransaction({\n proofType: ProofType.DecryptBaseToken,\n txidVersion,\n dopWalletID,\n showSenderAddressToRecipient,\n memoText,\n erc20AmountRecipients,\n nftAmountRecipients,\n relayAdaptDecryptERC20Amounts,\n relayAdaptDecryptNFTAmounts: undefined,\n relayAdaptEncryptERC20Recipients: undefined,\n relayAdaptEncryptNFTRecipients: undefined,\n crossContractCalls: undefined,\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n transaction,\n overallBatchMinGasPrice,\n nullifiers,\n });\n } catch (err) {\n throw reportAndSanitizeError(generateDecryptBaseTokenProof.name, err);\n }\n};\n"]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { NetworkName, DopERC20AmountRecipient, DopNFTAmountRecipient, TXIDVersion } from 'dop-sharedmodels-
|
|
1
|
+
import { NetworkName, DopERC20AmountRecipient, DopNFTAmountRecipient, TXIDVersion } from 'dop-sharedmodels-v5';
|
|
2
2
|
import { GenerateTransactionsProgressCallback } from './tx-generator';
|
|
3
3
|
export declare const generateTransferProof: (txidVersion: TXIDVersion, networkName: NetworkName, dopWalletID: string, encryptionKey: string, showSenderAddressToRecipient: boolean, memoText: Optional<string>, erc20AmountRecipients: DopERC20AmountRecipient[], nftAmountRecipients: DopNFTAmountRecipient[], broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient>, sendWithPublicWallet: boolean, overallBatchMinGasPrice: Optional<bigint>, progressCallback: GenerateTransactionsProgressCallback) => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx-proof-transfer.js","sourceRoot":"","sources":["../../../src/services/transactions/tx-proof-transfer.ts"],"names":[],"mappings":";;;AAAA,6DAM6B;AAC7B,iDAKwB;AACxB,+CAA2D;AAC3D,6CAA2D;AAEpD,MAAM,qBAAqB,GAAG,KAAK,EACxC,WAAwB,EACxB,WAAwB,EACxB,WAAmB,EACnB,aAAqB,EACrB,4BAAqC,EACrC,QAA0B,EAC1B,qBAAgD,EAChD,mBAA4C,EAC5C,kCAAqE,EACrE,oBAA6B,EAC7B,uBAAyC,EACzC,gBAAsD,EACvC,EAAE;IACjB,IAAI;QACF,IAAA,wCAA0B,EAAC,SAAS,CAAC,CAAC;QAEtC,MAAM,EAAE,kBAAkB,EAAE,GAC1B,MAAM,IAAA,wCAAyB,EAC7B,+BAAS,CAAC,QAAQ,EAClB,WAAW,EACX,WAAW,EACX,WAAW,EACX,aAAa,EACb,4BAA4B,EAC5B,QAAQ,EACR,qBAAqB,EACrB,mBAAmB,EACnB,kCAAkC,EAClC,oBAAoB,EACpB,SAAS,EAAE,eAAe;QAC1B,KAAK,EAAE,gBAAgB;QACvB,uBAAuB,EACvB,gBAAgB,CACjB,CAAC;QACJ,MAAM,WAAW,GAAG,MAAM,IAAA,+BAAgB,EACxC,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,EAAE,CACH,CAAC;QAEF,MAAM,UAAU,GAAG,IAAA,wCAAyB,EAAC,kBAAkB,CAAC,CAAC;QAEjE,IAAA,wCAA0B,EAAC;YACzB,SAAS,EAAE,+BAAS,CAAC,QAAQ;YAC7B,WAAW;YACX,WAAW;YACX,4BAA4B;YAC5B,QAAQ;YACR,qBAAqB;YACrB,mBAAmB;YACnB,6BAA6B,EAAE,SAAS;YACxC,2BAA2B,EAAE,SAAS;YACtC,gCAAgC,EAAE,SAAS;YAC3C,8BAA8B,EAAE,SAAS;YACzC,kBAAkB,EAAE,SAAS;YAC7B,kCAAkC;YAClC,oBAAoB;YACpB,WAAW;YACX,uBAAuB;YACvB,UAAU;SACX,CAAC,CAAC;KACJ;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAA,8BAAsB,EAAC,6BAAqB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KAC/D;AACH,CAAC,CAAC;AAlEW,QAAA,qBAAqB,yBAkEhC","sourcesContent":["import {\n NetworkName,\n ProofType,\n DopERC20AmountRecipient,\n DopNFTAmountRecipient,\n TXIDVersion,\n} from 'dop-sharedmodels-
|
|
1
|
+
{"version":3,"file":"tx-proof-transfer.js","sourceRoot":"","sources":["../../../src/services/transactions/tx-proof-transfer.ts"],"names":[],"mappings":";;;AAAA,6DAM6B;AAC7B,iDAKwB;AACxB,+CAA2D;AAC3D,6CAA2D;AAEpD,MAAM,qBAAqB,GAAG,KAAK,EACxC,WAAwB,EACxB,WAAwB,EACxB,WAAmB,EACnB,aAAqB,EACrB,4BAAqC,EACrC,QAA0B,EAC1B,qBAAgD,EAChD,mBAA4C,EAC5C,kCAAqE,EACrE,oBAA6B,EAC7B,uBAAyC,EACzC,gBAAsD,EACvC,EAAE;IACjB,IAAI;QACF,IAAA,wCAA0B,EAAC,SAAS,CAAC,CAAC;QAEtC,MAAM,EAAE,kBAAkB,EAAE,GAC1B,MAAM,IAAA,wCAAyB,EAC7B,+BAAS,CAAC,QAAQ,EAClB,WAAW,EACX,WAAW,EACX,WAAW,EACX,aAAa,EACb,4BAA4B,EAC5B,QAAQ,EACR,qBAAqB,EACrB,mBAAmB,EACnB,kCAAkC,EAClC,oBAAoB,EACpB,SAAS,EAAE,eAAe;QAC1B,KAAK,EAAE,gBAAgB;QACvB,uBAAuB,EACvB,gBAAgB,CACjB,CAAC;QACJ,MAAM,WAAW,GAAG,MAAM,IAAA,+BAAgB,EACxC,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,EAAE,CACH,CAAC;QAEF,MAAM,UAAU,GAAG,IAAA,wCAAyB,EAAC,kBAAkB,CAAC,CAAC;QAEjE,IAAA,wCAA0B,EAAC;YACzB,SAAS,EAAE,+BAAS,CAAC,QAAQ;YAC7B,WAAW;YACX,WAAW;YACX,4BAA4B;YAC5B,QAAQ;YACR,qBAAqB;YACrB,mBAAmB;YACnB,6BAA6B,EAAE,SAAS;YACxC,2BAA2B,EAAE,SAAS;YACtC,gCAAgC,EAAE,SAAS;YAC3C,8BAA8B,EAAE,SAAS;YACzC,kBAAkB,EAAE,SAAS;YAC7B,kCAAkC;YAClC,oBAAoB;YACpB,WAAW;YACX,uBAAuB;YACvB,UAAU;SACX,CAAC,CAAC;KACJ;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAA,8BAAsB,EAAC,6BAAqB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KAC/D;AACH,CAAC,CAAC;AAlEW,QAAA,qBAAqB,yBAkEhC","sourcesContent":["import {\n NetworkName,\n ProofType,\n DopERC20AmountRecipient,\n DopNFTAmountRecipient,\n TXIDVersion,\n} from 'dop-sharedmodels-v5';\nimport {\n GenerateTransactionsProgressCallback,\n generateProofTransactions,\n generateTransact,\n nullifiersForTransactions,\n} from './tx-generator';\nimport { setCachedProvedTransaction } from './proof-cache';\nimport { reportAndSanitizeError } from '../../utils/error';\n\nexport const generateTransferProof = async (\n txidVersion: TXIDVersion,\n networkName: NetworkName,\n dopWalletID: string,\n encryptionKey: string,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n erc20AmountRecipients: DopERC20AmountRecipient[],\n nftAmountRecipients: DopNFTAmountRecipient[],\n broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient>,\n sendWithPublicWallet: boolean,\n overallBatchMinGasPrice: Optional<bigint>,\n progressCallback: GenerateTransactionsProgressCallback,\n): Promise<void> => {\n try {\n setCachedProvedTransaction(undefined);\n\n const { provedTransactions } =\n await generateProofTransactions(\n ProofType.Transfer,\n networkName,\n dopWalletID,\n txidVersion,\n encryptionKey,\n showSenderAddressToRecipient,\n memoText,\n erc20AmountRecipients,\n nftAmountRecipients,\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n undefined, // relayAdaptID\n false, // useDummyProof\n overallBatchMinGasPrice,\n progressCallback,\n );\n const transaction = await generateTransact(\n txidVersion,\n provedTransactions,\n networkName,\n 0n\n );\n\n const nullifiers = nullifiersForTransactions(provedTransactions);\n\n setCachedProvedTransaction({\n proofType: ProofType.Transfer,\n txidVersion,\n dopWalletID,\n showSenderAddressToRecipient,\n memoText,\n erc20AmountRecipients,\n nftAmountRecipients,\n relayAdaptDecryptERC20Amounts: undefined,\n relayAdaptDecryptNFTAmounts: undefined,\n relayAdaptEncryptERC20Recipients: undefined,\n relayAdaptEncryptNFTRecipients: undefined,\n crossContractCalls: undefined,\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n transaction,\n overallBatchMinGasPrice,\n nullifiers,\n });\n } catch (err) {\n throw reportAndSanitizeError(generateTransferProof.name, err);\n }\n};\n"]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { DopPopulateTransactionResponse, DopTransactionGasEstimateResponse, NetworkName, FeeTokenDetails, DopERC20AmountRecipient, DopNFTAmountRecipient, TransactionGasDetails, TXIDVersion } from 'dop-sharedmodels-
|
|
1
|
+
import { DopPopulateTransactionResponse, DopTransactionGasEstimateResponse, NetworkName, FeeTokenDetails, DopERC20AmountRecipient, DopNFTAmountRecipient, TransactionGasDetails, TXIDVersion } from 'dop-sharedmodels-v5';
|
|
2
2
|
export declare const populateProvedTransfer: (txidVersion: TXIDVersion, networkName: NetworkName, dopWalletID: string, showSenderAddressToRecipient: boolean, memoText: Optional<string>, erc20AmountRecipients: DopERC20AmountRecipient[], nftAmountRecipients: DopNFTAmountRecipient[], broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient>, sendWithPublicWallet: boolean, overallBatchMinGasPrice: Optional<bigint>, gasDetails: TransactionGasDetails) => Promise<DopPopulateTransactionResponse>;
|
|
3
3
|
export declare const gasEstimateForUnprovenTransfer: (txidVersion: TXIDVersion, networkName: NetworkName, dopWalletID: string, encryptionKey: string, memoText: Optional<string>, erc20AmountRecipients: DopERC20AmountRecipient[], nftAmountRecipients: DopNFTAmountRecipient[], originalGasDetails: TransactionGasDetails, feeTokenDetails: Optional<FeeTokenDetails>, sendWithPublicWallet: boolean) => Promise<DopTransactionGasEstimateResponse>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx-transfer.js","sourceRoot":"","sources":["../../../src/services/transactions/tx-transfer.ts"],"names":[],"mappings":";;;AAAA,6DAW6B;AAC7B,iDAGwB;AACxB,+CAA0D;AAK1D,yFAA0G;AAC1G,6CAA2D;AAEpD,MAAM,sBAAsB,GAAG,KAAK,EACzC,WAAwB,EACxB,WAAwB,EACxB,WAAmB,EACnB,4BAAqC,EACrC,QAA0B,EAC1B,qBAAgD,EAChD,mBAA4C,EAC5C,kCAAqE,EACrE,oBAA6B,EAC7B,uBAAyC,EACzC,UAAiC,EACQ,EAAE;IAC3C,IAAI;QACF,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,GAC/B,MAAM,IAAA,uCAAyB,EAC7B,WAAW,EACX,WAAW,EACX,+BAAS,CAAC,QAAQ,EAClB,WAAW,EACX,4BAA4B,EAC5B,QAAQ,EACR,qBAAqB,EACrB,mBAAmB,EACnB,SAAS,EAAE,yCAAyC;QACpD,SAAS,EAAE,8BAA8B;QACzC,SAAS,EAAE,mCAAmC;QAC9C,SAAS,EAAE,iCAAiC;QAC5C,SAAS,EAAE,qBAAqB;QAChC,kCAAkC,EAClC,oBAAoB,EACpB,uBAAuB,EACvB,UAAU,CACX,CAAC;QACJ,OAAO;YACL,UAAU;YACV,WAAW;SACZ,CAAC;KACH;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAA,8BAAsB,EAAC,8BAAsB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KAChE;AACH,CAAC,CAAC;AAzCW,QAAA,sBAAsB,0BAyCjC;AAEK,MAAM,8BAA8B,GAAG,KAAK,EACjD,WAAwB,EACxB,WAAwB,EACxB,WAAmB,EACnB,aAAqB,EACrB,QAA0B,EAC1B,qBAAgD,EAChD,mBAA4C,EAC5C,kBAAyC,EACzC,eAA0C,EAC1C,oBAA6B,EACe,EAAE;IAC9C,IAAI;QACF,MAAM,uBAAuB,GAAG,EAAE,CAAC;QAEnC,MAAM,QAAQ,GAAG,MAAM,IAAA,uFAAoD,EACzE,CAAC,yBAAmD,EAAE,EAAE,CACtD,IAAA,6CAA8B,EAC5B,+BAAS,CAAC,QAAQ,EAClB,WAAW,EACX,WAAW,EACX,WAAW,EACX,aAAa,EACb,KAAK,EAAE,kEAAkE;QACzE,QAAQ,EACR,qBAAqB,EACrB,mBAAmB,EACnB,yBAAyB,EACzB,oBAAoB,EACpB,uBAAuB,CACxB,EACH,CAAC,GAAkD,EAAE,EAAE,CACrD,IAAA,+BAAgB,EACd,WAAW,EACX,GAAG,EACH,WAAW,EACX,EAAE,EACF,IAAI,CACL,EACH,WAAW,EACX,WAAW,EACX,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,KAAK,CACN,CAAC;QACF,OAAO,QAAQ,CAAC;KACjB;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAA,8BAAsB,EAAC,sCAA8B,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KACxE;AACH,CAAC,CAAC;AApDW,QAAA,8BAA8B,kCAoDzC","sourcesContent":["import {\n DopPopulateTransactionResponse,\n DopTransactionGasEstimateResponse,\n DopERC20Amount,\n NetworkName,\n ProofType,\n FeeTokenDetails,\n DopERC20AmountRecipient,\n DopNFTAmountRecipient,\n TransactionGasDetails,\n TXIDVersion,\n} from 'dop-sharedmodels-
|
|
1
|
+
{"version":3,"file":"tx-transfer.js","sourceRoot":"","sources":["../../../src/services/transactions/tx-transfer.ts"],"names":[],"mappings":";;;AAAA,6DAW6B;AAC7B,iDAGwB;AACxB,+CAA0D;AAK1D,yFAA0G;AAC1G,6CAA2D;AAEpD,MAAM,sBAAsB,GAAG,KAAK,EACzC,WAAwB,EACxB,WAAwB,EACxB,WAAmB,EACnB,4BAAqC,EACrC,QAA0B,EAC1B,qBAAgD,EAChD,mBAA4C,EAC5C,kCAAqE,EACrE,oBAA6B,EAC7B,uBAAyC,EACzC,UAAiC,EACQ,EAAE;IAC3C,IAAI;QACF,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,GAC/B,MAAM,IAAA,uCAAyB,EAC7B,WAAW,EACX,WAAW,EACX,+BAAS,CAAC,QAAQ,EAClB,WAAW,EACX,4BAA4B,EAC5B,QAAQ,EACR,qBAAqB,EACrB,mBAAmB,EACnB,SAAS,EAAE,yCAAyC;QACpD,SAAS,EAAE,8BAA8B;QACzC,SAAS,EAAE,mCAAmC;QAC9C,SAAS,EAAE,iCAAiC;QAC5C,SAAS,EAAE,qBAAqB;QAChC,kCAAkC,EAClC,oBAAoB,EACpB,uBAAuB,EACvB,UAAU,CACX,CAAC;QACJ,OAAO;YACL,UAAU;YACV,WAAW;SACZ,CAAC;KACH;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAA,8BAAsB,EAAC,8BAAsB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KAChE;AACH,CAAC,CAAC;AAzCW,QAAA,sBAAsB,0BAyCjC;AAEK,MAAM,8BAA8B,GAAG,KAAK,EACjD,WAAwB,EACxB,WAAwB,EACxB,WAAmB,EACnB,aAAqB,EACrB,QAA0B,EAC1B,qBAAgD,EAChD,mBAA4C,EAC5C,kBAAyC,EACzC,eAA0C,EAC1C,oBAA6B,EACe,EAAE;IAC9C,IAAI;QACF,MAAM,uBAAuB,GAAG,EAAE,CAAC;QAEnC,MAAM,QAAQ,GAAG,MAAM,IAAA,uFAAoD,EACzE,CAAC,yBAAmD,EAAE,EAAE,CACtD,IAAA,6CAA8B,EAC5B,+BAAS,CAAC,QAAQ,EAClB,WAAW,EACX,WAAW,EACX,WAAW,EACX,aAAa,EACb,KAAK,EAAE,kEAAkE;QACzE,QAAQ,EACR,qBAAqB,EACrB,mBAAmB,EACnB,yBAAyB,EACzB,oBAAoB,EACpB,uBAAuB,CACxB,EACH,CAAC,GAAkD,EAAE,EAAE,CACrD,IAAA,+BAAgB,EACd,WAAW,EACX,GAAG,EACH,WAAW,EACX,EAAE,EACF,IAAI,CACL,EACH,WAAW,EACX,WAAW,EACX,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,KAAK,CACN,CAAC;QACF,OAAO,QAAQ,CAAC;KACjB;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAA,8BAAsB,EAAC,sCAA8B,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KACxE;AACH,CAAC,CAAC;AApDW,QAAA,8BAA8B,kCAoDzC","sourcesContent":["import {\n DopPopulateTransactionResponse,\n DopTransactionGasEstimateResponse,\n DopERC20Amount,\n NetworkName,\n ProofType,\n FeeTokenDetails,\n DopERC20AmountRecipient,\n DopNFTAmountRecipient,\n TransactionGasDetails,\n TXIDVersion,\n} from 'dop-sharedmodels-v5';\nimport {\n generateDummyProofTransactions,\n generateTransact,\n} from './tx-generator';\nimport { populateProvedTransaction } from './proof-cache';\nimport {\n TransactionStructV2,\n TransactionStructV3,\n} from 'dop-engine-v5';\nimport { gasEstimateResponseDummyProofIterativeBroadcasterFee } from './tx-gas-broadcaster-fee-estimator';\nimport { reportAndSanitizeError } from '../../utils/error';\n\nexport const populateProvedTransfer = async (\n txidVersion: TXIDVersion,\n networkName: NetworkName,\n dopWalletID: string,\n showSenderAddressToRecipient: boolean,\n memoText: Optional<string>,\n erc20AmountRecipients: DopERC20AmountRecipient[],\n nftAmountRecipients: DopNFTAmountRecipient[],\n broadcasterFeeERC20AmountRecipient: Optional<DopERC20AmountRecipient>,\n sendWithPublicWallet: boolean,\n overallBatchMinGasPrice: Optional<bigint>,\n gasDetails: TransactionGasDetails,\n): Promise<DopPopulateTransactionResponse> => {\n try {\n const { transaction, nullifiers } =\n await populateProvedTransaction(\n txidVersion,\n networkName,\n ProofType.Transfer,\n dopWalletID,\n showSenderAddressToRecipient,\n memoText,\n erc20AmountRecipients,\n nftAmountRecipients,\n undefined, // relayAdaptDecryptERC20AmountRecipients\n undefined, // relayAdaptDecryptNFTAmounts\n undefined, // relayAdaptEncryptERC20Recipients\n undefined, // relayAdaptEncryptNFTRecipients\n undefined, // crossContractCalls\n broadcasterFeeERC20AmountRecipient,\n sendWithPublicWallet,\n overallBatchMinGasPrice,\n gasDetails,\n );\n return {\n nullifiers,\n transaction\n };\n } catch (err) {\n throw reportAndSanitizeError(populateProvedTransfer.name, err);\n }\n};\n\nexport const gasEstimateForUnprovenTransfer = async (\n txidVersion: TXIDVersion,\n networkName: NetworkName,\n dopWalletID: string,\n encryptionKey: string,\n memoText: Optional<string>,\n erc20AmountRecipients: DopERC20AmountRecipient[],\n nftAmountRecipients: DopNFTAmountRecipient[],\n originalGasDetails: TransactionGasDetails,\n feeTokenDetails: Optional<FeeTokenDetails>,\n sendWithPublicWallet: boolean,\n): Promise<DopTransactionGasEstimateResponse> => {\n try {\n const overallBatchMinGasPrice = 0n;\n\n const response = await gasEstimateResponseDummyProofIterativeBroadcasterFee(\n (broadcasterFeeERC20Amount: Optional<DopERC20Amount>) =>\n generateDummyProofTransactions(\n ProofType.Transfer,\n networkName,\n dopWalletID,\n txidVersion,\n encryptionKey,\n false, // showSenderAddressToRecipient - doesn't matter for gas estimate.\n memoText,\n erc20AmountRecipients,\n nftAmountRecipients,\n broadcasterFeeERC20Amount,\n sendWithPublicWallet,\n overallBatchMinGasPrice,\n ),\n (txs: (TransactionStructV2 | TransactionStructV3)[]) =>\n generateTransact(\n txidVersion,\n txs,\n networkName,\n 0n,\n true, // useDummyProof\n ),\n txidVersion,\n networkName,\n dopWalletID,\n erc20AmountRecipients,\n originalGasDetails,\n feeTokenDetails,\n sendWithPublicWallet,\n false, // isCrossContractCall\n );\n return response;\n } catch (err) {\n throw reportAndSanitizeError(gasEstimateForUnprovenTransfer.name, err);\n }\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helper.test.js","sourceRoot":"","sources":["../../src/tests/helper.test.ts"],"names":[],"mappings":";;;AAAA,iDAA4C;AAErC,MAAM,QAAQ,GAAG,GAAY,EAAE;IACpC,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,GAAG,CAAC;AACrC,CAAC,CAAC;AAFW,QAAA,QAAQ,YAEnB;AAEK,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,IAAI,IAAA,gBAAQ,GAAE,EAAE;QACd,OAAO,2BAAW,CAAC,iBAAiB,CAAC;KACtC;IACD,OAAO,2BAAW,CAAC,iBAAiB,CAAC;AACvC,CAAC,CAAC;AALW,QAAA,kBAAkB,sBAK7B","sourcesContent":["import { TXIDVersion } from 'dop-engine-
|
|
1
|
+
{"version":3,"file":"helper.test.js","sourceRoot":"","sources":["../../src/tests/helper.test.ts"],"names":[],"mappings":";;;AAAA,iDAA4C;AAErC,MAAM,QAAQ,GAAG,GAAY,EAAE;IACpC,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,GAAG,CAAC;AACrC,CAAC,CAAC;AAFW,QAAA,QAAQ,YAEnB;AAEK,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,IAAI,IAAA,gBAAQ,GAAE,EAAE;QACd,OAAO,2BAAW,CAAC,iBAAiB,CAAC;KACtC;IACD,OAAO,2BAAW,CAAC,iBAAiB,CAAC;AACvC,CAAC,CAAC;AALW,QAAA,kBAAkB,sBAK7B","sourcesContent":["import { TXIDVersion } from 'dop-engine-v5';\n\nexport const isV2Test = (): boolean => {\n return process.env.V2_TEST === '1';\n};\n\nexport const getTestTXIDVersion = () => {\n if (isV2Test()) {\n return TXIDVersion.V2_PoseidonMerkle;\n }\n return TXIDVersion.V3_PoseidonMerkle;\n};\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { FallbackProviderJsonConfig, FeeTokenDetails, DopERC20Amount, DopNFTAmountRecipient, DopNFTAmount, TransactionGasDetails, DopERC20Recipient } from 'dop-sharedmodels-
|
|
1
|
+
import { FallbackProviderJsonConfig, FeeTokenDetails, DopERC20Amount, DopNFTAmountRecipient, DopNFTAmount, TransactionGasDetails, DopERC20Recipient } from 'dop-sharedmodels-v5';
|
|
2
2
|
import { BalancesUpdatedCallback } from '../services/dop/wallets/balance-update';
|
|
3
|
-
import { CommitmentCiphertextV2, CommitmentCiphertextV3 } from 'dop-engine-
|
|
3
|
+
import { CommitmentCiphertextV2, CommitmentCiphertextV3 } from 'dop-engine-v5';
|
|
4
4
|
export declare const MOCK_MNEMONIC = "test test test test test test test test test test test junk";
|
|
5
5
|
export declare const MOCK_MNEMONIC_2 = "pause crystal tornado alcohol genre cement fade large song like bag where";
|
|
6
6
|
export declare const MOCK_DB_ENCRYPTION_KEY = "0101010101010101010101010101010101010101010101010101010101010101";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mocks.test.js","sourceRoot":"","sources":["../../src/tests/mocks.test.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n FallbackProviderJsonConfig,\n FeeTokenDetails,\n EVMGasType,\n DopERC20Amount,\n DopNFTAmountRecipient,\n NFTTokenType,\n DopNFTAmount,\n TransactionGasDetails,\n DopERC20Recipient,\n XChaChaEncryptionAlgorithm,\n} from 'dop-sharedmodels-v3';\nimport {\n BalancesUpdatedCallback,\n} from '../services/dop/wallets/balance-update';\nimport {\n CommitmentCiphertextV2,\n CommitmentCiphertextV3,\n} from 'dop-engine-v3';\n\nexport const MOCK_MNEMONIC =\n 'test test test test test test test test test test test junk';\n\nexport const MOCK_MNEMONIC_2 =\n 'pause crystal tornado alcohol genre cement fade large song like bag where';\n\nexport const MOCK_DB_ENCRYPTION_KEY =\n '0101010101010101010101010101010101010101010101010101010101010101';\n\nexport const MOCK_MEMO =\n 'A nice little mock memo, and how bout a little more for ya? 🤩';\n\nexport const MOCK_DOP_WALLET_ADDRESS =\n '0zk1q8hxknrs97q8pjxaagwthzc0df99rzmhl2xnlxmgv9akv32sua0kfrv7j6fe3z53llhxknrs97q8pjxaagwthzc0df99rzmhl2xnlxmgv9akv32sua0kg0zpzts';\n\nexport const MOCK_ETH_WALLET_ADDRESS =\n '0x9E9F988356f46744Ee0374A17a5Fa1a3A3cC3777';\n\nexport const MOCK_TOKEN_ADDRESS = '0x5FbDB2315678afecb367f032d93F642f64180aa3';\nexport const MOCK_TOKEN_ADDRESS_2 =\n '0xe76C6c83af64e4C60245D8C7dE953DF673a7A33D';\n\nexport const MOCK_NFT_ADDRESS = '0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d';\n\nexport const TEST_POLYGON_RPC = 'https://polygon-rpc.com';\n\nexport const TEST_WALLET_SOURCE = 'test engine';\n\nexport const MOCK_TOKEN_AMOUNTS_TOKEN_1_ONLY: DopERC20Amount[] = [\n {\n tokenAddress: MOCK_TOKEN_ADDRESS,\n amount: BigInt(0x100),\n },\n];\n\nexport const MOCK_TOKEN_AMOUNTS: DopERC20Amount[] = [\n {\n tokenAddress: MOCK_TOKEN_ADDRESS,\n amount: BigInt(0x100),\n },\n {\n tokenAddress: MOCK_TOKEN_ADDRESS_2,\n amount: BigInt(0x200),\n },\n];\n\nexport const MOCK_ERC20_RECIPIENTS: DopERC20Recipient[] = [\n {\n tokenAddress: MOCK_TOKEN_ADDRESS,\n recipientAddress: MOCK_DOP_WALLET_ADDRESS,\n },\n {\n tokenAddress: MOCK_TOKEN_ADDRESS_2,\n recipientAddress: MOCK_DOP_WALLET_ADDRESS,\n },\n];\n\nexport const MOCK_NFT_AMOUNTS: DopNFTAmount[] = [\n {\n nftAddress: MOCK_NFT_ADDRESS,\n nftTokenType: NFTTokenType.ERC721,\n tokenSubID: '0x01',\n amount: BigInt(0x01),\n },\n {\n nftAddress: MOCK_NFT_ADDRESS,\n nftTokenType: NFTTokenType.ERC1155,\n tokenSubID: '0x02',\n amount: BigInt(0x02),\n },\n];\n\nexport const MOCK_COMMITMENTS: string[] = [\n '0x0000000000000000000000000000000000000000000000000000000000000003',\n];\n\nexport const MOCK_NULLIFIERS: string[] = [\n '0x0000000000000000000000000000000000000000000000000000000000000001',\n '0x0000000000000000000000000000000000000000000000000000000000000002',\n];\n\nexport const MOCK_BOUND_PARAMS_V2 = {\n commitmentCiphertext: [\n {\n ciphertext: [\n '0x7d6854cd1fc49f0602ccd933422ed2e2ee070a9f1806843d5c81c08253134950',\n '0x8f54329134103720a7dac44d6f2a632ff18e7599b9bc1bf39d639e998a223b80',\n '0xed1ec36daf72e389fc567b2b5507fb6bff80b601bd3c0c441e4e97f28551f2f2',\n '0xede74ef3a06347178de5e4204f6bf8c475be62bcdb9911bd31be952f2e8af096',\n ],\n blindedSenderViewingKey:\n '0x898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n blindedReceiverViewingKey:\n '0x898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n memo: '0x',\n annotationData:\n '0xfaeb57df19481f9ad59b8619a5687b2623aa2280d0df93aa77258326df9e6657bbdb72d305e1373906a47c6e684c34c2553c7e061baac1f744e8ece042c6',\n },\n ],\n};\n\nexport const MOCK_BOUND_PARAMS_V3 = {\n local: {\n commitmentCiphertext: [\n {\n ciphertext:\n '0x7d6854cd1fc49f0602ccd933422ed2e2ee070a9f1806843d5c81c082531349508f54329134103720a7dac44d6f2a632ff18e7599b9bc1bf39d639e998a223b80ed1ec36daf72e389fc567b2b5507fb6bff80b601bd3c0c441e4e97f28551f2f2ede74ef3a06347178de5e4204f6bf8c475be62bcdb9911bd31be952f2e8af096',\n blindedSenderViewingKey:\n '0x898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n blindedReceiverViewingKey:\n '0x898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n },\n ],\n },\n};\n\nexport const MOCK_COMMITMENT_HASH =\n '0x2b13bccd4974c797df42a89221ed6e19e50c32055058cdcc5a8ea836233e4cab';\n\nexport const MOCK_FORMATTED_BROADCASTER_FEE_COMMITMENT_CIPHERTEXT_V2: CommitmentCiphertextV2 =\n {\n annotationData:\n '0xfaeb57df19481f9ad59b8619a5687b2623aa2280d0df93aa77258326df9e6657bbdb72d305e1373906a47c6e684c34c2553c7e061baac1f744e8ece042c6',\n blindedReceiverViewingKey:\n '898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n blindedSenderViewingKey:\n '898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n ciphertext: {\n data: [\n '8f54329134103720a7dac44d6f2a632ff18e7599b9bc1bf39d639e998a223b80',\n 'ed1ec36daf72e389fc567b2b5507fb6bff80b601bd3c0c441e4e97f28551f2f2',\n 'ede74ef3a06347178de5e4204f6bf8c475be62bcdb9911bd31be952f2e8af096',\n ],\n iv: '7d6854cd1fc49f0602ccd933422ed2e2',\n tag: 'ee070a9f1806843d5c81c08253134950',\n },\n memo: '0x',\n };\n\nexport const MOCK_FORMATTED_BROADCASTER_FEE_COMMITMENT_CIPHERTEXT_V3: CommitmentCiphertextV3 =\n {\n blindedReceiverViewingKey:\n '898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n blindedSenderViewingKey:\n '898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n ciphertext: {\n algorithm: XChaChaEncryptionAlgorithm.XChaChaPoly1305,\n nonce: '7d6854cd1fc49f0602ccd933422ed2e2',\n bundle:\n 'ee070a9f1806843d5c81c082531349508f54329134103720a7dac44d6f2a632ff18e7599b9bc1bf39d639e998a223b80ed1ec36daf72e389fc567b2b5507fb6bff80b601bd3c0c441e4e97f28551f2f2ede74ef3a06347178de5e4204f6bf8c475be62bcdb9911bd31be952f2e8af096',\n },\n };\n\nexport const MOCK_NFT_AMOUNT_RECIPIENTS: DopNFTAmountRecipient[] =\n MOCK_NFT_AMOUNTS.map(nftAmount => ({\n ...nftAmount,\n recipientAddress: MOCK_DOP_WALLET_ADDRESS,\n }));\n\nexport const MOCK_NFT_AMOUNT_RECIPIENTS_DECRYPT: DopNFTAmountRecipient[] =\n MOCK_NFT_AMOUNT_RECIPIENTS.map(nftAmountRecipient => ({\n ...nftAmountRecipient,\n recipientAddress: MOCK_ETH_WALLET_ADDRESS,\n }));\n\nexport const MOCK_TOKEN_FEE: DopERC20Amount = {\n tokenAddress: MOCK_TOKEN_ADDRESS,\n amount: BigInt(0x0300),\n};\n\nexport const MOCK_FEE_TOKEN_DETAILS: FeeTokenDetails = {\n tokenAddress: MOCK_TOKEN_ADDRESS,\n feePerUnitGas: BigInt('0x2000000000000000000'), // 2x\n};\n\nexport const MOCK_TRANSACTION_GAS_DETAILS_SERIALIZED_TYPE_2: TransactionGasDetails =\n {\n evmGasType: EVMGasType.Type2,\n gasEstimate: 0n,\n maxFeePerGas: BigInt('0x1234567890'),\n maxPriorityFeePerGas: BigInt('0x123456'),\n };\n\nexport const MOCK_BALANCES_UPDATE_CALLBACK: BalancesUpdatedCallback = () => {\n // noop\n};\n\n\nexport const MOCK_FALLBACK_PROVIDER_JSON_CONFIG_POLYGON: FallbackProviderJsonConfig =\n {\n chainId: 137,\n providers: [\n {\n provider: 'https://rpc-mainnet.matic.quiknode.pro',\n priority: 3,\n weight: 3,\n maxLogsPerBatch: 2,\n stallTimeout: 2500,\n },\n {\n provider: 'https://polygon-bor-rpc.publicnode.com',\n priority: 3,\n weight: 2,\n maxLogsPerBatch: 5,\n stallTimeout: 2500,\n },\n {\n provider: 'https://rpc.ankr.com/polygon',\n priority: 3,\n weight: 2,\n maxLogsPerBatch: 5,\n },\n ],\n };\n\nexport const MOCK_FALLBACK_PROVIDER_JSON_CONFIG_SEPOLIA: FallbackProviderJsonConfig =\n {\n chainId: 11155111,\n providers: [\n {\n provider: 'https://sepolia.drpc.org',\n priority: 3,\n weight: 3,\n maxLogsPerBatch: 2,\n stallTimeout: 2500,\n },\n {\n provider: 'https://ethereum-sepolia-rpc.publicnode.com',\n priority: 3,\n weight: 2,\n maxLogsPerBatch: 5,\n },\n ],\n };\n\nexport const MOCK_FALLBACK_PROVIDER_JSON_CONFIG_ETHEREUM: FallbackProviderJsonConfig =\n {\n chainId: 1,\n providers: [\n {\n provider: 'https://eth.llamarpc.com',\n priority: 3,\n weight: 3,\n maxLogsPerBatch: 2,\n stallTimeout: 2500,\n },\n {\n provider: 'https://rpc.ankr.com/eth',\n priority: 3,\n weight: 2,\n maxLogsPerBatch: 5,\n },\n ],\n };\n"]}
|
|
1
|
+
{"version":3,"file":"mocks.test.js","sourceRoot":"","sources":["../../src/tests/mocks.test.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n FallbackProviderJsonConfig,\n FeeTokenDetails,\n EVMGasType,\n DopERC20Amount,\n DopNFTAmountRecipient,\n NFTTokenType,\n DopNFTAmount,\n TransactionGasDetails,\n DopERC20Recipient,\n XChaChaEncryptionAlgorithm,\n} from 'dop-sharedmodels-v5';\nimport {\n BalancesUpdatedCallback,\n} from '../services/dop/wallets/balance-update';\nimport {\n CommitmentCiphertextV2,\n CommitmentCiphertextV3,\n} from 'dop-engine-v5';\n\nexport const MOCK_MNEMONIC =\n 'test test test test test test test test test test test junk';\n\nexport const MOCK_MNEMONIC_2 =\n 'pause crystal tornado alcohol genre cement fade large song like bag where';\n\nexport const MOCK_DB_ENCRYPTION_KEY =\n '0101010101010101010101010101010101010101010101010101010101010101';\n\nexport const MOCK_MEMO =\n 'A nice little mock memo, and how bout a little more for ya? 🤩';\n\nexport const MOCK_DOP_WALLET_ADDRESS =\n '0zk1q8hxknrs97q8pjxaagwthzc0df99rzmhl2xnlxmgv9akv32sua0kfrv7j6fe3z53llhxknrs97q8pjxaagwthzc0df99rzmhl2xnlxmgv9akv32sua0kg0zpzts';\n\nexport const MOCK_ETH_WALLET_ADDRESS =\n '0x9E9F988356f46744Ee0374A17a5Fa1a3A3cC3777';\n\nexport const MOCK_TOKEN_ADDRESS = '0x5FbDB2315678afecb367f032d93F642f64180aa3';\nexport const MOCK_TOKEN_ADDRESS_2 =\n '0xe76C6c83af64e4C60245D8C7dE953DF673a7A33D';\n\nexport const MOCK_NFT_ADDRESS = '0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d';\n\nexport const TEST_POLYGON_RPC = 'https://polygon-rpc.com';\n\nexport const TEST_WALLET_SOURCE = 'test engine';\n\nexport const MOCK_TOKEN_AMOUNTS_TOKEN_1_ONLY: DopERC20Amount[] = [\n {\n tokenAddress: MOCK_TOKEN_ADDRESS,\n amount: BigInt(0x100),\n },\n];\n\nexport const MOCK_TOKEN_AMOUNTS: DopERC20Amount[] = [\n {\n tokenAddress: MOCK_TOKEN_ADDRESS,\n amount: BigInt(0x100),\n },\n {\n tokenAddress: MOCK_TOKEN_ADDRESS_2,\n amount: BigInt(0x200),\n },\n];\n\nexport const MOCK_ERC20_RECIPIENTS: DopERC20Recipient[] = [\n {\n tokenAddress: MOCK_TOKEN_ADDRESS,\n recipientAddress: MOCK_DOP_WALLET_ADDRESS,\n },\n {\n tokenAddress: MOCK_TOKEN_ADDRESS_2,\n recipientAddress: MOCK_DOP_WALLET_ADDRESS,\n },\n];\n\nexport const MOCK_NFT_AMOUNTS: DopNFTAmount[] = [\n {\n nftAddress: MOCK_NFT_ADDRESS,\n nftTokenType: NFTTokenType.ERC721,\n tokenSubID: '0x01',\n amount: BigInt(0x01),\n },\n {\n nftAddress: MOCK_NFT_ADDRESS,\n nftTokenType: NFTTokenType.ERC1155,\n tokenSubID: '0x02',\n amount: BigInt(0x02),\n },\n];\n\nexport const MOCK_COMMITMENTS: string[] = [\n '0x0000000000000000000000000000000000000000000000000000000000000003',\n];\n\nexport const MOCK_NULLIFIERS: string[] = [\n '0x0000000000000000000000000000000000000000000000000000000000000001',\n '0x0000000000000000000000000000000000000000000000000000000000000002',\n];\n\nexport const MOCK_BOUND_PARAMS_V2 = {\n commitmentCiphertext: [\n {\n ciphertext: [\n '0x7d6854cd1fc49f0602ccd933422ed2e2ee070a9f1806843d5c81c08253134950',\n '0x8f54329134103720a7dac44d6f2a632ff18e7599b9bc1bf39d639e998a223b80',\n '0xed1ec36daf72e389fc567b2b5507fb6bff80b601bd3c0c441e4e97f28551f2f2',\n '0xede74ef3a06347178de5e4204f6bf8c475be62bcdb9911bd31be952f2e8af096',\n ],\n blindedSenderViewingKey:\n '0x898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n blindedReceiverViewingKey:\n '0x898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n memo: '0x',\n annotationData:\n '0xfaeb57df19481f9ad59b8619a5687b2623aa2280d0df93aa77258326df9e6657bbdb72d305e1373906a47c6e684c34c2553c7e061baac1f744e8ece042c6',\n },\n ],\n};\n\nexport const MOCK_BOUND_PARAMS_V3 = {\n local: {\n commitmentCiphertext: [\n {\n ciphertext:\n '0x7d6854cd1fc49f0602ccd933422ed2e2ee070a9f1806843d5c81c082531349508f54329134103720a7dac44d6f2a632ff18e7599b9bc1bf39d639e998a223b80ed1ec36daf72e389fc567b2b5507fb6bff80b601bd3c0c441e4e97f28551f2f2ede74ef3a06347178de5e4204f6bf8c475be62bcdb9911bd31be952f2e8af096',\n blindedSenderViewingKey:\n '0x898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n blindedReceiverViewingKey:\n '0x898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n },\n ],\n },\n};\n\nexport const MOCK_COMMITMENT_HASH =\n '0x2b13bccd4974c797df42a89221ed6e19e50c32055058cdcc5a8ea836233e4cab';\n\nexport const MOCK_FORMATTED_BROADCASTER_FEE_COMMITMENT_CIPHERTEXT_V2: CommitmentCiphertextV2 =\n {\n annotationData:\n '0xfaeb57df19481f9ad59b8619a5687b2623aa2280d0df93aa77258326df9e6657bbdb72d305e1373906a47c6e684c34c2553c7e061baac1f744e8ece042c6',\n blindedReceiverViewingKey:\n '898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n blindedSenderViewingKey:\n '898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n ciphertext: {\n data: [\n '8f54329134103720a7dac44d6f2a632ff18e7599b9bc1bf39d639e998a223b80',\n 'ed1ec36daf72e389fc567b2b5507fb6bff80b601bd3c0c441e4e97f28551f2f2',\n 'ede74ef3a06347178de5e4204f6bf8c475be62bcdb9911bd31be952f2e8af096',\n ],\n iv: '7d6854cd1fc49f0602ccd933422ed2e2',\n tag: 'ee070a9f1806843d5c81c08253134950',\n },\n memo: '0x',\n };\n\nexport const MOCK_FORMATTED_BROADCASTER_FEE_COMMITMENT_CIPHERTEXT_V3: CommitmentCiphertextV3 =\n {\n blindedReceiverViewingKey:\n '898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n blindedSenderViewingKey:\n '898bc07d416014a2854f756b9f8873bde925b043e9e01ea6d97183b91217b5b6',\n ciphertext: {\n algorithm: XChaChaEncryptionAlgorithm.XChaChaPoly1305,\n nonce: '7d6854cd1fc49f0602ccd933422ed2e2',\n bundle:\n 'ee070a9f1806843d5c81c082531349508f54329134103720a7dac44d6f2a632ff18e7599b9bc1bf39d639e998a223b80ed1ec36daf72e389fc567b2b5507fb6bff80b601bd3c0c441e4e97f28551f2f2ede74ef3a06347178de5e4204f6bf8c475be62bcdb9911bd31be952f2e8af096',\n },\n };\n\nexport const MOCK_NFT_AMOUNT_RECIPIENTS: DopNFTAmountRecipient[] =\n MOCK_NFT_AMOUNTS.map(nftAmount => ({\n ...nftAmount,\n recipientAddress: MOCK_DOP_WALLET_ADDRESS,\n }));\n\nexport const MOCK_NFT_AMOUNT_RECIPIENTS_DECRYPT: DopNFTAmountRecipient[] =\n MOCK_NFT_AMOUNT_RECIPIENTS.map(nftAmountRecipient => ({\n ...nftAmountRecipient,\n recipientAddress: MOCK_ETH_WALLET_ADDRESS,\n }));\n\nexport const MOCK_TOKEN_FEE: DopERC20Amount = {\n tokenAddress: MOCK_TOKEN_ADDRESS,\n amount: BigInt(0x0300),\n};\n\nexport const MOCK_FEE_TOKEN_DETAILS: FeeTokenDetails = {\n tokenAddress: MOCK_TOKEN_ADDRESS,\n feePerUnitGas: BigInt('0x2000000000000000000'), // 2x\n};\n\nexport const MOCK_TRANSACTION_GAS_DETAILS_SERIALIZED_TYPE_2: TransactionGasDetails =\n {\n evmGasType: EVMGasType.Type2,\n gasEstimate: 0n,\n maxFeePerGas: BigInt('0x1234567890'),\n maxPriorityFeePerGas: BigInt('0x123456'),\n };\n\nexport const MOCK_BALANCES_UPDATE_CALLBACK: BalancesUpdatedCallback = () => {\n // noop\n};\n\n\nexport const MOCK_FALLBACK_PROVIDER_JSON_CONFIG_POLYGON: FallbackProviderJsonConfig =\n {\n chainId: 137,\n providers: [\n {\n provider: 'https://rpc-mainnet.matic.quiknode.pro',\n priority: 3,\n weight: 3,\n maxLogsPerBatch: 2,\n stallTimeout: 2500,\n },\n {\n provider: 'https://polygon-bor-rpc.publicnode.com',\n priority: 3,\n weight: 2,\n maxLogsPerBatch: 5,\n stallTimeout: 2500,\n },\n {\n provider: 'https://rpc.ankr.com/polygon',\n priority: 3,\n weight: 2,\n maxLogsPerBatch: 5,\n },\n ],\n };\n\nexport const MOCK_FALLBACK_PROVIDER_JSON_CONFIG_SEPOLIA: FallbackProviderJsonConfig =\n {\n chainId: 11155111,\n providers: [\n {\n provider: 'https://sepolia.drpc.org',\n priority: 3,\n weight: 3,\n maxLogsPerBatch: 2,\n stallTimeout: 2500,\n },\n {\n provider: 'https://ethereum-sepolia-rpc.publicnode.com',\n priority: 3,\n weight: 2,\n maxLogsPerBatch: 5,\n },\n ],\n };\n\nexport const MOCK_FALLBACK_PROVIDER_JSON_CONFIG_ETHEREUM: FallbackProviderJsonConfig =\n {\n chainId: 1,\n providers: [\n {\n provider: 'https://eth.llamarpc.com',\n priority: 3,\n weight: 3,\n maxLogsPerBatch: 2,\n stallTimeout: 2500,\n },\n {\n provider: 'https://rpc.ankr.com/eth',\n priority: 3,\n weight: 2,\n maxLogsPerBatch: 5,\n },\n ],\n };\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="../types/global" />
|
|
2
|
-
import { Chain } from 'dop-engine-
|
|
3
|
-
import { TXIDVersion } from 'dop-sharedmodels-
|
|
2
|
+
import { Chain } from 'dop-engine-v5';
|
|
3
|
+
import { TXIDVersion } from 'dop-sharedmodels-v5';
|
|
4
4
|
export declare class TestWalletPOIRequester {
|
|
5
5
|
validateDopTxidMerkleroot(txidVersion: TXIDVersion, chain: Chain, tree: number, index: number, merkleroot: string): Promise<boolean>;
|
|
6
6
|
getLatestValidatedDopTxid(txidVersion: TXIDVersion, chain: Chain): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-wallet-poi-requester.test.js","sourceRoot":"","sources":["../../../src/tests/poi/test-wallet-poi-requester.test.ts"],"names":[],"mappings":";;;AAIA,MAAa,sBAAsB;IACjC,kDAAkD;IAClD,KAAK,CAAC,yBAAyB,CAC7B,WAAwB,EACxB,KAAY,EACZ,IAAY,EACZ,KAAa,EACb,UAAkB;QAElB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kDAAkD;IAClD,KAAK,CAAC,yBAAyB,CAC7B,WAAwB,EACxB,KAAY;QAEZ,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;IACtD,CAAC;CACF;AAnBD,wDAmBC","sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\nimport { Chain } from 'dop-engine-
|
|
1
|
+
{"version":3,"file":"test-wallet-poi-requester.test.js","sourceRoot":"","sources":["../../../src/tests/poi/test-wallet-poi-requester.test.ts"],"names":[],"mappings":";;;AAIA,MAAa,sBAAsB;IACjC,kDAAkD;IAClD,KAAK,CAAC,yBAAyB,CAC7B,WAAwB,EACxB,KAAY,EACZ,IAAY,EACZ,KAAa,EACb,UAAkB;QAElB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kDAAkD;IAClD,KAAK,CAAC,yBAAyB,CAC7B,WAAwB,EACxB,KAAY;QAEZ,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;IACtD,CAAC;CACF;AAnBD,wDAmBC","sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\nimport { Chain } from 'dop-engine-v5';\nimport { TXIDVersion } from 'dop-sharedmodels-v5';\n\nexport class TestWalletPOIRequester {\n // eslint-disable-next-line class-methods-use-this\n async validateDopTxidMerkleroot(\n txidVersion: TXIDVersion,\n chain: Chain,\n tree: number,\n index: number,\n merkleroot: string,\n ): Promise<boolean> {\n return true;\n }\n\n // eslint-disable-next-line class-methods-use-this\n async getLatestValidatedDopTxid(\n txidVersion: TXIDVersion,\n chain: Chain,\n ): Promise<{ txidIndex: Optional<number>; merkleroot: Optional<string> }> {\n return { txidIndex: 100000, merkleroot: undefined };\n }\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MerkletreeScanUpdateEvent, NetworkName } from 'dop-sharedmodels-
|
|
1
|
+
import { MerkletreeScanUpdateEvent, NetworkName } from 'dop-sharedmodels-v5';
|
|
2
2
|
export declare const utxoMerkletreeHistoryScanCallback: (scanData: MerkletreeScanUpdateEvent) => void;
|
|
3
3
|
export declare const txidMerkletreeHistoryScanCallback: (scanData: MerkletreeScanUpdateEvent) => void;
|
|
4
4
|
export declare const clearAllMerkletreeScanStatus: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.test.js","sourceRoot":"","sources":["../../src/tests/setup.test.ts"],"names":[],"mappings":"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","sourcesContent":["/// <reference types=\"../types/global\" />\n/* eslint-disable import/no-extraneous-dependencies */\n/* eslint-disable no-console */\nimport LevelDOWN from 'leveldown';\nimport fs from 'fs';\nimport {\n MerkletreeScanStatus,\n MerkletreeScanUpdateEvent,\n NETWORK_CONFIG,\n NetworkName,\n poll,\n} from 'dop-sharedmodels-
|
|
1
|
+
{"version":3,"file":"setup.test.js","sourceRoot":"","sources":["../../src/tests/setup.test.ts"],"names":[],"mappings":"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","sourcesContent":["/// <reference types=\"../types/global\" />\n/* eslint-disable import/no-extraneous-dependencies */\n/* eslint-disable no-console */\nimport LevelDOWN from 'leveldown';\nimport fs from 'fs';\nimport {\n MerkletreeScanStatus,\n MerkletreeScanUpdateEvent,\n NETWORK_CONFIG,\n NetworkName,\n poll,\n} from 'dop-sharedmodels-v5';\nimport {\n MOCK_BALANCES_UPDATE_CALLBACK,\n MOCK_FALLBACK_PROVIDER_JSON_CONFIG_SEPOLIA,\n TEST_WALLET_SOURCE,\n} from './mocks.test';\nimport { ArtifactStore } from '../services/artifacts/artifact-store';\nimport {\n setOnBalanceUpdateCallback,\n} from '../services/dop/wallets/balance-update';\nimport { TestWalletPOIRequester } from './poi/test-wallet-poi-requester.test';\nimport {\n GetLatestValidatedDopTxid,\n MerklerootValidator,\n SnarkJSGroth16,\n} from 'dop-engine-v5';\nimport {\n getEngine,\n loadProvider,\n setOnTXIDMerkletreeScanCallback,\n setOnUTXOMerkletreeScanCallback,\n startDopEngine,\n stopDopEngine,\n} from '../services/dop/core';\nimport { groth16 } from 'snarkjs';\nimport { setLoggers } from '../utils';\n\nconst ENGINE_TEST_DB = 'test.db';\nconst db = new LevelDOWN(ENGINE_TEST_DB);\n\nconst setupTests = () => {\n // Uncomment to enable logger during tests (Do not commit).\n // setLoggers(console.log, console.error);\n};\n\nconst rmDirSafe = async (dir: string) => {\n if (await fileExists(dir)) {\n await fs.promises.rm(dir, { recursive: true });\n }\n};\n\nbefore(async () => {\n await rmDirSafe(ENGINE_TEST_DB);\n await rmDirSafe('artifacts-v2.1');\n setupTests();\n});\n\nconst fileExists = (path: string): Promise<boolean> => {\n return new Promise(resolve => {\n fs.promises\n .access(path)\n .then(() => resolve(true))\n .catch(() => resolve(false));\n });\n};\n\nconst testArtifactStore = new ArtifactStore(\n fs.promises.readFile,\n async (dir, path, data) => {\n await fs.promises.mkdir(dir, { recursive: true });\n await fs.promises.writeFile(path, data);\n },\n fileExists,\n);\n\nlet currentUTXOMerkletreeScanStatus: Optional<MerkletreeScanStatus>;\nlet currentTXIDMerkletreeScanStatus: Optional<MerkletreeScanStatus>;\n\nexport const utxoMerkletreeHistoryScanCallback = (\n scanData: MerkletreeScanUpdateEvent,\n): void => {\n currentUTXOMerkletreeScanStatus = scanData.scanStatus;\n};\n\nexport const txidMerkletreeHistoryScanCallback = (\n scanData: MerkletreeScanUpdateEvent,\n): void => {\n currentTXIDMerkletreeScanStatus = scanData.scanStatus;\n};\n\nexport const clearAllMerkletreeScanStatus = () => {\n currentUTXOMerkletreeScanStatus = undefined;\n currentTXIDMerkletreeScanStatus = undefined;\n};\n\nexport const initTestEngine = async (useNativeArtifacts = false) => {\n // SETUP TEST WALLET POI REQUESTER\n const testPOIRequester = new TestWalletPOIRequester();\n const txidMerklerootValidator: MerklerootValidator = (\n txidVersion,\n chain,\n tree,\n index,\n merkleroot,\n ) =>\n testPOIRequester.validateDopTxidMerkleroot(\n txidVersion,\n chain,\n tree,\n index,\n merkleroot,\n );\n // Set the environment variable \"VERBOSE\" to enable debug logs\n const shouldDebug = typeof process.env.VERBOSE !== 'undefined';\n\n if (shouldDebug) {\n setLoggers(console.log, console.error);\n }\n\n await startDopEngine(\n TEST_WALLET_SOURCE,\n db,\n shouldDebug,\n testArtifactStore,\n useNativeArtifacts,\n false, // skipMerkletreeScans\n false // verboseLogging\n );\n\n\n setOnUTXOMerkletreeScanCallback(utxoMerkletreeHistoryScanCallback);\n setOnTXIDMerkletreeScanCallback(txidMerkletreeHistoryScanCallback);\n};\n\nexport const initTestEngineNetworks = async (\n networkName = NetworkName.EthereumSepolia,\n mockConfig = MOCK_FALLBACK_PROVIDER_JSON_CONFIG_SEPOLIA,\n) => {\n // Don't wait for async. It will try to load historical events, which takes a while.\n await loadProvider(\n mockConfig,\n networkName,\n 10_000, // pollingInterval\n );\n const { chain } = NETWORK_CONFIG[networkName];\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n getEngine().scanContractHistory(\n chain,\n undefined, // walletIdFilter\n );\n};\n\nexport const closeTestEngine = async () => {\n await stopDopEngine();\n\n clearAllMerkletreeScanStatus();\n};\n\nexport const pollUntilUTXOMerkletreeScanned = async () => {\n const status = await poll(\n async () => currentUTXOMerkletreeScanStatus,\n status => status === MerkletreeScanStatus.Complete,\n 50,\n 360_000 / 50, // 360 sec.\n );\n if (status !== MerkletreeScanStatus.Complete) {\n throw new Error(`UTXO merkletree scan should be completed - timed out`);\n }\n};\n\nexport const pollUntilTXIDMerkletreeScanned = async () => {\n const status = await poll(\n async () => currentTXIDMerkletreeScanStatus,\n status => status === MerkletreeScanStatus.Complete,\n 50,\n 360_000 / 50, // 360 sec.\n );\n if (status !== MerkletreeScanStatus.Complete) {\n throw new Error(`TXID merkletree scan should be completed - timed out`);\n }\n};\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AddressData } from 'dop-engine-
|
|
1
|
+
import { AddressData } from 'dop-engine-v5';
|
|
2
2
|
export declare const MOCK_ENCRYPT_TXID_FOR_BALANCES = "123";
|
|
3
3
|
export declare const MOCK_TOKEN_BALANCE: bigint;
|
|
4
4
|
export declare const createEngineWalletBalancesStub: (addressData: AddressData, tokenAddress: string, tree: number) => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine-stubs.test.js","sourceRoot":"","sources":["../../../src/tests/stubs/engine-stubs.test.ts"],"names":[],"mappings":";;;;;;AAAA,iDAYuB;AACvB,6DAA6D;AAC7D,kDAAyC;AAEzC,IAAI,YAAuB,CAAC;AAC5B,IAAI,gBAA2B,CAAC;AAChC,IAAI,eAA0B,CAAC;AAElB,QAAA,8BAA8B,GAAG,KAAK,CAAC;AACvC,QAAA,kBAAkB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC;AACnE,MAAM,kBAAkB,GACtB,oEAAoE,CAAC;AAEvE,MAAM,kBAAkB,GAAG,KAAK,EAC9B,WAAwB,EACxB,YAAoB,EACpB,IAAY,EACU,EAAE;IACxB,MAAM,SAAS,GAAG,IAAA,iCAAiB,EAAC,YAAY,CAAC,CAAC;IAElD,OAAO;QACL,OAAO,EAAE,0BAAkB;QAC3B,SAAS;QACT,KAAK,EAAE;YACL;gBACE,IAAI;gBACJ,QAAQ,EAAE,CAAC;gBACX,WAAW,EAAE,GAAG;gBAChB,IAAI,EAAE,sCAA8B;gBACpC,SAAS,EAAE,SAAS;gBACpB,SAAS,EAAE,KAAK;gBAChB,IAAI,EAAE,4BAAY,CAAC,cAAc,CAC/B,WAAW,EAAE,WAAW;gBACxB,WAAW,EAAE,SAAS;gBACtB,gDAAgD;gBAChD,MAAM,CAAC,wBAAwB,CAAC,EAAE,QAAQ;gBAC1C,SAAS,EAAE,YAAY;gBACvB,KAAK,EAAE,mBAAmB;gBAC1B,0BAAU,CAAC,QAAQ,EACnB,SAAS,CACV;gBACD,cAAc,EAAE,8BAAc,CAAC,iBAAiB;gBAChD,SAAS,EAAE,kBAAkB;gBAC7B,iBAAiB,EAAE,SAAS;gBAC5B,uBAAuB,EAAE,SAAS;aACnC;SACF;KACF,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,8BAA8B,GAAG,KAAK,EACjD,WAAwB,EACxB,YAAoB,EACpB,IAAY,EACZ,EAAE;IACF,YAAY,GAAG,eAAK;SACjB,IAAI,CAAC,8BAAc,EAAE,+BAA+B,CAAC;SACrD,QAAQ,CAAC;QACR,CAAC,YAAY,CAAC,EAAE,MAAM,kBAAkB,CAAC,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC;KAC1E,CAAC,CAAC;AACP,CAAC,CAAC;AAVW,QAAA,8BAA8B,kCAUzC;AAEK,MAAM,kCAAkC,GAAG,KAAK,EACrD,WAAwB,EACxB,YAAoB,EACpB,IAAY,EACZ,EAAE;IACF,MAAM,qBAAqB,GAAG,yBAAS,CAAC,kBAAkB,CACxD,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAC9B,0BAAU,CAAC,QAAQ,CACpB,CAAC;IACF,gBAAgB,GAAG,eAAK;SACrB,IAAI,CAAC,yBAAS,CAAC,SAAS,EAAE,8BAA8B,CAAC;SACzD,QAAQ,CAAC;QACR,CAAC,qBAAqB,CAAC,EAAE;YACvB,MAAM,kBAAkB,CAAC,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC;SAC1D;KACF,CAAC,CAAC;AACP,CAAC,CAAC;AAhBW,QAAA,kCAAkC,sCAgB7C;AAEK,MAAM,2BAA2B,GAAG,GAAG,EAAE;IAC9C,eAAe,GAAG,eAAK;SACpB,IAAI,CAAC,sBAAM,CAAC,SAAS,EAAE,gBAAgB,CAAC;SACxC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACpB,CAAC,CAAC;AAJW,QAAA,2BAA2B,+BAItC;AAEK,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,YAAY,EAAE,OAAO,EAAE,CAAC;IACxB,gBAAgB,EAAE,OAAO,EAAE,CAAC;IAC5B,eAAe,EAAE,OAAO,EAAE,CAAC;AAC7B,CAAC,CAAC;AAJW,QAAA,kBAAkB,sBAI7B","sourcesContent":["import {\n OutputType,\n TransactNote,\n Prover,\n AbstractWallet,\n DopWallet,\n ByteLength,\n getTokenDataERC20,\n TreeBalance,\n AddressData,\n CommitmentType,\n ByteUtils,\n} from 'dop-engine-
|
|
1
|
+
{"version":3,"file":"engine-stubs.test.js","sourceRoot":"","sources":["../../../src/tests/stubs/engine-stubs.test.ts"],"names":[],"mappings":";;;;;;AAAA,iDAYuB;AACvB,6DAA6D;AAC7D,kDAAyC;AAEzC,IAAI,YAAuB,CAAC;AAC5B,IAAI,gBAA2B,CAAC;AAChC,IAAI,eAA0B,CAAC;AAElB,QAAA,8BAA8B,GAAG,KAAK,CAAC;AACvC,QAAA,kBAAkB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC;AACnE,MAAM,kBAAkB,GACtB,oEAAoE,CAAC;AAEvE,MAAM,kBAAkB,GAAG,KAAK,EAC9B,WAAwB,EACxB,YAAoB,EACpB,IAAY,EACU,EAAE;IACxB,MAAM,SAAS,GAAG,IAAA,iCAAiB,EAAC,YAAY,CAAC,CAAC;IAElD,OAAO;QACL,OAAO,EAAE,0BAAkB;QAC3B,SAAS;QACT,KAAK,EAAE;YACL;gBACE,IAAI;gBACJ,QAAQ,EAAE,CAAC;gBACX,WAAW,EAAE,GAAG;gBAChB,IAAI,EAAE,sCAA8B;gBACpC,SAAS,EAAE,SAAS;gBACpB,SAAS,EAAE,KAAK;gBAChB,IAAI,EAAE,4BAAY,CAAC,cAAc,CAC/B,WAAW,EAAE,WAAW;gBACxB,WAAW,EAAE,SAAS;gBACtB,gDAAgD;gBAChD,MAAM,CAAC,wBAAwB,CAAC,EAAE,QAAQ;gBAC1C,SAAS,EAAE,YAAY;gBACvB,KAAK,EAAE,mBAAmB;gBAC1B,0BAAU,CAAC,QAAQ,EACnB,SAAS,CACV;gBACD,cAAc,EAAE,8BAAc,CAAC,iBAAiB;gBAChD,SAAS,EAAE,kBAAkB;gBAC7B,iBAAiB,EAAE,SAAS;gBAC5B,uBAAuB,EAAE,SAAS;aACnC;SACF;KACF,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,8BAA8B,GAAG,KAAK,EACjD,WAAwB,EACxB,YAAoB,EACpB,IAAY,EACZ,EAAE;IACF,YAAY,GAAG,eAAK;SACjB,IAAI,CAAC,8BAAc,EAAE,+BAA+B,CAAC;SACrD,QAAQ,CAAC;QACR,CAAC,YAAY,CAAC,EAAE,MAAM,kBAAkB,CAAC,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC;KAC1E,CAAC,CAAC;AACP,CAAC,CAAC;AAVW,QAAA,8BAA8B,kCAUzC;AAEK,MAAM,kCAAkC,GAAG,KAAK,EACrD,WAAwB,EACxB,YAAoB,EACpB,IAAY,EACZ,EAAE;IACF,MAAM,qBAAqB,GAAG,yBAAS,CAAC,kBAAkB,CACxD,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAC9B,0BAAU,CAAC,QAAQ,CACpB,CAAC;IACF,gBAAgB,GAAG,eAAK;SACrB,IAAI,CAAC,yBAAS,CAAC,SAAS,EAAE,8BAA8B,CAAC;SACzD,QAAQ,CAAC;QACR,CAAC,qBAAqB,CAAC,EAAE;YACvB,MAAM,kBAAkB,CAAC,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC;SAC1D;KACF,CAAC,CAAC;AACP,CAAC,CAAC;AAhBW,QAAA,kCAAkC,sCAgB7C;AAEK,MAAM,2BAA2B,GAAG,GAAG,EAAE;IAC9C,eAAe,GAAG,eAAK;SACpB,IAAI,CAAC,sBAAM,CAAC,SAAS,EAAE,gBAAgB,CAAC;SACxC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACpB,CAAC,CAAC;AAJW,QAAA,2BAA2B,+BAItC;AAEK,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,YAAY,EAAE,OAAO,EAAE,CAAC;IACxB,gBAAgB,EAAE,OAAO,EAAE,CAAC;IAC5B,eAAe,EAAE,OAAO,EAAE,CAAC;AAC7B,CAAC,CAAC;AAJW,QAAA,kBAAkB,sBAI7B","sourcesContent":["import {\n OutputType,\n TransactNote,\n Prover,\n AbstractWallet,\n DopWallet,\n ByteLength,\n getTokenDataERC20,\n TreeBalance,\n AddressData,\n CommitmentType,\n ByteUtils,\n} from 'dop-engine-v5';\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport sinon, { SinonStub } from 'sinon';\n\nlet balancesStub: SinonStub;\nlet treeBalancesStub: SinonStub;\nlet verifyProofStub: SinonStub;\n\nexport const MOCK_ENCRYPT_TXID_FOR_BALANCES = '123';\nexport const MOCK_TOKEN_BALANCE = BigInt('1000000000000000000000');\nconst ZERO_32_BYTE_VALUE =\n '0x0000000000000000000000000000000000000000000000000000000000000000';\n\nconst getMockBalanceData = async (\n addressData: AddressData,\n tokenAddress: string,\n tree: number,\n): Promise<TreeBalance> => {\n const tokenData = getTokenDataERC20(tokenAddress);\n\n return {\n balance: MOCK_TOKEN_BALANCE,\n tokenData,\n utxos: [\n {\n tree,\n position: 0,\n blockNumber: 100,\n txid: MOCK_ENCRYPT_TXID_FOR_BALANCES,\n timestamp: undefined,\n spendtxid: false,\n note: TransactNote.createTransfer(\n addressData, // receiver\n addressData, // sender\n // '12345678901234561234567890123456', // random\n BigInt('1000000000000000000000'), // value\n tokenData, // tokenData\n false, // shouldShowSender\n OutputType.Transfer,\n undefined, // memoText\n ),\n commitmentType: CommitmentType.EncryptCommitment,\n nullifier: ZERO_32_BYTE_VALUE,\n blindedCommitment: undefined,\n transactCreationDopTxid: undefined,\n },\n ],\n };\n};\n\nexport const createEngineWalletBalancesStub = async (\n addressData: AddressData,\n tokenAddress: string,\n tree: number,\n) => {\n balancesStub = sinon\n .stub(AbstractWallet, 'getTokenBalancesByTxidVersion')\n .resolves({\n [tokenAddress]: await getMockBalanceData(addressData, tokenAddress, tree),\n });\n};\n\nexport const createEngineWalletTreeBalancesStub = async (\n addressData: AddressData,\n tokenAddress: string,\n tree: number,\n) => {\n const formattedTokenAddress = ByteUtils.formatToByteLength(\n tokenAddress.replace('0x', ''),\n ByteLength.UINT_256,\n );\n treeBalancesStub = sinon\n .stub(DopWallet.prototype, 'getTotalBalancesByTreeNumber')\n .resolves({\n [formattedTokenAddress]: [\n await getMockBalanceData(addressData, tokenAddress, tree),\n ],\n });\n};\n\nexport const createEngineVerifyProofStub = () => {\n verifyProofStub = sinon\n .stub(Prover.prototype, 'verifyDopProof')\n .resolves(true);\n};\n\nexport const restoreEngineStubs = () => {\n balancesStub?.restore();\n treeBalancesStub?.restore();\n verifyProofStub?.restore();\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blocked-address.js","sourceRoot":"","sources":["../../src/utils/blocked-address.ts"],"names":[],"mappings":";;;AAAA,6DAG6B;AAEtB,MAAM,gBAAgB,GAAG,CAAC,OAAgB,EAAW,EAAE;IAC5D,IAAI,CAAC,IAAA,+BAAS,EAAC,OAAO,CAAC,EAAE;QACvB,OAAO,KAAK,CAAC;KACd;IACD,IAAI,mDAA6B,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE;QACjE,OAAO,IAAI,CAAC;KACb;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AARW,QAAA,gBAAgB,oBAQ3B;AAEK,MAAM,uBAAuB,GAAG,CAAC,OAAgB,EAAE,EAAE;IAC1D,IAAI,IAAA,wBAAgB,EAAC,OAAO,CAAC,EAAE;QAC7B,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;KACpC;AACH,CAAC,CAAC;AAJW,QAAA,uBAAuB,2BAIlC","sourcesContent":["import {\n OFAC_SANCTIONS_LIST_ADDRESSES,\n isDefined,\n} from 'dop-sharedmodels-
|
|
1
|
+
{"version":3,"file":"blocked-address.js","sourceRoot":"","sources":["../../src/utils/blocked-address.ts"],"names":[],"mappings":";;;AAAA,6DAG6B;AAEtB,MAAM,gBAAgB,GAAG,CAAC,OAAgB,EAAW,EAAE;IAC5D,IAAI,CAAC,IAAA,+BAAS,EAAC,OAAO,CAAC,EAAE;QACvB,OAAO,KAAK,CAAC;KACd;IACD,IAAI,mDAA6B,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE;QACjE,OAAO,IAAI,CAAC;KACb;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AARW,QAAA,gBAAgB,oBAQ3B;AAEK,MAAM,uBAAuB,GAAG,CAAC,OAAgB,EAAE,EAAE;IAC1D,IAAI,IAAA,wBAAgB,EAAC,OAAO,CAAC,EAAE;QAC7B,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;KACpC;AACH,CAAC,CAAC;AAJW,QAAA,uBAAuB,2BAIlC","sourcesContent":["import {\n OFAC_SANCTIONS_LIST_ADDRESSES,\n isDefined,\n} from 'dop-sharedmodels-v5';\n\nexport const isBlockedAddress = (address?: string): boolean => {\n if (!isDefined(address)) {\n return false;\n }\n if (OFAC_SANCTIONS_LIST_ADDRESSES.includes(address.toLowerCase())) {\n return true;\n }\n return false;\n};\n\nexport const assertNotBlockedAddress = (address?: string) => {\n if (isBlockedAddress(address)) {\n throw new Error('Blocked address');\n }\n};\n"]}
|
package/dist/utils/error.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/utils/error.ts"],"names":[],"mappings":";;;AAAA,6DAAoD;AACpD,qCAA4C;AAErC,MAAM,sBAAsB,GAAG,CACpC,IAAY;AACZ,8DAA8D;AAC9D,GAAgB,EACT,EAAE;IACT,IAAA,yBAAgB,EAAC,mCAAmC,IAAI,EAAE,CAAC,CAAC;IAE5D,IAAI,GAAG,YAAY,KAAK,EAAE;QACxB,MAAM,KAAK,GAAG,IAAA,mCAAa,EAAC,GAAG,CAAC,CAAC;QACjC,IAAA,yBAAgB,EAAC,KAAK,CAAC,CAAC;QACxB,OAAO,KAAK,CAAC;KACd;IAED,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1D,IAAA,yBAAgB,EAAC,KAAK,CAAC,CAAC;IACxB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAhBW,QAAA,sBAAsB,0BAgBjC","sourcesContent":["import { sanitizeError } from 'dop-sharedmodels-
|
|
1
|
+
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/utils/error.ts"],"names":[],"mappings":";;;AAAA,6DAAoD;AACpD,qCAA4C;AAErC,MAAM,sBAAsB,GAAG,CACpC,IAAY;AACZ,8DAA8D;AAC9D,GAAgB,EACT,EAAE;IACT,IAAA,yBAAgB,EAAC,mCAAmC,IAAI,EAAE,CAAC,CAAC;IAE5D,IAAI,GAAG,YAAY,KAAK,EAAE;QACxB,MAAM,KAAK,GAAG,IAAA,mCAAa,EAAC,GAAG,CAAC,CAAC;QACjC,IAAA,yBAAgB,EAAC,KAAK,CAAC,CAAC;QACxB,OAAO,KAAK,CAAC;KACd;IAED,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1D,IAAA,yBAAgB,EAAC,KAAK,CAAC,CAAC;IACxB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAhBW,QAAA,sBAAsB,0BAgBjC","sourcesContent":["import { sanitizeError } from 'dop-sharedmodels-v5';\nimport { sendErrorMessage } from './logger';\n\nexport const reportAndSanitizeError = (\n func: string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n err: Error | any,\n): Error => {\n sendErrorMessage(`Caught error in DOP Wallet SDK: ${func}`);\n\n if (err instanceof Error) {\n const error = sanitizeError(err);\n sendErrorMessage(error);\n return error;\n }\n\n const error = new Error('Unknown error.', { cause: err });\n sendErrorMessage(error);\n return error;\n};\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NetworkName } from 'dop-sharedmodels-
|
|
1
|
+
import { NetworkName } from 'dop-sharedmodels-v5';
|
|
2
2
|
/**
|
|
3
3
|
* L2s don't manage gas prices in the same way. tx.gasprice (contract) is not necessarily the same value as transactionRequest.gasPrice (ethers).
|
|
4
4
|
* Since overallBatchMinGasPrice is an optional parameter, we simply remove it for L2s. This will skip validation on the contract side.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gas-price.js","sourceRoot":"","sources":["../../src/utils/gas-price.ts"],"names":[],"mappings":";;;AAAA,6DAAkD;AAElD;;;GAGG;AACI,MAAM,0CAA0C,GAAG,CACxD,oBAA6B,EAC7B,WAAwB,EACxB,EAAE;IACF,IAAI,oBAAoB,EAAE;QACxB,iEAAiE;QACjE,OAAO,KAAK,CAAC;KACd;IACD,QAAQ,WAAW,EAAE;QACnB,KAAK,iCAAW,CAAC,QAAQ;YACvB,8CAA8C;YAC9C,OAAO,KAAK,CAAC;QACf,KAAK,iCAAW,CAAC,QAAQ,CAAC;QAC1B,KAAK,iCAAW,CAAC,QAAQ,CAAC;QAC1B,KAAK,iCAAW,CAAC,OAAO,CAAC;QACzB,KAAK,iCAAW,CAAC,MAAM,CAAC;QACxB,KAAK,iCAAW,CAAC,WAAW,CAAC;QAC7B,KAAK,iCAAW,CAAC,yBAAyB,CAAC;QAC3C,KAAK,iCAAW,CAAC,0BAA0B,CAAC;QAC5C,KAAK,iCAAW,CAAC,yBAAyB,CAAC;QAC3C,KAAK,iCAAW,CAAC,wBAAwB,CAAC;QAC1C,KAAK,iCAAW,CAAC,eAAe,CAAC;QACjC,KAAK,iCAAW,CAAC,OAAO;YACtB,OAAO,IAAI,CAAC;QACd;YACE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;KAC5C;AACH,CAAC,CAAC;AA3BW,QAAA,0CAA0C,8CA2BrD","sourcesContent":["import { NetworkName } from 'dop-sharedmodels-
|
|
1
|
+
{"version":3,"file":"gas-price.js","sourceRoot":"","sources":["../../src/utils/gas-price.ts"],"names":[],"mappings":";;;AAAA,6DAAkD;AAElD;;;GAGG;AACI,MAAM,0CAA0C,GAAG,CACxD,oBAA6B,EAC7B,WAAwB,EACxB,EAAE;IACF,IAAI,oBAAoB,EAAE;QACxB,iEAAiE;QACjE,OAAO,KAAK,CAAC;KACd;IACD,QAAQ,WAAW,EAAE;QACnB,KAAK,iCAAW,CAAC,QAAQ;YACvB,8CAA8C;YAC9C,OAAO,KAAK,CAAC;QACf,KAAK,iCAAW,CAAC,QAAQ,CAAC;QAC1B,KAAK,iCAAW,CAAC,QAAQ,CAAC;QAC1B,KAAK,iCAAW,CAAC,OAAO,CAAC;QACzB,KAAK,iCAAW,CAAC,MAAM,CAAC;QACxB,KAAK,iCAAW,CAAC,WAAW,CAAC;QAC7B,KAAK,iCAAW,CAAC,yBAAyB,CAAC;QAC3C,KAAK,iCAAW,CAAC,0BAA0B,CAAC;QAC5C,KAAK,iCAAW,CAAC,yBAAyB,CAAC;QAC3C,KAAK,iCAAW,CAAC,wBAAwB,CAAC;QAC1C,KAAK,iCAAW,CAAC,eAAe,CAAC;QACjC,KAAK,iCAAW,CAAC,OAAO;YACtB,OAAO,IAAI,CAAC;QACd;YACE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;KAC5C;AACH,CAAC,CAAC;AA3BW,QAAA,0CAA0C,8CA2BrD","sourcesContent":["import { NetworkName } from 'dop-sharedmodels-v5';\n\n/**\n * L2s don't manage gas prices in the same way. tx.gasprice (contract) is not necessarily the same value as transactionRequest.gasPrice (ethers).\n * Since overallBatchMinGasPrice is an optional parameter, we simply remove it for L2s. This will skip validation on the contract side.\n */\nexport const shouldSetOverallBatchMinGasPriceForNetwork = (\n sendWithPublicWallet: boolean,\n networkName: NetworkName,\n) => {\n if (sendWithPublicWallet) {\n // Only Broadcaster transactions require overallBatchMinGasPrice.\n return false;\n }\n switch (networkName) {\n case NetworkName.Arbitrum:\n // L2s should not set overallBatchMinGasPrice.\n return false;\n case NetworkName.Ethereum:\n case NetworkName.BNBChain:\n case NetworkName.Polygon:\n case NetworkName.Xlayer:\n case NetworkName.PolygonAmoy:\n case NetworkName.ArbitrumGoerli_DEPRECATED:\n case NetworkName.EthereumRopsten_DEPRECATED:\n case NetworkName.EthereumGoerli_DEPRECATED:\n case NetworkName.PolygonMumbai_DEPRECATED:\n case NetworkName.EthereumSepolia:\n case NetworkName.Hardhat:\n return true;\n default:\n throw new Error('Undefined networkName');\n }\n};\n"]}
|