dop-wallet-v6 1.2.1 → 1.2.3
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 +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 +2 -2
- 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 +1 -1
- package/dist/services/artifacts/artifact-util.js.map +1 -1
- package/dist/services/dop/core/__tests__/providers.test.js +2 -2
- 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 +1 -1
- 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 +2 -2
- 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 +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 +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 +2 -2
- package/dist/services/dop/core/load-provider.js.map +1 -1
- package/dist/services/dop/core/merkletree.d.ts +3 -3
- package/dist/services/dop/core/merkletree.js +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 +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 +1 -1
- package/dist/services/dop/core/providers.js.map +1 -1
- package/dist/services/dop/dop-txids/__tests__/dop-txid-sync-graph-v2.test.js +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 +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 +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 +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 +2 -2
- 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 +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 +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 +2 -2
- 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 +2 -2
- 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 +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 +2 -2
- 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 +2 -2
- package/dist/services/dop/quick-sync/V3/graph-type-formatters-v3.js +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 +2 -2
- 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 +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 +2 -2
- 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 +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 +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 +1 -1
- package/dist/services/dop/util/crypto.js.map +1 -1
- package/dist/services/dop/wallets/__tests__/balances-live.test.js +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 +2 -2
- package/dist/services/dop/wallets/__tests__/balances-update.test.js.map +1 -1
- package/dist/services/dop/wallets/__tests__/balances.test.js +2 -2
- package/dist/services/dop/wallets/__tests__/balances.test.js.map +1 -1
- package/dist/services/dop/wallets/__tests__/wallets.test.js +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 +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 +2 -2
- package/dist/services/dop/wallets/wallets.js.map +1 -1
- package/dist/services/ethers/ethers-util.js +1 -1
- package/dist/services/ethers/ethers-util.js.map +1 -1
- package/dist/services/transactions/__tests__/proof-cache.test.js +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 +2 -2
- 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 +2 -2
- package/dist/services/transactions/__tests__/tx-encrypt-base-token.test.js.map +1 -1
- package/dist/services/transactions/__tests__/tx-gas-details.test.js +1 -1
- package/dist/services/transactions/__tests__/tx-gas-details.test.js.map +1 -1
- package/dist/services/transactions/__tests__/tx-notes.test.js +1 -1
- package/dist/services/transactions/__tests__/tx-notes.test.js.map +1 -1
- package/dist/services/transactions/__tests__/tx-transfer.test.js +2 -2
- 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 +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 +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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +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 +2 -2
- 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 +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 +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 +2 -2
- 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 +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 +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 +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 +1 -1
- 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 +2 -2
- package/dist/tests/setup.test.js +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 +1 -1
- package/dist/tests/stubs/engine-stubs.test.js.map +1 -1
- package/dist/utils/blocked-address.js +1 -1
- package/dist/utils/blocked-address.js.map +1 -1
- package/dist/utils/error.js +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 +1 -1
- package/dist/utils/gas-price.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-type-formatters-v2.js","sourceRoot":"","sources":["../../../../../src/services/dop/quick-sync/V2/graph-type-formatters-v2.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Nullifier,\n DecryptStoredEvent,\n CommitmentEvent,\n Commitment,\n LegacyGeneratedCommitment,\n CommitmentType,\n LegacyEncryptedCommitment,\n EncryptCommitment,\n TransactCommitmentV2,\n CommitmentCiphertextV2,\n Ciphertext,\n LegacyCommitmentCiphertext,\n} from 'dop-engine-v3';\nimport {\n Nullifier as GraphNullifierV2,\n Decrypt as GraphDecryptV2,\n LegacyGeneratedCommitment as GraphLegacyGeneratedCommitmentV2,\n LegacyEncryptedCommitment as GraphLegacyEncryptedCommitmentV2,\n EncryptCommitment as GraphEncryptCommitmentV2,\n TransactCommitment as GraphTransactCommitmentV2,\n LegacyCommitmentCiphertext as GraphLegacyCommitmentCiphertextV2,\n CommitmentCiphertext as GraphCommitmentCiphertextV2,\n Ciphertext as GraphCiphertextV2,\n} from './graphql';\nimport { getAddress } from 'ethers';\nimport { isDefined } from 'dop-sharedmodels-v3';\nimport {\n formatTo32Bytes,\n bigIntStringToHex,\n formatTo16Bytes,\n formatPreImage,\n graphTokenTypeToEngineTokenType,\n} from '../shared-formatters';\n\nexport type GraphCommitmentV2 =\n | GraphLegacyEncryptedCommitmentV2\n | GraphLegacyGeneratedCommitmentV2\n | GraphEncryptCommitmentV2\n | GraphTransactCommitmentV2;\n\nexport type GraphCommitmentBatchV2 = {\n transactionHash: string;\n commitments: GraphCommitmentV2[];\n treeNumber: number;\n startPosition: number;\n blockNumber: number;\n};\n\nexport const formatGraphNullifierEventsV2 = (\n nullifiers: GraphNullifierV2[],\n): Nullifier[] => {\n return nullifiers.map(nullifier => {\n return {\n txid: formatTo32Bytes(nullifier.transactionHash, false),\n nullifier: formatTo32Bytes(nullifier.nullifier, false),\n treeNumber: nullifier.treeNumber,\n blockNumber: Number(nullifier.blockNumber),\n spentDopTxid: undefined,\n };\n });\n};\n\nexport const formatGraphDecryptEventsV2 = (\n decrypts: GraphDecryptV2[],\n): DecryptStoredEvent[] => {\n return decrypts.map(decrypt => {\n return {\n txid: formatTo32Bytes(decrypt.transactionHash, false),\n timestamp: Number(decrypt.blockTimestamp),\n eventLogIndex: Number(decrypt.eventLogIndex),\n toAddress: getAddress(decrypt.to),\n tokenType: graphTokenTypeToEngineTokenType(decrypt.token.tokenType),\n tokenAddress: getAddress(decrypt.token.tokenAddress),\n tokenSubID: decrypt.token.tokenSubID,\n amount: bigIntStringToHex(decrypt.amount),\n fee: bigIntStringToHex(decrypt.fee),\n blockNumber: Number(decrypt.blockNumber),\n dopTxid: undefined,\n blindedCommitment: undefined,\n };\n });\n};\n\nexport const formatGraphCommitmentEventsV2 = (\n graphCommitmentBatches: GraphCommitmentBatchV2[],\n): CommitmentEvent[] => {\n return graphCommitmentBatches.map(graphCommitmentBatch => {\n return {\n txid: formatTo32Bytes(graphCommitmentBatch.transactionHash, false),\n commitments: graphCommitmentBatch.commitments.map(formatCommitment),\n treeNumber: graphCommitmentBatch.treeNumber,\n startPosition: graphCommitmentBatch.startPosition,\n blockNumber: graphCommitmentBatch.blockNumber,\n };\n });\n};\n\nconst formatCommitment = (commitment: GraphCommitmentV2): Commitment => {\n switch (commitment.commitmentType) {\n case 'LegacyGeneratedCommitment':\n return formatLegacyGeneratedCommitment(\n commitment as GraphLegacyGeneratedCommitmentV2,\n );\n case 'LegacyEncryptedCommitment':\n return formatLegacyEncryptedCommitment(\n commitment as GraphLegacyEncryptedCommitmentV2,\n );\n case 'EncryptCommitment':\n return formatEncryptCommitment(commitment as GraphEncryptCommitmentV2);\n case 'TransactCommitment':\n return formatTransactCommitment(commitment as GraphTransactCommitmentV2);\n }\n};\n\nconst formatCiphertext = (graphCiphertext: GraphCiphertextV2): Ciphertext => {\n return {\n iv: formatTo16Bytes(graphCiphertext.iv, false),\n tag: formatTo16Bytes(graphCiphertext.tag, false),\n data: graphCiphertext.data.map(d => formatTo32Bytes(d, false)),\n };\n};\n\nconst formatLegacyCommitmentCiphertext = (\n graphLegacyCommitmentCiphertext: GraphLegacyCommitmentCiphertextV2,\n): LegacyCommitmentCiphertext => {\n return {\n ciphertext: formatCiphertext(graphLegacyCommitmentCiphertext.ciphertext),\n ephemeralKeys: graphLegacyCommitmentCiphertext.ephemeralKeys.map(\n ephemeralKey => formatTo32Bytes(ephemeralKey, false),\n ),\n memo: graphLegacyCommitmentCiphertext.memo.map(m =>\n formatTo32Bytes(m, false),\n ),\n };\n};\n\nconst formatCommitmentCiphertext = (\n graphCommitmentCiphertext: GraphCommitmentCiphertextV2,\n): CommitmentCiphertextV2 => {\n return {\n ciphertext: formatCiphertext(graphCommitmentCiphertext.ciphertext),\n blindedReceiverViewingKey: formatTo32Bytes(\n graphCommitmentCiphertext.blindedReceiverViewingKey,\n false,\n ),\n blindedSenderViewingKey: formatTo32Bytes(\n graphCommitmentCiphertext.blindedSenderViewingKey,\n false,\n ),\n memo: graphCommitmentCiphertext.memo,\n annotationData: graphCommitmentCiphertext.annotationData,\n };\n};\n\nconst formatLegacyGeneratedCommitment = (\n commitment: GraphLegacyGeneratedCommitmentV2,\n): LegacyGeneratedCommitment => {\n return {\n txid: formatTo32Bytes(commitment.transactionHash, false),\n timestamp: Number(commitment.blockTimestamp),\n commitmentType: CommitmentType.LegacyGeneratedCommitment,\n hash: formatTo32Bytes(bigIntStringToHex(commitment.hash), false),\n preImage: formatPreImage(commitment.preimage),\n encryptedRandom: [\n formatTo32Bytes(commitment.encryptedRandom[0], false),\n formatTo16Bytes(commitment.encryptedRandom[1], false),\n ] as [string, string],\n blockNumber: Number(commitment.blockNumber),\n utxoTree: commitment.treeNumber,\n utxoIndex: commitment.treePosition,\n };\n};\n\nconst formatLegacyEncryptedCommitment = (\n commitment: GraphLegacyEncryptedCommitmentV2,\n): LegacyEncryptedCommitment => {\n return {\n txid: formatTo32Bytes(commitment.transactionHash, false),\n timestamp: Number(commitment.blockTimestamp),\n commitmentType: CommitmentType.LegacyEncryptedCommitment,\n hash: formatTo32Bytes(bigIntStringToHex(commitment.hash), false),\n ciphertext: formatLegacyCommitmentCiphertext(commitment.legacyCiphertext),\n blockNumber: Number(commitment.blockNumber),\n utxoTree: commitment.treeNumber,\n utxoIndex: commitment.treePosition,\n dopTxid: undefined,\n };\n};\n\nconst formatEncryptCommitment = (\n commitment: GraphEncryptCommitmentV2,\n): EncryptCommitment => {\n const encryptCommitment: EncryptCommitment = {\n txid: formatTo32Bytes(commitment.transactionHash, false),\n timestamp: Number(commitment.blockTimestamp),\n commitmentType: CommitmentType.EncryptCommitment,\n hash: formatTo32Bytes(bigIntStringToHex(commitment.hash), false),\n preImage: formatPreImage(commitment.preimage),\n blockNumber: Number(commitment.blockNumber),\n encryptedBundle: commitment.encryptedBundle as [string, string, string],\n encryptKey: commitment.encryptKey,\n fee: isDefined(commitment.fee) ? commitment.fee.toString() : undefined,\n utxoTree: commitment.treeNumber,\n utxoIndex: commitment.treePosition,\n from: undefined,\n };\n if (!isDefined(encryptCommitment.fee)) {\n delete encryptCommitment.fee;\n }\n return encryptCommitment;\n};\n\nconst formatTransactCommitment = (\n commitment: GraphTransactCommitmentV2,\n): TransactCommitmentV2 => {\n return {\n txid: formatTo32Bytes(commitment.transactionHash, false),\n timestamp: Number(commitment.blockTimestamp),\n commitmentType: CommitmentType.TransactCommitmentV2,\n hash: formatTo32Bytes(bigIntStringToHex(commitment.hash), false),\n ciphertext: formatCommitmentCiphertext(commitment.ciphertext),\n blockNumber: Number(commitment.blockNumber),\n utxoTree: commitment.treeNumber,\n utxoIndex: commitment.treePosition,\n dopTxid: undefined,\n };\n};\n"]}
|
|
1
|
+
{"version":3,"file":"graph-type-formatters-v2.js","sourceRoot":"","sources":["../../../../../src/services/dop/quick-sync/V2/graph-type-formatters-v2.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Nullifier,\n DecryptStoredEvent,\n CommitmentEvent,\n Commitment,\n LegacyGeneratedCommitment,\n CommitmentType,\n LegacyEncryptedCommitment,\n EncryptCommitment,\n TransactCommitmentV2,\n CommitmentCiphertextV2,\n Ciphertext,\n LegacyCommitmentCiphertext,\n} from 'dop-engine-v5';\nimport {\n Nullifier as GraphNullifierV2,\n Decrypt as GraphDecryptV2,\n LegacyGeneratedCommitment as GraphLegacyGeneratedCommitmentV2,\n LegacyEncryptedCommitment as GraphLegacyEncryptedCommitmentV2,\n EncryptCommitment as GraphEncryptCommitmentV2,\n TransactCommitment as GraphTransactCommitmentV2,\n LegacyCommitmentCiphertext as GraphLegacyCommitmentCiphertextV2,\n CommitmentCiphertext as GraphCommitmentCiphertextV2,\n Ciphertext as GraphCiphertextV2,\n} from './graphql';\nimport { getAddress } from 'ethers';\nimport { isDefined } from 'dop-sharedmodels-v5';\nimport {\n formatTo32Bytes,\n bigIntStringToHex,\n formatTo16Bytes,\n formatPreImage,\n graphTokenTypeToEngineTokenType,\n} from '../shared-formatters';\n\nexport type GraphCommitmentV2 =\n | GraphLegacyEncryptedCommitmentV2\n | GraphLegacyGeneratedCommitmentV2\n | GraphEncryptCommitmentV2\n | GraphTransactCommitmentV2;\n\nexport type GraphCommitmentBatchV2 = {\n transactionHash: string;\n commitments: GraphCommitmentV2[];\n treeNumber: number;\n startPosition: number;\n blockNumber: number;\n};\n\nexport const formatGraphNullifierEventsV2 = (\n nullifiers: GraphNullifierV2[],\n): Nullifier[] => {\n return nullifiers.map(nullifier => {\n return {\n txid: formatTo32Bytes(nullifier.transactionHash, false),\n nullifier: formatTo32Bytes(nullifier.nullifier, false),\n treeNumber: nullifier.treeNumber,\n blockNumber: Number(nullifier.blockNumber),\n spentDopTxid: undefined,\n };\n });\n};\n\nexport const formatGraphDecryptEventsV2 = (\n decrypts: GraphDecryptV2[],\n): DecryptStoredEvent[] => {\n return decrypts.map(decrypt => {\n return {\n txid: formatTo32Bytes(decrypt.transactionHash, false),\n timestamp: Number(decrypt.blockTimestamp),\n eventLogIndex: Number(decrypt.eventLogIndex),\n toAddress: getAddress(decrypt.to),\n tokenType: graphTokenTypeToEngineTokenType(decrypt.token.tokenType),\n tokenAddress: getAddress(decrypt.token.tokenAddress),\n tokenSubID: decrypt.token.tokenSubID,\n amount: bigIntStringToHex(decrypt.amount),\n fee: bigIntStringToHex(decrypt.fee),\n blockNumber: Number(decrypt.blockNumber),\n dopTxid: undefined,\n blindedCommitment: undefined,\n };\n });\n};\n\nexport const formatGraphCommitmentEventsV2 = (\n graphCommitmentBatches: GraphCommitmentBatchV2[],\n): CommitmentEvent[] => {\n return graphCommitmentBatches.map(graphCommitmentBatch => {\n return {\n txid: formatTo32Bytes(graphCommitmentBatch.transactionHash, false),\n commitments: graphCommitmentBatch.commitments.map(formatCommitment),\n treeNumber: graphCommitmentBatch.treeNumber,\n startPosition: graphCommitmentBatch.startPosition,\n blockNumber: graphCommitmentBatch.blockNumber,\n };\n });\n};\n\nconst formatCommitment = (commitment: GraphCommitmentV2): Commitment => {\n switch (commitment.commitmentType) {\n case 'LegacyGeneratedCommitment':\n return formatLegacyGeneratedCommitment(\n commitment as GraphLegacyGeneratedCommitmentV2,\n );\n case 'LegacyEncryptedCommitment':\n return formatLegacyEncryptedCommitment(\n commitment as GraphLegacyEncryptedCommitmentV2,\n );\n case 'EncryptCommitment':\n return formatEncryptCommitment(commitment as GraphEncryptCommitmentV2);\n case 'TransactCommitment':\n return formatTransactCommitment(commitment as GraphTransactCommitmentV2);\n }\n};\n\nconst formatCiphertext = (graphCiphertext: GraphCiphertextV2): Ciphertext => {\n return {\n iv: formatTo16Bytes(graphCiphertext.iv, false),\n tag: formatTo16Bytes(graphCiphertext.tag, false),\n data: graphCiphertext.data.map(d => formatTo32Bytes(d, false)),\n };\n};\n\nconst formatLegacyCommitmentCiphertext = (\n graphLegacyCommitmentCiphertext: GraphLegacyCommitmentCiphertextV2,\n): LegacyCommitmentCiphertext => {\n return {\n ciphertext: formatCiphertext(graphLegacyCommitmentCiphertext.ciphertext),\n ephemeralKeys: graphLegacyCommitmentCiphertext.ephemeralKeys.map(\n ephemeralKey => formatTo32Bytes(ephemeralKey, false),\n ),\n memo: graphLegacyCommitmentCiphertext.memo.map(m =>\n formatTo32Bytes(m, false),\n ),\n };\n};\n\nconst formatCommitmentCiphertext = (\n graphCommitmentCiphertext: GraphCommitmentCiphertextV2,\n): CommitmentCiphertextV2 => {\n return {\n ciphertext: formatCiphertext(graphCommitmentCiphertext.ciphertext),\n blindedReceiverViewingKey: formatTo32Bytes(\n graphCommitmentCiphertext.blindedReceiverViewingKey,\n false,\n ),\n blindedSenderViewingKey: formatTo32Bytes(\n graphCommitmentCiphertext.blindedSenderViewingKey,\n false,\n ),\n memo: graphCommitmentCiphertext.memo,\n annotationData: graphCommitmentCiphertext.annotationData,\n };\n};\n\nconst formatLegacyGeneratedCommitment = (\n commitment: GraphLegacyGeneratedCommitmentV2,\n): LegacyGeneratedCommitment => {\n return {\n txid: formatTo32Bytes(commitment.transactionHash, false),\n timestamp: Number(commitment.blockTimestamp),\n commitmentType: CommitmentType.LegacyGeneratedCommitment,\n hash: formatTo32Bytes(bigIntStringToHex(commitment.hash), false),\n preImage: formatPreImage(commitment.preimage),\n encryptedRandom: [\n formatTo32Bytes(commitment.encryptedRandom[0], false),\n formatTo16Bytes(commitment.encryptedRandom[1], false),\n ] as [string, string],\n blockNumber: Number(commitment.blockNumber),\n utxoTree: commitment.treeNumber,\n utxoIndex: commitment.treePosition,\n };\n};\n\nconst formatLegacyEncryptedCommitment = (\n commitment: GraphLegacyEncryptedCommitmentV2,\n): LegacyEncryptedCommitment => {\n return {\n txid: formatTo32Bytes(commitment.transactionHash, false),\n timestamp: Number(commitment.blockTimestamp),\n commitmentType: CommitmentType.LegacyEncryptedCommitment,\n hash: formatTo32Bytes(bigIntStringToHex(commitment.hash), false),\n ciphertext: formatLegacyCommitmentCiphertext(commitment.legacyCiphertext),\n blockNumber: Number(commitment.blockNumber),\n utxoTree: commitment.treeNumber,\n utxoIndex: commitment.treePosition,\n dopTxid: undefined,\n };\n};\n\nconst formatEncryptCommitment = (\n commitment: GraphEncryptCommitmentV2,\n): EncryptCommitment => {\n const encryptCommitment: EncryptCommitment = {\n txid: formatTo32Bytes(commitment.transactionHash, false),\n timestamp: Number(commitment.blockTimestamp),\n commitmentType: CommitmentType.EncryptCommitment,\n hash: formatTo32Bytes(bigIntStringToHex(commitment.hash), false),\n preImage: formatPreImage(commitment.preimage),\n blockNumber: Number(commitment.blockNumber),\n encryptedBundle: commitment.encryptedBundle as [string, string, string],\n encryptKey: commitment.encryptKey,\n fee: isDefined(commitment.fee) ? commitment.fee.toString() : undefined,\n utxoTree: commitment.treeNumber,\n utxoIndex: commitment.treePosition,\n from: undefined,\n };\n if (!isDefined(encryptCommitment.fee)) {\n delete encryptCommitment.fee;\n }\n return encryptCommitment;\n};\n\nconst formatTransactCommitment = (\n commitment: GraphTransactCommitmentV2,\n): TransactCommitmentV2 => {\n return {\n txid: formatTo32Bytes(commitment.transactionHash, false),\n timestamp: Number(commitment.blockTimestamp),\n commitmentType: CommitmentType.TransactCommitmentV2,\n hash: formatTo32Bytes(bigIntStringToHex(commitment.hash), false),\n ciphertext: formatCommitmentCiphertext(commitment.ciphertext),\n blockNumber: Number(commitment.blockNumber),\n utxoTree: commitment.treeNumber,\n utxoIndex: commitment.treePosition,\n dopTxid: undefined,\n };\n};\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { AccumulatedEvents, Chain } from 'dop-engine-
|
|
1
|
+
import { AccumulatedEvents, Chain } from 'dop-engine-v5';
|
|
2
2
|
export declare const quickSyncEventsGraphV2: (chain: Chain, startingBlock: number) => Promise<AccumulatedEvents>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.quickSyncEventsGraphV2 = void 0;
|
|
4
|
-
const dop_sharedmodels_v3_1 = require("dop-sharedmodels-
|
|
4
|
+
const dop_sharedmodels_v3_1 = require("dop-sharedmodels-v5");
|
|
5
5
|
const graphql_1 = require("./graphql");
|
|
6
6
|
const runtime_1 = require("@graphql-mesh/runtime");
|
|
7
7
|
const graph_type_formatters_v2_1 = require("./graph-type-formatters-v2");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quick-sync-events-graph-v2.js","sourceRoot":"","sources":["../../../../../src/services/dop/quick-sync/V2/quick-sync-events-graph-v2.ts"],"names":[],"mappings":"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","sourcesContent":["import { AccumulatedEvents, Chain } from 'dop-engine-v3';\nimport {\n NetworkName,\n delay,\n isDefined,\n networkForChain,\n removeUndefineds,\n} from 'dop-sharedmodels-v3';\nimport { getMeshOptions, getSdk } from './graphql';\nimport { MeshInstance, getMesh } from '@graphql-mesh/runtime';\nimport {\n GraphCommitmentV2,\n GraphCommitmentBatchV2,\n formatGraphCommitmentEventsV2,\n formatGraphNullifierEventsV2,\n formatGraphDecryptEventsV2,\n} from './graph-type-formatters-v2';\nimport { removeDuplicatesByID } from '../../util/graph-util';\nimport { EMPTY_EVENTS, autoPaginatingQuery } from '../graph-query';\n\nconst meshes: MapType<MeshInstance> = {};\n\n// 1.5 full trees of commitments\n// TODO: This will have to change when we have more than 100k commitments.\nconst MAX_QUERY_RESULTS = 100000;\n\nconst sourceNameForNetwork = (networkName: NetworkName): string => {\n switch (networkName) {\n case NetworkName.Ethereum:\n return 'ethereum';\n case NetworkName.EthereumSepolia:\n return 'sepolia';\n case NetworkName.BNBChain:\n return 'bsc';\n case NetworkName.Polygon:\n return 'matic';\n case NetworkName.Arbitrum:\n return 'arbitrum-one';\n case NetworkName.Xlayer:\n return 'xlayer';\n case NetworkName.PolygonAmoy:\n case NetworkName.ArbitrumGoerli_DEPRECATED:\n case NetworkName.EthereumGoerli_DEPRECATED:\n case NetworkName.EthereumRopsten_DEPRECATED:\n case NetworkName.PolygonMumbai_DEPRECATED:\n case NetworkName.Hardhat:\n default:\n throw new Error('No Graph API hosted service for this network');\n }\n};\n\nconst isSupportedByNetwork = (networkName: NetworkName) => {\n try {\n sourceNameForNetwork(networkName);\n return true;\n } catch {\n return false;\n }\n};\n\nexport const quickSyncEventsGraphV2 = async (\n chain: Chain,\n startingBlock: number,\n): Promise<AccumulatedEvents> => {\n const network = networkForChain(chain);\n if (!network || !isSupportedByNetwork(network.name)) {\n // Return empty logs, Engine will default to full scan.\n return EMPTY_EVENTS;\n }\n\n const sdk = getBuiltGraphSDK(network.name);\n\n const nullifiers = await autoPaginatingQuery(\n async (blockNumber: string) =>\n (\n await sdk.Nullifiers({\n blockNumber,\n })\n ).nullifiers,\n startingBlock.toString(),\n MAX_QUERY_RESULTS,\n );\n\n await delay(100);\n const decrypts = await autoPaginatingQuery(\n async (blockNumber: string) =>\n (\n await sdk.Decrypts({\n blockNumber,\n })\n ).decrypts,\n startingBlock.toString(),\n MAX_QUERY_RESULTS,\n );\n \n\n await delay(100);\n const commitments = await autoPaginatingQuery(\n async (blockNumber: string) =>\n (\n await sdk.Commitments({\n blockNumber,\n })\n ).commitments,\n startingBlock.toString(),\n MAX_QUERY_RESULTS,\n );\n\n const filteredNullifiers = removeDuplicatesByID(nullifiers);\n const filteredDecrypts = removeDuplicatesByID(decrypts);\n const filteredCommitments = removeDuplicatesByID(commitments);\n const graphCommitmentBatches =\n createGraphCommitmentBatches(filteredCommitments);\n\n graphCommitmentBatches.sort(sortByTreeNumberAndStartPosition);\n\n const nullifierEvents = formatGraphNullifierEventsV2(filteredNullifiers);\n const decryptEvents = formatGraphDecryptEventsV2(filteredDecrypts);\n const commitmentEvents = formatGraphCommitmentEventsV2(\n graphCommitmentBatches,\n );\n\n return { nullifierEvents, decryptEvents, commitmentEvents };\n};\n\nconst createGraphCommitmentBatches = (\n flattenedCommitments: GraphCommitmentV2[],\n): GraphCommitmentBatchV2[] => {\n const graphCommitmentMap: MapType<GraphCommitmentBatchV2> = {};\n for (const commitment of flattenedCommitments) {\n const startPosition = commitment.batchStartTreePosition;\n const existingBatch = graphCommitmentMap[startPosition];\n if (isDefined(existingBatch)) {\n existingBatch.commitments.push(commitment);\n } else {\n graphCommitmentMap[commitment.batchStartTreePosition] = {\n commitments: [commitment],\n transactionHash: commitment.transactionHash,\n treeNumber: commitment.treeNumber,\n startPosition: commitment.batchStartTreePosition,\n blockNumber: Number(commitment.blockNumber),\n };\n }\n }\n return removeUndefineds(Object.values(graphCommitmentMap));\n};\n\nconst sortByTreeNumberAndStartPosition = (\n a: GraphCommitmentBatchV2,\n b: GraphCommitmentBatchV2,\n) => {\n if (a.treeNumber < b.treeNumber) {\n return -1;\n }\n if (a.treeNumber > b.treeNumber) {\n return 1;\n }\n if (a.startPosition < b.startPosition) {\n return -1;\n }\n if (a.startPosition > b.startPosition) {\n return 1;\n }\n return 0;\n};\n\nconst getBuiltGraphClient = async (\n networkName: NetworkName,\n): Promise<MeshInstance> => {\n const meshForNetwork = meshes[networkName];\n if (isDefined(meshForNetwork)) {\n return meshForNetwork;\n }\n const sourceName = sourceNameForNetwork(networkName);\n const meshOptions = await getMeshOptions();\n const filteredSources = meshOptions.sources.filter(source => {\n return source.name === sourceName;\n });\n if (filteredSources.length !== 1) {\n throw new Error(\n `Expected exactly one source for network ${networkName}, found ${filteredSources.length}`,\n );\n }\n meshOptions.sources = [filteredSources[0]];\n const mesh = await getMesh(meshOptions);\n meshes[networkName] = mesh;\n const id = mesh.pubsub.subscribe('destroy', () => {\n meshes[networkName] = undefined;\n mesh.pubsub.unsubscribe(id);\n });\n return mesh;\n};\n\nconst getBuiltGraphSDK = <TGlobalContext, TOperationContext>(\n networkName: NetworkName,\n globalContext?: TGlobalContext,\n) => {\n const sdkRequester$ = getBuiltGraphClient(networkName).then(\n ({ sdkRequesterFactory }) => sdkRequesterFactory(globalContext),\n );\n return getSdk<TOperationContext, TGlobalContext>((...args) =>\n sdkRequester$.then(sdkRequester => sdkRequester(...args)),\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"quick-sync-events-graph-v2.js","sourceRoot":"","sources":["../../../../../src/services/dop/quick-sync/V2/quick-sync-events-graph-v2.ts"],"names":[],"mappings":"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","sourcesContent":["import { AccumulatedEvents, Chain } from 'dop-engine-v5';\nimport {\n NetworkName,\n delay,\n isDefined,\n networkForChain,\n removeUndefineds,\n} from 'dop-sharedmodels-v5';\nimport { getMeshOptions, getSdk } from './graphql';\nimport { MeshInstance, getMesh } from '@graphql-mesh/runtime';\nimport {\n GraphCommitmentV2,\n GraphCommitmentBatchV2,\n formatGraphCommitmentEventsV2,\n formatGraphNullifierEventsV2,\n formatGraphDecryptEventsV2,\n} from './graph-type-formatters-v2';\nimport { removeDuplicatesByID } from '../../util/graph-util';\nimport { EMPTY_EVENTS, autoPaginatingQuery } from '../graph-query';\n\nconst meshes: MapType<MeshInstance> = {};\n\n// 1.5 full trees of commitments\n// TODO: This will have to change when we have more than 100k commitments.\nconst MAX_QUERY_RESULTS = 100000;\n\nconst sourceNameForNetwork = (networkName: NetworkName): string => {\n switch (networkName) {\n case NetworkName.Ethereum:\n return 'ethereum';\n case NetworkName.EthereumSepolia:\n return 'sepolia';\n case NetworkName.BNBChain:\n return 'bsc';\n case NetworkName.Polygon:\n return 'matic';\n case NetworkName.Arbitrum:\n return 'arbitrum-one';\n case NetworkName.Xlayer:\n return 'xlayer';\n case NetworkName.PolygonAmoy:\n case NetworkName.ArbitrumGoerli_DEPRECATED:\n case NetworkName.EthereumGoerli_DEPRECATED:\n case NetworkName.EthereumRopsten_DEPRECATED:\n case NetworkName.PolygonMumbai_DEPRECATED:\n case NetworkName.Hardhat:\n default:\n throw new Error('No Graph API hosted service for this network');\n }\n};\n\nconst isSupportedByNetwork = (networkName: NetworkName) => {\n try {\n sourceNameForNetwork(networkName);\n return true;\n } catch {\n return false;\n }\n};\n\nexport const quickSyncEventsGraphV2 = async (\n chain: Chain,\n startingBlock: number,\n): Promise<AccumulatedEvents> => {\n const network = networkForChain(chain);\n if (!network || !isSupportedByNetwork(network.name)) {\n // Return empty logs, Engine will default to full scan.\n return EMPTY_EVENTS;\n }\n\n const sdk = getBuiltGraphSDK(network.name);\n\n const nullifiers = await autoPaginatingQuery(\n async (blockNumber: string) =>\n (\n await sdk.Nullifiers({\n blockNumber,\n })\n ).nullifiers,\n startingBlock.toString(),\n MAX_QUERY_RESULTS,\n );\n\n await delay(100);\n const decrypts = await autoPaginatingQuery(\n async (blockNumber: string) =>\n (\n await sdk.Decrypts({\n blockNumber,\n })\n ).decrypts,\n startingBlock.toString(),\n MAX_QUERY_RESULTS,\n );\n \n\n await delay(100);\n const commitments = await autoPaginatingQuery(\n async (blockNumber: string) =>\n (\n await sdk.Commitments({\n blockNumber,\n })\n ).commitments,\n startingBlock.toString(),\n MAX_QUERY_RESULTS,\n );\n\n const filteredNullifiers = removeDuplicatesByID(nullifiers);\n const filteredDecrypts = removeDuplicatesByID(decrypts);\n const filteredCommitments = removeDuplicatesByID(commitments);\n const graphCommitmentBatches =\n createGraphCommitmentBatches(filteredCommitments);\n\n graphCommitmentBatches.sort(sortByTreeNumberAndStartPosition);\n\n const nullifierEvents = formatGraphNullifierEventsV2(filteredNullifiers);\n const decryptEvents = formatGraphDecryptEventsV2(filteredDecrypts);\n const commitmentEvents = formatGraphCommitmentEventsV2(\n graphCommitmentBatches,\n );\n\n return { nullifierEvents, decryptEvents, commitmentEvents };\n};\n\nconst createGraphCommitmentBatches = (\n flattenedCommitments: GraphCommitmentV2[],\n): GraphCommitmentBatchV2[] => {\n const graphCommitmentMap: MapType<GraphCommitmentBatchV2> = {};\n for (const commitment of flattenedCommitments) {\n const startPosition = commitment.batchStartTreePosition;\n const existingBatch = graphCommitmentMap[startPosition];\n if (isDefined(existingBatch)) {\n existingBatch.commitments.push(commitment);\n } else {\n graphCommitmentMap[commitment.batchStartTreePosition] = {\n commitments: [commitment],\n transactionHash: commitment.transactionHash,\n treeNumber: commitment.treeNumber,\n startPosition: commitment.batchStartTreePosition,\n blockNumber: Number(commitment.blockNumber),\n };\n }\n }\n return removeUndefineds(Object.values(graphCommitmentMap));\n};\n\nconst sortByTreeNumberAndStartPosition = (\n a: GraphCommitmentBatchV2,\n b: GraphCommitmentBatchV2,\n) => {\n if (a.treeNumber < b.treeNumber) {\n return -1;\n }\n if (a.treeNumber > b.treeNumber) {\n return 1;\n }\n if (a.startPosition < b.startPosition) {\n return -1;\n }\n if (a.startPosition > b.startPosition) {\n return 1;\n }\n return 0;\n};\n\nconst getBuiltGraphClient = async (\n networkName: NetworkName,\n): Promise<MeshInstance> => {\n const meshForNetwork = meshes[networkName];\n if (isDefined(meshForNetwork)) {\n return meshForNetwork;\n }\n const sourceName = sourceNameForNetwork(networkName);\n const meshOptions = await getMeshOptions();\n const filteredSources = meshOptions.sources.filter(source => {\n return source.name === sourceName;\n });\n if (filteredSources.length !== 1) {\n throw new Error(\n `Expected exactly one source for network ${networkName}, found ${filteredSources.length}`,\n );\n }\n meshOptions.sources = [filteredSources[0]];\n const mesh = await getMesh(meshOptions);\n meshes[networkName] = mesh;\n const id = mesh.pubsub.subscribe('destroy', () => {\n meshes[networkName] = undefined;\n mesh.pubsub.unsubscribe(id);\n });\n return mesh;\n};\n\nconst getBuiltGraphSDK = <TGlobalContext, TOperationContext>(\n networkName: NetworkName,\n globalContext?: TGlobalContext,\n) => {\n const sdkRequester$ = getBuiltGraphClient(networkName).then(\n ({ sdkRequesterFactory }) => sdkRequesterFactory(globalContext),\n );\n return getSdk<TOperationContext, TGlobalContext>((...args) =>\n sdkRequester$.then(sdkRequester => sdkRequester(...args)),\n );\n};\n"]}
|
|
@@ -3,8 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const dop_engine_v3_1 = require("dop-engine-
|
|
7
|
-
const dop_sharedmodels_v3_1 = require("dop-sharedmodels-
|
|
6
|
+
const dop_engine_v3_1 = require("dop-engine-v5");
|
|
7
|
+
const dop_sharedmodels_v3_1 = require("dop-sharedmodels-v5");
|
|
8
8
|
const chai_1 = __importDefault(require("chai"));
|
|
9
9
|
const chai_as_promised_1 = __importDefault(require("chai-as-promised"));
|
|
10
10
|
const quick_sync_events_1 = require("../../quick-sync-events");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quick-sync-events-graph-v3.test.js","sourceRoot":"","sources":["../../../../../../src/services/dop/quick-sync/V3/__tests__/quick-sync-events-graph-v3.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { Chain, CommitmentEvent, TXIDVersion } from 'dop-engine-
|
|
1
|
+
{"version":3,"file":"quick-sync-events-graph-v3.test.js","sourceRoot":"","sources":["../../../../../../src/services/dop/quick-sync/V3/__tests__/quick-sync-events-graph-v3.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { Chain, CommitmentEvent, TXIDVersion } from 'dop-engine-v5';\nimport { NetworkName, NETWORK_CONFIG } from 'dop-sharedmodels-v5';\nimport chai from 'chai';\nimport chaiAsPromised from 'chai-as-promised';\nimport { quickSyncEventsGraph } from '../../quick-sync-events';\nimport { isV2Test } from '../../../../../tests/helper.test';\n\nchai.use(chaiAsPromised);\nconst { expect } = chai;\n\nconst txidVersion = TXIDVersion.V3_PoseidonMerkle;\n\nconst POLYGON_MUMBAI_CHAIN: Chain =\n NETWORK_CONFIG[NetworkName.PolygonMumbai_DEPRECATED].chain;\nconst EXPECTED_COMMITMENT_GROUP_EVENTS_POLYGON_MUMBAI = 1;\nconst EXPECTED_NULLIFIER_EVENTS_POLYGON_MUMBAI = 1;\nconst EXPECTED_DECRYPT_EVENTS_POLYGON_MUMBAI = 1;\nconst EXPECTED_DOP_TRANSACTION_EVENTS_POLYGON_MUMBAI = 1;\n\nconst assertContiguousCommitmentEvents = (\n commitmentEvents: CommitmentEvent[],\n shouldThrow: boolean,\n) => {\n let nextTreeNumber = commitmentEvents[0].treeNumber;\n let nextStartPosition = commitmentEvents[0].startPosition;\n for (const event of commitmentEvents) {\n if (\n event.treeNumber !== nextTreeNumber ||\n event.startPosition !== nextStartPosition\n ) {\n if (shouldThrow) {\n throw new Error(\n `Could not find treeNumber ${nextTreeNumber}, startPosition ${nextStartPosition}`,\n );\n } else {\n // eslint-disable-next-line no-console\n console.log(\n `Could not find treeNumber ${nextTreeNumber}, startPosition ${nextStartPosition}`,\n );\n nextStartPosition = event.startPosition + event.commitments.length;\n }\n } else {\n nextStartPosition += event.commitments.length;\n }\n\n // TODO: This logic may need an update if the tree is less than 65536 commitments.\n if (nextStartPosition >= 65536) {\n // Roll over to next tree.\n nextTreeNumber += 1;\n nextStartPosition = 0;\n }\n }\n};\n\ndescribe('quick-sync-events-graph-v3', () => {\n it('[V3] Should make sure Graph V3 query has no data gaps in commitments - Polygon Mumbai', async function run() {\n if (isV2Test()) {\n this.skip();\n return;\n }\n\n const eventLog = await quickSyncEventsGraph(\n txidVersion,\n POLYGON_MUMBAI_CHAIN,\n 0,\n );\n expect(eventLog).to.be.an('object');\n expect(eventLog.commitmentEvents).to.be.an('array');\n expect(eventLog.commitmentEvents.length).to.be.at.least(\n EXPECTED_COMMITMENT_GROUP_EVENTS_POLYGON_MUMBAI,\n );\n expect(eventLog.nullifierEvents.length).to.be.at.least(\n EXPECTED_NULLIFIER_EVENTS_POLYGON_MUMBAI,\n );\n expect(eventLog.decryptEvents.length).to.be.at.least(\n EXPECTED_DECRYPT_EVENTS_POLYGON_MUMBAI,\n );\n expect(eventLog.dopTransactionEvents?.length).to.be.at.least(\n EXPECTED_DECRYPT_EVENTS_POLYGON_MUMBAI,\n );\n\n const shouldThrow = true;\n assertContiguousCommitmentEvents(eventLog.commitmentEvents, shouldThrow);\n }).timeout(45_000);\n});\n"]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Nullifier, DecryptStoredEvent, CommitmentEvent } from 'dop-engine-
|
|
1
|
+
import { Nullifier, DecryptStoredEvent, CommitmentEvent } from 'dop-engine-v5';
|
|
2
2
|
import { Nullifier as GraphNullifierV3, Decrypt as GraphDecryptV3, EncryptCommitment as GraphEncryptCommitmentV3, TransactCommitment as GraphTransactCommitmentV3, DopTransaction as GraphDopTransactionV3 } from './graphql';
|
|
3
3
|
export type GraphCommitmentV3 = GraphEncryptCommitmentV3 | GraphTransactCommitmentV3;
|
|
4
4
|
export type DopTxidMapV3 = MapType<string[]>;
|
|
5
|
-
export declare const formatGraphDopTransactionEventsV3: (dopTransactions: GraphDopTransactionV3[]) => import("dop-engine-
|
|
5
|
+
export declare const formatGraphDopTransactionEventsV3: (dopTransactions: GraphDopTransactionV3[]) => import("dop-engine-v5").DopTransactionV3[];
|
|
6
6
|
export declare const formatGraphNullifierEventsV3: (nullifiers: GraphNullifierV3[]) => Nullifier[];
|
|
7
7
|
export declare const formatGraphDecryptEventsV3: (decrypts: GraphDecryptV3[], dopTxidMap: DopTxidMapV3) => DecryptStoredEvent[];
|
|
8
8
|
export declare const formatGraphCommitmentEventsV3: (commitments: GraphCommitmentV3[], dopTxidMap: DopTxidMapV3) => CommitmentEvent[];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.formatGraphCommitmentEventsV3 = exports.formatGraphDecryptEventsV3 = exports.formatGraphNullifierEventsV3 = exports.formatGraphDopTransactionEventsV3 = void 0;
|
|
4
|
-
const dop_engine_v3_1 = require("dop-engine-
|
|
4
|
+
const dop_engine_v3_1 = require("dop-engine-v5");
|
|
5
5
|
const shared_formatters_1 = require("../shared-formatters");
|
|
6
6
|
const formatGraphDopTransactionEventsV3 = (dopTransactions) => {
|
|
7
7
|
return dopTransactions.map(dopTransaction => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-type-formatters-v3.js","sourceRoot":"","sources":["../../../../../src/services/dop/quick-sync/V3/graph-type-formatters-v3.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Nullifier,\n DecryptStoredEvent,\n CommitmentEvent,\n V3Events,\n getNoteHash,\n serializeTokenData,\n ByteLength,\n ByteUtils,\n} from 'dop-engine-v3';\nimport {\n Nullifier as GraphNullifierV3,\n Decrypt as GraphDecryptV3,\n EncryptCommitment as GraphEncryptCommitmentV3,\n TransactCommitment as GraphTransactCommitmentV3,\n DopTransaction as GraphDopTransactionV3,\n} from './graphql';\nimport {\n formatTo32Bytes,\n graphTokenTypeToEngineTokenType,\n} from '../shared-formatters';\n\nexport type GraphCommitmentV3 =\n | GraphEncryptCommitmentV3\n | GraphTransactCommitmentV3;\n\nexport type DopTxidMapV3 = MapType<string[]>;\n\nexport const formatGraphDopTransactionEventsV3 = (\n dopTransactions: GraphDopTransactionV3[],\n) => {\n return dopTransactions.map(dopTransaction => {\n return V3Events.formatDopTransactionEvent(\n dopTransaction.transactionHash,\n Number(dopTransaction.blockNumber),\n dopTransaction.commitments,\n dopTransaction.nullifiers,\n {\n npk: dopTransaction.decryptToAddress,\n token: {\n tokenType: BigInt(\n graphTokenTypeToEngineTokenType(\n dopTransaction.decryptToken.tokenType,\n ),\n ),\n tokenAddress: dopTransaction.decryptToken.tokenAddress,\n tokenSubID: BigInt(dopTransaction.decryptToken.tokenSubID),\n },\n value: BigInt(dopTransaction.decryptValue),\n },\n dopTransaction.boundParamsHash,\n Number(dopTransaction.utxoTreeIn),\n Number(dopTransaction.utxoTreeOut),\n Number(dopTransaction.utxoBatchStartPositionOut),\n dopTransaction.verificationHash,\n );\n });\n};\n\nexport const formatGraphNullifierEventsV3 = (\n nullifiers: GraphNullifierV3[],\n): Nullifier[] => {\n return nullifiers.map(nullifier => {\n return {\n txid: formatTo32Bytes(nullifier.transactionHash, false),\n nullifier: formatTo32Bytes(nullifier.nullifier, false),\n treeNumber: nullifier.treeNumber,\n blockNumber: Number(nullifier.blockNumber),\n spentDopTxid: undefined,\n };\n });\n};\n\nconst getDecryptCommitmentHash = (\n npk: string,\n tokenAddress: string,\n tokenType: bigint,\n tokenSubID: bigint,\n value: bigint,\n) => {\n return getNoteHash(\n npk,\n serializeTokenData(tokenAddress, tokenType, tokenSubID.toString()),\n value,\n );\n};\n\nexport const formatGraphDecryptEventsV3 = (\n decrypts: GraphDecryptV3[],\n dopTxidMap: DopTxidMapV3,\n): DecryptStoredEvent[] => {\n return decrypts.map(decrypt => {\n const decryptCommitmentHash = ByteUtils.nToHex(\n getDecryptCommitmentHash(\n decrypt.to,\n decrypt.token.tokenAddress,\n BigInt(graphTokenTypeToEngineTokenType(decrypt.token.tokenType)),\n BigInt(decrypt.token.tokenSubID),\n BigInt(decrypt.value),\n ),\n ByteLength.UINT_256,\n true,\n );\n const dopTxid = getDopTxid(dopTxidMap, [\n decryptCommitmentHash,\n ]);\n return V3Events.formatDecryptEvent(\n decrypt.transactionHash,\n Number(decrypt.blockNumber),\n {\n npk: decrypt.to,\n token: {\n tokenType: BigInt(\n graphTokenTypeToEngineTokenType(decrypt.token.tokenType),\n ),\n tokenAddress: decrypt.token.tokenAddress,\n tokenSubID: BigInt(decrypt.token.tokenSubID),\n },\n value: BigInt(decrypt.value),\n },\n Number(decrypt.transactIndex),\n BigInt(decrypt.fee),\n dopTxid,\n );\n });\n};\n\nexport const formatGraphCommitmentEventsV3 = (\n commitments: GraphCommitmentV3[],\n dopTxidMap: DopTxidMapV3,\n): CommitmentEvent[] => {\n return commitments.map(commitment => {\n return formatGraphCommitmentEventV3(commitment, dopTxidMap);\n });\n};\n\nconst formatGraphCommitmentEventV3 = (\n commitment: GraphCommitmentV3,\n dopTxidMap: DopTxidMapV3,\n): CommitmentEvent => {\n switch (commitment.commitmentType) {\n case 'LegacyGeneratedCommitment':\n case 'LegacyEncryptedCommitment':\n throw new Error('Not possible in V3');\n case 'EncryptCommitment':\n return formatEncryptCommitmentEvent(commitment as GraphEncryptCommitmentV3);\n case 'TransactCommitment': {\n const dopTxid = getDopTxid(dopTxidMap, commitment.hashes);\n return formatTransactCommitmentEvent(\n commitment as GraphTransactCommitmentV3,\n dopTxid,\n );\n }\n }\n};\n\nconst getDopTxid = (\n dopTxidMap: DopTxidMapV3,\n commitments: string[],\n): string => {\n const dopTxids = Object.keys(dopTxidMap);\n for (const dopTxid of dopTxids) {\n const dopTxidCommitments = dopTxidMap[dopTxid];\n if (!dopTxidCommitments) {\n continue;\n }\n const hasAllCommitments = commitments.every(commitment =>\n dopTxidCommitments.includes(commitment),\n );\n if (hasAllCommitments) {\n return dopTxid;\n }\n }\n throw new Error('dopTxid not found including all transact commitments');\n};\n\nconst formatEncryptCommitmentEvent = (\n commitment: GraphEncryptCommitmentV3,\n): CommitmentEvent => {\n return V3Events.formatEncryptEvent(\n commitment.transactionHash,\n Number(commitment.blockNumber),\n commitment.from,\n {\n npk: commitment.preimage.npk,\n token: {\n tokenType: BigInt(\n graphTokenTypeToEngineTokenType(commitment.preimage.token.tokenType),\n ),\n tokenAddress: commitment.preimage.token.tokenAddress,\n tokenSubID: BigInt(commitment.preimage.token.tokenSubID),\n },\n value: BigInt(commitment.preimage.value),\n },\n {\n encryptedBundle: commitment.encryptedBundle as [string, string, string],\n encryptKey: commitment.encryptKey,\n },\n commitment.treeNumber,\n commitment.treePosition,\n BigInt(commitment.fee),\n );\n};\n\nconst formatTransactCommitmentEvent = (\n commitment: GraphTransactCommitmentV3,\n dopTxid: string,\n): CommitmentEvent => {\n return V3Events.formatTransactEvent(\n commitment.transactionHash,\n Number(commitment.blockNumber),\n commitment.hashes,\n commitment.commitmentCiphertexts,\n commitment.treeNumber,\n commitment.batchStartTreePosition,\n commitment.transactIndex,\n commitment.senderCiphertext,\n dopTxid,\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"graph-type-formatters-v3.js","sourceRoot":"","sources":["../../../../../src/services/dop/quick-sync/V3/graph-type-formatters-v3.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Nullifier,\n DecryptStoredEvent,\n CommitmentEvent,\n V3Events,\n getNoteHash,\n serializeTokenData,\n ByteLength,\n ByteUtils,\n} from 'dop-engine-v5';\nimport {\n Nullifier as GraphNullifierV3,\n Decrypt as GraphDecryptV3,\n EncryptCommitment as GraphEncryptCommitmentV3,\n TransactCommitment as GraphTransactCommitmentV3,\n DopTransaction as GraphDopTransactionV3,\n} from './graphql';\nimport {\n formatTo32Bytes,\n graphTokenTypeToEngineTokenType,\n} from '../shared-formatters';\n\nexport type GraphCommitmentV3 =\n | GraphEncryptCommitmentV3\n | GraphTransactCommitmentV3;\n\nexport type DopTxidMapV3 = MapType<string[]>;\n\nexport const formatGraphDopTransactionEventsV3 = (\n dopTransactions: GraphDopTransactionV3[],\n) => {\n return dopTransactions.map(dopTransaction => {\n return V3Events.formatDopTransactionEvent(\n dopTransaction.transactionHash,\n Number(dopTransaction.blockNumber),\n dopTransaction.commitments,\n dopTransaction.nullifiers,\n {\n npk: dopTransaction.decryptToAddress,\n token: {\n tokenType: BigInt(\n graphTokenTypeToEngineTokenType(\n dopTransaction.decryptToken.tokenType,\n ),\n ),\n tokenAddress: dopTransaction.decryptToken.tokenAddress,\n tokenSubID: BigInt(dopTransaction.decryptToken.tokenSubID),\n },\n value: BigInt(dopTransaction.decryptValue),\n },\n dopTransaction.boundParamsHash,\n Number(dopTransaction.utxoTreeIn),\n Number(dopTransaction.utxoTreeOut),\n Number(dopTransaction.utxoBatchStartPositionOut),\n dopTransaction.verificationHash,\n );\n });\n};\n\nexport const formatGraphNullifierEventsV3 = (\n nullifiers: GraphNullifierV3[],\n): Nullifier[] => {\n return nullifiers.map(nullifier => {\n return {\n txid: formatTo32Bytes(nullifier.transactionHash, false),\n nullifier: formatTo32Bytes(nullifier.nullifier, false),\n treeNumber: nullifier.treeNumber,\n blockNumber: Number(nullifier.blockNumber),\n spentDopTxid: undefined,\n };\n });\n};\n\nconst getDecryptCommitmentHash = (\n npk: string,\n tokenAddress: string,\n tokenType: bigint,\n tokenSubID: bigint,\n value: bigint,\n) => {\n return getNoteHash(\n npk,\n serializeTokenData(tokenAddress, tokenType, tokenSubID.toString()),\n value,\n );\n};\n\nexport const formatGraphDecryptEventsV3 = (\n decrypts: GraphDecryptV3[],\n dopTxidMap: DopTxidMapV3,\n): DecryptStoredEvent[] => {\n return decrypts.map(decrypt => {\n const decryptCommitmentHash = ByteUtils.nToHex(\n getDecryptCommitmentHash(\n decrypt.to,\n decrypt.token.tokenAddress,\n BigInt(graphTokenTypeToEngineTokenType(decrypt.token.tokenType)),\n BigInt(decrypt.token.tokenSubID),\n BigInt(decrypt.value),\n ),\n ByteLength.UINT_256,\n true,\n );\n const dopTxid = getDopTxid(dopTxidMap, [\n decryptCommitmentHash,\n ]);\n return V3Events.formatDecryptEvent(\n decrypt.transactionHash,\n Number(decrypt.blockNumber),\n {\n npk: decrypt.to,\n token: {\n tokenType: BigInt(\n graphTokenTypeToEngineTokenType(decrypt.token.tokenType),\n ),\n tokenAddress: decrypt.token.tokenAddress,\n tokenSubID: BigInt(decrypt.token.tokenSubID),\n },\n value: BigInt(decrypt.value),\n },\n Number(decrypt.transactIndex),\n BigInt(decrypt.fee),\n dopTxid,\n );\n });\n};\n\nexport const formatGraphCommitmentEventsV3 = (\n commitments: GraphCommitmentV3[],\n dopTxidMap: DopTxidMapV3,\n): CommitmentEvent[] => {\n return commitments.map(commitment => {\n return formatGraphCommitmentEventV3(commitment, dopTxidMap);\n });\n};\n\nconst formatGraphCommitmentEventV3 = (\n commitment: GraphCommitmentV3,\n dopTxidMap: DopTxidMapV3,\n): CommitmentEvent => {\n switch (commitment.commitmentType) {\n case 'LegacyGeneratedCommitment':\n case 'LegacyEncryptedCommitment':\n throw new Error('Not possible in V3');\n case 'EncryptCommitment':\n return formatEncryptCommitmentEvent(commitment as GraphEncryptCommitmentV3);\n case 'TransactCommitment': {\n const dopTxid = getDopTxid(dopTxidMap, commitment.hashes);\n return formatTransactCommitmentEvent(\n commitment as GraphTransactCommitmentV3,\n dopTxid,\n );\n }\n }\n};\n\nconst getDopTxid = (\n dopTxidMap: DopTxidMapV3,\n commitments: string[],\n): string => {\n const dopTxids = Object.keys(dopTxidMap);\n for (const dopTxid of dopTxids) {\n const dopTxidCommitments = dopTxidMap[dopTxid];\n if (!dopTxidCommitments) {\n continue;\n }\n const hasAllCommitments = commitments.every(commitment =>\n dopTxidCommitments.includes(commitment),\n );\n if (hasAllCommitments) {\n return dopTxid;\n }\n }\n throw new Error('dopTxid not found including all transact commitments');\n};\n\nconst formatEncryptCommitmentEvent = (\n commitment: GraphEncryptCommitmentV3,\n): CommitmentEvent => {\n return V3Events.formatEncryptEvent(\n commitment.transactionHash,\n Number(commitment.blockNumber),\n commitment.from,\n {\n npk: commitment.preimage.npk,\n token: {\n tokenType: BigInt(\n graphTokenTypeToEngineTokenType(commitment.preimage.token.tokenType),\n ),\n tokenAddress: commitment.preimage.token.tokenAddress,\n tokenSubID: BigInt(commitment.preimage.token.tokenSubID),\n },\n value: BigInt(commitment.preimage.value),\n },\n {\n encryptedBundle: commitment.encryptedBundle as [string, string, string],\n encryptKey: commitment.encryptKey,\n },\n commitment.treeNumber,\n commitment.treePosition,\n BigInt(commitment.fee),\n );\n};\n\nconst formatTransactCommitmentEvent = (\n commitment: GraphTransactCommitmentV3,\n dopTxid: string,\n): CommitmentEvent => {\n return V3Events.formatTransactEvent(\n commitment.transactionHash,\n Number(commitment.blockNumber),\n commitment.hashes,\n commitment.commitmentCiphertexts,\n commitment.treeNumber,\n commitment.batchStartTreePosition,\n commitment.transactIndex,\n commitment.senderCiphertext,\n dopTxid,\n );\n};\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { AccumulatedEvents, Chain } from 'dop-engine-
|
|
1
|
+
import { AccumulatedEvents, Chain } from 'dop-engine-v5';
|
|
2
2
|
export declare const quickSyncEventsGraphV3: (chain: Chain, startingBlock: number) => Promise<AccumulatedEvents>;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.quickSyncEventsGraphV3 = void 0;
|
|
4
|
-
const dop_engine_v3_1 = require("dop-engine-
|
|
4
|
+
const dop_engine_v3_1 = require("dop-engine-v5");
|
|
5
5
|
const graph_query_1 = require("../graph-query");
|
|
6
|
-
const dop_sharedmodels_v3_1 = require("dop-sharedmodels-
|
|
6
|
+
const dop_sharedmodels_v3_1 = require("dop-sharedmodels-v5");
|
|
7
7
|
const runtime_1 = require("@graphql-mesh/runtime");
|
|
8
8
|
const graph_util_1 = require("../../util/graph-util");
|
|
9
9
|
const graphql_1 = require("./graphql");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quick-sync-events-graph-v3.js","sourceRoot":"","sources":["../../../../../src/services/dop/quick-sync/V3/quick-sync-events-graph-v3.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n AccumulatedEvents,\n Chain,\n getDopTransactionIDHex,\n} from 'dop-engine-
|
|
1
|
+
{"version":3,"file":"quick-sync-events-graph-v3.js","sourceRoot":"","sources":["../../../../../src/services/dop/quick-sync/V3/quick-sync-events-graph-v3.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n AccumulatedEvents,\n Chain,\n getDopTransactionIDHex,\n} from 'dop-engine-v5';\nimport { EMPTY_EVENTS, autoPaginatingQuery } from '../graph-query';\nimport {\n NetworkName,\n isDefined,\n networkForChain,\n} from 'dop-sharedmodels-v5';\nimport { MeshInstance, getMesh } from '@graphql-mesh/runtime';\nimport { removeDuplicatesByID } from '../../util/graph-util';\nimport { getMeshOptions, getSdk } from './graphql';\nimport {\n DopTxidMapV3,\n formatGraphCommitmentEventsV3,\n formatGraphNullifierEventsV3,\n formatGraphDopTransactionEventsV3,\n formatGraphDecryptEventsV3,\n} from './graph-type-formatters-v3';\n\nconst meshes: MapType<MeshInstance> = {};\n\n// 1.5 full trees of commitments\n// TODO: This will have to change when we have more than 100k commitments.\nconst MAX_QUERY_RESULTS = 100000;\n\nconst sourceNameForNetwork = (networkName: NetworkName): string => {\n switch (networkName) {\n case NetworkName.Ethereum:\n case NetworkName.EthereumSepolia:\n case NetworkName.BNBChain:\n case NetworkName.Polygon:\n case NetworkName.Arbitrum:\n case NetworkName.Xlayer:\n case NetworkName.PolygonAmoy:\n case NetworkName.ArbitrumGoerli_DEPRECATED:\n case NetworkName.EthereumGoerli_DEPRECATED:\n case NetworkName.EthereumRopsten_DEPRECATED:\n case NetworkName.PolygonMumbai_DEPRECATED:\n case NetworkName.Hardhat:\n default:\n throw new Error(\n 'No Graph API hosted service for this network on DOP V3',\n );\n }\n};\n\nconst isSupportedByNetwork = (networkName: NetworkName) => {\n try {\n sourceNameForNetwork(networkName);\n return true;\n } catch {\n return false;\n }\n};\n\nexport const quickSyncEventsGraphV3 = async (\n chain: Chain,\n startingBlock: number,\n): Promise<AccumulatedEvents> => {\n const network = networkForChain(chain);\n if (!network || !isSupportedByNetwork(network.name)) {\n // Return empty logs, Engine will default to full scan.\n return EMPTY_EVENTS;\n }\n\n const sdk = getBuiltGraphSDK(network.name);\n\n const [nullifiers, decrypts, commitments, dopTransactions] =\n await Promise.all([\n autoPaginatingQuery(\n async (blockNumber: string) =>\n (\n await sdk.Nullifiers({\n blockNumber,\n })\n ).nullifiers,\n startingBlock.toString(),\n MAX_QUERY_RESULTS,\n ),\n autoPaginatingQuery(\n async (blockNumber: string) =>\n (\n await sdk.Decrypts({\n blockNumber,\n })\n ).decrypts,\n startingBlock.toString(),\n MAX_QUERY_RESULTS,\n ),\n autoPaginatingQuery(\n async (blockNumber: string) =>\n (\n await sdk.Commitments({\n blockNumber,\n })\n ).commitments,\n startingBlock.toString(),\n MAX_QUERY_RESULTS,\n ),\n autoPaginatingQuery(\n async (blockNumber: string) =>\n (\n await sdk.DopTransactions({\n blockNumber,\n })\n ).dopTransactions,\n startingBlock.toString(),\n MAX_QUERY_RESULTS,\n ),\n ]);\n\n const filteredDopTransactions = removeDuplicatesByID(dopTransactions);\n const filteredNullifiers = removeDuplicatesByID(nullifiers);\n const filteredDecrypts = removeDuplicatesByID(decrypts);\n const filteredCommitments = removeDuplicatesByID(commitments);\n\n const dopTransactionEvents = formatGraphDopTransactionEventsV3(\n filteredDopTransactions,\n );\n\n const dopTxidMap: DopTxidMapV3 = {};\n for (const dopTransaction of filteredDopTransactions) {\n const dopTxid = getDopTransactionIDHex(dopTransaction);\n dopTxidMap[dopTxid] = dopTransaction.commitments;\n }\n\n const nullifierEvents = formatGraphNullifierEventsV3(filteredNullifiers);\n const decryptEvents = formatGraphDecryptEventsV3(\n filteredDecrypts,\n dopTxidMap,\n );\n const commitmentEvents = formatGraphCommitmentEventsV3(\n filteredCommitments,\n dopTxidMap,\n );\n\n return {\n nullifierEvents,\n decryptEvents,\n commitmentEvents,\n dopTransactionEvents,\n };\n};\n\nconst getBuiltGraphClient = async (\n networkName: NetworkName,\n): Promise<MeshInstance> => {\n const meshForNetwork = meshes[networkName];\n if (isDefined(meshForNetwork)) {\n return meshForNetwork;\n }\n const sourceName = sourceNameForNetwork(networkName);\n const meshOptions = await getMeshOptions();\n const filteredSources = meshOptions.sources.filter(source => {\n return source.name === sourceName;\n });\n if (filteredSources.length !== 1) {\n throw new Error(\n `Expected exactly one source for network ${networkName}, found ${filteredSources.length}`,\n );\n }\n meshOptions.sources = [filteredSources[0]];\n const mesh = await getMesh(meshOptions);\n meshes[networkName] = mesh;\n const id = mesh.pubsub.subscribe('destroy', () => {\n meshes[networkName] = undefined;\n mesh.pubsub.unsubscribe(id);\n });\n return mesh;\n};\n\nconst getBuiltGraphSDK = <TGlobalContext, TOperationContext>(\n networkName: NetworkName,\n globalContext?: TGlobalContext,\n) => {\n const sdkRequester$ = getBuiltGraphClient(networkName).then(\n ({ sdkRequesterFactory }) => sdkRequesterFactory(globalContext),\n );\n return getSdk<TOperationContext, TGlobalContext>((...args) =>\n sdkRequester$.then(sdkRequester => sdkRequester(...args)),\n );\n};\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.autoPaginatingQuery = exports.EMPTY_EVENTS = void 0;
|
|
4
|
-
const dop_sharedmodels_v3_1 = require("dop-sharedmodels-
|
|
4
|
+
const dop_sharedmodels_v3_1 = require("dop-sharedmodels-v5");
|
|
5
5
|
exports.EMPTY_EVENTS = {
|
|
6
6
|
commitmentEvents: [],
|
|
7
7
|
decryptEvents: [],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-query.js","sourceRoot":"","sources":["../../../../src/services/dop/quick-sync/graph-query.ts"],"names":[],"mappings":";;;AACA,6DAA4D;AAE/C,QAAA,YAAY,GAAsB;IAC7C,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,EAAE;IACjB,eAAe,EAAE,EAAE;CACpB,CAAC;AAEK,MAAM,mBAAmB,GAAG,KAAK,EAGtC,KAAqD,EACrD,WAAmB,EACnB,eAAuB,EACvB,cAA4B,EAAE,EACP,EAAE;IACzB,MAAM,UAAU,GAAG,MAAM,IAAA,oCAAc,EACrC,KAAK,CAAC,WAAW,CAAC,EAClB,KAAK,EACL,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAChE,CAAC;IACF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;QAC3B,OAAO,WAAW,CAAC;KACpB;IAED,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAEpD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,IAAI,eAAe,CAAC;IACzD,MAAM,UAAU,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAEzD,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,KAAK,KAAK,CAAC;IACpD,IAAI,CAAC,SAAS,IAAI,eAAe,EAAE;QACjC,MAAM,IAAA,2BAAK,EAAC,GAAG,CAAC,CAAC;QACjB,OAAO,IAAA,2BAAmB,EACxB,KAAK,EACL,UAAU,CAAC,WAAW,EACtB,eAAe,EACf,YAAY,CACb,CAAC;KACH;IAED,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC;AAlCW,QAAA,mBAAmB,uBAkC9B","sourcesContent":["import { AccumulatedEvents } from 'dop-engine-
|
|
1
|
+
{"version":3,"file":"graph-query.js","sourceRoot":"","sources":["../../../../src/services/dop/quick-sync/graph-query.ts"],"names":[],"mappings":";;;AACA,6DAA4D;AAE/C,QAAA,YAAY,GAAsB;IAC7C,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,EAAE;IACjB,eAAe,EAAE,EAAE;CACpB,CAAC;AAEK,MAAM,mBAAmB,GAAG,KAAK,EAGtC,KAAqD,EACrD,WAAmB,EACnB,eAAuB,EACvB,cAA4B,EAAE,EACP,EAAE;IACzB,MAAM,UAAU,GAAG,MAAM,IAAA,oCAAc,EACrC,KAAK,CAAC,WAAW,CAAC,EAClB,KAAK,EACL,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAChE,CAAC;IACF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;QAC3B,OAAO,WAAW,CAAC;KACpB;IAED,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAEpD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,IAAI,eAAe,CAAC;IACzD,MAAM,UAAU,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAEzD,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,KAAK,KAAK,CAAC;IACpD,IAAI,CAAC,SAAS,IAAI,eAAe,EAAE;QACjC,MAAM,IAAA,2BAAK,EAAC,GAAG,CAAC,CAAC;QACjB,OAAO,IAAA,2BAAmB,EACxB,KAAK,EACL,UAAU,CAAC,WAAW,EACtB,eAAe,EACf,YAAY,CACb,CAAC;KACH;IAED,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC;AAlCW,QAAA,mBAAmB,uBAkC9B","sourcesContent":["import { AccumulatedEvents } from 'dop-engine-v5';\nimport { delay, promiseTimeout } from 'dop-sharedmodels-v5';\n\nexport const EMPTY_EVENTS: AccumulatedEvents = {\n commitmentEvents: [],\n decryptEvents: [],\n nullifierEvents: [],\n};\n\nexport const autoPaginatingQuery = async <\n ReturnType extends { blockNumber: string },\n>(\n query: (blockNumber: string) => Promise<ReturnType[]>,\n blockNumber: string,\n maxQueryResults: number,\n prevResults: ReturnType[] = [],\n): Promise<ReturnType[]> => {\n const newResults = await promiseTimeout(\n query(blockNumber),\n 20000,\n new Error('Timeout querying Graph for QuickSync of DOP Events'),\n );\n if (newResults.length === 0) {\n return prevResults;\n }\n\n const totalResults = prevResults.concat(newResults); \n\n const overLimit = totalResults.length >= maxQueryResults;\n const lastResult = totalResults[totalResults.length - 1];\n\n const shouldQueryMore = newResults.length === 10000;\n if (!overLimit && shouldQueryMore) {\n await delay(250);\n return autoPaginatingQuery(\n query,\n lastResult.blockNumber,\n maxQueryResults,\n totalResults,\n );\n }\n\n return totalResults;\n};\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { Chain, TXIDVersion } from 'dop-engine-
|
|
2
|
-
export declare const quickSyncEventsGraph: (txidVersion: TXIDVersion, chain: Chain, startingBlock: number) => Promise<import("dop-engine-
|
|
1
|
+
import { Chain, TXIDVersion } from 'dop-engine-v5';
|
|
2
|
+
export declare const quickSyncEventsGraph: (txidVersion: TXIDVersion, chain: Chain, startingBlock: number) => Promise<import("dop-engine-v5").AccumulatedEvents>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quick-sync-events.js","sourceRoot":"","sources":["../../../../src/services/dop/quick-sync/quick-sync-events.ts"],"names":[],"mappings":";;;AACA,gFAAyE;AAElE,MAAM,oBAAoB,GAAG,KAAK,EACvC,WAAwB,EACxB,KAAY,EACZ,aAAqB,EACrB,EAAE;IACE,OAAO,IAAA,mDAAsB,EAAC,KAAK,EAAE,aAAa,CAAC,CAAC;AAC1D,CAAC,CAAC;AANW,QAAA,oBAAoB,wBAM/B","sourcesContent":["import { Chain, TXIDVersion } from 'dop-engine-
|
|
1
|
+
{"version":3,"file":"quick-sync-events.js","sourceRoot":"","sources":["../../../../src/services/dop/quick-sync/quick-sync-events.ts"],"names":[],"mappings":";;;AACA,gFAAyE;AAElE,MAAM,oBAAoB,GAAG,KAAK,EACvC,WAAwB,EACxB,KAAY,EACZ,aAAqB,EACrB,EAAE;IACE,OAAO,IAAA,mDAAsB,EAAC,KAAK,EAAE,aAAa,CAAC,CAAC;AAC1D,CAAC,CAAC;AANW,QAAA,oBAAoB,wBAM/B","sourcesContent":["import { Chain, TXIDVersion } from 'dop-engine-v5';\nimport { quickSyncEventsGraphV2 } from './V2/quick-sync-events-graph-v2';\n\nexport const quickSyncEventsGraph = async (\n txidVersion: TXIDVersion,\n chain: Chain,\n startingBlock: number,\n) => {\n return quickSyncEventsGraphV2(chain, startingBlock);\n};\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PreImage, TokenData, TokenType } from 'dop-engine-
|
|
1
|
+
import { PreImage, TokenData, TokenType } from 'dop-engine-v5';
|
|
2
2
|
import { TokenType as GraphTokenTypeV2, Token as GraphTokenV2, CommitmentPreimage as GraphCommitmentPreimageV2 } from './V2/graphql';
|
|
3
3
|
import { TokenType as GraphTokenTypeV3, Token as GraphTokenV3, CommitmentPreimage as GraphCommitmentPreimageV3 } from './V3/graphql';
|
|
4
4
|
export declare const graphTokenTypeToEngineTokenType: (graphTokenType: GraphTokenTypeV2 | GraphTokenTypeV3) => TokenType;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.bigIntStringToHex = exports.formatTo32Bytes = exports.formatTo16Bytes = exports.formatPreImage = exports.formatSerializedToken = exports.graphTokenTypeToEngineTokenType = void 0;
|
|
4
|
-
const dop_engine_v3_1 = require("dop-engine-
|
|
4
|
+
const dop_engine_v3_1 = require("dop-engine-v5");
|
|
5
5
|
const graphTokenTypeToEngineTokenType = (graphTokenType) => {
|
|
6
6
|
switch (graphTokenType) {
|
|
7
7
|
case 'ERC20':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared-formatters.js","sourceRoot":"","sources":["../../../../src/services/dop/quick-sync/shared-formatters.ts"],"names":[],"mappings":";;;AAAA,iDAQuB;AAYhB,MAAM,+BAA+B,GAAG,CAC7C,cAAmD,EACxC,EAAE;IACb,QAAQ,cAAc,EAAE;QACtB,KAAK,OAAO;YACV,OAAO,yBAAS,CAAC,KAAK,CAAC;QACzB,KAAK,QAAQ;YACX,OAAO,yBAAS,CAAC,MAAM,CAAC;QAC1B,KAAK,SAAS;YACZ,OAAO,yBAAS,CAAC,OAAO,CAAC;KAC5B;AACH,CAAC,CAAC;AAXW,QAAA,+BAA+B,mCAW1C;AAEK,MAAM,qBAAqB,GAAG,CACnC,UAAuC,EAC5B,EAAE;IACb,OAAO,IAAA,kCAAkB,EACvB,UAAU,CAAC,YAAY,EACvB,IAAA,uCAA+B,EAAC,UAAU,CAAC,SAAS,CAAC,EACrD,UAAU,CAAC,UAAU,CACtB,CAAC;AACJ,CAAC,CAAC;AARW,QAAA,qBAAqB,yBAQhC;AAEK,MAAM,cAAc,GAAG,CAC5B,aAAoE,EAC1D,EAAE;IACZ,OAAO,IAAA,iCAAiB,EACtB,aAAa,CAAC,GAAG,EACjB,IAAA,6BAAqB,EAAC,aAAa,CAAC,KAAK,CAAC,EAC1C,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAC5B,CAAC;AACJ,CAAC,CAAC;AARW,QAAA,cAAc,kBAQzB;AAEK,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,MAAe,EAAE,EAAE;IAChE,OAAO,yBAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,0BAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAC1E,CAAC,CAAC;AAFW,QAAA,eAAe,mBAE1B;AAEK,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,MAAe,EAAE,EAAE;IAChE,OAAO,yBAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,0BAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAC1E,CAAC,CAAC;AAFW,QAAA,eAAe,mBAE1B;AAEK,MAAM,iBAAiB,GAAG,CAAC,YAAoB,EAAU,EAAE;IAChE,OAAO,KAAK,MAAM,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;AAClD,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B","sourcesContent":["import {\n ByteLength,\n PreImage,\n TokenData,\n TokenType,\n ByteUtils,\n serializePreImage,\n serializeTokenData,\n} from 'dop-engine-
|
|
1
|
+
{"version":3,"file":"shared-formatters.js","sourceRoot":"","sources":["../../../../src/services/dop/quick-sync/shared-formatters.ts"],"names":[],"mappings":";;;AAAA,iDAQuB;AAYhB,MAAM,+BAA+B,GAAG,CAC7C,cAAmD,EACxC,EAAE;IACb,QAAQ,cAAc,EAAE;QACtB,KAAK,OAAO;YACV,OAAO,yBAAS,CAAC,KAAK,CAAC;QACzB,KAAK,QAAQ;YACX,OAAO,yBAAS,CAAC,MAAM,CAAC;QAC1B,KAAK,SAAS;YACZ,OAAO,yBAAS,CAAC,OAAO,CAAC;KAC5B;AACH,CAAC,CAAC;AAXW,QAAA,+BAA+B,mCAW1C;AAEK,MAAM,qBAAqB,GAAG,CACnC,UAAuC,EAC5B,EAAE;IACb,OAAO,IAAA,kCAAkB,EACvB,UAAU,CAAC,YAAY,EACvB,IAAA,uCAA+B,EAAC,UAAU,CAAC,SAAS,CAAC,EACrD,UAAU,CAAC,UAAU,CACtB,CAAC;AACJ,CAAC,CAAC;AARW,QAAA,qBAAqB,yBAQhC;AAEK,MAAM,cAAc,GAAG,CAC5B,aAAoE,EAC1D,EAAE;IACZ,OAAO,IAAA,iCAAiB,EACtB,aAAa,CAAC,GAAG,EACjB,IAAA,6BAAqB,EAAC,aAAa,CAAC,KAAK,CAAC,EAC1C,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAC5B,CAAC;AACJ,CAAC,CAAC;AARW,QAAA,cAAc,kBAQzB;AAEK,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,MAAe,EAAE,EAAE;IAChE,OAAO,yBAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,0BAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAC1E,CAAC,CAAC;AAFW,QAAA,eAAe,mBAE1B;AAEK,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,MAAe,EAAE,EAAE;IAChE,OAAO,yBAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,0BAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAC1E,CAAC,CAAC;AAFW,QAAA,eAAe,mBAE1B;AAEK,MAAM,iBAAiB,GAAG,CAAC,YAAoB,EAAU,EAAE;IAChE,OAAO,KAAK,MAAM,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;AAClD,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B","sourcesContent":["import {\n ByteLength,\n PreImage,\n TokenData,\n TokenType,\n ByteUtils,\n serializePreImage,\n serializeTokenData,\n} from 'dop-engine-v5';\nimport {\n TokenType as GraphTokenTypeV2,\n Token as GraphTokenV2,\n CommitmentPreimage as GraphCommitmentPreimageV2,\n} from './V2/graphql';\nimport {\n TokenType as GraphTokenTypeV3,\n Token as GraphTokenV3,\n CommitmentPreimage as GraphCommitmentPreimageV3,\n} from './V3/graphql';\n\nexport const graphTokenTypeToEngineTokenType = (\n graphTokenType: GraphTokenTypeV2 | GraphTokenTypeV3,\n): TokenType => {\n switch (graphTokenType) {\n case 'ERC20':\n return TokenType.ERC20;\n case 'ERC721':\n return TokenType.ERC721;\n case 'ERC1155':\n return TokenType.ERC1155;\n }\n};\n\nexport const formatSerializedToken = (\n graphToken: GraphTokenV2 | GraphTokenV3,\n): TokenData => {\n return serializeTokenData(\n graphToken.tokenAddress,\n graphTokenTypeToEngineTokenType(graphToken.tokenType),\n graphToken.tokenSubID,\n );\n};\n\nexport const formatPreImage = (\n graphPreImage: GraphCommitmentPreimageV2 | GraphCommitmentPreimageV3,\n): PreImage => {\n return serializePreImage(\n graphPreImage.npk,\n formatSerializedToken(graphPreImage.token),\n BigInt(graphPreImage.value),\n );\n};\n\nexport const formatTo16Bytes = (value: string, prefix: boolean) => {\n return ByteUtils.formatToByteLength(value, ByteLength.UINT_128, prefix);\n};\n\nexport const formatTo32Bytes = (value: string, prefix: boolean) => {\n return ByteUtils.formatToByteLength(value, ByteLength.UINT_256, prefix);\n};\n\nexport const bigIntStringToHex = (bigintString: string): string => {\n return `0x${BigInt(bigintString).toString(16)}`;\n};\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ByteLength, ByteUtils, fromUTF8String, toUTF8String, Database } from 'dop-engine-
|
|
1
|
+
import { ByteLength, ByteUtils, fromUTF8String, toUTF8String, Database } from 'dop-engine-v5';
|
|
2
2
|
export declare const parseDopTokenAddress: (tokenAddress: string) => string;
|
|
3
3
|
export declare const getRandomBytes: (length: number) => string;
|
|
4
4
|
export declare const bytesToHex: (bytes: Uint8Array) => string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Database = exports.toUTF8String = exports.fromUTF8String = exports.ByteUtils = exports.ByteLength = exports.bytesToHex = exports.getRandomBytes = exports.parseDopTokenAddress = void 0;
|
|
4
|
-
const dop_engine_v3_1 = require("dop-engine-
|
|
4
|
+
const dop_engine_v3_1 = require("dop-engine-v5");
|
|
5
5
|
Object.defineProperty(exports, "ByteLength", { enumerable: true, get: function () { return dop_engine_v3_1.ByteLength; } });
|
|
6
6
|
Object.defineProperty(exports, "ByteUtils", { enumerable: true, get: function () { return dop_engine_v3_1.ByteUtils; } });
|
|
7
7
|
Object.defineProperty(exports, "fromUTF8String", { enumerable: true, get: function () { return dop_engine_v3_1.fromUTF8String; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bytes.js","sourceRoot":"","sources":["../../../../src/services/dop/util/bytes.ts"],"names":[],"mappings":";;;AAAA,iDAMuB;AAcd,2FAnBP,0BAAU,OAmBO;AAAE,0FAlBnB,yBAAS,OAkBmB;AAAE,+FAjB9B,8BAAc,OAiB8B;AAAE,6FAhB9C,4BAAY,OAgB8C;AAAE,yFAf5D,wBAAQ,OAe4D;AAZ/D,MAAM,oBAAoB,GAAG,CAAC,YAAoB,EAAU,EAAE;IACnE,OAAO,yBAAS,CAAC,kBAAkB,CAAC,YAAY,EAAE,0BAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAC9E,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B;AAEK,MAAM,cAAc,GAAG,CAAC,MAAc,EAAU,EAAE;IACvD,OAAO,yBAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC,CAAC;AAFW,QAAA,cAAc,kBAEzB;AAEK,MAAM,UAAU,GAAG,CAAC,KAAiB,EAAU,EAAE;IACtD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC5C,CAAC,CAAC;AAFW,QAAA,UAAU,cAErB","sourcesContent":["import {\n ByteLength,\n ByteUtils,\n fromUTF8String,\n toUTF8String,\n Database,\n} from 'dop-engine-
|
|
1
|
+
{"version":3,"file":"bytes.js","sourceRoot":"","sources":["../../../../src/services/dop/util/bytes.ts"],"names":[],"mappings":";;;AAAA,iDAMuB;AAcd,2FAnBP,0BAAU,OAmBO;AAAE,0FAlBnB,yBAAS,OAkBmB;AAAE,+FAjB9B,8BAAc,OAiB8B;AAAE,6FAhB9C,4BAAY,OAgB8C;AAAE,yFAf5D,wBAAQ,OAe4D;AAZ/D,MAAM,oBAAoB,GAAG,CAAC,YAAoB,EAAU,EAAE;IACnE,OAAO,yBAAS,CAAC,kBAAkB,CAAC,YAAY,EAAE,0BAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAC9E,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B;AAEK,MAAM,cAAc,GAAG,CAAC,MAAc,EAAU,EAAE;IACvD,OAAO,yBAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC,CAAC;AAFW,QAAA,cAAc,kBAEzB;AAEK,MAAM,UAAU,GAAG,CAAC,KAAiB,EAAU,EAAE;IACtD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC5C,CAAC,CAAC;AAFW,QAAA,UAAU,cAErB","sourcesContent":["import {\n ByteLength,\n ByteUtils,\n fromUTF8String,\n toUTF8String,\n Database,\n} from 'dop-engine-v5';\n\nexport const parseDopTokenAddress = (tokenAddress: string): string => {\n return ByteUtils.formatToByteLength(tokenAddress, ByteLength.Address, true);\n};\n\nexport const getRandomBytes = (length: number): string => {\n return ByteUtils.randomHex(length);\n};\n\nexport const bytesToHex = (bytes: Uint8Array): string => {\n return Buffer.from(bytes).toString('hex');\n};\n\nexport { ByteLength, ByteUtils, fromUTF8String, toUTF8String, Database };\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { encryptJSONDataWithSharedKey, tryDecryptJSONDataWithSharedKey, getPublicViewingKey, EncryptedData, ViewingKeyPair } from 'dop-engine-
|
|
2
|
-
import { EncryptDataWithSharedKeyResponse } from 'dop-sharedmodels-
|
|
1
|
+
import { encryptJSONDataWithSharedKey, tryDecryptJSONDataWithSharedKey, getPublicViewingKey, EncryptedData, ViewingKeyPair } from 'dop-engine-v5';
|
|
2
|
+
import { EncryptDataWithSharedKeyResponse } from 'dop-sharedmodels-v5';
|
|
3
3
|
export declare const verifyBroadcasterSignature: (signature: string | Uint8Array, data: string | Uint8Array, signingKey: Uint8Array) => Promise<boolean>;
|
|
4
4
|
export declare const encryptDataWithSharedKey: (data: object, externalPubKey: Uint8Array) => Promise<EncryptDataWithSharedKeyResponse>;
|
|
5
5
|
export declare const decryptAESGCM256: (encryptedData: EncryptedData, sharedKey: Uint8Array) => object | null;
|
|
@@ -25,7 +25,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
exports.getPublicViewingKey = exports.tryDecryptJSONDataWithSharedKey = exports.encryptJSONDataWithSharedKey = exports.pbkdf2 = exports.encryptAESGCM256 = exports.decryptAESGCM256 = exports.encryptDataWithSharedKey = exports.verifyBroadcasterSignature = void 0;
|
|
27
27
|
const ed = __importStar(require("@noble/ed25519"));
|
|
28
|
-
const dop_engine_v3_1 = require("dop-engine-
|
|
28
|
+
const dop_engine_v3_1 = require("dop-engine-v5");
|
|
29
29
|
Object.defineProperty(exports, "encryptJSONDataWithSharedKey", { enumerable: true, get: function () { return dop_engine_v3_1.encryptJSONDataWithSharedKey; } });
|
|
30
30
|
Object.defineProperty(exports, "tryDecryptJSONDataWithSharedKey", { enumerable: true, get: function () { return dop_engine_v3_1.tryDecryptJSONDataWithSharedKey; } });
|
|
31
31
|
Object.defineProperty(exports, "getPublicViewingKey", { enumerable: true, get: function () { return dop_engine_v3_1.getPublicViewingKey; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../../../src/services/dop/util/crypto.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAqC;AACrC,iDAQuB;AAkFrB,6GAxFA,4CAA4B,OAwFA;AAC5B,gHAxFA,+CAA+B,OAwFA;AAE/B,oGAzFA,mCAAmB,OAyFA;AAnFrB,mCAAyC;AACzC,+BAAiC;AACjC,mCAA8C;AAC9C,yDAAkE;AAClE,uCAA0C;AAEnC,MAAM,0BAA0B,GAAG,CACxC,SAA8B,EAC9B,IAAyB,EACzB,UAAsB,EACJ,EAAE;IACpB,OAAO,IAAA,6BAAa,EAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AACpD,CAAC,CAAC;AANW,QAAA,0BAA0B,8BAMrC;AAEK,MAAM,wBAAwB,GAAG,KAAK,EAC3C,IAAY,EACZ,cAA0B,EACiB,EAAE;IAC7C,MAAM,aAAa,GAAG,yBAAS,CAAC,gBAAgB,CAAC,IAAA,sBAAc,EAAC,EAAE,CAAC,CAAC,CAAC;IACrE,MAAM,sBAAsB,GAAG,MAAM,IAAA,mCAAmB,EAAC,aAAa,CAAC,CAAC;IACxE,MAAM,YAAY,GAAG,yBAAS,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,eAAe,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IAC1E,MAAM,aAAa,GAAG,IAAA,4CAA4B,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACpE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;AACpD,CAAC,CAAC;AAVW,QAAA,wBAAwB,4BAUnC;AAEK,MAAM,gBAAgB,GAAG,CAC9B,aAA4B,EAC5B,SAAqB,EACN,EAAE;IACjB,OAAO,IAAA,+CAA+B,EAAC,aAAa,EAAE,SAAS,CAAC,CAAC;AACnE,CAAC,CAAC;AALW,QAAA,gBAAgB,oBAK3B;AAEK,MAAM,gBAAgB,GAAG,CAC9B,IAAY,EACZ,SAAqB,EACN,EAAE;IACjB,OAAO,IAAA,4CAA4B,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AACvD,CAAC,CAAC;AALW,QAAA,gBAAgB,oBAK3B;AAEF;;;;;GAKG;AACI,MAAM,MAAM,GAAG,KAAK,EACzB,MAAc,EACd,IAAY,EACZ,UAAkB,EACD,EAAE;IACnB,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClD,MAAM,eAAe,GAAG,IAAI,UAAU,CAAC,yBAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;IACzE,MAAM,aAAa,GAAG,IAAI,UAAU,CAAC,yBAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAE/D,MAAM,SAAS,GAAG,EAAE,CAAC,CAAC,QAAQ;IAC9B,MAAM,MAAM,GAAG,QAAQ,CAAC;IAExB,IAAI,GAAwB,CAAC;IAC7B,IAAI,uBAAa,EAAE;QACjB,GAAG,GAAG,MAAM,IAAA,eAAQ,EAClB,eAAe,EACf,aAAa,EACb,UAAU,EACV,SAAS,EACT,MAAM,CACP,CAAC;KACH;SAAM;QACL,GAAG,GAAG,MAAM,IAAA,gBAAS,EAAC,eAAU,CAAC,CAC/B,eAAe,EACf,aAAa,EACb,UAAU,EACV,SAAS,EACT,MAAM,CACP,CAAC;KACH;IACD,OAAO,yBAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAChC,CAAC,CAAC;AA/BW,QAAA,MAAM,UA+BjB","sourcesContent":["import * as ed from '@noble/ed25519';\nimport {\n ByteUtils,\n encryptJSONDataWithSharedKey,\n tryDecryptJSONDataWithSharedKey,\n getPublicViewingKey,\n verifyED25519,\n EncryptedData,\n ViewingKeyPair,\n} from 'dop-engine-
|
|
1
|
+
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../../../src/services/dop/util/crypto.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAqC;AACrC,iDAQuB;AAkFrB,6GAxFA,4CAA4B,OAwFA;AAC5B,gHAxFA,+CAA+B,OAwFA;AAE/B,oGAzFA,mCAAmB,OAyFA;AAnFrB,mCAAyC;AACzC,+BAAiC;AACjC,mCAA8C;AAC9C,yDAAkE;AAClE,uCAA0C;AAEnC,MAAM,0BAA0B,GAAG,CACxC,SAA8B,EAC9B,IAAyB,EACzB,UAAsB,EACJ,EAAE;IACpB,OAAO,IAAA,6BAAa,EAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AACpD,CAAC,CAAC;AANW,QAAA,0BAA0B,8BAMrC;AAEK,MAAM,wBAAwB,GAAG,KAAK,EAC3C,IAAY,EACZ,cAA0B,EACiB,EAAE;IAC7C,MAAM,aAAa,GAAG,yBAAS,CAAC,gBAAgB,CAAC,IAAA,sBAAc,EAAC,EAAE,CAAC,CAAC,CAAC;IACrE,MAAM,sBAAsB,GAAG,MAAM,IAAA,mCAAmB,EAAC,aAAa,CAAC,CAAC;IACxE,MAAM,YAAY,GAAG,yBAAS,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,eAAe,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IAC1E,MAAM,aAAa,GAAG,IAAA,4CAA4B,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACpE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;AACpD,CAAC,CAAC;AAVW,QAAA,wBAAwB,4BAUnC;AAEK,MAAM,gBAAgB,GAAG,CAC9B,aAA4B,EAC5B,SAAqB,EACN,EAAE;IACjB,OAAO,IAAA,+CAA+B,EAAC,aAAa,EAAE,SAAS,CAAC,CAAC;AACnE,CAAC,CAAC;AALW,QAAA,gBAAgB,oBAK3B;AAEK,MAAM,gBAAgB,GAAG,CAC9B,IAAY,EACZ,SAAqB,EACN,EAAE;IACjB,OAAO,IAAA,4CAA4B,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AACvD,CAAC,CAAC;AALW,QAAA,gBAAgB,oBAK3B;AAEF;;;;;GAKG;AACI,MAAM,MAAM,GAAG,KAAK,EACzB,MAAc,EACd,IAAY,EACZ,UAAkB,EACD,EAAE;IACnB,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClD,MAAM,eAAe,GAAG,IAAI,UAAU,CAAC,yBAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;IACzE,MAAM,aAAa,GAAG,IAAI,UAAU,CAAC,yBAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAE/D,MAAM,SAAS,GAAG,EAAE,CAAC,CAAC,QAAQ;IAC9B,MAAM,MAAM,GAAG,QAAQ,CAAC;IAExB,IAAI,GAAwB,CAAC;IAC7B,IAAI,uBAAa,EAAE;QACjB,GAAG,GAAG,MAAM,IAAA,eAAQ,EAClB,eAAe,EACf,aAAa,EACb,UAAU,EACV,SAAS,EACT,MAAM,CACP,CAAC;KACH;SAAM;QACL,GAAG,GAAG,MAAM,IAAA,gBAAS,EAAC,eAAU,CAAC,CAC/B,eAAe,EACf,aAAa,EACb,UAAU,EACV,SAAS,EACT,MAAM,CACP,CAAC;KACH;IACD,OAAO,yBAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAChC,CAAC,CAAC;AA/BW,QAAA,MAAM,UA+BjB","sourcesContent":["import * as ed from '@noble/ed25519';\nimport {\n ByteUtils,\n encryptJSONDataWithSharedKey,\n tryDecryptJSONDataWithSharedKey,\n getPublicViewingKey,\n verifyED25519,\n EncryptedData,\n ViewingKeyPair,\n} from 'dop-engine-v5';\nimport { EncryptDataWithSharedKeyResponse } from 'dop-sharedmodels-v5';\nimport { getRandomBytes } from './bytes';\nimport { promisify } from 'util';\nimport { pbkdf2 as NodePbkdf2 } from 'crypto';\nimport { pbkdf2 as JSpbkdf2 } from 'ethereum-cryptography/pbkdf2';\nimport { isReactNative } from './runtime';\n\nexport const verifyBroadcasterSignature = (\n signature: string | Uint8Array,\n data: string | Uint8Array,\n signingKey: Uint8Array,\n): Promise<boolean> => {\n return verifyED25519(data, signature, signingKey);\n};\n\nexport const encryptDataWithSharedKey = async (\n data: object,\n externalPubKey: Uint8Array,\n): Promise<EncryptDataWithSharedKeyResponse> => {\n const randomPrivKey = ByteUtils.hexStringToBytes(getRandomBytes(32));\n const randomPubKeyUint8Array = await getPublicViewingKey(randomPrivKey);\n const randomPubKey = ByteUtils.hexlify(randomPubKeyUint8Array);\n const sharedKey = await ed.getSharedSecret(randomPrivKey, externalPubKey);\n const encryptedData = encryptJSONDataWithSharedKey(data, sharedKey);\n return { encryptedData, randomPubKey, sharedKey };\n};\n\nexport const decryptAESGCM256 = (\n encryptedData: EncryptedData,\n sharedKey: Uint8Array,\n): object | null => {\n return tryDecryptJSONDataWithSharedKey(encryptedData, sharedKey);\n};\n\nexport const encryptAESGCM256 = (\n data: object,\n sharedKey: Uint8Array,\n): EncryptedData => {\n return encryptJSONDataWithSharedKey(data, sharedKey);\n};\n\n/**\n * Calculates PBKDF2 hash\n * @param secret - input\n * @param salt - salt\n * @param iterations - rounds\n */\nexport const pbkdf2 = async (\n secret: string,\n salt: string,\n iterations: number,\n): Promise<string> => {\n const secretBuffer = Buffer.from(secret, 'utf-8');\n const secretFormatted = new Uint8Array(ByteUtils.arrayify(secretBuffer));\n const saltFormatted = new Uint8Array(ByteUtils.arrayify(salt));\n\n const keyLength = 32; // Bytes\n const digest = 'sha256';\n\n let key: Uint8Array | Buffer;\n if (isReactNative) {\n key = await JSpbkdf2(\n secretFormatted,\n saltFormatted,\n iterations,\n keyLength,\n digest,\n );\n } else {\n key = await promisify(NodePbkdf2)(\n secretFormatted,\n saltFormatted,\n iterations,\n keyLength,\n digest,\n );\n }\n return ByteUtils.hexlify(key);\n};\n\nexport {\n encryptJSONDataWithSharedKey,\n tryDecryptJSONDataWithSharedKey,\n EncryptedData,\n getPublicViewingKey,\n ViewingKeyPair,\n};\n"]}
|
|
@@ -9,7 +9,7 @@ const mocks_test_1 = require("../../../../tests/mocks.test");
|
|
|
9
9
|
const setup_test_1 = require("../../../../tests/setup.test");
|
|
10
10
|
const wallets_1 = require("../wallets");
|
|
11
11
|
const balances_1 = require("../balances");
|
|
12
|
-
const dop_sharedmodels_v3_1 = require("dop-sharedmodels-
|
|
12
|
+
const dop_sharedmodels_v3_1 = require("dop-sharedmodels-v5");
|
|
13
13
|
const load_provider_1 = require("../../core/load-provider");
|
|
14
14
|
const helper_test_1 = require("../../../../tests/helper.test");
|
|
15
15
|
const engine_1 = require("../../core/engine");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"balances-live.test.js","sourceRoot":"","sources":["../../../../../src/services/dop/wallets/__tests__/balances-live.test.ts"],"names":[],"mappings":";;;;;AAAA,gDAAwB;AACxB,wEAA8C;AAC9C,6DAIsC;AACtC,6DAKsC;AACtC,wCAA8D;AAC9D,0CAAkE;AAClE,6DAK6B;AAC7B,4DAAwD;AAExD,+DAA6E;AAC7E,8CAA8C;AAE9C,cAAI,CAAC,GAAG,CAAC,0BAAc,CAAC,CAAC;AACzB,MAAM,EAAE,MAAM,EAAE,GAAG,cAAI,CAAC;AAExB,IAAI,WAAmB,CAAC;AAExB,MAAM,WAAW,GAAG,IAAA,gCAAkB,GAAE,CAAC;AAEzC,MAAM,WAAW,GAAG,iCAAW,CAAC,eAAe,CAAC;AAChD,MAAM,KAAK,GAAU,oCAAc,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC;AAEvD,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,MAAM,CAAC,KAAK,UAAU,GAAG;QACvB,IAAI,CAAC,OAAO,CAAC,MAAO,CAAC,CAAC;QACtB,MAAM,IAAA,2BAAc,GAAE,CAAC;QACvB,MAAM,aAAa,GAAG,MAAM,IAAA,yBAAe,EACzC,mCAAsB,EACtB,0BAAa,EACb,SAAS,CACV,CAAC;QACF,IAAI,CAAC,IAAA,+BAAS,EAAC,aAAa,CAAC,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;SAC3C;QACD,WAAW,GAAG,aAAa,CAAC,EAAE,CAAC;QAE/B,MAAM,IAAA,4BAAY,EAChB,uDAA0C,EAC1C,WAAW,EACX,KAAM,CACP,CAAC;QACF,MAAM,EAAE,KAAK,EAAE,GAAG,oCAAc,CAAC,WAAW,CAAC,CAAC;QAC9C,mEAAmE;QACnE,IAAA,kBAAS,GAAE,CAAC,mBAAmB,CAC7B,KAAK,EACL,SAAS,CACV,CAAC;QACF,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAA,2CAA8B,GAAE;YAChC,yDAAyD;YACzD,IAAA,2CAA8B,GAAE;SACjC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,IAAA,4BAAe,GAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wFAAwF,EAAE,KAAK,UAAU,GAAG;QAC7G,IAAI,CAAC,IAAA,sBAAQ,GAAE,EAAE;YACf,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,OAAO;SACR;QAED,MAAM,IAAA,8CAAmC,EAAC,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;QAEhE,MAAM,MAAM,GAAG,IAAA,yBAAe,EAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC5C,WAAW,EACX,KAAK,EACL,KAAK,CACN,CAAC;QAEF,wFAAwF;QACxF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAEjE,MAAM,kBAAkB,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAC3D,KAAK,EACL,SAAS,CACV,CAAC;QACF,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAM,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC","sourcesContent":["import chai from 'chai';\nimport chaiAsPromised from 'chai-as-promised';\nimport {\n MOCK_DB_ENCRYPTION_KEY,\n MOCK_FALLBACK_PROVIDER_JSON_CONFIG_SEPOLIA,\n MOCK_MNEMONIC,\n} from '../../../../tests/mocks.test';\nimport {\n closeTestEngine,\n initTestEngine,\n pollUntilTXIDMerkletreeScanned,\n pollUntilUTXOMerkletreeScanned,\n} from '../../../../tests/setup.test';\nimport { createDopWallet, fullWalletForID } from '../wallets';\nimport { rescanFullUTXOMerkletreesAndWallets } from '../balances';\nimport {\n Chain,\n NETWORK_CONFIG,\n NetworkName,\n isDefined,\n} from 'dop-sharedmodels-
|
|
1
|
+
{"version":3,"file":"balances-live.test.js","sourceRoot":"","sources":["../../../../../src/services/dop/wallets/__tests__/balances-live.test.ts"],"names":[],"mappings":";;;;;AAAA,gDAAwB;AACxB,wEAA8C;AAC9C,6DAIsC;AACtC,6DAKsC;AACtC,wCAA8D;AAC9D,0CAAkE;AAClE,6DAK6B;AAC7B,4DAAwD;AAExD,+DAA6E;AAC7E,8CAA8C;AAE9C,cAAI,CAAC,GAAG,CAAC,0BAAc,CAAC,CAAC;AACzB,MAAM,EAAE,MAAM,EAAE,GAAG,cAAI,CAAC;AAExB,IAAI,WAAmB,CAAC;AAExB,MAAM,WAAW,GAAG,IAAA,gCAAkB,GAAE,CAAC;AAEzC,MAAM,WAAW,GAAG,iCAAW,CAAC,eAAe,CAAC;AAChD,MAAM,KAAK,GAAU,oCAAc,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC;AAEvD,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,MAAM,CAAC,KAAK,UAAU,GAAG;QACvB,IAAI,CAAC,OAAO,CAAC,MAAO,CAAC,CAAC;QACtB,MAAM,IAAA,2BAAc,GAAE,CAAC;QACvB,MAAM,aAAa,GAAG,MAAM,IAAA,yBAAe,EACzC,mCAAsB,EACtB,0BAAa,EACb,SAAS,CACV,CAAC;QACF,IAAI,CAAC,IAAA,+BAAS,EAAC,aAAa,CAAC,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;SAC3C;QACD,WAAW,GAAG,aAAa,CAAC,EAAE,CAAC;QAE/B,MAAM,IAAA,4BAAY,EAChB,uDAA0C,EAC1C,WAAW,EACX,KAAM,CACP,CAAC;QACF,MAAM,EAAE,KAAK,EAAE,GAAG,oCAAc,CAAC,WAAW,CAAC,CAAC;QAC9C,mEAAmE;QACnE,IAAA,kBAAS,GAAE,CAAC,mBAAmB,CAC7B,KAAK,EACL,SAAS,CACV,CAAC;QACF,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAA,2CAA8B,GAAE;YAChC,yDAAyD;YACzD,IAAA,2CAA8B,GAAE;SACjC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,IAAA,4BAAe,GAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wFAAwF,EAAE,KAAK,UAAU,GAAG;QAC7G,IAAI,CAAC,IAAA,sBAAQ,GAAE,EAAE;YACf,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,OAAO;SACR;QAED,MAAM,IAAA,8CAAmC,EAAC,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;QAEhE,MAAM,MAAM,GAAG,IAAA,yBAAe,EAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC5C,WAAW,EACX,KAAK,EACL,KAAK,CACN,CAAC;QAEF,wFAAwF;QACxF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAEjE,MAAM,kBAAkB,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAC3D,KAAK,EACL,SAAS,CACV,CAAC;QACF,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAM,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC","sourcesContent":["import chai from 'chai';\nimport chaiAsPromised from 'chai-as-promised';\nimport {\n MOCK_DB_ENCRYPTION_KEY,\n MOCK_FALLBACK_PROVIDER_JSON_CONFIG_SEPOLIA,\n MOCK_MNEMONIC,\n} from '../../../../tests/mocks.test';\nimport {\n closeTestEngine,\n initTestEngine,\n pollUntilTXIDMerkletreeScanned,\n pollUntilUTXOMerkletreeScanned,\n} from '../../../../tests/setup.test';\nimport { createDopWallet, fullWalletForID } from '../wallets';\nimport { rescanFullUTXOMerkletreesAndWallets } from '../balances';\nimport {\n Chain,\n NETWORK_CONFIG,\n NetworkName,\n isDefined,\n} from 'dop-sharedmodels-v5';\nimport { loadProvider } from '../../core/load-provider';\nimport { getTXIDMerkletreeForNetwork } from '../../core/merkletree';\nimport { getTestTXIDVersion, isV2Test } from '../../../../tests/helper.test';\nimport { getEngine } from '../../core/engine';\n\nchai.use(chaiAsPromised);\nconst { expect } = chai;\n\nlet dopWalletID: string;\n\nconst txidVersion = getTestTXIDVersion();\n\nconst networkName = NetworkName.EthereumSepolia;\nconst chain: Chain = NETWORK_CONFIG[networkName].chain;\n\ndescribe('balances-live', () => {\n before(async function run() {\n this.timeout(360_000);\n await initTestEngine();\n const dopWalletInfo = await createDopWallet(\n MOCK_DB_ENCRYPTION_KEY,\n MOCK_MNEMONIC,\n undefined, // creationBlockNumbers\n );\n if (!isDefined(dopWalletInfo)) {\n throw new Error('Expected dopWalletInfo');\n }\n dopWalletID = dopWalletInfo.id;\n\n await loadProvider(\n MOCK_FALLBACK_PROVIDER_JSON_CONFIG_SEPOLIA,\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 await Promise.all([\n pollUntilUTXOMerkletreeScanned(),\n // Enable this when running on a network supporting PPOI:\n pollUntilTXIDMerkletreeScanned(),\n ]);\n });\n\n after(async () => {\n await closeTestEngine();\n });\n\n it('[V2] Should run live balance fetch, transaction history scan, and POI status info scan', async function run() {\n if (!isV2Test()) {\n this.skip();\n return;\n }\n\n await rescanFullUTXOMerkletreesAndWallets(chain, [dopWalletID]);\n\n const wallet = fullWalletForID(dopWalletID);\n const balances = await wallet.getTokenBalances(\n txidVersion,\n chain,\n false, // onlySpendable\n );\n\n // Note: dopWallet above needs to perform transactions on above network to have balances\n expect(Object.keys(balances).length).to.be.greaterThanOrEqual(1);\n\n const transactionHistory = await wallet.getTransactionHistory(\n chain,\n undefined,\n );\n expect(transactionHistory.length).to.be.greaterThanOrEqual(2);\n }).timeout(90_000);\n});\n"]}
|
|
@@ -5,9 +5,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const chai_1 = __importDefault(require("chai"));
|
|
7
7
|
const chai_as_promised_1 = __importDefault(require("chai-as-promised"));
|
|
8
|
-
const dop_engine_v3_1 = require("dop-engine-
|
|
8
|
+
const dop_engine_v3_1 = require("dop-engine-v5");
|
|
9
9
|
const sinon_1 = __importDefault(require("sinon"));
|
|
10
|
-
const dop_sharedmodels_v3_1 = require("dop-sharedmodels-
|
|
10
|
+
const dop_sharedmodels_v3_1 = require("dop-sharedmodels-v5");
|
|
11
11
|
const balance_update_1 = require("../balance-update");
|
|
12
12
|
const wallets_1 = require("../wallets");
|
|
13
13
|
const mocks_test_1 = require("../../../../tests/mocks.test");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"balances-update.test.js","sourceRoot":"","sources":["../../../../../src/services/dop/wallets/__tests__/balances-update.test.ts"],"names":[],"mappings":"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","sourcesContent":["import chai from 'chai';\nimport chaiAsPromised from 'chai-as-promised';\nimport {\n DopWallet,\n TokenBalances,\n Chain,\n ChainType,\n getTokenDataERC20,\n} from 'dop-engine-
|
|
1
|
+
{"version":3,"file":"balances-update.test.js","sourceRoot":"","sources":["../../../../../src/services/dop/wallets/__tests__/balances-update.test.ts"],"names":[],"mappings":"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","sourcesContent":["import chai from 'chai';\nimport chaiAsPromised from 'chai-as-promised';\nimport {\n DopWallet,\n TokenBalances,\n Chain,\n ChainType,\n getTokenDataERC20,\n} from 'dop-engine-v5';\nimport Sinon, { SinonStub } from 'sinon';\nimport {\n NETWORK_CONFIG,\n NetworkName,\n DopBalancesEvent,\n DopWalletBalanceBucket,\n isDefined,\n} from 'dop-sharedmodels-v5';\nimport {\n onBalancesUpdate,\n setOnBalanceUpdateCallback,\n} from '../balance-update';\nimport { createDopWallet, fullWalletForID } from '../wallets';\nimport {\n MOCK_DB_ENCRYPTION_KEY,\n MOCK_FALLBACK_PROVIDER_JSON_CONFIG_SEPOLIA,\n MOCK_MNEMONIC,\n} from '../../../../tests/mocks.test';\nimport { closeTestEngine, initTestEngine } from '../../../../tests/setup.test';\nimport { loadProvider } from '../../core/load-provider';\nimport { getTestTXIDVersion } from '../../../../tests/helper.test';\nimport { getEngine } from '../../core/engine';\n\nchai.use(chaiAsPromised);\nconst { expect } = chai;\n\nconst MOCK_TOKEN_ADDRESS = '0x012536';\n\nconst txidVersion = getTestTXIDVersion();\n\nlet wallet: DopWallet;\n\nlet walletBalanceStub: SinonStub;\nlet walletBalancesByBucketStub: SinonStub;\nlet walletTokenBalanceStub: SinonStub;\n\ndescribe('balances-update', () => {\n before(async function run() {\n this.timeout(60_000);\n await initTestEngine();\n const dopWalletInfo = await createDopWallet(\n MOCK_DB_ENCRYPTION_KEY,\n MOCK_MNEMONIC,\n undefined, // creationBlockNumbers\n );\n if (!isDefined(dopWalletInfo)) {\n throw new Error('Expected dopWalletInfo');\n }\n await loadProvider(\n MOCK_FALLBACK_PROVIDER_JSON_CONFIG_SEPOLIA,\n NetworkName.EthereumSepolia,\n 10_000, // pollingInterval\n );\n const { chain } = NETWORK_CONFIG[NetworkName.EthereumSepolia];\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n getEngine().scanContractHistory(\n chain,\n undefined, // walletIdFilter\n );\n wallet = fullWalletForID(dopWalletInfo.id);\n const tokenAddress = MOCK_TOKEN_ADDRESS.replace('0x', '');\n const tokenData = getTokenDataERC20(tokenAddress);\n const balances: TokenBalances = {\n [tokenAddress]: {\n balance: BigInt(10),\n utxos: [],\n tokenData,\n },\n };\n walletBalanceStub = Sinon.stub(\n DopWallet,\n 'getTokenBalancesByTxidVersion',\n ).resolves(balances);\n walletBalancesByBucketStub = Sinon.stub(\n DopWallet.prototype,\n 'getTokenBalancesByBucket',\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n ).resolves({ Spendable: balances } as any);\n walletTokenBalanceStub = Sinon.stub(\n DopWallet.prototype,\n 'getTokenBalances',\n ).resolves(balances);\n });\n\n afterEach(() => {\n walletBalanceStub.resetHistory();\n walletBalancesByBucketStub.resetHistory();\n walletTokenBalanceStub.resetHistory();\n });\n after(async () => {\n walletBalanceStub.restore();\n walletBalancesByBucketStub.restore();\n walletTokenBalanceStub.restore();\n await closeTestEngine();\n });\n\n it('Should not pull balances without callback', async () => {\n setOnBalanceUpdateCallback(undefined);\n const chain: Chain = { type: ChainType.EVM, id: 1 };\n await expect(onBalancesUpdate(txidVersion, wallet, chain)).to.be.fulfilled;\n expect(walletBalanceStub.notCalled).to.be.true;\n expect(walletBalancesByBucketStub.notCalled).to.be.true;\n });\n\n it('Should parse wallet balances response', async () => {\n let formattedBalances!: DopBalancesEvent;\n const callback = (balancesFormatted: DopBalancesEvent) => {\n formattedBalances = balancesFormatted;\n };\n setOnBalanceUpdateCallback(callback);\n const chain: Chain = { type: ChainType.EVM, id: 80001 };\n await expect(onBalancesUpdate(txidVersion, wallet, chain)).to.be.fulfilled;\n // TODO: enable this assertion once we have PPOI on PolygonMumbai\n // because `onBalancesUpdate` only runs it if PPOI is required:\n // expect(walletBalancesByBucketStub.calledOnce).to.be.true;\n expect(formattedBalances.balanceBucket).to.deep.equal(\n DopWalletBalanceBucket.Spendable,\n );\n expect(formattedBalances.chain).to.deep.equal(chain);\n expect(formattedBalances.erc20Amounts.length).to.equal(1);\n expect(formattedBalances.erc20Amounts[0]).to.deep.equal({\n tokenAddress: '0x0000000000000000000000000000000000012536',\n amount: 10n,\n });\n });\n\n});\n"]}
|