diff --git a/package-lock.json b/package-lock.json index 948a572e6..7a2b40b60 100644 --- a/package-lock.json +++ b/package-lock.json @@ -18,6 +18,7 @@ "@oceanprotocol/lib": "^2.7.0", "@oceanprotocol/typographies": "^0.1.0", "@oceanprotocol/use-dark-mode": "^2.4.3", + "@orbisclub/orbis-sdk": "^0.4.40", "@tippyjs/react": "^4.2.6", "@uiw/react-codemirror": "^4.19.5", "@urql/exchange-refocus": "^1.0.0", @@ -48,6 +49,7 @@ "react-paginate": "^8.1.4", "react-select": "^5.7.0", "react-spring": "^9.5.5", + "react-string-replace": "^1.1.0", "react-tabs": "^6.0.0", "react-toastify": "^9.1.1", "remark": "^14.0.2", @@ -2023,6 +2025,343 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, + "node_modules/@ceramicnetwork/common": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/common/-/common-2.24.0.tgz", + "integrity": "sha512-Q3GBlJd5XrSDCP/6KJy2sz+5MfAVhMrEDoW9SIaxG19xPC+QGeMRouNbZf+qfe3tGQintaRn3FhoqSAtjFxE1g==", + "dependencies": { + "@ceramicnetwork/streamid": "^2.14.0", + "@didtools/cacao": "^2.0.0", + "@didtools/pkh-ethereum": "^0.1.0", + "@didtools/pkh-solana": "^0.1.0", + "@didtools/pkh-stacks": "^0.1.0", + "@didtools/pkh-tezos": "^0.2.1", + "@stablelib/random": "^1.0.1", + "caip": "~1.1.0", + "cross-fetch": "^3.1.4", + "flat": "^5.0.2", + "it-first": "^1.0.7", + "jet-logger": "1.2.2", + "lodash.clonedeep": "^4.5.0", + "logfmt": "^1.3.2", + "multiformats": "^11.0.1", + "rxjs": "^7.5.2", + "uint8arrays": "^4.0.3" + } + }, + "node_modules/@ceramicnetwork/common/node_modules/@didtools/pkh-ethereum": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.1.0.tgz", + "integrity": "sha512-Abmc6uvWU8zkOrQbPUAsRtTW293vhx+rzd+/bbduTLrRGEqZ3niakQkxMqvQKZ6/9w+n0IjQVXSHE5vzc5cAeg==", + "dependencies": { + "@didtools/cacao": "^2.0.0", + "@ethersproject/wallet": "^5.7.0", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@ceramicnetwork/common/node_modules/@didtools/pkh-solana": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@didtools/pkh-solana/-/pkh-solana-0.1.0.tgz", + "integrity": "sha512-/0pWsM/TCdHjYZMy4yNcQav2SNj+3W/6RmMebUxdFDKVZFss3ULXIJD0+qsrMFpVNZw3sW/xjFs3He+/fl4HvA==", + "dependencies": { + "@didtools/cacao": "^2.0.0", + "@stablelib/ed25519": "^1.0.3", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0", + "uint8arrays": "^4.0.3" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@ceramicnetwork/common/node_modules/@didtools/pkh-tezos": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@didtools/pkh-tezos/-/pkh-tezos-0.2.1.tgz", + "integrity": "sha512-QKf73frCwcxpY8qZkLqt7EP2eGieltRW5GU/xmMPfgrNLYQrfFRYjF8Rmp9wf16cBuRjCRD0WuxQ8rV/++dseg==", + "dependencies": { + "@didtools/cacao": "^2.0.0", + "@stablelib/blake2b": "^1.0.1", + "@stablelib/ed25519": "^1.0.3", + "@stablelib/random": "^1.0.2", + "@stablelib/sha256": "^1.0.1", + "caip": "^1.1.0", + "uint8arrays": "^4.0.3" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@ceramicnetwork/common/node_modules/multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@ceramicnetwork/common/node_modules/rxjs": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", + "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/@ceramicnetwork/common/node_modules/uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "dependencies": { + "multiformats": "^11.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@ceramicnetwork/http-client": { + "version": "2.21.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/http-client/-/http-client-2.21.0.tgz", + "integrity": "sha512-endVa4X3M727VcDVK11z52yxK9Okcdk7/t6gRqNS8kG9EIlhjwZV82WOi0LoiaxayF496F9xy8bAATbqnXXrgA==", + "dependencies": { + "@ceramicnetwork/common": "^2.24.0", + "@ceramicnetwork/stream-caip10-link": "^2.19.0", + "@ceramicnetwork/stream-model": "^1.6.0", + "@ceramicnetwork/stream-model-instance": "^1.6.0", + "@ceramicnetwork/stream-tile": "^2.20.0", + "@ceramicnetwork/streamid": "^2.14.0", + "query-string": "^7.1.0", + "rxjs": "^7.5.2" + } + }, + "node_modules/@ceramicnetwork/http-client/node_modules/query-string": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-7.1.3.tgz", + "integrity": "sha512-hh2WYhq4fi8+b+/2Kg9CEge4fDPvHS534aOOvOZeQ3+Vf2mCFsaFBYj0i+iXcAq6I9Vzp5fjMFBlONvayDC1qg==", + "dependencies": { + "decode-uri-component": "^0.2.2", + "filter-obj": "^1.1.0", + "split-on-first": "^1.0.0", + "strict-uri-encode": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ceramicnetwork/http-client/node_modules/rxjs": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", + "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/@ceramicnetwork/stream-caip10-link": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-caip10-link/-/stream-caip10-link-2.19.0.tgz", + "integrity": "sha512-h9kXbAsngj7e3amHE2vIPAyCKa537rLdc41xfYX1NSI8vDN7WwWht5xzT3DkRO91AmqGKPvCh801IcjqVHRC/w==", + "dependencies": { + "@ceramicnetwork/common": "^2.24.0", + "@ceramicnetwork/streamid": "^2.14.0", + "caip": "~1.1.0", + "did-resolver": "^4.0.1", + "lodash.clonedeep": "^4.5.0" + } + }, + "node_modules/@ceramicnetwork/stream-model": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model/-/stream-model-1.6.0.tgz", + "integrity": "sha512-rdX2bZmYLbpjQexLWBOGe37jg+5FV+1/GlwAleZjgBS6zc0mzWpwn901FmuXB+P6Lan2fQ1py5EOICoVYklqnA==", + "dependencies": { + "@ceramicnetwork/common": "^2.24.0", + "@ceramicnetwork/streamid": "^2.14.0", + "@ipld/dag-cbor": "^7.0.0", + "@stablelib/random": "^1.0.1", + "fast-json-patch": "^3.1.0", + "json-schema-typed": "^8.0.1", + "multiformats": "^11.0.1", + "multihashes": "^4.0.3", + "uint8arrays": "^4.0.3" + } + }, + "node_modules/@ceramicnetwork/stream-model-instance": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-instance/-/stream-model-instance-1.6.0.tgz", + "integrity": "sha512-qa7EUFV+/eZTiCyT0AvpNyvFMNbzH4sbXAJUsSKJ2YxXy3fo3X5QEVx51pKnVnc6JomNBz6S/pQj0kOR8o+hqA==", + "dependencies": { + "@ceramicnetwork/common": "^2.24.0", + "@ceramicnetwork/streamid": "^2.14.0", + "@ipld/dag-cbor": "^7.0.0", + "@stablelib/random": "^1.0.1", + "fast-json-patch": "^3.1.0", + "object-sizeof": "^2.6.1", + "uint8arrays": "^4.0.3" + } + }, + "node_modules/@ceramicnetwork/stream-model-instance/node_modules/multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@ceramicnetwork/stream-model-instance/node_modules/uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "dependencies": { + "multiformats": "^11.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@ceramicnetwork/stream-model/node_modules/multibase": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/multibase/-/multibase-4.0.6.tgz", + "integrity": "sha512-x23pDe5+svdLz/k5JPGCVdfn7Q5mZVMBETiC+ORfO+sor9Sgs0smJzAjfTbM5tckeCqnaUuMYoz+k3RXMmJClQ==", + "deprecated": "This module has been superseded by the multiformats module", + "dependencies": { + "@multiformats/base-x": "^4.0.1" + }, + "engines": { + "node": ">=12.0.0", + "npm": ">=6.0.0" + } + }, + "node_modules/@ceramicnetwork/stream-model/node_modules/multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@ceramicnetwork/stream-model/node_modules/multihashes": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/multihashes/-/multihashes-4.0.3.tgz", + "integrity": "sha512-0AhMH7Iu95XjDLxIeuCOOE4t9+vQZsACyKZ9Fxw2pcsRmlX4iCn1mby0hS0bb+nQOVpdQYWPpnyusw4da5RPhA==", + "dependencies": { + "multibase": "^4.0.1", + "uint8arrays": "^3.0.0", + "varint": "^5.0.2" + }, + "engines": { + "node": ">=12.0.0", + "npm": ">=6.0.0" + } + }, + "node_modules/@ceramicnetwork/stream-model/node_modules/multihashes/node_modules/multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "node_modules/@ceramicnetwork/stream-model/node_modules/multihashes/node_modules/uint8arrays": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", + "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", + "dependencies": { + "multiformats": "^9.4.2" + } + }, + "node_modules/@ceramicnetwork/stream-model/node_modules/uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "dependencies": { + "multiformats": "^11.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@ceramicnetwork/stream-tile": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-tile/-/stream-tile-2.20.0.tgz", + "integrity": "sha512-aBHegw35+p+QZbZGKKuaCy3bNrpztNTDlNaedReNlUVvVTSl2VecTBCY7CpbqVjIj6+wE3yBrpUfTOBlTbjyuw==", + "dependencies": { + "@ceramicnetwork/common": "^2.24.0", + "@ceramicnetwork/streamid": "^2.14.0", + "@ipld/dag-cbor": "^7.0.0", + "@stablelib/random": "^1.0.1", + "dids": "^4.0.0", + "fast-json-patch": "^3.1.0", + "lodash.clonedeep": "^4.5.0", + "uint8arrays": "^4.0.3" + } + }, + "node_modules/@ceramicnetwork/stream-tile/node_modules/multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@ceramicnetwork/stream-tile/node_modules/uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "dependencies": { + "multiformats": "^11.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@ceramicnetwork/streamid": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-2.14.0.tgz", + "integrity": "sha512-Pv28GZA77Zth+aC65NJeimrH4pIl91SKMCBAkOHORk/UCH++HTTItAjhu/RqMCsGpfnsIvZAXwsGqNH7dfJz1A==", + "dependencies": { + "@ipld/dag-cbor": "^7.0.0", + "mapmoize": "^1.2.1", + "multiformats": "^11.0.1", + "uint8arrays": "^4.0.3", + "varint": "^6.0.0" + } + }, + "node_modules/@ceramicnetwork/streamid/node_modules/multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@ceramicnetwork/streamid/node_modules/uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "dependencies": { + "multiformats": "^11.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@ceramicnetwork/streamid/node_modules/varint": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/varint/-/varint-6.0.0.tgz", + "integrity": "sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==" + }, "node_modules/@chainsafe/is-ip": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/@chainsafe/is-ip/-/is-ip-2.0.1.tgz", @@ -2158,6 +2497,204 @@ "node": ">=0.1.90" } }, + "node_modules/@didtools/cacao": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-2.0.0.tgz", + "integrity": "sha512-FpJA/oLA/kahxIUBTLO1MLLiv6BHdUVoyXg80l6umCQytUytnnGvwmmQZa6GucQZkW0jN0FA953H8ELbNrBD0A==", + "dependencies": { + "@ipld/dag-cbor": "^9.0.0", + "apg-js": "^4.1.3", + "caip": "^1.1.0", + "multiformats": "^11.0.1", + "uint8arrays": "^4.0.3" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@didtools/cacao/node_modules/@ipld/dag-cbor": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.0.0.tgz", + "integrity": "sha512-zdsiSiYDEOIDW7mmWOYWC9gukjXO+F8wqxz/LfN7iSwTfIyipC8+UQrCbPupFMRb/33XQTZk8yl3My8vUQBRoA==", + "dependencies": { + "cborg": "^1.10.0", + "multiformats": "^11.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@didtools/cacao/node_modules/multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@didtools/cacao/node_modules/uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "dependencies": { + "multiformats": "^11.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@didtools/pkh-ethereum": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.0.3.tgz", + "integrity": "sha512-+hfVzkk6fd0CifgdNzQ+og2B1q8O7Wmx3IZQz1wejQH8HfjRX0tNL41aw5Df6T9Vzps0R45ULnY46SVdmORg3A==", + "dependencies": { + "@didtools/cacao": "^1.0.0", + "@ethersproject/wallet": "^5.7.0", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@didtools/pkh-ethereum/node_modules/@didtools/cacao": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-1.2.0.tgz", + "integrity": "sha512-y0nMgV8DL0jgHUq0uhjMqrW9p79PopQnugLWx02tss+iR0ahON2cfal20+eFx2p3kXtvaL8U+iByrjmyuokj+A==", + "dependencies": { + "@ipld/dag-cbor": "^7.0.1", + "apg-js": "^4.1.1", + "caip": "^1.1.0", + "multiformats": "^9.5.1", + "uint8arrays": "^4.0.2" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@didtools/pkh-ethereum/node_modules/multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "node_modules/@didtools/pkh-solana": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@didtools/pkh-solana/-/pkh-solana-0.0.4.tgz", + "integrity": "sha512-vV7qUabOYdpCoJHE6mS1teCCgXtYDpUnsT6CrzY7lEsmSB0gw9W14VhfosI2urv2CAJj2xW2Xm4hsrYulngS6w==", + "dependencies": { + "@didtools/cacao": "^1.0.0", + "@stablelib/ed25519": "^1.0.3", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0", + "uint8arrays": "^3.1.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@didtools/pkh-solana/node_modules/@didtools/cacao": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-1.2.0.tgz", + "integrity": "sha512-y0nMgV8DL0jgHUq0uhjMqrW9p79PopQnugLWx02tss+iR0ahON2cfal20+eFx2p3kXtvaL8U+iByrjmyuokj+A==", + "dependencies": { + "@ipld/dag-cbor": "^7.0.1", + "apg-js": "^4.1.1", + "caip": "^1.1.0", + "multiformats": "^9.5.1", + "uint8arrays": "^4.0.2" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@didtools/pkh-solana/node_modules/@didtools/cacao/node_modules/uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "dependencies": { + "multiformats": "^11.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@didtools/pkh-solana/node_modules/@didtools/cacao/node_modules/uint8arrays/node_modules/multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@didtools/pkh-solana/node_modules/multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "node_modules/@didtools/pkh-solana/node_modules/uint8arrays": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", + "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", + "dependencies": { + "multiformats": "^9.4.2" + } + }, + "node_modules/@didtools/pkh-stacks": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@didtools/pkh-stacks/-/pkh-stacks-0.1.0.tgz", + "integrity": "sha512-dEgyHleiIa2afibchNqs07tSqddFS6pX9D5BNxbWH0NAr+FisVCA4nUXajcbd9TUbSuplClfQ4EXjjJAGqlgeg==", + "dependencies": { + "@didtools/cacao": "^2.0.0", + "@stablelib/random": "^1.0.2", + "@stacks/common": "^6.0.0", + "@stacks/encryption": "^6.2.0", + "@stacks/transactions": "^6.2.0", + "caip": "^1.1.0", + "jsontokens": "^4.0.1" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@didtools/pkh-tezos": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@didtools/pkh-tezos/-/pkh-tezos-0.0.2.tgz", + "integrity": "sha512-G23+XLkCiHGsFO7ATW+ApczJzE7iRYV4tI43nBP13/IZ1Bx0ietZLOS84AdeGqZLHtsWqbKjzEX41x7+OfXCWQ==", + "dependencies": { + "@didtools/cacao": "^1.1.0", + "@stablelib/random": "^1.0.2", + "@taquito/utils": "^14.0.0", + "caip": "^1.1.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@didtools/pkh-tezos/node_modules/@didtools/cacao": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-1.2.0.tgz", + "integrity": "sha512-y0nMgV8DL0jgHUq0uhjMqrW9p79PopQnugLWx02tss+iR0ahON2cfal20+eFx2p3kXtvaL8U+iByrjmyuokj+A==", + "dependencies": { + "@ipld/dag-cbor": "^7.0.1", + "apg-js": "^4.1.1", + "caip": "^1.1.0", + "multiformats": "^9.5.1", + "uint8arrays": "^4.0.2" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@didtools/pkh-tezos/node_modules/multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, "node_modules/@discoveryjs/json-ext": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", @@ -2562,6 +3099,25 @@ "@ethersproject/bytes": "^5.7.0" } }, + "node_modules/@ethersproject/basex": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.7.0.tgz", + "integrity": "sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/properties": "^5.7.0" + } + }, "node_modules/@ethersproject/bignumber": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.7.0.tgz", @@ -2623,6 +3179,33 @@ "@ethersproject/bignumber": "^5.7.0" } }, + "node_modules/@ethersproject/contracts": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.7.0.tgz", + "integrity": "sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abi": "^5.7.0", + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/transactions": "^5.7.0" + } + }, "node_modules/@ethersproject/hash": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.7.0.tgz", @@ -2649,6 +3232,70 @@ "@ethersproject/strings": "^5.7.0" } }, + "node_modules/@ethersproject/hdnode": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.7.0.tgz", + "integrity": "sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/basex": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/pbkdf2": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/sha2": "^5.7.0", + "@ethersproject/signing-key": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/wordlists": "^5.7.0" + } + }, + "node_modules/@ethersproject/json-wallets": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz", + "integrity": "sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/hdnode": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/pbkdf2": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "aes-js": "3.0.0", + "scrypt-js": "3.0.1" + } + }, + "node_modules/@ethersproject/json-wallets/node_modules/aes-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz", + "integrity": "sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==" + }, "node_modules/@ethersproject/keccak256": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz", @@ -2701,6 +3348,25 @@ "@ethersproject/logger": "^5.7.0" } }, + "node_modules/@ethersproject/pbkdf2": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz", + "integrity": "sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/sha2": "^5.7.0" + } + }, "node_modules/@ethersproject/properties": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.7.0.tgz", @@ -2719,6 +3385,82 @@ "@ethersproject/logger": "^5.7.0" } }, + "node_modules/@ethersproject/providers": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.2.tgz", + "integrity": "sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/base64": "^5.7.0", + "@ethersproject/basex": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/networks": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/rlp": "^5.7.0", + "@ethersproject/sha2": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/web": "^5.7.0", + "bech32": "1.1.4", + "ws": "7.4.6" + } + }, + "node_modules/@ethersproject/providers/node_modules/ws": { + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", + "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/@ethersproject/random": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.7.0.tgz", + "integrity": "sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0" + } + }, "node_modules/@ethersproject/rlp": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.7.0.tgz", @@ -2738,6 +3480,26 @@ "@ethersproject/logger": "^5.7.0" } }, + "node_modules/@ethersproject/sha2": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.7.0.tgz", + "integrity": "sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "hash.js": "1.1.7" + } + }, "node_modules/@ethersproject/signing-key": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.7.0.tgz", @@ -2812,6 +3574,58 @@ "@ethersproject/signing-key": "^5.7.0" } }, + "node_modules/@ethersproject/units": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/units/-/units-5.7.0.tgz", + "integrity": "sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/logger": "^5.7.0" + } + }, + "node_modules/@ethersproject/wallet": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.7.0.tgz", + "integrity": "sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/hdnode": "^5.7.0", + "@ethersproject/json-wallets": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/signing-key": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/wordlists": "^5.7.0" + } + }, "node_modules/@ethersproject/web": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.7.1.tgz", @@ -2834,6 +3648,28 @@ "@ethersproject/strings": "^5.7.0" } }, + "node_modules/@ethersproject/wordlists": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.7.0.tgz", + "integrity": "sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/strings": "^5.7.0" + } + }, "node_modules/@floating-ui/core": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.0.2.tgz", @@ -2931,6 +3767,20 @@ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, + "node_modules/@ipld/dag-cbor": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-7.0.3.tgz", + "integrity": "sha512-1VVh2huHsuohdXC1bGJNE8WR72slZ9XE2T3wbBBq31dm7ZBatmKLLxrB+XAqafxfRFjv08RZmj/W/ZqaM13AuA==", + "dependencies": { + "cborg": "^1.6.0", + "multiformats": "^9.5.4" + } + }, + "node_modules/@ipld/dag-cbor/node_modules/multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, "node_modules/@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", @@ -4213,6 +5063,65 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "node_modules/@json-rpc-tools/provider": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@json-rpc-tools/provider/-/provider-1.7.6.tgz", + "integrity": "sha512-z7D3xvJ33UfCGv77n40lbzOYjZKVM3k2+5cV7xS8G6SCvKTzMkhkUYuD/qzQUNT4cG/lv0e9mRToweEEVLVVmA==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "dependencies": { + "@json-rpc-tools/utils": "^1.7.6", + "axios": "^0.21.0", + "safe-json-utils": "^1.1.1", + "ws": "^7.4.0" + } + }, + "node_modules/@json-rpc-tools/provider/node_modules/axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "dependencies": { + "follow-redirects": "^1.14.0" + } + }, + "node_modules/@json-rpc-tools/provider/node_modules/ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/@json-rpc-tools/types": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@json-rpc-tools/types/-/types-1.7.6.tgz", + "integrity": "sha512-nDSqmyRNEqEK9TZHtM15uNnDljczhCUdBmRhpNZ95bIPKEDQ+nTDmGMFd2lLin3upc5h2VVVd9tkTDdbXUhDIQ==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "dependencies": { + "keyvaluestorage-interface": "^1.0.0" + } + }, + "node_modules/@json-rpc-tools/utils": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@json-rpc-tools/utils/-/utils-1.7.6.tgz", + "integrity": "sha512-HjA8x/U/Q78HRRe19yh8HVKoZ+Iaoo3YZjakJYxR+rw52NHo6jM+VE9b8+7ygkCFXl/EHID5wh/MkXaE/jGyYw==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "dependencies": { + "@json-rpc-tools/types": "^1.7.6", + "@pedrouid/environment": "^1.0.1" + } + }, "node_modules/@lezer/common": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@lezer/common/-/common-1.0.2.tgz", @@ -4243,6 +5152,83 @@ "@lezer/common": "^1.0.0" } }, + "node_modules/@lit-protocol/sdk-browser": { + "version": "1.1.249", + "resolved": "https://registry.npmjs.org/@lit-protocol/sdk-browser/-/sdk-browser-1.1.249.tgz", + "integrity": "sha512-SFVy1Ha5aZCZvpcxpphMjeNSw/wVtG2v8ZLkyFa5aXIWF/h9ZlXHZYUGsiUYiefjG8DEmNAhcxKiLx03aVuSvw==", + "dependencies": { + "@ethersproject/bytes": "^5.5.0", + "@ethersproject/contracts": "^5.2.0", + "@ethersproject/hash": "^5.4.0", + "@ethersproject/providers": "^5.2.0", + "@ethersproject/strings": "^5.5.0", + "@ethersproject/units": "^5.4.0", + "@ethersproject/wallet": "^5.2.0", + "@walletconnect/ethereum-provider": "1.7.8", + "buffer": "^6.0.3", + "bufferutil": "^4.0.6", + "cross-blob": "^3.0.1", + "jszip": "^3.6.0", + "lit-connect-modal": "^0.1.11", + "lit-siwe": "^1.1.8", + "node-fetch": "^3.2.3", + "pako": "^2.0.4", + "tslib": "^2.3.1", + "tweetnacl": "^1.0.3", + "tweetnacl-util": "^0.15.1", + "utf-8-validate": "^5.0.8" + } + }, + "node_modules/@lit-protocol/sdk-browser/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/@lit-protocol/sdk-browser/node_modules/node-fetch": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.1.tgz", + "integrity": "sha512-cRVc/kyto/7E5shrWca1Wsea4y6tL9iYJE5FBCius3JQfb/4P4I295PfhgbJQBLTx6lATE4z+wK0rPM4VS2uow==", + "dependencies": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" + } + }, + "node_modules/@lit-protocol/sdk-browser/node_modules/pako": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", + "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==" + }, + "node_modules/@lit-protocol/sdk-browser/node_modules/tweetnacl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" + }, "node_modules/@loadable/component": { "version": "5.15.2", "resolved": "https://registry.npmjs.org/@loadable/component/-/component-5.15.2.tgz", @@ -4394,6 +5380,11 @@ "integrity": "sha512-Iozmtbqv0noj0uDDqoL0zNq0VBEfK2YFoMAZoxJe4cwphvLR+JskfF30QhXHOR4m3KrE6NLRYw+U9MRXvifyig==", "dev": true }, + "node_modules/@multiformats/base-x": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@multiformats/base-x/-/base-x-4.0.1.tgz", + "integrity": "sha512-eMk0b9ReBbV23xXU693TAIrLyeO5iTgBZGSJfpqriG8UkYvr/hC9u9pyMlAakDNHWmbhMZCDs6KQO0jzKD8OTw==" + }, "node_modules/@multiformats/mafmt": { "version": "11.0.3", "resolved": "https://registry.npmjs.org/@multiformats/mafmt/-/mafmt-11.0.3.tgz", @@ -4628,6 +5619,28 @@ "node": ">= 10" } }, + "node_modules/@noble/hashes": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.1.5.tgz", + "integrity": "sha512-LTMZiiLc+V4v1Yi16TD6aX2gmtKszNye0pQgbaLqkvhIqP7nVsSaJsWloGQjJfJ8offaoP5GtX3yY5swbcJxxQ==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ] + }, + "node_modules/@noble/secp256k1": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.7.1.tgz", + "integrity": "sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ] + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -5396,6 +6409,33 @@ "node": ">=12.0.0" } }, + "node_modules/@orbisclub/orbis-sdk": { + "version": "0.4.40", + "resolved": "https://registry.npmjs.org/@orbisclub/orbis-sdk/-/orbis-sdk-0.4.40.tgz", + "integrity": "sha512-y4+Z+7lcnVEMoYa9RnRaoi0U6E2+XCbfjrOKbV++d4/j1QjJ3tLB/nQDPgANVgvkIlW+rkLejrIj6UcGz9nH1A==", + "dependencies": { + "@ceramicnetwork/http-client": "^2.13.0-hotfix.0", + "@ceramicnetwork/stream-tile": "^2.12.0-hotfix.0", + "@didtools/pkh-ethereum": "^0.0.3", + "@didtools/pkh-solana": "^0.0.4", + "@didtools/pkh-tezos": "^0.0.2", + "@ethersproject/bytes": "^5.6.1", + "@ethersproject/providers": "^5.7.0", + "@ethersproject/strings": "^5.6.1", + "@lit-protocol/sdk-browser": "^1.1.238", + "@supabase/supabase-js": "^1.35.3", + "axios": "^1.1.3", + "did-session": "^1.0.0", + "key-did-provider-ed25519": "^2.0.1", + "key-did-resolver": "^2.3.0", + "react-image-file-resizer": "^0.4.8" + } + }, + "node_modules/@pedrouid/environment": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@pedrouid/environment/-/environment-1.0.1.tgz", + "integrity": "sha512-HaW78NszGzRZd9SeoI3JD11JqY+lubnaOx7Pewj5pfjqWXOEATpeKIFb9Z4t2WBUK2iryiXX3lzWwmYWgUL0Ug==" + }, "node_modules/@pmmmwh/react-refresh-webpack-plugin": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.7.tgz", @@ -6950,6 +7990,32 @@ } } }, + "node_modules/@scure/base": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.1.tgz", + "integrity": "sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ] + }, + "node_modules/@scure/bip39": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.1.0.tgz", + "integrity": "sha512-pwrPOS16VeTKg98dYXQyIjJEcWfz7/1YJIwxUEPFfQPtc86Ym/1sVgQ2RLoD43AazMk2l/unK4ITySSpW2+82w==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "@noble/hashes": "~1.1.1", + "@scure/base": "~1.1.0" + } + }, "node_modules/@sideway/address": { "version": "4.1.4", "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", @@ -7006,6 +8072,232 @@ "@sinonjs/commons": "^1.7.0" } }, + "node_modules/@spruceid/siwe-parser": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@spruceid/siwe-parser/-/siwe-parser-1.1.3.tgz", + "integrity": "sha512-oQ8PcwDqjGWJvLmvAF2yzd6iniiWxK0Qtz+Dw+gLD/W5zOQJiKIUXwslHOm8VB8OOOKW9vfR3dnPBhHaZDvRsw==", + "dependencies": { + "apg-js": "^4.1.1" + } + }, + "node_modules/@stablelib/aead": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/aead/-/aead-1.0.1.tgz", + "integrity": "sha512-q39ik6sxGHewqtO0nP4BuSe3db5G1fEJE8ukvngS2gLkBXyy6E7pLubhbYgnkDFv6V8cWaxcE4Xn0t6LWcJkyg==" + }, + "node_modules/@stablelib/binary": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/binary/-/binary-1.0.1.tgz", + "integrity": "sha512-ClJWvmL6UBM/wjkvv/7m5VP3GMr9t0osr4yVgLZsLCOz4hGN9gIAFEqnJ0TsSMAN+n840nf2cHZnA5/KFqHC7Q==", + "dependencies": { + "@stablelib/int": "^1.0.1" + } + }, + "node_modules/@stablelib/blake2b": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/blake2b/-/blake2b-1.0.1.tgz", + "integrity": "sha512-B3KyKoBAjkIFeH7romcF96i+pVFYk7K2SBQ1pZvaxV+epSBXJ+n0C66esUhyz6FF+5FbdQVm77C5fzGFcEZpKA==", + "dependencies": { + "@stablelib/binary": "^1.0.1", + "@stablelib/hash": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/bytes": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/bytes/-/bytes-1.0.1.tgz", + "integrity": "sha512-Kre4Y4kdwuqL8BR2E9hV/R5sOrUj6NanZaZis0V6lX5yzqC3hBuVSDXUIBqQv/sCpmuWRiHLwqiT1pqqjuBXoQ==" + }, + "node_modules/@stablelib/chacha": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/chacha/-/chacha-1.0.1.tgz", + "integrity": "sha512-Pmlrswzr0pBzDofdFuVe1q7KdsHKhhU24e8gkEwnTGOmlC7PADzLVxGdn2PoNVBBabdg0l/IfLKg6sHAbTQugg==", + "dependencies": { + "@stablelib/binary": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/chacha20poly1305": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/chacha20poly1305/-/chacha20poly1305-1.0.1.tgz", + "integrity": "sha512-MmViqnqHd1ymwjOQfghRKw2R/jMIGT3wySN7cthjXCBdO+qErNPUBnRzqNpnvIwg7JBCg3LdeCZZO4de/yEhVA==", + "dependencies": { + "@stablelib/aead": "^1.0.1", + "@stablelib/binary": "^1.0.1", + "@stablelib/chacha": "^1.0.1", + "@stablelib/constant-time": "^1.0.1", + "@stablelib/poly1305": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/constant-time/-/constant-time-1.0.1.tgz", + "integrity": "sha512-tNOs3uD0vSJcK6z1fvef4Y+buN7DXhzHDPqRLSXUel1UfqMB1PWNsnnAezrKfEwTLpN0cGH2p9NNjs6IqeD0eg==" + }, + "node_modules/@stablelib/ed25519": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@stablelib/ed25519/-/ed25519-1.0.3.tgz", + "integrity": "sha512-puIMWaX9QlRsbhxfDc5i+mNPMY+0TmQEskunY1rZEBPi1acBCVQAhnsk/1Hk50DGPtVsZtAWQg4NHGlVaO9Hqg==", + "dependencies": { + "@stablelib/random": "^1.0.2", + "@stablelib/sha512": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/hash": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/hash/-/hash-1.0.1.tgz", + "integrity": "sha512-eTPJc/stDkdtOcrNMZ6mcMK1e6yBbqRBaNW55XA1jU8w/7QdnCF0CmMmOD1m7VSkBR44PWrMHU2l6r8YEQHMgg==" + }, + "node_modules/@stablelib/int": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/int/-/int-1.0.1.tgz", + "integrity": "sha512-byr69X/sDtDiIjIV6m4roLVWnNNlRGzsvxw+agj8CIEazqWGOQp2dTYgQhtyVXV9wpO6WyXRQUzLV/JRNumT2w==" + }, + "node_modules/@stablelib/keyagreement": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/keyagreement/-/keyagreement-1.0.1.tgz", + "integrity": "sha512-VKL6xBwgJnI6l1jKrBAfn265cspaWBPAPEc62VBQrWHLqVgNRE09gQ/AnOEyKUWrrqfD+xSQ3u42gJjLDdMDQg==", + "dependencies": { + "@stablelib/bytes": "^1.0.1" + } + }, + "node_modules/@stablelib/poly1305": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/poly1305/-/poly1305-1.0.1.tgz", + "integrity": "sha512-1HlG3oTSuQDOhSnLwJRKeTRSAdFNVB/1djy2ZbS35rBSJ/PFqx9cf9qatinWghC2UbfOYD8AcrtbUQl8WoxabA==", + "dependencies": { + "@stablelib/constant-time": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/random": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@stablelib/random/-/random-1.0.2.tgz", + "integrity": "sha512-rIsE83Xpb7clHPVRlBj8qNe5L8ISQOzjghYQm/dZ7VaM2KHYwMW5adjQjrzTZCchFnNCNhkwtnOBa9HTMJCI8w==", + "dependencies": { + "@stablelib/binary": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/sha256": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/sha256/-/sha256-1.0.1.tgz", + "integrity": "sha512-GIIH3e6KH+91FqGV42Kcj71Uefd/QEe7Dy42sBTeqppXV95ggCcxLTk39bEr+lZfJmp+ghsR07J++ORkRELsBQ==", + "dependencies": { + "@stablelib/binary": "^1.0.1", + "@stablelib/hash": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/sha512": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/sha512/-/sha512-1.0.1.tgz", + "integrity": "sha512-13gl/iawHV9zvDKciLo1fQ8Bgn2Pvf7OV6amaRVKiq3pjQ3UmEpXxWiAfV8tYjUpeZroBxtyrwtdooQT/i3hzw==", + "dependencies": { + "@stablelib/binary": "^1.0.1", + "@stablelib/hash": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/wipe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/wipe/-/wipe-1.0.1.tgz", + "integrity": "sha512-WfqfX/eXGiAd3RJe4VU2snh/ZPwtSjLG4ynQ/vYzvghTh7dHFcI1wl+nrkWG6lGhukOxOsUHfv8dUXr58D0ayg==" + }, + "node_modules/@stablelib/x25519": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@stablelib/x25519/-/x25519-1.0.3.tgz", + "integrity": "sha512-KnTbKmUhPhHavzobclVJQG5kuivH+qDLpe84iRqX3CLrKp881cF160JvXJ+hjn1aMyCwYOKeIZefIH/P5cJoRw==", + "dependencies": { + "@stablelib/keyagreement": "^1.0.1", + "@stablelib/random": "^1.0.2", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/xchacha20": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/xchacha20/-/xchacha20-1.0.1.tgz", + "integrity": "sha512-1YkiZnFF4veUwBVhDnDYwo6EHeKzQK4FnLiO7ezCl/zu64uG0bCCAUROJaBkaLH+5BEsO3W7BTXTguMbSLlWSw==", + "dependencies": { + "@stablelib/binary": "^1.0.1", + "@stablelib/chacha": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/xchacha20poly1305": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/xchacha20poly1305/-/xchacha20poly1305-1.0.1.tgz", + "integrity": "sha512-B1Abj0sMJ8h3HNmGnJ7vHBrAvxuNka6cJJoZ1ILN7iuacXp7sUYcgOVEOTLWj+rtQMpspY9tXSCRLPmN1mQNWg==", + "dependencies": { + "@stablelib/aead": "^1.0.1", + "@stablelib/chacha20poly1305": "^1.0.1", + "@stablelib/constant-time": "^1.0.1", + "@stablelib/wipe": "^1.0.1", + "@stablelib/xchacha20": "^1.0.1" + } + }, + "node_modules/@stacks/common": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@stacks/common/-/common-6.0.0.tgz", + "integrity": "sha512-tETwccvbYvaZ7u3ZucWNMOIPN97r6IPeZXKIFhLc1KSVaWSGEPTtZcwVp+Rz3mu2XgI2pg37SUrOWXSL7OOkDw==", + "dependencies": { + "@types/bn.js": "^5.1.0", + "@types/node": "^18.0.4" + } + }, + "node_modules/@stacks/encryption": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@stacks/encryption/-/encryption-6.5.0.tgz", + "integrity": "sha512-QE1+gy1x6spGkpK5PnZxKoX1hL8eeIYxYa5HNMl4cbdIVKaFgqjoGFKMtTA/tQMc91T/saXLqbQLyh/U4AVpTA==", + "dependencies": { + "@noble/hashes": "1.1.5", + "@noble/secp256k1": "1.7.1", + "@scure/bip39": "1.1.0", + "@stacks/common": "^6.0.0", + "@types/node": "^18.0.4", + "base64-js": "^1.5.1", + "bs58": "^5.0.0", + "ripemd160-min": "^0.0.6", + "varuint-bitcoin": "^1.1.2" + } + }, + "node_modules/@stacks/encryption/node_modules/base-x": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-4.0.0.tgz", + "integrity": "sha512-FuwxlW4H5kh37X/oW59pwTzzTKRzfrrQwhmyspRM7swOEZcHtDZSCt45U6oKgtuFE+WYPblePMVIPR4RZrh/hw==" + }, + "node_modules/@stacks/encryption/node_modules/bs58": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-5.0.0.tgz", + "integrity": "sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ==", + "dependencies": { + "base-x": "^4.0.0" + } + }, + "node_modules/@stacks/network": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@stacks/network/-/network-6.3.0.tgz", + "integrity": "sha512-573ZldQ+Iy0nCCxprXLLvkAo1AMEXncfmMUvqQ+5TN3m7VqCVADtb5G5WzMZsyR4m/k9oPsv076Lmqyl8AtR2A==", + "dependencies": { + "@stacks/common": "^6.0.0", + "cross-fetch": "^3.1.5" + } + }, + "node_modules/@stacks/transactions": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@stacks/transactions/-/transactions-6.5.0.tgz", + "integrity": "sha512-kwE8cZq+QdAum4/LC+lSlAXVvzkdsSHTkCbfg4+VCWPBqA+gdXEqZe6R9SNBtMb8yGQrqUY8uIGRLVCWcXJ8zQ==", + "dependencies": { + "@noble/hashes": "1.1.5", + "@noble/secp256k1": "1.7.1", + "@stacks/common": "^6.0.0", + "@stacks/network": "^6.3.0", + "c32check": "^2.0.0", + "lodash.clonedeep": "^4.5.0" + } + }, "node_modules/@storybook/addon-actions": { "version": "6.5.15", "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-6.5.15.tgz", @@ -16615,6 +17907,59 @@ "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" } }, + "node_modules/@supabase/functions-js": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/@supabase/functions-js/-/functions-js-1.3.4.tgz", + "integrity": "sha512-yYVgkECjv7IZEBKBI3EB5Q7R1p0FJ10g8Q9N7SWKIHUU6i6DnbEGHIMFLyQRm1hmiNWD8fL7bRVEYacmTRJhHw==", + "dependencies": { + "cross-fetch": "^3.1.5" + } + }, + "node_modules/@supabase/gotrue-js": { + "version": "1.24.0", + "resolved": "https://registry.npmjs.org/@supabase/gotrue-js/-/gotrue-js-1.24.0.tgz", + "integrity": "sha512-6PVv7mHCFOxLm6TSBfR7hsq/y3CMKpvzePVR+ZWtlFBTjJ2J87g2OYE9bgC61P5TNeZopUXKw93H92yz0MTALw==", + "dependencies": { + "cross-fetch": "^3.0.6" + } + }, + "node_modules/@supabase/postgrest-js": { + "version": "0.37.4", + "resolved": "https://registry.npmjs.org/@supabase/postgrest-js/-/postgrest-js-0.37.4.tgz", + "integrity": "sha512-x+c2rk1fz9s6f1PrGxCJ0QTUgXPDI0G3ngIqD5sSiXhhCyfl8Q5V92mXl2EYtlDhkiUkjFNrOZFhXVbXOHgvDw==", + "dependencies": { + "cross-fetch": "^3.1.5" + } + }, + "node_modules/@supabase/realtime-js": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@supabase/realtime-js/-/realtime-js-1.7.5.tgz", + "integrity": "sha512-nXuoxt7NE1NTI+G8WBim1K2gkUC8YE3e9evBUG+t6xwd9Sq+sSOrjcE0qJ8/Y631BCnLzlhX6yhFYQFh1oQDOg==", + "dependencies": { + "@types/phoenix": "^1.5.4", + "websocket": "^1.0.34" + } + }, + "node_modules/@supabase/storage-js": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/@supabase/storage-js/-/storage-js-1.7.3.tgz", + "integrity": "sha512-jnIZWqOc9TGclOozgX9v/RWGFCgJAyW/yvmauexgRZhWknUXoA4b2i8tj7vfwE0WTvNRuA5JpXID98rfJeSG7Q==", + "dependencies": { + "cross-fetch": "^3.1.0" + } + }, + "node_modules/@supabase/supabase-js": { + "version": "1.35.7", + "resolved": "https://registry.npmjs.org/@supabase/supabase-js/-/supabase-js-1.35.7.tgz", + "integrity": "sha512-X+qCzmj5sH0dozagbLoK7LzysBaWoivO0gsAUAPPBQkQupQWuBfaOqG18gKhlfL0wp2PL888QzhQNScp/IwUfA==", + "dependencies": { + "@supabase/functions-js": "^1.3.4", + "@supabase/gotrue-js": "^1.22.21", + "@supabase/postgrest-js": "^0.37.4", + "@supabase/realtime-js": "^1.7.5", + "@supabase/storage-js": "^1.7.2" + } + }, "node_modules/@svgr/babel-plugin-add-jsx-attribute": { "version": "6.5.1", "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz", @@ -16891,6 +18236,67 @@ "node": ">=14.16" } }, + "node_modules/@taquito/utils": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/@taquito/utils/-/utils-14.2.0.tgz", + "integrity": "sha512-nuqYdkiRPrca2/ztSPokuhvizlOqCzNHM/fX3mIXl8TWO4JiGr0hhPKeJ1Vk9NCG/Qd1A3iQqNP5PQlDAhe/mw==", + "dependencies": { + "@stablelib/blake2b": "^1.0.1", + "@stablelib/ed25519": "^1.0.3", + "@types/bs58check": "^2.1.0", + "bignumber.js": "^9.1.0", + "blakejs": "^1.2.1", + "bs58check": "^2.1.2", + "buffer": "^6.0.3", + "elliptic": "^6.5.4", + "typedarray-to-buffer": "^4.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@taquito/utils/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/@taquito/utils/node_modules/typedarray-to-buffer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-4.0.0.tgz", + "integrity": "sha512-6dOYeZfS3O9RtRD1caom0sMxgK59b27+IwoNy8RDPsmslSGOyU+mpTamlaIW7aNKi90ZQZ9DFaZL3YRoiSCULQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, "node_modules/@testing-library/dom": { "version": "8.18.1", "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.18.1.tgz", @@ -17088,6 +18494,14 @@ "@types/node": "*" } }, + "node_modules/@types/bs58check": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/bs58check/-/bs58check-2.1.0.tgz", + "integrity": "sha512-OxsysnJQh82vy9DRbOcw9m2j/WiyqZLn0YBhKxdQ+aCwoHj+tWzyCgpwAkr79IfDXZKxc6h7k89T9pwS78CqTQ==", + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/cacheable-request": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", @@ -17371,6 +18785,11 @@ "@types/node": "*" } }, + "node_modules/@types/phoenix": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@types/phoenix/-/phoenix-1.5.5.tgz", + "integrity": "sha512-1eWWT19k0L4ZiTvdXjAvJ9KvW0B8SdiVftQmFPJGTEx78Q4PCSIQDpz+EfkFVR1N4U9gREjlW4JXL8YCIlY0bw==" + }, "node_modules/@types/prettier": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.1.tgz", @@ -18122,9 +19541,33 @@ } }, "node_modules/@walletconnect/environment": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@walletconnect/environment/-/environment-1.0.0.tgz", - "integrity": "sha512-4BwqyWy6KpSvkocSaV7WR3BlZfrxLbJSLkg+j7Gl6pTDE+U55lLhJvQaMuDVazXYxcjBsG09k7UlH7cGiUI5vQ==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@walletconnect/environment/-/environment-1.0.1.tgz", + "integrity": "sha512-T426LLZtHj8e8rYnKfzsw1aG6+M0BT1ZxayMdv/p8yM0MU+eJDISqNY3/bccxRr4LrF9csq02Rhqt08Ibl0VRg==", + "dependencies": { + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/environment/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/ethereum-provider": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@walletconnect/ethereum-provider/-/ethereum-provider-1.7.8.tgz", + "integrity": "sha512-dnl560zFMdK/LD4MD2XwHbWj7RXOaeXWPc9jzDaosLQLAXfA5mKe4XbCFFUPbVMYuyBdRI9NZv3Ci/qDb5wncQ==", + "deprecated": "WalletConnect's v1 SDKs are now deprecated. Please upgrade to a v2 SDK. For details see: https://docs.walletconnect.com/", + "dependencies": { + "@walletconnect/client": "^1.7.8", + "@walletconnect/jsonrpc-http-connection": "^1.0.0", + "@walletconnect/jsonrpc-provider": "^1.0.3", + "@walletconnect/signer-connection": "^1.7.8", + "@walletconnect/types": "^1.7.8", + "@walletconnect/utils": "^1.7.8", + "eip1193-provider": "1.0.1", + "eventemitter3": "4.0.7" + } }, "node_modules/@walletconnect/http-connection": { "version": "1.8.0", @@ -18147,23 +19590,82 @@ "@walletconnect/utils": "^1.8.0" } }, - "node_modules/@walletconnect/jsonrpc-types": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.1.tgz", - "integrity": "sha512-+6coTtOuChCqM+AoYyi4Q83p9l/laI6NvuM2/AHaZFuf0gT0NjW7IX2+86qGyizn7Ptq4AYZmfxurAxTnhefuw==", + "node_modules/@walletconnect/jsonrpc-http-connection": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-http-connection/-/jsonrpc-http-connection-1.0.6.tgz", + "integrity": "sha512-/3zSqDi7JDN06E4qm0NmVYMitngXfh21UWwy8zeJcBeJc+Jcs094EbLsIxtziIIKTCCbT88lWuTjl1ZujxN7cw==", "dependencies": { - "keyvaluestorage-interface": "^1.0.0" + "@walletconnect/jsonrpc-utils": "^1.0.6", + "@walletconnect/safe-json": "^1.0.1", + "cross-fetch": "^3.1.4", + "tslib": "1.14.1" } }, - "node_modules/@walletconnect/jsonrpc-utils": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.3.tgz", - "integrity": "sha512-3yb49bPk16MNLk6uIIHPSHQCpD6UAo1OMOx1rM8cW/MPEAYAzrSW5hkhG7NEUwX9SokRIgnZK3QuQkiyNzBMhQ==", + "node_modules/@walletconnect/jsonrpc-http-connection/node_modules/@walletconnect/safe-json": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@walletconnect/safe-json/-/safe-json-1.0.1.tgz", + "integrity": "sha512-Fm7e31oSYY15NQr8SsLJheKAy5L744udZf2lJKcz6wFmPJEzf7hOF0866o/rrldRzJnjZ4H2GJ45pFudsnLW5A==", "dependencies": { - "@walletconnect/environment": "^1.0.0", - "@walletconnect/jsonrpc-types": "^1.0.1" + "tslib": "1.14.1" } }, + "node_modules/@walletconnect/jsonrpc-http-connection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/jsonrpc-provider": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-provider/-/jsonrpc-provider-1.0.10.tgz", + "integrity": "sha512-g0ffPSpY3P6GqGjWGHsr3yqvQUhj7q2k6pAikoXv5XTXWaJRzFvrlbFkSgxziXsBrwrMZn0qvPufvpN4mMZ5FA==", + "dependencies": { + "@walletconnect/jsonrpc-utils": "^1.0.6", + "@walletconnect/safe-json": "^1.0.1", + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/jsonrpc-provider/node_modules/@walletconnect/safe-json": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@walletconnect/safe-json/-/safe-json-1.0.1.tgz", + "integrity": "sha512-Fm7e31oSYY15NQr8SsLJheKAy5L744udZf2lJKcz6wFmPJEzf7hOF0866o/rrldRzJnjZ4H2GJ45pFudsnLW5A==", + "dependencies": { + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/jsonrpc-provider/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/jsonrpc-types": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.2.tgz", + "integrity": "sha512-CZe8tjJX73OWdHjrBHy7HtAapJ2tT0Q3TYhPBhRxi3643lwPIQWC9En45ldY14TZwgSewkbZ0FtGBZK0G7Bbyg==", + "dependencies": { + "keyvaluestorage-interface": "^1.0.0", + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/jsonrpc-types/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/jsonrpc-utils": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.6.tgz", + "integrity": "sha512-snp0tfkjPiDLQp/jrBewI+9SM33GPV4+Gjgldod6XQ7rFyQ5FZjnBxUkY4xWH0+arNxzQSi6v5iDXjCjSaorpg==", + "dependencies": { + "@walletconnect/environment": "^1.0.1", + "@walletconnect/jsonrpc-types": "^1.0.2", + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/jsonrpc-utils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, "node_modules/@walletconnect/mobile-registry": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/@walletconnect/mobile-registry/-/mobile-registry-1.4.0.tgz", @@ -18198,6 +19700,19 @@ "resolved": "https://registry.npmjs.org/@walletconnect/safe-json/-/safe-json-1.0.0.tgz", "integrity": "sha512-QJzp/S/86sUAgWY6eh5MKYmSfZaRpIlmCJdi5uG4DJlKkZrHEF7ye7gA+VtbVzvTtpM/gRwO2plQuiooIeXjfg==" }, + "node_modules/@walletconnect/signer-connection": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@walletconnect/signer-connection/-/signer-connection-1.8.0.tgz", + "integrity": "sha512-+YAaTAP52MWZJ2wWnqKClKCPlPHBo6reURFe0cWidLADh9mi/kPWGALZ5AENK22zpem1bbKV466rF5Rzvu0ehA==", + "dependencies": { + "@walletconnect/client": "^1.8.0", + "@walletconnect/jsonrpc-types": "^1.0.1", + "@walletconnect/jsonrpc-utils": "^1.0.3", + "@walletconnect/qrcode-modal": "^1.8.0", + "@walletconnect/types": "^1.8.0", + "eventemitter3": "4.0.7" + } + }, "node_modules/@walletconnect/socket-transport": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/@walletconnect/socket-transport/-/socket-transport-1.8.0.tgz", @@ -18981,6 +20496,11 @@ "node": ">= 8" } }, + "node_modules/apg-js": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/apg-js/-/apg-js-4.1.3.tgz", + "integrity": "sha512-XYyDcoBho8OpnWPRnedMwyL+76ovCtsESerHZEfY39dO4IrEqN97mdEYkOyHa0XTX5+3+U5FmpqPLttK0f7n6g==" + }, "node_modules/apollo": { "version": "2.34.0", "resolved": "https://registry.npmjs.org/apollo/-/apollo-2.34.0.tgz", @@ -20692,6 +22212,11 @@ "tweetnacl": "^0.14.3" } }, + "node_modules/bech32": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", + "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==" + }, "node_modules/better-opn": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/better-opn/-/better-opn-2.1.1.tgz", @@ -20739,6 +22264,14 @@ "node": "*" } }, + "node_modules/bigint-mod-arith": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bigint-mod-arith/-/bigint-mod-arith-3.1.2.tgz", + "integrity": "sha512-nx8J8bBeiRR+NlsROFH9jHswW5HO8mgfOSqW0AmjicMMvaONDa8AO+5ViKDUUNytBPWiwfvZP4/Bj4Y3lUfvgQ==", + "engines": { + "node": ">=10.4.0" + } + }, "node_modules/bignumber.js": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.0.tgz", @@ -20782,6 +22315,11 @@ "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz", "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==" }, + "node_modules/blob-polyfill": { + "version": "7.0.20220408", + "resolved": "https://registry.npmjs.org/blob-polyfill/-/blob-polyfill-7.0.20220408.tgz", + "integrity": "sha512-oD8Ydw+5lNoqq+en24iuPt1QixdPpe/nUF8azTHnviCZYu9zUC+TwdzIp5orpblJosNlgNbVmmAb//c6d6ImUQ==" + }, "node_modules/bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", @@ -21278,6 +22816,23 @@ "node": ">= 0.8" } }, + "node_modules/c32check": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/c32check/-/c32check-2.0.0.tgz", + "integrity": "sha512-rpwfAcS/CMqo0oCqDf3r9eeLgScRE3l/xHDCXhM3UyrfvIn7PrLq63uHh7yYbv8NzaZn5MVsVhIRpQ+5GZ5HyA==", + "dependencies": { + "@noble/hashes": "^1.1.2", + "base-x": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/c32check/node_modules/base-x": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-4.0.0.tgz", + "integrity": "sha512-FuwxlW4H5kh37X/oW59pwTzzTKRzfrrQwhmyspRM7swOEZcHtDZSCt45U6oKgtuFE+WYPblePMVIPR4RZrh/hw==" + }, "node_modules/c8": { "version": "7.12.0", "resolved": "https://registry.npmjs.org/c8/-/c8-7.12.0.tgz", @@ -21513,6 +23068,11 @@ "node": ">=8" } }, + "node_modules/caip": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/caip/-/caip-1.1.0.tgz", + "integrity": "sha512-yOO3Fu4ygyKYAdznuoaqschMKIZzcdgyMpBNtrIfrUhnOeaOWG+dh0c13wcOS6B/46IGGbncoyzJlio79jU7rw==" + }, "node_modules/call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -21646,6 +23206,11 @@ } ] }, + "node_modules/canonicalize": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/canonicalize/-/canonicalize-1.0.8.tgz", + "integrity": "sha512-0CNTVCLZggSh7bc5VkX5WWPWO+cyZbNd07IHIsSXLia/eAq+r836hgk+8BKoEh7949Mda87VUOitx5OddVj64A==" + }, "node_modules/capital-case": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/capital-case/-/capital-case-1.0.4.tgz", @@ -21696,6 +23261,14 @@ "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==" }, + "node_modules/cborg": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-1.10.1.tgz", + "integrity": "sha512-et6Qm8MOUY2kCWa5GKk2MlBVoPjHv0hQBmlzI/Z7+5V3VJCeIkGehIB3vWknNsm2kOkAIs6wEKJFJo8luWQQ/w==", + "bin": { + "cborg": "cli.js" + } + }, "node_modules/ccount": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", @@ -22561,6 +24134,14 @@ "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" }, + "node_modules/colors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.3.0.tgz", + "integrity": "sha512-EDpX3a7wHMWFA7PUHWPHNWqOxIIRSJetuwl0AS5Oi/5FMV8kWm69RTlgm00GKjBO1xFHMtBbL49yRtMMdticBw==", + "engines": { + "node": ">=0.1.90" + } + }, "node_modules/combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -23388,6 +24969,18 @@ "resolved": "https://registry.npmjs.org/crelt/-/crelt-1.0.5.tgz", "integrity": "sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA==" }, + "node_modules/cross-blob": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/cross-blob/-/cross-blob-3.0.2.tgz", + "integrity": "sha512-u+7xq68MAjIqvoEKrdgIEupKJNBeU8MSl/cpfPmJ3rm9yvxrgbMPr8TkZS9qnwCgiVC8BsEt9kDkeD7He2zmNA==", + "dependencies": { + "blob-polyfill": "^7.0.20220408", + "fetch-blob": "^3.2.0" + }, + "engines": { + "node": "^12.20 || >=14.13" + } + }, "node_modules/cross-env": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz", @@ -23762,6 +25355,24 @@ "type": "^1.0.1" } }, + "node_modules/dag-jose-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/dag-jose-utils/-/dag-jose-utils-3.0.0.tgz", + "integrity": "sha512-gu+XutOTy3kD8fDcA1SMjZ2U0mUOb/hxoRVZaMCizXN7Ssbc5dKOzeXQ4GquV4BdQzs3w5Y7irOpn2plFPIJfg==", + "dependencies": { + "@ipld/dag-cbor": "^7.0.1", + "multiformats": "^11.0.1" + } + }, + "node_modules/dag-jose-utils/node_modules/multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, "node_modules/dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", @@ -23773,6 +25384,14 @@ "node": ">=0.10" } }, + "node_modules/data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", + "engines": { + "node": ">= 12" + } + }, "node_modules/data-urls": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", @@ -24132,6 +25751,214 @@ "detect-port": "bin/detect-port.js" } }, + "node_modules/did-jwt": { + "version": "6.11.5", + "resolved": "https://registry.npmjs.org/did-jwt/-/did-jwt-6.11.5.tgz", + "integrity": "sha512-7Ew4rftHd2RTxLDfAjN6cz0wCMjTzmRBOtFBVuXUPguJF6ct01hJqlM1fr+IuI+bW7gH9QSeh9kDrvlOJnkf9w==", + "dependencies": { + "@stablelib/ed25519": "^1.0.2", + "@stablelib/random": "^1.0.1", + "@stablelib/sha256": "^1.0.1", + "@stablelib/x25519": "^1.0.2", + "@stablelib/xchacha20poly1305": "^1.0.1", + "bech32": "^2.0.0", + "canonicalize": "^1.0.8", + "did-resolver": "^4.0.0", + "elliptic": "^6.5.4", + "js-sha3": "^0.8.0", + "multiformats": "^9.6.5", + "uint8arrays": "^3.0.0" + } + }, + "node_modules/did-jwt/node_modules/bech32": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz", + "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==" + }, + "node_modules/did-jwt/node_modules/multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "node_modules/did-jwt/node_modules/uint8arrays": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", + "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", + "dependencies": { + "multiformats": "^9.4.2" + } + }, + "node_modules/did-resolver": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/did-resolver/-/did-resolver-4.1.0.tgz", + "integrity": "sha512-S6fWHvCXkZg2IhS4RcVHxwuyVejPR7c+a4Go0xbQ9ps5kILa8viiYQgrM4gfTyeTjJ0ekgJH9gk/BawTpmkbZA==" + }, + "node_modules/did-session": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/did-session/-/did-session-1.0.0.tgz", + "integrity": "sha512-hLKlfPGoEp9T6malsuNyF1bCrU0AcECZJ1SP2lvbHiic7ko2PdiZPmmVipVId+ZqmshU4AlLLEozZc9Iu1X1UA==", + "dependencies": { + "@ceramicnetwork/stream-tile": "^2.4.4", + "@stablelib/random": "^1.0.1", + "dids": "^3.2.0", + "key-did-provider-ed25519": "^2.0.1", + "key-did-resolver": "^2.0.6", + "uint8arrays": "^3.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/did-session/node_modules/@didtools/cacao": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-1.2.0.tgz", + "integrity": "sha512-y0nMgV8DL0jgHUq0uhjMqrW9p79PopQnugLWx02tss+iR0ahON2cfal20+eFx2p3kXtvaL8U+iByrjmyuokj+A==", + "dependencies": { + "@ipld/dag-cbor": "^7.0.1", + "apg-js": "^4.1.1", + "caip": "^1.1.0", + "multiformats": "^9.5.1", + "uint8arrays": "^4.0.2" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/did-session/node_modules/@didtools/cacao/node_modules/uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "dependencies": { + "multiformats": "^11.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/did-session/node_modules/@didtools/cacao/node_modules/uint8arrays/node_modules/multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/did-session/node_modules/@didtools/pkh-ethereum": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.0.1.tgz", + "integrity": "sha512-2hDt1f60WXUNWMVS9S9b0pmXl78ivkVxZJHeyBUkbz7O7To1rHvlgvJ0gFJ3sKVemI1llpClzwd3PEjZfGwiUw==", + "dependencies": { + "@didtools/cacao": "^1.0.0", + "@ethersproject/wallet": "^5.7.0", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/did-session/node_modules/dag-jose-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dag-jose-utils/-/dag-jose-utils-2.0.0.tgz", + "integrity": "sha512-vE6EyhjSh+dfr8hbs/gLk0v98h2ekjy6r6pXvmB4SvO6awalt95LEetG0QDh5rmMYE3FO8ynp3xrCYsAHHZOlg==", + "dependencies": { + "@ipld/dag-cbor": "^7.0.1", + "multiformats": "^9.5.1" + } + }, + "node_modules/did-session/node_modules/did-resolver": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/did-resolver/-/did-resolver-3.2.2.tgz", + "integrity": "sha512-Eeo2F524VM5N3W4GwglZrnul2y6TLTwMQP3In62JdG34NZoqihYyOZLk+5wUW8sSgvIYIcJM8Dlt3xsdKZZ3tg==" + }, + "node_modules/did-session/node_modules/dids": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/dids/-/dids-3.4.0.tgz", + "integrity": "sha512-hXHkOTL9E5R4rbQwDVOktiiEq57Y6yWOEYjev1ojOpMr2Rkx9g8bw0v6BQIsbPB94aaYxUCtaejNl2FrublfiA==", + "dependencies": { + "@didtools/cacao": "^1.0.0", + "@didtools/pkh-ethereum": "^0.0.1", + "@stablelib/random": "^1.0.1", + "dag-jose-utils": "^2.0.0", + "did-jwt": "^6.0.0", + "did-resolver": "^3.1.5", + "multiformats": "^9.4.10", + "rpc-utils": "^0.6.1", + "uint8arrays": "^3.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/did-session/node_modules/multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "node_modules/did-session/node_modules/uint8arrays": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", + "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", + "dependencies": { + "multiformats": "^9.4.2" + } + }, + "node_modules/dids": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/dids/-/dids-4.0.0.tgz", + "integrity": "sha512-sNba/y3XSXkhMYlWw3JBGST+AOySIqZ1M/rsvoxSoLvcempi4MbtwqCTkBzuiKiKKmbLXZbL/rFIr0HUSRMg1Q==", + "dependencies": { + "@didtools/cacao": "^2.0.0", + "@didtools/pkh-ethereum": "^0.1.0", + "@stablelib/random": "^1.0.1", + "dag-jose-utils": "^3.0.0", + "did-jwt": "^6.11.1", + "did-resolver": "^4.0.1", + "multiformats": "^11.0.1", + "rpc-utils": "^0.6.1", + "uint8arrays": "^4.0.3" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/dids/node_modules/@didtools/pkh-ethereum": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.1.0.tgz", + "integrity": "sha512-Abmc6uvWU8zkOrQbPUAsRtTW293vhx+rzd+/bbduTLrRGEqZ3niakQkxMqvQKZ6/9w+n0IjQVXSHE5vzc5cAeg==", + "dependencies": { + "@didtools/cacao": "^2.0.0", + "@ethersproject/wallet": "^5.7.0", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/dids/node_modules/multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==", + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/dids/node_modules/uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "dependencies": { + "multiformats": "^11.0.0" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.0.0" + } + }, "node_modules/diff": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", @@ -24409,6 +26236,14 @@ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, + "node_modules/eip1193-provider": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/eip1193-provider/-/eip1193-provider-1.0.1.tgz", + "integrity": "sha512-kSuqwQ26d7CzuS/t3yRXo2Su2cVH0QfvyKbr2H7Be7O5YDyIq4hQGCNTo5wRdP07bt+E2R/8nPCzey4ojBHf7g==", + "dependencies": { + "@json-rpc-tools/provider": "^1.5.5" + } + }, "node_modules/ejs": { "version": "3.1.8", "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.8.tgz", @@ -26730,6 +28565,11 @@ "integrity": "sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw==", "dev": true }, + "node_modules/fast-json-patch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.1.tgz", + "integrity": "sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ==" + }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", @@ -26784,6 +28624,28 @@ "bser": "2.1.1" } }, + "node_modules/fetch-blob": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", + "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "paypal", + "url": "https://paypal.me/jimmywarting" + } + ], + "dependencies": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + }, + "engines": { + "node": "^12.20 || >= 14.13" + } + }, "node_modules/fetch-retry": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/fetch-retry/-/fetch-retry-5.0.3.tgz", @@ -26909,7 +28771,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-1.1.0.tgz", "integrity": "sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -27044,6 +28905,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "bin": { + "flat": "cli.js" + } + }, "node_modules/flat-cache": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", @@ -27343,6 +29212,17 @@ "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.1.tgz", "integrity": "sha512-EFRDrsMm/kyqbTQocNvRXMLjc7Es2Vk+IQFx/YW7hkUH1eBl4J1fqiP34l74Yt0pFLCNpc06fkbVk00008mzjg==" }, + "node_modules/formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", + "dependencies": { + "fetch-blob": "^3.1.2" + }, + "engines": { + "node": ">=12.20.0" + } + }, "node_modules/formik": { "version": "2.2.9", "resolved": "https://registry.npmjs.org/formik/-/formik-2.2.9.tgz", @@ -30081,6 +31961,11 @@ "node": ">=8" } }, + "node_modules/it-first": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/it-first/-/it-first-1.0.7.tgz", + "integrity": "sha512-nvJKZoBpZD/6Rtde6FXqwDqDZGF1sCADmr2Zoc0hZsIvnE449gRFnGctxDf09Bzc/FWnHXAdaHVIetY6lrE0/g==" + }, "node_modules/iterate-iterator": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/iterate-iterator/-/iterate-iterator-1.0.2.tgz", @@ -32535,6 +34420,14 @@ "node": ">=8" } }, + "node_modules/jet-logger": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/jet-logger/-/jet-logger-1.2.2.tgz", + "integrity": "sha512-Kbw4G3BC45+Umz5XBnsE50pHplruJTVKGRy5X1YfCu3Te7f8ggTL8Tm10YegAD2QP41MVQ3o/Y9MFAZzfythqw==", + "dependencies": { + "colors": "1.3.0" + } + }, "node_modules/joi": { "version": "17.7.0", "resolved": "https://registry.npmjs.org/joi/-/joi-17.7.0.tgz", @@ -32988,6 +34881,11 @@ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" }, + "node_modules/json-schema-typed": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-8.0.1.tgz", + "integrity": "sha512-XQmWYj2Sm4kn4WeTYvmpKEbyPsL7nBsb647c7pMe6l02/yx2+Jfc4dT6UZkEXnIUb5LhD55r2HPsJ1milQ4rDg==" + }, "node_modules/json-stable-stringify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", @@ -33038,6 +34936,16 @@ "node": "*" } }, + "node_modules/jsontokens": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/jsontokens/-/jsontokens-4.0.1.tgz", + "integrity": "sha512-+MO415LEN6M+3FGsRz4wU20g7N2JA+2j9d9+pGaNJHviG4L8N0qzavGyENw6fJqsq9CcrHOIL6iWX5yeTZ86+Q==", + "dependencies": { + "@noble/hashes": "^1.1.2", + "@noble/secp256k1": "^1.6.3", + "base64-js": "^1.5.1" + } + }, "node_modules/jsprim": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", @@ -33065,6 +34973,44 @@ "node": ">=4.0" } }, + "node_modules/jszip": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", + "dependencies": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "setimmediate": "^1.0.5" + } + }, + "node_modules/jszip/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/jszip/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/jszip/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, "node_modules/junk": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/junk/-/junk-3.1.0.tgz", @@ -33088,6 +35034,65 @@ "node": ">=10.0.0" } }, + "node_modules/key-did-provider-ed25519": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/key-did-provider-ed25519/-/key-did-provider-ed25519-2.0.1.tgz", + "integrity": "sha512-FaB2g7zUAeN/bLaFl2YSNQx9NsxgDd/3TR1YGvoXLhENsvZBdyA2V7hX8/MZhZ5jm82wL5lRw3O4UXuz/pJANQ==", + "dependencies": { + "@stablelib/ed25519": "^1.0.2", + "did-jwt": "^6.0.0", + "fast-json-stable-stringify": "^2.1.0", + "rpc-utils": "^0.6.2", + "uint8arrays": "^3.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/key-did-provider-ed25519/node_modules/multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "node_modules/key-did-provider-ed25519/node_modules/uint8arrays": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", + "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", + "dependencies": { + "multiformats": "^9.4.2" + } + }, + "node_modules/key-did-resolver": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-2.3.0.tgz", + "integrity": "sha512-q3ChQILPe+u8qkpWP196fEoxsygEyjM3K25qrGaMSolVaUdfgj7qwMz2DE/GRIlfNK2HgKW6KXA8RZMy8aL4MA==", + "dependencies": { + "@stablelib/ed25519": "^1.0.2", + "bigint-mod-arith": "^3.1.0", + "multiformats": "^9.5.2", + "nist-weierstrauss": "^1.3.0", + "uint8arrays": "^3.0.0", + "varint": "^6.0.0" + } + }, + "node_modules/key-did-resolver/node_modules/multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "node_modules/key-did-resolver/node_modules/uint8arrays": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", + "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", + "dependencies": { + "multiformats": "^9.4.2" + } + }, + "node_modules/key-did-resolver/node_modules/varint": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/varint/-/varint-6.0.0.tgz", + "integrity": "sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==" + }, "node_modules/keyv": { "version": "4.5.2", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.2.tgz", @@ -33302,6 +35307,19 @@ "node": ">= 0.8.0" } }, + "node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "dependencies": { + "immediate": "~3.0.5" + } + }, + "node_modules/lie/node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==" + }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", @@ -33473,6 +35491,30 @@ "node": ">=6" } }, + "node_modules/lit-connect-modal": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/lit-connect-modal/-/lit-connect-modal-0.1.11.tgz", + "integrity": "sha512-EG6pcCqdxZQJt3MPDq3gJ5Sz4E5sJdydtAF7VFJu6z6GDHO1Ybp8WrTx8CUnHiF54/MQBRi6Nb7cbTvv+BKWvQ==", + "dependencies": { + "micromodal": "^0.4.10" + } + }, + "node_modules/lit-siwe": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/lit-siwe/-/lit-siwe-1.1.8.tgz", + "integrity": "sha512-gXI8GG0GAClw6G7T9p4p6Kn9ywDo8j2d90ShaYArJdsqqO9gwXfzxF84SMeY+bpsNqqQ3FahrhEwTCHd6w7wNw==", + "dependencies": { + "@spruceid/siwe-parser": "1.1.3", + "@stablelib/random": "^1.0.1", + "apg-js": "^4.1.1" + }, + "peerDependencies": { + "@ethersproject/contracts": "^5.2.0", + "@ethersproject/hash": "^5.4.0", + "@ethersproject/providers": "^5.2.0", + "@ethersproject/wallet": "^5.2.0" + } + }, "node_modules/load-json-file": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", @@ -33567,6 +35609,11 @@ "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" }, + "node_modules/lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==" + }, "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -33772,6 +35819,18 @@ "node": ">=4" } }, + "node_modules/logfmt": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/logfmt/-/logfmt-1.3.2.tgz", + "integrity": "sha512-U0lelcaGWEfEITZQXs8y5HrJp2xa0BJ+KDfkkLJRmuKbQIEVGNv145FbaNekY4ZYHJSBBx8NLJitaPtRqLEkxQ==", + "dependencies": { + "split": "0.2.x", + "through": "2.3.x" + }, + "bin": { + "logfmt": "bin/logfmt" + } + }, "node_modules/logkitty": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/logkitty/-/logkitty-0.7.1.tgz", @@ -34071,6 +36130,14 @@ "node": ">=0.10.0" } }, + "node_modules/mapmoize": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/mapmoize/-/mapmoize-1.2.1.tgz", + "integrity": "sha512-LK8ArSM1wbfRPTnl+LpdxW1pwkfY6GxtM9p+STr6aDtM7ImR8jLuf4ekei43/AN0f7XDSrohzwwK57eGHSDAuA==", + "engines": { + "node": "^14.0.0 || ^16.0.0 || >=18.0.0" + } + }, "node_modules/markdown-escapes": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", @@ -36435,6 +38502,14 @@ "node": ">=8.6" } }, + "node_modules/micromodal": { + "version": "0.4.10", + "resolved": "https://registry.npmjs.org/micromodal/-/micromodal-0.4.10.tgz", + "integrity": "sha512-BUrEnzMPFBwK8nOE4xUDYHLrlGlLULQVjpja99tpJQPSUEWgw3kTLp1n1qv0HmKU29AiHE7Y7sMLiRziDK4ghQ==", + "engines": { + "node": ">=10" + } + }, "node_modules/miller-rabin": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", @@ -37088,6 +39163,28 @@ "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" }, + "node_modules/nist-weierstrauss": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/nist-weierstrauss/-/nist-weierstrauss-1.6.1.tgz", + "integrity": "sha512-FpjCOnPV/s3ZVIkeldCVSml2K4lruabPbBgoEitpCK1JL0KTVoWb56CFTU6rZn5i6VqAjdwcOp0FDwJACPmeFA==", + "dependencies": { + "multiformats": "^9.6.5", + "uint8arrays": "^2.1.4" + } + }, + "node_modules/nist-weierstrauss/node_modules/multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "node_modules/nist-weierstrauss/node_modules/uint8arrays": { + "version": "2.1.10", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-2.1.10.tgz", + "integrity": "sha512-Q9/hhJa2836nQfEJSZTmr+pg9+cDJS9XEAp7N2Vg5MzL3bK/mkMVfjscRGYruP9jNda6MAdf4QD/y78gSzkp6A==", + "dependencies": { + "multiformats": "^9.4.2" + } + }, "node_modules/no-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", @@ -37143,6 +39240,24 @@ "node": "*" } }, + "node_modules/node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" + } + ], + "engines": { + "node": ">=10.5.0" + } + }, "node_modules/node-fetch": { "version": "2.6.7", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", @@ -37571,6 +39686,37 @@ "node": ">= 0.4" } }, + "node_modules/object-sizeof": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/object-sizeof/-/object-sizeof-2.6.1.tgz", + "integrity": "sha512-a7VJ1Zx7ZuHceKwjgfsSqzV/X0PVGvpZz7ho3Dn4Cs0LLcR5e5WuV+gsbizmplD8s0nAXMJmckKB2rkSiPm/Gg==", + "dependencies": { + "buffer": "^6.0.3" + } + }, + "node_modules/object-sizeof/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, "node_modules/object-treeify": { "version": "1.1.33", "resolved": "https://registry.npmjs.org/object-treeify/-/object-treeify-1.1.33.tgz", @@ -38089,8 +40235,7 @@ "node_modules/pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" }, "node_modules/parallel-transform": { "version": "1.2.0", @@ -39760,6 +41905,11 @@ "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-2.0.4.tgz", "integrity": "sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw==" }, + "node_modules/react-image-file-resizer": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/react-image-file-resizer/-/react-image-file-resizer-0.4.8.tgz", + "integrity": "sha512-Ue7CfKnSlsfJ//SKzxNMz8avDgDSpWQDOnTKOp/GNRFJv4dO9L5YGHNEnj40peWkXXAK2OK0eRIoXhOYpUzUTQ==" + }, "node_modules/react-is": { "version": "18.2.0", "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", @@ -40090,6 +42240,14 @@ "async-limiter": "~1.0.0" } }, + "node_modules/react-string-replace": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/react-string-replace/-/react-string-replace-1.1.0.tgz", + "integrity": "sha512-N6RalSDFGbOHs0IJi1H611WbZsvk3ZT47Jl2JEXFbiS3kTwsdCYij70Keo/tWtLy7sfhDsYm7CwNM/WmjXIaMw==", + "engines": { + "node": ">=0.12.0" + } + }, "node_modules/react-tabs": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/react-tabs/-/react-tabs-6.0.0.tgz", @@ -41626,6 +43784,14 @@ "inherits": "^2.0.1" } }, + "node_modules/ripemd160-min": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/ripemd160-min/-/ripemd160-min-0.0.6.tgz", + "integrity": "sha512-+GcJgQivhs6S9qvLogusiTcS9kQUfgR75whKuy5jIhuiOfQuJ8fjqxV6EGD5duH1Y/FawFUMtMhyeq3Fbnib8A==", + "engines": { + "node": ">=8" + } + }, "node_modules/rlp": { "version": "2.2.7", "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.7.tgz", @@ -41665,6 +43831,17 @@ "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", "dev": true }, + "node_modules/rpc-utils": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rpc-utils/-/rpc-utils-0.6.2.tgz", + "integrity": "sha512-kzk1OflbBckfDBAo8JwsmtQSHzj+6hxRt5G+u8A8ZSmunBw1nhWvRkSq8j1+EvWBqBRLy1aiGLUW5644CZqQtA==", + "dependencies": { + "nanoid": "^3.3.1" + }, + "engines": { + "node": ">=14.14" + } + }, "node_modules/rrweb-snapshot": { "version": "1.1.14", "resolved": "https://registry.npmjs.org/rrweb-snapshot/-/rrweb-snapshot-1.1.14.tgz", @@ -41765,6 +43942,11 @@ "events": "^3.0.0" } }, + "node_modules/safe-json-utils": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/safe-json-utils/-/safe-json-utils-1.1.1.tgz", + "integrity": "sha512-SAJWGKDs50tAbiDXLf89PDwt9XYkWyANFWVzn4dTXl5QyI8t2o/bW5/OJl3lvc2WVU4MEpTo9Yz5NVFNsp+OJQ==" + }, "node_modules/safe-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz", @@ -43102,6 +45284,17 @@ "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", "dev": true }, + "node_modules/split": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/split/-/split-0.2.10.tgz", + "integrity": "sha512-e0pKq+UUH2Xq/sXbYpZBZc3BawsfDZ7dgv+JtRTUPNcvF5CMR4Y9cvJqkMY0MoxWzTHvZuz1beg6pNEKlszPiQ==", + "dependencies": { + "through": "2" + }, + "engines": { + "node": "*" + } + }, "node_modules/split-on-first": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz", @@ -44380,6 +46573,11 @@ "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", "peer": true }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" + }, "node_modules/through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", @@ -44895,6 +47093,11 @@ "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==" }, + "node_modules/tweetnacl-util": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz", + "integrity": "sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==" + }, "node_modules/type": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", @@ -45689,6 +47892,14 @@ "resolved": "https://registry.npmjs.org/varint/-/varint-5.0.2.tgz", "integrity": "sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==" }, + "node_modules/varuint-bitcoin": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/varuint-bitcoin/-/varuint-bitcoin-1.1.2.tgz", + "integrity": "sha512-4EVb+w4rx+YfVM32HQX42AbbT7/1f5zwAYhIujKXKk8NQK+JfRVl3pqT3hjNn/L+RstigmGGKVwHA/P0wgITZw==", + "dependencies": { + "safe-buffer": "^5.1.1" + } + }, "node_modules/vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", @@ -46195,6 +48406,14 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/web-streams-polyfill": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz", + "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==", + "engines": { + "node": ">= 8" + } + }, "node_modules/web3": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/web3/-/web3-1.8.1.tgz", @@ -48692,6 +50911,293 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, + "@ceramicnetwork/common": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/common/-/common-2.24.0.tgz", + "integrity": "sha512-Q3GBlJd5XrSDCP/6KJy2sz+5MfAVhMrEDoW9SIaxG19xPC+QGeMRouNbZf+qfe3tGQintaRn3FhoqSAtjFxE1g==", + "requires": { + "@ceramicnetwork/streamid": "^2.14.0", + "@didtools/cacao": "^2.0.0", + "@didtools/pkh-ethereum": "^0.1.0", + "@didtools/pkh-solana": "^0.1.0", + "@didtools/pkh-stacks": "^0.1.0", + "@didtools/pkh-tezos": "^0.2.1", + "@stablelib/random": "^1.0.1", + "caip": "~1.1.0", + "cross-fetch": "^3.1.4", + "flat": "^5.0.2", + "it-first": "^1.0.7", + "jet-logger": "1.2.2", + "lodash.clonedeep": "^4.5.0", + "logfmt": "^1.3.2", + "multiformats": "^11.0.1", + "rxjs": "^7.5.2", + "uint8arrays": "^4.0.3" + }, + "dependencies": { + "@didtools/pkh-ethereum": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.1.0.tgz", + "integrity": "sha512-Abmc6uvWU8zkOrQbPUAsRtTW293vhx+rzd+/bbduTLrRGEqZ3niakQkxMqvQKZ6/9w+n0IjQVXSHE5vzc5cAeg==", + "requires": { + "@didtools/cacao": "^2.0.0", + "@ethersproject/wallet": "^5.7.0", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0" + } + }, + "@didtools/pkh-solana": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@didtools/pkh-solana/-/pkh-solana-0.1.0.tgz", + "integrity": "sha512-/0pWsM/TCdHjYZMy4yNcQav2SNj+3W/6RmMebUxdFDKVZFss3ULXIJD0+qsrMFpVNZw3sW/xjFs3He+/fl4HvA==", + "requires": { + "@didtools/cacao": "^2.0.0", + "@stablelib/ed25519": "^1.0.3", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0", + "uint8arrays": "^4.0.3" + } + }, + "@didtools/pkh-tezos": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@didtools/pkh-tezos/-/pkh-tezos-0.2.1.tgz", + "integrity": "sha512-QKf73frCwcxpY8qZkLqt7EP2eGieltRW5GU/xmMPfgrNLYQrfFRYjF8Rmp9wf16cBuRjCRD0WuxQ8rV/++dseg==", + "requires": { + "@didtools/cacao": "^2.0.0", + "@stablelib/blake2b": "^1.0.1", + "@stablelib/ed25519": "^1.0.3", + "@stablelib/random": "^1.0.2", + "@stablelib/sha256": "^1.0.1", + "caip": "^1.1.0", + "uint8arrays": "^4.0.3" + } + }, + "multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==" + }, + "rxjs": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", + "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", + "requires": { + "tslib": "^2.1.0" + } + }, + "uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "requires": { + "multiformats": "^11.0.0" + } + } + } + }, + "@ceramicnetwork/http-client": { + "version": "2.21.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/http-client/-/http-client-2.21.0.tgz", + "integrity": "sha512-endVa4X3M727VcDVK11z52yxK9Okcdk7/t6gRqNS8kG9EIlhjwZV82WOi0LoiaxayF496F9xy8bAATbqnXXrgA==", + "requires": { + "@ceramicnetwork/common": "^2.24.0", + "@ceramicnetwork/stream-caip10-link": "^2.19.0", + "@ceramicnetwork/stream-model": "^1.6.0", + "@ceramicnetwork/stream-model-instance": "^1.6.0", + "@ceramicnetwork/stream-tile": "^2.20.0", + "@ceramicnetwork/streamid": "^2.14.0", + "query-string": "^7.1.0", + "rxjs": "^7.5.2" + }, + "dependencies": { + "query-string": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-7.1.3.tgz", + "integrity": "sha512-hh2WYhq4fi8+b+/2Kg9CEge4fDPvHS534aOOvOZeQ3+Vf2mCFsaFBYj0i+iXcAq6I9Vzp5fjMFBlONvayDC1qg==", + "requires": { + "decode-uri-component": "^0.2.2", + "filter-obj": "^1.1.0", + "split-on-first": "^1.0.0", + "strict-uri-encode": "^2.0.0" + } + }, + "rxjs": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", + "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", + "requires": { + "tslib": "^2.1.0" + } + } + } + }, + "@ceramicnetwork/stream-caip10-link": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-caip10-link/-/stream-caip10-link-2.19.0.tgz", + "integrity": "sha512-h9kXbAsngj7e3amHE2vIPAyCKa537rLdc41xfYX1NSI8vDN7WwWht5xzT3DkRO91AmqGKPvCh801IcjqVHRC/w==", + "requires": { + "@ceramicnetwork/common": "^2.24.0", + "@ceramicnetwork/streamid": "^2.14.0", + "caip": "~1.1.0", + "did-resolver": "^4.0.1", + "lodash.clonedeep": "^4.5.0" + } + }, + "@ceramicnetwork/stream-model": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model/-/stream-model-1.6.0.tgz", + "integrity": "sha512-rdX2bZmYLbpjQexLWBOGe37jg+5FV+1/GlwAleZjgBS6zc0mzWpwn901FmuXB+P6Lan2fQ1py5EOICoVYklqnA==", + "requires": { + "@ceramicnetwork/common": "^2.24.0", + "@ceramicnetwork/streamid": "^2.14.0", + "@ipld/dag-cbor": "^7.0.0", + "@stablelib/random": "^1.0.1", + "fast-json-patch": "^3.1.0", + "json-schema-typed": "^8.0.1", + "multiformats": "^11.0.1", + "multihashes": "^4.0.3", + "uint8arrays": "^4.0.3" + }, + "dependencies": { + "multibase": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/multibase/-/multibase-4.0.6.tgz", + "integrity": "sha512-x23pDe5+svdLz/k5JPGCVdfn7Q5mZVMBETiC+ORfO+sor9Sgs0smJzAjfTbM5tckeCqnaUuMYoz+k3RXMmJClQ==", + "requires": { + "@multiformats/base-x": "^4.0.1" + } + }, + "multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==" + }, + "multihashes": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/multihashes/-/multihashes-4.0.3.tgz", + "integrity": "sha512-0AhMH7Iu95XjDLxIeuCOOE4t9+vQZsACyKZ9Fxw2pcsRmlX4iCn1mby0hS0bb+nQOVpdQYWPpnyusw4da5RPhA==", + "requires": { + "multibase": "^4.0.1", + "uint8arrays": "^3.0.0", + "varint": "^5.0.2" + }, + "dependencies": { + "multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "uint8arrays": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", + "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", + "requires": { + "multiformats": "^9.4.2" + } + } + } + }, + "uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "requires": { + "multiformats": "^11.0.0" + } + } + } + }, + "@ceramicnetwork/stream-model-instance": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-model-instance/-/stream-model-instance-1.6.0.tgz", + "integrity": "sha512-qa7EUFV+/eZTiCyT0AvpNyvFMNbzH4sbXAJUsSKJ2YxXy3fo3X5QEVx51pKnVnc6JomNBz6S/pQj0kOR8o+hqA==", + "requires": { + "@ceramicnetwork/common": "^2.24.0", + "@ceramicnetwork/streamid": "^2.14.0", + "@ipld/dag-cbor": "^7.0.0", + "@stablelib/random": "^1.0.1", + "fast-json-patch": "^3.1.0", + "object-sizeof": "^2.6.1", + "uint8arrays": "^4.0.3" + }, + "dependencies": { + "multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==" + }, + "uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "requires": { + "multiformats": "^11.0.0" + } + } + } + }, + "@ceramicnetwork/stream-tile": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/stream-tile/-/stream-tile-2.20.0.tgz", + "integrity": "sha512-aBHegw35+p+QZbZGKKuaCy3bNrpztNTDlNaedReNlUVvVTSl2VecTBCY7CpbqVjIj6+wE3yBrpUfTOBlTbjyuw==", + "requires": { + "@ceramicnetwork/common": "^2.24.0", + "@ceramicnetwork/streamid": "^2.14.0", + "@ipld/dag-cbor": "^7.0.0", + "@stablelib/random": "^1.0.1", + "dids": "^4.0.0", + "fast-json-patch": "^3.1.0", + "lodash.clonedeep": "^4.5.0", + "uint8arrays": "^4.0.3" + }, + "dependencies": { + "multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==" + }, + "uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "requires": { + "multiformats": "^11.0.0" + } + } + } + }, + "@ceramicnetwork/streamid": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/@ceramicnetwork/streamid/-/streamid-2.14.0.tgz", + "integrity": "sha512-Pv28GZA77Zth+aC65NJeimrH4pIl91SKMCBAkOHORk/UCH++HTTItAjhu/RqMCsGpfnsIvZAXwsGqNH7dfJz1A==", + "requires": { + "@ipld/dag-cbor": "^7.0.0", + "mapmoize": "^1.2.1", + "multiformats": "^11.0.1", + "uint8arrays": "^4.0.3", + "varint": "^6.0.0" + }, + "dependencies": { + "multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==" + }, + "uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "requires": { + "multiformats": "^11.0.0" + } + }, + "varint": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/varint/-/varint-6.0.0.tgz", + "integrity": "sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==" + } + } + }, "@chainsafe/is-ip": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/@chainsafe/is-ip/-/is-ip-2.0.1.tgz", @@ -48809,6 +51315,172 @@ "dev": true, "optional": true }, + "@didtools/cacao": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-2.0.0.tgz", + "integrity": "sha512-FpJA/oLA/kahxIUBTLO1MLLiv6BHdUVoyXg80l6umCQytUytnnGvwmmQZa6GucQZkW0jN0FA953H8ELbNrBD0A==", + "requires": { + "@ipld/dag-cbor": "^9.0.0", + "apg-js": "^4.1.3", + "caip": "^1.1.0", + "multiformats": "^11.0.1", + "uint8arrays": "^4.0.3" + }, + "dependencies": { + "@ipld/dag-cbor": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-9.0.0.tgz", + "integrity": "sha512-zdsiSiYDEOIDW7mmWOYWC9gukjXO+F8wqxz/LfN7iSwTfIyipC8+UQrCbPupFMRb/33XQTZk8yl3My8vUQBRoA==", + "requires": { + "cborg": "^1.10.0", + "multiformats": "^11.0.0" + } + }, + "multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==" + }, + "uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "requires": { + "multiformats": "^11.0.0" + } + } + } + }, + "@didtools/pkh-ethereum": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.0.3.tgz", + "integrity": "sha512-+hfVzkk6fd0CifgdNzQ+og2B1q8O7Wmx3IZQz1wejQH8HfjRX0tNL41aw5Df6T9Vzps0R45ULnY46SVdmORg3A==", + "requires": { + "@didtools/cacao": "^1.0.0", + "@ethersproject/wallet": "^5.7.0", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0" + }, + "dependencies": { + "@didtools/cacao": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-1.2.0.tgz", + "integrity": "sha512-y0nMgV8DL0jgHUq0uhjMqrW9p79PopQnugLWx02tss+iR0ahON2cfal20+eFx2p3kXtvaL8U+iByrjmyuokj+A==", + "requires": { + "@ipld/dag-cbor": "^7.0.1", + "apg-js": "^4.1.1", + "caip": "^1.1.0", + "multiformats": "^9.5.1", + "uint8arrays": "^4.0.2" + } + }, + "multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + } + } + }, + "@didtools/pkh-solana": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@didtools/pkh-solana/-/pkh-solana-0.0.4.tgz", + "integrity": "sha512-vV7qUabOYdpCoJHE6mS1teCCgXtYDpUnsT6CrzY7lEsmSB0gw9W14VhfosI2urv2CAJj2xW2Xm4hsrYulngS6w==", + "requires": { + "@didtools/cacao": "^1.0.0", + "@stablelib/ed25519": "^1.0.3", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0", + "uint8arrays": "^3.1.0" + }, + "dependencies": { + "@didtools/cacao": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-1.2.0.tgz", + "integrity": "sha512-y0nMgV8DL0jgHUq0uhjMqrW9p79PopQnugLWx02tss+iR0ahON2cfal20+eFx2p3kXtvaL8U+iByrjmyuokj+A==", + "requires": { + "@ipld/dag-cbor": "^7.0.1", + "apg-js": "^4.1.1", + "caip": "^1.1.0", + "multiformats": "^9.5.1", + "uint8arrays": "^4.0.2" + }, + "dependencies": { + "uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "requires": { + "multiformats": "^11.0.0" + }, + "dependencies": { + "multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==" + } + } + } + } + }, + "multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "uint8arrays": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", + "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", + "requires": { + "multiformats": "^9.4.2" + } + } + } + }, + "@didtools/pkh-stacks": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@didtools/pkh-stacks/-/pkh-stacks-0.1.0.tgz", + "integrity": "sha512-dEgyHleiIa2afibchNqs07tSqddFS6pX9D5BNxbWH0NAr+FisVCA4nUXajcbd9TUbSuplClfQ4EXjjJAGqlgeg==", + "requires": { + "@didtools/cacao": "^2.0.0", + "@stablelib/random": "^1.0.2", + "@stacks/common": "^6.0.0", + "@stacks/encryption": "^6.2.0", + "@stacks/transactions": "^6.2.0", + "caip": "^1.1.0", + "jsontokens": "^4.0.1" + } + }, + "@didtools/pkh-tezos": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@didtools/pkh-tezos/-/pkh-tezos-0.0.2.tgz", + "integrity": "sha512-G23+XLkCiHGsFO7ATW+ApczJzE7iRYV4tI43nBP13/IZ1Bx0ietZLOS84AdeGqZLHtsWqbKjzEX41x7+OfXCWQ==", + "requires": { + "@didtools/cacao": "^1.1.0", + "@stablelib/random": "^1.0.2", + "@taquito/utils": "^14.0.0", + "caip": "^1.1.0" + }, + "dependencies": { + "@didtools/cacao": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-1.2.0.tgz", + "integrity": "sha512-y0nMgV8DL0jgHUq0uhjMqrW9p79PopQnugLWx02tss+iR0ahON2cfal20+eFx2p3kXtvaL8U+iByrjmyuokj+A==", + "requires": { + "@ipld/dag-cbor": "^7.0.1", + "apg-js": "^4.1.1", + "caip": "^1.1.0", + "multiformats": "^9.5.1", + "uint8arrays": "^4.0.2" + } + }, + "multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + } + } + }, "@discoveryjs/json-ext": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", @@ -49107,6 +51779,15 @@ "@ethersproject/bytes": "^5.7.0" } }, + "@ethersproject/basex": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.7.0.tgz", + "integrity": "sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw==", + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/properties": "^5.7.0" + } + }, "@ethersproject/bignumber": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.7.0.tgz", @@ -49140,6 +51821,23 @@ "@ethersproject/bignumber": "^5.7.0" } }, + "@ethersproject/contracts": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.7.0.tgz", + "integrity": "sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg==", + "requires": { + "@ethersproject/abi": "^5.7.0", + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/transactions": "^5.7.0" + } + }, "@ethersproject/hash": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.7.0.tgz", @@ -49156,6 +51854,52 @@ "@ethersproject/strings": "^5.7.0" } }, + "@ethersproject/hdnode": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.7.0.tgz", + "integrity": "sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg==", + "requires": { + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/basex": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/pbkdf2": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/sha2": "^5.7.0", + "@ethersproject/signing-key": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/wordlists": "^5.7.0" + } + }, + "@ethersproject/json-wallets": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz", + "integrity": "sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g==", + "requires": { + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/hdnode": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/pbkdf2": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "aes-js": "3.0.0", + "scrypt-js": "3.0.1" + }, + "dependencies": { + "aes-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz", + "integrity": "sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==" + } + } + }, "@ethersproject/keccak256": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz", @@ -49178,6 +51922,15 @@ "@ethersproject/logger": "^5.7.0" } }, + "@ethersproject/pbkdf2": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz", + "integrity": "sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw==", + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/sha2": "^5.7.0" + } + }, "@ethersproject/properties": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.7.0.tgz", @@ -49186,6 +51939,50 @@ "@ethersproject/logger": "^5.7.0" } }, + "@ethersproject/providers": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.2.tgz", + "integrity": "sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==", + "requires": { + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/base64": "^5.7.0", + "@ethersproject/basex": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/networks": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/rlp": "^5.7.0", + "@ethersproject/sha2": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/web": "^5.7.0", + "bech32": "1.1.4", + "ws": "7.4.6" + }, + "dependencies": { + "ws": { + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", + "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "requires": {} + } + } + }, + "@ethersproject/random": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.7.0.tgz", + "integrity": "sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ==", + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0" + } + }, "@ethersproject/rlp": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.7.0.tgz", @@ -49195,6 +51992,16 @@ "@ethersproject/logger": "^5.7.0" } }, + "@ethersproject/sha2": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.7.0.tgz", + "integrity": "sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw==", + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "hash.js": "1.1.7" + } + }, "@ethersproject/signing-key": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.7.0.tgz", @@ -49241,6 +52048,38 @@ "@ethersproject/signing-key": "^5.7.0" } }, + "@ethersproject/units": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/units/-/units-5.7.0.tgz", + "integrity": "sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg==", + "requires": { + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/logger": "^5.7.0" + } + }, + "@ethersproject/wallet": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.7.0.tgz", + "integrity": "sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA==", + "requires": { + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/hdnode": "^5.7.0", + "@ethersproject/json-wallets": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/signing-key": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/wordlists": "^5.7.0" + } + }, "@ethersproject/web": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.7.1.tgz", @@ -49253,6 +52092,18 @@ "@ethersproject/strings": "^5.7.0" } }, + "@ethersproject/wordlists": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.7.0.tgz", + "integrity": "sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA==", + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/strings": "^5.7.0" + } + }, "@floating-ui/core": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.0.2.tgz", @@ -49337,6 +52188,22 @@ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, + "@ipld/dag-cbor": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-7.0.3.tgz", + "integrity": "sha512-1VVh2huHsuohdXC1bGJNE8WR72slZ9XE2T3wbBBq31dm7ZBatmKLLxrB+XAqafxfRFjv08RZmj/W/ZqaM13AuA==", + "requires": { + "cborg": "^1.6.0", + "multiformats": "^9.5.4" + }, + "dependencies": { + "multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + } + } + }, "@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", @@ -50364,6 +53231,50 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "@json-rpc-tools/provider": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@json-rpc-tools/provider/-/provider-1.7.6.tgz", + "integrity": "sha512-z7D3xvJ33UfCGv77n40lbzOYjZKVM3k2+5cV7xS8G6SCvKTzMkhkUYuD/qzQUNT4cG/lv0e9mRToweEEVLVVmA==", + "requires": { + "@json-rpc-tools/utils": "^1.7.6", + "axios": "^0.21.0", + "safe-json-utils": "^1.1.1", + "ws": "^7.4.0" + }, + "dependencies": { + "axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "requires": { + "follow-redirects": "^1.14.0" + } + }, + "ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "requires": {} + } + } + }, + "@json-rpc-tools/types": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@json-rpc-tools/types/-/types-1.7.6.tgz", + "integrity": "sha512-nDSqmyRNEqEK9TZHtM15uNnDljczhCUdBmRhpNZ95bIPKEDQ+nTDmGMFd2lLin3upc5h2VVVd9tkTDdbXUhDIQ==", + "requires": { + "keyvaluestorage-interface": "^1.0.0" + } + }, + "@json-rpc-tools/utils": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@json-rpc-tools/utils/-/utils-1.7.6.tgz", + "integrity": "sha512-HjA8x/U/Q78HRRe19yh8HVKoZ+Iaoo3YZjakJYxR+rw52NHo6jM+VE9b8+7ygkCFXl/EHID5wh/MkXaE/jGyYw==", + "requires": { + "@json-rpc-tools/types": "^1.7.6", + "@pedrouid/environment": "^1.0.1" + } + }, "@lezer/common": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@lezer/common/-/common-1.0.2.tgz", @@ -50394,6 +53305,64 @@ "@lezer/common": "^1.0.0" } }, + "@lit-protocol/sdk-browser": { + "version": "1.1.249", + "resolved": "https://registry.npmjs.org/@lit-protocol/sdk-browser/-/sdk-browser-1.1.249.tgz", + "integrity": "sha512-SFVy1Ha5aZCZvpcxpphMjeNSw/wVtG2v8ZLkyFa5aXIWF/h9ZlXHZYUGsiUYiefjG8DEmNAhcxKiLx03aVuSvw==", + "requires": { + "@ethersproject/bytes": "^5.5.0", + "@ethersproject/contracts": "^5.2.0", + "@ethersproject/hash": "^5.4.0", + "@ethersproject/providers": "^5.2.0", + "@ethersproject/strings": "^5.5.0", + "@ethersproject/units": "^5.4.0", + "@ethersproject/wallet": "^5.2.0", + "@walletconnect/ethereum-provider": "1.7.8", + "buffer": "^6.0.3", + "bufferutil": "^4.0.6", + "cross-blob": "^3.0.1", + "jszip": "^3.6.0", + "lit-connect-modal": "^0.1.11", + "lit-siwe": "^1.1.8", + "node-fetch": "^3.2.3", + "pako": "^2.0.4", + "tslib": "^2.3.1", + "tweetnacl": "^1.0.3", + "tweetnacl-util": "^0.15.1", + "utf-8-validate": "^5.0.8" + }, + "dependencies": { + "buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node-fetch": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.1.tgz", + "integrity": "sha512-cRVc/kyto/7E5shrWca1Wsea4y6tL9iYJE5FBCius3JQfb/4P4I295PfhgbJQBLTx6lATE4z+wK0rPM4VS2uow==", + "requires": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + } + }, + "pako": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", + "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==" + }, + "tweetnacl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" + } + } + }, "@loadable/component": { "version": "5.15.2", "resolved": "https://registry.npmjs.org/@loadable/component/-/component-5.15.2.tgz", @@ -50514,6 +53483,11 @@ } } }, + "@multiformats/base-x": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@multiformats/base-x/-/base-x-4.0.1.tgz", + "integrity": "sha512-eMk0b9ReBbV23xXU693TAIrLyeO5iTgBZGSJfpqriG8UkYvr/hC9u9pyMlAakDNHWmbhMZCDs6KQO0jzKD8OTw==" + }, "@multiformats/mafmt": { "version": "11.0.3", "resolved": "https://registry.npmjs.org/@multiformats/mafmt/-/mafmt-11.0.3.tgz", @@ -50625,6 +53599,16 @@ "integrity": "sha512-t5gRblrwwiNZP6cT7NkxlgxrFgHWtv9ei5vUraCLgBqzvIsa7X+PnarZUeQCXqz6Jg9JSGGT9j8lvzD97UqeJQ==", "optional": true }, + "@noble/hashes": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.1.5.tgz", + "integrity": "sha512-LTMZiiLc+V4v1Yi16TD6aX2gmtKszNye0pQgbaLqkvhIqP7nVsSaJsWloGQjJfJ8offaoP5GtX3yY5swbcJxxQ==" + }, + "@noble/secp256k1": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.7.1.tgz", + "integrity": "sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==" + }, "@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -51236,6 +54220,33 @@ "integrity": "sha512-S/SF/XYJeevwIgHFmVDAFRUvM3m+OjhvCAYMk78ZJQCYCQ5wS7j+LTt1ZEv2jpEEGg2tx/F6TYYWxddNAYHrFQ==", "dev": true }, + "@orbisclub/orbis-sdk": { + "version": "0.4.40", + "resolved": "https://registry.npmjs.org/@orbisclub/orbis-sdk/-/orbis-sdk-0.4.40.tgz", + "integrity": "sha512-y4+Z+7lcnVEMoYa9RnRaoi0U6E2+XCbfjrOKbV++d4/j1QjJ3tLB/nQDPgANVgvkIlW+rkLejrIj6UcGz9nH1A==", + "requires": { + "@ceramicnetwork/http-client": "^2.13.0-hotfix.0", + "@ceramicnetwork/stream-tile": "^2.12.0-hotfix.0", + "@didtools/pkh-ethereum": "^0.0.3", + "@didtools/pkh-solana": "^0.0.4", + "@didtools/pkh-tezos": "^0.0.2", + "@ethersproject/bytes": "^5.6.1", + "@ethersproject/providers": "^5.7.0", + "@ethersproject/strings": "^5.6.1", + "@lit-protocol/sdk-browser": "^1.1.238", + "@supabase/supabase-js": "^1.35.3", + "axios": "^1.1.3", + "did-session": "^1.0.0", + "key-did-provider-ed25519": "^2.0.1", + "key-did-resolver": "^2.3.0", + "react-image-file-resizer": "^0.4.8" + } + }, + "@pedrouid/environment": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@pedrouid/environment/-/environment-1.0.1.tgz", + "integrity": "sha512-HaW78NszGzRZd9SeoI3JD11JqY+lubnaOx7Pewj5pfjqWXOEATpeKIFb9Z4t2WBUK2iryiXX3lzWwmYWgUL0Ug==" + }, "@pmmmwh/react-refresh-webpack-plugin": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.7.tgz", @@ -52405,6 +55416,20 @@ "any-observable": "^0.3.0" } }, + "@scure/base": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.1.tgz", + "integrity": "sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA==" + }, + "@scure/bip39": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.1.0.tgz", + "integrity": "sha512-pwrPOS16VeTKg98dYXQyIjJEcWfz7/1YJIwxUEPFfQPtc86Ym/1sVgQ2RLoD43AazMk2l/unK4ITySSpW2+82w==", + "requires": { + "@noble/hashes": "~1.1.1", + "@scure/base": "~1.1.0" + } + }, "@sideway/address": { "version": "4.1.4", "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", @@ -52455,6 +55480,234 @@ "@sinonjs/commons": "^1.7.0" } }, + "@spruceid/siwe-parser": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@spruceid/siwe-parser/-/siwe-parser-1.1.3.tgz", + "integrity": "sha512-oQ8PcwDqjGWJvLmvAF2yzd6iniiWxK0Qtz+Dw+gLD/W5zOQJiKIUXwslHOm8VB8OOOKW9vfR3dnPBhHaZDvRsw==", + "requires": { + "apg-js": "^4.1.1" + } + }, + "@stablelib/aead": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/aead/-/aead-1.0.1.tgz", + "integrity": "sha512-q39ik6sxGHewqtO0nP4BuSe3db5G1fEJE8ukvngS2gLkBXyy6E7pLubhbYgnkDFv6V8cWaxcE4Xn0t6LWcJkyg==" + }, + "@stablelib/binary": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/binary/-/binary-1.0.1.tgz", + "integrity": "sha512-ClJWvmL6UBM/wjkvv/7m5VP3GMr9t0osr4yVgLZsLCOz4hGN9gIAFEqnJ0TsSMAN+n840nf2cHZnA5/KFqHC7Q==", + "requires": { + "@stablelib/int": "^1.0.1" + } + }, + "@stablelib/blake2b": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/blake2b/-/blake2b-1.0.1.tgz", + "integrity": "sha512-B3KyKoBAjkIFeH7romcF96i+pVFYk7K2SBQ1pZvaxV+epSBXJ+n0C66esUhyz6FF+5FbdQVm77C5fzGFcEZpKA==", + "requires": { + "@stablelib/binary": "^1.0.1", + "@stablelib/hash": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "@stablelib/bytes": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/bytes/-/bytes-1.0.1.tgz", + "integrity": "sha512-Kre4Y4kdwuqL8BR2E9hV/R5sOrUj6NanZaZis0V6lX5yzqC3hBuVSDXUIBqQv/sCpmuWRiHLwqiT1pqqjuBXoQ==" + }, + "@stablelib/chacha": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/chacha/-/chacha-1.0.1.tgz", + "integrity": "sha512-Pmlrswzr0pBzDofdFuVe1q7KdsHKhhU24e8gkEwnTGOmlC7PADzLVxGdn2PoNVBBabdg0l/IfLKg6sHAbTQugg==", + "requires": { + "@stablelib/binary": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "@stablelib/chacha20poly1305": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/chacha20poly1305/-/chacha20poly1305-1.0.1.tgz", + "integrity": "sha512-MmViqnqHd1ymwjOQfghRKw2R/jMIGT3wySN7cthjXCBdO+qErNPUBnRzqNpnvIwg7JBCg3LdeCZZO4de/yEhVA==", + "requires": { + "@stablelib/aead": "^1.0.1", + "@stablelib/binary": "^1.0.1", + "@stablelib/chacha": "^1.0.1", + "@stablelib/constant-time": "^1.0.1", + "@stablelib/poly1305": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "@stablelib/constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/constant-time/-/constant-time-1.0.1.tgz", + "integrity": "sha512-tNOs3uD0vSJcK6z1fvef4Y+buN7DXhzHDPqRLSXUel1UfqMB1PWNsnnAezrKfEwTLpN0cGH2p9NNjs6IqeD0eg==" + }, + "@stablelib/ed25519": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@stablelib/ed25519/-/ed25519-1.0.3.tgz", + "integrity": "sha512-puIMWaX9QlRsbhxfDc5i+mNPMY+0TmQEskunY1rZEBPi1acBCVQAhnsk/1Hk50DGPtVsZtAWQg4NHGlVaO9Hqg==", + "requires": { + "@stablelib/random": "^1.0.2", + "@stablelib/sha512": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "@stablelib/hash": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/hash/-/hash-1.0.1.tgz", + "integrity": "sha512-eTPJc/stDkdtOcrNMZ6mcMK1e6yBbqRBaNW55XA1jU8w/7QdnCF0CmMmOD1m7VSkBR44PWrMHU2l6r8YEQHMgg==" + }, + "@stablelib/int": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/int/-/int-1.0.1.tgz", + "integrity": "sha512-byr69X/sDtDiIjIV6m4roLVWnNNlRGzsvxw+agj8CIEazqWGOQp2dTYgQhtyVXV9wpO6WyXRQUzLV/JRNumT2w==" + }, + "@stablelib/keyagreement": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/keyagreement/-/keyagreement-1.0.1.tgz", + "integrity": "sha512-VKL6xBwgJnI6l1jKrBAfn265cspaWBPAPEc62VBQrWHLqVgNRE09gQ/AnOEyKUWrrqfD+xSQ3u42gJjLDdMDQg==", + "requires": { + "@stablelib/bytes": "^1.0.1" + } + }, + "@stablelib/poly1305": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/poly1305/-/poly1305-1.0.1.tgz", + "integrity": "sha512-1HlG3oTSuQDOhSnLwJRKeTRSAdFNVB/1djy2ZbS35rBSJ/PFqx9cf9qatinWghC2UbfOYD8AcrtbUQl8WoxabA==", + "requires": { + "@stablelib/constant-time": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "@stablelib/random": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@stablelib/random/-/random-1.0.2.tgz", + "integrity": "sha512-rIsE83Xpb7clHPVRlBj8qNe5L8ISQOzjghYQm/dZ7VaM2KHYwMW5adjQjrzTZCchFnNCNhkwtnOBa9HTMJCI8w==", + "requires": { + "@stablelib/binary": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "@stablelib/sha256": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/sha256/-/sha256-1.0.1.tgz", + "integrity": "sha512-GIIH3e6KH+91FqGV42Kcj71Uefd/QEe7Dy42sBTeqppXV95ggCcxLTk39bEr+lZfJmp+ghsR07J++ORkRELsBQ==", + "requires": { + "@stablelib/binary": "^1.0.1", + "@stablelib/hash": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "@stablelib/sha512": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/sha512/-/sha512-1.0.1.tgz", + "integrity": "sha512-13gl/iawHV9zvDKciLo1fQ8Bgn2Pvf7OV6amaRVKiq3pjQ3UmEpXxWiAfV8tYjUpeZroBxtyrwtdooQT/i3hzw==", + "requires": { + "@stablelib/binary": "^1.0.1", + "@stablelib/hash": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "@stablelib/wipe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/wipe/-/wipe-1.0.1.tgz", + "integrity": "sha512-WfqfX/eXGiAd3RJe4VU2snh/ZPwtSjLG4ynQ/vYzvghTh7dHFcI1wl+nrkWG6lGhukOxOsUHfv8dUXr58D0ayg==" + }, + "@stablelib/x25519": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@stablelib/x25519/-/x25519-1.0.3.tgz", + "integrity": "sha512-KnTbKmUhPhHavzobclVJQG5kuivH+qDLpe84iRqX3CLrKp881cF160JvXJ+hjn1aMyCwYOKeIZefIH/P5cJoRw==", + "requires": { + "@stablelib/keyagreement": "^1.0.1", + "@stablelib/random": "^1.0.2", + "@stablelib/wipe": "^1.0.1" + } + }, + "@stablelib/xchacha20": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/xchacha20/-/xchacha20-1.0.1.tgz", + "integrity": "sha512-1YkiZnFF4veUwBVhDnDYwo6EHeKzQK4FnLiO7ezCl/zu64uG0bCCAUROJaBkaLH+5BEsO3W7BTXTguMbSLlWSw==", + "requires": { + "@stablelib/binary": "^1.0.1", + "@stablelib/chacha": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "@stablelib/xchacha20poly1305": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/xchacha20poly1305/-/xchacha20poly1305-1.0.1.tgz", + "integrity": "sha512-B1Abj0sMJ8h3HNmGnJ7vHBrAvxuNka6cJJoZ1ILN7iuacXp7sUYcgOVEOTLWj+rtQMpspY9tXSCRLPmN1mQNWg==", + "requires": { + "@stablelib/aead": "^1.0.1", + "@stablelib/chacha20poly1305": "^1.0.1", + "@stablelib/constant-time": "^1.0.1", + "@stablelib/wipe": "^1.0.1", + "@stablelib/xchacha20": "^1.0.1" + } + }, + "@stacks/common": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@stacks/common/-/common-6.0.0.tgz", + "integrity": "sha512-tETwccvbYvaZ7u3ZucWNMOIPN97r6IPeZXKIFhLc1KSVaWSGEPTtZcwVp+Rz3mu2XgI2pg37SUrOWXSL7OOkDw==", + "requires": { + "@types/bn.js": "^5.1.0", + "@types/node": "^18.0.4" + } + }, + "@stacks/encryption": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@stacks/encryption/-/encryption-6.5.0.tgz", + "integrity": "sha512-QE1+gy1x6spGkpK5PnZxKoX1hL8eeIYxYa5HNMl4cbdIVKaFgqjoGFKMtTA/tQMc91T/saXLqbQLyh/U4AVpTA==", + "requires": { + "@noble/hashes": "1.1.5", + "@noble/secp256k1": "1.7.1", + "@scure/bip39": "1.1.0", + "@stacks/common": "^6.0.0", + "@types/node": "^18.0.4", + "base64-js": "^1.5.1", + "bs58": "^5.0.0", + "ripemd160-min": "^0.0.6", + "varuint-bitcoin": "^1.1.2" + }, + "dependencies": { + "base-x": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-4.0.0.tgz", + "integrity": "sha512-FuwxlW4H5kh37X/oW59pwTzzTKRzfrrQwhmyspRM7swOEZcHtDZSCt45U6oKgtuFE+WYPblePMVIPR4RZrh/hw==" + }, + "bs58": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-5.0.0.tgz", + "integrity": "sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ==", + "requires": { + "base-x": "^4.0.0" + } + } + } + }, + "@stacks/network": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@stacks/network/-/network-6.3.0.tgz", + "integrity": "sha512-573ZldQ+Iy0nCCxprXLLvkAo1AMEXncfmMUvqQ+5TN3m7VqCVADtb5G5WzMZsyR4m/k9oPsv076Lmqyl8AtR2A==", + "requires": { + "@stacks/common": "^6.0.0", + "cross-fetch": "^3.1.5" + } + }, + "@stacks/transactions": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@stacks/transactions/-/transactions-6.5.0.tgz", + "integrity": "sha512-kwE8cZq+QdAum4/LC+lSlAXVvzkdsSHTkCbfg4+VCWPBqA+gdXEqZe6R9SNBtMb8yGQrqUY8uIGRLVCWcXJ8zQ==", + "requires": { + "@noble/hashes": "1.1.5", + "@noble/secp256k1": "1.7.1", + "@stacks/common": "^6.0.0", + "@stacks/network": "^6.3.0", + "c32check": "^2.0.0", + "lodash.clonedeep": "^4.5.0" + } + }, "@storybook/addon-actions": { "version": "6.5.15", "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-6.5.15.tgz", @@ -59950,6 +63203,59 @@ "resolve-from": "^5.0.0" } }, + "@supabase/functions-js": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/@supabase/functions-js/-/functions-js-1.3.4.tgz", + "integrity": "sha512-yYVgkECjv7IZEBKBI3EB5Q7R1p0FJ10g8Q9N7SWKIHUU6i6DnbEGHIMFLyQRm1hmiNWD8fL7bRVEYacmTRJhHw==", + "requires": { + "cross-fetch": "^3.1.5" + } + }, + "@supabase/gotrue-js": { + "version": "1.24.0", + "resolved": "https://registry.npmjs.org/@supabase/gotrue-js/-/gotrue-js-1.24.0.tgz", + "integrity": "sha512-6PVv7mHCFOxLm6TSBfR7hsq/y3CMKpvzePVR+ZWtlFBTjJ2J87g2OYE9bgC61P5TNeZopUXKw93H92yz0MTALw==", + "requires": { + "cross-fetch": "^3.0.6" + } + }, + "@supabase/postgrest-js": { + "version": "0.37.4", + "resolved": "https://registry.npmjs.org/@supabase/postgrest-js/-/postgrest-js-0.37.4.tgz", + "integrity": "sha512-x+c2rk1fz9s6f1PrGxCJ0QTUgXPDI0G3ngIqD5sSiXhhCyfl8Q5V92mXl2EYtlDhkiUkjFNrOZFhXVbXOHgvDw==", + "requires": { + "cross-fetch": "^3.1.5" + } + }, + "@supabase/realtime-js": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@supabase/realtime-js/-/realtime-js-1.7.5.tgz", + "integrity": "sha512-nXuoxt7NE1NTI+G8WBim1K2gkUC8YE3e9evBUG+t6xwd9Sq+sSOrjcE0qJ8/Y631BCnLzlhX6yhFYQFh1oQDOg==", + "requires": { + "@types/phoenix": "^1.5.4", + "websocket": "^1.0.34" + } + }, + "@supabase/storage-js": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/@supabase/storage-js/-/storage-js-1.7.3.tgz", + "integrity": "sha512-jnIZWqOc9TGclOozgX9v/RWGFCgJAyW/yvmauexgRZhWknUXoA4b2i8tj7vfwE0WTvNRuA5JpXID98rfJeSG7Q==", + "requires": { + "cross-fetch": "^3.1.0" + } + }, + "@supabase/supabase-js": { + "version": "1.35.7", + "resolved": "https://registry.npmjs.org/@supabase/supabase-js/-/supabase-js-1.35.7.tgz", + "integrity": "sha512-X+qCzmj5sH0dozagbLoK7LzysBaWoivO0gsAUAPPBQkQupQWuBfaOqG18gKhlfL0wp2PL888QzhQNScp/IwUfA==", + "requires": { + "@supabase/functions-js": "^1.3.4", + "@supabase/gotrue-js": "^1.22.21", + "@supabase/postgrest-js": "^0.37.4", + "@supabase/realtime-js": "^1.7.5", + "@supabase/storage-js": "^1.7.2" + } + }, "@svgr/babel-plugin-add-jsx-attribute": { "version": "6.5.1", "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz", @@ -60100,6 +63406,38 @@ "defer-to-connect": "^2.0.1" } }, + "@taquito/utils": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/@taquito/utils/-/utils-14.2.0.tgz", + "integrity": "sha512-nuqYdkiRPrca2/ztSPokuhvizlOqCzNHM/fX3mIXl8TWO4JiGr0hhPKeJ1Vk9NCG/Qd1A3iQqNP5PQlDAhe/mw==", + "requires": { + "@stablelib/blake2b": "^1.0.1", + "@stablelib/ed25519": "^1.0.3", + "@types/bs58check": "^2.1.0", + "bignumber.js": "^9.1.0", + "blakejs": "^1.2.1", + "bs58check": "^2.1.2", + "buffer": "^6.0.3", + "elliptic": "^6.5.4", + "typedarray-to-buffer": "^4.0.0" + }, + "dependencies": { + "buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "typedarray-to-buffer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-4.0.0.tgz", + "integrity": "sha512-6dOYeZfS3O9RtRD1caom0sMxgK59b27+IwoNy8RDPsmslSGOyU+mpTamlaIW7aNKi90ZQZ9DFaZL3YRoiSCULQ==" + } + } + }, "@testing-library/dom": { "version": "8.18.1", "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.18.1.tgz", @@ -60261,6 +63599,14 @@ "@types/node": "*" } }, + "@types/bs58check": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/bs58check/-/bs58check-2.1.0.tgz", + "integrity": "sha512-OxsysnJQh82vy9DRbOcw9m2j/WiyqZLn0YBhKxdQ+aCwoHj+tWzyCgpwAkr79IfDXZKxc6h7k89T9pwS78CqTQ==", + "requires": { + "@types/node": "*" + } + }, "@types/cacheable-request": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", @@ -60535,6 +63881,11 @@ "@types/node": "*" } }, + "@types/phoenix": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@types/phoenix/-/phoenix-1.5.5.tgz", + "integrity": "sha512-1eWWT19k0L4ZiTvdXjAvJ9KvW0B8SdiVftQmFPJGTEx78Q4PCSIQDpz+EfkFVR1N4U9gREjlW4JXL8YCIlY0bw==" + }, "@types/prettier": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.1.tgz", @@ -61104,9 +64455,34 @@ } }, "@walletconnect/environment": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@walletconnect/environment/-/environment-1.0.0.tgz", - "integrity": "sha512-4BwqyWy6KpSvkocSaV7WR3BlZfrxLbJSLkg+j7Gl6pTDE+U55lLhJvQaMuDVazXYxcjBsG09k7UlH7cGiUI5vQ==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@walletconnect/environment/-/environment-1.0.1.tgz", + "integrity": "sha512-T426LLZtHj8e8rYnKfzsw1aG6+M0BT1ZxayMdv/p8yM0MU+eJDISqNY3/bccxRr4LrF9csq02Rhqt08Ibl0VRg==", + "requires": { + "tslib": "1.14.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@walletconnect/ethereum-provider": { + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/@walletconnect/ethereum-provider/-/ethereum-provider-1.7.8.tgz", + "integrity": "sha512-dnl560zFMdK/LD4MD2XwHbWj7RXOaeXWPc9jzDaosLQLAXfA5mKe4XbCFFUPbVMYuyBdRI9NZv3Ci/qDb5wncQ==", + "requires": { + "@walletconnect/client": "^1.7.8", + "@walletconnect/jsonrpc-http-connection": "^1.0.0", + "@walletconnect/jsonrpc-provider": "^1.0.3", + "@walletconnect/signer-connection": "^1.7.8", + "@walletconnect/types": "^1.7.8", + "@walletconnect/utils": "^1.7.8", + "eip1193-provider": "1.0.1", + "eventemitter3": "4.0.7" + } }, "@walletconnect/http-connection": { "version": "1.8.0", @@ -61129,21 +64505,88 @@ "@walletconnect/utils": "^1.8.0" } }, - "@walletconnect/jsonrpc-types": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.1.tgz", - "integrity": "sha512-+6coTtOuChCqM+AoYyi4Q83p9l/laI6NvuM2/AHaZFuf0gT0NjW7IX2+86qGyizn7Ptq4AYZmfxurAxTnhefuw==", + "@walletconnect/jsonrpc-http-connection": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-http-connection/-/jsonrpc-http-connection-1.0.6.tgz", + "integrity": "sha512-/3zSqDi7JDN06E4qm0NmVYMitngXfh21UWwy8zeJcBeJc+Jcs094EbLsIxtziIIKTCCbT88lWuTjl1ZujxN7cw==", "requires": { - "keyvaluestorage-interface": "^1.0.0" + "@walletconnect/jsonrpc-utils": "^1.0.6", + "@walletconnect/safe-json": "^1.0.1", + "cross-fetch": "^3.1.4", + "tslib": "1.14.1" + }, + "dependencies": { + "@walletconnect/safe-json": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@walletconnect/safe-json/-/safe-json-1.0.1.tgz", + "integrity": "sha512-Fm7e31oSYY15NQr8SsLJheKAy5L744udZf2lJKcz6wFmPJEzf7hOF0866o/rrldRzJnjZ4H2GJ45pFudsnLW5A==", + "requires": { + "tslib": "1.14.1" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@walletconnect/jsonrpc-provider": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-provider/-/jsonrpc-provider-1.0.10.tgz", + "integrity": "sha512-g0ffPSpY3P6GqGjWGHsr3yqvQUhj7q2k6pAikoXv5XTXWaJRzFvrlbFkSgxziXsBrwrMZn0qvPufvpN4mMZ5FA==", + "requires": { + "@walletconnect/jsonrpc-utils": "^1.0.6", + "@walletconnect/safe-json": "^1.0.1", + "tslib": "1.14.1" + }, + "dependencies": { + "@walletconnect/safe-json": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@walletconnect/safe-json/-/safe-json-1.0.1.tgz", + "integrity": "sha512-Fm7e31oSYY15NQr8SsLJheKAy5L744udZf2lJKcz6wFmPJEzf7hOF0866o/rrldRzJnjZ4H2GJ45pFudsnLW5A==", + "requires": { + "tslib": "1.14.1" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@walletconnect/jsonrpc-types": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.2.tgz", + "integrity": "sha512-CZe8tjJX73OWdHjrBHy7HtAapJ2tT0Q3TYhPBhRxi3643lwPIQWC9En45ldY14TZwgSewkbZ0FtGBZK0G7Bbyg==", + "requires": { + "keyvaluestorage-interface": "^1.0.0", + "tslib": "1.14.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } } }, "@walletconnect/jsonrpc-utils": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.3.tgz", - "integrity": "sha512-3yb49bPk16MNLk6uIIHPSHQCpD6UAo1OMOx1rM8cW/MPEAYAzrSW5hkhG7NEUwX9SokRIgnZK3QuQkiyNzBMhQ==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.6.tgz", + "integrity": "sha512-snp0tfkjPiDLQp/jrBewI+9SM33GPV4+Gjgldod6XQ7rFyQ5FZjnBxUkY4xWH0+arNxzQSi6v5iDXjCjSaorpg==", "requires": { - "@walletconnect/environment": "^1.0.0", - "@walletconnect/jsonrpc-types": "^1.0.1" + "@walletconnect/environment": "^1.0.1", + "@walletconnect/jsonrpc-types": "^1.0.2", + "tslib": "1.14.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } } }, "@walletconnect/mobile-registry": { @@ -61179,6 +64622,19 @@ "resolved": "https://registry.npmjs.org/@walletconnect/safe-json/-/safe-json-1.0.0.tgz", "integrity": "sha512-QJzp/S/86sUAgWY6eh5MKYmSfZaRpIlmCJdi5uG4DJlKkZrHEF7ye7gA+VtbVzvTtpM/gRwO2plQuiooIeXjfg==" }, + "@walletconnect/signer-connection": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@walletconnect/signer-connection/-/signer-connection-1.8.0.tgz", + "integrity": "sha512-+YAaTAP52MWZJ2wWnqKClKCPlPHBo6reURFe0cWidLADh9mi/kPWGALZ5AENK22zpem1bbKV466rF5Rzvu0ehA==", + "requires": { + "@walletconnect/client": "^1.8.0", + "@walletconnect/jsonrpc-types": "^1.0.1", + "@walletconnect/jsonrpc-utils": "^1.0.3", + "@walletconnect/qrcode-modal": "^1.8.0", + "@walletconnect/types": "^1.8.0", + "eventemitter3": "4.0.7" + } + }, "@walletconnect/socket-transport": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/@walletconnect/socket-transport/-/socket-transport-1.8.0.tgz", @@ -61869,6 +65325,11 @@ "picomatch": "^2.0.4" } }, + "apg-js": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/apg-js/-/apg-js-4.1.3.tgz", + "integrity": "sha512-XYyDcoBho8OpnWPRnedMwyL+76ovCtsESerHZEfY39dO4IrEqN97mdEYkOyHa0XTX5+3+U5FmpqPLttK0f7n6g==" + }, "apollo": { "version": "2.34.0", "resolved": "https://registry.npmjs.org/apollo/-/apollo-2.34.0.tgz", @@ -63229,6 +66690,11 @@ "tweetnacl": "^0.14.3" } }, + "bech32": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", + "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==" + }, "better-opn": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/better-opn/-/better-opn-2.1.1.tgz", @@ -63263,6 +66729,11 @@ "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", "dev": true }, + "bigint-mod-arith": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bigint-mod-arith/-/bigint-mod-arith-3.1.2.tgz", + "integrity": "sha512-nx8J8bBeiRR+NlsROFH9jHswW5HO8mgfOSqW0AmjicMMvaONDa8AO+5ViKDUUNytBPWiwfvZP4/Bj4Y3lUfvgQ==" + }, "bignumber.js": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.0.tgz", @@ -63300,6 +66771,11 @@ "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz", "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==" }, + "blob-polyfill": { + "version": "7.0.20220408", + "resolved": "https://registry.npmjs.org/blob-polyfill/-/blob-polyfill-7.0.20220408.tgz", + "integrity": "sha512-oD8Ydw+5lNoqq+en24iuPt1QixdPpe/nUF8azTHnviCZYu9zUC+TwdzIp5orpblJosNlgNbVmmAb//c6d6ImUQ==" + }, "bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", @@ -63697,6 +67173,22 @@ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==" }, + "c32check": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/c32check/-/c32check-2.0.0.tgz", + "integrity": "sha512-rpwfAcS/CMqo0oCqDf3r9eeLgScRE3l/xHDCXhM3UyrfvIn7PrLq63uHh7yYbv8NzaZn5MVsVhIRpQ+5GZ5HyA==", + "requires": { + "@noble/hashes": "^1.1.2", + "base-x": "^4.0.0" + }, + "dependencies": { + "base-x": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-4.0.0.tgz", + "integrity": "sha512-FuwxlW4H5kh37X/oW59pwTzzTKRzfrrQwhmyspRM7swOEZcHtDZSCt45U6oKgtuFE+WYPblePMVIPR4RZrh/hw==" + } + } + }, "c8": { "version": "7.12.0", "resolved": "https://registry.npmjs.org/c8/-/c8-7.12.0.tgz", @@ -63884,6 +67376,11 @@ } } }, + "caip": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/caip/-/caip-1.1.0.tgz", + "integrity": "sha512-yOO3Fu4ygyKYAdznuoaqschMKIZzcdgyMpBNtrIfrUhnOeaOWG+dh0c13wcOS6B/46IGGbncoyzJlio79jU7rw==" + }, "call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -63981,6 +67478,11 @@ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001409.tgz", "integrity": "sha512-V0mnJ5dwarmhYv8/MzhJ//aW68UpvnQBXv8lJ2QUsvn2pHcmAuNtu8hQEDz37XnA1iE+lRR9CIfGWWpgJ5QedQ==" }, + "canonicalize": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/canonicalize/-/canonicalize-1.0.8.tgz", + "integrity": "sha512-0CNTVCLZggSh7bc5VkX5WWPWO+cyZbNd07IHIsSXLia/eAq+r836hgk+8BKoEh7949Mda87VUOitx5OddVj64A==" + }, "capital-case": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/capital-case/-/capital-case-1.0.4.tgz", @@ -64022,6 +67524,11 @@ "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==" }, + "cborg": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/cborg/-/cborg-1.10.1.tgz", + "integrity": "sha512-et6Qm8MOUY2kCWa5GKk2MlBVoPjHv0hQBmlzI/Z7+5V3VJCeIkGehIB3vWknNsm2kOkAIs6wEKJFJo8luWQQ/w==" + }, "ccount": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", @@ -64690,6 +68197,11 @@ "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" }, + "colors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.3.0.tgz", + "integrity": "sha512-EDpX3a7wHMWFA7PUHWPHNWqOxIIRSJetuwl0AS5Oi/5FMV8kWm69RTlgm00GKjBO1xFHMtBbL49yRtMMdticBw==" + }, "combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -65378,6 +68890,15 @@ "resolved": "https://registry.npmjs.org/crelt/-/crelt-1.0.5.tgz", "integrity": "sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA==" }, + "cross-blob": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/cross-blob/-/cross-blob-3.0.2.tgz", + "integrity": "sha512-u+7xq68MAjIqvoEKrdgIEupKJNBeU8MSl/cpfPmJ3rm9yvxrgbMPr8TkZS9qnwCgiVC8BsEt9kDkeD7He2zmNA==", + "requires": { + "blob-polyfill": "^7.0.20220408", + "fetch-blob": "^3.2.0" + } + }, "cross-env": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz", @@ -65651,6 +69172,22 @@ "type": "^1.0.1" } }, + "dag-jose-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/dag-jose-utils/-/dag-jose-utils-3.0.0.tgz", + "integrity": "sha512-gu+XutOTy3kD8fDcA1SMjZ2U0mUOb/hxoRVZaMCizXN7Ssbc5dKOzeXQ4GquV4BdQzs3w5Y7irOpn2plFPIJfg==", + "requires": { + "@ipld/dag-cbor": "^7.0.1", + "multiformats": "^11.0.1" + }, + "dependencies": { + "multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==" + } + } + }, "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", @@ -65659,6 +69196,11 @@ "assert-plus": "^1.0.0" } }, + "data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==" + }, "data-urls": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", @@ -65920,6 +69462,190 @@ "debug": "4" } }, + "did-jwt": { + "version": "6.11.5", + "resolved": "https://registry.npmjs.org/did-jwt/-/did-jwt-6.11.5.tgz", + "integrity": "sha512-7Ew4rftHd2RTxLDfAjN6cz0wCMjTzmRBOtFBVuXUPguJF6ct01hJqlM1fr+IuI+bW7gH9QSeh9kDrvlOJnkf9w==", + "requires": { + "@stablelib/ed25519": "^1.0.2", + "@stablelib/random": "^1.0.1", + "@stablelib/sha256": "^1.0.1", + "@stablelib/x25519": "^1.0.2", + "@stablelib/xchacha20poly1305": "^1.0.1", + "bech32": "^2.0.0", + "canonicalize": "^1.0.8", + "did-resolver": "^4.0.0", + "elliptic": "^6.5.4", + "js-sha3": "^0.8.0", + "multiformats": "^9.6.5", + "uint8arrays": "^3.0.0" + }, + "dependencies": { + "bech32": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz", + "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==" + }, + "multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "uint8arrays": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", + "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", + "requires": { + "multiformats": "^9.4.2" + } + } + } + }, + "did-resolver": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/did-resolver/-/did-resolver-4.1.0.tgz", + "integrity": "sha512-S6fWHvCXkZg2IhS4RcVHxwuyVejPR7c+a4Go0xbQ9ps5kILa8viiYQgrM4gfTyeTjJ0ekgJH9gk/BawTpmkbZA==" + }, + "did-session": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/did-session/-/did-session-1.0.0.tgz", + "integrity": "sha512-hLKlfPGoEp9T6malsuNyF1bCrU0AcECZJ1SP2lvbHiic7ko2PdiZPmmVipVId+ZqmshU4AlLLEozZc9Iu1X1UA==", + "requires": { + "@ceramicnetwork/stream-tile": "^2.4.4", + "@stablelib/random": "^1.0.1", + "dids": "^3.2.0", + "key-did-provider-ed25519": "^2.0.1", + "key-did-resolver": "^2.0.6", + "uint8arrays": "^3.0.0" + }, + "dependencies": { + "@didtools/cacao": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@didtools/cacao/-/cacao-1.2.0.tgz", + "integrity": "sha512-y0nMgV8DL0jgHUq0uhjMqrW9p79PopQnugLWx02tss+iR0ahON2cfal20+eFx2p3kXtvaL8U+iByrjmyuokj+A==", + "requires": { + "@ipld/dag-cbor": "^7.0.1", + "apg-js": "^4.1.1", + "caip": "^1.1.0", + "multiformats": "^9.5.1", + "uint8arrays": "^4.0.2" + }, + "dependencies": { + "uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "requires": { + "multiformats": "^11.0.0" + }, + "dependencies": { + "multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==" + } + } + } + } + }, + "@didtools/pkh-ethereum": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.0.1.tgz", + "integrity": "sha512-2hDt1f60WXUNWMVS9S9b0pmXl78ivkVxZJHeyBUkbz7O7To1rHvlgvJ0gFJ3sKVemI1llpClzwd3PEjZfGwiUw==", + "requires": { + "@didtools/cacao": "^1.0.0", + "@ethersproject/wallet": "^5.7.0", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0" + } + }, + "dag-jose-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dag-jose-utils/-/dag-jose-utils-2.0.0.tgz", + "integrity": "sha512-vE6EyhjSh+dfr8hbs/gLk0v98h2ekjy6r6pXvmB4SvO6awalt95LEetG0QDh5rmMYE3FO8ynp3xrCYsAHHZOlg==", + "requires": { + "@ipld/dag-cbor": "^7.0.1", + "multiformats": "^9.5.1" + } + }, + "did-resolver": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/did-resolver/-/did-resolver-3.2.2.tgz", + "integrity": "sha512-Eeo2F524VM5N3W4GwglZrnul2y6TLTwMQP3In62JdG34NZoqihYyOZLk+5wUW8sSgvIYIcJM8Dlt3xsdKZZ3tg==" + }, + "dids": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/dids/-/dids-3.4.0.tgz", + "integrity": "sha512-hXHkOTL9E5R4rbQwDVOktiiEq57Y6yWOEYjev1ojOpMr2Rkx9g8bw0v6BQIsbPB94aaYxUCtaejNl2FrublfiA==", + "requires": { + "@didtools/cacao": "^1.0.0", + "@didtools/pkh-ethereum": "^0.0.1", + "@stablelib/random": "^1.0.1", + "dag-jose-utils": "^2.0.0", + "did-jwt": "^6.0.0", + "did-resolver": "^3.1.5", + "multiformats": "^9.4.10", + "rpc-utils": "^0.6.1", + "uint8arrays": "^3.0.0" + } + }, + "multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "uint8arrays": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", + "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", + "requires": { + "multiformats": "^9.4.2" + } + } + } + }, + "dids": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/dids/-/dids-4.0.0.tgz", + "integrity": "sha512-sNba/y3XSXkhMYlWw3JBGST+AOySIqZ1M/rsvoxSoLvcempi4MbtwqCTkBzuiKiKKmbLXZbL/rFIr0HUSRMg1Q==", + "requires": { + "@didtools/cacao": "^2.0.0", + "@didtools/pkh-ethereum": "^0.1.0", + "@stablelib/random": "^1.0.1", + "dag-jose-utils": "^3.0.0", + "did-jwt": "^6.11.1", + "did-resolver": "^4.0.1", + "multiformats": "^11.0.1", + "rpc-utils": "^0.6.1", + "uint8arrays": "^4.0.3" + }, + "dependencies": { + "@didtools/pkh-ethereum": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@didtools/pkh-ethereum/-/pkh-ethereum-0.1.0.tgz", + "integrity": "sha512-Abmc6uvWU8zkOrQbPUAsRtTW293vhx+rzd+/bbduTLrRGEqZ3niakQkxMqvQKZ6/9w+n0IjQVXSHE5vzc5cAeg==", + "requires": { + "@didtools/cacao": "^2.0.0", + "@ethersproject/wallet": "^5.7.0", + "@stablelib/random": "^1.0.2", + "caip": "^1.1.0" + } + }, + "multiformats": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz", + "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==" + }, + "uint8arrays": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-4.0.3.tgz", + "integrity": "sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==", + "requires": { + "multiformats": "^11.0.0" + } + } + } + }, "diff": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", @@ -66154,6 +69880,14 @@ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, + "eip1193-provider": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/eip1193-provider/-/eip1193-provider-1.0.1.tgz", + "integrity": "sha512-kSuqwQ26d7CzuS/t3yRXo2Su2cVH0QfvyKbr2H7Be7O5YDyIq4hQGCNTo5wRdP07bt+E2R/8nPCzey4ojBHf7g==", + "requires": { + "@json-rpc-tools/provider": "^1.5.5" + } + }, "ejs": { "version": "3.1.8", "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.8.tgz", @@ -68042,6 +71776,11 @@ "integrity": "sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw==", "dev": true }, + "fast-json-patch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.1.tgz", + "integrity": "sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ==" + }, "fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", @@ -68093,6 +71832,15 @@ "bser": "2.1.1" } }, + "fetch-blob": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", + "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", + "requires": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + } + }, "fetch-retry": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/fetch-retry/-/fetch-retry-5.0.3.tgz", @@ -68194,8 +71942,7 @@ "filter-obj": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-1.1.0.tgz", - "integrity": "sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==", - "dev": true + "integrity": "sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==" }, "finalhandler": { "version": "1.2.0", @@ -68298,6 +72045,11 @@ "path-exists": "^4.0.0" } }, + "flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==" + }, "flat-cache": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", @@ -68520,6 +72272,14 @@ "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.1.tgz", "integrity": "sha512-EFRDrsMm/kyqbTQocNvRXMLjc7Es2Vk+IQFx/YW7hkUH1eBl4J1fqiP34l74Yt0pFLCNpc06fkbVk00008mzjg==" }, + "formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", + "requires": { + "fetch-blob": "^3.1.2" + } + }, "formik": { "version": "2.2.9", "resolved": "https://registry.npmjs.org/formik/-/formik-2.2.9.tgz", @@ -70538,6 +74298,11 @@ "istanbul-lib-report": "^3.0.0" } }, + "it-first": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/it-first/-/it-first-1.0.7.tgz", + "integrity": "sha512-nvJKZoBpZD/6Rtde6FXqwDqDZGF1sCADmr2Zoc0hZsIvnE449gRFnGctxDf09Bzc/FWnHXAdaHVIetY6lrE0/g==" + }, "iterate-iterator": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/iterate-iterator/-/iterate-iterator-1.0.2.tgz", @@ -72483,6 +76248,14 @@ } } }, + "jet-logger": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/jet-logger/-/jet-logger-1.2.2.tgz", + "integrity": "sha512-Kbw4G3BC45+Umz5XBnsE50pHplruJTVKGRy5X1YfCu3Te7f8ggTL8Tm10YegAD2QP41MVQ3o/Y9MFAZzfythqw==", + "requires": { + "colors": "1.3.0" + } + }, "joi": { "version": "17.7.0", "resolved": "https://registry.npmjs.org/joi/-/joi-17.7.0.tgz", @@ -72857,6 +76630,11 @@ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" }, + "json-schema-typed": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-8.0.1.tgz", + "integrity": "sha512-XQmWYj2Sm4kn4WeTYvmpKEbyPsL7nBsb647c7pMe6l02/yx2+Jfc4dT6UZkEXnIUb5LhD55r2HPsJ1milQ4rDg==" + }, "json-stable-stringify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", @@ -72896,6 +76674,16 @@ "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", "integrity": "sha512-trvBk1ki43VZptdBI5rIlG4YOzyeH/WefQt5rj1grasPn4iiZWKet8nkgc4GlsAylaztn0qZfUYOiTsASJFdNA==" }, + "jsontokens": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/jsontokens/-/jsontokens-4.0.1.tgz", + "integrity": "sha512-+MO415LEN6M+3FGsRz4wU20g7N2JA+2j9d9+pGaNJHviG4L8N0qzavGyENw6fJqsq9CcrHOIL6iWX5yeTZ86+Q==", + "requires": { + "@noble/hashes": "^1.1.2", + "@noble/secp256k1": "^1.6.3", + "base64-js": "^1.5.1" + } + }, "jsprim": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", @@ -72917,6 +76705,46 @@ "object.assign": "^4.1.3" } }, + "jszip": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", + "requires": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "setimmediate": "^1.0.5" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, "junk": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/junk/-/junk-3.1.0.tgz", @@ -72933,6 +76761,66 @@ "readable-stream": "^3.6.0" } }, + "key-did-provider-ed25519": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/key-did-provider-ed25519/-/key-did-provider-ed25519-2.0.1.tgz", + "integrity": "sha512-FaB2g7zUAeN/bLaFl2YSNQx9NsxgDd/3TR1YGvoXLhENsvZBdyA2V7hX8/MZhZ5jm82wL5lRw3O4UXuz/pJANQ==", + "requires": { + "@stablelib/ed25519": "^1.0.2", + "did-jwt": "^6.0.0", + "fast-json-stable-stringify": "^2.1.0", + "rpc-utils": "^0.6.2", + "uint8arrays": "^3.0.0" + }, + "dependencies": { + "multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "uint8arrays": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", + "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", + "requires": { + "multiformats": "^9.4.2" + } + } + } + }, + "key-did-resolver": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/key-did-resolver/-/key-did-resolver-2.3.0.tgz", + "integrity": "sha512-q3ChQILPe+u8qkpWP196fEoxsygEyjM3K25qrGaMSolVaUdfgj7qwMz2DE/GRIlfNK2HgKW6KXA8RZMy8aL4MA==", + "requires": { + "@stablelib/ed25519": "^1.0.2", + "bigint-mod-arith": "^3.1.0", + "multiformats": "^9.5.2", + "nist-weierstrauss": "^1.3.0", + "uint8arrays": "^3.0.0", + "varint": "^6.0.0" + }, + "dependencies": { + "multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "uint8arrays": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", + "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", + "requires": { + "multiformats": "^9.4.2" + } + }, + "varint": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/varint/-/varint-6.0.0.tgz", + "integrity": "sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==" + } + } + }, "keyv": { "version": "4.5.2", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.2.tgz", @@ -73126,6 +77014,21 @@ "type-check": "~0.4.0" } }, + "lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "requires": { + "immediate": "~3.0.5" + }, + "dependencies": { + "immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==" + } + } + }, "lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", @@ -73261,6 +77164,24 @@ } } }, + "lit-connect-modal": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/lit-connect-modal/-/lit-connect-modal-0.1.11.tgz", + "integrity": "sha512-EG6pcCqdxZQJt3MPDq3gJ5Sz4E5sJdydtAF7VFJu6z6GDHO1Ybp8WrTx8CUnHiF54/MQBRi6Nb7cbTvv+BKWvQ==", + "requires": { + "micromodal": "^0.4.10" + } + }, + "lit-siwe": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/lit-siwe/-/lit-siwe-1.1.8.tgz", + "integrity": "sha512-gXI8GG0GAClw6G7T9p4p6Kn9ywDo8j2d90ShaYArJdsqqO9gwXfzxF84SMeY+bpsNqqQ3FahrhEwTCHd6w7wNw==", + "requires": { + "@spruceid/siwe-parser": "1.1.3", + "@stablelib/random": "^1.0.1", + "apg-js": "^4.1.1" + } + }, "load-json-file": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", @@ -73333,6 +77254,11 @@ "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==" + }, "lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -73503,6 +77429,15 @@ } } }, + "logfmt": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/logfmt/-/logfmt-1.3.2.tgz", + "integrity": "sha512-U0lelcaGWEfEITZQXs8y5HrJp2xa0BJ+KDfkkLJRmuKbQIEVGNv145FbaNekY4ZYHJSBBx8NLJitaPtRqLEkxQ==", + "requires": { + "split": "0.2.x", + "through": "2.3.x" + } + }, "logkitty": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/logkitty/-/logkitty-0.7.1.tgz", @@ -73736,6 +77671,11 @@ "object-visit": "^1.0.0" } }, + "mapmoize": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/mapmoize/-/mapmoize-1.2.1.tgz", + "integrity": "sha512-LK8ArSM1wbfRPTnl+LpdxW1pwkfY6GxtM9p+STr6aDtM7ImR8jLuf4ekei43/AN0f7XDSrohzwwK57eGHSDAuA==" + }, "markdown-escapes": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", @@ -75539,6 +79479,11 @@ "picomatch": "^2.3.1" } }, + "micromodal": { + "version": "0.4.10", + "resolved": "https://registry.npmjs.org/micromodal/-/micromodal-0.4.10.tgz", + "integrity": "sha512-BUrEnzMPFBwK8nOE4xUDYHLrlGlLULQVjpja99tpJQPSUEWgw3kTLp1n1qv0HmKU29AiHE7Y7sMLiRziDK4ghQ==" + }, "miller-rabin": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", @@ -76059,6 +80004,30 @@ "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" }, + "nist-weierstrauss": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/nist-weierstrauss/-/nist-weierstrauss-1.6.1.tgz", + "integrity": "sha512-FpjCOnPV/s3ZVIkeldCVSml2K4lruabPbBgoEitpCK1JL0KTVoWb56CFTU6rZn5i6VqAjdwcOp0FDwJACPmeFA==", + "requires": { + "multiformats": "^9.6.5", + "uint8arrays": "^2.1.4" + }, + "dependencies": { + "multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "uint8arrays": { + "version": "2.1.10", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-2.1.10.tgz", + "integrity": "sha512-Q9/hhJa2836nQfEJSZTmr+pg9+cDJS9XEAp7N2Vg5MzL3bK/mkMVfjscRGYruP9jNda6MAdf4QD/y78gSzkp6A==", + "requires": { + "multiformats": "^9.4.2" + } + } + } + }, "no-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", @@ -76107,6 +80076,11 @@ } } }, + "node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==" + }, "node-fetch": { "version": "2.6.7", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", @@ -76463,6 +80437,25 @@ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" }, + "object-sizeof": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/object-sizeof/-/object-sizeof-2.6.1.tgz", + "integrity": "sha512-a7VJ1Zx7ZuHceKwjgfsSqzV/X0PVGvpZz7ho3Dn4Cs0LLcR5e5WuV+gsbizmplD8s0nAXMJmckKB2rkSiPm/Gg==", + "requires": { + "buffer": "^6.0.3" + }, + "dependencies": { + "buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + } + } + }, "object-treeify": { "version": "1.1.33", "resolved": "https://registry.npmjs.org/object-treeify/-/object-treeify-1.1.33.tgz", @@ -76839,8 +80832,7 @@ "pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" }, "parallel-transform": { "version": "1.2.0", @@ -78131,6 +82123,11 @@ "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-2.0.4.tgz", "integrity": "sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw==" }, + "react-image-file-resizer": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/react-image-file-resizer/-/react-image-file-resizer-0.4.8.tgz", + "integrity": "sha512-Ue7CfKnSlsfJ//SKzxNMz8avDgDSpWQDOnTKOp/GNRFJv4dO9L5YGHNEnj40peWkXXAK2OK0eRIoXhOYpUzUTQ==" + }, "react-is": { "version": "18.2.0", "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", @@ -78401,6 +82398,11 @@ } } }, + "react-string-replace": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/react-string-replace/-/react-string-replace-1.1.0.tgz", + "integrity": "sha512-N6RalSDFGbOHs0IJi1H611WbZsvk3ZT47Jl2JEXFbiS3kTwsdCYij70Keo/tWtLy7sfhDsYm7CwNM/WmjXIaMw==" + }, "react-tabs": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/react-tabs/-/react-tabs-6.0.0.tgz", @@ -79556,6 +83558,11 @@ "inherits": "^2.0.1" } }, + "ripemd160-min": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/ripemd160-min/-/ripemd160-min-0.0.6.tgz", + "integrity": "sha512-+GcJgQivhs6S9qvLogusiTcS9kQUfgR75whKuy5jIhuiOfQuJ8fjqxV6EGD5duH1Y/FawFUMtMhyeq3Fbnib8A==" + }, "rlp": { "version": "2.2.7", "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.7.tgz", @@ -79593,6 +83600,14 @@ } } }, + "rpc-utils": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rpc-utils/-/rpc-utils-0.6.2.tgz", + "integrity": "sha512-kzk1OflbBckfDBAo8JwsmtQSHzj+6hxRt5G+u8A8ZSmunBw1nhWvRkSq8j1+EvWBqBRLy1aiGLUW5644CZqQtA==", + "requires": { + "nanoid": "^3.3.1" + } + }, "rrweb-snapshot": { "version": "1.1.14", "resolved": "https://registry.npmjs.org/rrweb-snapshot/-/rrweb-snapshot-1.1.14.tgz", @@ -79673,6 +83688,11 @@ "events": "^3.0.0" } }, + "safe-json-utils": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/safe-json-utils/-/safe-json-utils-1.1.1.tgz", + "integrity": "sha512-SAJWGKDs50tAbiDXLf89PDwt9XYkWyANFWVzn4dTXl5QyI8t2o/bW5/OJl3lvc2WVU4MEpTo9Yz5NVFNsp+OJQ==" + }, "safe-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz", @@ -80727,6 +84747,14 @@ "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", "dev": true }, + "split": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/split/-/split-0.2.10.tgz", + "integrity": "sha512-e0pKq+UUH2Xq/sXbYpZBZc3BawsfDZ7dgv+JtRTUPNcvF5CMR4Y9cvJqkMY0MoxWzTHvZuz1beg6pNEKlszPiQ==", + "requires": { + "through": "2" + } + }, "split-on-first": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz", @@ -81697,6 +85725,11 @@ "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", "peer": true }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" + }, "through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", @@ -82116,6 +86149,11 @@ "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==" }, + "tweetnacl-util": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz", + "integrity": "sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==" + }, "type": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", @@ -82711,6 +86749,14 @@ "resolved": "https://registry.npmjs.org/varint/-/varint-5.0.2.tgz", "integrity": "sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==" }, + "varuint-bitcoin": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/varuint-bitcoin/-/varuint-bitcoin-1.1.2.tgz", + "integrity": "sha512-4EVb+w4rx+YfVM32HQX42AbbT7/1f5zwAYhIujKXKk8NQK+JfRVl3pqT3hjNn/L+RstigmGGKVwHA/P0wgITZw==", + "requires": { + "safe-buffer": "^5.1.1" + } + }, "vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", @@ -83142,6 +87188,11 @@ "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==", "dev": true }, + "web-streams-polyfill": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz", + "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==" + }, "web3": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/web3/-/web3-1.8.1.tgz", diff --git a/package.json b/package.json index 69266a3e9..7ef77e7fc 100644 --- a/package.json +++ b/package.json @@ -32,6 +32,7 @@ "@oceanprotocol/lib": "^2.7.0", "@oceanprotocol/typographies": "^0.1.0", "@oceanprotocol/use-dark-mode": "^2.4.3", + "@orbisclub/orbis-sdk": "^0.4.40", "@tippyjs/react": "^4.2.6", "@uiw/react-codemirror": "^4.19.5", "@urql/exchange-refocus": "^1.0.0", @@ -62,6 +63,7 @@ "react-paginate": "^8.1.4", "react-select": "^5.7.0", "react-spring": "^9.5.5", + "react-string-replace": "^1.1.0", "react-tabs": "^6.0.0", "react-toastify": "^9.1.1", "remark": "^14.0.2", diff --git a/src/@context/DirectMessages/_types.ts b/src/@context/DirectMessages/_types.ts new file mode 100644 index 000000000..30e28e5e4 --- /dev/null +++ b/src/@context/DirectMessages/_types.ts @@ -0,0 +1,665 @@ +export interface IOrbisConstructor { + ceramic?: unknown + node?: string + store?: string + PINATA_GATEWAY?: string + PINATA_API_KEY?: string + PINATA_SECRET_API_KEY?: string + useLit?: boolean +} + +export interface IOrbis { + api: any + session: any + connect: (provider: unknown, lit?: boolean) => Promise + connect_v2: (opts?: { + provider?: unknown + chain?: string + lit?: boolean + oauth?: unknown + }) => Promise + connectLit: (provider: unknown) => Promise<{ + status?: number + error?: unknown + result?: string + }> + connectWithSeed: (seed: Uint8Array) => Promise + createChannel: ( + group_id: string, + content: Pick + ) => Promise<{ + status: number + doc: string + result: string + }> + createContext: () => void + createConversation: (content: { + recipients: string[] + name?: string + description?: string + context?: string + }) => Promise<{ + status: number + doc: string + result: string + }> + createGroup: (content: { + name: string + pfp?: string + description?: string + }) => Promise<{ + status: number + doc: string + result: string + }> + createPost: (content: IOrbisPostContent) => Promise<{ + status: number + doc: string + result: string + }> + createTileDocument: ( + content: unknown, + tags: string[], + schema: string, + family: string + ) => Promise<{ + status: number + doc?: string + error?: unknown + result: string + }> + decryptMessage: (content: { + conversation_id: string + encryptedMessage: IOrbisEncryptedBody + }) => Promise<{ + result: string + status: number + }> + decryptPost: (content: IOrbisPostContent) => Promise<{ result: string }> + deletePost: (stream_id: string) => Promise<{ + status: number + result: string + }> + deterministicDocument: ( + content: unknown, + tags: string[], + schema?: string, + family?: string + ) => Promise<{ + status: number + doc?: string + error?: unknown + result: string + }> + editPost: ( + stream_id: string, + content: IOrbisPostContent, + encryptionRules?: IOrbisEncryptionRules + ) => Promise<{ + status: number + result: string + }> + getChannel: (channel_id: string) => Promise<{ + data: IOrbisChannel + error: unknown + status: number + }> + getConversation: (conversation_id: string) => Promise<{ + status: number + data: IOrbisConversation | null + error: unknown + }> + getConversations: (opts: { did: string; context?: string }) => Promise<{ + data: IOrbisConversation[] + error: unknown + status: number + }> + getCredentials: (did: string) => Promise<{ + data: { + stream_id: string + family: string + content: unknown + issuer: string + creator: string + subject_id: string + type: string + }[] + error: unknown + status: number + }> + getDids: (address: string) => Promise<{ + data: { + did: string + details: Pick + count_followers: number + count_following: number + pfp: string + }[] + error: unknown + status: number + }> + getGroup: (group_id: string) => Promise<{ + data: IOrbisGroup + error: unknown + status: number + }> + getGroupMembers: (group_id: string) => Promise<{ + data: { + active: 'true' | 'false' + content: { + active: boolean + group_id: string + } + created_at: string + did: string + group_id: string + profile_details: Pick + stream_id: string + timestamp: number + }[] + error: unknown + status: number + }> + getGroups: () => Promise<{ + data: IOrbisGroup[] + error: unknown + status: number + }> + getIsFollowing: ( + did_following: string, + did_followed: string + ) => Promise<{ + data: boolean + error: unknown + status: number + }> + getIsGroupMember: ( + group_id: string, + did: string + ) => Promise<{ + data: boolean + error: unknown + status: number + }> + getMessages: ( + conversation_id: string, + page: number + ) => Promise<{ + data: IOrbisMessage[] + error: unknown + status: number + }> + getNotifications: ( + options: { + context: string + did: string + master?: string + only_master?: boolean + tag?: string + algorithm?: string + }, + page: number + ) => Promise<{ + data: IOrbisNotification[] + error: unknown + status: number + }> + getNotificationsCount: (options: { + type: string + context?: string + conversation_id?: string + last_read_timestamp?: number + }) => Promise<{ + data: { count_new_notifications: number } + error: unknown + status: number + }> + getPost: (post_id: string) => Promise<{ + data: IOrbisPost + error: unknown + status: number + }> + getPosts: ( + options: { + context?: string + did?: string + master?: string + only_master?: boolean + tag?: string + algorithm?: keyof typeof IOrbisGetPostsAlgorithm | null + }, + page: number + ) => Promise<{ + data: IOrbisPost[] + error: unknown + status: number + }> + getReaction: ( + post_id: string, + did: string + ) => Promise<{ + data: { type: string } + error: unknown + status: number + }> + getProfile: (did: string) => Promise<{ + data: IOrbisProfile + error: unknown + status: number + }> + getProfileFollowers: (did: string) => Promise<{ + data: IOrbisProfile['details'][] + error: unknown + status: number + }> + getProfileFollowing: (did: string) => Promise<{ + data: IOrbisProfile['details'][] + error: unknown + status: number + }> + getProfileGroups: (did: string) => Promise<{ + data: { + active: 'true' | 'false' + content: { + active: boolean + group_id: string + } + created_at: string + did: string + group_details: IOrbisGroup['content'] + group_id: string + stream_id: string + }[] + error: unknown + status: number + }> + getProfilesByUsername: (username: string) => Promise<{ + data: IOrbisProfile[] + error: unknown + status: number + }> + isConnected: (sessionString?: string) => Promise + logout: () => { + status: number + result: string + error: unknown + } + react: ( + post_id: string, + type: string + ) => Promise<{ + status: number + doc: string + result: string + }> + sendMessage: (content: { conversation_id: string; body: string }) => Promise<{ + status: number + doc: string + result: string + }> + setFollow: ( + did: string, + active: boolean + ) => Promise<{ + status: number + doc: string + result: string + }> + setGroupMember: ( + group_id: string, + active: boolean + ) => Promise<{ + status: number + doc?: string + error?: unknown + result: string + }> + setNotificationsReadTime: ( + type: string, + timestamp: number, + context?: string + ) => Promise<{ + status: number + doc?: string + error?: unknown + result: string + }> + updateChannel: ( + channel_id: string, + content: Pick + ) => Promise<{ + status: number + doc: string + result: string + }> + updateContext: () => void + updateGroup: ( + stream_id: string, + content: { pfp: string; name: string; description: string } + ) => Promise<{ + status: number + doc: string + result: string + }> + updatePost: (stream_id: string, body: string) => void + updateProfile: (content: { + pfp: string + cover: string + username: string + description: string + pfpIsNft: { + chain: string + contract: string + tokenId: string + timestamp: string + } + data?: object + }) => Promise<{ + status: number + doc: string + result: string + }> + updateTileDocument: ( + stream_id: string, + content: unknown, + tags: string[], + schema: string, + family?: string + ) => Promise<{ + status: number + doc?: string + error?: unknown + result: string + }> + uploadMedia: (file: File) => Promise<{ + status: number + error?: unknown + result: { url: string; gateway: string } | string + }> +} + +export interface IOrbisConnectReturns { + status: number + did: string + details: { + did: string + profile: IOrbisProfile['details']['profile'] + hasLit: boolean + } + result: string +} + +export enum IOrbisGetPostsAlgorithm { + 'recommendations', + 'all-posts', + 'all-master-posts', + 'all-did-master-posts', + 'all-context-master-posts', + 'all-posts-non-filtered', + '' +} + +export enum OrbisReaction { + 'like', + 'haha', + 'downvote' +} + +export interface IOrbisGroup { + channels: Pick[] + content: { + name?: string + pfp?: string + description?: string + } + count_members: number + creator: string + last_activity_timestamp: number + stream_id: string +} + +export interface IOrbisChannel { + archived?: boolean + content: { + group_id: string + name: string + description: string + type: 'chat' | 'feed' + encryptionRules?: { + type: string + chain: string + contractType: 'ERC20' | 'ERC721' | 'ERC1155' + contractAddress: string + minTokenBalance: string + tokenId?: string + } + data?: object + } + created_at: string + creator: string + group_id: string + stream_id: string + timestamp: number + type: 'chat' | 'feed' +} + +export interface IOrbisProfile { + address: string + count_followers: number + count_following: number + details: { + a_r?: number + did: string + metadata?: { + address?: string + chain?: string + ensName?: string + } + nonces?: number + profile?: { + cover?: string + data?: object + description?: string + pfp?: string + pfpIsNft?: { + chain: string + contract: string + timestamp: string + tokenId: string + } + username?: string + } + twitter_details?: { + credential_id: string + issuer: string + timestamp: number + username: string + } + } + did: string + last_activity_timestamp: number + username: string +} + +export interface IOrbisEncryptionRules { + type: 'token-gated' | 'custom' + chain: string + contractType: 'ERC20' | 'ERC721' | 'ERC1155' + contractAddress: string + minTokenBalance: string + tokenId: string + accessControlConditions?: object +} + +export interface IOrbisEncryptedBody { + accessControlConditions: string + encryptedString: string + encryptedSymmetricKey: string +} + +export interface IOrbisPostMention { + did: string + username: string +} + +export interface IOrbisPostContent { + body: string + title?: string + context?: string + master?: string + mentions?: IOrbisPostMention[] + reply_to?: string + type?: string + tags?: { + slug: string + title: string + }[] + data?: object + encryptionRules?: IOrbisEncryptionRules | null + encryptedMessage?: object | null + encryptedBody?: IOrbisEncryptedBody | null +} + +export interface IOrbisPost { + content: IOrbisPostContent + context?: string + context_details?: { + channel_details?: IOrbisChannel['content'] + channel_id?: string + group_details?: IOrbisGroup['content'] + group_id?: string + } + count_commits?: number + count_downvotes?: number + count_haha?: number + count_likes?: number + count_replies?: number + creator: string + creator_details?: IOrbisProfile['details'] + group_id?: string | null + indexing_metadata?: { + language?: string + urlMetadata?: Record + } + master?: string | null + reply_to?: string | null + reply_to_creator_details?: Pick< + IOrbisProfile['details'], + 'did' | 'metadata' | 'profile' + > + reply_to_details?: IOrbisPostContent + stream_id: string + timestamp: number + type?: string +} + +export interface IOrbisMessageContent { + conversation_id?: string + encryptedMessage?: { + accessControlConditions: string + encryptedString: string + encryptedSymmetricKey: string + } | null + encryptedMessageSolana?: { + accessControlConditions: string + encryptedString: string + encryptedSymmetricKey: string + } | null + master?: string | null + reply_to?: string | null +} + +export interface IOrbisMessage { + content: IOrbisMessageContent + conversation_id: string + created_at?: string + creator: string + creator_details: IOrbisProfile['details'] + master?: string | null + recipients?: string[] + reply_to?: string | null + reply_to_creator_details?: Pick< + IOrbisProfile['details'], + 'did' | 'metadata' | 'profile' + > + reply_to_details?: IOrbisMessageContent + stream_id: string + timestamp: number +} + +export interface IOrbisConversation { + content: { + recipients: string[] + } + context: string | null + details: { + content: { + recipients: string[] + creator: string + } + } + last_message_timestamp: number + last_timestamp_read: number + recipients: string[] + recipients_details: IOrbisProfile['details'][] + stream_id: string +} + +export interface IOrbisNotification { + content: { + conversation_id: string + encryptedMessage: IOrbisEncryptedBody + } + family: string + post_details: object + status: string + type: string + user_notifying_details: { + did: string + profile: IOrbisProfile['details']['profile'] + } +} + +export interface IConversationWithAdditionalData extends IOrbisConversation { + notifications_count: number + empty_message: boolean +} + +export type IOrbisProvider = { + orbis: IOrbis + account: IOrbisProfile + hasLit: boolean + openConversations: boolean + conversationId: string + conversations: IConversationWithAdditionalData[] + activeConversationTitle: string + notifsLastRead: Record> + totalNotifications: number + connectOrbis: (options: { + address: string + lit?: boolean + }) => Promise + disconnectOrbis: (address: string) => void + checkOrbisConnection: (options: { + address: string + autoConnect?: boolean + lit?: boolean + }) => Promise + connectLit: () => Promise<{ + status?: number + error?: unknown + result?: string + }> + setActiveConversationTitle: (title: string) => void + setOpenConversations: (open: boolean) => void + setConversationId: (conversationId: string) => void + getConversationByDid: (userDid: string) => Promise + createConversation: (recipients: string[]) => Promise + getConversationTitle: (conversationId: string) => Promise + getDid: (address: string) => Promise + clearConversationNotifs: (conversationId: string) => void + updateConversationEmptyMessageStatus: ( + conversationId: string, + status: boolean + ) => void +} diff --git a/src/@context/DirectMessages/index.tsx b/src/@context/DirectMessages/index.tsx new file mode 100644 index 000000000..3b842bd37 --- /dev/null +++ b/src/@context/DirectMessages/index.tsx @@ -0,0 +1,482 @@ +import React, { + useContext, + createContext, + useState, + useMemo, + useEffect, + ReactNode, + ReactElement +} from 'react' +import { useInterval } from '@hooks/useInterval' +import { Orbis } from '@orbisclub/orbis-sdk' +import { useWeb3 } from '../Web3' +import { accountTruncate } from '@utils/web3' +import { didToAddress, sleep } from '@shared/DirectMessages/_utils' +import { getEnsName } from '@utils/ens' +import usePrevious from '@hooks/usePrevious' +import useLocalStorage from '@hooks/useLocalStorage' +import DirectMessages from '@shared/DirectMessages' +import { + IOrbis, + IOrbisProfile, + IOrbisProvider, + IConversationWithAdditionalData +} from './_types' +import { LoggerInstance } from '@oceanprotocol/lib' + +const OrbisContext = createContext({} as IOrbisProvider) + +const orbis: IOrbis = new Orbis() +const NOTIFICATION_REFRESH_INTERVAL = 5000 +const CONVERSATION_CONTEXT = + process.env.NEXT_PUBLIC_ORBIS_CONTEXT || 'ocean_market' // Can be changed to whatever + +function OrbisProvider({ children }: { children: ReactNode }): ReactElement { + const { web3Provider, accountId } = useWeb3() + const prevAccountId = usePrevious(accountId) + + const [ceramicSessions, setCeramicSessions] = useLocalStorage( + 'ocean-ceramic-sessions', + [] + ) + const [notifsLastRead, setNotifsLastRead] = useLocalStorage< + Record> + >('ocean-notifs-last-read', {}) + + const [account, setAccount] = useState(null) + const [hasLit, setHasLit] = useState(false) + const [openConversations, setOpenConversations] = useState(false) + const [conversationId, setConversationId] = useState(null) + const [conversations, setConversations] = useState< + IConversationWithAdditionalData[] + >([]) + const [activeConversationTitle, setActiveConversationTitle] = useState(null) + + // Function to reset states + const resetStates = () => { + setAccount(null) + setConversationId(null) + setConversations([]) + setHasLit(false) + } + + // Remove ceramic session + const removeCeramicSession = (address: string) => { + const _ceramicSessions = { ...ceramicSessions } + delete _ceramicSessions[address.toLowerCase()] + setCeramicSessions({ ..._ceramicSessions }) + } + + // Remove lit signature + const removeLitSignature = () => { + window.localStorage.removeItem('lit-auth-signature') + window.localStorage.removeItem('lit-auth-sol-signature') + } + + // Connecting to Orbis + const connectOrbis = async ({ + address, + lit = false + }: { + address: string + lit?: boolean + }) => { + const res = await orbis.connect_v2({ + provider: web3Provider, + chain: 'ethereum', + lit + }) + + if (res.status === 200) { + const { data } = await orbis.getProfile(res.did) + setAccount(data) + setHasLit(res.details.hasLit) + const sessionString = orbis.session.serialize() + setCeramicSessions({ + ...ceramicSessions, + [address.toLowerCase()]: sessionString + }) + return data + } else { + await connectOrbis({ address }) + } + } + + const disconnectOrbis = (address: string) => { + const res = orbis.logout() + if (res.status === 200) { + resetStates() + removeLitSignature() + removeCeramicSession(address) + } + } + + const connectLit = async () => { + const res = await orbis.connectLit(web3Provider) + setHasLit(res.status === 200) + return res + } + + const checkOrbisConnection = async ({ + address, + autoConnect, + lit + }: { + address: string + autoConnect?: boolean + lit?: boolean + }) => { + const sessionString = ceramicSessions[address.toLowerCase()] || '-' + const res = await orbis.isConnected(sessionString) + if ( + res.status === 200 && + didToAddress(res.did) === accountId.toLowerCase() + ) { + setHasLit(res.details.hasLit) + const { data } = await orbis.getProfile(res.did) + setAccount(data) + return data + } else if (autoConnect) { + const data = await connectOrbis({ address, lit }) + return data + } else { + resetStates() + removeLitSignature() + removeCeramicSession(address) + return null + } + } + + const getDid = async (address: string) => { + if (!address) return null + + const { data, error } = await orbis.getDids(address) + + if (error) { + return + } + + let _did: string = null + + if (data && data.length > 0) { + // Try to get mainnet did + const mainnetDid = data.find( + (o: { + did: string + details: Pick + }) => { + const did = o.did.split(':') + return did[3] === '1' + } + ) + + _did = mainnetDid?.did || data[0].did + } else { + _did = `did:pkh:eip155:1:${address.toLowerCase()}` + } + + return _did + } + + const getConversationNotifications: ( + conversations: IConversationWithAdditionalData[] + ) => Promise = async (conversations) => { + if (!conversations.length || !orbis) return + + let did = account?.did + + if (!did && accountId) { + did = await getDid(accountId) + } + + const _newConversations = await Promise.all( + conversations.map(async (conversation) => { + // Get timestamp of last read notification + const lastRead = + notifsLastRead[accountId]?.[conversation.stream_id] || 0 + + const { data, error } = await orbis.api + .rpc('orbis_f_count_notifications_alpha', { + user_did: did, + notif_type: 'messages', + q_context: CONVERSATION_CONTEXT, + q_conversation_id: conversation.stream_id, + q_last_read: lastRead + }) + .single() + + if (error) { + LoggerInstance.error(`[directMessages] orbis api error: `, error) + } + + if (data) { + const newNotifsCount = data.count_new_notifications + // Get conversation by stream_id + conversation.notifications_count = newNotifsCount + } + + const { data: _data, error: _error } = await orbis.getMessages( + conversation.stream_id, + 0 + ) + + if (_error) { + LoggerInstance.error( + `[directMessages] orbis getMessages sdk error: `, + _error + ) + } + + if (_data) { + conversation.empty_message = _data.length === 0 + } + + return conversation + }) + ) + + setConversations(_newConversations) + } + + const clearConversationNotifs = async (conversationId: string) => { + if (!accountId || !conversationId) return + + const _notifsLastRead = { ...notifsLastRead } + + // Add address if not exists + if (!_notifsLastRead[accountId]) { + _notifsLastRead[accountId] = {} + } + + // Add conversationId if not exists + if (!_notifsLastRead[accountId][conversationId]) { + _notifsLastRead[accountId][conversationId] = 0 + } + + // Update last read + _notifsLastRead[accountId][conversationId] = Math.floor(Date.now() / 1000) + setNotifsLastRead(_notifsLastRead) + + // Set conversation notifications count to 0 + const _conversations = conversations.map((conversation) => { + if (conversation.stream_id === conversationId) { + conversation.notifications_count = 0 + } + return conversation + }) + + setConversations(_conversations) + } + + const getConversations = async (did: string = null) => { + if (!did) return [] + + const { data } = await orbis.getConversations({ + did, + context: CONVERSATION_CONTEXT + }) + + // Only show conversations with unique recipients + const filteredConversations: IConversationWithAdditionalData[] = [] + data.forEach((conversation: IConversationWithAdditionalData) => { + if (conversation.recipients.length === 2) { + // Sort recipients by alphabetical order and stringify + const sortedRecipients = conversation.recipients.sort() + const stringifiedRecipients = sortedRecipients.join(',') + + // Check if conversation already exists based on sorted and stringified recipients + const found = filteredConversations.find( + (o: IConversationWithAdditionalData) => + o.recipients.length > 1 && + o.recipients.sort().join(',') === stringifiedRecipients + ) + + if (!found) { + filteredConversations.push(conversation) + } + } + }) + + // Also fetch message notifications + await getConversationNotifications(filteredConversations) + + setConversations(filteredConversations) + return filteredConversations + } + + const getConversation = async (conversationId: string) => { + if (!conversationId) return null + const { data, error } = await orbis.getConversation(conversationId) + if (error || !data) { + await sleep(2000) + await getConversation(conversationId) + } else { + return data as IConversationWithAdditionalData + } + } + + const getConversationByDid = async (userDid: string) => { + if (!account || !userDid) return null + + // Check from current conversations list + if (conversations.length > 0) { + const filteredConversations = conversations.filter( + (conversation: IConversationWithAdditionalData) => { + return ( + conversation.recipients.length === 2 && + conversation.recipients.includes(userDid) + ) + } + ) + if (filteredConversations.length) return filteredConversations[0] + } + + // Refetch conversations + const _conversations = await getConversations(account?.did) + if (!_conversations.length) return null + + const filteredConversations = _conversations.filter( + (conversation: IConversationWithAdditionalData) => { + return ( + conversation.recipients.length === 2 && + conversation.recipients.includes(userDid) + ) + } + ) + + if (!filteredConversations.length) return null + + return filteredConversations[0] + } + + const createConversation = async (recipients: string[]) => { + if (!recipients.length) return null + + const res = await orbis.createConversation({ + recipients, + context: CONVERSATION_CONTEXT + }) + + if (res.status === 200) { + await sleep(2000) + const _newConversation = await getConversation(res.doc) + if (_newConversation) { + _newConversation.notifications_count = 0 + _newConversation.empty_message = true + setConversations([_newConversation, ...conversations]) + return _newConversation.stream_id + } + } + } + + const getConversationTitle = async (conversationId: string) => { + if (conversationId && conversations.length) { + // Get conversation based on conversationId + const conversation = conversations.find( + (o) => o.stream_id === conversationId + ) + + if (!conversation) return null + + // Get address from did + const did = conversation.recipients.find((o: string) => o !== account.did) + const address = didToAddress(did) + + // Get ens name if exists + const ensName = await getEnsName(address) + + return ensName || accountTruncate(address) + } else { + return null + } + } + + const totalNotifications = useMemo(() => { + if (!conversations.length) return 0 + + // Loop through conversations and count notifications + let count = 0 + conversations.forEach((conversation: IConversationWithAdditionalData) => { + count += conversation?.notifications_count || 0 + }) + + return count + }, [conversations]) + + const updateConversationEmptyMessageStatus = async ( + conversationId: string, + empty: boolean + ) => { + if (!conversationId) return null + + const _conversations = conversations.map((conversation) => { + if (conversation.stream_id === conversationId) { + conversation.empty_message = empty + } + return conversation + }) + + setConversations(_conversations) + } + + useInterval(async () => { + await getConversations(account?.did) + }, NOTIFICATION_REFRESH_INTERVAL) + + useEffect(() => { + if (web3Provider && accountId) { + if (accountId !== prevAccountId) { + resetStates() + removeLitSignature() + } + // Check if wallet connected + checkOrbisConnection({ address: accountId }) + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [accountId, prevAccountId, web3Provider]) + + useEffect(() => { + if (account) { + getConversations(account?.did) + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [account]) + + return ( + + {children} + + + ) +} + +const useOrbis = () => { + return useContext(OrbisContext) +} + +export { OrbisProvider, useOrbis } diff --git a/src/@context/Web3.tsx b/src/@context/Web3.tsx index 843803cfa..7ea8a7715 100644 --- a/src/@context/Web3.tsx +++ b/src/@context/Web3.tsx @@ -43,7 +43,7 @@ interface Web3ProviderValue { web3Loading: boolean isSupportedOceanNetwork: boolean approvedBaseTokens: TokenInfo[] - connect: () => Promise + connect: () => Promise logout: () => Promise } @@ -136,8 +136,10 @@ function Web3Provider({ children }: { children: ReactNode }): ReactElement { const accountId = (await web3.eth.getAccounts())[0] setAccountId(accountId) LoggerInstance.log('[web3] account id', accountId) + return accountId } catch (error) { LoggerInstance.error('[web3] Error: ', error.message) + return null } finally { setWeb3Loading(false) } diff --git a/src/@hooks/useInterval.ts b/src/@hooks/useInterval.ts new file mode 100644 index 000000000..cb119ed32 --- /dev/null +++ b/src/@hooks/useInterval.ts @@ -0,0 +1,25 @@ +import { useEffect, useRef } from 'react' + +export const useInterval = ( + callback: () => Promise, + delay: number | null | false +) => { + const savedCallback = useRef<() => Promise>() + + useEffect(() => { + savedCallback.current = callback + }, [callback]) + + useEffect(() => { + const tick = () => { + savedCallback?.current() + } + + if (delay) { + const id = setInterval(tick, delay) + return () => { + clearInterval(id) + } + } + }, [callback, delay]) +} diff --git a/src/@hooks/useLocalStorage.ts b/src/@hooks/useLocalStorage.ts new file mode 100644 index 000000000..e1cfa3fd2 --- /dev/null +++ b/src/@hooks/useLocalStorage.ts @@ -0,0 +1,43 @@ +import { LoggerInstance } from '@oceanprotocol/lib' +import { useState } from 'react' + +function useLocalStorage(key: string, initialValue: T) { + // State to store our value + // Pass initial state function to useState so logic is only executed once + const [storedValue, setStoredValue] = useState(() => { + if (typeof window === 'undefined') { + return initialValue + } + try { + // Get from local storage by key + const item = window.localStorage.getItem(key) + // Parse stored json or if none return initialValue + return item ? JSON.parse(item) : initialValue + } catch (error) { + // If error also return initialValue + LoggerInstance.error(`[useLocalStorage] error: `, error) + return initialValue + } + }) + // Return a wrapped version of useState's setter function that ... + // ... persists the new value to localStorage. + const setValue = (value: T | ((val: T) => T)) => { + try { + // Allow value to be a function so we have same API as useState + const valueToStore = + value instanceof Function ? value(storedValue) : value + // Save state + setStoredValue(valueToStore) + // Save to local storage + if (typeof window !== 'undefined') { + window.localStorage.setItem(key, JSON.stringify(valueToStore)) + } + } catch (error) { + // A more advanced implementation would handle the error case + LoggerInstance.error(`[useLocalStorage] error: `, error) + } + } + return [storedValue, setValue] as const +} + +export default useLocalStorage diff --git a/src/@hooks/usePrevious.ts b/src/@hooks/usePrevious.ts new file mode 100644 index 000000000..9b5d89fe5 --- /dev/null +++ b/src/@hooks/usePrevious.ts @@ -0,0 +1,15 @@ +import { useEffect, useRef } from 'react' + +function usePrevious(value: T): T { + // The ref object is a generic container whose current property is mutable ... + // ... and can hold any value, similar to an instance property on a class + const ref: any = useRef() + // Store current value in ref + useEffect(() => { + ref.current = value + }, [value]) // Only re-run if value changes + // Return previous value (happens before update in useEffect above) + return ref.current +} + +export default usePrevious diff --git a/src/@images/chatbubble.svg b/src/@images/chatbubble.svg new file mode 100644 index 000000000..38c8328cb --- /dev/null +++ b/src/@images/chatbubble.svg @@ -0,0 +1 @@ + diff --git a/src/@images/chevronup.svg b/src/@images/chevronup.svg new file mode 100644 index 000000000..9a2290051 --- /dev/null +++ b/src/@images/chevronup.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/@images/comment.svg b/src/@images/comment.svg new file mode 100644 index 000000000..2de140b4d --- /dev/null +++ b/src/@images/comment.svg @@ -0,0 +1,2 @@ + + diff --git a/src/@images/ellipsis.svg b/src/@images/ellipsis.svg new file mode 100644 index 000000000..dae90d6cb --- /dev/null +++ b/src/@images/ellipsis.svg @@ -0,0 +1 @@ + diff --git a/src/@images/emoji.svg b/src/@images/emoji.svg new file mode 100644 index 000000000..7907d6865 --- /dev/null +++ b/src/@images/emoji.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/@images/laugh.svg b/src/@images/laugh.svg new file mode 100644 index 000000000..cbf277bc4 --- /dev/null +++ b/src/@images/laugh.svg @@ -0,0 +1 @@ + diff --git a/src/@images/reply.svg b/src/@images/reply.svg new file mode 100644 index 000000000..90343b89c --- /dev/null +++ b/src/@images/reply.svg @@ -0,0 +1 @@ + diff --git a/src/@images/send.svg b/src/@images/send.svg new file mode 100644 index 000000000..da6354d18 --- /dev/null +++ b/src/@images/send.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/@images/thumbsdown.svg b/src/@images/thumbsdown.svg new file mode 100644 index 000000000..5a07c2411 --- /dev/null +++ b/src/@images/thumbsdown.svg @@ -0,0 +1 @@ + diff --git a/src/@images/thumbsup.svg b/src/@images/thumbsup.svg new file mode 100644 index 000000000..a7a73d344 --- /dev/null +++ b/src/@images/thumbsup.svg @@ -0,0 +1 @@ + diff --git a/src/@utils/throttle.ts b/src/@utils/throttle.ts new file mode 100644 index 000000000..0e9527b7a --- /dev/null +++ b/src/@utils/throttle.ts @@ -0,0 +1,24 @@ +export function throttle( + fn: (...args: Args) => void, + cooldown: number +) { + let lastArgs: Args | undefined + + const run = () => { + if (lastArgs) { + fn(...lastArgs) + lastArgs = undefined + } + } + + const throttled = (...args: Args) => { + const isOnCooldown = !!lastArgs + lastArgs = args + if (isOnCooldown) { + return + } + window.setTimeout(run, cooldown) + } + + return throttled +} diff --git a/src/components/@shared/DirectMessages/Conversation.module.css b/src/components/@shared/DirectMessages/Conversation.module.css new file mode 100644 index 000000000..3ec6c6985 --- /dev/null +++ b/src/components/@shared/DirectMessages/Conversation.module.css @@ -0,0 +1,138 @@ +.conversation { + position: absolute; + top: 0; + left: 0; + height: 100%; + width: 100%; + display: flex; + flex-direction: column; + background-color: var(--background-content); +} + +.loading { + position: absolute; + top: calc(var(--spacer) / 3); + left: 50%; + transform: translateX(-50%); + padding: calc(var(--spacer) / 4); + text-align: center; + color: var(--color-secondary); + /* -webkit-animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; + -moz-animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; + animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; */ + background-color: var(--background-content); + z-index: 2; +} + +.connectLit { + height: 100%; + display: flex; + flex-direction: column; + padding: calc(var(--spacer) / 2); + align-items: center; + justify-content: center; +} + +.connectLit p { + text-align: center; + font-size: var(--font-size-small); + color: var(--color-secondary); +} + +.noMessages { + text-align: center; + padding: calc(var(--spacer) / 2); + color: var(--color-secondary); +} + +.messages { + position: relative; + flex-grow: 1; + overflow: hidden; +} + +.messages > .scrollContent { + height: 100%; + overflow-y: auto; + padding: calc(var(--spacer) / 2) calc(var(--spacer) / 2) + calc(var(--spacer) / 4); +} + +.newMessagesBadge { + position: absolute; + height: auto; + bottom: calc(var(--spacer) / 2); + left: 50%; + transform: translateX(-50%); + border-radius: var(--border-radius); + background: var(--brand-pink); + color: var(--brand-white); + padding: calc(var(--spacer) / 4) calc(var(--spacer) / 2); + border: 0; + outline: 0; + cursor: pointer; + font-size: var(--font-size-text); + box-shadow: 0 2px 4px var(--box-shadow-color); +} + +.message { + display: flex; + flex-direction: column; + align-items: flex-start; + margin-bottom: calc(var(--spacer) / 4); + max-width: 80%; +} + +.pulse { + animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; +} + +.chatBubble { + display: inline-block; + background-color: var(--color-primary); + padding: calc(var(--spacer) / 4) calc(var(--spacer) / 2.5); + font-size: var(--font-size-text); + border-radius: 1rem; + word-break: break-word; + flex-shrink: 1; +} + +.time { + font-size: var(--font-size-mini); + color: var(--color-secondary); + padding-top: calc(var(--spacer) / 8); +} + +.message:not(.showTime) .time { + display: none; +} + +.message.right { + align-items: flex-end; + margin-left: auto; +} + +.message.right .chatBubble { + color: var(--brand-white); + background-color: var(--color-primary); + border-bottom-right-radius: var(--border-radius); +} + +.message.left .chatBubble { + background-color: var(--border-color); + border-bottom-left-radius: var(--border-radius); +} + +.message:not(.showTime).right + .message.right .chatBubble { + border-top-right-radius: 0; +} + +.message:not(.showTime).left + .message.left .chatBubble { + border-top-left-radius: 0; +} + +@keyframes pulse { + 50% { + opacity: 0.5; + } +} diff --git a/src/components/@shared/DirectMessages/Conversation.tsx b/src/components/@shared/DirectMessages/Conversation.tsx new file mode 100644 index 000000000..a400447a0 --- /dev/null +++ b/src/components/@shared/DirectMessages/Conversation.tsx @@ -0,0 +1,232 @@ +import React, { useState, useEffect, useRef } from 'react' +import { useOrbis } from '@context/DirectMessages' +import { useInterval } from '@hooks/useInterval' +import { throttle } from '@utils/throttle' +import Time from '@shared/atoms/Time' +import Button from '@shared/atoms/Button' +import DecryptedMessage from './DecryptedMessage' +import Postbox from './Postbox' +import styles from './Conversation.module.css' +import { LoggerInstance } from '@oceanprotocol/lib' +import { IOrbisMessage } from '@context/DirectMessages/_types' + +export default function DmConversation() { + const { + orbis, + account, + conversationId, + hasLit, + connectLit, + clearConversationNotifs + } = useOrbis() + + const messagesWrapper = useRef(null) + const [isInitialized, setIsInitialized] = useState(false) + const [isLoading, setIsLoading] = useState(false) + const [messages, setMessages] = useState([]) + const [currentPage, setCurrentPage] = useState(0) + const [hasMore, setHasMore] = useState(true) + const [newMessages, setNewMessages] = useState(0) + + const scrollToBottom = (smooth = false) => { + setTimeout(() => { + messagesWrapper.current.scrollTo({ + top: messagesWrapper.current.scrollHeight, + behavior: smooth ? 'smooth' : 'auto' + }) + }, 300) + } + + const getMessages: (options?: { + polling?: boolean + reset?: boolean + }) => Promise = async ({ polling = false, reset = false }) => { + if (isLoading || !hasLit) return + + if (!polling) setIsLoading(true) + + const _page = polling || reset ? 0 : currentPage + let _messages = reset ? [] : [...messages] + const { data, error } = await orbis.getMessages(conversationId, _page) + + if (error) { + LoggerInstance.error(error) + } + + if (data.length) { + data.reverse() + if (!polling) { + setHasMore(data.length >= 50) + _messages = [...data, ..._messages] + setMessages(_messages) + if (currentPage === 0) { + clearConversationNotifs(conversationId) + scrollToBottom() + } + setCurrentPage(_page + 1) + } else { + const unique = data.filter( + (a) => !_messages.some((b) => a.stream_id === b.stream_id) + ) + setMessages([..._messages, ...unique]) + const el = messagesWrapper.current + if (el && el.scrollHeight > el.offsetHeight) { + setNewMessages((prev) => prev + unique.length) + } + } + } + + setIsInitialized(true) + setIsLoading(false) + } + + useInterval( + async () => { + getMessages({ polling: true }) + }, + !isLoading && hasLit && isInitialized ? 5000 : false + ) + + const showTime = (streamId: string): boolean => { + const index = messages.findIndex((o) => o.stream_id === streamId) + + if (index < -1) return true + + const nextMessage = messages[index + 1] + if (!nextMessage || messages[index].creator !== nextMessage.creator) + return true + + return nextMessage.timestamp - messages[index].timestamp > 60 + } + + const callback = (nMessage: IOrbisMessage) => { + const _messages = [...messages, nMessage] + setMessages(_messages) + scrollToBottom() + } + + const onScrollMessages = throttle(() => { + const el = messagesWrapper.current + + if (!el) return + + if (hasMore && el.scrollTop <= 50) { + getMessages() + } + + if ( + Math.ceil(el.scrollTop) >= Math.floor(el.scrollHeight - el.offsetHeight) + ) { + setNewMessages(0) + clearConversationNotifs(conversationId) + } + + // Remove scroll listener + messagesWrapper.current.removeEventListener('scroll', onScrollMessages) + + // Readd scroll listener + setTimeout(() => { + messagesWrapper.current.addEventListener('scroll', onScrollMessages) + }, 100) + }, 1000) + + useEffect(() => { + setIsInitialized(false) + setMessages([]) + if ( + conversationId && + !conversationId.startsWith('new-') && + orbis && + hasLit + ) { + getMessages({ reset: true }) + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [conversationId, orbis, hasLit]) + + useEffect(() => { + const el = messagesWrapper.current + el?.addEventListener('scroll', onScrollMessages) + + return () => { + el?.removeEventListener('scroll', onScrollMessages) + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [messages]) + + return ( +
+ {!hasLit ? ( +
+

+ You need to configure your private account to access your private + conversations. +

+ +
+ ) : ( + <> + {isLoading &&
Loading...
} +
+ {!isLoading && messages.length === 0 ? ( +
No message yet
+ ) : ( +
+ {messages.map((message) => ( +
+
+ +
+
+
+
+ ))} +
+ )} + + {newMessages > 0 && ( + + )} +
+ + + )} +
+ ) +} diff --git a/src/components/@shared/DirectMessages/DecryptedMessage.module.css b/src/components/@shared/DirectMessages/DecryptedMessage.module.css new file mode 100644 index 000000000..b84c7aada --- /dev/null +++ b/src/components/@shared/DirectMessages/DecryptedMessage.module.css @@ -0,0 +1,39 @@ +.decrypting { + -webkit-animation: pulse 2s ease-in-out 0s infinite forwards; + -moz-animation: pulse 2s ease-in-out 0s infinite forwards; + animation: pulse 2s ease-in-out 0s infinite forwards; +} + +.refresh { + position: absolute; + width: 24px; + height: 24px; + top: 0; + background: transparent; + border: 0; + cursor: pointer; +} + +.refreshIcon { + fill: var(--font-color-text); +} + +.refresh.right { + right: -38px; +} + +.refresh.left { + right: calc(100% + 16px); +} + +@keyframes pulse { + 0% { + opacity: 1; + } + 50% { + opacity: 0; + } + 100% { + opacity: 1; + } +} diff --git a/src/components/@shared/DirectMessages/DecryptedMessage.tsx b/src/components/@shared/DirectMessages/DecryptedMessage.tsx new file mode 100644 index 000000000..fb22c371b --- /dev/null +++ b/src/components/@shared/DirectMessages/DecryptedMessage.tsx @@ -0,0 +1,77 @@ +import React, { useState, useEffect } from 'react' +import { useOrbis } from '@context/DirectMessages' +import Refresh from '@images/refresh.svg' +import styles from './DecryptedMessage.module.css' +import { IOrbisMessageContent } from '@context/DirectMessages/_types' +import { LoggerInstance } from '@oceanprotocol/lib' + +export default function DecryptedMessage({ + content, + position = 'right' +}: { + content: IOrbisMessageContent & { decryptedMessage?: string } + position: 'left' | 'right' +}) { + const { orbis } = useOrbis() + const [loading, setLoading] = useState(true) + const [decrypted, setDecrypted] = useState(null) + const [encryptionError, setEncryptionError] = useState(false) + + const decryptMessage = async () => { + setLoading(true) + setEncryptionError(false) + + try { + if (content?.decryptedMessage) { + setDecrypted(content?.decryptedMessage) + } else { + const res = await orbis.decryptMessage({ + conversation_id: content?.conversation_id, + encryptedMessage: content?.encryptedMessage + }) + if (res.status === 200) { + setEncryptionError(false) + setDecrypted(res.result) + } else { + setEncryptionError(true) + setDecrypted('Decryption error - please try later') + } + } + } catch (error) { + LoggerInstance.error(`[decryptMessage] orbis api error: `, error) + setEncryptionError(true) + setDecrypted('Decryption error - please try later') + } + + setLoading(false) + } + + useEffect(() => { + if (content && orbis) decryptMessage() + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [content, orbis]) + + if (loading) { + return --- + } + + return ( +
+ {!loading ? decrypted : '---'} + {encryptionError && ( + + )} +
+ ) +} diff --git a/src/components/@shared/DirectMessages/DmButton.tsx b/src/components/@shared/DirectMessages/DmButton.tsx new file mode 100644 index 000000000..8a7839d00 --- /dev/null +++ b/src/components/@shared/DirectMessages/DmButton.tsx @@ -0,0 +1,77 @@ +import React, { useEffect, useState } from 'react' +import Button from '@shared/atoms/Button' +import styles from './DmButton.module.css' +import { useWeb3 } from '@context/Web3' +import { useOrbis } from '@context/DirectMessages' + +export default function DmButton({ + accountId, + text = 'Send Message' +}: { + accountId: string + text?: string +}) { + const { accountId: ownAccountId, connect } = useWeb3() + const { + checkOrbisConnection, + getConversationByDid, + setConversationId, + setOpenConversations, + createConversation, + getDid + } = useOrbis() + const [userDid, setUserDid] = useState() + const [isCreatingConversation, setIsCreatingConversation] = useState(false) + + const handleActivation = async () => { + const resConnect = await connect() + if (resConnect) { + await checkOrbisConnection({ + address: resConnect, + autoConnect: true, + lit: true + }) + } + } + + useEffect(() => { + const getUserDid = async () => { + const did = await getDid(accountId) + setUserDid(did) + } + + if (accountId) { + getUserDid() + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [accountId]) + + if (accountId !== ownAccountId && userDid) { + return ( + + ) + } +} diff --git a/src/components/@shared/DirectMessages/Header.module.css b/src/components/@shared/DirectMessages/Header.module.css new file mode 100644 index 000000000..1f518113c --- /dev/null +++ b/src/components/@shared/DirectMessages/Header.module.css @@ -0,0 +1,101 @@ +.header { + display: flex; + flex-wrap: wrap; + gap: calc(0.5 * var(--spacer)); + align-items: center; + padding: calc(0.35 * var(--spacer)) calc(0.5 * var(--spacer)); + border-bottom: 1px solid var(--border-color); + box-shadow: var(--box-shadow); + font-size: var(--font-size-h5); + font-weight: var(--font-weight-bold); + cursor: pointer; +} + +.header > * { + pointer-events: none; +} + +.icon { + width: 1.5rem; + fill: var(--font-color-text); +} + +.btnBack { + border: none; + background-color: transparent; + padding: 0; + margin: 0; + cursor: pointer; + width: 2rem; + height: 2rem; + border-radius: 50%; + display: flex; + align-items: center; + justify-content: center; + pointer-events: auto; +} + +.btnBack:hover { + background-color: var(--background-highlight); +} + +.btnBack .backIcon { + pointer-events: none; + width: 1rem; + fill: var(--font-color-text); + transform: rotate(180deg); +} + +.btnCopy { + border: none; + background-color: transparent; + padding: 0; + margin: 0; + cursor: pointer; + display: flex; + align-items: center; + justify-content: center; + pointer-events: auto; +} + +.btnCopy .copyIcon { + pointer-events: none; + width: 1rem; + fill: var(--color-secondary); +} + +.toggleArrow { + display: flex; + align-items: center; + justify-content: center; + margin-left: auto; + background: transparent; + border: none; + color: var(--font-color-text); + width: 32px; + height: 32px; +} + +.toggleArrow .icon { + margin-left: auto; + margin-right: auto; + fill: transparent; +} + +.isFlipped { + transform: scaleY(-1); +} + +.notificationCount { + background-color: var(--color-primary); + width: 24px; + height: 24px; + color: var(--brand-white); + border-radius: 100%; + display: flex; + justify-content: center; + align-items: center; + font-size: var(--font-size-mini); + font-weight: 600; + margin-left: calc(var(--spacer) / 4); +} diff --git a/src/components/@shared/DirectMessages/Header.tsx b/src/components/@shared/DirectMessages/Header.tsx new file mode 100644 index 000000000..99c022bf6 --- /dev/null +++ b/src/components/@shared/DirectMessages/Header.tsx @@ -0,0 +1,127 @@ +import React, { useEffect } from 'react' +import styles from './Header.module.css' +import { useWeb3 } from '@context/Web3' +import { useOrbis } from '@context/DirectMessages' +import { didToAddress } from './_utils' +import { toast } from 'react-toastify' +import ChatBubble from '@images/chatbubble.svg' +import ArrowBack from '@images/arrow.svg' +import ChevronUp from '@images/chevronup.svg' +import Copy from '@images/copy.svg' + +export default function Header() { + const { accountId } = useWeb3() + const { + conversations, + conversationId, + openConversations, + activeConversationTitle, + totalNotifications, + setActiveConversationTitle, + getConversationTitle, + setOpenConversations, + setConversationId + } = useOrbis() + + const handleClick = ( + e: React.MouseEvent + ) => { + e.preventDefault() + const target = e.target as HTMLElement + const { role } = target.dataset + if (role) { + if (role === 'back-button') { + setConversationId(null) + } else { + let _address = '' + const conversation = conversations.find( + (c) => c.stream_id === conversationId + ) + const recipients = conversation.recipients.filter( + (r) => didToAddress(r) !== accountId.toLowerCase() + ) + _address = didToAddress(recipients[0]) + navigator.clipboard.writeText(_address) + toast.info('Address copied to clipboard') + } + } else { + setOpenConversations(!openConversations) + } + } + + const setConversationTitle = async (conversationId: string) => { + if (conversationId.startsWith('new-')) { + setActiveConversationTitle(conversationId.replace('new-', '')) + } else { + const title = await getConversationTitle(conversationId) + setActiveConversationTitle(title) + } + } + + useEffect(() => { + if (!conversationId) setActiveConversationTitle(null) + else setConversationTitle(conversationId) + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [conversationId]) + + return ( +
+ {!conversationId ? ( + <> +
+ +
+ Direct Messages + {totalNotifications > 0 && ( + + {totalNotifications} + + )} + + ) : ( + <> + {openConversations && ( + + )} + {activeConversationTitle && ( + <> + {activeConversationTitle} + + + )} + + )} +
+ +
+
+ ) +} diff --git a/src/components/@shared/DirectMessages/List.module.css b/src/components/@shared/DirectMessages/List.module.css new file mode 100644 index 000000000..898e2c792 --- /dev/null +++ b/src/components/@shared/DirectMessages/List.module.css @@ -0,0 +1,24 @@ +.conversations { + height: 100%; + background-color: var(--background-content); + overflow-y: auto; +} + +.conversations .empty { + height: 100%; + max-width: 80%; + text-align: center; + margin-left: auto; + margin-right: auto; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + color: var(--color-secondary); +} + +.conversations .empty .icon { + width: var(--font-size-h1); + fill: currentColor; + margin-bottom: calc(var(--spacer) / 2); +} diff --git a/src/components/@shared/DirectMessages/List.tsx b/src/components/@shared/DirectMessages/List.tsx new file mode 100644 index 000000000..0765ad8c8 --- /dev/null +++ b/src/components/@shared/DirectMessages/List.tsx @@ -0,0 +1,45 @@ +import React, { useMemo } from 'react' +import { useOrbis } from '@context/DirectMessages' +import { IConversationWithAdditionalData } from '@context/DirectMessages/_types' +import ListItem from './ListItem' +import ChatBubble from '@images/chatbubble.svg' +import styles from './List.module.css' + +export default function List() { + const { conversations, setConversationId } = useOrbis() + + const filteredConversations = useMemo(() => { + return conversations.filter( + (conversation: IConversationWithAdditionalData) => + !conversation.empty_message + ) + }, [conversations]) + + return ( +
+ {filteredConversations.length > 0 ? ( + filteredConversations.map( + (conversation: IConversationWithAdditionalData, index: number) => ( + + ) + ) + ) : ( +
+ +

+ Hello! Any question regarding a specific dataset listed on Ocean + Marketplace? +

+

+ Go over the asset detail page or directly to a publisher profile to + start a conversation! +

+
+ )} +
+ ) +} diff --git a/src/components/@shared/DirectMessages/ListItem.module.css b/src/components/@shared/DirectMessages/ListItem.module.css new file mode 100644 index 000000000..ea2bf18e9 --- /dev/null +++ b/src/components/@shared/DirectMessages/ListItem.module.css @@ -0,0 +1,62 @@ +.conversation { + display: flex; + align-items: center; + padding: calc(0.5 * var(--spacer)) calc(0.5 * var(--spacer)); + border-bottom: 1px solid var(--border-color); + cursor: pointer; +} + +.conversation:hover { + background: var(--background-highlight); +} + +.accountAvatarSet { + position: relative; + flex-shrink: 0; +} + +.accountAvatar { + aspect-ratio: 1/1; + border-radius: 100%; + border: 1px solid var(--border-color); + flex-shrink: 0; + width: calc(var(--font-size-large) * 2.5); + height: calc(var(--font-size-large) * 2.5); + margin-left: 0; +} + +.notificationCount { + position: absolute; + bottom: -4px; + right: -4px; + background-color: var(--color-primary); + width: 24px; + height: 24px; + color: var(--brand-white); + border-radius: 100%; + display: flex; + justify-content: center; + align-items: center; + font-size: var(--font-size-mini); + font-weight: 600; +} + +.accountInfo { + padding-left: calc(var(--spacer) / 2); + display: flex; + flex-grow: 1; + justify-content: space-between; + align-items: center; +} + +.accountName { + font-size: var(--font-size-medium); + color: var(--color-primary); +} + +.lastMessageDate { + font-size: var(--font-size-mini); + color: var(--font-color-text); + min-width: calc(var(--spacer) * 1.5); + text-align: right; +} diff --git a/src/components/@shared/DirectMessages/ListItem.tsx b/src/components/@shared/DirectMessages/ListItem.tsx new file mode 100644 index 000000000..cfb81590a --- /dev/null +++ b/src/components/@shared/DirectMessages/ListItem.tsx @@ -0,0 +1,66 @@ +import React, { useState, useEffect } from 'react' +import { useCancelToken } from '@hooks/useCancelToken' +import { useOrbis } from '@context/DirectMessages' +import { IConversationWithAdditionalData } from '@context/DirectMessages/_types' +import { didToAddress } from './_utils' +import Avatar from '@shared/atoms/Avatar' +import Time from '@shared/atoms/Time' +import styles from './ListItem.module.css' + +export default function ConversationItem({ + conversation, + setConversationId +}: { + conversation: IConversationWithAdditionalData + setConversationId: (value: string) => void +}) { + const { account, getConversationTitle } = useOrbis() + + const newCancelToken = useCancelToken() + + const [name, setName] = useState(null) + const [address, setAddress] = useState(null) + + useEffect(() => { + const getProfile = async () => { + const did = conversation.recipients.find((o) => o !== account.did) + + const _address = didToAddress(did) + setAddress(_address) + + const _name = await getConversationTitle(conversation?.stream_id) + setName(_name) + } + + if (conversation && account) { + getProfile() + } + }, [conversation, account, newCancelToken, getConversationTitle]) + + return ( +
setConversationId(conversation.stream_id)} + > +
+ + {conversation.notifications_count > 0 && ( +
+ {conversation.notifications_count} +
+ )} +
+
+
{name}
+ + +
+
+ ) +} diff --git a/src/components/@shared/DirectMessages/Postbox.module.css b/src/components/@shared/DirectMessages/Postbox.module.css new file mode 100644 index 000000000..34f4bd0ee --- /dev/null +++ b/src/components/@shared/DirectMessages/Postbox.module.css @@ -0,0 +1,89 @@ +.postbox { + width: 100%; + flex-shrink: 0; + border-top: 1px solid var(--border-color); + padding: calc(var(--spacer) / 4) calc(var(--spacer) / 2); +} + +.postbox .postboxInput { + position: relative; + display: flex; + align-items: flex-end; + border-radius: var(--border-radius); + border: 1px solid var(--border-color); +} + +.postbox .editable { + overflow-wrap: break-word; + white-space: pre-wrap; + flex-grow: 1; + outline: none; + max-height: 80px; + overflow-y: auto; + -ms-overflow-style: none; + scrollbar-width: none; + padding: calc(var(--spacer) / 4); +} + +.postbox .editable:empty:before { + content: attr(data-placeholder); + color: var(--color-secondary); + pointer-events: none; +} + +.postbox .editable::-webkit-scrollbar { + display: none; +} + +.replyto { + position: relative; + display: flex; + align-items: flex-start; + gap: calc(var(--spacer) / 2); + padding: calc(var(--spacer) / 2); + font-size: var(--font-size-small); + background: var(--background-highlight); + border-top-left-radius: var(--border-radius); + border-top-right-radius: var(--border-radius); +} + +.replytoDetails { + flex-grow: 1; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.replytoCancel { + flex-shrink: 0; + font-size: var(--font-size-large); + line-height: 1; + font-weight: bold; + background: transparent; + border: none; + color: currentColor; + outline: none; +} + +.sendButton { + background-color: transparent; + border: 0; + color: var(--color-primary); + width: 41px; + height: 41px; + display: flex; + align-items: center; + justify-content: center; + border-left: 1px solid var(--border-color); + cursor: pointer; +} + +.sendButton:disabled { + color: var(--color-secondary); + cursor: default; +} + +.sendButton .icon { + width: 24px; + fill: currentColor; +} diff --git a/src/components/@shared/DirectMessages/Postbox.tsx b/src/components/@shared/DirectMessages/Postbox.tsx new file mode 100644 index 000000000..c557e2db6 --- /dev/null +++ b/src/components/@shared/DirectMessages/Postbox.tsx @@ -0,0 +1,121 @@ +import React, { useRef } from 'react' +import styles from './Postbox.module.css' +import { useOrbis } from '@context/DirectMessages' +import SendIcon from '@images/send.svg' +import { accountTruncate } from '@utils/web3' +import { didToAddress } from './_utils' +import { + IOrbisMessage, + IOrbisMessageContent +} from '@context/DirectMessages/_types' + +export default function Postbox({ + replyTo = null, + cancelReplyTo, + callback +}: { + replyTo?: IOrbisMessage + cancelReplyTo?: () => void + callback: (value: IOrbisMessage) => void +}) { + const postBoxArea = useRef(null) + const { + orbis, + account, + conversationId, + updateConversationEmptyMessageStatus + } = useOrbis() + + const share = async () => { + if (!account || postBoxArea.current.innerText.trim() === '') return false + + const body = postBoxArea.current.innerText.trim() + postBoxArea.current.innerText = '' + + const content: IOrbisMessageContent & { decryptedMessage?: string } = { + encryptedMessage: null, + decryptedMessage: body, + master: replyTo ? replyTo.master || replyTo.stream_id : undefined, + reply_to: replyTo ? replyTo.stream_id : undefined + } + + const timestamp = Math.floor(Date.now() / 1000) + + const _callbackContent: IOrbisMessage = { + conversation_id: conversationId, + content, + creator: account.did, + creator_details: { + did: account.did, + profile: account.details?.profile, + metadata: account.details?.metadata + }, + master: replyTo ? replyTo.master || replyTo.stream_id : null, + reply_to: replyTo ? replyTo.stream_id : null, + reply_to_creator_details: replyTo ? replyTo.creator_details : null, + reply_to_details: replyTo ? replyTo.content : null, + stream_id: 'new_post--' + timestamp, + timestamp + } + + if (callback) callback(_callbackContent) + + const res = await orbis.sendMessage({ + conversation_id: conversationId, + body + }) + + if (res.status === 200) { + _callbackContent.stream_id = res.doc + if (callback) callback(_callbackContent) + updateConversationEmptyMessageStatus(conversationId, false) + } + } + + const handleKeyDown = (e: React.KeyboardEvent) => { + if (!e.key) return + + if (e.key === 'Enter' && !e.shiftKey) { + // Don't generate a new line + e.preventDefault() + share() + } + } + + return ( +
+ {replyTo && ( +
+
+ Replying to{' '} + + {replyTo?.creator_details?.metadata?.ensName || + accountTruncate(didToAddress(replyTo?.creator_details?.did))} + +
+ +
+ )} +
+
+ +
+
+ ) +} diff --git a/src/components/@shared/DirectMessages/_utils.tsx b/src/components/@shared/DirectMessages/_utils.tsx new file mode 100644 index 000000000..137d3aff3 --- /dev/null +++ b/src/components/@shared/DirectMessages/_utils.tsx @@ -0,0 +1,97 @@ +import React, { ReactNode } from 'react' +import Link from 'next/link' +import reactStringReplace from 'react-string-replace' +import { IOrbisPostContent } from '@context/DirectMessages/_types' + +/** Regex patterns to use */ +const patternMentions = /\B@[a-z0-9_.⍙-]+/gi + +export function didToAddress(did: string) { + if (!did) return + + const _did = did.split(':') + return _did[4] +} + +export function formatMessage( + content: IOrbisPostContent, + hideOverflow = false +): ReactNode { + if (!content || !content.body) return null + + let { body }: { body: any } = content + + if (hideOverflow && body.length > 285) { + body = body.substring(0, 280) + return body + '...' + } + + /** Replace all
generated by the postbox to \n to handle line breaks */ + body = reactStringReplace(body, '
', function (match, i) { + return
+ }) + + body = reactStringReplace(body, '\n', function (match, i) { + return
+ }) + + /** Replace URLs */ + body = reactStringReplace( + body, + /(https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|www\.[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9]+\.[^\s]{2,}|www\.[a-zA-Z0-9]+\.[^\s]{2,})/g, + function (match, i) { + const shortUrl = + match.substring(0, 25) + + '...' + + match.substring(match.length - 15, match.length) + return ( + + {match.length > 40 ? shortUrl : match} + + ) + } + ) + + /** Identify and replace mentions */ + + /** Get mentions in post metadata */ + const { mentions } = content + + /** Retrieve mentions in the body */ + const mentionsInBody = content.body.toString().match(patternMentions) + + /** Compare both and replace in body */ + if (mentionsInBody && mentions && Array.isArray(mentions)) { + mentionsInBody.forEach((_m) => { + /** Find mention with the same name */ + const mention = mentions.find((obj) => obj.username === _m) + if (mention !== undefined) { + body = reactStringReplace(body, _m, (match, i) => + mention.did ? ( + + {mention.username} + + ) : ( + + {mention.username} + + ) + ) + } + }) + } + + return body +} + +export const sleep = (ms: number) => + new Promise((resolve) => setTimeout(resolve, ms)) diff --git a/src/components/@shared/DirectMessages/index.module.css b/src/components/@shared/DirectMessages/index.module.css new file mode 100644 index 000000000..270d21a33 --- /dev/null +++ b/src/components/@shared/DirectMessages/index.module.css @@ -0,0 +1,73 @@ +.wrapper { + width: 100%; + padding: 0 calc(var(--spacer) / 3); + display: flex; + align-items: center; + justify-content: flex-end; + flex-wrap: wrap; + position: fixed; + right: 0; + bottom: 0; + left: 0; + transition: transform 300ms ease 0s; + pointer-events: none; + z-index: 2; +} + +.floating { + display: flex; + flex-direction: column; + pointer-events: auto; + width: 100%; + max-width: 400px; + height: 530px; + max-height: 80vh; + background-color: var(--background-content); + border: 1px solid var(--border-color); + border-bottom: 0; + border-radius: var(--border-radius); + transform: translateY(0); +} + +.headerWrapper { + flex-shrink: 0; +} + +.bodyWrapper { + flex-grow: 1; + display: flex; + flex-direction: column; + overflow: hidden; + position: relative; +} + +.walletWrapper { + margin: auto; + max-width: 320px; + text-align: center; +} + +.walletWrapper p { + color: var(--color-secondary); + font-size: var(--font-size-small); +} + +.walletWrapper button { + margin: var(--spacer) auto 0; +} + +.isClosed { + transform: translateY(90%); +} + +@media screen and (min-width: 42rem) { + .wrapper { + padding: 0 calc(var(--spacer) / 2); + } +} + +@media screen and (min-width: 55rem) { + .wrapper { + padding: 0 var(--spacer); + } +} diff --git a/src/components/@shared/DirectMessages/index.tsx b/src/components/@shared/DirectMessages/index.tsx new file mode 100644 index 000000000..822492fa2 --- /dev/null +++ b/src/components/@shared/DirectMessages/index.tsx @@ -0,0 +1,107 @@ +import React from 'react' +import styles from './index.module.css' +import Conversation from './Conversation' +import { useOrbis } from '@context/DirectMessages' +import { useWeb3 } from '@context/Web3' +import Header from './Header' +import List from './List' +import walletStyles from '../../Header/Wallet/Account.module.css' + +const BodyContent = () => { + const { account, conversationId, checkOrbisConnection } = useOrbis() + const { accountId, connect } = useWeb3() + + const handleActivation = async (e: React.MouseEvent) => { + e.preventDefault() + const resConnect = await connect() + if (resConnect) { + await checkOrbisConnection({ + address: accountId, + autoConnect: true, + lit: true + }) + } + } + + const message = () => { + return ( + <> +

A new decentralized, encrypted private messaging is here!

+

+ Engage with data publishers, get your algorithms whitelisted and + establish trust. +

+

+ You'll be required to sign 2 transactions, one to connect to your + decentralized identity and the other to generate your encrypted key. +

+ + ) + } + + if (!accountId) { + return ( +
+
+
Connect your wallet to start messaging
+ {message()} + +
+
+ ) + } + + if (!account) { + return ( +
+
+
Sign your wallet to start messaging
+ {message()} + +
+
+ ) + } + + return ( + <> + + {conversationId && } + + ) +} + +export default function DirectMessages() { + const { openConversations } = useOrbis() + + return ( +
+
+
+
+
+
+ +
+
+
+ ) +} diff --git a/src/components/Asset/AssetActions/index.module.css b/src/components/Asset/AssetActions/index.module.css index 0d3f546d5..59d7dc5b1 100644 --- a/src/components/Asset/AssetActions/index.module.css +++ b/src/components/Asset/AssetActions/index.module.css @@ -2,5 +2,4 @@ composes: box from '@shared/atoms/Box.module.css'; max-width: 35rem; margin: auto; - padding: 0; } diff --git a/src/components/Asset/AssetActions/index.tsx b/src/components/Asset/AssetActions/index.tsx index 1e42d1ec9..6a850e653 100644 --- a/src/components/Asset/AssetActions/index.tsx +++ b/src/components/Asset/AssetActions/index.tsx @@ -1,8 +1,7 @@ import React, { ReactElement, useState, useEffect } from 'react' import Compute from './Compute' -import Consume from './Download' +import Download from './Download' import { FileInfo, LoggerInstance, Datatoken } from '@oceanprotocol/lib' -import Tabs, { TabsItem } from '@shared/atoms/Tabs' import { compareAsBN } from '@utils/numbers' import { useAsset } from '@context/Asset' import { useWeb3 } from '@context/Web3' @@ -144,8 +143,8 @@ export default function AssetActions({ } }, [balance, accountId, asset?.accessDetails, dtBalance]) - const UseContent = ( - <> + return ( +
{isCompute ? ( ) : ( - )} - - ) - - const tabs: TabsItem[] = [{ title: 'Use', content: UseContent }] - - return ( - <> - - - +
) } diff --git a/src/components/Asset/AssetContent/index.tsx b/src/components/Asset/AssetContent/index.tsx index 2eb57ab62..5878665f7 100644 --- a/src/components/Asset/AssetContent/index.tsx +++ b/src/components/Asset/AssetContent/index.tsx @@ -16,6 +16,9 @@ import content from '../../../../content/purgatory.json' import Web3 from 'web3' import Button from '@shared/atoms/Button' import RelatedAssets from '../RelatedAssets' +import DmButton from '@shared/DirectMessages/DmButton' +import Web3Feedback from '@components/@shared/Web3Feedback' +import { useWeb3 } from '@context/Web3' export default function AssetContent({ asset @@ -23,6 +26,7 @@ export default function AssetContent({ asset: AssetExtended }): ReactElement { const { isInPurgatory, purgatoryData, isOwner, isAssetNetwork } = useAsset() + const { accountId } = useWeb3() const { debug } = useUserPreferences() const [receipts, setReceipts] = useState([]) const [nftPublisher, setNftPublisher] = useState() @@ -79,6 +83,14 @@ export default function AssetContent({
)} +
+ +
+ diff --git a/src/components/Footer/Footer.module.css b/src/components/Footer/Footer.module.css index a554d66a8..1ffcc312b 100644 --- a/src/components/Footer/Footer.module.css +++ b/src/components/Footer/Footer.module.css @@ -1,5 +1,5 @@ .footer { - padding: var(--spacer) calc(var(--spacer) / 2); + padding: var(--spacer) calc(var(--spacer) / 2) calc(var(--spacer) * 2.5); margin-left: auto; margin-right: auto; max-width: var(--layout-max-width); diff --git a/src/components/Header/Wallet/Details.tsx b/src/components/Header/Wallet/Details.tsx index 5f0355a36..1c25abcaf 100644 --- a/src/components/Header/Wallet/Details.tsx +++ b/src/components/Header/Wallet/Details.tsx @@ -5,11 +5,13 @@ import Button from '@shared/atoms/Button' import AddToken from '@shared/AddToken' import Conversion from '@shared/Price/Conversion' import { useWeb3 } from '@context/Web3' +import { useOrbis } from '@context/DirectMessages' import { getOceanConfig } from '@utils/ocean' import styles from './Details.module.css' export default function Details(): ReactElement { const { + accountId, web3ProviderInfo, web3Modal, connect, @@ -18,6 +20,7 @@ export default function Details(): ReactElement { networkId, balance } = useWeb3() + const { checkOrbisConnection, disconnectOrbis } = useOrbis() const { locale } = useUserPreferences() const [mainCurrency, setMainCurrency] = useState() @@ -83,6 +86,7 @@ export default function Details(): ReactElement { onClick={async () => { await web3Modal?.clearCachedProvider() connect() + checkOrbisConnection({ address: accountId }) }} > Switch Wallet @@ -92,6 +96,7 @@ export default function Details(): ReactElement { size="small" onClick={() => { logout() + disconnectOrbis(accountId) location.reload() }} > diff --git a/src/components/Profile/Header/Account.module.css b/src/components/Profile/Header/Account.module.css index 70bc9ffea..5d2cef418 100644 --- a/src/components/Profile/Header/Account.module.css +++ b/src/components/Profile/Header/Account.module.css @@ -2,6 +2,13 @@ text-align: center; } +.sendMessage { + display: flex; + position: justify-end; + background-color: white; + cursor: pointer; +} + .account p { margin: 0; } diff --git a/src/components/Profile/Header/Account.tsx b/src/components/Profile/Header/Account.tsx index 0aab25685..2f3c28eb9 100644 --- a/src/components/Profile/Header/Account.tsx +++ b/src/components/Profile/Header/Account.tsx @@ -30,7 +30,6 @@ export default function Account({ )} -

{profile?.name || accountTruncate(accountId)} diff --git a/src/components/Profile/Header/index.module.css b/src/components/Profile/Header/index.module.css index 18056bead..848c876c6 100644 --- a/src/components/Profile/Header/index.module.css +++ b/src/components/Profile/Header/index.module.css @@ -20,6 +20,11 @@ margin-bottom: 0; } +.directMessage { + margin-top: calc(var(--spacer) / 2); + text-align: center; +} + @media (min-width: 50rem) { .grid { display: grid; @@ -32,6 +37,11 @@ margin-top: calc(var(--spacer) / 2); -webkit-line-clamp: 7 !important; } + + .directMessage { + margin-top: 0; + text-align: end; + } } .publisherLinks { diff --git a/src/components/Profile/Header/index.tsx b/src/components/Profile/Header/index.tsx index a09165606..827f08911 100644 --- a/src/components/Profile/Header/index.tsx +++ b/src/components/Profile/Header/index.tsx @@ -5,6 +5,7 @@ import Stats from './Stats' import Account from './Account' import styles from './index.module.css' import { useProfile } from '@context/Profile' +import DmButton from '@shared/DirectMessages/DmButton' const isDescriptionTextClamped = () => { const el = document.getElementById('description') @@ -39,6 +40,9 @@ export default function AccountHeader({

+
+ +
{isDescriptionTextClamped() ? ( diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index edb7acb01..d08210dc0 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -6,7 +6,8 @@ import { UserPreferencesProvider } from '@context/UserPreferences' import PricesProvider from '@context/Prices' import UrqlProvider from '@context/UrqlProvider' import ConsentProvider from '@context/CookieConsent' -import App from '../../src/components/App' +import { OrbisProvider } from '@context/DirectMessages' +import App from 'src/components/App' import '@oceanprotocol/typographies/css/ocean-typo.css' import '../stylesGlobal/styles.css' @@ -45,11 +46,13 @@ function MyApp({ Component, pageProps }: AppProps): ReactElement { - - - - - + + + + + + + diff --git a/src/stylesGlobal/_emojipicker.css b/src/stylesGlobal/_emojipicker.css new file mode 100644 index 000000000..7434bef6d --- /dev/null +++ b/src/stylesGlobal/_emojipicker.css @@ -0,0 +1,48 @@ +.EmojiPickerReact * { + font-family: var(--font-family-base) !important; +} +.EmojiPickerReact.epr-dark-theme { + --epr-bg-color: var(--background-content) !important; + --epr-category-label-bg-color: #141414e6 !important; +} +.EmojiPickerReact { + --epr-emoji-size: 24px !important; +} + +.EmojiPickerReact .epr-search-container input.epr-search { + background-color: transparent !important; + border-color: var(--border-color) !important; + border-radius: var(--border-radius) !important; + color: var(--brand-black) !important; +} + +.EmojiPickerReact .epr-search-container input.epr-search:focus { + background-color: var(--epr-search-input-bg-color-active); + border-color: var(--brand-black) !important; +} + +.EmojiPickerReact.epr-dark-theme .epr-search-container input.epr-search { + color: var(--brand-white) !important; +} + +.EmojiPickerReact.epr-dark-theme .epr-search-container input.epr-search:focus { + border-color: var(--brand-white) !important; +} + +.EmojiPickerReact .epr-category-nav > button.epr-cat-btn { + -webkit-filter: hue-rotate(110deg) saturate(2); + filter: hue-rotate(110deg) saturate(2); +} + +.EmojiPickerReact .epr-body::-webkit-scrollbar { + display: none; +} + +.EmojiPickerReact .epr-body { + -ms-overflow-style: none; + scrollbar-width: none; +} + +aside.EmojiPickerReact.epr-main { + border-width: 0 !important; +} diff --git a/src/stylesGlobal/styles.css b/src/stylesGlobal/styles.css index be6e318bb..210d14818 100644 --- a/src/stylesGlobal/styles.css +++ b/src/stylesGlobal/styles.css @@ -163,6 +163,7 @@ table th { @import '_code.css'; @import '_toast.css'; @import '_web3modal.css'; +@import '_emojipicker.css'; /* prevent background scrolling */ .ReactModal__Body--open {