diff --git a/apps/dashboard/package.json b/apps/dashboard/package.json
index a7755886..1dd413cc 100644
--- a/apps/dashboard/package.json
+++ b/apps/dashboard/package.json
@@ -18,6 +18,7 @@
"@emotion/styled": "^11.10.6",
"@fontsource-variable/unbounded": "^5.0.5",
"@rainbow-me/rainbowkit": "^0.12.8",
+ "@semaphore-protocol/core": "^4.0.3",
"@semaphore-protocol/data": "4.0.3",
"ethers": "5.5.1",
"framer-motion": "^10.0.1",
diff --git a/apps/dashboard/src/pages/group.tsx b/apps/dashboard/src/pages/group.tsx
index 47ad9561..9eaafc80 100644
--- a/apps/dashboard/src/pages/group.tsx
+++ b/apps/dashboard/src/pages/group.tsx
@@ -35,6 +35,9 @@ import {
MdOutlineMoreVert
} from "react-icons/md"
import { Link, useNavigate, useParams } from "react-router-dom"
+import { useSigner } from "wagmi"
+import { getSemaphoreContract } from "@bandada/utils"
+import { Group as Semaphorev4Group } from "@semaphore-protocol/core"
import * as bandadaApi from "../api/bandadaAPI"
import { getGroup as getOnchainGroup } from "../api/semaphoreAPI"
import image1 from "../assets/image1.svg"
@@ -65,6 +68,7 @@ export default function GroupPage(): JSX.Element {
? _group.admin === admin.id
: _group.admin === admin.address.toLowerCase())
)
+ const { data: signer } = useSigner()
useEffect(() => {
;(async () => {
@@ -143,17 +147,54 @@ export default function GroupPage(): JSX.Element {
return
}
- if (
- (await bandadaApi.removeMember(_group!.id, memberId)) === null
- ) {
- return
- }
+ if (_group?.type === "off-chain") {
+ if (
+ (await bandadaApi.removeMember(_group!.id, memberId)) ===
+ null
+ ) {
+ return
+ }
+ _group!.members = _group!.members.filter((m) => m !== memberId)
+ } else {
+ if (!signer) {
+ alert("No valid signer for your transaction!")
+ return
+ }
+
+ try {
+ const semaphore = getSemaphoreContract(
+ "sepolia",
+ signer as any
+ )
+
+ const semaphorev4Group = new Semaphorev4Group(
+ _group!.members
+ )
+
+ const index = semaphorev4Group.indexOf(memberId)
- _group!.members = _group!.members.filter((m) => m !== memberId)
+ const merkleProof =
+ semaphorev4Group.generateMerkleProof(index)
+
+ await semaphore.removeMember(
+ _group!.id,
+ memberId,
+ merkleProof.siblings
+ )
+ } catch (error) {
+ alert(
+ "Some error occurred! Check if you're on Sepolia network and the transaction is signed and completed"
+ )
+ return
+ }
+ _group!.members = _group!.members.map((m) =>
+ m !== memberId ? m : "0"
+ )
+ }
setGroup({ ..._group! })
},
- [_group]
+ [_group, signer]
)
const removeMembers = useCallback(
@@ -746,46 +787,39 @@ ${memberIds.join("\n")}
- {_group.type === "off-chain" &&
- isGroupAdmin && (
-
- )}
+ onClick={() =>
+ removeMember(memberId)
+ }
+ >
+ Remove
+
+
+
+ )}
))
diff --git a/libs/utils/src/getSemaphoreContract.ts b/libs/utils/src/getSemaphoreContract.ts
index 861bff4e..fd7741a9 100644
--- a/libs/utils/src/getSemaphoreContract.ts
+++ b/libs/utils/src/getSemaphoreContract.ts
@@ -44,6 +44,20 @@ export class SemaphoreContract {
return transaction.wait(1)
}
+
+ async removeMember(
+ groupId: string,
+ member: string,
+ siblings: bigint[]
+ ): Promise {
+ const transaction = await this.contract.removeMember(
+ groupId,
+ member,
+ siblings
+ )
+
+ return transaction.wait(1)
+ }
}
export default function getSemaphoreContract(
diff --git a/yarn.lock b/yarn.lock
index bc316d0c..2aea0c6d 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -5,6 +5,13 @@ __metadata:
version: 8
cacheKey: 10
+"@adraffy/ens-normalize@npm:1.10.0":
+ version: 1.10.0
+ resolution: "@adraffy/ens-normalize@npm:1.10.0"
+ checksum: 10/5cdb5d2a9c9f8c0a71a7bb830967da0069cae1f1235cd41ae11147e4000f368f6958386e622cd4d52bf45c1ed3f8275056b387cba28902b83354e40ff323ecde
+ languageName: node
+ linkType: hard
+
"@adraffy/ens-normalize@npm:1.10.1":
version: 1.10.1
resolution: "@adraffy/ens-normalize@npm:1.10.1"
@@ -5809,6 +5816,16 @@ __metadata:
languageName: node
linkType: hard
+"@iden3/binfileutils@npm:0.0.12":
+ version: 0.0.12
+ resolution: "@iden3/binfileutils@npm:0.0.12"
+ dependencies:
+ fastfile: "npm:0.0.20"
+ ffjavascript: "npm:^0.3.0"
+ checksum: 10/2cf82488a5efbb97bb853860bd8f1697da859ba22e0d7f980fc80694d722f7c8da7d8803be21ebcbb9c01a9bdcedce0ba6b209357163a631877fa08415ba08fe
+ languageName: node
+ linkType: hard
+
"@isaacs/cliui@npm:^8.0.2":
version: 8.0.2
resolution: "@isaacs/cliui@npm:8.0.2"
@@ -7581,6 +7598,17 @@ __metadata:
languageName: node
linkType: hard
+"@semaphore-protocol/core@npm:^4.0.3":
+ version: 4.0.3
+ resolution: "@semaphore-protocol/core@npm:4.0.3"
+ dependencies:
+ "@semaphore-protocol/group": "npm:4.0.3"
+ "@semaphore-protocol/identity": "npm:4.0.3"
+ "@semaphore-protocol/proof": "npm:4.0.3"
+ checksum: 10/887174339bc5be78802fc2c9954e43f48bf76cbcc31ee6e2ecf0eabd1d8fb0603e1a09495021300396eab480a77a1925e806e09d7eff543369cfe305e04ece51
+ languageName: node
+ linkType: hard
+
"@semaphore-protocol/data@npm:4.0.3":
version: 4.0.3
resolution: "@semaphore-protocol/data@npm:4.0.3"
@@ -7616,6 +7644,16 @@ __metadata:
languageName: node
linkType: hard
+"@semaphore-protocol/group@npm:4.0.3":
+ version: 4.0.3
+ resolution: "@semaphore-protocol/group@npm:4.0.3"
+ dependencies:
+ "@zk-kit/lean-imt": "npm:2.1.0"
+ "@zk-kit/utils": "npm:1.0.0"
+ checksum: 10/65ba514d619dd1990e38930df3337a1f21484cfec2ca09c5d393af35ee5451cb45ec46f1313949ddee8380b82ecafa33906109c1a76128482fba5127f67ef482
+ languageName: node
+ linkType: hard
+
"@semaphore-protocol/identity@npm:3.10.1":
version: 3.10.1
resolution: "@semaphore-protocol/identity@npm:3.10.1"
@@ -7642,6 +7680,18 @@ __metadata:
languageName: node
linkType: hard
+"@semaphore-protocol/identity@npm:4.0.3":
+ version: 4.0.3
+ resolution: "@semaphore-protocol/identity@npm:4.0.3"
+ dependencies:
+ "@zk-kit/baby-jubjub": "npm:1.0.1"
+ "@zk-kit/eddsa-poseidon": "npm:1.0.2"
+ "@zk-kit/utils": "npm:1.2.0"
+ poseidon-lite: "npm:0.2.0"
+ checksum: 10/8dfab2bf1d3ad73ab67abfd6c003aaff247382679de11abcf5a804019758c876171d94ae12555330b51165733d9b012ac14e8c1df1f9a27d716d17fe79dedd6d
+ languageName: node
+ linkType: hard
+
"@semaphore-protocol/proof@npm:3.9.0":
version: 3.9.0
resolution: "@semaphore-protocol/proof@npm:3.9.0"
@@ -7659,6 +7709,22 @@ __metadata:
languageName: node
linkType: hard
+"@semaphore-protocol/proof@npm:4.0.3":
+ version: 4.0.3
+ resolution: "@semaphore-protocol/proof@npm:4.0.3"
+ dependencies:
+ "@semaphore-protocol/utils": "npm:4.0.3"
+ "@zk-kit/artifacts": "npm:1.8.0"
+ "@zk-kit/utils": "npm:1.0.0"
+ ethers: "npm:6.10.0"
+ snarkjs: "npm:0.7.4"
+ peerDependencies:
+ "@semaphore-protocol/group": 4.0.3
+ "@semaphore-protocol/identity": 4.0.3
+ checksum: 10/be005b4ad8fde47b176803b4c988951e2b7c91e9c98bef5d46225cb3c11ba96208f752c58e6a818cccf46d4742de382f8facce710b5720745565c15d33f44bbd
+ languageName: node
+ linkType: hard
+
"@semaphore-protocol/utils@npm:4.0.3":
version: 4.0.3
resolution: "@semaphore-protocol/utils@npm:4.0.3"
@@ -10453,6 +10519,33 @@ __metadata:
languageName: node
linkType: hard
+"@zk-kit/artifacts@npm:1.8.0":
+ version: 1.8.0
+ resolution: "@zk-kit/artifacts@npm:1.8.0"
+ checksum: 10/f2eedd395d1662dc77780366edbbfbb9e543a82880dccfdc39dbf412010b65dabce9a64903218e64b9059fe7d9c02214e0f7817250a7ff4342836353d75d02dd
+ languageName: node
+ linkType: hard
+
+"@zk-kit/baby-jubjub@npm:1.0.1":
+ version: 1.0.1
+ resolution: "@zk-kit/baby-jubjub@npm:1.0.1"
+ dependencies:
+ "@zk-kit/utils": "npm:1.0.0"
+ checksum: 10/d9b97b773351c0524cbac3e4cb5721762865198483ea91ffdc7cd05bc4a7c4f3d1ec0b639a04cdcad4e71c60eed82bb1e32060531e2e7b11df6c1172024e03d1
+ languageName: node
+ linkType: hard
+
+"@zk-kit/eddsa-poseidon@npm:1.0.2":
+ version: 1.0.2
+ resolution: "@zk-kit/eddsa-poseidon@npm:1.0.2"
+ dependencies:
+ "@zk-kit/baby-jubjub": "npm:1.0.1"
+ "@zk-kit/utils": "npm:1.0.0"
+ buffer: "npm:6.0.3"
+ checksum: 10/4b4e984a96c5dbc95a8cf36ceb8b3712e37291c1473d01b0e22c15a33311e9cf88c86175d878dacda1852cc905cd2074aaa76defeaed33490be3964ca7a53372
+ languageName: node
+ linkType: hard
+
"@zk-kit/incremental-merkle-tree.sol@npm:1.3.3":
version: 1.3.3
resolution: "@zk-kit/incremental-merkle-tree.sol@npm:1.3.3"
@@ -10481,6 +10574,15 @@ __metadata:
languageName: node
linkType: hard
+"@zk-kit/lean-imt@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@zk-kit/lean-imt@npm:2.1.0"
+ dependencies:
+ "@zk-kit/utils": "npm:1.2.0"
+ checksum: 10/897f88204c9ee548a2a977ef1efac8e4c0d2efdf284c88f759fdefd53b2c51a36b536130eb3241e68bd14e5039bcb8d6d788e7fca46fe442cfa3eceeb9c0eddf
+ languageName: node
+ linkType: hard
+
"@zk-kit/logical-expressions@npm:1.0.0":
version: 1.0.0
resolution: "@zk-kit/logical-expressions@npm:1.0.0"
@@ -10488,6 +10590,24 @@ __metadata:
languageName: node
linkType: hard
+"@zk-kit/utils@npm:1.0.0":
+ version: 1.0.0
+ resolution: "@zk-kit/utils@npm:1.0.0"
+ dependencies:
+ buffer: "npm:^6.0.3"
+ checksum: 10/a471025ca4c69a825bebf2c68a0d83c55c345c8843f28eeb958f1e2aa549aaa982939c1d6d819dda337601163064f382e450d09103ba4d9a0525281a0a23696b
+ languageName: node
+ linkType: hard
+
+"@zk-kit/utils@npm:1.2.0":
+ version: 1.2.0
+ resolution: "@zk-kit/utils@npm:1.2.0"
+ dependencies:
+ buffer: "npm:^6.0.3"
+ checksum: 10/4c0b37d64b28a6cc33c901a0c59325b1fe9c31e6519eaefe4aa6028ae9cb85e97f047976942875face030a1835d5c955ea546d7dc4fcf9d35df79192ee2502f3
+ languageName: node
+ linkType: hard
+
"JSONStream@npm:^1.0.4, JSONStream@npm:^1.3.5":
version: 1.3.5
resolution: "JSONStream@npm:1.3.5"
@@ -11777,6 +11897,19 @@ __metadata:
languageName: node
linkType: hard
+"bfj@npm:^7.0.2":
+ version: 7.1.0
+ resolution: "bfj@npm:7.1.0"
+ dependencies:
+ bluebird: "npm:^3.7.2"
+ check-types: "npm:^11.2.3"
+ hoopy: "npm:^0.1.4"
+ jsonpath: "npm:^1.1.1"
+ tryer: "npm:^1.0.1"
+ checksum: 10/efe4ca2ce43ef279c0ced8538d7de452bae6d8a552c5a72561c66aa6983aa8e448202af848b63518562750bddbb13af20b026c87633324c38499a044ec965eab
+ languageName: node
+ linkType: hard
+
"big-integer@npm:^1.6.42, big-integer@npm:^1.6.48":
version: 1.6.51
resolution: "big-integer@npm:1.6.51"
@@ -11868,6 +12001,13 @@ __metadata:
languageName: node
linkType: hard
+"bluebird@npm:^3.7.2":
+ version: 3.7.2
+ resolution: "bluebird@npm:3.7.2"
+ checksum: 10/007c7bad22c5d799c8dd49c85b47d012a1fe3045be57447721e6afbd1d5be43237af1db62e26cb9b0d9ba812d2e4ca3bac82f6d7e016b6b88de06ee25ceb96e7
+ languageName: node
+ linkType: hard
+
"bn.js@npm:4.11.6":
version: 4.11.6
resolution: "bn.js@npm:4.11.6"
@@ -12741,6 +12881,13 @@ __metadata:
languageName: node
linkType: hard
+"check-types@npm:^11.2.3":
+ version: 11.2.3
+ resolution: "check-types@npm:11.2.3"
+ checksum: 10/557e119fa018d7de4e873ada0a6c8917a0f6e0955dc19293396405f5292cfcfe190457557f4cc422e6845d715ef6bbb1d0ab9198ff6735dd96ac50e3ef1e2424
+ languageName: node
+ linkType: hard
+
"cheerio-select@npm:^2.1.0":
version: 2.1.0
resolution: "cheerio-select@npm:2.1.0"
@@ -12883,6 +13030,17 @@ __metadata:
languageName: node
linkType: hard
+"circom_runtime@npm:0.1.25":
+ version: 0.1.25
+ resolution: "circom_runtime@npm:0.1.25"
+ dependencies:
+ ffjavascript: "npm:0.3.0"
+ bin:
+ calcwit: calcwit.js
+ checksum: 10/aebb1398df621524a84b4c067661943d8d42894856f4947f61f4768954f1143c9fbba76c3a7e9d805175b94e1ac997accbe46fbf67d08ff618062dfcec2737b1
+ languageName: node
+ linkType: hard
+
"cjs-module-lexer@npm:^1.0.0":
version: 1.2.2
resolution: "cjs-module-lexer@npm:1.2.2"
@@ -14295,6 +14453,7 @@ __metadata:
"@emotion/styled": "npm:^11.10.6"
"@fontsource-variable/unbounded": "npm:^5.0.5"
"@rainbow-me/rainbowkit": "npm:^0.12.8"
+ "@semaphore-protocol/core": "npm:^4.0.3"
"@semaphore-protocol/data": "npm:4.0.3"
"@types/react": "npm:^18.0.27"
"@types/react-dom": "npm:^18.0.10"
@@ -15543,6 +15702,25 @@ __metadata:
languageName: node
linkType: hard
+"escodegen@npm:^1.8.1":
+ version: 1.14.3
+ resolution: "escodegen@npm:1.14.3"
+ dependencies:
+ esprima: "npm:^4.0.1"
+ estraverse: "npm:^4.2.0"
+ esutils: "npm:^2.0.2"
+ optionator: "npm:^0.8.1"
+ source-map: "npm:~0.6.1"
+ dependenciesMeta:
+ source-map:
+ optional: true
+ bin:
+ escodegen: bin/escodegen.js
+ esgenerate: bin/esgenerate.js
+ checksum: 10/70f095ca9393535f9f1c145ef99dc0b3ff14cca6bc4a79d90ff3352f90c3f2e07f75af6d6c05174ea67c45271f75e80dd440dd7d04ed2cf44c9452c3042fa84a
+ languageName: node
+ linkType: hard
+
"eslint-config-airbnb-base@npm:^15.0.0":
version: 15.0.0
resolution: "eslint-config-airbnb-base@npm:15.0.0"
@@ -15830,6 +16008,16 @@ __metadata:
languageName: node
linkType: hard
+"esprima@npm:1.2.2":
+ version: 1.2.2
+ resolution: "esprima@npm:1.2.2"
+ bin:
+ esparse: ./bin/esparse.js
+ esvalidate: ./bin/esvalidate.js
+ checksum: 10/7ed9274abb1fed861354239f0da8fa3ec6592617ad0fd2aab16b0beb0425137c46f05c82faa0de89b3bb3d704054815c2657658c7e221b1fb550e88c237eefd2
+ languageName: node
+ linkType: hard
+
"esprima@npm:2.7.x, esprima@npm:^2.7.1":
version: 2.7.3
resolution: "esprima@npm:2.7.3"
@@ -15840,7 +16028,7 @@ __metadata:
languageName: node
linkType: hard
-"esprima@npm:^4.0.0":
+"esprima@npm:^4.0.0, esprima@npm:^4.0.1":
version: 4.0.1
resolution: "esprima@npm:4.0.1"
bin:
@@ -15875,7 +16063,7 @@ __metadata:
languageName: node
linkType: hard
-"estraverse@npm:^4.1.1":
+"estraverse@npm:^4.1.1, estraverse@npm:^4.2.0":
version: 4.3.0
resolution: "estraverse@npm:4.3.0"
checksum: 10/3f67ad02b6dbfaddd9ea459cf2b6ef4ecff9a6082a7af9d22e445b9abc082ad9ca47e1825557b293fcdae477f4714e561123e30bb6a5b2f184fb2bad4a9497eb
@@ -16231,6 +16419,21 @@ __metadata:
languageName: node
linkType: hard
+"ethers@npm:6.10.0":
+ version: 6.10.0
+ resolution: "ethers@npm:6.10.0"
+ dependencies:
+ "@adraffy/ens-normalize": "npm:1.10.0"
+ "@noble/curves": "npm:1.2.0"
+ "@noble/hashes": "npm:1.3.2"
+ "@types/node": "npm:18.15.13"
+ aes-js: "npm:4.0.0-beta.5"
+ tslib: "npm:2.4.0"
+ ws: "npm:8.5.0"
+ checksum: 10/04fdd3f76ea93a8b45b2fe4d9c8e2bd0d688823faba672897dd19cc3303c202a166902fe6058004562f13aaecf9f77a9f70ff113f995e94107efef2457b016dd
+ languageName: node
+ linkType: hard
+
"ethers@npm:6.11.0":
version: 6.11.0
resolution: "ethers@npm:6.11.0"
@@ -16675,6 +16878,13 @@ __metadata:
languageName: node
linkType: hard
+"fastfile@npm:0.0.20":
+ version: 0.0.20
+ resolution: "fastfile@npm:0.0.20"
+ checksum: 10/0c051c22d6d831118dfbf9fbc1277a2e9b14164db68985f7403aa6b3e7a89c4b614d71d6f6d53e141313fa5554c32dacbc9c2a17c43dc3d21fc0dd500a2f132a
+ languageName: node
+ linkType: hard
+
"fastq@npm:^1.6.0":
version: 1.13.0
resolution: "fastq@npm:1.13.0"
@@ -16732,6 +16942,17 @@ __metadata:
languageName: node
linkType: hard
+"ffjavascript@npm:0.3.0, ffjavascript@npm:^0.3.0":
+ version: 0.3.0
+ resolution: "ffjavascript@npm:0.3.0"
+ dependencies:
+ wasmbuilder: "npm:0.0.16"
+ wasmcurves: "npm:0.2.2"
+ web-worker: "npm:1.2.0"
+ checksum: 10/8478f3f3380b6195cf4994f9998e40a05780caa10b31bf67ba87ed294811ada6cb376deb58ce63d7fa124a828350a4c3530a6550545231872d7bd4e5e9f09f2f
+ languageName: node
+ linkType: hard
+
"ffjavascript@npm:^0.2.48":
version: 0.2.57
resolution: "ffjavascript@npm:0.2.57"
@@ -18475,6 +18696,13 @@ __metadata:
languageName: node
linkType: hard
+"hoopy@npm:^0.1.4":
+ version: 0.1.4
+ resolution: "hoopy@npm:0.1.4"
+ checksum: 10/7a73f1839a7fd6b953356770dff2c3cff813d97d899cddd75b348926c4df36059d987c06bedb57b1b7711504dba83d3b7b986f979a08b1e415da73a51fefa767
+ languageName: node
+ linkType: hard
+
"hosted-git-info@npm:^2.1.4":
version: 2.8.9
resolution: "hosted-git-info@npm:2.8.9"
@@ -20697,6 +20925,17 @@ __metadata:
languageName: node
linkType: hard
+"jsonpath@npm:^1.1.1":
+ version: 1.1.1
+ resolution: "jsonpath@npm:1.1.1"
+ dependencies:
+ esprima: "npm:1.2.2"
+ static-eval: "npm:2.0.2"
+ underscore: "npm:1.12.1"
+ checksum: 10/aa6c2fea9c05eeba4a37870cbbcf30c20de5211d0fd967786b6c59b8546c9f80182328ee2428daf989c8d5c6e6bf97fed28eefc790144258b1238707c30706eb
+ languageName: node
+ linkType: hard
+
"jsonschema@npm:^1.2.4":
version: 1.4.1
resolution: "jsonschema@npm:1.4.1"
@@ -24621,6 +24860,13 @@ __metadata:
languageName: node
linkType: hard
+"poseidon-lite@npm:0.2.0":
+ version: 0.2.0
+ resolution: "poseidon-lite@npm:0.2.0"
+ checksum: 10/63c7668b480ee3d57aaca0eda7e56d563ab2bfcc40bbce0e4bccdc9deed4c0d68255749356e328b622ce8715b1f1ba689fe1a86ca78eb1056a51a18daa252ee1
+ languageName: node
+ linkType: hard
+
"postcss-calc@npm:^8.2.3":
version: 8.2.4
resolution: "postcss-calc@npm:8.2.4"
@@ -25635,6 +25881,18 @@ __metadata:
languageName: node
linkType: hard
+"r1csfile@npm:0.0.48":
+ version: 0.0.48
+ resolution: "r1csfile@npm:0.0.48"
+ dependencies:
+ "@iden3/bigarray": "npm:0.0.2"
+ "@iden3/binfileutils": "npm:0.0.12"
+ fastfile: "npm:0.0.20"
+ ffjavascript: "npm:0.3.0"
+ checksum: 10/d851f801cec9722ea6b5164fb9f62a1e3381422c00bb17c9244f5a99228146831fd8302e4c0df2563cd385562483ef37222221ea6125517bc8a0596c3e822cd6
+ languageName: node
+ linkType: hard
+
"randombytes@npm:^2.0.0, randombytes@npm:^2.0.1, randombytes@npm:^2.0.5, randombytes@npm:^2.1.0":
version: 2.1.0
resolution: "randombytes@npm:2.1.0"
@@ -27730,6 +27988,26 @@ __metadata:
languageName: node
linkType: hard
+"snarkjs@npm:0.7.4":
+ version: 0.7.4
+ resolution: "snarkjs@npm:0.7.4"
+ dependencies:
+ "@iden3/binfileutils": "npm:0.0.12"
+ bfj: "npm:^7.0.2"
+ blake2b-wasm: "npm:^2.4.0"
+ circom_runtime: "npm:0.1.25"
+ ejs: "npm:^3.1.6"
+ fastfile: "npm:0.0.20"
+ ffjavascript: "npm:0.3.0"
+ js-sha3: "npm:^0.8.0"
+ logplease: "npm:^1.2.15"
+ r1csfile: "npm:0.0.48"
+ bin:
+ snarkjs: build/cli.cjs
+ checksum: 10/aaebcf57e11a36dc1ea77742a5062d67fcaa24bad37bc6532d9aaefc71ad302c4a65bd05cabb6ac893f3329e09f193d9cbd2a20053f8d5074e3864d933323e05
+ languageName: node
+ linkType: hard
+
"sockjs@npm:^0.3.24":
version: 0.3.24
resolution: "sockjs@npm:0.3.24"
@@ -27938,7 +28216,7 @@ __metadata:
languageName: node
linkType: hard
-"source-map@npm:^0.6.0, source-map@npm:^0.6.1, source-map@npm:~0.6.0":
+"source-map@npm:^0.6.0, source-map@npm:^0.6.1, source-map@npm:~0.6.0, source-map@npm:~0.6.1":
version: 0.6.1
resolution: "source-map@npm:0.6.1"
checksum: 10/59ef7462f1c29d502b3057e822cdbdae0b0e565302c4dd1a95e11e793d8d9d62006cdc10e0fd99163ca33ff2071360cf50ee13f90440806e7ed57d81cba2f7ff
@@ -28159,6 +28437,15 @@ __metadata:
languageName: node
linkType: hard
+"static-eval@npm:2.0.2":
+ version: 2.0.2
+ resolution: "static-eval@npm:2.0.2"
+ dependencies:
+ escodegen: "npm:^1.8.1"
+ checksum: 10/2e2faf1b23bad5d9d5b2407b18945c7b97f8706b6d65f06bb3583a2d4fd1994cf5890c5779a1bfa2a02905dc860e077e4f045d7413d289d8993f605758f8992f
+ languageName: node
+ linkType: hard
+
"statuses@npm:2.0.1":
version: 2.0.1
resolution: "statuses@npm:2.0.1"
@@ -29153,6 +29440,13 @@ __metadata:
languageName: node
linkType: hard
+"tryer@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "tryer@npm:1.0.1"
+ checksum: 10/4d869d187bd715136903b349f39d1cc3e5c19f742689a348190aff92408ee8dd3d7d9adc26dc9265c35d722731184c979ed316109b6c1239249a8707bb92cc49
+ languageName: node
+ linkType: hard
+
"ts-command-line-args@npm:^2.2.0":
version: 2.4.2
resolution: "ts-command-line-args@npm:2.4.2"
@@ -29779,6 +30073,13 @@ __metadata:
languageName: node
linkType: hard
+"underscore@npm:1.12.1":
+ version: 1.12.1
+ resolution: "underscore@npm:1.12.1"
+ checksum: 10/c3bb50c61ef7dea4b9add6d48f98316f65de1075801dc8cd01ecd82122b99eb17ce0f068f00f6cc10245d5cf75c443ce96f8efc5458d7773b44af9bd7c2ccc56
+ languageName: node
+ linkType: hard
+
"undici-types@npm:~5.26.4":
version: 5.26.5
resolution: "undici-types@npm:5.26.5"
@@ -30445,6 +30746,15 @@ __metadata:
languageName: node
linkType: hard
+"wasmcurves@npm:0.2.2":
+ version: 0.2.2
+ resolution: "wasmcurves@npm:0.2.2"
+ dependencies:
+ wasmbuilder: "npm:0.0.16"
+ checksum: 10/9653daca69c92c656abd5b06fb8e18b6fcfca87c4f81c0a944a2379e6e357c0c28c2ab0429ddf998e4c506d74766519ba09b65cff48bcfff3e0332ee16e2bbf2
+ languageName: node
+ linkType: hard
+
"watchpack@npm:^2.4.0":
version: 2.4.0
resolution: "watchpack@npm:2.4.0"
@@ -30480,7 +30790,7 @@ __metadata:
languageName: node
linkType: hard
-"web-worker@npm:^1.2.0":
+"web-worker@npm:1.2.0, web-worker@npm:^1.2.0":
version: 1.2.0
resolution: "web-worker@npm:1.2.0"
checksum: 10/61a9d046504891ea25754eae08053a4f62a52798a5612039da9df92aca6c52c47eb0e2e35dbbe4c7ba1ba9622ad5783479ddd2e391ae6aed1f99c9b278309c53