dop-wallet-v6 1.1.9 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/services/artifacts/artifact-hash.d.ts +1 -0
  2. package/dist/services/artifacts/artifact-store.d.ts +1 -0
  3. package/dist/services/artifacts/artifact-util.js +5 -10
  4. package/dist/services/artifacts/artifact-util.js.map +1 -1
  5. package/dist/services/artifacts/json/artifact-v2-hashes.json +0 -65
  6. package/dist/services/dop/core/artifacts.d.ts +2 -2
  7. package/dist/services/dop/core/artifacts.js +1 -3
  8. package/dist/services/dop/core/artifacts.js.map +1 -1
  9. package/dist/services/dop/quick-sync/graphql/index.js +3 -3
  10. package/dist/services/dop/quick-sync/graphql/index.js.map +1 -1
  11. package/dist/services/dop/util/commitment.d.ts +2 -1
  12. package/dist/services/dop/util/commitment.js +2 -3
  13. package/dist/services/dop/util/commitment.js.map +1 -1
  14. package/dist/services/dop/wallets/wallets.js +1 -1
  15. package/dist/services/dop/wallets/wallets.js.map +1 -1
  16. package/dist/services/transactions/tx-cross-contract-calls.d.ts +4 -2
  17. package/dist/services/transactions/tx-cross-contract-calls.js +108 -260
  18. package/dist/services/transactions/tx-cross-contract-calls.js.map +1 -1
  19. package/dist/services/transactions/tx-gas-details.js +1 -1
  20. package/dist/services/transactions/tx-gas-details.js.map +1 -1
  21. package/dist/services/transactions/tx-gas-relayer-fee-estimator.d.ts +4 -1
  22. package/dist/services/transactions/tx-gas-relayer-fee-estimator.js +86 -185
  23. package/dist/services/transactions/tx-gas-relayer-fee-estimator.js.map +1 -1
  24. package/dist/services/transactions/tx-generator.d.ts +3 -2
  25. package/dist/services/transactions/tx-generator.js +25 -54
  26. package/dist/services/transactions/tx-generator.js.map +1 -1
  27. package/dist/services/transactions/tx-proof-transfer.d.ts +1 -2
  28. package/dist/services/transactions/tx-proof-transfer.js +17 -11
  29. package/dist/services/transactions/tx-proof-transfer.js.map +1 -1
  30. package/dist/services/transactions/tx-proof-unshield.d.ts +3 -2
  31. package/dist/services/transactions/tx-proof-unshield.js +84 -143
  32. package/dist/services/transactions/tx-proof-unshield.js.map +1 -1
  33. package/dist/services/transactions/tx-shield.js.map +1 -1
  34. package/dist/services/transactions/tx-transfer.d.ts +2 -1
  35. package/dist/services/transactions/tx-transfer.js +14 -53
  36. package/dist/services/transactions/tx-transfer.js.map +1 -1
  37. package/dist/services/transactions/tx-unshield.d.ts +3 -1
  38. package/dist/services/transactions/tx-unshield.js +37 -116
  39. package/dist/services/transactions/tx-unshield.js.map +1 -1
  40. package/package.json +7 -6
@@ -1,3 +1,4 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
2
3
  import { ArtifactName } from 'dop-sharedmodel-v5';
3
4
  export declare const validateArtifactDownload: (data: Uint8Array | Buffer | string, artifactName: ArtifactName, artifactVariantString: string) => Promise<boolean>;
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
2
3
  type GetArtifact = (path: string) => Promise<string | Buffer | null>;
3
4
  type StoreArtifact = (dir: string, path: string, item: string | Uint8Array) => Promise<void>;
4
5
  type ArtifactExists = (path: string) => Promise<boolean>;
@@ -15,8 +15,8 @@ const IPFS_GATEWAY = 'https://purple-abstract-dingo-439.mypinata.cloud';
15
15
  // const MASTER_IPFS_HASH_ARTIFACTS = 'QmNqY8bHBEHgj96GSU1eyMtyZo1z5yTaM7yjQ7F1TbKE1W';
16
16
  // const MASTER_IPFS_HASH_ARTIFACTS = 'QmX6t13wppf5pUobRpmwwnyGeSHux7ecTuoQXer376hips';
17
17
  // const MASTER_IPFS_HASH_ARTIFACTS = 'Qmba1JgVSQDZKUWUi6DUs9ekqo2Ta1hN3moxC2Na1eAJyJ';
18
- // const MASTER_IPFS_HASH_ARTIFACTS = 'QmNT44msrqeVj1WHFkWxi9Vg6KRoG573AVDBEsKmrSDyb5';
19
- const MASTER_IPFS_HASH_ARTIFACTS = 'QmPKbQmGt17uic8xJLdA4wXSAZwSM4Aeg6dgqLohWrqB2Q';
18
+ // const MASTER_IPFS_HASH_ARTIFACTS = 'QmNT44msrqeVj1WHFkWxi9Vg6KRoG573AVDBEsKmrSDyb5'; // for main
19
+ const MASTER_IPFS_HASH_ARTIFACTS = 'bafybeifstdbysurwqmhbglbvf2bxnoeaiods74cyicygeuzhla3owj4zzi'; // new for polygon transparency
20
20
  // https://purple-abstract-dingo-439.mypinata.cloud/ipfs/Qmba1JgVSQDZKUWUi6DUs9ekqo2Ta1hN3moxC2Na1eAJyJ/
21
21
  // return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/QmPyk6hsbphY9hqBYzn1CPumAToLvSJ3zeQQVjZmicT6wQ/${artifactFilepath}`
22
22
  // QmRJrPzD2hUmsWr7fHLsrQAJZm5J1xwji1vE2u4VFgmQcx
@@ -25,7 +25,7 @@ const artifactDownloadsDir = (artifactVariantString) => {
25
25
  };
26
26
  exports.artifactDownloadsDir = artifactDownloadsDir;
27
27
  const getArtifactVariantString = (nullifiers, commitments) => {
28
- return `${nullifiers}x0`;
28
+ return `${nullifiers}x${commitments}`;
29
29
  };
30
30
  exports.getArtifactVariantString = getArtifactVariantString;
31
31
  const artifactDownloadsPath = (artifactName, artifactVariantString) => {
@@ -71,13 +71,8 @@ const getArtifactIPFSFilepath = (artifactName, artifactVariantString) => {
71
71
  const getArtifactUrl = (artifactName, artifactVariantString) => {
72
72
  const artifactFilepath = getArtifactIPFSFilepath(artifactName, artifactVariantString);
73
73
  return `${IPFS_GATEWAY}/ipfs/${MASTER_IPFS_HASH_ARTIFACTS}/${artifactFilepath}`;
74
- // Qma1ATexs5LxAyjN52FFFxGwxgp5swB9GAt54kyCt39Xgk
75
- // return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/QmNT44msrqeVj1WHFkWxi9Vg6KRoG573AVDBEsKmrSDyb5/${artifactFilepath}`
76
- // https://gateway.pinata.cloud/ipfs/QmVrZ9TtZt4ZNuV4RgDqt7M7ZrsZnDUEp8QzwjLLXCp6ye/
77
- // return `https://gateway.pinata.cloud/ipfs/QmVrZ9TtZt4ZNuV4RgDqt7M7ZrsZnDUEp8QzwjLLXCp6ye/${artifactFilepath}`
78
- // return `https://ipfs.tizzew.com/ipfs/Qma11AJv58vSBSzE3fhUYEVxfJZCAjkD1ixLtMsGFgPUXp/${artifactFilepath}`
79
- // return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/QmeL38q7wK7W1nDajhS5zkZdqyrJ5HmiR477E3yrn6S8DJ/${artifactFilepath}`
80
- // return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/Qma1ATexs5LxAyjN52FFFxGwxgp5swB9GAt54kyCt39Xgk/${artifactFilepath}`
74
+ // return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/QmNT44msrqeVj1WHFkWxi9Vg6KRoG573AVDBEsKmrSDyb5/${artifactFilepath}` // main ipfs live
75
+ // return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/QmeL38q7wK7W1nDajhS5zkZdqyrJ5HmiR477E3yrn6S8DJ/${artifactFilepath}` // selective privacy ipfs
81
76
  };
82
77
  exports.getArtifactUrl = getArtifactUrl;
83
78
  //# sourceMappingURL=artifact-util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"artifact-util.js","sourceRoot":"","sources":["../../../src/services/artifacts/artifact-util.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n ArtifactName,\n ArtifactMapping,\n} from 'dop-sharedmodel-v5';\nimport brotliDecompress from 'brotli/decompress';\n\n// const IPFS_GATEWAY = 'https://ipfs-lb.com';\n// const IPFS_GATEWAY = 'https://ipfs-lb.com';\nconst IPFS_GATEWAY = 'https://purple-abstract-dingo-439.mypinata.cloud';\n\n// https://ipfs-lb.com/ipfs/QmPyk6hsbphY9hqBYzn1CPumAToLvSJ3zeQQVjZmicT6wQ/\n\n// const MASTER_IPFS_HASH_ARTIFACTS = 'QmeBrG7pii1qTqsn7rusvDiqXopHPjCT9gR4PsmW7wXqZq';\n// const MASTER_IPFS_HASH_ARTIFACTS = 'QmYsMzH1PkC8eQq8nZthZb4us6C9M2JYNjhBspUPHjpkdn';\n// const MASTER_IPFS_HASH_ARTIFACTS = 'QmNqY8bHBEHgj96GSU1eyMtyZo1z5yTaM7yjQ7F1TbKE1W';\n// const MASTER_IPFS_HASH_ARTIFACTS = 'QmX6t13wppf5pUobRpmwwnyGeSHux7ecTuoQXer376hips';\n// const MASTER_IPFS_HASH_ARTIFACTS = 'Qmba1JgVSQDZKUWUi6DUs9ekqo2Ta1hN3moxC2Na1eAJyJ';\n// const MASTER_IPFS_HASH_ARTIFACTS = 'QmNT44msrqeVj1WHFkWxi9Vg6KRoG573AVDBEsKmrSDyb5';\nconst MASTER_IPFS_HASH_ARTIFACTS = 'QmPKbQmGt17uic8xJLdA4wXSAZwSM4Aeg6dgqLohWrqB2Q';\n\n// https://purple-abstract-dingo-439.mypinata.cloud/ipfs/Qmba1JgVSQDZKUWUi6DUs9ekqo2Ta1hN3moxC2Na1eAJyJ/\n// return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/QmPyk6hsbphY9hqBYzn1CPumAToLvSJ3zeQQVjZmicT6wQ/${artifactFilepath}`\n\n// QmRJrPzD2hUmsWr7fHLsrQAJZm5J1xwji1vE2u4VFgmQcx\n\nexport const artifactDownloadsDir = (artifactVariantString: string) => {\n return `artifacts-v2.1/${artifactVariantString}`;\n};\n\nexport const getArtifactVariantString = (\n nullifiers: number,\n commitments: number,\n) => {\n return `${nullifiers}x0`;\n};\n\nexport const artifactDownloadsPath = (\n artifactName: ArtifactName,\n artifactVariantString: string,\n): string => {\n switch (artifactName) {\n case ArtifactName.WASM:\n return `${artifactDownloadsDir(artifactVariantString)}/wasm`;\n case ArtifactName.ZKEY:\n return `${artifactDownloadsDir(artifactVariantString)}/zkey`;\n case ArtifactName.VKEY:\n return `${artifactDownloadsDir(artifactVariantString)}/vkey.json`;\n case ArtifactName.DAT:\n return `${artifactDownloadsDir(artifactVariantString)}/dat`;\n }\n};\n\nexport const getArtifactDownloadsPaths = (\n artifactVariantString: string,\n): ArtifactMapping => {\n return {\n [ArtifactName.ZKEY]: artifactDownloadsPath(\n ArtifactName.ZKEY,\n artifactVariantString,\n ),\n [ArtifactName.WASM]: artifactDownloadsPath(\n ArtifactName.WASM,\n artifactVariantString,\n ),\n [ArtifactName.VKEY]: artifactDownloadsPath(\n ArtifactName.VKEY,\n artifactVariantString,\n ),\n [ArtifactName.DAT]: artifactDownloadsPath(\n ArtifactName.DAT,\n artifactVariantString,\n ),\n };\n};\n\nexport const decompressArtifact = (arrayBuffer: ArrayBuffer): Uint8Array => {\n const decompress = brotliDecompress as (input: Uint8Array) => Uint8Array;\n return decompress(Buffer.from(arrayBuffer));\n};\n\nconst getArtifactIPFSFilepath = (\n artifactName: ArtifactName,\n artifactVariantString: string,\n) => {\n switch (artifactName) {\n case ArtifactName.ZKEY:\n return `${artifactVariantString}/zkey.br`;\n case ArtifactName.WASM:\n return `prover/snarkjs/${artifactVariantString}.wasm.br`;\n case ArtifactName.VKEY:\n return `${artifactVariantString}/vkey.json`;\n case ArtifactName.DAT:\n return `prover/native/${artifactVariantString}.dat.br`;\n }\n throw new Error('Invalid artifact.');\n};\n\nexport const getArtifactUrl = (\n artifactName: ArtifactName,\n artifactVariantString: string,\n) => {\n const artifactFilepath = getArtifactIPFSFilepath(\n artifactName,\n artifactVariantString,\n );\n return `${IPFS_GATEWAY}/ipfs/${MASTER_IPFS_HASH_ARTIFACTS}/${artifactFilepath}`;\n // Qma1ATexs5LxAyjN52FFFxGwxgp5swB9GAt54kyCt39Xgk\n // return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/QmNT44msrqeVj1WHFkWxi9Vg6KRoG573AVDBEsKmrSDyb5/${artifactFilepath}`\n // https://gateway.pinata.cloud/ipfs/QmVrZ9TtZt4ZNuV4RgDqt7M7ZrsZnDUEp8QzwjLLXCp6ye/\n // return `https://gateway.pinata.cloud/ipfs/QmVrZ9TtZt4ZNuV4RgDqt7M7ZrsZnDUEp8QzwjLLXCp6ye/${artifactFilepath}`\n // return `https://ipfs.tizzew.com/ipfs/Qma11AJv58vSBSzE3fhUYEVxfJZCAjkD1ixLtMsGFgPUXp/${artifactFilepath}`\n // return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/QmeL38q7wK7W1nDajhS5zkZdqyrJ5HmiR477E3yrn6S8DJ/${artifactFilepath}`\n\n \n // return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/Qma1ATexs5LxAyjN52FFFxGwxgp5swB9GAt54kyCt39Xgk/${artifactFilepath}`\n};\n"]}
1
+ {"version":3,"file":"artifact-util.js","sourceRoot":"","sources":["../../../src/services/artifacts/artifact-util.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n ArtifactName,\n ArtifactMapping,\n} from 'dop-sharedmodel-v5';\nimport brotliDecompress from 'brotli/decompress';\n\n// const IPFS_GATEWAY = 'https://ipfs-lb.com';\n// const IPFS_GATEWAY = 'https://ipfs-lb.com';\nconst IPFS_GATEWAY = 'https://purple-abstract-dingo-439.mypinata.cloud';\n\n\n// https://ipfs-lb.com/ipfs/QmPyk6hsbphY9hqBYzn1CPumAToLvSJ3zeQQVjZmicT6wQ/\n\n// const MASTER_IPFS_HASH_ARTIFACTS = 'QmeBrG7pii1qTqsn7rusvDiqXopHPjCT9gR4PsmW7wXqZq';\n// const MASTER_IPFS_HASH_ARTIFACTS = 'QmYsMzH1PkC8eQq8nZthZb4us6C9M2JYNjhBspUPHjpkdn';\n// const MASTER_IPFS_HASH_ARTIFACTS = 'QmNqY8bHBEHgj96GSU1eyMtyZo1z5yTaM7yjQ7F1TbKE1W';\n// const MASTER_IPFS_HASH_ARTIFACTS = 'QmX6t13wppf5pUobRpmwwnyGeSHux7ecTuoQXer376hips';\n// const MASTER_IPFS_HASH_ARTIFACTS = 'Qmba1JgVSQDZKUWUi6DUs9ekqo2Ta1hN3moxC2Na1eAJyJ';\n// const MASTER_IPFS_HASH_ARTIFACTS = 'QmNT44msrqeVj1WHFkWxi9Vg6KRoG573AVDBEsKmrSDyb5'; // for main\nconst MASTER_IPFS_HASH_ARTIFACTS = 'bafybeifstdbysurwqmhbglbvf2bxnoeaiods74cyicygeuzhla3owj4zzi'; // new for polygon transparency\n\n\n\n// https://purple-abstract-dingo-439.mypinata.cloud/ipfs/Qmba1JgVSQDZKUWUi6DUs9ekqo2Ta1hN3moxC2Na1eAJyJ/\n// return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/QmPyk6hsbphY9hqBYzn1CPumAToLvSJ3zeQQVjZmicT6wQ/${artifactFilepath}`\n\n// QmRJrPzD2hUmsWr7fHLsrQAJZm5J1xwji1vE2u4VFgmQcx\n\nexport const artifactDownloadsDir = (artifactVariantString: string) => {\n return `artifacts-v2.1/${artifactVariantString}`;\n};\n\nexport const getArtifactVariantString = (\n nullifiers: number,\n commitments: number,\n) => {\n return `${nullifiers}x${commitments}`;\n};\n\nexport const artifactDownloadsPath = (\n artifactName: ArtifactName,\n artifactVariantString: string,\n): string => {\n switch (artifactName) {\n case ArtifactName.WASM:\n return `${artifactDownloadsDir(artifactVariantString)}/wasm`;\n case ArtifactName.ZKEY:\n return `${artifactDownloadsDir(artifactVariantString)}/zkey`;\n case ArtifactName.VKEY:\n return `${artifactDownloadsDir(artifactVariantString)}/vkey.json`;\n case ArtifactName.DAT:\n return `${artifactDownloadsDir(artifactVariantString)}/dat`;\n }\n};\n\nexport const getArtifactDownloadsPaths = (\n artifactVariantString: string,\n): ArtifactMapping => {\n return {\n [ArtifactName.ZKEY]: artifactDownloadsPath(\n ArtifactName.ZKEY,\n artifactVariantString,\n ),\n [ArtifactName.WASM]: artifactDownloadsPath(\n ArtifactName.WASM,\n artifactVariantString,\n ),\n [ArtifactName.VKEY]: artifactDownloadsPath(\n ArtifactName.VKEY,\n artifactVariantString,\n ),\n [ArtifactName.DAT]: artifactDownloadsPath(\n ArtifactName.DAT,\n artifactVariantString,\n ),\n };\n};\n\nexport const decompressArtifact = (arrayBuffer: ArrayBuffer): Uint8Array => {\n const decompress = brotliDecompress as (input: Uint8Array) => Uint8Array;\n return decompress(Buffer.from(arrayBuffer));\n};\n\nconst getArtifactIPFSFilepath = (\n artifactName: ArtifactName,\n artifactVariantString: string,\n) => {\n switch (artifactName) {\n case ArtifactName.ZKEY:\n return `${artifactVariantString}/zkey.br`;\n case ArtifactName.WASM:\n return `prover/snarkjs/${artifactVariantString}.wasm.br`;\n case ArtifactName.VKEY:\n return `${artifactVariantString}/vkey.json`;\n case ArtifactName.DAT:\n return `prover/native/${artifactVariantString}.dat.br`;\n }\n throw new Error('Invalid artifact.');\n};\n\nexport const getArtifactUrl = (\n artifactName: ArtifactName,\n artifactVariantString: string,\n) => {\n const artifactFilepath = getArtifactIPFSFilepath(\n artifactName,\n artifactVariantString,\n );\n return `${IPFS_GATEWAY}/ipfs/${MASTER_IPFS_HASH_ARTIFACTS}/${artifactFilepath}`;\n \n // return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/QmNT44msrqeVj1WHFkWxi9Vg6KRoG573AVDBEsKmrSDyb5/${artifactFilepath}` // main ipfs live\n // return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/QmeL38q7wK7W1nDajhS5zkZdqyrJ5HmiR477E3yrn6S8DJ/${artifactFilepath}` // selective privacy ipfs\n};\n"]}
@@ -1,69 +1,4 @@
1
1
  {
2
- "1x0": {
3
- "zkey": "f4a6dd3c59690d14d808b9bbe9a182b5a30df3828aadf28dfaaa129faecf2837",
4
- "wasm": "13624c30f0ff503d638ad5cf42813cf2c305921e0d4dc709923db532b6cc5ed9",
5
- "dat": "f5242d237381764dd5a20214846dd1c6a515f9eb7aa60a15e851c7ce681e2c62"
6
- },
7
- "2x0": {
8
- "zkey": "f4a6dd3c59690d14d808b9bbe9a182b5a30df3828aadf28dfaaa129faecf2837",
9
- "wasm": "13624c30f0ff503d638ad5cf42813cf2c305921e0d4dc709923db532b6cc5ed9",
10
- "dat": "f5242d237381764dd5a20214846dd1c6a515f9eb7aa60a15e851c7ce681e2c62"
11
- },
12
- "3x0": {
13
- "zkey": "f4a6dd3c59690d14d808b9bbe9a182b5a30df3828aadf28dfaaa129faecf2837",
14
- "wasm": "13624c30f0ff503d638ad5cf42813cf2c305921e0d4dc709923db532b6cc5ed9",
15
- "dat": "f5242d237381764dd5a20214846dd1c6a515f9eb7aa60a15e851c7ce681e2c62"
16
- },
17
- "4x0": {
18
- "zkey": "f4a6dd3c59690d14d808b9bbe9a182b5a30df3828aadf28dfaaa129faecf2837",
19
- "wasm": "13624c30f0ff503d638ad5cf42813cf2c305921e0d4dc709923db532b6cc5ed9",
20
- "dat": "f5242d237381764dd5a20214846dd1c6a515f9eb7aa60a15e851c7ce681e2c62"
21
- },
22
- "5x0": {
23
- "zkey": "f4a6dd3c59690d14d808b9bbe9a182b5a30df3828aadf28dfaaa129faecf2837",
24
- "wasm": "13624c30f0ff503d638ad5cf42813cf2c305921e0d4dc709923db532b6cc5ed9",
25
- "dat": "f5242d237381764dd5a20214846dd1c6a515f9eb7aa60a15e851c7ce681e2c62"
26
- },
27
- "6x0": {
28
- "zkey": "f4a6dd3c59690d14d808b9bbe9a182b5a30df3828aadf28dfaaa129faecf2837",
29
- "wasm": "13624c30f0ff503d638ad5cf42813cf2c305921e0d4dc709923db532b6cc5ed9",
30
- "dat": "f5242d237381764dd5a20214846dd1c6a515f9eb7aa60a15e851c7ce681e2c62"
31
- },
32
- "7x0": {
33
- "zkey": "f4a6dd3c59690d14d808b9bbe9a182b5a30df3828aadf28dfaaa129faecf2837",
34
- "wasm": "13624c30f0ff503d638ad5cf42813cf2c305921e0d4dc709923db532b6cc5ed9",
35
- "dat": "f5242d237381764dd5a20214846dd1c6a515f9eb7aa60a15e851c7ce681e2c62"
36
- },
37
- "8x0": {
38
- "zkey": "f4a6dd3c59690d14d808b9bbe9a182b5a30df3828aadf28dfaaa129faecf2837",
39
- "wasm": "13624c30f0ff503d638ad5cf42813cf2c305921e0d4dc709923db532b6cc5ed9",
40
- "dat": "f5242d237381764dd5a20214846dd1c6a515f9eb7aa60a15e851c7ce681e2c62"
41
- },
42
- "9x0": {
43
- "zkey": "f4a6dd3c59690d14d808b9bbe9a182b5a30df3828aadf28dfaaa129faecf2837",
44
- "wasm": "13624c30f0ff503d638ad5cf42813cf2c305921e0d4dc709923db532b6cc5ed9",
45
- "dat": "f5242d237381764dd5a20214846dd1c6a515f9eb7aa60a15e851c7ce681e2c62"
46
- },
47
- "10x0": {
48
- "zkey": "f4a6dd3c59690d14d808b9bbe9a182b5a30df3828aadf28dfaaa129faecf2837",
49
- "wasm": "13624c30f0ff503d638ad5cf42813cf2c305921e0d4dc709923db532b6cc5ed9",
50
- "dat": "f5242d237381764dd5a20214846dd1c6a515f9eb7aa60a15e851c7ce681e2c62"
51
- },
52
- "11x0": {
53
- "zkey": "f4a6dd3c59690d14d808b9bbe9a182b5a30df3828aadf28dfaaa129faecf2837",
54
- "wasm": "13624c30f0ff503d638ad5cf42813cf2c305921e0d4dc709923db532b6cc5ed9",
55
- "dat": "f5242d237381764dd5a20214846dd1c6a515f9eb7aa60a15e851c7ce681e2c62"
56
- },
57
- "12x0": {
58
- "zkey": "f4a6dd3c59690d14d808b9bbe9a182b5a30df3828aadf28dfaaa129faecf2837",
59
- "wasm": "13624c30f0ff503d638ad5cf42813cf2c305921e0d4dc709923db532b6cc5ed9",
60
- "dat": "f5242d237381764dd5a20214846dd1c6a515f9eb7aa60a15e851c7ce681e2c62"
61
- },
62
- "13x0": {
63
- "zkey": "f4a6dd3c59690d14d808b9bbe9a182b5a30df3828aadf28dfaaa129faecf2837",
64
- "wasm": "13624c30f0ff503d638ad5cf42813cf2c305921e0d4dc709923db532b6cc5ed9",
65
- "dat": "f5242d237381764dd5a20214846dd1c6a515f9eb7aa60a15e851c7ce681e2c62"
66
- },
67
2
  "10x1": {
68
3
  "zkey": "f4a6dd3c59690d14d808b9bbe9a182b5a30df3828aadf28dfaaa129faecf2837",
69
4
  "wasm": "13624c30f0ff503d638ad5cf42813cf2c305921e0d4dc709923db532b6cc5ed9",
@@ -1,10 +1,10 @@
1
- import { ArtifactGetter, PublicInputsBalance } from 'dop-engine-v5';
1
+ import { ArtifactGetter, PublicInputs } from 'dop-engine-v5';
2
2
  import { Artifact } from 'dop-sharedmodel-v5';
3
3
  import { ArtifactStore } from '../../artifacts/artifact-store';
4
4
  export declare const artifactCache: MapType<Artifact>;
5
5
  export declare const setArtifactStore: (store: ArtifactStore) => void;
6
6
  export declare const setUseNativeArtifacts: (useNative: boolean) => void;
7
- export declare const getArtifacts: (inputs: PublicInputsBalance) => Promise<Artifact>;
7
+ export declare const getArtifacts: (inputs: PublicInputs) => Promise<Artifact>;
8
8
  export declare const artifactGetterDownloadJustInTime: ArtifactGetter;
9
9
  export declare const overrideArtifact: (artifactVariant: string, artifact: Artifact) => void;
10
10
  export declare const clearArtifactCache: () => void;
@@ -17,9 +17,7 @@ const setUseNativeArtifacts = (useNative) => {
17
17
  exports.setUseNativeArtifacts = setUseNativeArtifacts;
18
18
  const getArtifacts = async (inputs) => {
19
19
  const nullifiers = inputs.nullifiers.length;
20
- // const nullifiers = 0;
21
- const commitments = 0;
22
- // const commitments = inputs.commitmentsOut.length;
20
+ const commitments = inputs.commitmentsOut.length;
23
21
  (0, dop_sharedmodel_v5_1.assertArtifactExists)(nullifiers, commitments);
24
22
  if (useNativeArtifacts) {
25
23
  if (commitments > 3) {
@@ -1 +1 @@
1
- {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../../src/services/dop/core/artifacts.ts"],"names":[],"mappings":";;;AACA,2DAI4B;AAC5B,6EAAyE;AAEzE,iEAAyE;AAEzE,IAAI,aAA4B,CAAC;AACjC,IAAI,kBAA2B,CAAC;AAEnB,QAAA,aAAa,GAAsB,EAAE,CAAC;AAE5C,MAAM,gBAAgB,GAAG,CAAC,KAAoB,EAAE,EAAE;IACvD,aAAa,GAAG,KAAK,CAAC;AACxB,CAAC,CAAC;AAFW,QAAA,gBAAgB,oBAE3B;AACK,MAAM,qBAAqB,GAAG,CAAC,SAAkB,EAAE,EAAE;IAC1D,kBAAkB,GAAG,SAAS,CAAC;AACjC,CAAC,CAAC;AAFW,QAAA,qBAAqB,yBAEhC;AAEK,MAAM,YAAY,GAAG,KAAK,EAAE,MAA2B,EAAqB,EAAE;IACnF,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC;IAC5C,wBAAwB;IACxB,MAAM,WAAW,GAAG,CAAC,CAAC;IACtB,oDAAoD;IAEpD,IAAA,yCAAoB,EAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAE9C,IAAI,kBAAkB,EAAE;QACtB,IAAI,WAAW,GAAG,CAAC,EAAE;YACnB,+DAA+D;YAC/D,MAAM,IAAI,KAAK,CACb,oGAAoG,UAAU,IAAI,WAAW,GAAG,CACjI,CAAC;SACH;KACF;IAED,MAAM,qBAAqB,GAAG,IAAA,wCAAwB,EACpD,UAAU,EACV,WAAW,CACZ,CAAC;IAEF,sCAAsC;IACtC,MAAM,cAAc,GAAG,qBAAa,CAAC,qBAAqB,CAAC,CAAC;IAC5D,IAAI,IAAA,8BAAS,EAAC,cAAc,CAAC,EAAE;QAC7B,OAAO,cAAc,CAAC;KACvB;IAED,MAAM,UAAU,GAAG,IAAI,wCAAkB,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;IAE7E,kDAAkD;IAClD,IAAI;QACF,MAAM,mBAAmB,GAAG,MAAM,UAAU,CAAC,sBAAsB,CACjE,qBAAqB,CACtB,CAAC;QACF,qBAAa,CAAC,qBAAqB,CAAC,GAAG,mBAAmB,CAAC;QAC3D,OAAO,mBAAmB,CAAC;KAC5B;IAAC,OAAO,GAAG,EAAE;QACZ,uCAAuC;KACxC;IAED,oCAAoC;IACpC,MAAM,UAAU,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;IAC1D,MAAM,mBAAmB,GAAG,MAAM,UAAU,CAAC,sBAAsB,CACjE,qBAAqB,CACtB,CAAC;IACF,qBAAa,CAAC,qBAAqB,CAAC,GAAG,mBAAmB,CAAC;IAC3D,OAAO,mBAAmB,CAAC;AAC7B,CAAC,CAAC;AAhDW,QAAA,YAAY,gBAgDvB;AAEW,QAAA,gCAAgC,GAAmB;IAC9D,oBAAoB,EAApB,yCAAoB;IACpB,YAAY,EAAZ,oBAAY;CACb,CAAC;AAEK,MAAM,gBAAgB,GAAG,CAC9B,eAAuB,EACvB,QAAkB,EAClB,EAAE;IACF,qBAAa,CAAC,eAAe,CAAC,GAAG,QAAQ,CAAC;AAC5C,CAAC,CAAC;AALW,QAAA,gBAAgB,oBAK3B;AAEK,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,KAAK,MAAM,GAAG,IAAI,qBAAa,EAAE;QAC/B,IAAI,IAAA,8BAAS,EAAC,qBAAa,CAAC,GAAG,CAAC,CAAC,EAAE;YACjC,OAAO,qBAAa,CAAC,GAAG,CAAC,CAAC;SAC3B;KACF;AACH,CAAC,CAAC;AANW,QAAA,kBAAkB,sBAM7B","sourcesContent":["import { ArtifactGetter, PublicInputs, PublicInputsBalance } from 'dop-engine-v5';\nimport {\n Artifact,\n assertArtifactExists,\n isDefined,\n} from 'dop-sharedmodel-v5';\nimport { ArtifactDownloader } from '../../artifacts/artifact-downloader';\nimport { ArtifactStore } from '../../artifacts/artifact-store';\nimport { getArtifactVariantString } from '../../artifacts/artifact-util';\n\nlet artifactStore: ArtifactStore;\nlet useNativeArtifacts: boolean;\n\nexport const artifactCache: MapType<Artifact> = {};\n\nexport const setArtifactStore = (store: ArtifactStore) => {\n artifactStore = store;\n};\nexport const setUseNativeArtifacts = (useNative: boolean) => {\n useNativeArtifacts = useNative;\n};\n\nexport const getArtifacts = async (inputs: PublicInputsBalance): Promise<Artifact> => {\n const nullifiers = inputs.nullifiers.length;\n // const nullifiers = 0;\n const commitments = 0;\n // const commitments = inputs.commitmentsOut.length;\n\n assertArtifactExists(nullifiers, commitments);\n\n if (useNativeArtifacts) {\n if (commitments > 3) {\n // native-prover-small only has INPUTS (1-10) and OUTPUTS (1-3)\n throw new Error(\n `Native artifacts (small) only support up to 3 circuit outputs. Cannot get artifacts for circuit: ${nullifiers}x${commitments}.`,\n );\n }\n }\n\n const artifactVariantString = getArtifactVariantString(\n nullifiers,\n commitments,\n );\n\n // Use artifact in cache if available.\n const cachedArtifact = artifactCache[artifactVariantString];\n if (isDefined(cachedArtifact)) {\n return cachedArtifact;\n }\n\n const downloader = new ArtifactDownloader(artifactStore, useNativeArtifacts);\n\n // Try to pull previously downloaded from storage.\n try {\n const downloadedArtifacts = await downloader.getDownloadedArtifacts(\n artifactVariantString,\n );\n artifactCache[artifactVariantString] = downloadedArtifacts;\n return downloadedArtifacts;\n } catch (err) {\n // No op. Artifacts not yet downloaded.\n }\n\n // Download anew. Throws upon error.\n await downloader.downloadArtifacts(artifactVariantString);\n const downloadedArtifacts = await downloader.getDownloadedArtifacts(\n artifactVariantString,\n );\n artifactCache[artifactVariantString] = downloadedArtifacts;\n return downloadedArtifacts;\n};\n\nexport const artifactGetterDownloadJustInTime: ArtifactGetter = {\n assertArtifactExists,\n getArtifacts,\n};\n\nexport const overrideArtifact = (\n artifactVariant: string,\n artifact: Artifact,\n) => {\n artifactCache[artifactVariant] = artifact;\n};\n\nexport const clearArtifactCache = () => {\n for (const key in artifactCache) {\n if (isDefined(artifactCache[key])) {\n delete artifactCache[key];\n }\n }\n};\n"]}
1
+ {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../../src/services/dop/core/artifacts.ts"],"names":[],"mappings":";;;AACA,2DAI4B;AAC5B,6EAAyE;AAEzE,iEAAyE;AAEzE,IAAI,aAA4B,CAAC;AACjC,IAAI,kBAA2B,CAAC;AAEnB,QAAA,aAAa,GAAsB,EAAE,CAAC;AAE5C,MAAM,gBAAgB,GAAG,CAAC,KAAoB,EAAE,EAAE;IACvD,aAAa,GAAG,KAAK,CAAC;AACxB,CAAC,CAAC;AAFW,QAAA,gBAAgB,oBAE3B;AACK,MAAM,qBAAqB,GAAG,CAAC,SAAkB,EAAE,EAAE;IAC1D,kBAAkB,GAAG,SAAS,CAAC;AACjC,CAAC,CAAC;AAFW,QAAA,qBAAqB,yBAEhC;AAEK,MAAM,YAAY,GAAG,KAAK,EAAE,MAAoB,EAAqB,EAAE;IAC5E,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC;IAC5C,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC;IACjD,IAAA,yCAAoB,EAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAE9C,IAAI,kBAAkB,EAAE;QACtB,IAAI,WAAW,GAAG,CAAC,EAAE;YACnB,+DAA+D;YAC/D,MAAM,IAAI,KAAK,CACb,oGAAoG,UAAU,IAAI,WAAW,GAAG,CACjI,CAAC;SACH;KACF;IAED,MAAM,qBAAqB,GAAG,IAAA,wCAAwB,EACpD,UAAU,EACV,WAAW,CACZ,CAAC;IAEF,sCAAsC;IACtC,MAAM,cAAc,GAAG,qBAAa,CAAC,qBAAqB,CAAC,CAAC;IAC5D,IAAI,IAAA,8BAAS,EAAC,cAAc,CAAC,EAAE;QAC7B,OAAO,cAAc,CAAC;KACvB;IAED,MAAM,UAAU,GAAG,IAAI,wCAAkB,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;IAE7E,kDAAkD;IAClD,IAAI;QACF,MAAM,mBAAmB,GAAG,MAAM,UAAU,CAAC,sBAAsB,CACjE,qBAAqB,CACtB,CAAC;QACF,qBAAa,CAAC,qBAAqB,CAAC,GAAG,mBAAmB,CAAC;QAC3D,OAAO,mBAAmB,CAAC;KAC5B;IAAC,OAAO,GAAG,EAAE;QACZ,uCAAuC;KACxC;IAED,oCAAoC;IACpC,MAAM,UAAU,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;IAC1D,MAAM,mBAAmB,GAAG,MAAM,UAAU,CAAC,sBAAsB,CACjE,qBAAqB,CACtB,CAAC;IACF,qBAAa,CAAC,qBAAqB,CAAC,GAAG,mBAAmB,CAAC;IAC3D,OAAO,mBAAmB,CAAC;AAC7B,CAAC,CAAC;AA7CW,QAAA,YAAY,gBA6CvB;AAEW,QAAA,gCAAgC,GAAmB;IAC9D,oBAAoB,EAApB,yCAAoB;IACpB,YAAY,EAAZ,oBAAY;CACb,CAAC;AAEK,MAAM,gBAAgB,GAAG,CAC9B,eAAuB,EACvB,QAAkB,EAClB,EAAE;IACF,qBAAa,CAAC,eAAe,CAAC,GAAG,QAAQ,CAAC;AAC5C,CAAC,CAAC;AALW,QAAA,gBAAgB,oBAK3B;AAEK,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,KAAK,MAAM,GAAG,IAAI,qBAAa,EAAE;QAC/B,IAAI,IAAA,8BAAS,EAAC,qBAAa,CAAC,GAAG,CAAC,CAAC,EAAE;YACjC,OAAO,qBAAa,CAAC,GAAG,CAAC,CAAC;SAC3B;KACF;AACH,CAAC,CAAC;AANW,QAAA,kBAAkB,sBAM7B","sourcesContent":["import { ArtifactGetter, PublicInputs } from 'dop-engine-v5';\nimport {\n Artifact,\n assertArtifactExists,\n isDefined,\n} from 'dop-sharedmodel-v5';\nimport { ArtifactDownloader } from '../../artifacts/artifact-downloader';\nimport { ArtifactStore } from '../../artifacts/artifact-store';\nimport { getArtifactVariantString } from '../../artifacts/artifact-util';\n\nlet artifactStore: ArtifactStore;\nlet useNativeArtifacts: boolean;\n\nexport const artifactCache: MapType<Artifact> = {};\n\nexport const setArtifactStore = (store: ArtifactStore) => {\n artifactStore = store;\n};\nexport const setUseNativeArtifacts = (useNative: boolean) => {\n useNativeArtifacts = useNative;\n};\n\nexport const getArtifacts = async (inputs: PublicInputs): Promise<Artifact> => {\n const nullifiers = inputs.nullifiers.length;\n const commitments = inputs.commitmentsOut.length;\n assertArtifactExists(nullifiers, commitments);\n\n if (useNativeArtifacts) {\n if (commitments > 3) {\n // native-prover-small only has INPUTS (1-10) and OUTPUTS (1-3)\n throw new Error(\n `Native artifacts (small) only support up to 3 circuit outputs. Cannot get artifacts for circuit: ${nullifiers}x${commitments}.`,\n );\n }\n }\n\n const artifactVariantString = getArtifactVariantString(\n nullifiers,\n commitments,\n );\n\n // Use artifact in cache if available.\n const cachedArtifact = artifactCache[artifactVariantString];\n if (isDefined(cachedArtifact)) {\n return cachedArtifact;\n }\n\n const downloader = new ArtifactDownloader(artifactStore, useNativeArtifacts);\n\n // Try to pull previously downloaded from storage.\n try {\n const downloadedArtifacts = await downloader.getDownloadedArtifacts(\n artifactVariantString,\n );\n artifactCache[artifactVariantString] = downloadedArtifacts;\n return downloadedArtifacts;\n } catch (err) {\n // No op. Artifacts not yet downloaded.\n }\n\n // Download anew. Throws upon error.\n await downloader.downloadArtifacts(artifactVariantString);\n const downloadedArtifacts = await downloader.getDownloadedArtifacts(\n artifactVariantString,\n );\n artifactCache[artifactVariantString] = downloadedArtifacts;\n return downloadedArtifacts;\n};\n\nexport const artifactGetterDownloadJustInTime: ArtifactGetter = {\n assertArtifactExists,\n getArtifacts,\n};\n\nexport const overrideArtifact = (\n artifactVariant: string,\n artifact: Artifact,\n) => {\n artifactCache[artifactVariant] = artifact;\n};\n\nexport const clearArtifactCache = () => {\n for (const key in artifactCache) {\n if (isDefined(artifactCache[key])) {\n delete artifactCache[key];\n }\n }\n};\n"]}
@@ -111,7 +111,7 @@ async function getMeshOptions() {
111
111
  const ethereumHandler = new graphql_1.default({
112
112
  name: 'ethereum',
113
113
  config: {
114
- endpoint: 'https://subgraph.satsuma-prod.com/323ce71d2cc0/usman--186639/dopmainnetethv2/api',
114
+ endpoint: 'https://api.studio.thegraph.com/query/75971/dopethstagingselectiveprivacy/version/latest',
115
115
  },
116
116
  baseDir,
117
117
  cache,
@@ -148,7 +148,7 @@ async function getMeshOptions() {
148
148
  const maticHandler = new graphql_1.default({
149
149
  name: 'matic',
150
150
  config: {
151
- endpoint: 'https://subgraph.satsuma-prod.com/323ce71d2cc0/usman--186639/dopmainnetpolygonv2/api',
151
+ endpoint: 'https://api.studio.thegraph.com/query/25822/dop-staging/version/latest',
152
152
  },
153
153
  baseDir,
154
154
  cache,
@@ -160,7 +160,7 @@ async function getMeshOptions() {
160
160
  const mumbaiHandler = new graphql_1.default({
161
161
  name: 'mumbai',
162
162
  config: {
163
- endpoint: 'https://subgraph.satsuma-prod.com/323ce71d2cc0/usman--186639/dopmainnetpolygonv2/api',
163
+ endpoint: 'https://api.studio.thegraph.com/query/25822/dop-staging/version/latest',
164
164
  },
165
165
  baseDir,
166
166
  cache,