dop-wallet-v6 1.1.8 → 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.
- package/dist/services/artifacts/artifact-hash.d.ts +1 -0
- package/dist/services/artifacts/artifact-store.d.ts +1 -0
- package/dist/services/artifacts/artifact-util.js +7 -4
- package/dist/services/artifacts/artifact-util.js.map +1 -1
- package/dist/services/dop/core/engine.js +3 -0
- package/dist/services/dop/core/engine.js.map +1 -1
- package/dist/services/dop/quick-sync/graphql/index.js +5 -5
- package/dist/services/dop/quick-sync/graphql/index.js.map +1 -1
- package/dist/services/dop/wallets/wallets.d.ts +2 -0
- package/dist/services/dop/wallets/wallets.js +16 -1
- package/dist/services/dop/wallets/wallets.js.map +1 -1
- package/dist/services/transactions/tx-gas-details.js +13 -1
- package/dist/services/transactions/tx-gas-details.js.map +1 -1
- package/dist/services/transactions/tx-shield-base-token.d.ts +1 -1
- package/dist/services/transactions/tx-shield-base-token.js +8 -5
- package/dist/services/transactions/tx-shield-base-token.js.map +1 -1
- package/dist/services/transactions/tx-shield.js +4 -0
- package/dist/services/transactions/tx-shield.js.map +1 -1
- 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>;
|
|
@@ -6,15 +6,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.getArtifactUrl = exports.decompressArtifact = exports.getArtifactDownloadsPaths = exports.artifactDownloadsPath = exports.getArtifactVariantString = exports.artifactDownloadsDir = void 0;
|
|
7
7
|
const dop_sharedmodel_v5_1 = require("dop-sharedmodel-v5");
|
|
8
8
|
const decompress_1 = __importDefault(require("brotli/decompress"));
|
|
9
|
-
const IPFS_GATEWAY = 'https://ipfs-lb.com';
|
|
10
9
|
// const IPFS_GATEWAY = 'https://ipfs-lb.com';
|
|
10
|
+
// const IPFS_GATEWAY = 'https://ipfs-lb.com';
|
|
11
|
+
const IPFS_GATEWAY = 'https://purple-abstract-dingo-439.mypinata.cloud';
|
|
11
12
|
// https://ipfs-lb.com/ipfs/QmPyk6hsbphY9hqBYzn1CPumAToLvSJ3zeQQVjZmicT6wQ/
|
|
12
13
|
// const MASTER_IPFS_HASH_ARTIFACTS = 'QmeBrG7pii1qTqsn7rusvDiqXopHPjCT9gR4PsmW7wXqZq';
|
|
13
14
|
// const MASTER_IPFS_HASH_ARTIFACTS = 'QmYsMzH1PkC8eQq8nZthZb4us6C9M2JYNjhBspUPHjpkdn';
|
|
14
15
|
// const MASTER_IPFS_HASH_ARTIFACTS = 'QmNqY8bHBEHgj96GSU1eyMtyZo1z5yTaM7yjQ7F1TbKE1W';
|
|
15
16
|
// const MASTER_IPFS_HASH_ARTIFACTS = 'QmX6t13wppf5pUobRpmwwnyGeSHux7ecTuoQXer376hips';
|
|
16
17
|
// const MASTER_IPFS_HASH_ARTIFACTS = 'Qmba1JgVSQDZKUWUi6DUs9ekqo2Ta1hN3moxC2Na1eAJyJ';
|
|
17
|
-
const MASTER_IPFS_HASH_ARTIFACTS = '
|
|
18
|
+
// const MASTER_IPFS_HASH_ARTIFACTS = 'QmNT44msrqeVj1WHFkWxi9Vg6KRoG573AVDBEsKmrSDyb5'; // for main
|
|
19
|
+
const MASTER_IPFS_HASH_ARTIFACTS = 'bafybeifstdbysurwqmhbglbvf2bxnoeaiods74cyicygeuzhla3owj4zzi'; // new for polygon transparency
|
|
18
20
|
// https://purple-abstract-dingo-439.mypinata.cloud/ipfs/Qmba1JgVSQDZKUWUi6DUs9ekqo2Ta1hN3moxC2Na1eAJyJ/
|
|
19
21
|
// return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/QmPyk6hsbphY9hqBYzn1CPumAToLvSJ3zeQQVjZmicT6wQ/${artifactFilepath}`
|
|
20
22
|
// QmRJrPzD2hUmsWr7fHLsrQAJZm5J1xwji1vE2u4VFgmQcx
|
|
@@ -68,8 +70,9 @@ const getArtifactIPFSFilepath = (artifactName, artifactVariantString) => {
|
|
|
68
70
|
};
|
|
69
71
|
const getArtifactUrl = (artifactName, artifactVariantString) => {
|
|
70
72
|
const artifactFilepath = getArtifactIPFSFilepath(artifactName, artifactVariantString);
|
|
71
|
-
|
|
72
|
-
return `https://purple-abstract-dingo-439.mypinata.cloud/ipfs/
|
|
73
|
+
return `${IPFS_GATEWAY}/ipfs/${MASTER_IPFS_HASH_ARTIFACTS}/${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
|
|
73
76
|
};
|
|
74
77
|
exports.getArtifactUrl = getArtifactUrl;
|
|
75
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":";;;;;;AAAA,2DAG4B;AAC5B,mEAAiD;AAEjD,MAAM,YAAY,GAAG,
|
|
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"]}
|
|
@@ -97,4 +97,7 @@ const stopDopEngine = async () => {
|
|
|
97
97
|
engine = undefined;
|
|
98
98
|
};
|
|
99
99
|
exports.stopDopEngine = stopDopEngine;
|
|
100
|
+
// 0zk1qy8latj5k07p689yvv7syynynhsqya49fpc7rdxduejcu5kjmgz9pxus3llllllll7y42drr9smwxaxzfu0dhafyn55a9c33tkj2y4sjff7svrcs6djnums8cds
|
|
101
|
+
// 0zk1qy8latj5k07p689yvv7syynynhsqya49fpc7rdxduejcu5kjmgz9pxus3llllllll7y42drr9smwxaxzfu0dhafyn55a9c33tkj2y4sjff7svrcs6djnums8cds
|
|
102
|
+
// 0zk1qyzta4s56qmtuskjsz67rqfdzjudl4kj4rjcd5z69qvytag4hgcraxus3llllllll7dqm9dnmewju0f92s0qsxme2fd3tpvumywc28zszs797jha57jmwclluwl
|
|
100
103
|
//# sourceMappingURL=engine.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../../src/services/dop/core/engine.ts"],"names":[],"mappings":";;;AACA,iDAQuB;AACvB,2DAG4B;AAC5B,kDAAsE;AACtE,2CAIqB;AAErB,gDAA8D;AAC9D,qEAAgE;AAEhE,IAAI,MAA2B,CAAC;AAOzB,MAAM,SAAS,GAAG,GAAc,EAAE;IACvC,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;KACpD;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AALW,QAAA,SAAS,aAKpB;AAEK,MAAM,WAAW,GAAG,CAAC,EAAU,EAAkB,EAAE;IACxD,MAAM,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IACnC,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;KACzC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AANW,QAAA,WAAW,eAMtB;AAEK,MAAM,eAAe,GAAG,CAAC,EAAU,EAAa,EAAE;IACvD,MAAM,MAAM,GAAG,IAAA,mBAAW,EAAC,EAAE,CAAC,CAAC;IAC/B,IAAI,CAAC,CAAC,MAAM,YAAY,yBAAS,CAAC,EAAE;QAClC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;KACnD;IACD,OAAO,MAAM,CAAE;AACjB,CAAC,CAAC;AANW,QAAA,eAAe,mBAM1B;AAEK,MAAM,mBAAmB,GAAG,CAAC,EAAU,EAAa,EAAE;IAC3D,MAAM,MAAM,GAAG,IAAA,mBAAW,EAAC,EAAE,CAAC,CAAC;IAC/B,IAAI,CAAC,CAAC,MAAM,YAAY,8BAAc,CAAC,EAAE;QACvC,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;KACpD;IACD,OAAO,MAAmB,CAAC;AAC7B,CAAC,CAAC;AANW,QAAA,mBAAmB,uBAM9B;AAEF,MAAM,oBAAoB,GAAG,GAAmB,EAAE;IAChD,OAAO;QACL,GAAG,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,IAAA,oBAAW,EAAC,GAAG,CAAC;QACtC,KAAK,EAAE,CAAC,KAAY,EAAE,EAAE,CAAC,IAAA,yBAAgB,EAAC,KAAK,CAAC;KACjD,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,2BAA2B,GAAG,CACzC,wBAAuE,EACvE,EAAE;IACF,MAAM,MAAM,GAAG,IAAA,iBAAS,GAAE,CAAC;IAC3B,MAAM,CAAC,EAAE,CACP,2BAAW,CAAC,4BAA4B,EACxC,CAAC,EAAE,KAAK,EAAkC,EAAE,EAAE,CAC5C,wBAAwB,CAAC;QACvB,UAAU,EAAE,yCAAoB,CAAC,OAAO;QACxC,KAAK;QACL,QAAQ,EAAE,GAAG;KACd,CAAC,CACL,CAAC;IACF,MAAM,CAAC,EAAE,CACP,2BAAW,CAAC,2BAA2B,EACvC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAmC,EAAE,EAAE,CACvD,wBAAwB,CAAC;QACvB,UAAU,EAAE,yCAAoB,CAAC,OAAO;QACxC,KAAK;QACL,QAAQ;KACT,CAAC,CACL,CAAC;IACF,MAAM,CAAC,EAAE,CACP,2BAAW,CAAC,6BAA6B,EACzC,CAAC,EAAE,KAAK,EAAkC,EAAE,EAAE,CAC5C,wBAAwB,CAAC;QACvB,UAAU,EAAE,yCAAoB,CAAC,QAAQ;QACzC,KAAK;QACL,QAAQ,EAAE,GAAG;KACd,CAAC,CACL,CAAC;IACF,MAAM,CAAC,EAAE,CACP,2BAAW,CAAC,+BAA+B,EAC3C,CAAC,EAAE,KAAK,EAAkC,EAAE,EAAE,CAC5C,wBAAwB,CAAC;QACvB,UAAU,EAAE,yCAAoB,CAAC,UAAU;QAC3C,KAAK;QACL,QAAQ,EAAE,GAAG;KACd,CAAC,CACL,CAAC;AACJ,CAAC,CAAC;AAxCW,QAAA,2BAA2B,+BAwCtC;AAEF;;;;;;;;;GASG;AACI,MAAM,cAAc,GAAG,CAC5B,YAAoB,EACpB,EAAqB,EACrB,WAAoB,EACpB,aAA4B,EAC5B,kBAA2B,EAC3B,mBAA4B,EACtB,EAAE;IACR,IAAI,MAAM;QAAE,OAAO;IACnB,IAAI;QACF,MAAM,GAAG,IAAI,yBAAS,CACpB,YAAY,EACZ,EAAE,EACF,4CAAgC,EAChC,iCAAc,EACd,WAAW,CAAC,CAAC,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,SAAS,EAChD,mBAAmB,CACpB,CAAC;QACF,IAAA,4BAAgB,EAAC,aAAa,CAAC,CAAC;QAChC,IAAA,iCAAqB,EAAC,kBAAkB,CAAC,CAAC;KAC3C;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAA,8BAAsB,EAAC,sBAAc,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KACxD;AACH,CAAC,CAAC;AAvBW,QAAA,cAAc,kBAuBzB;AAEK,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;IACtC,MAAM,MAAM,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,GAAG,SAAS,CAAC;AACrB,CAAC,CAAC;AAHW,QAAA,aAAa,iBAGxB","sourcesContent":["import type { AbstractLevelDOWN } from 'abstract-leveldown';\nimport {\n DopEngine,\n DopWallet,\n ViewOnlyWallet,\n AbstractWallet,\n EngineEvent,\n MerkletreeHistoryScanEventData,\n MerkletreeHistoryScanUpdateData,\n} from 'dop-engine-v5';\nimport {\n MerkletreeScanUpdateEvent,\n MerkletreeScanStatus,\n} from 'dop-sharedmodel-v5';\nimport { sendErrorMessage, sendMessage } from '../../../utils/logger';\nimport {\n artifactGetterDownloadJustInTime,\n setArtifactStore,\n setUseNativeArtifacts,\n} from './artifacts';\nimport { ArtifactStore } from '../../artifacts/artifact-store';\nimport { reportAndSanitizeError } from '../../../utils/error';\nimport { quickSyncGraph } from '../quick-sync/quick-sync-graph';\n\nlet engine: Optional<DopEngine>;\n\nexport type EngineDebugger = {\n log: (msg: string) => void;\n error: (error: Error) => void;\n};\n\nexport const getEngine = (): DopEngine => {\n if (!engine) {\n throw new Error('DOP Engine not yet initialized.');\n }\n return engine;\n};\n\nexport const walletForID = (id: string): AbstractWallet => {\n const wallet = engine?.wallets[id];\n if (!wallet) {\n throw new Error('No DOP wallet for ID');\n }\n return wallet;\n};\n\nexport const fullWalletForID = (id: string): DopWallet => {\n const wallet = walletForID(id);\n if (!(wallet instanceof DopWallet)) {\n throw new Error('Can not load View-Only wallet.');\n }\n return wallet ;\n};\n\nexport const viewOnlyWalletForID = (id: string): DopWallet => {\n const wallet = walletForID(id);\n if (!(wallet instanceof ViewOnlyWallet)) {\n throw new Error('Can only load View-Only wallet.');\n }\n return wallet as DopWallet;\n};\n\nconst createEngineDebugger = (): EngineDebugger => {\n return {\n log: (msg: string) => sendMessage(msg),\n error: (error: Error) => sendErrorMessage(error),\n };\n};\n\nexport const setOnMerkletreeScanCallback = (\n onMerkletreeScanCallback: (scanData: MerkletreeScanUpdateEvent) => void,\n) => {\n const engine = getEngine();\n engine.on(\n EngineEvent.MerkletreeHistoryScanStarted,\n ({ chain }: MerkletreeHistoryScanEventData) =>\n onMerkletreeScanCallback({\n scanStatus: MerkletreeScanStatus.Started,\n chain,\n progress: 0.0,\n }),\n );\n engine.on(\n EngineEvent.MerkletreeHistoryScanUpdate,\n ({ chain, progress }: MerkletreeHistoryScanUpdateData) =>\n onMerkletreeScanCallback({\n scanStatus: MerkletreeScanStatus.Updated,\n chain,\n progress,\n }),\n );\n engine.on(\n EngineEvent.MerkletreeHistoryScanComplete,\n ({ chain }: MerkletreeHistoryScanEventData) =>\n onMerkletreeScanCallback({\n scanStatus: MerkletreeScanStatus.Complete,\n chain,\n progress: 1.0,\n }),\n );\n engine.on(\n EngineEvent.MerkletreeHistoryScanIncomplete,\n ({ chain }: MerkletreeHistoryScanEventData) =>\n onMerkletreeScanCallback({\n scanStatus: MerkletreeScanStatus.Incomplete,\n chain,\n progress: 1.0,\n }),\n );\n};\n\n/**\n *\n * @param walletSource - Name for your wallet implementation. Encrypted and viewable in private transaction history. Maximum of 16 characters, lowercase.\n * @param db - LevelDOWN compatible database for storing encrypted wallets.\n * @param shouldDebug - Whether to forward Engine debug logs to Logger.\n * @param artifactStore - Persistent store for downloading large artifact files. See Wallet SDK Developer Guide for platform implementations.\n * @param useNativeArtifacts - Whether to download native C++ or web-assembly artifacts. TRUE for mobile. FALSE for nodejs and browser.\n * @param skipMerkletreeScans - Whether to skip merkletree syncs and private balance scans. Only set to TRUE in shield-only applications that don't load private wallets or balances.\n * @returns\n */\nexport const startDopEngine = (\n walletSource: string,\n db: AbstractLevelDOWN,\n shouldDebug: boolean,\n artifactStore: ArtifactStore,\n useNativeArtifacts: boolean,\n skipMerkletreeScans: boolean,\n): void => {\n if (engine) return;\n try {\n engine = new DopEngine(\n walletSource,\n db,\n artifactGetterDownloadJustInTime,\n quickSyncGraph,\n shouldDebug ? createEngineDebugger() : undefined,\n skipMerkletreeScans,\n );\n setArtifactStore(artifactStore);\n setUseNativeArtifacts(useNativeArtifacts);\n } catch (err) {\n throw reportAndSanitizeError(startDopEngine.name, err);\n }\n};\n\nexport const stopDopEngine = async () => {\n await engine?.unload();\n engine = undefined;\n};\n"]}
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../../src/services/dop/core/engine.ts"],"names":[],"mappings":"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","sourcesContent":["import type { AbstractLevelDOWN } from 'abstract-leveldown';\nimport {\n DopEngine,\n DopWallet,\n ViewOnlyWallet,\n AbstractWallet,\n EngineEvent,\n MerkletreeHistoryScanEventData,\n MerkletreeHistoryScanUpdateData,\n} from 'dop-engine-v5';\nimport {\n MerkletreeScanUpdateEvent,\n MerkletreeScanStatus,\n} from 'dop-sharedmodel-v5';\nimport { sendErrorMessage, sendMessage } from '../../../utils/logger';\nimport {\n artifactGetterDownloadJustInTime,\n setArtifactStore,\n setUseNativeArtifacts,\n} from './artifacts';\nimport { ArtifactStore } from '../../artifacts/artifact-store';\nimport { reportAndSanitizeError } from '../../../utils/error';\nimport { quickSyncGraph } from '../quick-sync/quick-sync-graph';\n\nlet engine: Optional<DopEngine>;\n\nexport type EngineDebugger = {\n log: (msg: string) => void;\n error: (error: Error) => void;\n};\n\nexport const getEngine = (): DopEngine => {\n if (!engine) {\n throw new Error('DOP Engine not yet initialized.');\n }\n return engine;\n};\n\nexport const walletForID = (id: string): AbstractWallet => {\n const wallet = engine?.wallets[id];\n if (!wallet) {\n throw new Error('No DOP wallet for ID');\n }\n return wallet;\n};\n\nexport const fullWalletForID = (id: string): DopWallet => {\n const wallet = walletForID(id);\n if (!(wallet instanceof DopWallet)) {\n throw new Error('Can not load View-Only wallet.');\n }\n return wallet ;\n};\n\nexport const viewOnlyWalletForID = (id: string): DopWallet => {\n const wallet = walletForID(id);\n if (!(wallet instanceof ViewOnlyWallet)) {\n throw new Error('Can only load View-Only wallet.');\n }\n return wallet as DopWallet;\n};\n\nconst createEngineDebugger = (): EngineDebugger => {\n return {\n log: (msg: string) => sendMessage(msg),\n error: (error: Error) => sendErrorMessage(error),\n };\n};\n\nexport const setOnMerkletreeScanCallback = (\n onMerkletreeScanCallback: (scanData: MerkletreeScanUpdateEvent) => void,\n) => {\n const engine = getEngine();\n engine.on(\n EngineEvent.MerkletreeHistoryScanStarted,\n ({ chain }: MerkletreeHistoryScanEventData) =>\n onMerkletreeScanCallback({\n scanStatus: MerkletreeScanStatus.Started,\n chain,\n progress: 0.0,\n }),\n );\n engine.on(\n EngineEvent.MerkletreeHistoryScanUpdate,\n ({ chain, progress }: MerkletreeHistoryScanUpdateData) =>\n onMerkletreeScanCallback({\n scanStatus: MerkletreeScanStatus.Updated,\n chain,\n progress,\n }),\n );\n engine.on(\n EngineEvent.MerkletreeHistoryScanComplete,\n ({ chain }: MerkletreeHistoryScanEventData) =>\n onMerkletreeScanCallback({\n scanStatus: MerkletreeScanStatus.Complete,\n chain,\n progress: 1.0,\n }),\n );\n engine.on(\n EngineEvent.MerkletreeHistoryScanIncomplete,\n ({ chain }: MerkletreeHistoryScanEventData) =>\n onMerkletreeScanCallback({\n scanStatus: MerkletreeScanStatus.Incomplete,\n chain,\n progress: 1.0,\n }),\n );\n};\n\n/**\n *\n * @param walletSource - Name for your wallet implementation. Encrypted and viewable in private transaction history. Maximum of 16 characters, lowercase.\n * @param db - LevelDOWN compatible database for storing encrypted wallets.\n * @param shouldDebug - Whether to forward Engine debug logs to Logger.\n * @param artifactStore - Persistent store for downloading large artifact files. See Wallet SDK Developer Guide for platform implementations.\n * @param useNativeArtifacts - Whether to download native C++ or web-assembly artifacts. TRUE for mobile. FALSE for nodejs and browser.\n * @param skipMerkletreeScans - Whether to skip merkletree syncs and private balance scans. Only set to TRUE in shield-only applications that don't load private wallets or balances.\n * @returns\n */\nexport const startDopEngine = (\n walletSource: string,\n db: AbstractLevelDOWN,\n shouldDebug: boolean,\n artifactStore: ArtifactStore,\n useNativeArtifacts: boolean,\n skipMerkletreeScans: boolean,\n): void => {\n if (engine) return;\n try {\n engine = new DopEngine(\n walletSource,\n db,\n artifactGetterDownloadJustInTime,\n quickSyncGraph,\n shouldDebug ? createEngineDebugger() : undefined,\n skipMerkletreeScans,\n );\n setArtifactStore(artifactStore);\n setUseNativeArtifacts(useNativeArtifacts);\n } catch (err) {\n throw reportAndSanitizeError(startDopEngine.name, err);\n }\n};\n\nexport const stopDopEngine = async () => {\n await engine?.unload();\n engine = undefined;\n};\n\n\n// 0zk1qy8latj5k07p689yvv7syynynhsqya49fpc7rdxduejcu5kjmgz9pxus3llllllll7y42drr9smwxaxzfu0dhafyn55a9c33tkj2y4sjff7svrcs6djnums8cds\n// 0zk1qy8latj5k07p689yvv7syynynhsqya49fpc7rdxduejcu5kjmgz9pxus3llllllll7y42drr9smwxaxzfu0dhafyn55a9c33tkj2y4sjff7svrcs6djnums8cds\n// 0zk1qyzta4s56qmtuskjsz67rqfdzjudl4kj4rjcd5z69qvytag4hgcraxus3llllllll7dqm9dnmewju0f92s0qsxme2fd3tpvumywc28zszs797jha57jmwclluwl"]}
|
|
@@ -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://
|
|
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://
|
|
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://
|
|
163
|
+
endpoint: 'https://api.studio.thegraph.com/query/25822/dop-staging/version/latest',
|
|
164
164
|
},
|
|
165
165
|
baseDir,
|
|
166
166
|
cache,
|
|
@@ -196,7 +196,7 @@ async function getMeshOptions() {
|
|
|
196
196
|
const xlayerHandler = new graphql_1.default({
|
|
197
197
|
name: 'xlayer',
|
|
198
198
|
config: {
|
|
199
|
-
endpoint: 'https://api.studio.thegraph.com/query/75971/
|
|
199
|
+
endpoint: 'https://api.studio.thegraph.com/query/75971/xlayermainnetv2/version/latest',
|
|
200
200
|
},
|
|
201
201
|
baseDir,
|
|
202
202
|
cache,
|
|
@@ -208,7 +208,7 @@ async function getMeshOptions() {
|
|
|
208
208
|
const xlayerTestnetHandler = new graphql_1.default({
|
|
209
209
|
name: 'xlayer-testnet',
|
|
210
210
|
config: {
|
|
211
|
-
endpoint: 'https://api.studio.thegraph.com/query/75971/
|
|
211
|
+
endpoint: 'https://api.studio.thegraph.com/query/75971/xlayermainnetv2/version/latest',
|
|
212
212
|
},
|
|
213
213
|
baseDir,
|
|
214
214
|
cache,
|