@zk-email/sdk 0.0.86-1 → 0.0.86-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.
Files changed (45) hide show
  1. package/dist/assets/localProverWorker-DkBS78Vu.js +76 -0
  2. package/dist/assets/localProverWorker-DkBS78Vu.js.map +1 -0
  3. package/dist/ccip-C1_QoADM.js +2 -0
  4. package/dist/ccip-C1_QoADM.js.map +1 -0
  5. package/dist/ccip-DnkZqQmT.mjs +147 -0
  6. package/dist/ccip-DnkZqQmT.mjs.map +1 -0
  7. package/dist/index-CfUVEXW_.js +41 -0
  8. package/dist/index-CfUVEXW_.js.map +1 -0
  9. package/dist/index-DnjJIihA.mjs +13497 -0
  10. package/dist/index-DnjJIihA.mjs.map +1 -0
  11. package/dist/types/auth.d.ts +3 -0
  12. package/dist/types/blueprint.d.ts +129 -0
  13. package/dist/types/blueprintValidation.d.ts +82 -0
  14. package/dist/types/chain/index.d.ts +2 -0
  15. package/dist/types/index.d.ts +24 -0
  16. package/dist/types/localProverWorker.d.ts +2 -0
  17. package/dist/types/proof.d.ts +52 -0
  18. package/dist/types/prover.d.ts +27 -0
  19. package/dist/types/relayerUtils.d.ts +13 -0
  20. package/dist/types/types/auth.d.ts +16 -0
  21. package/dist/types/types/blueprint.d.ts +153 -0
  22. package/dist/types/types/index.d.ts +6 -0
  23. package/dist/types/types/proof.d.ts +56 -0
  24. package/dist/types/types/prover.d.ts +8 -0
  25. package/dist/types/types/sdk.d.ts +5 -0
  26. package/dist/types/types/utils.d.ts +8 -0
  27. package/dist/types/user.d.ts +5 -0
  28. package/dist/types/utils.d.ts +7 -0
  29. package/dist/zk-email-sdk.cjs.js +2 -0
  30. package/dist/zk-email-sdk.cjs.js.map +1 -0
  31. package/dist/zk-email-sdk.es.js +18 -0
  32. package/dist/zk-email-sdk.es.js.map +1 -0
  33. package/package.json +15 -12
  34. package/dist/index.d.mts +0 -553
  35. package/dist/index.d.ts +0 -553
  36. package/dist/index.js +0 -4
  37. package/dist/index.js.map +0 -1
  38. package/dist/index.mjs +0 -4
  39. package/dist/index.mjs.map +0 -1
  40. package/dist/localProverWorker.d.mts +0 -4
  41. package/dist/localProverWorker.d.ts +0 -4
  42. package/dist/localProverWorker.js +0 -2
  43. package/dist/localProverWorker.js.map +0 -1
  44. package/dist/localProverWorker.mjs +0 -2
  45. package/dist/localProverWorker.mjs.map +0 -1
@@ -1,4 +0,0 @@
1
- declare const uncompressGz: (arrayBuffer: any) => Promise<any>;
2
- declare function downloadFromUrl(fileUrl: any, targetFileName: any, compressed?: boolean): Promise<void>;
3
-
4
- export { downloadFromUrl, uncompressGz };
@@ -1,4 +0,0 @@
1
- declare const uncompressGz: (arrayBuffer: any) => Promise<any>;
2
- declare function downloadFromUrl(fileUrl: any, targetFileName: any, compressed?: boolean): Promise<void>;
3
-
4
- export { downloadFromUrl, uncompressGz };
@@ -1,2 +0,0 @@
1
- 'use strict';var n=require('localforage'),f=require('snarkjs'),l=require('pako');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var n__default=/*#__PURE__*/_interopDefault(n);var f__namespace=/*#__PURE__*/_interopNamespace(f);var l__default=/*#__PURE__*/_interopDefault(l);var c="circuit";async function i(s,e){for(let o=1;o<=e;o++){console.log(`download attempt ${o} for ${s}`);let r=await fetch(s,{method:"GET"});if(r.status===200)return r}throw new Error(`Error downloading ${s} after ${e} retries`)}var p=async s=>l__default.default.ungzip(s).buffer;async function u(s,e,o=!1){let t=await(await i(s,3)).arrayBuffer();if(!o)await n__default.default.setItem(e,t);else {let a=await p(t);await n__default.default.setItem(e,a),console.log("stored file in localforage",e);}console.log(`Storage of ${e} successful!`);}self.onmessage=async function(s){let{chunkedZkeyUrls:e,inputs:o,wasmUrl:r}=s.data;self.postMessage({type:"message",message:"Worker started"}),await Promise.all(e.map(async({suffix:t,url:a})=>{await u(a,`${c}.zkey${t}`,!0);})),self.postMessage({type:"message",message:"Download complete"});try{let{proof:t,publicSignals:a}=await f__namespace.groth16.fullProve(JSON.parse(o),r,`${c}.zkey`);await n__default.default.clear(),self.postMessage({type:"result",message:t}),self.close();}catch(t){self.postMessage({type:"error",error:t.message}),self.close();}};exports.downloadFromUrl=u;exports.uncompressGz=p;//# sourceMappingURL=localProverWorker.js.map
2
- //# sourceMappingURL=localProverWorker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/localProverWorker.ts"],"names":["circuitName","downloadWithRetries","link","downloadAttempts","i","response","uncompressGz","arrayBuffer","pako","downloadFromUrl","fileUrl","targetFileName","compressed","buff","localforage","fileUncompressed","event","chunkedZkeyUrls","inputs","wasmUrl","suffix","url","proof","publicSignals","f","error"],"mappings":"slBAKA,IAAMA,CAAAA,CAAc,SAEpB,CAAA,eAAeC,EAAoBC,CAAMC,CAAAA,CAAAA,CAAkB,CACzD,IAAA,IAASC,CAAI,CAAA,CAAA,CAAGA,CAAKD,EAAAA,CAAAA,CAAkBC,CAAK,EAAA,CAAA,CAC1C,OAAQ,CAAA,GAAA,CAAI,CAAoBA,iBAAAA,EAAAA,CAAC,QAAQF,CAAI,CAAA,CAAE,CAC/C,CAAA,IAAMG,CAAW,CAAA,MAAM,KAAMH,CAAAA,CAAAA,CAAM,CAAE,MAAA,CAAQ,KAAM,CAAC,CACpD,CAAA,GAAIG,EAAS,MAAW,GAAA,GAAA,CACtB,OAAOA,CAEX,CACA,MAAM,IAAI,KAAA,CAAM,CAAqBH,kBAAAA,EAAAA,CAAI,CAAUC,OAAAA,EAAAA,CAAgB,CAAU,QAAA,CAAA,CAC/E,CAIaG,IAAAA,CAAAA,CAAe,MAAOC,CAAAA,EAClBC,kBAAK,CAAA,MAAA,CAAOD,CAAW,CAClB,CAAA,OAOtB,eAAsBE,CAAAA,CAAgBC,CAASC,CAAAA,CAAAA,CAAgBC,EAAa,CAAO,CAAA,CAAA,CAGjF,IAAMC,CAAAA,CAAO,KAFI,CAAA,MAAMZ,CAAoBS,CAAAA,CAAAA,CAAS,CAAC,CAAA,EAEzB,WAAY,EAAA,CACxC,GAAI,CAACE,EACH,MAAME,kBAAAA,CAAY,OAAQH,CAAAA,CAAAA,CAAgBE,CAAI,CAAA,CAAA,KACzC,CAEL,IAAME,CAAmB,CAAA,MAAMT,CAAaO,CAAAA,CAAI,CAChD,CAAA,MAAMC,mBAAY,OAAQH,CAAAA,CAAAA,CAAgBI,CAAgB,CAAA,CAC1D,OAAQ,CAAA,GAAA,CAAI,4BAA8BJ,CAAAA,CAAc,EAC1D,CACA,OAAQ,CAAA,GAAA,CAAI,CAAcA,WAAAA,EAAAA,CAAc,cAAc,EACxD,CAEA,IAAK,CAAA,SAAA,CAAY,eAAgBK,CAAAA,CAAO,CACtC,GAAM,CAAE,eAAAC,CAAAA,CAAAA,CAAiB,MAAAC,CAAAA,CAAAA,CAAQ,QAAAC,CAAQ,CAAA,CAAIH,CAAM,CAAA,IAAA,CAEnD,IAAK,CAAA,WAAA,CAAY,CAAE,IAAA,CAAM,SAAW,CAAA,OAAA,CAAS,gBAAiB,CAAC,CAK/D,CAAA,MAAM,QAAQ,GACZC,CAAAA,CAAAA,CAAgB,GAAI,CAAA,MAAO,CAAE,MAAA,CAAAG,CAAQ,CAAA,GAAA,CAAAC,CAAI,CAAA,GAAM,CAC7C,MAAMZ,CAAgBY,CAAAA,CAAAA,CAAK,GAAGrB,CAAW,CAAA,KAAA,EAAQoB,CAAM,CAAA,CAAA,CAAI,CAAI,CAAA,EACjE,CAAC,CACH,CACA,CAAA,IAAA,CAAK,WAAY,CAAA,CAAE,IAAM,CAAA,SAAA,CAAW,QAAS,mBAAoB,CAAC,CAElE,CAAA,GAAI,CAEF,GAAM,CAAE,KAAAE,CAAAA,CAAAA,CAAO,aAAAC,CAAAA,CAAc,CAAI,CAAA,MAAcC,qBAAQ,SACrD,CAAA,IAAA,CAAK,KAAMN,CAAAA,CAAM,CACjBC,CAAAA,CAAAA,CACA,CAAGnB,EAAAA,CAAW,CAChB,KAAA,CAAA,CAAA,CAEA,MAAMc,kBAAAA,CAAY,KAAM,EAAA,CACxB,KAAK,WAAY,CAAA,CAAE,IAAM,CAAA,QAAA,CAAU,OAASQ,CAAAA,CAAM,CAAC,CAAA,CAMnD,IAAK,CAAA,KAAA,GACP,CAAA,MAASG,CAAO,CAAA,CACd,KAAK,WAAY,CAAA,CAAE,IAAM,CAAA,OAAA,CAAS,KAAOA,CAAAA,CAAAA,CAAM,OAAQ,CAAC,CACxD,CAAA,IAAA,CAAK,KAAM,GACb,CACF,CAAA","file":"localProverWorker.js","sourcesContent":["// @ts-nocheck\nimport localforage from \"localforage\";\nimport * as snarkjs from \"snarkjs\";\nimport pako from \"pako\";\n\nconst circuitName = \"circuit\";\n\nasync function downloadWithRetries(link, downloadAttempts) {\n for (let i = 1; i <= downloadAttempts; i++) {\n console.log(`download attempt ${i} for ${link}`);\n const response = await fetch(link, { method: \"GET\" });\n if (response.status === 200) {\n return response;\n }\n }\n throw new Error(`Error downloading ${link} after ${downloadAttempts} retries`);\n}\n\n// uncompresses single .gz file.\n// returns the contents as an ArrayBuffer\nexport const uncompressGz = async (arrayBuffer) => {\n const output = pako.ungzip(arrayBuffer);\n const buff = output.buffer;\n return buff;\n};\n\n// GET the compressed file from the remote server, then store it with localforage\n// Note that it must be stored as an uncompressed ArrayBuffer\n// and named such that filename===`${name}.zkey${a}` in order for it to be found by snarkjs.\nexport async function downloadFromUrl(fileUrl, targetFileName, compressed = false) {\n const fileResp = await downloadWithRetries(fileUrl, 3);\n\n const buff = await fileResp.arrayBuffer();\n if (!compressed) {\n await localforage.setItem(targetFileName, buff);\n } else {\n // uncompress the data\n const fileUncompressed = await uncompressGz(buff);\n await localforage.setItem(targetFileName, fileUncompressed);\n console.log(\"stored file in localforage\", targetFileName);\n }\n console.log(`Storage of ${targetFileName} successful!`);\n}\n\nself.onmessage = async function (event) {\n const { chunkedZkeyUrls, inputs, wasmUrl } = event.data;\n\n self.postMessage({ type: \"message\", message: \"Worker started\" });\n\n // const circuitName = \"circuit\";\n // const filesUrl = \"http://localhost:4000/download/\";\n\n await Promise.all(\n chunkedZkeyUrls.map(async ({ suffix, url }) => {\n await downloadFromUrl(url, `${circuitName}.zkey${suffix}`, true);\n })\n );\n self.postMessage({ type: \"message\", message: \"Download complete\" });\n\n try {\n // const { proof, publicSignals } = await generateProof(input, filesUrl, circuitName);\n const { proof, publicSignals } = await snarkjs.groth16.fullProve(\n JSON.parse(inputs),\n wasmUrl,\n `${circuitName}.zkey`\n );\n\n await localforage.clear();\n self.postMessage({ type: \"result\", message: proof });\n\n // const result = await verifyProof(proof, publicSignals, filesUrl, circuitName);\n\n // self.postMessage({ type: \"result\", result });\n\n self.close(); // Shut down the worker\n } catch (error) {\n self.postMessage({ type: \"error\", error: error.message });\n self.close(); // Shut down on error\n }\n};\n"]}
@@ -1,2 +0,0 @@
1
- import n from'localforage';import*as f from'snarkjs';import l from'pako';var c="circuit";async function i(s,e){for(let o=1;o<=e;o++){console.log(`download attempt ${o} for ${s}`);let r=await fetch(s,{method:"GET"});if(r.status===200)return r}throw new Error(`Error downloading ${s} after ${e} retries`)}var p=async s=>l.ungzip(s).buffer;async function u(s,e,o=!1){let t=await(await i(s,3)).arrayBuffer();if(!o)await n.setItem(e,t);else {let a=await p(t);await n.setItem(e,a),console.log("stored file in localforage",e);}console.log(`Storage of ${e} successful!`);}self.onmessage=async function(s){let{chunkedZkeyUrls:e,inputs:o,wasmUrl:r}=s.data;self.postMessage({type:"message",message:"Worker started"}),await Promise.all(e.map(async({suffix:t,url:a})=>{await u(a,`${c}.zkey${t}`,!0);})),self.postMessage({type:"message",message:"Download complete"});try{let{proof:t,publicSignals:a}=await f.groth16.fullProve(JSON.parse(o),r,`${c}.zkey`);await n.clear(),self.postMessage({type:"result",message:t}),self.close();}catch(t){self.postMessage({type:"error",error:t.message}),self.close();}};export{u as downloadFromUrl,p as uncompressGz};//# sourceMappingURL=localProverWorker.mjs.map
2
- //# sourceMappingURL=localProverWorker.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/localProverWorker.ts"],"names":["circuitName","downloadWithRetries","link","downloadAttempts","i","response","uncompressGz","arrayBuffer","pako","downloadFromUrl","fileUrl","targetFileName","compressed","buff","localforage","fileUncompressed","event","chunkedZkeyUrls","inputs","wasmUrl","suffix","url","proof","publicSignals","error"],"mappings":"yEAKA,IAAMA,CAAAA,CAAc,SAEpB,CAAA,eAAeC,EAAoBC,CAAMC,CAAAA,CAAAA,CAAkB,CACzD,IAAA,IAASC,CAAI,CAAA,CAAA,CAAGA,CAAKD,EAAAA,CAAAA,CAAkBC,CAAK,EAAA,CAAA,CAC1C,OAAQ,CAAA,GAAA,CAAI,CAAoBA,iBAAAA,EAAAA,CAAC,QAAQF,CAAI,CAAA,CAAE,CAC/C,CAAA,IAAMG,CAAW,CAAA,MAAM,KAAMH,CAAAA,CAAAA,CAAM,CAAE,MAAA,CAAQ,KAAM,CAAC,CACpD,CAAA,GAAIG,EAAS,MAAW,GAAA,GAAA,CACtB,OAAOA,CAEX,CACA,MAAM,IAAI,KAAA,CAAM,CAAqBH,kBAAAA,EAAAA,CAAI,CAAUC,OAAAA,EAAAA,CAAgB,CAAU,QAAA,CAAA,CAC/E,CAIaG,IAAAA,CAAAA,CAAe,MAAOC,CAAAA,EAClBC,CAAK,CAAA,MAAA,CAAOD,CAAW,CAClB,CAAA,OAOtB,eAAsBE,CAAAA,CAAgBC,CAASC,CAAAA,CAAAA,CAAgBC,EAAa,CAAO,CAAA,CAAA,CAGjF,IAAMC,CAAAA,CAAO,KAFI,CAAA,MAAMZ,CAAoBS,CAAAA,CAAAA,CAAS,CAAC,CAAA,EAEzB,WAAY,EAAA,CACxC,GAAI,CAACE,EACH,MAAME,CAAAA,CAAY,OAAQH,CAAAA,CAAAA,CAAgBE,CAAI,CAAA,CAAA,KACzC,CAEL,IAAME,CAAmB,CAAA,MAAMT,CAAaO,CAAAA,CAAI,CAChD,CAAA,MAAMC,EAAY,OAAQH,CAAAA,CAAAA,CAAgBI,CAAgB,CAAA,CAC1D,OAAQ,CAAA,GAAA,CAAI,4BAA8BJ,CAAAA,CAAc,EAC1D,CACA,OAAQ,CAAA,GAAA,CAAI,CAAcA,WAAAA,EAAAA,CAAc,cAAc,EACxD,CAEA,IAAK,CAAA,SAAA,CAAY,eAAgBK,CAAAA,CAAO,CACtC,GAAM,CAAE,eAAAC,CAAAA,CAAAA,CAAiB,MAAAC,CAAAA,CAAAA,CAAQ,QAAAC,CAAQ,CAAA,CAAIH,CAAM,CAAA,IAAA,CAEnD,IAAK,CAAA,WAAA,CAAY,CAAE,IAAA,CAAM,SAAW,CAAA,OAAA,CAAS,gBAAiB,CAAC,CAK/D,CAAA,MAAM,QAAQ,GACZC,CAAAA,CAAAA,CAAgB,GAAI,CAAA,MAAO,CAAE,MAAA,CAAAG,CAAQ,CAAA,GAAA,CAAAC,CAAI,CAAA,GAAM,CAC7C,MAAMZ,CAAgBY,CAAAA,CAAAA,CAAK,GAAGrB,CAAW,CAAA,KAAA,EAAQoB,CAAM,CAAA,CAAA,CAAI,CAAI,CAAA,EACjE,CAAC,CACH,CACA,CAAA,IAAA,CAAK,WAAY,CAAA,CAAE,IAAM,CAAA,SAAA,CAAW,QAAS,mBAAoB,CAAC,CAElE,CAAA,GAAI,CAEF,GAAM,CAAE,KAAAE,CAAAA,CAAAA,CAAO,aAAAC,CAAAA,CAAc,CAAI,CAAA,MAAc,UAAQ,SACrD,CAAA,IAAA,CAAK,KAAML,CAAAA,CAAM,CACjBC,CAAAA,CAAAA,CACA,CAAGnB,EAAAA,CAAW,CAChB,KAAA,CAAA,CAAA,CAEA,MAAMc,CAAAA,CAAY,KAAM,EAAA,CACxB,KAAK,WAAY,CAAA,CAAE,IAAM,CAAA,QAAA,CAAU,OAASQ,CAAAA,CAAM,CAAC,CAAA,CAMnD,IAAK,CAAA,KAAA,GACP,CAAA,MAASE,CAAO,CAAA,CACd,KAAK,WAAY,CAAA,CAAE,IAAM,CAAA,OAAA,CAAS,KAAOA,CAAAA,CAAAA,CAAM,OAAQ,CAAC,CACxD,CAAA,IAAA,CAAK,KAAM,GACb,CACF,CAAA","file":"localProverWorker.mjs","sourcesContent":["// @ts-nocheck\nimport localforage from \"localforage\";\nimport * as snarkjs from \"snarkjs\";\nimport pako from \"pako\";\n\nconst circuitName = \"circuit\";\n\nasync function downloadWithRetries(link, downloadAttempts) {\n for (let i = 1; i <= downloadAttempts; i++) {\n console.log(`download attempt ${i} for ${link}`);\n const response = await fetch(link, { method: \"GET\" });\n if (response.status === 200) {\n return response;\n }\n }\n throw new Error(`Error downloading ${link} after ${downloadAttempts} retries`);\n}\n\n// uncompresses single .gz file.\n// returns the contents as an ArrayBuffer\nexport const uncompressGz = async (arrayBuffer) => {\n const output = pako.ungzip(arrayBuffer);\n const buff = output.buffer;\n return buff;\n};\n\n// GET the compressed file from the remote server, then store it with localforage\n// Note that it must be stored as an uncompressed ArrayBuffer\n// and named such that filename===`${name}.zkey${a}` in order for it to be found by snarkjs.\nexport async function downloadFromUrl(fileUrl, targetFileName, compressed = false) {\n const fileResp = await downloadWithRetries(fileUrl, 3);\n\n const buff = await fileResp.arrayBuffer();\n if (!compressed) {\n await localforage.setItem(targetFileName, buff);\n } else {\n // uncompress the data\n const fileUncompressed = await uncompressGz(buff);\n await localforage.setItem(targetFileName, fileUncompressed);\n console.log(\"stored file in localforage\", targetFileName);\n }\n console.log(`Storage of ${targetFileName} successful!`);\n}\n\nself.onmessage = async function (event) {\n const { chunkedZkeyUrls, inputs, wasmUrl } = event.data;\n\n self.postMessage({ type: \"message\", message: \"Worker started\" });\n\n // const circuitName = \"circuit\";\n // const filesUrl = \"http://localhost:4000/download/\";\n\n await Promise.all(\n chunkedZkeyUrls.map(async ({ suffix, url }) => {\n await downloadFromUrl(url, `${circuitName}.zkey${suffix}`, true);\n })\n );\n self.postMessage({ type: \"message\", message: \"Download complete\" });\n\n try {\n // const { proof, publicSignals } = await generateProof(input, filesUrl, circuitName);\n const { proof, publicSignals } = await snarkjs.groth16.fullProve(\n JSON.parse(inputs),\n wasmUrl,\n `${circuitName}.zkey`\n );\n\n await localforage.clear();\n self.postMessage({ type: \"result\", message: proof });\n\n // const result = await verifyProof(proof, publicSignals, filesUrl, circuitName);\n\n // self.postMessage({ type: \"result\", result });\n\n self.close(); // Shut down the worker\n } catch (error) {\n self.postMessage({ type: \"error\", error: error.message });\n self.close(); // Shut down on error\n }\n};\n"]}