diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index b972e9f7..59be4b1f 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -48,13 +48,17 @@ jobs: with: node-version: 18.x - - name: Build Client - working-directory: ./client - run: npm install && npm run build + - name: Set all packages to local and build + working-directory: ./ + run: npm run local --ci - - name: Install Harness dependencies - working-directory: ./harness - run: npm install + # - name: Build Client + # working-directory: ./client + # run: npm install && npm run build + + # - name: Install Harness dependencies + # working-directory: ./harness + # run: npm install # - name: Run Integration Tests (Goerli) # working-directory: ./harness diff --git a/circuit/js/package.json b/circuit/js/package.json index 8c36e7e7..f4622c09 100644 --- a/circuit/js/package.json +++ b/circuit/js/package.json @@ -1,6 +1,6 @@ { "name": "@axiom-crypto/circuit", - "version": "0.2.2-rc2.1", + "version": "0.2.2-rc2.2", "author": "Intrinsic Technologies", "license": "MIT", "description": "Client SDK to write custom queries for Axiom, the ZK Coprocessor for Ethereum.", @@ -24,10 +24,10 @@ "crypto" ], "dependencies": { - "@axiom-crypto/core": "2.3.0-rc2.2", - "@axiom-crypto/halo2-lib-js": "0.2.14-rc.0", - "@axiom-crypto/halo2-wasm": "0.2.11-rc.1", - "@axiom-crypto/tools": "0.3.36-rc2.1", + "@axiom-crypto/core": "2.3.0-rc2.3", + "@axiom-crypto/halo2-lib-js": "link:../../../halo2-browser/halo2-lib-js/dist", + "@axiom-crypto/halo2-wasm": "link:../../../halo2-browser/halo2-wasm/pkg", + "@axiom-crypto/tools": "0.3.36-rc2.3", "commander": "^11.1.0", "ethers": "^6.8.1", "viem": "^1.19.9" diff --git a/circuit/js/pnpm-lock.yaml b/circuit/js/pnpm-lock.yaml index 0878b0af..1ba351e9 100644 --- a/circuit/js/pnpm-lock.yaml +++ b/circuit/js/pnpm-lock.yaml @@ -6,17 +6,17 @@ settings: dependencies: '@axiom-crypto/core': - specifier: 2.3.0-rc2.2 - version: 2.3.0-rc2.2 + specifier: 2.3.0-rc2.3 + version: 2.3.0-rc2.3 '@axiom-crypto/halo2-lib-js': - specifier: 0.2.14-rc.0 - version: 0.2.14-rc.0 + specifier: link:../../../halo2-browser/halo2-lib-js/dist + version: link:../../../halo2-browser/halo2-lib-js/dist '@axiom-crypto/halo2-wasm': - specifier: 0.2.11-rc.1 - version: 0.2.11-rc.1 + specifier: link:../../../halo2-browser/halo2-wasm/pkg + version: link:../../../halo2-browser/halo2-wasm/pkg '@axiom-crypto/tools': - specifier: 0.3.36-rc2.1 - version: 0.3.36-rc2.1 + specifier: 0.3.36-rc2.3 + version: 0.3.36-rc2.3 commander: specifier: ^11.1.0 version: 11.1.0 @@ -70,12 +70,10 @@ packages: '@jridgewell/trace-mapping': 0.3.20 dev: true - /@axiom-crypto/core@2.3.0-rc2.2: - resolution: {integrity: sha512-Cl941locX9dLuwAY7rV8U2THQE/rWfJVu75WghzDUgoAZVq5KTI5VUr+DrkZ5PY6duIp7hWHwiRrJRozuf7RMg==} + /@axiom-crypto/core@2.3.0-rc2.3: + resolution: {integrity: sha512-qs5KFwdpYBjFQEHvyUXRiTTC9b5ptPblvDKZhEqlb+SgcIydoMekm7mniPThn4WKcxaBHKKYJKXWjhbMc+p71g==} dependencies: - '@axiom-crypto/halo2-lib-js': 0.2.10 - '@axiom-crypto/halo2-wasm': 0.2.7 - '@axiom-crypto/tools': 0.3.36-rc2.1 + '@axiom-crypto/tools': 0.3.36-rc2.3 axios: 1.6.3 bs58: 5.0.0 ethers: 6.9.0 @@ -86,38 +84,8 @@ packages: - utf-8-validate dev: false - /@axiom-crypto/halo2-lib-js@0.2.10: - resolution: {integrity: sha512-gvO9fqB/w10q0RRoZ+Q9utvcWcDldHqIl4Jf8t9luoI+vXipZlyT8NIStykOvd6g64guymCnMeAv2vvObvHxIA==} - dependencies: - '@axiom-crypto/halo2-wasm': 0.2.7 - ethers: 6.9.0 - prettier: 1.18.2 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - - /@axiom-crypto/halo2-lib-js@0.2.14-rc.0: - resolution: {integrity: sha512-CkWp7VywU5JxXw8Hah/LLIm2oxYJzCKcPxNUo8j3t9wY4tkKVOwpPv2Kr5KuW2oeKOZvNlHmkemNcO6vfItS9Q==} - dependencies: - '@axiom-crypto/halo2-wasm': 0.2.11-rc.1 - ethers: 6.9.0 - prettier: 1.18.2 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - - /@axiom-crypto/halo2-wasm@0.2.11-rc.1: - resolution: {integrity: sha512-30yASHZXIIGILRJHvOPDZ43gATCgGzkl9wvbK+on1lC3lnMO5iF3aOsqIV8bPkTsh9OhpxsBA32FUkfZ+vZNyA==} - dev: false - - /@axiom-crypto/halo2-wasm@0.2.7: - resolution: {integrity: sha512-pmgFCkCJUlFgh5NCLR59WpWIiBegNxBRAAlA2UxPMga1Pba02ynZgf6SW0tbQaezMiWUdTA9SfpeosovcNI6Yg==} - dev: false - - /@axiom-crypto/tools@0.3.36-rc2.1: - resolution: {integrity: sha512-XZ/kLX2jvReSu5/Mmu0ZAx2kmNGBr9AemrRCgA4D3rgYWk9JZqQmoYq2NFozHsMCt5XCc7niLUXGbEHjEG2PAg==} + /@axiom-crypto/tools@0.3.36-rc2.3: + resolution: {integrity: sha512-2oUtSkeyQCGwmTei9HdUUHiFdzV88SB3StVgev7kdfAWriZ9zuPdvbmr072FrXC7nNEsRnzKsJbmjQgYXrNKmg==} dependencies: ethers: 6.9.0 transitivePeerDependencies: @@ -2559,12 +2527,6 @@ packages: find-up: 4.1.0 dev: true - /prettier@1.18.2: - resolution: {integrity: sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw==} - engines: {node: '>=4'} - hasBin: true - dev: false - /pretty-format@29.7.0: resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} diff --git a/circuit/js/src/cliHandler/compile.ts b/circuit/js/src/cliHandler/compile.ts index 6969c813..efb538a8 100644 --- a/circuit/js/src/cliHandler/compile.ts +++ b/circuit/js/src/cliHandler/compile.ts @@ -1,6 +1,6 @@ import path from 'path'; import { AxiomBaseCircuit } from "../js"; -import { fileExists, getFunctionFromTs, getProvider, readJsonFromFile, saveJsonToFile } from "./utils"; +import { fileExists, getFunctionFromTs, getProvider, readInputs, readJsonFromFile, saveJsonToFile } from "./utils"; export const compile = async ( circuitPath: string, @@ -31,14 +31,7 @@ export const compile = async ( if (options.inputs !== undefined) { inputFile = options.inputs; } - let circuitInputs = f.inputs; - if (fileExists(inputFile)) { - circuitInputs = readJsonFromFile(inputFile); - } else { - if (circuitInputs === undefined) { - throw new Error("No inputs provided. Either export `inputs` from your circuit file or provide a path to a json file with inputs."); - } - } + const circuitInputs = readInputs(inputFile, f.inputs); try { const res = await circuit.compile(circuitInputs); const circuitFn = `const ${f.importName} = AXIOM_CLIENT_IMPORT\n${f.circuit.toString()}`; diff --git a/circuit/js/src/cliHandler/prove.ts b/circuit/js/src/cliHandler/prove.ts index f02429db..b31975bc 100644 --- a/circuit/js/src/cliHandler/prove.ts +++ b/circuit/js/src/cliHandler/prove.ts @@ -1,6 +1,6 @@ import path from 'path'; import { AxiomBaseCircuit } from "../js"; -import { fileExists, getFunctionFromTs, getProvider, readJsonFromFile, saveJsonToFile } from "./utils"; +import { fileExists, getFunctionFromTs, getProvider, readInputs, readJsonFromFile, saveJsonToFile } from "./utils"; export const prove = async ( circuitPath: string, @@ -25,6 +25,7 @@ export const prove = async ( if (options.compiled !== undefined) { compiledFile = options.compiled; } + console.log(`Reading compiled circuit JSON from: ${compiledFile}`); const compiledJson = readJsonFromFile(compiledFile); const circuit = new AxiomBaseCircuit({ f: f.circuit, @@ -38,25 +39,16 @@ export const prove = async ( if (options.inputs !== undefined) { inputFile = options.inputs; } - let circuitInputs = f.inputs; - if (fileExists(inputFile)) { - circuitInputs = readJsonFromFile(inputFile); - } else { - if (circuitInputs === undefined) { - throw new Error("No inputs provided. Either export `inputs` from your circuit file or provide a path to a json file with inputs."); - } - } + const circuitInputs = readInputs(inputFile, f.inputs); try { circuit.loadSaved(compiledJson); let computeQuery; - let computeResults; if (options.mock === true) { computeQuery = await circuit.mockProve(circuitInputs); - computeResults = circuit.getComputeResults(); } else { computeQuery = await circuit.run(circuitInputs); - computeResults = circuit.getComputeResults(); } + const computeResults = circuit.getComputeResults(); const dataQuery = circuit.getDataQuery(); const res = { sourceChainId: circuit.getChainId(), diff --git a/circuit/js/src/cliHandler/utils.ts b/circuit/js/src/cliHandler/utils.ts index b0ac40e6..c035fc87 100644 --- a/circuit/js/src/cliHandler/utils.ts +++ b/circuit/js/src/cliHandler/utils.ts @@ -75,6 +75,19 @@ export function getProvider(provider: string | undefined): string { return providerToUse; } +export function readInputs(inputFile: string, circuitInputs: any) { + if (fileExists(inputFile)) { + circuitInputs = readJsonFromFile(inputFile); + console.log(`Reading JSON inputs from: ${inputFile}`); + return circuitInputs + } + if (circuitInputs === undefined) { + throw new Error("No inputs provided. Either export `inputs` from your circuit file or provide a path to a json file with inputs."); + } + console.log(`Reading inputs from circuit file`); + return circuitInputs; +} + export function saveJsonToFile(json: any, filePath: string) { const fullPath = path.resolve(filePath); const filename = path.basename(fullPath); diff --git a/circuit/js/src/types.ts b/circuit/js/src/types.ts index f6bfaf2d..59548ac6 100644 --- a/circuit/js/src/types.ts +++ b/circuit/js/src/types.ts @@ -20,4 +20,4 @@ export interface AxiomV2CircuitMetadataParams { numRlcColumns: number; numFixed: number; maxOutputs: number; - }; \ No newline at end of file +}; \ No newline at end of file diff --git a/client/package.json b/client/package.json index 1e1bba19..1ffbd12b 100644 --- a/client/package.json +++ b/client/package.json @@ -1,6 +1,6 @@ { "name": "@axiom-crypto/client", - "version": "0.2.2-rc2.1", + "version": "0.2.2-rc2.2", "author": "Intrinsic Technologies", "license": "MIT", "description": "Client SDK to write custom queries for Axiom, the ZK Coprocessor for Ethereum.", @@ -24,8 +24,8 @@ "crypto" ], "dependencies": { - "@axiom-crypto/circuit": "0.2.2-rc2.1", - "@axiom-crypto/core": "2.3.0-rc2.2", + "@axiom-crypto/circuit": "link:../circuit/js/dist", + "@axiom-crypto/core": "2.3.0-rc2.3", "chalk": "^4.1.2", "commander": "^11.1.0", "ethers": "^6.8.1", diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 3bf57773..fd549e92 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -6,11 +6,11 @@ settings: dependencies: '@axiom-crypto/circuit': - specifier: 0.2.2-rc2.1 - version: 0.2.2-rc2.1(typescript@5.3.3) + specifier: link:../circuit/js/dist + version: link:../circuit/js/dist '@axiom-crypto/core': - specifier: 2.3.0-rc2.2 - version: 2.3.0-rc2.2 + specifier: 2.3.0-rc2.3 + version: 2.3.0-rc2.3 chalk: specifier: ^4.1.2 version: 4.1.2 @@ -70,30 +70,10 @@ packages: '@jridgewell/trace-mapping': 0.3.20 dev: true - /@axiom-crypto/circuit@0.2.2-rc2.1(typescript@5.3.3): - resolution: {integrity: sha512-U7j7mfy0ZO9Ky/sHEYi43HDAEBQV6+h1EZd9nB7KpfHmDm2eLOXolro8zznC9ot+vivJ9HyWzc+Dwp/MSXComw==} + /@axiom-crypto/core@2.3.0-rc2.3: + resolution: {integrity: sha512-qs5KFwdpYBjFQEHvyUXRiTTC9b5ptPblvDKZhEqlb+SgcIydoMekm7mniPThn4WKcxaBHKKYJKXWjhbMc+p71g==} dependencies: - '@axiom-crypto/core': 2.3.0-rc2.2 - '@axiom-crypto/halo2-lib-js': 0.2.14-rc.0 - '@axiom-crypto/halo2-wasm': 0.2.11-rc.1 - '@axiom-crypto/tools': 0.3.36-rc2.1 - commander: 11.1.0 - ethers: 6.9.2 - viem: 1.21.4(typescript@5.3.3) - transitivePeerDependencies: - - bufferutil - - debug - - typescript - - utf-8-validate - - zod - dev: false - - /@axiom-crypto/core@2.3.0-rc2.2: - resolution: {integrity: sha512-Cl941locX9dLuwAY7rV8U2THQE/rWfJVu75WghzDUgoAZVq5KTI5VUr+DrkZ5PY6duIp7hWHwiRrJRozuf7RMg==} - dependencies: - '@axiom-crypto/halo2-lib-js': 0.2.10 - '@axiom-crypto/halo2-wasm': 0.2.7 - '@axiom-crypto/tools': 0.3.36-rc2.1 + '@axiom-crypto/tools': 0.3.36-rc2.3 axios: 1.6.5 bs58: 5.0.0 ethers: 6.9.2 @@ -104,38 +84,8 @@ packages: - utf-8-validate dev: false - /@axiom-crypto/halo2-lib-js@0.2.10: - resolution: {integrity: sha512-gvO9fqB/w10q0RRoZ+Q9utvcWcDldHqIl4Jf8t9luoI+vXipZlyT8NIStykOvd6g64guymCnMeAv2vvObvHxIA==} - dependencies: - '@axiom-crypto/halo2-wasm': 0.2.7 - ethers: 6.9.2 - prettier: 1.18.2 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - - /@axiom-crypto/halo2-lib-js@0.2.14-rc.0: - resolution: {integrity: sha512-CkWp7VywU5JxXw8Hah/LLIm2oxYJzCKcPxNUo8j3t9wY4tkKVOwpPv2Kr5KuW2oeKOZvNlHmkemNcO6vfItS9Q==} - dependencies: - '@axiom-crypto/halo2-wasm': 0.2.11-rc.1 - ethers: 6.9.2 - prettier: 1.18.2 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - - /@axiom-crypto/halo2-wasm@0.2.11-rc.1: - resolution: {integrity: sha512-30yASHZXIIGILRJHvOPDZ43gATCgGzkl9wvbK+on1lC3lnMO5iF3aOsqIV8bPkTsh9OhpxsBA32FUkfZ+vZNyA==} - dev: false - - /@axiom-crypto/halo2-wasm@0.2.7: - resolution: {integrity: sha512-pmgFCkCJUlFgh5NCLR59WpWIiBegNxBRAAlA2UxPMga1Pba02ynZgf6SW0tbQaezMiWUdTA9SfpeosovcNI6Yg==} - dev: false - - /@axiom-crypto/tools@0.3.36-rc2.1: - resolution: {integrity: sha512-XZ/kLX2jvReSu5/Mmu0ZAx2kmNGBr9AemrRCgA4D3rgYWk9JZqQmoYq2NFozHsMCt5XCc7niLUXGbEHjEG2PAg==} + /@axiom-crypto/tools@0.3.36-rc2.3: + resolution: {integrity: sha512-2oUtSkeyQCGwmTei9HdUUHiFdzV88SB3StVgev7kdfAWriZ9zuPdvbmr072FrXC7nNEsRnzKsJbmjQgYXrNKmg==} dependencies: ethers: 6.9.2 transitivePeerDependencies: @@ -2583,12 +2533,6 @@ packages: find-up: 4.1.0 dev: true - /prettier@1.18.2: - resolution: {integrity: sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw==} - engines: {node: '>=4'} - hasBin: true - dev: false - /pretty-format@29.7.0: resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} diff --git a/client/src/cli/queryParams.ts b/client/src/cli/queryParams.ts index 308e5863..2e90e48b 100644 --- a/client/src/cli/queryParams.ts +++ b/client/src/cli/queryParams.ts @@ -31,7 +31,8 @@ export const queryParams = async ( if (options.proven !== undefined) { provenFile = options.proven; } - const outputsJson = readJsonFromFile(provenFile); + console.log(`Reading proven circuit JSON from: ${provenFile}`) + const provenJson = readJsonFromFile(provenFile); const provider = getProvider(options.provider); const axiom = new AxiomSdkCore({ providerUri: provider, @@ -42,8 +43,8 @@ export const queryParams = async ( try { let build = await buildSendQuery({ axiom, - dataQuery: outputsJson.dataQuery, - computeQuery: outputsJson.computeQuery, + dataQuery: provenJson.dataQuery, + computeQuery: provenJson.computeQuery, callback: { target: callbackTarget, extraData: options.callbackExtraData ?? "0x", diff --git a/client/src/index.ts b/client/src/index.ts index da349560..920bf753 100644 --- a/client/src/index.ts +++ b/client/src/index.ts @@ -1,3 +1,4 @@ export * from './axiom'; export * from "./sendQuery"; +export * from "./types"; export * from "@axiom-crypto/circuit"; \ No newline at end of file diff --git a/client/src/types.ts b/client/src/types.ts new file mode 100644 index 00000000..f5679c49 --- /dev/null +++ b/client/src/types.ts @@ -0,0 +1,7 @@ +export { + AxiomV2Callback, + AxiomV2ComputeQuery, + AxiomV2DataQuery, + AxiomV2QueryOptions, + AxiomV2FeeData, +} from "@axiom-crypto/core"; \ No newline at end of file diff --git a/client/src/version.ts b/client/src/version.ts index 242cb1c6..7bed009f 100644 --- a/client/src/version.ts +++ b/client/src/version.ts @@ -1,4 +1,4 @@ // This is an autogenerated file. It should match the version number in package.json. // Do not modify this file directly. -export const CLIENT_VERSION = "0.2.2-rc2.1"; \ No newline at end of file +export const CLIENT_VERSION = "0.2.2-rc2.2"; \ No newline at end of file diff --git a/harness/package.json b/harness/package.json index d5da8d2e..ed73c31a 100644 --- a/harness/package.json +++ b/harness/package.json @@ -1,6 +1,6 @@ { "name": "@axiom-crypto/harness", - "version": "0.2.2-rc2.1", + "version": "0.2.2-rc2.2", "author": "Intrinsic Technologies", "license": "MIT", "description": "Circuit harness for axiom-client", @@ -41,6 +41,6 @@ "typescript": "^5.3.2" }, "peerDependencies": { - "@axiom-crypto/client": "0.2.2-rc2.1" + "@axiom-crypto/client": "link:../client/dist" } } \ No newline at end of file diff --git a/harness/pnpm-lock.yaml b/harness/pnpm-lock.yaml index 57dd31a7..8535c2b3 100644 --- a/harness/pnpm-lock.yaml +++ b/harness/pnpm-lock.yaml @@ -6,8 +6,8 @@ settings: dependencies: '@axiom-crypto/client': - specifier: 0.2.2-rc2.1 - version: 0.2.2-rc2.1(typescript@5.3.3) + specifier: link:../client/dist + version: link:../client/dist commander: specifier: ^11.1.0 version: 11.1.0 @@ -61,98 +61,6 @@ packages: '@jridgewell/trace-mapping': 0.3.20 dev: true - /@axiom-crypto/circuit@0.2.2-rc2.1(typescript@5.3.3): - resolution: {integrity: sha512-U7j7mfy0ZO9Ky/sHEYi43HDAEBQV6+h1EZd9nB7KpfHmDm2eLOXolro8zznC9ot+vivJ9HyWzc+Dwp/MSXComw==} - dependencies: - '@axiom-crypto/core': 2.3.0-rc2.2 - '@axiom-crypto/halo2-lib-js': 0.2.14-rc.0 - '@axiom-crypto/halo2-wasm': 0.2.11-rc.1 - '@axiom-crypto/tools': 0.3.36-rc2.1 - commander: 11.1.0 - ethers: 6.9.2 - viem: 1.21.4(typescript@5.3.3) - transitivePeerDependencies: - - bufferutil - - debug - - typescript - - utf-8-validate - - zod - dev: false - - /@axiom-crypto/client@0.2.2-rc2.1(typescript@5.3.3): - resolution: {integrity: sha512-9EkO9goz55ZubRmFmzSrxQwsBhI5PaIlgVSXQj6QlcpIqPr28CkUQ+d2qVufvYKu5IwCN/SL7CpSQLOiVREBdw==} - hasBin: true - dependencies: - '@axiom-crypto/circuit': 0.2.2-rc2.1(typescript@5.3.3) - '@axiom-crypto/core': 2.3.0-rc2.2 - chalk: 4.1.2 - commander: 11.1.0 - ethers: 6.9.2 - prompts: 2.4.2 - viem: 1.21.4(typescript@5.3.3) - transitivePeerDependencies: - - bufferutil - - debug - - typescript - - utf-8-validate - - zod - dev: false - - /@axiom-crypto/core@2.3.0-rc2.2: - resolution: {integrity: sha512-Cl941locX9dLuwAY7rV8U2THQE/rWfJVu75WghzDUgoAZVq5KTI5VUr+DrkZ5PY6duIp7hWHwiRrJRozuf7RMg==} - dependencies: - '@axiom-crypto/halo2-lib-js': 0.2.10 - '@axiom-crypto/halo2-wasm': 0.2.7 - '@axiom-crypto/tools': 0.3.36-rc2.1 - axios: 1.6.5 - bs58: 5.0.0 - ethers: 6.9.2 - merkletreejs: 0.3.11 - transitivePeerDependencies: - - bufferutil - - debug - - utf-8-validate - dev: false - - /@axiom-crypto/halo2-lib-js@0.2.10: - resolution: {integrity: sha512-gvO9fqB/w10q0RRoZ+Q9utvcWcDldHqIl4Jf8t9luoI+vXipZlyT8NIStykOvd6g64guymCnMeAv2vvObvHxIA==} - dependencies: - '@axiom-crypto/halo2-wasm': 0.2.7 - ethers: 6.9.2 - prettier: 1.18.2 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - - /@axiom-crypto/halo2-lib-js@0.2.14-rc.0: - resolution: {integrity: sha512-CkWp7VywU5JxXw8Hah/LLIm2oxYJzCKcPxNUo8j3t9wY4tkKVOwpPv2Kr5KuW2oeKOZvNlHmkemNcO6vfItS9Q==} - dependencies: - '@axiom-crypto/halo2-wasm': 0.2.11-rc.1 - ethers: 6.9.2 - prettier: 1.18.2 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - - /@axiom-crypto/halo2-wasm@0.2.11-rc.1: - resolution: {integrity: sha512-30yASHZXIIGILRJHvOPDZ43gATCgGzkl9wvbK+on1lC3lnMO5iF3aOsqIV8bPkTsh9OhpxsBA32FUkfZ+vZNyA==} - dev: false - - /@axiom-crypto/halo2-wasm@0.2.7: - resolution: {integrity: sha512-pmgFCkCJUlFgh5NCLR59WpWIiBegNxBRAAlA2UxPMga1Pba02ynZgf6SW0tbQaezMiWUdTA9SfpeosovcNI6Yg==} - dev: false - - /@axiom-crypto/tools@0.3.36-rc2.1: - resolution: {integrity: sha512-XZ/kLX2jvReSu5/Mmu0ZAx2kmNGBr9AemrRCgA4D3rgYWk9JZqQmoYq2NFozHsMCt5XCc7niLUXGbEHjEG2PAg==} - dependencies: - ethers: 6.9.2 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - /@babel/code-frame@7.23.5: resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} engines: {node: '>=6.9.0'} @@ -689,21 +597,6 @@ packages: dev: true optional: true - /@ethereumjs/rlp@4.0.1: - resolution: {integrity: sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw==} - engines: {node: '>=14'} - hasBin: true - dev: false - - /@ethereumjs/util@8.1.0: - resolution: {integrity: sha512-zQ0IqbdX8FZ9aw11vP+dZkKDkS+kgIvQPHnSAXzP9pLu+Rfu3D3XEeLbicvoXJTYnhZiPmsZUxgdzXwNKxRPbA==} - engines: {node: '>=14'} - dependencies: - '@ethereumjs/rlp': 4.0.1 - ethereum-cryptography: 2.1.2 - micro-ftch: 0.3.1 - dev: false - /@istanbuljs/load-nyc-config@1.1.0: resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} engines: {node: '>=8'} @@ -964,23 +857,12 @@ packages: '@jridgewell/sourcemap-codec': 1.4.15 dev: true - /@noble/curves@1.1.0: - resolution: {integrity: sha512-091oBExgENk/kGj3AZmtBDMpxQPDtxQABR2B9lb1JbVTs6ytdzZNwvhxQ4MWasRNEzlbEH8jCWFCwhF/Obj5AA==} - dependencies: - '@noble/hashes': 1.3.1 - dev: false - /@noble/curves@1.2.0: resolution: {integrity: sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==} dependencies: '@noble/hashes': 1.3.2 dev: false - /@noble/hashes@1.3.1: - resolution: {integrity: sha512-EbqwksQwz9xDRGfDST86whPBgM65E0OH/pCgqW0GBVzO22bNE+NuIbeTb714+IfSjU3aRk47EUvXIb5bTsenKA==} - engines: {node: '>= 16'} - dev: false - /@noble/hashes@1.3.2: resolution: {integrity: sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==} engines: {node: '>= 16'} @@ -990,14 +872,6 @@ packages: resolution: {integrity: sha512-Brj9FiG2W1MRQSTB212YVPRrcbjkv48FoZi/u4l/zds/ieRrqsh7aUf6CLwkAq61oKXr/ZlTzlY66gLIj3TFTQ==} dev: false - /@scure/bip32@1.3.1: - resolution: {integrity: sha512-osvveYtyzdEVbt3OfwwXFr4P2iVBL5u1Q3q4ONBfDY/UpOuXmOlbgwc1xECEboY8wIays8Yt6onaWMUdUbfl0A==} - dependencies: - '@noble/curves': 1.1.0 - '@noble/hashes': 1.3.2 - '@scure/base': 1.1.5 - dev: false - /@scure/bip32@1.3.2: resolution: {integrity: sha512-N1ZhksgwD3OBlwTv3R6KFEcPojl/W4ElJOeCZdi+vuI5QmTFwLq3OFf2zd2ROpKvxFdgZ6hUpb0dx9bVNEwYCA==} dependencies: @@ -1146,6 +1020,7 @@ packages: engines: {node: '>=8'} dependencies: color-convert: 2.0.1 + dev: true /ansi-styles@5.2.0: resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} @@ -1166,20 +1041,6 @@ packages: sprintf-js: 1.0.3 dev: true - /asynckit@0.4.0: - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - dev: false - - /axios@1.6.5: - resolution: {integrity: sha512-Ii012v05KEVuUoFWmMW/UQv9aRIc3ZwkWDcM+h5Il8izZCtRVpDUfwpoFf7eOtajT3QiGR4yDUx7lPqHJULgbg==} - dependencies: - follow-redirects: 1.15.5 - form-data: 4.0.0 - proxy-from-env: 1.1.0 - transitivePeerDependencies: - - debug - dev: false - /babel-jest@29.7.0(@babel/core@7.23.7): resolution: {integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -1256,22 +1117,6 @@ packages: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} dev: true - /base-x@4.0.0: - resolution: {integrity: sha512-FuwxlW4H5kh37X/oW59pwTzzTKRzfrrQwhmyspRM7swOEZcHtDZSCt45U6oKgtuFE+WYPblePMVIPR4RZrh/hw==} - dev: false - - /bignumber.js@9.1.2: - resolution: {integrity: sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==} - dev: false - - /bn.js@4.11.6: - resolution: {integrity: sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==} - dev: false - - /bn.js@5.2.1: - resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==} - dev: false - /brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: @@ -1304,12 +1149,6 @@ packages: fast-json-stable-stringify: 2.1.0 dev: true - /bs58@5.0.0: - resolution: {integrity: sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ==} - dependencies: - base-x: 4.0.0 - dev: false - /bser@2.1.1: resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} dependencies: @@ -1320,10 +1159,6 @@ packages: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} dev: true - /buffer-reverse@1.0.1: - resolution: {integrity: sha512-M87YIUBsZ6N924W57vDwT/aOu8hw7ZgdByz6ijksLjmHJELBASmYTTlNHRgjE+pTsT9oJXGaDSgqqwfdHotDUg==} - dev: false - /callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} @@ -1358,6 +1193,7 @@ packages: dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 + dev: true /char-regex@1.0.2: resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} @@ -1402,6 +1238,7 @@ packages: engines: {node: '>=7.0.0'} dependencies: color-name: 1.1.4 + dev: true /color-name@1.1.3: resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} @@ -1409,13 +1246,7 @@ packages: /color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - - /combined-stream@1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} - engines: {node: '>= 0.8'} - dependencies: - delayed-stream: 1.0.0 - dev: false + dev: true /commander@11.1.0: resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==} @@ -1458,10 +1289,6 @@ packages: which: 2.0.2 dev: true - /crypto-js@4.2.0: - resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==} - dev: false - /debug@4.3.4: resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} engines: {node: '>=6.0'} @@ -1488,11 +1315,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /delayed-stream@1.0.0: - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} - engines: {node: '>=0.4.0'} - dev: false - /detect-newline@3.1.0: resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==} engines: {node: '>=8'} @@ -1588,21 +1410,6 @@ packages: hasBin: true dev: true - /ethereum-bloom-filters@1.0.10: - resolution: {integrity: sha512-rxJ5OFN3RwjQxDcFP2Z5+Q9ho4eIdEmSc2ht0fCu8Se9nbXjZ7/031uXoUYJ87KHCOdVeiUuwSnoS7hmYAGVHA==} - dependencies: - js-sha3: 0.8.0 - dev: false - - /ethereum-cryptography@2.1.2: - resolution: {integrity: sha512-Z5Ba0T0ImZ8fqXrJbpHcbpAvIswRte2wGNR/KePnu8GbbvgJ47lMxT/ZZPG6i9Jaht4azPDop4HaM00J0J59ug==} - dependencies: - '@noble/curves': 1.1.0 - '@noble/hashes': 1.3.1 - '@scure/bip32': 1.3.1 - '@scure/bip39': 1.2.1 - dev: false - /ethers@6.9.2: resolution: {integrity: sha512-YpkrtILnMQz5jSEsJQRTpduaGT/CXuLnUIuOYzHA0v/7c8IX91m2J48wSKjzGL5L9J/Us3tLoUdb+OwE3U+FFQ==} engines: {node: '>=14.0.0'} @@ -1619,14 +1426,6 @@ packages: - utf-8-validate dev: false - /ethjs-unit@0.1.6: - resolution: {integrity: sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw==} - engines: {node: '>=6.5.0', npm: '>=3'} - dependencies: - bn.js: 4.11.6 - number-to-bn: 1.7.0 - dev: false - /execa@5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} @@ -1683,25 +1482,6 @@ packages: path-exists: 4.0.0 dev: true - /follow-redirects@1.15.5: - resolution: {integrity: sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==} - engines: {node: '>=4.0'} - peerDependencies: - debug: '*' - peerDependenciesMeta: - debug: - optional: true - dev: false - - /form-data@4.0.0: - resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} - engines: {node: '>= 6'} - dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - mime-types: 2.1.35 - dev: false - /fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} dev: true @@ -1772,6 +1552,7 @@ packages: /has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} + dev: true /hasown@2.0.0: resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} @@ -1834,11 +1615,6 @@ packages: engines: {node: '>=6'} dev: true - /is-hex-prefixed@1.0.0: - resolution: {integrity: sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==} - engines: {node: '>=6.5.0', npm: '>=3'} - dev: false - /is-number@7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} @@ -2330,10 +2106,6 @@ packages: - ts-node dev: true - /js-sha3@0.8.0: - resolution: {integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==} - dev: false - /js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} dev: true @@ -2365,6 +2137,7 @@ packages: /kleur@3.0.3: resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} engines: {node: '>=6'} + dev: true /leven@3.1.0: resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} @@ -2420,21 +2193,6 @@ packages: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} dev: true - /merkletreejs@0.3.11: - resolution: {integrity: sha512-LJKTl4iVNTndhL+3Uz/tfkjD0klIWsHlUzgtuNnNrsf7bAlXR30m+xYB7lHr5Z/l6e/yAIsr26Dabx6Buo4VGQ==} - engines: {node: '>= 7.6.0'} - dependencies: - bignumber.js: 9.1.2 - buffer-reverse: 1.0.1 - crypto-js: 4.2.0 - treeify: 1.1.0 - web3-utils: 1.10.3 - dev: false - - /micro-ftch@0.3.1: - resolution: {integrity: sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==} - dev: false - /micromatch@4.0.5: resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} engines: {node: '>=8.6'} @@ -2443,18 +2201,6 @@ packages: picomatch: 2.3.1 dev: true - /mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} - dev: false - - /mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} - dependencies: - mime-db: 1.52.0 - dev: false - /mimic-fn@2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} @@ -2494,14 +2240,6 @@ packages: path-key: 3.1.1 dev: true - /number-to-bn@1.7.0: - resolution: {integrity: sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig==} - engines: {node: '>=6.5.0', npm: '>=3'} - dependencies: - bn.js: 4.11.6 - strip-hex-prefix: 1.0.0 - dev: false - /once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} dependencies: @@ -2591,12 +2329,6 @@ packages: find-up: 4.1.0 dev: true - /prettier@1.18.2: - resolution: {integrity: sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw==} - engines: {node: '>=4'} - hasBin: true - dev: false - /pretty-format@29.7.0: resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -2612,21 +2344,12 @@ packages: dependencies: kleur: 3.0.3 sisteransi: 1.0.5 - - /proxy-from-env@1.1.0: - resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} - dev: false + dev: true /pure-rand@6.0.4: resolution: {integrity: sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==} dev: true - /randombytes@2.1.0: - resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} - dependencies: - safe-buffer: 5.2.1 - dev: false - /react-is@18.2.0: resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} dev: true @@ -2666,10 +2389,6 @@ packages: supports-preserve-symlinks-flag: 1.0.0 dev: true - /safe-buffer@5.2.1: - resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - dev: false - /semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true @@ -2701,6 +2420,7 @@ packages: /sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + dev: true /slash@3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} @@ -2764,13 +2484,6 @@ packages: engines: {node: '>=6'} dev: true - /strip-hex-prefix@1.0.0: - resolution: {integrity: sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==} - engines: {node: '>=6.5.0', npm: '>=3'} - dependencies: - is-hex-prefixed: 1.0.0 - dev: false - /strip-json-comments@3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} @@ -2788,6 +2501,7 @@ packages: engines: {node: '>=8'} dependencies: has-flag: 4.0.0 + dev: true /supports-color@8.1.1: resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} @@ -2826,11 +2540,6 @@ packages: is-number: 7.0.0 dev: true - /treeify@1.1.0: - resolution: {integrity: sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==} - engines: {node: '>=0.6'} - dev: false - /ts-jest@29.1.1(@babel/core@7.23.7)(jest@29.7.0)(typescript@5.3.3): resolution: {integrity: sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -2910,10 +2619,6 @@ packages: picocolors: 1.0.0 dev: true - /utf8@3.0.0: - resolution: {integrity: sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==} - dev: false - /v8-to-istanbul@9.2.0: resolution: {integrity: sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==} engines: {node: '>=10.12.0'} @@ -2952,20 +2657,6 @@ packages: makeerror: 1.0.12 dev: true - /web3-utils@1.10.3: - resolution: {integrity: sha512-OqcUrEE16fDBbGoQtZXWdavsPzbGIDc5v3VrRTZ0XrIpefC/viZ1ZU9bGEemazyS0catk/3rkOOxpzTfY+XsyQ==} - engines: {node: '>=8.0.0'} - dependencies: - '@ethereumjs/util': 8.1.0 - bn.js: 5.2.1 - ethereum-bloom-filters: 1.0.10 - ethereum-cryptography: 2.1.2 - ethjs-unit: 0.1.6 - number-to-bn: 1.7.0 - randombytes: 2.1.0 - utf8: 3.0.0 - dev: false - /which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} diff --git a/harness/src/version.ts b/harness/src/version.ts index 2ce94347..5ad0f499 100644 --- a/harness/src/version.ts +++ b/harness/src/version.ts @@ -1,4 +1,4 @@ // This is an autogenerated file. It should match the version number in package.json. // Do not modify this file directly. -export const HARNESS_VERSION = "0.2.2-rc2.1"; \ No newline at end of file +export const HARNESS_VERSION = "0.2.2-rc2.2"; \ No newline at end of file diff --git a/package.json b/package.json index c9743379..86ea83dc 100644 --- a/package.json +++ b/package.json @@ -3,8 +3,9 @@ "version": "0.0.1", "description": "Axiom client SDK", "scripts": { - "versions": "node -e 'require(\"./scripts/versions.js\").versions()'", - "local": "node scripts/testLocal.js", + "remote": "node -e 'require(\"./scripts/setRemote.js\").setRemote()'", + "local": "node scripts/setLocal.js", + "versions": "node scripts/setVersions.js", "publish-all": "node scripts/publishAll.js" }, "keywords": [], diff --git a/react/package.json b/react/package.json index b70be321..d29d8b23 100644 --- a/react/package.json +++ b/react/package.json @@ -1,6 +1,6 @@ { "name": "@axiom-crypto/react", - "version": "0.2.2-rc2.0", + "version": "0.2.2-rc2.2", "description": "React components for Axiom SDK", "author": "Intrinsic Technologies", "license": "MIT", @@ -21,16 +21,15 @@ "directory": "dist" }, "dependencies": { - "@axiom-crypto/client": "0.2.2-rc2.0", "comlink": "^4.4.1" }, "peerDependencies": { - "@axiom-crypto/core": "2.3.0-rc2.2", + "@axiom-crypto/client": "link:../client/dist", "@types/react": ">=18.1.0", "react": ">=18.1.0", "react-dom": ">=18.1.0" }, "devDependencies": { - "typescript": "^5.2.2" + "typescript": ">=5.2.2" } -} +} \ No newline at end of file diff --git a/react/pnpm-lock.yaml b/react/pnpm-lock.yaml index eb608499..1f59506e 100644 --- a/react/pnpm-lock.yaml +++ b/react/pnpm-lock.yaml @@ -6,14 +6,11 @@ settings: dependencies: '@axiom-crypto/client': - specifier: 0.2.2-rc2.0 - version: 0.2.2-rc2.0(typescript@5.2.2) - '@axiom-crypto/core': - specifier: 2.3.0-rc2.2 - version: 2.3.0-rc2.2 + specifier: link:../client/dist + version: link:../client/dist '@types/react': specifier: '>=18.1.0' - version: 18.2.37 + version: 18.2.48 comlink: specifier: ^4.4.1 version: 4.4.1 @@ -26,393 +23,39 @@ dependencies: devDependencies: typescript: - specifier: ^5.2.2 - version: 5.2.2 + specifier: '>=5.2.2' + version: 5.3.3 packages: - /@adraffy/ens-normalize@1.10.0: - resolution: {integrity: sha512-nA9XHtlAkYfJxY7bce8DcN7eKxWWCWkU+1GR9d+U6MbNpfwQp8TI7vqOsBsMcHoT4mBu2kypKoSKnghEzOOq5Q==} + /@types/prop-types@15.7.11: + resolution: {integrity: sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==} dev: false - /@axiom-crypto/circuit@0.2.2-rc2.0(typescript@5.2.2): - resolution: {integrity: sha512-ed7f0B6Am+cVY98M109eVWbuP7mnf1EXnVmd+70WjHb2gmSYqF0R/uxX0IFnoyGS0EqY1mFsoJTU+U9ugC8/nQ==} + /@types/react@18.2.48: + resolution: {integrity: sha512-qboRCl6Ie70DQQG9hhNREz81jqC1cs9EVNcjQ1AU+jH6NFfSAhVVbrrY/+nSF+Bsk4AOwm9Qa61InvMCyV+H3w==} dependencies: - '@axiom-crypto/core': 2.3.0-rc2.2 - '@axiom-crypto/halo2-lib-js': 0.2.14-rc.0 - '@axiom-crypto/halo2-wasm': 0.2.11-rc.1 - '@axiom-crypto/tools': 0.3.36-rc2.1 - commander: 11.1.0 - ethers: 6.8.1 - viem: 1.19.9(typescript@5.2.2) - transitivePeerDependencies: - - bufferutil - - debug - - typescript - - utf-8-validate - - zod + '@types/prop-types': 15.7.11 + '@types/scheduler': 0.16.8 + csstype: 3.1.3 dev: false - /@axiom-crypto/client@0.2.2-rc2.0(typescript@5.2.2): - resolution: {integrity: sha512-O1EKaD/whs3rSHKx7JfOVKr8FVS4wLAJdrSzzmPgxmG7v5bcZyJ3dcZJMUIiKUaY7KpAnL2IB3UJbfOcC7HrHQ==} - hasBin: true - dependencies: - '@axiom-crypto/circuit': 0.2.2-rc2.0(typescript@5.2.2) - '@axiom-crypto/core': 2.3.0-rc2.2 - chalk: 4.1.2 - commander: 11.1.0 - ethers: 6.8.1 - prompts: 2.4.2 - viem: 1.19.9(typescript@5.2.2) - transitivePeerDependencies: - - bufferutil - - debug - - typescript - - utf-8-validate - - zod - dev: false - - /@axiom-crypto/core@2.3.0-rc2.2: - resolution: {integrity: sha512-Cl941locX9dLuwAY7rV8U2THQE/rWfJVu75WghzDUgoAZVq5KTI5VUr+DrkZ5PY6duIp7hWHwiRrJRozuf7RMg==} - dependencies: - '@axiom-crypto/halo2-lib-js': 0.2.10 - '@axiom-crypto/halo2-wasm': 0.2.7 - '@axiom-crypto/tools': 0.3.36-rc2.1 - axios: 1.6.1 - bs58: 5.0.0 - ethers: 6.8.1 - merkletreejs: 0.3.11 - transitivePeerDependencies: - - bufferutil - - debug - - utf-8-validate - dev: false - - /@axiom-crypto/halo2-lib-js@0.2.10: - resolution: {integrity: sha512-gvO9fqB/w10q0RRoZ+Q9utvcWcDldHqIl4Jf8t9luoI+vXipZlyT8NIStykOvd6g64guymCnMeAv2vvObvHxIA==} - dependencies: - '@axiom-crypto/halo2-wasm': 0.2.7 - ethers: 6.8.1 - prettier: 1.18.2 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - - /@axiom-crypto/halo2-lib-js@0.2.14-rc.0: - resolution: {integrity: sha512-CkWp7VywU5JxXw8Hah/LLIm2oxYJzCKcPxNUo8j3t9wY4tkKVOwpPv2Kr5KuW2oeKOZvNlHmkemNcO6vfItS9Q==} - dependencies: - '@axiom-crypto/halo2-wasm': 0.2.11-rc.1 - ethers: 6.8.1 - prettier: 1.18.2 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - - /@axiom-crypto/halo2-wasm@0.2.11-rc.1: - resolution: {integrity: sha512-30yASHZXIIGILRJHvOPDZ43gATCgGzkl9wvbK+on1lC3lnMO5iF3aOsqIV8bPkTsh9OhpxsBA32FUkfZ+vZNyA==} - dev: false - - /@axiom-crypto/halo2-wasm@0.2.7: - resolution: {integrity: sha512-pmgFCkCJUlFgh5NCLR59WpWIiBegNxBRAAlA2UxPMga1Pba02ynZgf6SW0tbQaezMiWUdTA9SfpeosovcNI6Yg==} - dev: false - - /@axiom-crypto/tools@0.3.36-rc2.1: - resolution: {integrity: sha512-XZ/kLX2jvReSu5/Mmu0ZAx2kmNGBr9AemrRCgA4D3rgYWk9JZqQmoYq2NFozHsMCt5XCc7niLUXGbEHjEG2PAg==} - dependencies: - ethers: 6.8.1 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - - /@ethereumjs/rlp@4.0.1: - resolution: {integrity: sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw==} - engines: {node: '>=14'} - hasBin: true - dev: false - - /@ethereumjs/util@8.1.0: - resolution: {integrity: sha512-zQ0IqbdX8FZ9aw11vP+dZkKDkS+kgIvQPHnSAXzP9pLu+Rfu3D3XEeLbicvoXJTYnhZiPmsZUxgdzXwNKxRPbA==} - engines: {node: '>=14'} - dependencies: - '@ethereumjs/rlp': 4.0.1 - ethereum-cryptography: 2.1.2 - micro-ftch: 0.3.1 - dev: false - - /@noble/curves@1.1.0: - resolution: {integrity: sha512-091oBExgENk/kGj3AZmtBDMpxQPDtxQABR2B9lb1JbVTs6ytdzZNwvhxQ4MWasRNEzlbEH8jCWFCwhF/Obj5AA==} - dependencies: - '@noble/hashes': 1.3.1 - dev: false - - /@noble/curves@1.2.0: - resolution: {integrity: sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==} - dependencies: - '@noble/hashes': 1.3.2 - dev: false - - /@noble/hashes@1.3.1: - resolution: {integrity: sha512-EbqwksQwz9xDRGfDST86whPBgM65E0OH/pCgqW0GBVzO22bNE+NuIbeTb714+IfSjU3aRk47EUvXIb5bTsenKA==} - engines: {node: '>= 16'} - dev: false - - /@noble/hashes@1.3.2: - resolution: {integrity: sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==} - engines: {node: '>= 16'} - dev: false - - /@scure/base@1.1.3: - resolution: {integrity: sha512-/+SgoRjLq7Xlf0CWuLHq2LUZeL/w65kfzAPG5NH9pcmBhs+nunQTn4gvdwgMTIXnt9b2C/1SeL2XiysZEyIC9Q==} - dev: false - - /@scure/bip32@1.3.1: - resolution: {integrity: sha512-osvveYtyzdEVbt3OfwwXFr4P2iVBL5u1Q3q4ONBfDY/UpOuXmOlbgwc1xECEboY8wIays8Yt6onaWMUdUbfl0A==} - dependencies: - '@noble/curves': 1.1.0 - '@noble/hashes': 1.3.2 - '@scure/base': 1.1.3 - dev: false - - /@scure/bip32@1.3.2: - resolution: {integrity: sha512-N1ZhksgwD3OBlwTv3R6KFEcPojl/W4ElJOeCZdi+vuI5QmTFwLq3OFf2zd2ROpKvxFdgZ6hUpb0dx9bVNEwYCA==} - dependencies: - '@noble/curves': 1.2.0 - '@noble/hashes': 1.3.2 - '@scure/base': 1.1.3 - dev: false - - /@scure/bip39@1.2.1: - resolution: {integrity: sha512-Z3/Fsz1yr904dduJD0NpiyRHhRYHdcnyh73FZWiV+/qhWi83wNJ3NWolYqCEN+ZWsUz2TWwajJggcRE9r1zUYg==} - dependencies: - '@noble/hashes': 1.3.2 - '@scure/base': 1.1.3 - dev: false - - /@types/node@18.15.13: - resolution: {integrity: sha512-N+0kuo9KgrUQ1Sn/ifDXsvg0TTleP7rIy4zOBGECxAljqvqfqpTfzx0Q1NUedOixRMBfe2Whhb056a42cWs26Q==} - dev: false - - /@types/prop-types@15.7.10: - resolution: {integrity: sha512-mxSnDQxPqsZxmeShFH+uwQ4kO4gcJcGahjjMFeLbKE95IAZiiZyiEepGZjtXJ7hN/yfu0bu9xN2ajcU0JcxX6A==} - dev: false - - /@types/react@18.2.37: - resolution: {integrity: sha512-RGAYMi2bhRgEXT3f4B92WTohopH6bIXw05FuGlmJEnv/omEn190+QYEIYxIAuIBdKgboYYdVved2p1AxZVQnaw==} - dependencies: - '@types/prop-types': 15.7.10 - '@types/scheduler': 0.16.6 - csstype: 3.1.2 - dev: false - - /@types/scheduler@0.16.6: - resolution: {integrity: sha512-Vlktnchmkylvc9SnwwwozTv04L/e1NykF5vgoQ0XTmI8DD+wxfjQuHuvHS3p0r2jz2x2ghPs2h1FVeDirIteWA==} - dev: false - - /abitype@0.9.8(typescript@5.2.2): - resolution: {integrity: sha512-puLifILdm+8sjyss4S+fsUN09obiT1g2YW6CtcQF+QDzxR0euzgEB29MZujC6zMk2a6SVmtttq1fc6+YFA7WYQ==} - peerDependencies: - typescript: '>=5.0.4' - zod: ^3 >=3.19.1 - peerDependenciesMeta: - typescript: - optional: true - zod: - optional: true - dependencies: - typescript: 5.2.2 - dev: false - - /aes-js@4.0.0-beta.5: - resolution: {integrity: sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q==} - dev: false - - /ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} - dependencies: - color-convert: 2.0.1 - dev: false - - /asynckit@0.4.0: - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - dev: false - - /axios@1.6.1: - resolution: {integrity: sha512-vfBmhDpKafglh0EldBEbVuoe7DyAavGSLWhuSm5ZSEKQnHhBf0xAAwybbNH1IkrJNGnS/VG4I5yxig1pCEXE4g==} - dependencies: - follow-redirects: 1.15.3 - form-data: 4.0.0 - proxy-from-env: 1.1.0 - transitivePeerDependencies: - - debug - dev: false - - /base-x@4.0.0: - resolution: {integrity: sha512-FuwxlW4H5kh37X/oW59pwTzzTKRzfrrQwhmyspRM7swOEZcHtDZSCt45U6oKgtuFE+WYPblePMVIPR4RZrh/hw==} - dev: false - - /bignumber.js@9.1.2: - resolution: {integrity: sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==} - dev: false - - /bn.js@4.11.6: - resolution: {integrity: sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==} - dev: false - - /bn.js@5.2.1: - resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==} - dev: false - - /bs58@5.0.0: - resolution: {integrity: sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ==} - dependencies: - base-x: 4.0.0 - dev: false - - /buffer-reverse@1.0.1: - resolution: {integrity: sha512-M87YIUBsZ6N924W57vDwT/aOu8hw7ZgdByz6ijksLjmHJELBASmYTTlNHRgjE+pTsT9oJXGaDSgqqwfdHotDUg==} - dev: false - - /chalk@4.1.2: - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - dev: false - - /color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} - engines: {node: '>=7.0.0'} - dependencies: - color-name: 1.1.4 - dev: false - - /color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - dev: false - - /combined-stream@1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} - engines: {node: '>= 0.8'} - dependencies: - delayed-stream: 1.0.0 + /@types/scheduler@0.16.8: + resolution: {integrity: sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==} dev: false /comlink@4.4.1: resolution: {integrity: sha512-+1dlx0aY5Jo1vHy/tSsIGpSkN4tS9rZSW8FIhG0JH/crs9wwweswIo/POr451r7bZww3hFbPAKnTpimzL/mm4Q==} dev: false - /commander@11.1.0: - resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==} - engines: {node: '>=16'} - dev: false - - /crypto-js@4.2.0: - resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==} - dev: false - - /csstype@3.1.2: - resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} - dev: false - - /delayed-stream@1.0.0: - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} - engines: {node: '>=0.4.0'} - dev: false - - /ethereum-bloom-filters@1.0.10: - resolution: {integrity: sha512-rxJ5OFN3RwjQxDcFP2Z5+Q9ho4eIdEmSc2ht0fCu8Se9nbXjZ7/031uXoUYJ87KHCOdVeiUuwSnoS7hmYAGVHA==} - dependencies: - js-sha3: 0.8.0 - dev: false - - /ethereum-cryptography@2.1.2: - resolution: {integrity: sha512-Z5Ba0T0ImZ8fqXrJbpHcbpAvIswRte2wGNR/KePnu8GbbvgJ47lMxT/ZZPG6i9Jaht4azPDop4HaM00J0J59ug==} - dependencies: - '@noble/curves': 1.1.0 - '@noble/hashes': 1.3.1 - '@scure/bip32': 1.3.1 - '@scure/bip39': 1.2.1 - dev: false - - /ethers@6.8.1: - resolution: {integrity: sha512-iEKm6zox5h1lDn6scuRWdIdFJUCGg3+/aQWu0F4K0GVyEZiktFkqrJbRjTn1FlYEPz7RKA707D6g5Kdk6j7Ljg==} - engines: {node: '>=14.0.0'} - dependencies: - '@adraffy/ens-normalize': 1.10.0 - '@noble/curves': 1.2.0 - '@noble/hashes': 1.3.2 - '@types/node': 18.15.13 - aes-js: 4.0.0-beta.5 - tslib: 2.4.0 - ws: 8.5.0 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - - /ethjs-unit@0.1.6: - resolution: {integrity: sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw==} - engines: {node: '>=6.5.0', npm: '>=3'} - dependencies: - bn.js: 4.11.6 - number-to-bn: 1.7.0 - dev: false - - /follow-redirects@1.15.3: - resolution: {integrity: sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==} - engines: {node: '>=4.0'} - peerDependencies: - debug: '*' - peerDependenciesMeta: - debug: - optional: true - dev: false - - /form-data@4.0.0: - resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} - engines: {node: '>= 6'} - dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - mime-types: 2.1.35 - dev: false - - /has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} - dev: false - - /is-hex-prefixed@1.0.0: - resolution: {integrity: sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==} - engines: {node: '>=6.5.0', npm: '>=3'} - dev: false - - /isows@1.0.3(ws@8.13.0): - resolution: {integrity: sha512-2cKei4vlmg2cxEjm3wVSqn8pcoRF/LX/wpifuuNquFO4SQmPwarClT+SUCA2lt+l581tTeZIPIZuIDo2jWN1fg==} - peerDependencies: - ws: '*' - dependencies: - ws: 8.13.0 - dev: false - - /js-sha3@0.8.0: - resolution: {integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==} + /csstype@3.1.3: + resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} dev: false /js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} dev: false - /kleur@3.0.3: - resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} - engines: {node: '>=6'} - dev: false - /loose-envify@1.4.0: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} hasBin: true @@ -420,65 +63,6 @@ packages: js-tokens: 4.0.0 dev: false - /merkletreejs@0.3.11: - resolution: {integrity: sha512-LJKTl4iVNTndhL+3Uz/tfkjD0klIWsHlUzgtuNnNrsf7bAlXR30m+xYB7lHr5Z/l6e/yAIsr26Dabx6Buo4VGQ==} - engines: {node: '>= 7.6.0'} - dependencies: - bignumber.js: 9.1.2 - buffer-reverse: 1.0.1 - crypto-js: 4.2.0 - treeify: 1.1.0 - web3-utils: 1.10.3 - dev: false - - /micro-ftch@0.3.1: - resolution: {integrity: sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==} - dev: false - - /mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} - dev: false - - /mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} - dependencies: - mime-db: 1.52.0 - dev: false - - /number-to-bn@1.7.0: - resolution: {integrity: sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig==} - engines: {node: '>=6.5.0', npm: '>=3'} - dependencies: - bn.js: 4.11.6 - strip-hex-prefix: 1.0.0 - dev: false - - /prettier@1.18.2: - resolution: {integrity: sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw==} - engines: {node: '>=4'} - hasBin: true - dev: false - - /prompts@2.4.2: - resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} - engines: {node: '>= 6'} - dependencies: - kleur: 3.0.3 - sisteransi: 1.0.5 - dev: false - - /proxy-from-env@1.1.0: - resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} - dev: false - - /randombytes@2.1.0: - resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} - dependencies: - safe-buffer: 5.2.1 - dev: false - /react-dom@18.2.0(react@18.2.0): resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} peerDependencies: @@ -496,113 +80,16 @@ packages: loose-envify: 1.4.0 dev: false - /safe-buffer@5.2.1: - resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - dev: false - /scheduler@0.23.0: resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} dependencies: loose-envify: 1.4.0 dev: false - /sisteransi@1.0.5: - resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} - dev: false - - /strip-hex-prefix@1.0.0: - resolution: {integrity: sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==} - engines: {node: '>=6.5.0', npm: '>=3'} - dependencies: - is-hex-prefixed: 1.0.0 - dev: false - - /supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} - dependencies: - has-flag: 4.0.0 - dev: false - - /treeify@1.1.0: - resolution: {integrity: sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==} - engines: {node: '>=0.6'} - dev: false - - /tslib@2.4.0: - resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} - dev: false - - /typescript@5.2.2: - resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==} + /typescript@5.3.3: + resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} engines: {node: '>=14.17'} hasBin: true - - /utf8@3.0.0: - resolution: {integrity: sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==} - dev: false - - /viem@1.19.9(typescript@5.2.2): - resolution: {integrity: sha512-Sf9U2x4jU0S/FALqYypcspWOGene0NZyD470oUripNhE0Ta6uOE/OgE4toTDVfRxov8qw0JFinr/wPGxYE3+HQ==} - peerDependencies: - typescript: '>=5.0.4' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@adraffy/ens-normalize': 1.10.0 - '@noble/curves': 1.2.0 - '@noble/hashes': 1.3.2 - '@scure/bip32': 1.3.2 - '@scure/bip39': 1.2.1 - abitype: 0.9.8(typescript@5.2.2) - isows: 1.0.3(ws@8.13.0) - typescript: 5.2.2 - ws: 8.13.0 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - - zod - dev: false - - /web3-utils@1.10.3: - resolution: {integrity: sha512-OqcUrEE16fDBbGoQtZXWdavsPzbGIDc5v3VrRTZ0XrIpefC/viZ1ZU9bGEemazyS0catk/3rkOOxpzTfY+XsyQ==} - engines: {node: '>=8.0.0'} - dependencies: - '@ethereumjs/util': 8.1.0 - bn.js: 5.2.1 - ethereum-bloom-filters: 1.0.10 - ethereum-cryptography: 2.1.2 - ethjs-unit: 0.1.6 - number-to-bn: 1.7.0 - randombytes: 2.1.0 - utf8: 3.0.0 - dev: false - - /ws@8.13.0: - resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: '>=5.0.2' - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - dev: false - - /ws@8.5.0: - resolution: {integrity: sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - dev: false + dev: true publishDirectory: dist diff --git a/react/src/AxiomCircuitProvider.tsx b/react/src/AxiomCircuitProvider.tsx index 8609e3f8..e0ced8be 100644 --- a/react/src/AxiomCircuitProvider.tsx +++ b/react/src/AxiomCircuitProvider.tsx @@ -5,13 +5,13 @@ import React, { useRef, useState, } from "react"; -import { - AxiomV2Callback, - AxiomV2QueryOptions, -} from "@axiom-crypto/core"; -import { CircuitConfig } from "@axiom-crypto/core/halo2-js"; import { Remote, wrap } from "comlink"; import { AxiomCircuit } from "./worker"; +import { + AxiomV2CompiledCircuit, + AxiomV2Callback, + AxiomV2QueryOptions, +} from "@axiom-crypto/client"; type BuiltQuery = { calldata: `0x${string}`; @@ -43,20 +43,14 @@ const useAxiomCircuit = (): AxiomCircuitContextType => { } function AxiomCircuitProvider({ - providerUri, - build: _build, + provider, + compiledCircuit, chainId, mock, children, }: { - build: { - vk: string, - config: CircuitConfig, - querySchema: string, - inputSchema: string, - circuit: string, - } - providerUri: string, + compiledCircuit: AxiomV2CompiledCircuit, + provider: string, chainId?: number | string | bigint, mock?: boolean, children: React.ReactNode, @@ -81,14 +75,14 @@ function AxiomCircuitProvider({ const worker = new Worker(new URL("./worker", import.meta.url), { type: "module" }); const MyAxiomCircuit = wrap(worker); workerApi.current = await new MyAxiomCircuit({ - provider: providerUri, - inputSchema: _build.inputSchema, + provider, + inputSchema: compiledCircuit.inputSchema, mock, chainId, - f: _build.circuit, + f: compiledCircuit.circuit, }); await workerApi.current.setup(window.navigator.hardwareConcurrency); - await workerApi.current?.loadSaved(_build); + await workerApi.current?.loadSaved(compiledCircuit); } const generateQuery = async () => { diff --git a/readme.md b/readme.md index ea5bd72f..af261d79 100644 --- a/readme.md +++ b/readme.md @@ -5,9 +5,11 @@ This repository is split into 3 components: - `client`: Contains the Axiom CLI interface and developer-facing AxiomCircuit exports - `circuit`: Handles lower-level interface with Wasm circuit libraries - `harness`: Test harness for `client` +- `react`: Axiom React component for proving in React/Next.js dApps ## Convenience scripts - `pnpm local`: Updates each package's dependencies in this repository to local links -- `pnpm versions`: Updates the version number for each package's dependencies in this repository to versions declared in their respective package.json's version value -- `pnpm publish-all`: Publishes all packages in sequential order: `circuit`, `client`, then `harness` \ No newline at end of file +- `pnpm remote`: Updates the version number for each package's dependencies in this repository to versions declared in their respective package.json's version value +- `pnpm versions `: Updates all versions in each repository to `versionNumber` +- `pnpm publish-all`: Publishes all packages in sequential order: `circuit`, `client`, `harness`, `react` \ No newline at end of file diff --git a/scripts/publishAll.js b/scripts/publishAll.js index 54bce755..d2dfbf6c 100644 --- a/scripts/publishAll.js +++ b/scripts/publishAll.js @@ -1,9 +1,9 @@ const util = require('util'); const exec = util.promisify(require('child_process').exec); -const versions = require('./versions'); -const packages = versions.versions(); +const setRemote = require('./setRemote'); +const packages = setRemote.setRemote(); -if (process.argv.length < 2) { +if (process.argv.length < 3) { throw new Error("Please include a tag value as an argument: `pnpm publish-all tagname`"); } const tag = process.argv[2]; diff --git a/scripts/testLocal.js b/scripts/setLocal.js similarity index 69% rename from scripts/testLocal.js rename to scripts/setLocal.js index cb3a8217..fbf30a2f 100644 --- a/scripts/testLocal.js +++ b/scripts/setLocal.js @@ -1,18 +1,30 @@ const { execSync } = require("child_process"); const fs = require("fs"); +let ci = false; +if (process.argv[2] === "--ci") { + ci = true; +} + +const packageManager = ci ? "npm" : "pnpm"; +const localPrefix = ci ? "file:" : "link:"; + const packages = { "@axiom-crypto/circuit": { path: "../circuit/js", - version: "link:../circuit/js/dist", + version: `${localPrefix}../circuit/js/dist`, }, "@axiom-crypto/client": { path: "../client", - version: "link:../client/dist", + version: `${localPrefix}../client/dist`, }, "@axiom-crypto/harness": { path: "../harness", - version: "", + version: `${localPrefix}../harness/dist`, + }, + "@axiom-crypto/react": { + path: "../react", + version: `${localPrefix}../react/dist`, }, }; @@ -26,7 +38,7 @@ function main() { // Substitute package versions for (const package of Object.keys(packages)) { const packageJsonPath = packages[package].path + "/package.json"; - console.log("### Test", packageJsonPath); + console.log("Processing", packageJsonPath); let packageJson = require(packageJsonPath); // Check for existence of each dependencyType @@ -42,7 +54,7 @@ function main() { continue; } if (key === packageSearchStr) { - console.log(package, key, packageJson[dependencyType][packageSearchStr]); + console.log(`Found ${key}: Setting local`); packageJson[dependencyType][packageSearchStr] = packages[packageSearchStr].version; } } @@ -51,7 +63,7 @@ function main() { fs.writeFileSync(packageJsonPath.slice(1), JSON.stringify(packageJson, null, 2)); // Install dependencies & build - execSync(`cd ${packages[package].path.slice(1)} && pnpm i && pnpm build && cd ..`); + execSync(`cd ${packages[package].path.slice(1)} && ${packageManager} i && ${packageManager} build && cd ..`); } } diff --git a/scripts/versions.js b/scripts/setRemote.js similarity index 92% rename from scripts/versions.js rename to scripts/setRemote.js index 7a0e117c..e97418a1 100644 --- a/scripts/versions.js +++ b/scripts/setRemote.js @@ -13,6 +13,10 @@ const packages = { path: "../harness", version: "", }, + "@axiom-crypto/react": { + path: "../react", + version: "", + }, }; const dependencyTypes = [ @@ -21,7 +25,7 @@ const dependencyTypes = [ "peerDependencies", ]; -function versions() { +function setRemote() { // Get all package versions for (const package of Object.keys(packages)) { const packageJsonPath = packages[package].path + "/package.json"; @@ -58,4 +62,4 @@ function versions() { return packages; } -exports.versions = versions; +exports.setRemote = setRemote; diff --git a/scripts/setVersions.js b/scripts/setVersions.js new file mode 100644 index 00000000..974a61e6 --- /dev/null +++ b/scripts/setVersions.js @@ -0,0 +1,59 @@ +// Sets all versions of the packages listed below to the same value +// Pass argument `increment` to increment the version number + +const fs = require("fs"); + +let increment = false; + +if (process.argv.length < 3) { + throw new Error("Please include a version as an argument: `pnpm versions `"); +} +const setVersion = process.argv[2]; +if (setVersion.toLowerCase() === "increment" || setVersion.toLowerCase() === "inc") { + increment = true; +} + +const packages = { + "@axiom-crypto/circuit": { + path: "../circuit/js", + version: "", + }, + "@axiom-crypto/client": { + path: "../client", + version: "", + }, + "@axiom-crypto/harness": { + path: "../harness", + version: "", + }, + "@axiom-crypto/react": { + path: "../react", + version: "", + }, +}; + +console.log("setVersion", setVersion); + +function setVersions() { + // Write package version to all paths + for (const package of Object.keys(packages)) { + const packageJsonPath = packages[package].path + "/package.json"; + let packageJson = require(packageJsonPath); + let packageVersion = packageJson.version; + if (increment) { + let versionParts = packageVersion.split("."); + let minor = parseInt(versionParts[versionParts.length-1]); + minor++; + versionParts[versionParts.length-1] = minor.toString(); + packageVersion = versionParts.join("."); + } else { + packageVersion = setVersion; + } + packageJson.version = packageVersion; + console.log(`Set ${package} version: ${packageVersion}`); + + fs.writeFileSync(packageJsonPath.slice(1), JSON.stringify(packageJson, null, 2)); + } +} + +setVersions();