From a1265f4d7ad12ead72e50eae4aa4af90f9577803 Mon Sep 17 00:00:00 2001 From: Pavel Date: Mon, 6 Feb 2023 15:18:04 +0300 Subject: [PATCH] feat: Update Libp2p to latest version. Add standalone bundled JS Client (#239) --- .npmrc | 2 +- .../node/.prettierrc.js => .prettierrc.cjs | 0 package-lock.json | 6 - package.json | 19 + .../node/{package.json => package.json.skip} | 0 packages/@tests/marine/node/tsconfig.json | 16 +- packages/@tests/marine/web/.prettierrc.js | 8 - packages/@tests/marine/web/tsconfig.json | 22 +- packages/@tests/react_test/tsconfig.json | 29 +- .../smoke/{package.json => package.json.skip} | 3 +- packages/@tests/smoke/tsconfig.json | 13 +- .../client/compiler-support/.prettierrc.js | 8 - .../{package.json => package.json.skip} | 6 +- .../client/compiler-support/tsconfig.json | 20 +- packages/client/fluence-js/.prettierrc.js | 8 - packages/client/fluence-js/README.md | 17 - packages/client/fluence-js/jest.config.js | 6 - packages/client/fluence-js/package.json | 32 - packages/client/fluence-js/src/index.ts | 92 - packages/client/fluence-js/src/services.ts | 2 - packages/client/fluence-js/tsconfig.json | 21 - packages/client/js-client.node/.prettierrc.js | 8 - .../{package.json => package.json.skip} | 6 +- packages/client/js-client.node/tsconfig.json | 20 +- .../js-client.web.standalone}/.gitignore | 1 + .../.prettierignore | 0 .../js-client.web.standalone}/README.md | 2 +- .../client/js-client.web.standalone/build.ts | 126 + .../js-client.web.standalone/package.json | 39 + .../js-client.web.standalone/src/index.ts | 35 + .../js-client.web.standalone/tsconfig.json | 8 + packages/client/js-client.web/.prettierrc.js | 8 - .../{package.json => package.json.skip} | 8 +- packages/client/js-client.web/tsconfig.json | 20 +- packages/client/tools/.prettierrc.js | 8 - packages/client/tools/package.json | 3 +- packages/client/tools/src/copyMarine.ts | 4 +- packages/client/tools/tsconfig.json | 20 +- .../{client/fluence-js => core}/.gitignore | 0 packages/core/{connection => }/.npmignore | 0 packages/core/{js-peer => }/.prettierignore | 0 .../fluence-js => core}/CONTRIBUTING.md | 0 packages/core/{js-peer => }/README.md | 0 .../core/{js-peer => }/aqua/node-utils.aqua | 0 .../core/{js-peer => }/aqua/services.aqua | 0 .../{js-peer => }/aqua/single-module-srv.aqua | 0 packages/core/connection/.prettierrc.js | 8 - packages/core/connection/CONTRIBUTING.md | 13 - packages/core/connection/README.md | 11 - packages/core/connection/package.json | 35 - packages/core/connection/src/Buffer.ts | 20 - packages/core/connection/tsconfig.json | 14 - packages/core/interfaces/.gitignore | 21 - packages/core/interfaces/.npmignore | 12 - packages/core/interfaces/.prettierrc.js | 8 - packages/core/interfaces/CONTRIBUTING.md | 13 - packages/core/interfaces/README.md | 11 - packages/core/interfaces/package.json | 25 - packages/core/interfaces/tsconfig.json | 14 - packages/core/jest.config.cjs | 16 + packages/core/js-peer/.gitignore | 21 - packages/core/js-peer/.npmignore | 12 - packages/core/js-peer/.prettierrc.js | 8 - packages/core/js-peer/CONTRIBUTING.md | 13 - packages/core/js-peer/jest.config.js | 6 - packages/core/js-peer/package.json | 59 - .../js-peer/src/__test__/unit/KeyPair.spec.ts | 42 - .../src/__test__/unit/builtInHandler.spec.ts | 335 - packages/core/js-peer/tsconfig.json | 21 - packages/core/keypair/.gitignore | 21 - packages/core/keypair/.npmignore | 12 - packages/core/keypair/.prettierrc.js | 8 - packages/core/keypair/CONTRIBUTING.md | 13 - packages/core/keypair/package.json | 25 - packages/core/keypair/tsconfig.json | 12 - packages/core/package.json | 69 + .../src => src/connection}/index.ts | 93 +- .../src => src/interfaces}/index.ts | 2 +- .../src => src/js-peer}/FluencePeer.ts | 40 +- .../{js-peer/src => src/js-peer}/Particle.ts | 11 +- .../js-peer}/__test__/connection.ts | 0 .../__test__/data}/greeting-record.wasm | Bin .../js-peer/__test__/data}/greeting.wasm | Bin .../js-peer/__test__/data}/marine-js.aqua | 0 .../js-peer/__test__/data}/sigService.aqua | 0 .../js-peer/__test__/data}/srv.aqua | 0 .../__test__/integration/avm.spec.ts.skip} | 4 +- .../integration/jsonBuiltin.spec.ts.skip} | 8 +- .../integration/marine-js.spec.ts.skip} | 14 +- .../__test__/integration/peer.spec.ts.skip} | 10 +- .../integration/sigService.spec.ts.skip} | 17 +- .../js-peer/__test__/integration/smokeTest.ts | 67 + .../__test__/integration/srv.spec.ts.skip} | 14 +- .../js-peer/__test__/unit/ast.spec.ts.skip} | 2 +- .../__test__/unit/builtInHandler.spec.ts | 304 + .../__test__/unit/compiler/v3.spec.ts | 39 +- .../__test__/unit/ephemeral.spec.ts.skip} | 0 .../src => src/js-peer}/__test__/util.ts | 25 +- .../src => src/js-peer}/_aqua/node-utils.ts | 6 +- .../src => src/js-peer}/_aqua/services.ts | 6 +- .../js-peer}/_aqua/single-module-srv.ts | 6 +- .../core/{js-peer/src => src/js-peer}/avm.ts | 4 +- .../src => src/js-peer}/builtins/Sig.ts | 8 +- .../js-peer}/builtins/SingleModuleSrv.ts | 21 +- .../src => src/js-peer}/builtins/common.ts | 10 +- .../js-peer}/builtins/securityGuard.ts | 2 +- .../src => src/js-peer}/commonTypes.ts | 0 .../js-peer}/compilerSupport/callFunction.ts | 6 +- .../js-peer}/compilerSupport/conversions.ts | 7 +- .../js-peer}/compilerSupport/interface.ts | 0 .../compilerSupport/registerService.ts | 6 +- .../js-peer}/compilerSupport/services.ts | 10 +- .../{js-peer/src => src/js-peer}/ephemeral.ts | 22 +- .../{js-peer/src => src/js-peer}/utils.ts | 14 +- packages/core/src/js-peer/utilsForNode.ts | 5 + .../core/src/keypair/__test__/KeyPair.spec.ts | 95 + .../{keypair/src => src/keypair}/index.ts | 38 +- .../core/src/marine/deps-loader/common.ts | 23 + .../src/marine/deps-loader/node.ts} | 36 +- .../src/marine/deps-loader/web.ts} | 18 +- .../src/marine/worker-script}/index.ts | 7 +- .../src => core/src/marine/worker}/index.ts | 7 +- packages/core/tsconfig.json | 9 + packages/marine/background-runner/.gitignore | 21 - packages/marine/background-runner/.npmignore | 12 - .../marine/background-runner/.prettierrc.js | 8 - .../marine/background-runner/CONTRIBUTING.md | 13 - packages/marine/background-runner/README.md | 11 - .../marine/background-runner/package.json | 27 - .../marine/background-runner/tsconfig.json | 12 - packages/marine/deps-loader.node/.gitignore | 21 - packages/marine/deps-loader.node/.npmignore | 12 - .../marine/deps-loader.node/.prettierrc.js | 8 - .../marine/deps-loader.node/CONTRIBUTING.md | 13 - packages/marine/deps-loader.node/README.md | 11 - packages/marine/deps-loader.node/package.json | 31 - packages/marine/deps-loader.node/postbuild.sh | 4 - .../marine/deps-loader.node/tsconfig.json | 17 - packages/marine/deps-loader.web/.gitignore | 21 - packages/marine/deps-loader.web/.npmignore | 12 - .../marine/deps-loader.web/.prettierrc.js | 8 - .../marine/deps-loader.web/CONTRIBUTING.md | 13 - packages/marine/deps-loader.web/README.md | 11 - packages/marine/deps-loader.web/package.json | 30 - packages/marine/deps-loader.web/postbuild.sh | 4 - packages/marine/deps-loader.web/tsconfig.json | 18 - packages/marine/worker-script/.gitignore | 21 - packages/marine/worker-script/.npmignore | 12 - packages/marine/worker-script/.prettierrc.js | 8 - packages/marine/worker-script/CONTRIBUTING.md | 13 - packages/marine/worker-script/README.md | 11 - packages/marine/worker-script/build_b64.sh | 36 - packages/marine/worker-script/package.json | 31 - .../marine/worker-script/webpack.config.js | 47 - .../worker-script/webpack.config.node.js | 10 - .../worker-script/webpack.config.web.js | 10 - pnpm-lock.yaml | 5977 ++++++++--------- .../tsconfig.json => tsconfig.json | 16 +- 158 files changed, 3854 insertions(+), 5236 deletions(-) rename packages/@tests/marine/node/.prettierrc.js => .prettierrc.cjs (100%) delete mode 100644 package-lock.json create mode 100644 package.json rename packages/@tests/marine/node/{package.json => package.json.skip} (100%) delete mode 100644 packages/@tests/marine/web/.prettierrc.js rename packages/@tests/smoke/{package.json => package.json.skip} (88%) delete mode 100644 packages/client/compiler-support/.prettierrc.js rename packages/client/compiler-support/{package.json => package.json.skip} (81%) delete mode 100644 packages/client/fluence-js/.prettierrc.js delete mode 100644 packages/client/fluence-js/README.md delete mode 100644 packages/client/fluence-js/jest.config.js delete mode 100644 packages/client/fluence-js/package.json delete mode 100644 packages/client/fluence-js/src/index.ts delete mode 100644 packages/client/fluence-js/src/services.ts delete mode 100644 packages/client/fluence-js/tsconfig.json delete mode 100644 packages/client/js-client.node/.prettierrc.js rename packages/client/js-client.node/{package.json => package.json.skip} (71%) rename packages/{core/connection => client/js-client.web.standalone}/.gitignore (98%) rename packages/client/{fluence-js => js-client.web.standalone}/.prettierignore (100%) rename packages/{core/keypair => client/js-client.web.standalone}/README.md (96%) create mode 100644 packages/client/js-client.web.standalone/build.ts create mode 100644 packages/client/js-client.web.standalone/package.json create mode 100644 packages/client/js-client.web.standalone/src/index.ts create mode 100644 packages/client/js-client.web.standalone/tsconfig.json delete mode 100644 packages/client/js-client.web/.prettierrc.js rename packages/client/js-client.web/{package.json => package.json.skip} (68%) delete mode 100644 packages/client/tools/.prettierrc.js rename packages/{client/fluence-js => core}/.gitignore (100%) rename packages/core/{connection => }/.npmignore (100%) rename packages/core/{js-peer => }/.prettierignore (100%) rename packages/{client/fluence-js => core}/CONTRIBUTING.md (100%) rename packages/core/{js-peer => }/README.md (100%) rename packages/core/{js-peer => }/aqua/node-utils.aqua (100%) rename packages/core/{js-peer => }/aqua/services.aqua (100%) rename packages/core/{js-peer => }/aqua/single-module-srv.aqua (100%) delete mode 100644 packages/core/connection/.prettierrc.js delete mode 100644 packages/core/connection/CONTRIBUTING.md delete mode 100644 packages/core/connection/README.md delete mode 100644 packages/core/connection/package.json delete mode 100644 packages/core/connection/src/Buffer.ts delete mode 100644 packages/core/connection/tsconfig.json delete mode 100644 packages/core/interfaces/.gitignore delete mode 100644 packages/core/interfaces/.npmignore delete mode 100644 packages/core/interfaces/.prettierrc.js delete mode 100644 packages/core/interfaces/CONTRIBUTING.md delete mode 100644 packages/core/interfaces/README.md delete mode 100644 packages/core/interfaces/package.json delete mode 100644 packages/core/interfaces/tsconfig.json create mode 100644 packages/core/jest.config.cjs delete mode 100644 packages/core/js-peer/.gitignore delete mode 100644 packages/core/js-peer/.npmignore delete mode 100644 packages/core/js-peer/.prettierrc.js delete mode 100644 packages/core/js-peer/CONTRIBUTING.md delete mode 100644 packages/core/js-peer/jest.config.js delete mode 100644 packages/core/js-peer/package.json delete mode 100644 packages/core/js-peer/src/__test__/unit/KeyPair.spec.ts delete mode 100644 packages/core/js-peer/src/__test__/unit/builtInHandler.spec.ts delete mode 100644 packages/core/js-peer/tsconfig.json delete mode 100644 packages/core/keypair/.gitignore delete mode 100644 packages/core/keypair/.npmignore delete mode 100644 packages/core/keypair/.prettierrc.js delete mode 100644 packages/core/keypair/CONTRIBUTING.md delete mode 100644 packages/core/keypair/package.json delete mode 100644 packages/core/keypair/tsconfig.json create mode 100644 packages/core/package.json rename packages/core/{connection/src => src/connection}/index.ts (71%) rename packages/core/{interfaces/src => src/interfaces}/index.ts (99%) rename packages/core/{js-peer/src => src/js-peer}/FluencePeer.ts (96%) rename packages/core/{js-peer/src => src/js-peer}/Particle.ts (94%) rename packages/core/{js-peer/src => src/js-peer}/__test__/connection.ts (100%) rename packages/core/{js-peer/src/__test__/integration => src/js-peer/__test__/data}/greeting-record.wasm (100%) rename packages/core/{js-peer/src/__test__/integration => src/js-peer/__test__/data}/greeting.wasm (100%) rename packages/core/{js-peer/src/__test__/integration => src/js-peer/__test__/data}/marine-js.aqua (100%) rename packages/core/{js-peer/src/__test__/integration => src/js-peer/__test__/data}/sigService.aqua (100%) rename packages/core/{js-peer/src/__test__/integration => src/js-peer/__test__/data}/srv.aqua (100%) rename packages/core/{js-peer/src/__test__/integration/avm.spec.ts => src/js-peer/__test__/integration/avm.spec.ts.skip} (98%) rename packages/core/{js-peer/src/__test__/integration/jsonBuiltin.spec.ts => src/js-peer/__test__/integration/jsonBuiltin.spec.ts.skip} (93%) rename packages/core/{js-peer/src/__test__/integration/marine-js.spec.ts => src/js-peer/__test__/integration/marine-js.spec.ts.skip} (74%) rename packages/core/{js-peer/src/__test__/integration/peer.spec.ts => src/js-peer/__test__/integration/peer.spec.ts.skip} (98%) rename packages/core/{js-peer/src/__test__/integration/sigService.spec.ts => src/js-peer/__test__/integration/sigService.spec.ts.skip} (88%) create mode 100644 packages/core/src/js-peer/__test__/integration/smokeTest.ts rename packages/core/{js-peer/src/__test__/integration/srv.spec.ts => src/js-peer/__test__/integration/srv.spec.ts.skip} (80%) rename packages/core/{js-peer/src/__test__/unit/ast.spec.ts => src/js-peer/__test__/unit/ast.spec.ts.skip} (94%) create mode 100644 packages/core/src/js-peer/__test__/unit/builtInHandler.spec.ts rename packages/core/{js-peer/src => src/js-peer}/__test__/unit/compiler/v3.spec.ts (71%) rename packages/core/{js-peer/src/__test__/unit/ephemeral.spec.ts => src/js-peer/__test__/unit/ephemeral.spec.ts.skip} (100%) rename packages/core/{js-peer/src => src/js-peer}/__test__/util.ts (74%) rename packages/core/{js-peer/src => src/js-peer}/_aqua/node-utils.ts (96%) rename packages/core/{js-peer/src => src/js-peer}/_aqua/services.ts (97%) rename packages/core/{js-peer/src => src/js-peer}/_aqua/single-module-srv.ts (97%) rename packages/core/{js-peer/src => src/js-peer}/avm.ts (89%) rename packages/core/{js-peer/src => src/js-peer}/builtins/Sig.ts (90%) rename packages/core/{js-peer/src => src/js-peer}/builtins/SingleModuleSrv.ts (88%) rename packages/core/{js-peer/src => src/js-peer}/builtins/common.ts (98%) rename packages/core/{js-peer/src => src/js-peer}/builtins/securityGuard.ts (97%) rename packages/core/{js-peer/src => src/js-peer}/commonTypes.ts (100%) rename packages/core/{js-peer/src => src/js-peer}/compilerSupport/callFunction.ts (97%) rename packages/core/{js-peer/src => src/js-peer}/compilerSupport/conversions.ts (97%) rename packages/core/{js-peer/src => src/js-peer}/compilerSupport/interface.ts (100%) rename packages/core/{js-peer/src => src/js-peer}/compilerSupport/registerService.ts (93%) rename packages/core/{js-peer/src => src/js-peer}/compilerSupport/services.ts (96%) rename packages/core/{js-peer/src => src/js-peer}/ephemeral.ts (94%) rename packages/core/{js-peer/src => src/js-peer}/utils.ts (92%) create mode 100644 packages/core/src/js-peer/utilsForNode.ts create mode 100644 packages/core/src/keypair/__test__/KeyPair.spec.ts rename packages/core/{keypair/src => src/keypair}/index.ts (60%) create mode 100644 packages/core/src/marine/deps-loader/common.ts rename packages/{marine/deps-loader.node/src/index.ts => core/src/marine/deps-loader/node.ts} (69%) rename packages/{marine/deps-loader.web/src/index.ts => core/src/marine/deps-loader/web.ts} (73%) rename packages/{marine/worker-script/src => core/src/marine/worker-script}/index.ts (89%) rename packages/{marine/background-runner/src => core/src/marine/worker}/index.ts (87%) create mode 100644 packages/core/tsconfig.json delete mode 100644 packages/marine/background-runner/.gitignore delete mode 100644 packages/marine/background-runner/.npmignore delete mode 100644 packages/marine/background-runner/.prettierrc.js delete mode 100644 packages/marine/background-runner/CONTRIBUTING.md delete mode 100644 packages/marine/background-runner/README.md delete mode 100644 packages/marine/background-runner/package.json delete mode 100644 packages/marine/background-runner/tsconfig.json delete mode 100644 packages/marine/deps-loader.node/.gitignore delete mode 100644 packages/marine/deps-loader.node/.npmignore delete mode 100644 packages/marine/deps-loader.node/.prettierrc.js delete mode 100644 packages/marine/deps-loader.node/CONTRIBUTING.md delete mode 100644 packages/marine/deps-loader.node/README.md delete mode 100644 packages/marine/deps-loader.node/package.json delete mode 100755 packages/marine/deps-loader.node/postbuild.sh delete mode 100644 packages/marine/deps-loader.node/tsconfig.json delete mode 100644 packages/marine/deps-loader.web/.gitignore delete mode 100644 packages/marine/deps-loader.web/.npmignore delete mode 100644 packages/marine/deps-loader.web/.prettierrc.js delete mode 100644 packages/marine/deps-loader.web/CONTRIBUTING.md delete mode 100644 packages/marine/deps-loader.web/README.md delete mode 100644 packages/marine/deps-loader.web/package.json delete mode 100755 packages/marine/deps-loader.web/postbuild.sh delete mode 100644 packages/marine/deps-loader.web/tsconfig.json delete mode 100644 packages/marine/worker-script/.gitignore delete mode 100644 packages/marine/worker-script/.npmignore delete mode 100644 packages/marine/worker-script/.prettierrc.js delete mode 100644 packages/marine/worker-script/CONTRIBUTING.md delete mode 100644 packages/marine/worker-script/README.md delete mode 100755 packages/marine/worker-script/build_b64.sh delete mode 100644 packages/marine/worker-script/package.json delete mode 100644 packages/marine/worker-script/webpack.config.js delete mode 100644 packages/marine/worker-script/webpack.config.node.js delete mode 100644 packages/marine/worker-script/webpack.config.web.js rename packages/marine/worker-script/tsconfig.json => tsconfig.json (53%) diff --git a/.npmrc b/.npmrc index b6195a45..16dde58b 100644 --- a/.npmrc +++ b/.npmrc @@ -1,2 +1,2 @@ auto-install-peers=true -save-exact=true +save-exact=true \ No newline at end of file diff --git a/packages/@tests/marine/node/.prettierrc.js b/.prettierrc.cjs similarity index 100% rename from packages/@tests/marine/node/.prettierrc.js rename to .prettierrc.cjs diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 9a1505ba..00000000 --- a/package-lock.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "fluence-js", - "lockfileVersion": 2, - "requires": true, - "packages": {} -} diff --git a/package.json b/package.json new file mode 100644 index 00000000..b7117f6e --- /dev/null +++ b/package.json @@ -0,0 +1,19 @@ +{ + "name": "common-dev-deps", + "version": "0.1.0", + "main": "./dist/index.js", + "typings": "./dist/index.d.ts", + "type": "module", + "engines": { + "node": ">=10", + "pnpm": ">=3" + }, + "scripts": {}, + "author": "Fluence Labs", + "license": "Apache-2.0", + "dependencies": {}, + "devDependencies": { + "ts-node": "10.9.1", + "typescript": "4.7" + } +} diff --git a/packages/@tests/marine/node/package.json b/packages/@tests/marine/node/package.json.skip similarity index 100% rename from packages/@tests/marine/node/package.json rename to packages/@tests/marine/node/package.json.skip diff --git a/packages/@tests/marine/node/tsconfig.json b/packages/@tests/marine/node/tsconfig.json index 23385c4b..32d340ac 100644 --- a/packages/@tests/marine/node/tsconfig.json +++ b/packages/@tests/marine/node/tsconfig.json @@ -1,17 +1,7 @@ { + "extends": "../../../../tsconfig.json", "compilerOptions": { - "lib": ["es2015", "dom"], - "outDir": "./dist/", - "target": "es5", - "module": "commonjs", - "strict": true, - "esModuleInterop": true, - "skipLibCheck": true, - "forceConsistentCasingInFileNames": true, - "declaration": true, - "declarationMap": false, - "sourceMap": true + "outDir": "./dist" }, - "exclude": ["node_modules", "dist"], - "include": ["src"] + "exclude": ["node_modules", "dist"] } diff --git a/packages/@tests/marine/web/.prettierrc.js b/packages/@tests/marine/web/.prettierrc.js deleted file mode 100644 index 36f36b84..00000000 --- a/packages/@tests/marine/web/.prettierrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - semi: true, - trailingComma: 'all', - singleQuote: true, - printWidth: 120, - tabWidth: 4, - useTabs: false, -}; diff --git a/packages/@tests/marine/web/tsconfig.json b/packages/@tests/marine/web/tsconfig.json index 9315f3cb..32d340ac 100644 --- a/packages/@tests/marine/web/tsconfig.json +++ b/packages/@tests/marine/web/tsconfig.json @@ -1,23 +1,7 @@ { + "extends": "../../../../tsconfig.json", "compilerOptions": { - "outDir": "./dist/", - "allowJs": true, - "baseUrl": ".", - "sourceMap": false, - "inlineSources": false, - "pretty": true, - "target": "esnext", - "module": "esnext", - "moduleResolution": "node", - "declaration": false, - "esModuleInterop": true, - "declarationMap": false, - "strict": true, - "noImplicitAny": false, - "alwaysStrict": true, - "noImplicitThis": true, - "strictNullChecks": false + "outDir": "./dist" }, - "exclude": ["node_modules", "dist"], - "include": ["src", "test"] + "exclude": ["node_modules", "dist"] } diff --git a/packages/@tests/react_test/tsconfig.json b/packages/@tests/react_test/tsconfig.json index a273b0cf..8c892f21 100644 --- a/packages/@tests/react_test/tsconfig.json +++ b/packages/@tests/react_test/tsconfig.json @@ -1,26 +1,7 @@ { - "compilerOptions": { - "target": "es5", - "lib": [ - "dom", - "dom.iterable", - "esnext" - ], - "allowJs": true, - "skipLibCheck": true, - "esModuleInterop": true, - "allowSyntheticDefaultImports": true, - "strict": true, - "forceConsistentCasingInFileNames": true, - "noFallthroughCasesInSwitch": true, - "module": "esnext", - "moduleResolution": "node", - "resolveJsonModule": true, - "isolatedModules": true, - "noEmit": true, - "jsx": "react-jsx" - }, - "include": [ - "src" - ] + "extends": "../../../tsconfig.json", + "compilerOptions": { + "outDir": "./dist" + }, + "exclude": ["node_modules", "dist"] } diff --git a/packages/@tests/smoke/package.json b/packages/@tests/smoke/package.json.skip similarity index 88% rename from packages/@tests/smoke/package.json rename to packages/@tests/smoke/package.json.skip index 41bae191..703f72bd 100644 --- a/packages/@tests/smoke/package.json +++ b/packages/@tests/smoke/package.json.skip @@ -17,8 +17,7 @@ "license": "Apache-2.0", "dependencies": { "@fluencelabs/fluence": "workspace:*", - "@fluencelabs/js-client.node": "workspace:*", - "ts-node": "10.9.1" + "@fluencelabs/js-client.node": "workspace:*" }, "devDependencies": { "@types/node": "16.11.59", diff --git a/packages/@tests/smoke/tsconfig.json b/packages/@tests/smoke/tsconfig.json index 8ab4e60c..8c892f21 100644 --- a/packages/@tests/smoke/tsconfig.json +++ b/packages/@tests/smoke/tsconfig.json @@ -1,12 +1,7 @@ { + "extends": "../../../tsconfig.json", "compilerOptions": { - "outDir": "./dist/", - "module": "commonjs", - "moduleResolution": "node", - "sourceMap": true, - "declaration": true, - "skipDefaultLibCheck": true - }, - "exclude": ["node_modules", "dist"], - "include": ["src/**/*"] + "outDir": "./dist" + }, + "exclude": ["node_modules", "dist"] } diff --git a/packages/client/compiler-support/.prettierrc.js b/packages/client/compiler-support/.prettierrc.js deleted file mode 100644 index 4e5ea887..00000000 --- a/packages/client/compiler-support/.prettierrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - semi: true, - trailingComma: "all", - singleQuote: true, - printWidth: 120, - tabWidth: 4, - useTabs: false -}; diff --git a/packages/client/compiler-support/package.json b/packages/client/compiler-support/package.json.skip similarity index 81% rename from packages/client/compiler-support/package.json rename to packages/client/compiler-support/package.json.skip index 771c7aa1..6705c6ca 100644 --- a/packages/client/compiler-support/package.json +++ b/packages/client/compiler-support/package.json.skip @@ -15,14 +15,12 @@ "author": "Fluence Labs", "license": "Apache-2.0", "dependencies": { - "@fluencelabs/js-peer": "workspace:0.1.0" + "@fluencelabs/js-peer": "workspace:*" }, "devDependencies": { "@types/node": "16.11.59", "@types/jest": "28.1.0", "jest": "28.1.0", - "ts-jest": "28.0.2", - "ts-node": "10.9.1", - "typescript": "4.6.4" + "ts-jest": "28.0.2" } } diff --git a/packages/client/compiler-support/tsconfig.json b/packages/client/compiler-support/tsconfig.json index 0d2020f2..8c892f21 100644 --- a/packages/client/compiler-support/tsconfig.json +++ b/packages/client/compiler-support/tsconfig.json @@ -1,21 +1,7 @@ { + "extends": "../../../tsconfig.json", "compilerOptions": { - "outDir": "./dist/", - "baseUrl": ".", - "downlevelIteration": true, - "sourceMap": true, - "inlineSources": true, - "allowSyntheticDefaultImports": true, - "resolveJsonModule": true, - "target": "ES5", - "module": "commonjs", - "moduleResolution": "node", - "declaration": true, - "esModuleInterop": true, - "declarationMap": true, - "strict": true, - "skipLibCheck": true + "outDir": "./dist" }, - "exclude": ["node_modules", "dist", "bundle"], - "include": ["src/**/*"] + "exclude": ["node_modules", "dist"] } diff --git a/packages/client/fluence-js/.prettierrc.js b/packages/client/fluence-js/.prettierrc.js deleted file mode 100644 index 4e5ea887..00000000 --- a/packages/client/fluence-js/.prettierrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - semi: true, - trailingComma: "all", - singleQuote: true, - printWidth: 120, - tabWidth: 4, - useTabs: false -}; diff --git a/packages/client/fluence-js/README.md b/packages/client/fluence-js/README.md deleted file mode 100644 index c1052b60..00000000 --- a/packages/client/fluence-js/README.md +++ /dev/null @@ -1,17 +0,0 @@ -# Fluence JS - -[![npm](https://img.shields.io/npm/v/@fluencelabs/fluence)](https://www.npmjs.com/package/@fluencelabs/fluence) - -Official TypeScript implementation of the Fluence Peer. - -## Getting started - -To start developing applications with Fluence JS refer to the official [documentation](https://fluence.dev/docs/build/fluence-js/) - -## Contributing - -While the project is still in the early stages of development, you are welcome to track progress and contribute. As the project is undergoing rapid changes, interested contributors should contact the team before embarking on larger pieces of work. All contributors should consult with and agree to our [basic contributing rules](CONTRIBUTING.md). - -## License - -[Apache 2.0](LICENSE) diff --git a/packages/client/fluence-js/jest.config.js b/packages/client/fluence-js/jest.config.js deleted file mode 100644 index 05820877..00000000 --- a/packages/client/fluence-js/jest.config.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - preset: 'ts-jest', - testEnvironment: 'node', - testTimeout: 10000, - testPathIgnorePatterns: ['dist'], -}; diff --git a/packages/client/fluence-js/package.json b/packages/client/fluence-js/package.json deleted file mode 100644 index cb0e7227..00000000 --- a/packages/client/fluence-js/package.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "name": "@fluencelabs/fluence", - "version": "0.28.0", - "description": "TypeScript implementation of Fluence Peer", - "main": "./dist/index.js", - "typings": "./dist/index.d.ts", - "engines": { - "node": ">=10", - "pnpm": ">=3" - }, - "scripts": { - "build": "tsc" - }, - "repository": "https://github.com/fluencelabs/fluence-js", - "author": "Fluence Labs", - "license": "Apache-2.0", - "dependencies": { - "loglevel": "1.8.1", - "@fluencelabs/keypair": "workspace:0.2.0", - "@fluencelabs/avm": "0.32.1", - "@fluencelabs/marine-js": "0.3.38", - "@fluencelabs/js-peer": "workspace:0.1.0" - }, - "devDependencies": { - "@types/node": "16.11.59", - "@types/jest": "28.1.0", - "jest": "28.1.0", - "ts-jest": "28.0.2", - "ts-node": "10.9.1", - "typescript": "4.6.4" - } -} diff --git a/packages/client/fluence-js/src/index.ts b/packages/client/fluence-js/src/index.ts deleted file mode 100644 index 670b7462..00000000 --- a/packages/client/fluence-js/src/index.ts +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Copyright 2020 Fluence Labs Limited - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import log, { LogLevelDesc } from 'loglevel'; -export { KeyPair } from '@fluencelabs/keypair'; - -import { FluencePeer, PeerConfig } from '@fluencelabs/js-peer/dist/FluencePeer'; - -export { PeerStatus } from '@fluencelabs/js-peer/dist/FluencePeer'; -export { FluencePeer, PeerConfig } from '@fluencelabs/js-peer/dist/FluencePeer'; -export { PeerIdB58, CallParams } from '@fluencelabs/js-peer/dist/commonTypes'; - -export const setLogLevel = (level: LogLevelDesc) => { - log.setLevel(level); -}; - -log.setDefaultLevel('WARN'); - -// @ts-ignore -const defaultPeer = globalThis.defaultPeer; - -/** - * Public interface to Fluence JS - */ -export const Fluence = { - /** - * Initializes the default peer: starts the Aqua VM, initializes the default call service handlers - * and (optionally) connect to the Fluence network - * @param config - object specifying peer configuration - */ - start: (config?: PeerConfig): Promise => { - return defaultPeer.start(config); - }, - - /** - * Un-initializes the default peer: stops all the underlying workflows, stops the Aqua VM - * and disconnects from the Fluence network - */ - stop: (): Promise => { - return defaultPeer.stop(); - }, - - /** - * Get the default peer's status - * @returns Default peer's status - */ - getStatus: () => { - return defaultPeer.getStatus(); - }, - - /** - * Get the default peer instance - * @returns the default peer instance - */ - getPeer: (): FluencePeer => { - return defaultPeer; - }, - - /** - * Registers marine service within the default Fluence peer from wasm file. - * Following helper functions can be used to load wasm files: - * * loadWasmFromFileSystem - * * loadWasmFromNpmPackage - * * loadWasmFromServer - * @param wasm - buffer with the wasm file for service - * @param serviceId - the service id by which the service can be accessed in aqua - */ - registerMarineService: (wasm: SharedArrayBuffer | Buffer, serviceId: string): Promise => { - return defaultPeer.registerMarineService(wasm, serviceId); - }, - - /** - * Removes the specified marine service from the default Fluence peer - * @param serviceId - the service id to remove - */ - removeMarineService: (serviceId: string): void => { - defaultPeer.removeMarineService(serviceId); - }, -}; diff --git a/packages/client/fluence-js/src/services.ts b/packages/client/fluence-js/src/services.ts deleted file mode 100644 index 6c642af0..00000000 --- a/packages/client/fluence-js/src/services.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from '@fluencelabs/js-peer/dist/builtins/Sig'; -export { registerSig } from '@fluencelabs/js-peer/dist/_aqua/services'; diff --git a/packages/client/fluence-js/tsconfig.json b/packages/client/fluence-js/tsconfig.json deleted file mode 100644 index 0d2020f2..00000000 --- a/packages/client/fluence-js/tsconfig.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "compilerOptions": { - "outDir": "./dist/", - "baseUrl": ".", - "downlevelIteration": true, - "sourceMap": true, - "inlineSources": true, - "allowSyntheticDefaultImports": true, - "resolveJsonModule": true, - "target": "ES5", - "module": "commonjs", - "moduleResolution": "node", - "declaration": true, - "esModuleInterop": true, - "declarationMap": true, - "strict": true, - "skipLibCheck": true - }, - "exclude": ["node_modules", "dist", "bundle"], - "include": ["src/**/*"] -} diff --git a/packages/client/js-client.node/.prettierrc.js b/packages/client/js-client.node/.prettierrc.js deleted file mode 100644 index 4e5ea887..00000000 --- a/packages/client/js-client.node/.prettierrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - semi: true, - trailingComma: "all", - singleQuote: true, - printWidth: 120, - tabWidth: 4, - useTabs: false -}; diff --git a/packages/client/js-client.node/package.json b/packages/client/js-client.node/package.json.skip similarity index 71% rename from packages/client/js-client.node/package.json rename to packages/client/js-client.node/package.json.skip index 06e0a1af..4a2dc328 100644 --- a/packages/client/js-client.node/package.json +++ b/packages/client/js-client.node/package.json.skip @@ -15,16 +15,12 @@ "author": "Fluence Labs", "license": "Apache-2.0", "dependencies": { - "@fluencelabs/js-peer": "workspace:0.1.0", - "@fluencelabs/marine.deps-loader.node": "workspace:0.1.0", - "@fluencelabs/marine.background-runner": "workspace:0.1.0" + "@fluencelabs/js-peer": "workspace:*" }, "devDependencies": { "@types/node": "16.11.59", "@types/jest": "28.1.0", "jest": "28.1.0", "ts-jest": "28.0.2", - "ts-node": "10.9.1", - "typescript": "4.6.4" } } diff --git a/packages/client/js-client.node/tsconfig.json b/packages/client/js-client.node/tsconfig.json index 0d2020f2..8c892f21 100644 --- a/packages/client/js-client.node/tsconfig.json +++ b/packages/client/js-client.node/tsconfig.json @@ -1,21 +1,7 @@ { + "extends": "../../../tsconfig.json", "compilerOptions": { - "outDir": "./dist/", - "baseUrl": ".", - "downlevelIteration": true, - "sourceMap": true, - "inlineSources": true, - "allowSyntheticDefaultImports": true, - "resolveJsonModule": true, - "target": "ES5", - "module": "commonjs", - "moduleResolution": "node", - "declaration": true, - "esModuleInterop": true, - "declarationMap": true, - "strict": true, - "skipLibCheck": true + "outDir": "./dist" }, - "exclude": ["node_modules", "dist", "bundle"], - "include": ["src/**/*"] + "exclude": ["node_modules", "dist"] } diff --git a/packages/core/connection/.gitignore b/packages/client/js-client.web.standalone/.gitignore similarity index 98% rename from packages/core/connection/.gitignore rename to packages/client/js-client.web.standalone/.gitignore index 1a59a95f..3d117a64 100644 --- a/packages/core/connection/.gitignore +++ b/packages/client/js-client.web.standalone/.gitignore @@ -9,6 +9,7 @@ lerna-debug.log* # Compiled binary addons (https://nodejs.org/api/addons.html) build/Release bundle/ +tmp/ dist esm diff --git a/packages/client/fluence-js/.prettierignore b/packages/client/js-client.web.standalone/.prettierignore similarity index 100% rename from packages/client/fluence-js/.prettierignore rename to packages/client/js-client.web.standalone/.prettierignore diff --git a/packages/core/keypair/README.md b/packages/client/js-client.web.standalone/README.md similarity index 96% rename from packages/core/keypair/README.md rename to packages/client/js-client.web.standalone/README.md index 59c265cd..b05a79df 100644 --- a/packages/core/keypair/README.md +++ b/packages/client/js-client.web.standalone/README.md @@ -1,4 +1,4 @@ -# FluenceJS Keypair +# JS Client web This package is a part of FluenceJS, the official implementation of the Fluence Peer in typescript. See the [FluenceJS repo](https://github.com/fluencelabs/fluence-js) for more info diff --git a/packages/client/js-client.web.standalone/build.ts b/packages/client/js-client.web.standalone/build.ts new file mode 100644 index 00000000..f4d31883 --- /dev/null +++ b/packages/client/js-client.web.standalone/build.ts @@ -0,0 +1,126 @@ +import * as fs from 'fs'; +import * as path from 'path'; +import { fromUint8Array } from 'js-base64'; +import { build } from 'vite'; +import { createRequire } from 'module'; +import type { InlineConfig } from 'vite'; +import tsconfigPaths from 'vite-tsconfig-paths'; +import * as inject from '@rollup/plugin-inject'; +import { replaceCodePlugin } from 'vite-plugin-replace'; + +const require = createRequire(import.meta.url); + +const getWorkerScriptPathOrDie = () => { + const scriptPath = path.resolve('../../core/dist/marine/worker-script/index.js'); + if (!fs.existsSync(scriptPath)) { + console.error(); + process.exit(1); + } + + return scriptPath; +}; + +const commonConfig = (opts: { + outDir: string; + name: string; + entry: string; +}): InlineConfig & Required> => { + return { + mode: 'production', + build: { + minify: 'esbuild', + lib: { + entry: opts.entry, + name: opts.name, + fileName: opts.name, + }, + outDir: opts.outDir, + }, + base: '', + plugins: [tsconfigPaths()], + optimizeDeps: { + esbuildOptions: { + define: { + global: 'globalThis', + }, + }, + }, + }; +}; + +const readAsBase64 = async (filePath: string): Promise => { + const scriptRaw = await fs.promises.readFile(filePath); + const b64 = fromUint8Array(scriptRaw); + return b64; +}; + +const readWasmFromNpmAsBase64 = (pkg: string, wasmFileName: string): Promise => { + const pkgPath = require.resolve(pkg); + const wasmFilePath = path.join(path.dirname(pkgPath), wasmFileName); + return readAsBase64(wasmFilePath); +}; + +const buildClient = async () => { + await fs.promises.mkdir('tmp', { recursive: true }); + + // build worker script + const workerConfig = commonConfig({ + outDir: './tmp', + entry: getWorkerScriptPathOrDie(), + name: 'worker-script', + }); + workerConfig.build!.rollupOptions = { + plugins: [ + inject.default({ + Buffer: ['buffer', 'Buffer'], + process: 'process', + }), + ], + }; + + await build(workerConfig); + + // build js-client + const jsClientConfig = commonConfig({ + outDir: './dist', + entry: './src/index.ts', + name: 'js-client', + }); + + const workerScriptB64 = await readAsBase64('./tmp/worker-script.umd.cjs'); + const avmBase64 = await readWasmFromNpmAsBase64('@fluencelabs/avm', 'avm.wasm'); + const marineBase64 = await readWasmFromNpmAsBase64('@fluencelabs/marine-js', 'marine-js.wasm'); + + jsClientConfig.plugins!.push( + replaceCodePlugin({ + replacements: [ + { + from: '___worker___', + to: workerScriptB64, + }, + { + from: '___avm___', + to: avmBase64, + }, + { + from: '___marine___', + to: marineBase64, + }, + ], + }), + ); + + await build(jsClientConfig); + + // We should exclude the script with type=module because + // - it might be confusing (i.e won't work in browsers that do not support ESM, or if you miss the `type` attribute) + // - there is a problem when using `self.crypto` in web workers + await fs.promises.rm('./dist/js-client.js'); + + // browsers don't understand `.cjs` extensions, just use `.js` + await fs.promises.rename('./dist/js-client.umd.cjs', './dist/js-client.min.js'); +}; + +buildClient() + .then(() => console.log('Built successfully')) + .catch((err) => console.error('failed', err)); diff --git a/packages/client/js-client.web.standalone/package.json b/packages/client/js-client.web.standalone/package.json new file mode 100644 index 00000000..3c1c6d65 --- /dev/null +++ b/packages/client/js-client.web.standalone/package.json @@ -0,0 +1,39 @@ +{ + "name": "@fluencelabs/js-client.web.standalone", + "version": "0.1.0", + "description": "TypeScript implementation of Fluence Peer", + "main": "./dist/index.js", + "typings": "./dist/index.d.ts", + "engines": { + "node": ">=10", + "pnpm": ">=3" + }, + "type": "module", + "scripts": { + "build": "node --loader ts-node/esm ./build.ts" + }, + "repository": "https://github.com/fluencelabs/fluence-js", + "author": "Fluence Labs", + "license": "Apache-2.0", + "dependencies": { + "@fluencelabs/js-peer": "workspace:*", + "buffer": "6.0.3", + "process": "0.11.10" + }, + "devDependencies": { + "@fluencelabs/avm": "0.35.3", + "@fluencelabs/marine-js": "0.3.42", + "@types/node": "16.11.59", + "@types/jest": "28.1.0", + "jest": "28.1.0", + "ts-jest": "28.0.2", + "js-base64": "3.7.2", + "@rollup/plugin-inject": "5.0.3", + "vite-plugin-replace": "0.1.1", + "vite": "4.0.4", + "vite-tsconfig-paths": "4.0.3" + }, + "peerDependencies": { + "esbuild": "0.16.7" + } +} diff --git a/packages/client/js-client.web.standalone/src/index.ts b/packages/client/js-client.web.standalone/src/index.ts new file mode 100644 index 00000000..00bcff0e --- /dev/null +++ b/packages/client/js-client.web.standalone/src/index.ts @@ -0,0 +1,35 @@ +import { FluencePeer } from '@fluencelabs/js-peer/dist/js-peer/FluencePeer'; +import { MarineBasedAvmRunner } from '@fluencelabs/js-peer/dist/js-peer/avm'; +import { MarineBackgroundRunner } from '@fluencelabs/js-peer/dist/marine/worker'; +import { checkConnection, marineLogFunction } from '@fluencelabs/js-peer/dist/js-peer/utils'; +import { InlinedWorkerLoader, InlinedWasmLoader } from '@fluencelabs/js-peer/dist/marine/deps-loader/common'; + +export const makeDefaultPeer = () => { + const workerLoader = new InlinedWorkerLoader('___worker___'); + const controlModuleLoader = new InlinedWasmLoader('___marine___'); + const avmModuleLoader = new InlinedWasmLoader('___avm___'); + + const marine = new MarineBackgroundRunner(workerLoader, controlModuleLoader, marineLogFunction); + const avm = new MarineBasedAvmRunner(marine, avmModuleLoader, undefined); + return new FluencePeer(marine, avm); +}; + +// @ts-ignore +globalThis.defaultPeer = makeDefaultPeer(); + +// TODO! remove after implementing smoke test (DXJ-253) +// @ts-ignore +window.demo = async () => { + // @ts-ignore + const peer: FluencePeer = globalThis.defaultPeer; + + await peer.start({ + connectTo: { + multiaddr: '/ip4/127.0.0.1/tcp/4310/ws/p2p/12D3KooWKEprYXUXqoV5xSBeyqrWLpQLLH4PXfvVkDJtmcqmh5V3', + peerId: '12D3KooWKEprYXUXqoV5xSBeyqrWLpQLLH4PXfvVkDJtmcqmh5V3', + }, + }); + + const res = await checkConnection(peer); + console.log('Check connection res', res); +}; diff --git a/packages/client/js-client.web.standalone/tsconfig.json b/packages/client/js-client.web.standalone/tsconfig.json new file mode 100644 index 00000000..0d267859 --- /dev/null +++ b/packages/client/js-client.web.standalone/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "../../../tsconfig.json", + "compilerOptions": { + "outDir": "./dist", + "moduleResolution": "node" + }, + "exclude": ["node_modules", "dist"] +} diff --git a/packages/client/js-client.web/.prettierrc.js b/packages/client/js-client.web/.prettierrc.js deleted file mode 100644 index 4e5ea887..00000000 --- a/packages/client/js-client.web/.prettierrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - semi: true, - trailingComma: "all", - singleQuote: true, - printWidth: 120, - tabWidth: 4, - useTabs: false -}; diff --git a/packages/client/js-client.web/package.json b/packages/client/js-client.web/package.json.skip similarity index 68% rename from packages/client/js-client.web/package.json rename to packages/client/js-client.web/package.json.skip index 778789d3..7ce47f95 100644 --- a/packages/client/js-client.web/package.json +++ b/packages/client/js-client.web/package.json.skip @@ -15,16 +15,12 @@ "author": "Fluence Labs", "license": "Apache-2.0", "dependencies": { - "@fluencelabs/js-peer": "workspace:0.1.0", - "@fluencelabs/marine.deps-loader.web": "workspace:0.1.0", - "@fluencelabs/marine.background-runner": "workspace:0.1.0" + "@fluencelabs/js-peer": "workspace:*" }, "devDependencies": { "@types/node": "16.11.59", "@types/jest": "28.1.0", "jest": "28.1.0", - "ts-jest": "28.0.2", - "ts-node": "10.9.1", - "typescript": "4.6.4" + "ts-jest": "28.0.2" } } diff --git a/packages/client/js-client.web/tsconfig.json b/packages/client/js-client.web/tsconfig.json index 0d2020f2..8c892f21 100644 --- a/packages/client/js-client.web/tsconfig.json +++ b/packages/client/js-client.web/tsconfig.json @@ -1,21 +1,7 @@ { + "extends": "../../../tsconfig.json", "compilerOptions": { - "outDir": "./dist/", - "baseUrl": ".", - "downlevelIteration": true, - "sourceMap": true, - "inlineSources": true, - "allowSyntheticDefaultImports": true, - "resolveJsonModule": true, - "target": "ES5", - "module": "commonjs", - "moduleResolution": "node", - "declaration": true, - "esModuleInterop": true, - "declarationMap": true, - "strict": true, - "skipLibCheck": true + "outDir": "./dist" }, - "exclude": ["node_modules", "dist", "bundle"], - "include": ["src/**/*"] + "exclude": ["node_modules", "dist"] } diff --git a/packages/client/tools/.prettierrc.js b/packages/client/tools/.prettierrc.js deleted file mode 100644 index 4e5ea887..00000000 --- a/packages/client/tools/.prettierrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - semi: true, - trailingComma: "all", - singleQuote: true, - printWidth: 120, - tabWidth: 4, - useTabs: false -}; diff --git a/packages/client/tools/package.json b/packages/client/tools/package.json index 272b1c4b..76046db2 100644 --- a/packages/client/tools/package.json +++ b/packages/client/tools/package.json @@ -19,7 +19,6 @@ }, "dependencies": {}, "devDependencies": { - "@types/node": "16.11.59", - "typescript": "4.6.4" + "@types/node": "16.11.59" } } diff --git a/packages/client/tools/src/copyMarine.ts b/packages/client/tools/src/copyMarine.ts index ec88be18..72b4c7af 100644 --- a/packages/client/tools/src/copyMarine.ts +++ b/packages/client/tools/src/copyMarine.ts @@ -1,7 +1,7 @@ #! /usr/bin/env node -import fs from 'fs'; -import path from 'path'; +import * as fs from 'fs'; +import * as path from 'path'; const firstArgument = process.argv[2]; diff --git a/packages/client/tools/tsconfig.json b/packages/client/tools/tsconfig.json index 0d2020f2..8c892f21 100644 --- a/packages/client/tools/tsconfig.json +++ b/packages/client/tools/tsconfig.json @@ -1,21 +1,7 @@ { + "extends": "../../../tsconfig.json", "compilerOptions": { - "outDir": "./dist/", - "baseUrl": ".", - "downlevelIteration": true, - "sourceMap": true, - "inlineSources": true, - "allowSyntheticDefaultImports": true, - "resolveJsonModule": true, - "target": "ES5", - "module": "commonjs", - "moduleResolution": "node", - "declaration": true, - "esModuleInterop": true, - "declarationMap": true, - "strict": true, - "skipLibCheck": true + "outDir": "./dist" }, - "exclude": ["node_modules", "dist", "bundle"], - "include": ["src/**/*"] + "exclude": ["node_modules", "dist"] } diff --git a/packages/client/fluence-js/.gitignore b/packages/core/.gitignore similarity index 100% rename from packages/client/fluence-js/.gitignore rename to packages/core/.gitignore diff --git a/packages/core/connection/.npmignore b/packages/core/.npmignore similarity index 100% rename from packages/core/connection/.npmignore rename to packages/core/.npmignore diff --git a/packages/core/js-peer/.prettierignore b/packages/core/.prettierignore similarity index 100% rename from packages/core/js-peer/.prettierignore rename to packages/core/.prettierignore diff --git a/packages/client/fluence-js/CONTRIBUTING.md b/packages/core/CONTRIBUTING.md similarity index 100% rename from packages/client/fluence-js/CONTRIBUTING.md rename to packages/core/CONTRIBUTING.md diff --git a/packages/core/js-peer/README.md b/packages/core/README.md similarity index 100% rename from packages/core/js-peer/README.md rename to packages/core/README.md diff --git a/packages/core/js-peer/aqua/node-utils.aqua b/packages/core/aqua/node-utils.aqua similarity index 100% rename from packages/core/js-peer/aqua/node-utils.aqua rename to packages/core/aqua/node-utils.aqua diff --git a/packages/core/js-peer/aqua/services.aqua b/packages/core/aqua/services.aqua similarity index 100% rename from packages/core/js-peer/aqua/services.aqua rename to packages/core/aqua/services.aqua diff --git a/packages/core/js-peer/aqua/single-module-srv.aqua b/packages/core/aqua/single-module-srv.aqua similarity index 100% rename from packages/core/js-peer/aqua/single-module-srv.aqua rename to packages/core/aqua/single-module-srv.aqua diff --git a/packages/core/connection/.prettierrc.js b/packages/core/connection/.prettierrc.js deleted file mode 100644 index 4e5ea887..00000000 --- a/packages/core/connection/.prettierrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - semi: true, - trailingComma: "all", - singleQuote: true, - printWidth: 120, - tabWidth: 4, - useTabs: false -}; diff --git a/packages/core/connection/CONTRIBUTING.md b/packages/core/connection/CONTRIBUTING.md deleted file mode 100644 index 0e3b264d..00000000 --- a/packages/core/connection/CONTRIBUTING.md +++ /dev/null @@ -1,13 +0,0 @@ -## Contribute Code - -You are welcome to contribute to Fluence. - -Things you need to know: - -1. You need to **agree to the Contributors License Agreement**. This is a common practice in all major Open Source projects. At the current moment we are unable to accept contributions made on behalf of a company. Only individual contributions will be accepted. -2. **Not all proposed contributions can be accepted**. Some features may e.g. just fit a third-party add-on better. The contribution must fit the overall direction of Fluence and really improve it. The more effort you invest, the better you should clarify in advance whether the contribution fits: the best way would be to just open an issue to discuss the contribution you plan to make. - -### Contributor License Agreement - -When you contribute, you have to be aware that your contribution is covered by **Apache License 2.0**, but might relicensed under few other software licenses mentioned in the **Contributor License Agreement**. -In particular you need to agree to the [Contributor License Agreement](https://gist.github.com/fluencelabs-org/3f4cbb3cc14c1c0fb9ad99d8f7316ed7). If you agree to its content, you simply have to click on the link posted by the CLA assistant as a comment to the pull request. Click it to check the CLA, then accept it on the following screen if you agree to it. CLA assistant will save this decision for upcoming contributions and will notify you if there is any change to the CLA in the meantime. diff --git a/packages/core/connection/README.md b/packages/core/connection/README.md deleted file mode 100644 index 726acb9f..00000000 --- a/packages/core/connection/README.md +++ /dev/null @@ -1,11 +0,0 @@ -# FluenceJS connection - -This package is a part of FluenceJS, the official implementation of the Fluence Peer in typescript. See the [FluenceJS repo](https://github.com/fluencelabs/fluence-js) for more info - -## Contributing - -While the project is still in the early stages of development, you are welcome to track progress and contribute. As the project is undergoing rapid changes, interested contributors should contact the team before embarking on larger pieces of work. All contributors should consult with and agree to our [basic contributing rules](CONTRIBUTING.md). - -## License - -[Apache 2.0](LICENSE) diff --git a/packages/core/connection/package.json b/packages/core/connection/package.json deleted file mode 100644 index ea425085..00000000 --- a/packages/core/connection/package.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "@fluencelabs/connection", - "version": "0.2.0", - "description": "Fluence connection", - "main": "./dist/index.js", - "typings": "./dist/index.d.ts", - "engines": { - "node": ">=10", - "pnpm": ">=3" - }, - "scripts": { - "build": "tsc" - }, - "repository": "https://github.com/fluencelabs/fluence-js", - "author": "Fluence Labs", - "license": "Apache-2.0", - "dependencies": { - "@fluencelabs/interfaces": "workspace:0.2.0", - "peer-id": "0.16.0", - "it-length-prefixed": "5.0.3", - "it-pipe": "1.1.0", - "@chainsafe/libp2p-noise": "4.1.1", - "libp2p": "0.36.2", - "libp2p-interfaces": "4.0.6", - "libp2p-mplex": "0.10.7", - "libp2p-websockets": "0.16.2", - "loglevel": "1.8.1", - "multiaddr": "10.0.1", - "browser-or-node": "2.0.0", - "buffer": "6.0.3" - }, - "devDependencies": { - "typescript": "4.6.4" - } -} diff --git a/packages/core/connection/src/Buffer.ts b/packages/core/connection/src/Buffer.ts deleted file mode 100644 index 13528d81..00000000 --- a/packages/core/connection/src/Buffer.ts +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright 2022 Fluence Labs Limited - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import { isBrowser } from 'browser-or-node'; -import { Buffer as BufferPolyfill } from 'buffer'; - -export default isBrowser ? BufferPolyfill : Buffer; diff --git a/packages/core/connection/tsconfig.json b/packages/core/connection/tsconfig.json deleted file mode 100644 index e0db254b..00000000 --- a/packages/core/connection/tsconfig.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "compilerOptions": { - "outDir": "./dist/", - "lib": ["ES2015"], - "target": "ES5", - "module": "commonjs", - "skipLibCheck": true, - "sourceMap": true, - "declaration": true, - "esModuleInterop": true, - }, - "exclude": ["node_modules", "dist"], - "include": ["src/**/*"] -} diff --git a/packages/core/interfaces/.gitignore b/packages/core/interfaces/.gitignore deleted file mode 100644 index 1a59a95f..00000000 --- a/packages/core/interfaces/.gitignore +++ /dev/null @@ -1,21 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -lerna-debug.log* - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release -bundle/ - -dist -esm -types - -# Dependency directories -node_modules/ -jspm_packages/ - -.idea diff --git a/packages/core/interfaces/.npmignore b/packages/core/interfaces/.npmignore deleted file mode 100644 index 1354879a..00000000 --- a/packages/core/interfaces/.npmignore +++ /dev/null @@ -1,12 +0,0 @@ -.idea -.gitignore -node_modules -types - -src/ - -tsconfig.json -webpack.config.js - -bundle -pkg \ No newline at end of file diff --git a/packages/core/interfaces/.prettierrc.js b/packages/core/interfaces/.prettierrc.js deleted file mode 100644 index 4e5ea887..00000000 --- a/packages/core/interfaces/.prettierrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - semi: true, - trailingComma: "all", - singleQuote: true, - printWidth: 120, - tabWidth: 4, - useTabs: false -}; diff --git a/packages/core/interfaces/CONTRIBUTING.md b/packages/core/interfaces/CONTRIBUTING.md deleted file mode 100644 index 0e3b264d..00000000 --- a/packages/core/interfaces/CONTRIBUTING.md +++ /dev/null @@ -1,13 +0,0 @@ -## Contribute Code - -You are welcome to contribute to Fluence. - -Things you need to know: - -1. You need to **agree to the Contributors License Agreement**. This is a common practice in all major Open Source projects. At the current moment we are unable to accept contributions made on behalf of a company. Only individual contributions will be accepted. -2. **Not all proposed contributions can be accepted**. Some features may e.g. just fit a third-party add-on better. The contribution must fit the overall direction of Fluence and really improve it. The more effort you invest, the better you should clarify in advance whether the contribution fits: the best way would be to just open an issue to discuss the contribution you plan to make. - -### Contributor License Agreement - -When you contribute, you have to be aware that your contribution is covered by **Apache License 2.0**, but might relicensed under few other software licenses mentioned in the **Contributor License Agreement**. -In particular you need to agree to the [Contributor License Agreement](https://gist.github.com/fluencelabs-org/3f4cbb3cc14c1c0fb9ad99d8f7316ed7). If you agree to its content, you simply have to click on the link posted by the CLA assistant as a comment to the pull request. Click it to check the CLA, then accept it on the following screen if you agree to it. CLA assistant will save this decision for upcoming contributions and will notify you if there is any change to the CLA in the meantime. diff --git a/packages/core/interfaces/README.md b/packages/core/interfaces/README.md deleted file mode 100644 index 06acea1d..00000000 --- a/packages/core/interfaces/README.md +++ /dev/null @@ -1,11 +0,0 @@ -# FluenceJS interfaces - -This package is a part of FluenceJS, the official implementation of the Fluence Peer in typescript. See the [FluenceJS repo](https://github.com/fluencelabs/fluence-js) for more info - -## Contributing - -While the project is still in the early stages of development, you are welcome to track progress and contribute. As the project is undergoing rapid changes, interested contributors should contact the team before embarking on larger pieces of work. All contributors should consult with and agree to our [basic contributing rules](CONTRIBUTING.md). - -## License - -[Apache 2.0](LICENSE) diff --git a/packages/core/interfaces/package.json b/packages/core/interfaces/package.json deleted file mode 100644 index db7abcd1..00000000 --- a/packages/core/interfaces/package.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "name": "@fluencelabs/interfaces", - "version": "0.2.0", - "description": "Fluence interfaces", - "main": "./dist/index.js", - "typings": "./dist/index.d.ts", - "engines": { - "node": ">=10", - "pnpm": ">=3" - }, - "scripts": { - "build": "tsc" - }, - "repository": "https://github.com/fluencelabs/fluence-js", - "author": "Fluence Labs", - "license": "Apache-2.0", - "dependencies": {}, - "devDependencies": { - "typescript": "4.6.4", - "@fluencelabs/avm": "0.31.10", - "@fluencelabs/marine-js": "0.3.38", - "@types/node": "16.11.59", - "threads": "^1.7.0" - } -} diff --git a/packages/core/interfaces/tsconfig.json b/packages/core/interfaces/tsconfig.json deleted file mode 100644 index 3fe7a803..00000000 --- a/packages/core/interfaces/tsconfig.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "compilerOptions": { - "outDir": "./dist/", - "lib": ["ES2017"], - "target": "ES5", - "module": "commonjs", - "skipLibCheck": true, - "sourceMap": true, - "declaration": true, - "esModuleInterop": true - }, - "exclude": ["node_modules", "dist"], - "include": ["src/**/*"] -} diff --git a/packages/core/jest.config.cjs b/packages/core/jest.config.cjs new file mode 100644 index 00000000..6ea1a606 --- /dev/null +++ b/packages/core/jest.config.cjs @@ -0,0 +1,16 @@ +/** @type {import('ts-jest').JestConfigWithTsJest} */ +module.exports = { + extensionsToTreatAsEsm: ['.ts'], + moduleNameMapper: { + '^(\\.{1,2}/.*)\\.js$': '$1', + }, + testPathIgnorePatterns: ['dist'], + transform: { + '^.+\\.tsx?$': [ + 'ts-jest', + { + useESM: true, + }, + ], + }, +}; diff --git a/packages/core/js-peer/.gitignore b/packages/core/js-peer/.gitignore deleted file mode 100644 index 1a59a95f..00000000 --- a/packages/core/js-peer/.gitignore +++ /dev/null @@ -1,21 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -lerna-debug.log* - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release -bundle/ - -dist -esm -types - -# Dependency directories -node_modules/ -jspm_packages/ - -.idea diff --git a/packages/core/js-peer/.npmignore b/packages/core/js-peer/.npmignore deleted file mode 100644 index 1354879a..00000000 --- a/packages/core/js-peer/.npmignore +++ /dev/null @@ -1,12 +0,0 @@ -.idea -.gitignore -node_modules -types - -src/ - -tsconfig.json -webpack.config.js - -bundle -pkg \ No newline at end of file diff --git a/packages/core/js-peer/.prettierrc.js b/packages/core/js-peer/.prettierrc.js deleted file mode 100644 index 4e5ea887..00000000 --- a/packages/core/js-peer/.prettierrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - semi: true, - trailingComma: "all", - singleQuote: true, - printWidth: 120, - tabWidth: 4, - useTabs: false -}; diff --git a/packages/core/js-peer/CONTRIBUTING.md b/packages/core/js-peer/CONTRIBUTING.md deleted file mode 100644 index 0e3b264d..00000000 --- a/packages/core/js-peer/CONTRIBUTING.md +++ /dev/null @@ -1,13 +0,0 @@ -## Contribute Code - -You are welcome to contribute to Fluence. - -Things you need to know: - -1. You need to **agree to the Contributors License Agreement**. This is a common practice in all major Open Source projects. At the current moment we are unable to accept contributions made on behalf of a company. Only individual contributions will be accepted. -2. **Not all proposed contributions can be accepted**. Some features may e.g. just fit a third-party add-on better. The contribution must fit the overall direction of Fluence and really improve it. The more effort you invest, the better you should clarify in advance whether the contribution fits: the best way would be to just open an issue to discuss the contribution you plan to make. - -### Contributor License Agreement - -When you contribute, you have to be aware that your contribution is covered by **Apache License 2.0**, but might relicensed under few other software licenses mentioned in the **Contributor License Agreement**. -In particular you need to agree to the [Contributor License Agreement](https://gist.github.com/fluencelabs-org/3f4cbb3cc14c1c0fb9ad99d8f7316ed7). If you agree to its content, you simply have to click on the link posted by the CLA assistant as a comment to the pull request. Click it to check the CLA, then accept it on the following screen if you agree to it. CLA assistant will save this decision for upcoming contributions and will notify you if there is any change to the CLA in the meantime. diff --git a/packages/core/js-peer/jest.config.js b/packages/core/js-peer/jest.config.js deleted file mode 100644 index 05820877..00000000 --- a/packages/core/js-peer/jest.config.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - preset: 'ts-jest', - testEnvironment: 'node', - testTimeout: 10000, - testPathIgnorePatterns: ['dist'], -}; diff --git a/packages/core/js-peer/package.json b/packages/core/js-peer/package.json deleted file mode 100644 index a35650c3..00000000 --- a/packages/core/js-peer/package.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "name": "@fluencelabs/js-peer", - "version": "0.1.0", - "description": "TypeScript implementation of Fluence Peer", - "main": "./dist/index.js", - "typings": "./dist/index.d.ts", - "engines": { - "node": ">=10", - "pnpm": ">=3" - }, - "scripts": { - "build": "tsc", - "compile-aqua": "aqua -i ./aqua/ -o ./src/internal/_aqua", - "test": "jest", - "test:unit": "jest --testPathPattern=src/__test__/unit", - "test:integration": "jest --testPathPattern=src/__test__/integration" - }, - "repository": "https://github.com/fluencelabs/fluence-js", - "author": "Fluence Labs", - "license": "Apache-2.0", - "dependencies": { - "@fluencelabs/avm": "0.32.1", - "@fluencelabs/connection": "workspace:0.2.0", - "@fluencelabs/interfaces": "workspace:0.2.0", - "@fluencelabs/keypair": "workspace:0.2.0", - "@fluencelabs/marine-js": "0.3.38", - "@fluencelabs/marine.background-runner": "workspace:0.1.0", - "async": "3.2.4", - "base64-js": "^1.5.1", - "bs58": "5.0.0", - "buffer": "6.0.3", - "cids": "1.1.9", - "loglevel": "1.8.1", - "multiformats": "9.9.0", - "peer-id": "0.16.0", - "platform": "1.3.6", - "rxjs": "7.5.5", - "ts-pattern": "3.3.3", - "uuid": "8.3.2" - }, - "devDependencies": { - "@fluencelabs/marine.deps-loader.node": "workspace:0.1.0", - "@fluencelabs/aqua": "0.7.7-362", - "@fluencelabs/aqua-api": "0.9.1-373", - "@fluencelabs/aqua-lib": "0.6.0", - "@fluencelabs/fluence-network-environment": "1.0.13", - "@types/bs58": "4.0.1", - "@types/jest": "28.1.0", - "@types/platform": "1.3.4", - "@types/uuid": "8.3.2", - "jest": "28.1.0", - "jest-each": "28.1.3", - "js-base64": "3.7.2", - "multiaddr": "10.0.1", - "ts-jest": "28.0.2", - "ts-node": "10.9.1", - "typescript": "4.6.4" - } -} diff --git a/packages/core/js-peer/src/__test__/unit/KeyPair.spec.ts b/packages/core/js-peer/src/__test__/unit/KeyPair.spec.ts deleted file mode 100644 index 91a48884..00000000 --- a/packages/core/js-peer/src/__test__/unit/KeyPair.spec.ts +++ /dev/null @@ -1,42 +0,0 @@ -import * as bs58 from 'bs58'; -import { KeyPair } from '@fluencelabs/keypair'; - -describe('KeyPair tests', () => { - it('generate keypair from seed', async function () { - // arrange - const random = await KeyPair.randomEd25519(); - const privateKey = random.toEd25519PrivateKey(); - - // act - const keyPair = await KeyPair.fromEd25519SK(privateKey); - const privateKey2 = keyPair.toEd25519PrivateKey(); - - // assert - expect(privateKey).toStrictEqual(privateKey2); - }); - - it('create keypair from ed25519 private key', async function () { - // arrange - const rustSK = 'jDaxLJzYtzgwTMrELJCAqavtmx85ktQNfB2rLcK7MhH'; - const sk = bs58.decode(rustSK); - - // act - const keyPair = await KeyPair.fromEd25519SK(sk); - - // assert - const expectedPeerId = '12D3KooWH1W3VznVZ87JH4FwABK4mkntcspTVWJDta6c2xg9Pzbp'; - expect(keyPair.Libp2pPeerId.toB58String()).toStrictEqual(expectedPeerId); - }); - - it('create keypair from a seed phrase', async function () { - // arrange - const seedArray = new Uint8Array(32).fill(1); - - // act - const keyPair = await KeyPair.fromEd25519SK(seedArray); - - // assert - const expectedPeerId = '12D3KooWK99VoVxNE7XzyBwXEzW7xhK7Gpv85r9F3V3fyKSUKPH5'; - expect(keyPair.Libp2pPeerId.toB58String()).toStrictEqual(expectedPeerId); - }); -}); diff --git a/packages/core/js-peer/src/__test__/unit/builtInHandler.spec.ts b/packages/core/js-peer/src/__test__/unit/builtInHandler.spec.ts deleted file mode 100644 index f17ff737..00000000 --- a/packages/core/js-peer/src/__test__/unit/builtInHandler.spec.ts +++ /dev/null @@ -1,335 +0,0 @@ -import { CallParams, CallServiceData } from '../../commonTypes'; -import each from 'jest-each'; -import { builtInServices } from '../../builtins/common'; -import { KeyPair } from '@fluencelabs/keypair'; -import { Sig, defaultSigGuard } from '../../builtins/Sig'; -import { toUint8Array } from 'js-base64'; -import { allowServiceFn } from '../../builtins/securityGuard'; - -const a10b20 = `{ - "a": 10, - "b": 20 -}`; - -const oneTwoThreeFour = `[ - 1, - 2, - 3, - 4 -]`; - -describe('Tests for default handler', () => { - // prettier-ignore - each` - serviceId | fnName | args | retCode | result - ${'op'} | ${'identity'} | ${[]} | ${0} | ${{}} - ${'op'} | ${'identity'} | ${[1]} | ${0} | ${1} - ${'op'} | ${'identity'} | ${[1, 2]} | ${1} | ${'identity accepts up to 1 arguments, received 2 arguments'} - - ${'op'} | ${'noop'} | ${[1, 2]} | ${0} | ${{}} - - ${'op'} | ${'array'} | ${[1, 2, 3]} | ${0} | ${[1, 2, 3]} - - ${'op'} | ${'array_length'} | ${[[1, 2, 3]]} | ${0} | ${3} - ${'op'} | ${'array_length'} | ${[]} | ${1} | ${'array_length accepts exactly one argument, found: 0'} - - ${'op'} | ${'concat'} | ${[[1, 2], [3, 4], [5, 6]]} | ${0} | ${[1, 2, 3, 4, 5, 6]} - ${'op'} | ${'concat'} | ${[[1, 2]]} | ${0} | ${[1, 2]} - ${'op'} | ${'concat'} | ${[]} | ${0} | ${[]} - ${'op'} | ${'concat'} | ${[1, [1, 2], 1]} | ${1} | ${"All arguments of 'concat' must be arrays: arguments 0, 2 are not"} - - ${'op'} | ${'string_to_b58'} | ${["test"]} | ${0} | ${"3yZe7d"} - ${'op'} | ${'string_to_b58'} | ${["test", 1]} | ${1} | ${"string_to_b58 accepts only one string argument"} - - ${'op'} | ${'string_from_b58'} | ${["3yZe7d"]} | ${0} | ${"test"} - ${'op'} | ${'string_from_b58'} | ${["3yZe7d", 1]} | ${1} | ${"string_from_b58 accepts only one string argument"} - - ${'op'} | ${'bytes_to_b58'} | ${[[116, 101, 115, 116]]} | ${0} | ${"3yZe7d"} - ${'op'} | ${'bytes_to_b58'} | ${[[116, 101, 115, 116], 1]} | ${1} | ${"bytes_to_b58 accepts only single argument: array of numbers"} - - ${'op'} | ${'bytes_from_b58'} | ${["3yZe7d"]} | ${0} | ${[116, 101, 115, 116]} - ${'op'} | ${'bytes_from_b58'} | ${["3yZe7d", 1]} | ${1} | ${"bytes_from_b58 accepts only one string argument"} - - ${'op'} | ${'sha256_string'} | ${["hello, world!"]} | ${0} | ${"QmVQ8pg6L1tpoWYeq6dpoWqnzZoSLCh7E96fCFXKvfKD3u"} - ${'op'} | ${'sha256_string'} | ${["hello, world!", true]} | ${0} | ${"84V7ZxLW7qKsx1Qvbd63BdGaHxUc3TfT2MBPqAXM7Wyu"} - ${'op'} | ${'sha256_string'} | ${[]} | ${1} | ${"sha256_string accepts 1-3 arguments, found: 0"} - - ${'op'} | ${'concat_strings'} | ${[]} | ${0} | ${""} - ${'op'} | ${'concat_strings'} | ${["a", "b", "c"]} | ${0} | ${"abc"} - - ${'peer'} | ${'timeout'} | ${[200, []]} | ${0} | ${[]}} - ${'peer'} | ${'timeout'} | ${[200, ['test']]} | ${0} | ${['test']}} - ${'peer'} | ${'timeout'} | ${[]} | ${1} | ${'timeout accepts exactly two arguments: timeout duration in ms and a message string'}} - ${'peer'} | ${'timeout'} | ${[200, 'test', 1]} | ${1} | ${'timeout accepts exactly two arguments: timeout duration in ms and a message string'}} - - ${'debug'} | ${'stringify'} | ${[]} | ${0} | ${'""'}} - ${'debug'} | ${'stringify'} | ${[{a: 10, b: 20}]} | ${0} | ${a10b20}} - ${'debug'} | ${'stringify'} | ${[1, 2, 3, 4]} | ${0} | ${oneTwoThreeFour}} - - ${'math'} | ${'add'}" | ${[2, 2]} | ${0} | ${4} - ${'math'} | ${'add'}" | ${[2]} | ${1} | ${"Expected 2 argument(s). Got 1"} - - ${'math'} | ${'sub'}" | ${[2, 2]} | ${0} | ${0} - ${'math'} | ${'sub'}" | ${[2, 3]} | ${0} | ${-1} - - ${'math'} | ${'mul'}" | ${[2, 2]} | ${0} | ${4} - ${'math'} | ${'mul'}" | ${[2, 0]} | ${0} | ${0} - ${'math'} | ${'mul'}" | ${[2, -1]} | ${0} | ${-2} - - ${'math'} | ${'fmul'}" | ${[10, 0.66]} | ${0} | ${6} - ${'math'} | ${'fmul'}" | ${[0.5, 0.5]} | ${0} | ${0} - ${'math'} | ${'fmul'}" | ${[100.5, 0.5]} | ${0} | ${50} - - ${'math'} | ${'div'}" | ${[2, 2]} | ${0} | ${1} - ${'math'} | ${'div'}" | ${[2, 3]} | ${0} | ${0} - ${'math'} | ${'div'}" | ${[10, 5]} | ${0} | ${2} - - ${'math'} | ${'rem'}" | ${[10, 3]} | ${0} | ${1} - - ${'math'} | ${'pow'}" | ${[2, 2]} | ${0} | ${4} - ${'math'} | ${'pow'}" | ${[2, 0]} | ${0} | ${1} - - ${'math'} | ${'log'}" | ${[2, 2]} | ${0} | ${1} - ${'math'} | ${'log'}" | ${[2, 4]} | ${0} | ${2} - - ${'cmp'} | ${'gt'}" | ${[2, 4]} | ${0} | ${false} - ${'cmp'} | ${'gte'}" | ${[2, 4]} | ${0} | ${false} - ${'cmp'} | ${'gte'}" | ${[4, 2]} | ${0} | ${true} - ${'cmp'} | ${'gte'}" | ${[2, 2]} | ${0} | ${true} - - ${'cmp'} | ${'lt'}" | ${[2, 4]} | ${0} | ${true} - ${'cmp'} | ${'lte'}" | ${[2, 4]} | ${0} | ${true} - ${'cmp'} | ${'lte'}" | ${[4, 2]} | ${0} | ${false} - ${'cmp'} | ${'lte'}" | ${[2, 2]} | ${0} | ${true} - - ${'cmp'} | ${'cmp'}" | ${[2, 4]} | ${0} | ${-1} - ${'cmp'} | ${'cmp'}" | ${[2, -4]} | ${0} | ${1} - ${'cmp'} | ${'cmp'}" | ${[2, 2]} | ${0} | ${0} - - ${'array'} | ${'sum'}" | ${[[1, 2, 3]]} | ${0} | ${6} - ${'array'} | ${'dedup'}" | ${[["a", "a", "b", "c", "a", "b", "c"]]} | ${0} | ${["a", "b", "c"]} - ${'array'} | ${'intersect'}" | ${[["a", "b", "c"], ["c", "b", "d"]]} | ${0} | ${["b", "c"]} - ${'array'} | ${'diff'}" | ${[["a", "b", "c"], ["c", "b", "d"]]} | ${0} | ${["a"]} - ${'array'} | ${'sdiff'}" | ${[["a", "b", "c"], ["c", "b", "d"]]} | ${0} | ${["a", "d"]} - - ${'json'} | ${'obj'}" | ${["a", 10, "b", "string", "c", null]} | ${0} | ${{a: 10, b: "string", c: null}} - ${'json'} | ${'obj'}" | ${["a", 10, "b", "string", "c"]} | ${1} | ${"Expected even number of argument(s). Got 5"} - ${'json'} | ${'obj'}" | ${[]} | ${0} | ${{}} - - ${'json'} | ${'put'}" | ${[{}, "a", 10]} | ${0} | ${{a: 10}} - ${'json'} | ${'put'}" | ${[{b: 11}, "a", 10]} | ${0} | ${{a: 10, b: 11}} - ${'json'} | ${'put'}" | ${["a", "a", 11]} | ${1} | ${"Argument 0 expected to be of type object, Got string"} - ${'json'} | ${'put'}" | ${[{}, "a", 10, "b", 20]} | ${1} | ${"Expected 3 argument(s). Got 5"} - ${'json'} | ${'put'}" | ${[{}]} | ${1} | ${"Expected 3 argument(s). Got 1"} - - ${'json'} | ${'puts'}" | ${[{}, "a", 10]} | ${0} | ${{a: 10}} - ${'json'} | ${'puts'}" | ${[{b: 11}, "a", 10]} | ${0} | ${{a: 10, b: 11}} - ${'json'} | ${'puts'}" | ${[{}, "a", 10, "b", "string", "c", null]} | ${0} | ${{a: 10, b: "string", c: null}} - ${'json'} | ${'puts'}" | ${[{x: "text"}, "a", 10, "b", "string"]} | ${0} | ${{a: 10, b: "string", x: "text"}} - ${'json'} | ${'puts'}" | ${[{}]} | ${1} | ${"Expected more than 3 argument(s). Got 1"} - ${'json'} | ${'puts'}" | ${["a", "a", 11]} | ${1} | ${"Argument 0 expected to be of type object, Got string"} - - ${'json'} | ${'stringify'}" | ${[{a: 10, b: "string", c: null}]} | ${0} | ${"{\"a\":10,\"b\":\"string\",\"c\":null}"} - ${'json'} | ${'stringify'}" | ${[1]} | ${1} | ${"Argument 0 expected to be of type object, Got number"} - ${'json'} | ${'parse'}" | ${["{\"a\":10,\"b\":\"string\",\"c\":null}"]} | ${0} | ${{a: 10, b: "string", c: null}} - ${'json'} | ${'parse'}" | ${["incorrect"]} | ${1} | ${"Unexpected token i in JSON at position 0"} - ${'json'} | ${'parse'}" | ${[10]} | ${1} | ${"Argument 0 expected to be of type string, Got number"} - - `.test( - // - '$fnName with $args expected retcode: $retCode and result: $result', - async ({ serviceId, fnName, args, retCode, result }) => { - // arrange - const req: CallServiceData = { - serviceId: serviceId, - fnName: fnName, - args: args, - tetraplets: [], - particleContext: { - particleId: 'some', - initPeerId: 'init peer id', - timestamp: 595951200, - ttl: 595961200, - signature: 'sig', - }, - }; - - // act - const fn = builtInServices[req.serviceId][req.fnName]; - const res = await fn(req); - - // assert - expect(res).toMatchObject({ - retCode: retCode, - result: result, - }); - }, - ); - - it('should return correct error message for identiy service', async () => { - // arrange - const req: CallServiceData = { - serviceId: 'peer', - fnName: 'identify', - args: [], - tetraplets: [], - particleContext: { - particleId: 'some', - initPeerId: 'init peer id', - timestamp: 595951200, - ttl: 595961200, - signature: 'sig', - }, - }; - - // act - const fn = builtInServices[req.serviceId][req.fnName]; - const res = await fn(req); - - // assert - expect(res).toMatchObject({ - retCode: 0, - result: { - external_addresses: [], - node_version: expect.stringContaining('js'), - air_version: expect.stringContaining('js'), - }, - }); - }); -}); - -const key = '+cmeYlZKj+MfSa9dpHV+BmLPm6wq4inGlsPlQ1GvtPk='; - -const context = (async () => { - const keyBytes = toUint8Array(key); - const kp = await KeyPair.fromEd25519SK(keyBytes); - const res = { - peerKeyPair: kp, - peerId: kp.Libp2pPeerId.toB58String(), - }; - return res; -})(); - -const testData = [1, 2, 3, 4, 5, 6, 7, 9, 10]; - -// signature produced by KeyPair created from key above (`key` variable) -const testDataSig = [ - 224, 104, 245, 206, 140, 248, 27, 72, 68, 133, 111, 10, 164, 197, 242, 132, 107, 77, 224, 67, 99, 106, 76, 29, 144, - 121, 122, 169, 36, 173, 58, 80, 170, 102, 137, 253, 157, 247, 168, 87, 162, 223, 188, 214, 203, 220, 52, 246, 29, - 86, 77, 71, 224, 248, 16, 213, 254, 75, 78, 239, 243, 222, 241, 15, -]; - -// signature produced by KeyPair created from some random KeyPair -const testDataWrongSig = [ - 116, 247, 189, 118, 236, 53, 147, 123, 219, 75, 176, 105, 101, 108, 233, 137, 97, 14, 146, 132, 252, 70, 51, 153, - 237, 167, 156, 150, 36, 90, 229, 108, 166, 231, 255, 137, 8, 246, 125, 0, 213, 150, 83, 196, 237, 221, 131, 159, - 157, 159, 25, 109, 95, 160, 181, 65, 254, 238, 47, 156, 240, 151, 58, 14, -]; - -const makeTetraplet = (initPeerId: string, serviceId?: string, fnName?: string): CallParams<'data'> => { - return { - initPeerId: initPeerId, - tetraplets: { - data: [ - { - function_name: fnName, - service_id: serviceId, - }, - ], - }, - } as any; -}; - -describe('Sig service tests', () => { - it('sig.sign should create the correct signature', async () => { - const ctx = await context; - const sig = new Sig(ctx.peerKeyPair); - - const res = await sig.sign(testData, makeTetraplet(ctx.peerId)); - - expect(res.success).toBe(true); - expect(res.signature).toStrictEqual(testDataSig); - }); - - it('sig.verify should return true for the correct signature', async () => { - const ctx = await context; - const sig = new Sig(ctx.peerKeyPair); - - const res = await sig.verify(testDataSig, testData); - - expect(res).toBe(true); - }); - - it('sig.verify should return false for the incorrect signature', async () => { - const ctx = await context; - const sig = new Sig(ctx.peerKeyPair); - - const res = await sig.verify(testDataWrongSig, testData); - - expect(res).toBe(false); - }); - - it('sign-verify call chain should work', async () => { - const ctx = await context; - const sig = new Sig(ctx.peerKeyPair); - - const signature = await sig.sign(testData, makeTetraplet(ctx.peerId)); - const res = await sig.verify(signature.signature as number[], testData); - - expect(res).toBe(true); - }); - - it('sig.sign with defaultSigGuard should work for correct callParams', async () => { - const ctx = await context; - const sig = new Sig(ctx.peerKeyPair); - sig.securityGuard = defaultSigGuard(ctx.peerId); - - const signature = await sig.sign(testData, makeTetraplet(ctx.peerId, 'registry', 'get_route_bytes')); - - await expect(signature).toBeDefined(); - }); - - it('sig.sign with defaultSigGuard should not allow particles initiated from incorrect service', async () => { - const ctx = await context; - const sig = new Sig(ctx.peerKeyPair); - sig.securityGuard = defaultSigGuard(ctx.peerId); - - const res = await sig.sign(testData, makeTetraplet(ctx.peerId, 'other_service', 'other_fn')); - - await expect(res.success).toBe(false); - await expect(res.error).toBe('Security guard validation failed'); - }); - - it('sig.sign with defaultSigGuard should not allow particles initiated from other peers', async () => { - const ctx = await context; - const sig = new Sig(ctx.peerKeyPair); - sig.securityGuard = defaultSigGuard(ctx.peerId); - - const res = await sig.sign( - testData, - makeTetraplet((await KeyPair.randomEd25519()).getPeerId(), 'registry', 'get_key_bytes'), - ); - - await expect(res.success).toBe(false); - await expect(res.error).toBe('Security guard validation failed'); - }); - - it('changing securityGuard should work', async () => { - const ctx = await context; - const sig = new Sig(ctx.peerKeyPair); - sig.securityGuard = allowServiceFn('test', 'test'); - - const successful1 = await sig.sign(testData, makeTetraplet(ctx.peerId, 'test', 'test')); - const unSuccessful1 = await sig.sign(testData, makeTetraplet(ctx.peerId, 'wrong', 'wrong')); - - sig.securityGuard = allowServiceFn('wrong', 'wrong'); - - const successful2 = await sig.sign(testData, makeTetraplet(ctx.peerId, 'wrong', 'wrong')); - const unSuccessful2 = await sig.sign(testData, makeTetraplet(ctx.peerId, 'test', 'test')); - - expect(successful1.success).toBe(true); - expect(successful2.success).toBe(true); - expect(unSuccessful1.success).toBe(false); - expect(unSuccessful2.success).toBe(false); - }); -}); diff --git a/packages/core/js-peer/tsconfig.json b/packages/core/js-peer/tsconfig.json deleted file mode 100644 index 0d2020f2..00000000 --- a/packages/core/js-peer/tsconfig.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "compilerOptions": { - "outDir": "./dist/", - "baseUrl": ".", - "downlevelIteration": true, - "sourceMap": true, - "inlineSources": true, - "allowSyntheticDefaultImports": true, - "resolveJsonModule": true, - "target": "ES5", - "module": "commonjs", - "moduleResolution": "node", - "declaration": true, - "esModuleInterop": true, - "declarationMap": true, - "strict": true, - "skipLibCheck": true - }, - "exclude": ["node_modules", "dist", "bundle"], - "include": ["src/**/*"] -} diff --git a/packages/core/keypair/.gitignore b/packages/core/keypair/.gitignore deleted file mode 100644 index 1a59a95f..00000000 --- a/packages/core/keypair/.gitignore +++ /dev/null @@ -1,21 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -lerna-debug.log* - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release -bundle/ - -dist -esm -types - -# Dependency directories -node_modules/ -jspm_packages/ - -.idea diff --git a/packages/core/keypair/.npmignore b/packages/core/keypair/.npmignore deleted file mode 100644 index 1354879a..00000000 --- a/packages/core/keypair/.npmignore +++ /dev/null @@ -1,12 +0,0 @@ -.idea -.gitignore -node_modules -types - -src/ - -tsconfig.json -webpack.config.js - -bundle -pkg \ No newline at end of file diff --git a/packages/core/keypair/.prettierrc.js b/packages/core/keypair/.prettierrc.js deleted file mode 100644 index 4e5ea887..00000000 --- a/packages/core/keypair/.prettierrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - semi: true, - trailingComma: "all", - singleQuote: true, - printWidth: 120, - tabWidth: 4, - useTabs: false -}; diff --git a/packages/core/keypair/CONTRIBUTING.md b/packages/core/keypair/CONTRIBUTING.md deleted file mode 100644 index 0e3b264d..00000000 --- a/packages/core/keypair/CONTRIBUTING.md +++ /dev/null @@ -1,13 +0,0 @@ -## Contribute Code - -You are welcome to contribute to Fluence. - -Things you need to know: - -1. You need to **agree to the Contributors License Agreement**. This is a common practice in all major Open Source projects. At the current moment we are unable to accept contributions made on behalf of a company. Only individual contributions will be accepted. -2. **Not all proposed contributions can be accepted**. Some features may e.g. just fit a third-party add-on better. The contribution must fit the overall direction of Fluence and really improve it. The more effort you invest, the better you should clarify in advance whether the contribution fits: the best way would be to just open an issue to discuss the contribution you plan to make. - -### Contributor License Agreement - -When you contribute, you have to be aware that your contribution is covered by **Apache License 2.0**, but might relicensed under few other software licenses mentioned in the **Contributor License Agreement**. -In particular you need to agree to the [Contributor License Agreement](https://gist.github.com/fluencelabs-org/3f4cbb3cc14c1c0fb9ad99d8f7316ed7). If you agree to its content, you simply have to click on the link posted by the CLA assistant as a comment to the pull request. Click it to check the CLA, then accept it on the following screen if you agree to it. CLA assistant will save this decision for upcoming contributions and will notify you if there is any change to the CLA in the meantime. diff --git a/packages/core/keypair/package.json b/packages/core/keypair/package.json deleted file mode 100644 index 05a32b48..00000000 --- a/packages/core/keypair/package.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "name": "@fluencelabs/keypair", - "version": "0.2.0", - "description": "Keypair implementation for Fluence JS Peer", - "main": "./dist/index.js", - "typings": "./dist/index.d.ts", - "engines": { - "node": ">=10", - "pnpm": ">=3" - }, - "scripts": { - "build": "tsc" - }, - "repository": "https://github.com/fluencelabs/fluence-js", - "author": "Fluence Labs", - "license": "Apache-2.0", - "dependencies": { - "peer-id": "0.16.0", - "libp2p-crypto": "0.21.2", - "js-base64": "3.7.2" - }, - "devDependencies": { - "typescript": "4.6.4" - } -} diff --git a/packages/core/keypair/tsconfig.json b/packages/core/keypair/tsconfig.json deleted file mode 100644 index e260f500..00000000 --- a/packages/core/keypair/tsconfig.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "compilerOptions": { - "outDir": "./dist/", - "lib": ["ES2015"], - "target": "ES5", - "sourceMap": true, - "declaration": true, - "module": "commonjs", - }, - "exclude": ["node_modules", "dist"], - "include": ["src/**/*"] -} diff --git a/packages/core/package.json b/packages/core/package.json new file mode 100644 index 00000000..d97429d7 --- /dev/null +++ b/packages/core/package.json @@ -0,0 +1,69 @@ +{ + "name": "@fluencelabs/js-peer", + "version": "0.1.0", + "description": "TypeScript implementation of Fluence Peer", + "main": "./dist/index.js", + "typings": "./dist/index.d.ts", + "engines": { + "node": ">=10", + "pnpm": ">=3" + }, + "type": "module", + "scripts": { + "build": "tsc", + "compile-aqua": "aqua -i ./aqua/ -o ./src/internal/_aqua", + "test:smoke": "node ./dist/js-peer/__test__/integration/smokeTest.js", + "test": "NODE_OPTIONS=--experimental-vm-modules pnpm jest", + "test:unit": "NODE_OPTIONS=--experimental-vm-modules pnpm jest --testPathPattern=src/__test__/unit", + "test:integration": "NODE_OPTIONS=--experimental-vm-modules pnpm jest --testPathPattern=src/__test__/integration" + }, + "repository": "https://github.com/fluencelabs/fluence-js", + "author": "Fluence Labs", + "license": "Apache-2.0", + "dependencies": { + "@fluencelabs/avm": "0.31.10", + "@fluencelabs/marine-js": "0.3.44", + "multiformats": "11.0.1", + "async": "3.2.4", + "bs58": "5.0.0", + "buffer": "6.0.3", + "loglevel": "1.8.1", + "@libp2p/peer-id": "2.0.1", + "platform": "1.3.6", + "rxjs": "7.5.5", + "ts-pattern": "3.3.3", + "uuid": "8.3.2", + "threads": "1.7.0", + "@libp2p/crypto": "1.0.8", + "@libp2p/peer-id-factory": "2.0.1", + "@libp2p/interface-peer-id": "2.0.1", + "@libp2p/interface-keys": "1.0.7", + "js-base64": "3.7.2", + "browser-or-node": "2.0.0", + "it-length-prefixed": "8.0.4", + "it-pipe": "2.0.5", + "it-map": "2.0.0", + "uint8arrays": "4.0.3", + "@chainsafe/libp2p-noise": "11.0.0", + "libp2p": "0.42.2", + "@libp2p/interfaces": "3.3.1", + "@libp2p/interface-connection": "3.0.8", + "@libp2p/mplex": "7.1.1", + "@libp2p/websockets": "5.0.3", + "@multiformats/multiaddr": "11.3.0" + }, + "devDependencies": { + "@types/node": "16.11.59", + "@fluencelabs/aqua": "0.7.7-362", + "@fluencelabs/aqua-api": "0.9.1-373", + "@fluencelabs/aqua-lib": "0.6.0", + "@fluencelabs/fluence-network-environment": "1.0.13", + "@multiformats/multiaddr": "11.3.0", + "@types/bs58": "4.0.1", + "@types/platform": "1.3.4", + "@types/uuid": "8.3.2", + "@types/jest": "29.4.0", + "jest": "29.4.1", + "ts-jest": "29.0.5" + } +} diff --git a/packages/core/connection/src/index.ts b/packages/core/src/connection/index.ts similarity index 71% rename from packages/core/connection/src/index.ts rename to packages/core/src/connection/index.ts index 28422334..cb2f523b 100644 --- a/packages/core/connection/src/index.ts +++ b/packages/core/src/connection/index.ts @@ -13,23 +13,25 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { FluenceConnection, ParticleHandler, PeerIdB58 } from '@fluencelabs/interfaces'; -// @ts-ignore -import Websockets from 'libp2p-websockets'; -// @ts-ignore -import Mplex from 'libp2p-mplex'; -import Lib2p2Peer from 'libp2p'; -import { decode, encode } from 'it-length-prefixed'; +import { FluenceConnection, ParticleHandler, PeerIdB58 } from '../interfaces/index.js'; import { pipe } from 'it-pipe'; -import * as log from 'loglevel'; -import { Noise } from '@chainsafe/libp2p-noise'; -import PeerId from 'peer-id'; -import type { MultiaddrInput } from 'multiaddr'; -import { Connection } from 'libp2p-interfaces/src/topology'; -import { Multiaddr } from 'multiaddr'; -// @ts-ignore -import { all as allow_all } from 'libp2p-websockets/src/filters'; -import Buffer from './Buffer'; +import { encode, decode } from 'it-length-prefixed'; +import type { PeerId } from '@libp2p/interface-peer-id'; +import { createLibp2p, Libp2p } from 'libp2p'; + +import { noise } from '@chainsafe/libp2p-noise'; +import { mplex } from '@libp2p/mplex'; +import { webSockets } from '@libp2p/websockets'; +import { all } from '@libp2p/websockets/filters'; +import { multiaddr } from '@multiformats/multiaddr'; +import type { MultiaddrInput, Multiaddr } from '@multiformats/multiaddr'; +import type { Connection } from '@libp2p/interface-connection'; + +import map from 'it-map'; +import { fromString } from 'uint8arrays/from-string'; +import { toString } from 'uint8arrays/to-string'; + +import log from 'loglevel'; export const PROTOCOL_NAME = '/fluence/particle/2.0.0'; @@ -53,47 +55,43 @@ export interface FluenceConnectionOptions { dialTimeoutMs?: number; } -/* +/** * Implementation for JS peers which connects to Fluence through relay node */ export class RelayConnection extends FluenceConnection { constructor( public peerId: PeerIdB58, - private _lib2p2Peer: Lib2p2Peer, + private _lib2p2Peer: Libp2p, private _relayAddress: Multiaddr, public readonly relayPeerId: PeerIdB58, ) { super(); } + private _connection?: Connection; + static async createConnection(options: FluenceConnectionOptions): Promise { - const transportKey = Websockets.prototype[Symbol.toStringTag]; - const lib2p2Peer = await Lib2p2Peer.create({ + const lib2p2Peer = await createLibp2p({ peerId: options.peerId, - modules: { - transport: [Websockets], - streamMuxer: [Mplex], - connEncryption: [new Noise()], - }, - config: { - transport: { - [transportKey]: { - filter: allow_all, - }, - }, - }, - dialer: { - dialTimeout: options?.dialTimeoutMs, - }, + transports: [ + webSockets({ + filter: all, + }), + ], + streamMuxers: [mplex()], + connectionEncryption: [noise()], }); - const relayMultiaddr = new Multiaddr(options.relayAddress); + + + const relayMultiaddr = multiaddr(options.relayAddress); const relayPeerId = relayMultiaddr.getPeerId(); if (relayPeerId === null) { throw new Error('Specified multiaddr is invalid or missing peer id: ' + options.relayAddress); } + return new RelayConnection( // force new line - options.peerId.toB58String(), + options.peerId.toString(), lib2p2Peer, relayMultiaddr, relayPeerId, @@ -113,18 +111,22 @@ export class RelayConnection extends FluenceConnection { )} instead.`, ); } + /* TODO:: find out why this doesn't work and a new connection has to be established each time if (this._connection.streams.length !== 1) { throw new Error('Incorrect number of streams in FluenceConnection'); } + const sink = this._connection.streams[0].sink; */ - const conn = await this._lib2p2Peer.dialProtocol(this._relayAddress, PROTOCOL_NAME); - const sink = conn.stream.sink; + + const stream = await this._lib2p2Peer.dialProtocol(this._relayAddress, PROTOCOL_NAME); + const sink = stream.sink; + pipe( - // force new line - [Buffer.from(particle, 'utf8')], + [fromString(particle)], + // @ts-ignore encode(), sink, ); @@ -138,7 +140,9 @@ export class RelayConnection extends FluenceConnection { stream.source, // @ts-ignore decode(), - async (source: AsyncIterable) => { + // @ts-ignore + (source) => map(source, (buf) => toString(buf.subarray())), + async (source) => { try { for await (const msg of source) { try { @@ -153,7 +157,10 @@ export class RelayConnection extends FluenceConnection { }, ); }); - log.debug(`dialing to the node with client's address: ` + this._lib2p2Peer.peerId.toB58String()); + + + log.debug(`dialing to the node with client's address: ` + this._lib2p2Peer.peerId.toString()); + try { this._connection = await this._lib2p2Peer.dial(this._relayAddress); } catch (e: any) { diff --git a/packages/core/interfaces/src/index.ts b/packages/core/src/interfaces/index.ts similarity index 99% rename from packages/core/interfaces/src/index.ts rename to packages/core/src/interfaces/index.ts index fe6f780f..3035231b 100644 --- a/packages/core/interfaces/src/index.ts +++ b/packages/core/src/interfaces/index.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import type { JSONArray, JSONObject, LogLevel } from '@fluencelabs/marine-js'; +import type { JSONArray, JSONObject, LogLevel } from '@fluencelabs/marine-js/dist/types'; import type { RunParameters, CallResultsArray, InterpreterResult } from '@fluencelabs/avm'; import type { WorkerImplementation } from 'threads/dist/types/master'; export type PeerIdB58 = string; diff --git a/packages/core/js-peer/src/FluencePeer.ts b/packages/core/src/js-peer/FluencePeer.ts similarity index 96% rename from packages/core/js-peer/src/FluencePeer.ts rename to packages/core/src/js-peer/FluencePeer.ts index 5172f731..b9e6bad9 100644 --- a/packages/core/js-peer/src/FluencePeer.ts +++ b/packages/core/src/js-peer/FluencePeer.ts @@ -15,26 +15,26 @@ */ import 'buffer'; -import { RelayConnection } from '@fluencelabs/connection'; -import { FluenceConnection, IAvmRunner, IMarine } from '@fluencelabs/interfaces'; -import { KeyPair } from '@fluencelabs/keypair'; -import type { MultiaddrInput } from 'multiaddr'; -import { CallServiceData, CallServiceResult, GenericCallServiceHandler, ResultCodes } from './commonTypes'; -import { PeerIdB58 } from './commonTypes'; -import { Particle, ParticleExecutionStage, ParticleQueueItem } from './Particle'; -import { throwIfNotSupported, dataToString, jsonify, isString, ServiceError } from './utils'; +import { RelayConnection } from '../connection/index.js'; +import { FluenceConnection, IAvmRunner, IMarine } from '../interfaces/index.js'; +import { KeyPair } from '../keypair/index.js'; +import type { MultiaddrInput } from '@multiformats/multiaddr'; +import { CallServiceData, CallServiceResult, GenericCallServiceHandler, ResultCodes } from './commonTypes.js'; +import { PeerIdB58 } from './commonTypes.js'; +import { Particle, ParticleExecutionStage, ParticleQueueItem } from './Particle.js'; +import { throwIfNotSupported, dataToString, jsonify, isString, ServiceError } from './utils.js'; import { concatMap, filter, pipe, Subject, tap } from 'rxjs'; import log from 'loglevel'; -import { builtInServices } from './builtins/common'; -import { defaultSigGuard, Sig } from './builtins/Sig'; -import { registerSig } from './_aqua/services'; -import { registerSrv } from './_aqua/single-module-srv'; +import { builtInServices } from './builtins/common.js'; +import { defaultSigGuard, Sig } from './builtins/Sig.js'; +import { registerSig } from './_aqua/services.js'; +import { registerSrv } from './_aqua/single-module-srv.js'; import { Buffer } from 'buffer'; import { JSONValue } from '@fluencelabs/avm'; -import { NodeUtils, Srv } from './builtins/SingleModuleSrv'; -import { registerNodeUtils } from './_aqua/node-utils'; -import { LogLevel } from '@fluencelabs/marine-js'; +import { NodeUtils, Srv } from './builtins/SingleModuleSrv.js'; +import { registerNodeUtils } from './_aqua/node-utils.js'; +import { LogLevel } from '@fluencelabs/marine-js/dist/types'; /** * Node of the Fluence network specified as a pair of node's multiaddr and it's peer id @@ -210,7 +210,7 @@ export class FluencePeer { if (this.connection === null) { return { isInitialized: true, - peerId: this._keyPair.Libp2pPeerId.toB58String(), + peerId: this._keyPair.getPeerId(), isConnected: false, relayPeerId: null, }; @@ -219,7 +219,7 @@ export class FluencePeer { if (this.connection.relayPeerId === null) { return { isInitialized: true, - peerId: this._keyPair.Libp2pPeerId.toB58String(), + peerId: this._keyPair.getPeerId(), isConnected: true, isDirect: true, relayPeerId: null, @@ -228,7 +228,7 @@ export class FluencePeer { return { isInitialized: true, - peerId: this._keyPair.Libp2pPeerId.toB58String(), + peerId: this._keyPair.getPeerId(), isConnected: true, relayPeerId: this.connection.relayPeerId, }; @@ -422,7 +422,7 @@ export class FluencePeer { async init(config: PeerConfig & Required>) { this._keyPair = config.KeyPair; - const peerId = this._keyPair.Libp2pPeerId.toB58String(); + const peerId = this._keyPair.getPeerId(); if (config?.debug?.printParticleId) { this._printParticleId = true; @@ -797,7 +797,7 @@ async function configToConnection( } const res = await RelayConnection.createConnection({ - peerId: keyPair.Libp2pPeerId, + peerId: keyPair.getLibp2pPeerId(), relayAddress: connectToMultiAddr, dialTimeoutMs: dialTimeoutMs, }); diff --git a/packages/core/js-peer/src/Particle.ts b/packages/core/src/js-peer/Particle.ts similarity index 94% rename from packages/core/js-peer/src/Particle.ts rename to packages/core/src/js-peer/Particle.ts index ee4c6f1f..7fe815c8 100644 --- a/packages/core/js-peer/src/Particle.ts +++ b/packages/core/src/js-peer/Particle.ts @@ -13,12 +13,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + +import { fromUint8Array, toUint8Array } from 'js-base64'; import { CallResultsArray, LogLevel } from '@fluencelabs/avm'; import { v4 as uuidv4 } from 'uuid'; -import { fromByteArray, toByteArray } from 'base64-js'; import log from 'loglevel'; -import { ParticleContext } from './commonTypes'; -import { dataToString, jsonify } from './utils'; +import { ParticleContext } from './commonTypes.js'; +import { dataToString, jsonify } from './utils.js'; import { Buffer } from 'buffer'; export class Particle { @@ -45,7 +46,7 @@ export class Particle { json.id, json.timestamp, json.script, - toByteArray(json.data), + toUint8Array(json.data), json.ttl, json.init_peer_id, ); @@ -91,7 +92,7 @@ export class Particle { script: this.script, // TODO: copy signature from a particle after signatures will be implemented on nodes signature: [], - data: this.data && fromByteArray(this.data), + data: this.data && fromUint8Array(this.data), }); } diff --git a/packages/core/js-peer/src/__test__/connection.ts b/packages/core/src/js-peer/__test__/connection.ts similarity index 100% rename from packages/core/js-peer/src/__test__/connection.ts rename to packages/core/src/js-peer/__test__/connection.ts diff --git a/packages/core/js-peer/src/__test__/integration/greeting-record.wasm b/packages/core/src/js-peer/__test__/data/greeting-record.wasm similarity index 100% rename from packages/core/js-peer/src/__test__/integration/greeting-record.wasm rename to packages/core/src/js-peer/__test__/data/greeting-record.wasm diff --git a/packages/core/js-peer/src/__test__/integration/greeting.wasm b/packages/core/src/js-peer/__test__/data/greeting.wasm similarity index 100% rename from packages/core/js-peer/src/__test__/integration/greeting.wasm rename to packages/core/src/js-peer/__test__/data/greeting.wasm diff --git a/packages/core/js-peer/src/__test__/integration/marine-js.aqua b/packages/core/src/js-peer/__test__/data/marine-js.aqua similarity index 100% rename from packages/core/js-peer/src/__test__/integration/marine-js.aqua rename to packages/core/src/js-peer/__test__/data/marine-js.aqua diff --git a/packages/core/js-peer/src/__test__/integration/sigService.aqua b/packages/core/src/js-peer/__test__/data/sigService.aqua similarity index 100% rename from packages/core/js-peer/src/__test__/integration/sigService.aqua rename to packages/core/src/js-peer/__test__/data/sigService.aqua diff --git a/packages/core/js-peer/src/__test__/integration/srv.aqua b/packages/core/src/js-peer/__test__/data/srv.aqua similarity index 100% rename from packages/core/js-peer/src/__test__/integration/srv.aqua rename to packages/core/src/js-peer/__test__/data/srv.aqua diff --git a/packages/core/js-peer/src/__test__/integration/avm.spec.ts b/packages/core/src/js-peer/__test__/integration/avm.spec.ts.skip similarity index 98% rename from packages/core/js-peer/src/__test__/integration/avm.spec.ts rename to packages/core/src/js-peer/__test__/integration/avm.spec.ts.skip index e3068e66..85f3dc62 100644 --- a/packages/core/js-peer/src/__test__/integration/avm.spec.ts +++ b/packages/core/src/js-peer/__test__/integration/avm.spec.ts.skip @@ -1,5 +1,5 @@ -import { handleTimeout } from '../../utils'; -import { registerHandlersHelper, withPeer } from '../util'; +import { handleTimeout } from '../../utils.js'; +import { registerHandlersHelper, withPeer } from '../util.js'; describe('Avm spec', () => { it('Simple call', async () => { diff --git a/packages/core/js-peer/src/__test__/integration/jsonBuiltin.spec.ts b/packages/core/src/js-peer/__test__/integration/jsonBuiltin.spec.ts.skip similarity index 93% rename from packages/core/js-peer/src/__test__/integration/jsonBuiltin.spec.ts rename to packages/core/src/js-peer/__test__/integration/jsonBuiltin.spec.ts.skip index e3f6f92e..e1a32a6a 100644 --- a/packages/core/js-peer/src/__test__/integration/jsonBuiltin.spec.ts +++ b/packages/core/src/js-peer/__test__/integration/jsonBuiltin.spec.ts.skip @@ -1,7 +1,7 @@ -import { Particle } from '../../Particle'; -import { doNothing } from '../../utils'; -import { FluencePeer } from '../../FluencePeer'; -import { mkTestPeer } from '../util'; +import { Particle } from '../../Particle.js'; +import { doNothing } from '../../utils.js'; +import { FluencePeer } from '../../FluencePeer.js'; +import { mkTestPeer } from '../util.js'; let peer: FluencePeer; diff --git a/packages/core/js-peer/src/__test__/integration/marine-js.spec.ts b/packages/core/src/js-peer/__test__/integration/marine-js.spec.ts.skip similarity index 74% rename from packages/core/js-peer/src/__test__/integration/marine-js.spec.ts rename to packages/core/src/js-peer/__test__/integration/marine-js.spec.ts.skip index 60378dfb..0738dd8d 100644 --- a/packages/core/js-peer/src/__test__/integration/marine-js.spec.ts +++ b/packages/core/src/js-peer/__test__/integration/marine-js.spec.ts.skip @@ -1,19 +1,21 @@ -import fs from 'fs'; -import path from 'path'; -import { compileAqua, withPeer } from '../util'; +import * as fs from 'fs'; +import * as url from 'url'; +import * as path from 'path'; +import { compileAqua, withPeer } from '../util.js'; let aqua: any; +const __dirname = url.fileURLToPath(new URL('.', import.meta.url)); describe('Marine js tests', () => { beforeAll(async () => { - const { services, functions } = await compileAqua(path.join(__dirname, './marine-js.aqua')); + const { services, functions } = await compileAqua(path.join(__dirname, '../data/marine-js.aqua')); aqua = functions; }); it('should call marine service correctly', async () => { await withPeer(async (peer) => { // arrange - const wasm = await fs.promises.readFile(__dirname + '/greeting.wasm'); + const wasm = await fs.promises.readFile(path.join(__dirname, '../data/greeting.wasm')); await peer.registerMarineService(wasm, 'greeting'); // act @@ -37,7 +39,7 @@ describe('Marine js tests', () => { marineLogLevel: 'debug', }, }); - const wasm = await fs.promises.readFile(__dirname + '/greeting-record.wasm'); + const wasm = await fs.promises.readFile(path.join(__dirname, '../data/greeting-record.wasm')); await peer.registerMarineService(wasm, 'greeting'); // act diff --git a/packages/core/js-peer/src/__test__/integration/peer.spec.ts b/packages/core/src/js-peer/__test__/integration/peer.spec.ts.skip similarity index 98% rename from packages/core/js-peer/src/__test__/integration/peer.spec.ts rename to packages/core/src/js-peer/__test__/integration/peer.spec.ts.skip index d33fec2b..4cf7d2d0 100644 --- a/packages/core/js-peer/src/__test__/integration/peer.spec.ts +++ b/packages/core/src/js-peer/__test__/integration/peer.spec.ts.skip @@ -1,9 +1,7 @@ -import { Multiaddr } from 'multiaddr'; - -import { nodes } from '../connection'; -import { checkConnection, doNothing, handleTimeout } from '../../utils'; -import { registerHandlersHelper, mkTestPeer, withPeer, withConnectedPeer } from '../util'; -import { FluencePeer } from '../../FluencePeer'; +import { nodes } from '../connection.js'; +import { checkConnection, doNothing, handleTimeout } from '../../utils.js'; +import { registerHandlersHelper, mkTestPeer, withPeer, withConnectedPeer } from '../util.js'; +import { FluencePeer } from '../../FluencePeer.js'; describe('Typescript usage suite', () => { it('should perform test for FluencePeer class correctly', () => { diff --git a/packages/core/js-peer/src/__test__/integration/sigService.spec.ts b/packages/core/src/js-peer/__test__/integration/sigService.spec.ts.skip similarity index 88% rename from packages/core/js-peer/src/__test__/integration/sigService.spec.ts rename to packages/core/src/js-peer/__test__/integration/sigService.spec.ts.skip index 3149721f..15556349 100644 --- a/packages/core/js-peer/src/__test__/integration/sigService.spec.ts +++ b/packages/core/src/js-peer/__test__/integration/sigService.spec.ts.skip @@ -1,9 +1,12 @@ -import path from 'path'; -import { KeyPair } from '@fluencelabs/keypair'; -import { allowServiceFn } from '../../builtins/securityGuard'; -import { Sig } from '../../builtins/Sig'; -import { compileAqua, withPeer } from '../util'; -import { registerServiceImpl } from '../../compilerSupport/registerService'; +import * as path from 'path'; +import * as url from 'url'; +import { KeyPair } from '../../../keypair/index.js'; +import { allowServiceFn } from '../../builtins/securityGuard.js'; +import { Sig } from '../../builtins/Sig.js'; +import { compileAqua, withPeer } from '../util.js'; +import { registerServiceImpl } from '../../compilerSupport/registerService.js'; + +const __dirname = url.fileURLToPath(new URL('.', import.meta.url)); let aqua: any; let sigDef: any; @@ -11,7 +14,7 @@ let dataProviderDef: any; describe('Sig service test suite', () => { beforeAll(async () => { - const { services, functions } = await compileAqua(path.join(__dirname, './sigService.aqua')); + const { services, functions } = await compileAqua(path.join(__dirname, '../data/sigService.aqua')); aqua = functions; sigDef = services.Sig; dataProviderDef = services.DataProvider; diff --git a/packages/core/src/js-peer/__test__/integration/smokeTest.ts b/packages/core/src/js-peer/__test__/integration/smokeTest.ts new file mode 100644 index 00000000..fcc66bfc --- /dev/null +++ b/packages/core/src/js-peer/__test__/integration/smokeTest.ts @@ -0,0 +1,67 @@ +import { handleTimeout } from '../../utils.js'; +import { nodes } from '../connection.js'; +import { mkTestPeer, registerHandlersHelper } from '../util.js'; + +const smokeTest = async () => { + // arrange + const peer = mkTestPeer(); + await peer.start({ + connectTo: nodes[0], + }); + + const result = await new Promise((resolve, reject) => { + const script = ` + (xor + (seq + (call %init_peer_id% ("load" "relay") [] init_relay) + (seq + (call init_relay ("op" "identity") ["hello world!"] result) + (call %init_peer_id% ("callback" "callback") [result]) + ) + ) + (seq + (call init_relay ("op" "identity") []) + (call %init_peer_id% ("callback" "error") [%last_error%]) + ) + )`; + const particle = peer.internals.createNewParticle(script); + + if (particle instanceof Error) { + return reject(particle.message); + } + + registerHandlersHelper(peer, particle, { + load: { + relay: () => { + return peer.getStatus().relayPeerId; + }, + }, + callback: { + callback: (args: any) => { + const [val] = args; + resolve(val); + }, + error: (args: any) => { + const [error] = args; + reject(error); + }, + }, + }); + + peer.internals.initiateParticle(particle, handleTimeout(reject)); + }); + + await peer.stop(); + + if (result[0] !== 'hello world!') { + throw new Error('Expecting "hello wrold!" got ' + result[0]); + } +}; + +smokeTest() + .then(() => { + console.log('Test passed'); + }) + .catch((err) => { + console.error('Test failed: ', err); + }); diff --git a/packages/core/js-peer/src/__test__/integration/srv.spec.ts b/packages/core/src/js-peer/__test__/integration/srv.spec.ts.skip similarity index 80% rename from packages/core/js-peer/src/__test__/integration/srv.spec.ts rename to packages/core/src/js-peer/__test__/integration/srv.spec.ts.skip index 234b5c88..9612413c 100644 --- a/packages/core/js-peer/src/__test__/integration/srv.spec.ts +++ b/packages/core/src/js-peer/__test__/integration/srv.spec.ts.skip @@ -1,18 +1,20 @@ -import path from 'path'; -import { compileAqua, withPeer } from '../util'; +import * as path from 'path'; +import * as url from 'url'; +import { compileAqua, withPeer } from '../util.js'; +const __dirname = url.fileURLToPath(new URL('.', import.meta.url)); let aqua: any; describe('Srv service test suite', () => { beforeAll(async () => { - const { services, functions } = await compileAqua(path.join(__dirname, './srv.aqua')); + const { services, functions } = await compileAqua(path.join(__dirname, '../data/srv.aqua')); aqua = functions; }); it('Use custom srv service, success path', async () => { await withPeer(async (peer) => { // arrange - const wasm = path.join(__dirname, './greeting.wasm'); + const wasm = path.join(__dirname, '../data/greeting.wasm'); // act const res = await aqua.happy_path(peer, { file_path: wasm }); @@ -25,7 +27,7 @@ describe('Srv service test suite', () => { it('List deployed services', async () => { await withPeer(async (peer) => { // arrange - const wasm = path.join(__dirname, './greeting.wasm'); + const wasm = path.join(__dirname, '../data/greeting.wasm'); // act const res = await aqua.list_services(peer, { file_path: wasm }); @@ -38,7 +40,7 @@ describe('Srv service test suite', () => { it('Correct error for removed services', async () => { await withPeer(async (peer) => { // arrange - const wasm = path.join(__dirname, './greeting.wasm'); + const wasm = path.join(__dirname, '../data/greeting.wasm'); // act const res = await aqua.service_removed(peer, { file_path: wasm }); diff --git a/packages/core/js-peer/src/__test__/unit/ast.spec.ts b/packages/core/src/js-peer/__test__/unit/ast.spec.ts.skip similarity index 94% rename from packages/core/js-peer/src/__test__/unit/ast.spec.ts rename to packages/core/src/js-peer/__test__/unit/ast.spec.ts.skip index 0a485967..0d4b1526 100644 --- a/packages/core/js-peer/src/__test__/unit/ast.spec.ts +++ b/packages/core/src/js-peer/__test__/unit/ast.spec.ts.skip @@ -1,4 +1,4 @@ -import { mkTestPeer } from '../util'; +import { mkTestPeer } from '../util.js'; const peer = mkTestPeer(); diff --git a/packages/core/src/js-peer/__test__/unit/builtInHandler.spec.ts b/packages/core/src/js-peer/__test__/unit/builtInHandler.spec.ts new file mode 100644 index 00000000..55d3a1d1 --- /dev/null +++ b/packages/core/src/js-peer/__test__/unit/builtInHandler.spec.ts @@ -0,0 +1,304 @@ +import { toUint8Array } from 'js-base64'; +import { CallParams, CallServiceData } from '../../commonTypes.js'; +import { builtInServices } from '../../builtins/common.js'; +import { KeyPair } from '../../../keypair/index.js'; +import { Sig, defaultSigGuard } from '../../builtins/Sig.js'; +import { allowServiceFn } from '../../builtins/securityGuard.js'; + +const a10b20 = `{ + "a": 10, + "b": 20 +}`; + +const oneTwoThreeFour = `[ + 1, + 2, + 3, + 4 +]`; + +describe('Tests for default handler', () => { + test.each` + serviceId | fnName | args | retCode | result + ${'op'} | ${'identity'} | ${[]} | ${0} | ${{}} + ${'op'} | ${'identity'} | ${[1]} | ${0} | ${1} + ${'op'} | ${'identity'} | ${[1, 2]} | ${1} | ${'identity accepts up to 1 arguments, received 2 arguments'} + ${'op'} | ${'noop'} | ${[1, 2]} | ${0} | ${{}} + ${'op'} | ${'array'} | ${[1, 2, 3]} | ${0} | ${[1, 2, 3]} + ${'op'} | ${'array_length'} | ${[[1, 2, 3]]} | ${0} | ${3} + ${'op'} | ${'array_length'} | ${[]} | ${1} | ${'array_length accepts exactly one argument, found: 0'} + ${'op'} | ${'concat'} | ${[[1, 2], [3, 4], [5, 6]]} | ${0} | ${[1, 2, 3, 4, 5, 6]} + ${'op'} | ${'concat'} | ${[[1, 2]]} | ${0} | ${[1, 2]} + ${'op'} | ${'concat'} | ${[]} | ${0} | ${[]} + ${'op'} | ${'concat'} | ${[1, [1, 2], 1]} | ${1} | ${"All arguments of 'concat' must be arrays: arguments 0, 2 are not"} + ${'op'} | ${'string_to_b58'} | ${['test']} | ${0} | ${'3yZe7d'} + ${'op'} | ${'string_to_b58'} | ${['test', 1]} | ${1} | ${'string_to_b58 accepts only one string argument'} + ${'op'} | ${'string_from_b58'} | ${['3yZe7d']} | ${0} | ${'test'} + ${'op'} | ${'string_from_b58'} | ${['3yZe7d', 1]} | ${1} | ${'string_from_b58 accepts only one string argument'} + ${'op'} | ${'bytes_to_b58'} | ${[[116, 101, 115, 116]]} | ${0} | ${'3yZe7d'} + ${'op'} | ${'bytes_to_b58'} | ${[[116, 101, 115, 116], 1]} | ${1} | ${'bytes_to_b58 accepts only single argument: array of numbers'} + ${'op'} | ${'bytes_from_b58'} | ${['3yZe7d']} | ${0} | ${[116, 101, 115, 116]} + ${'op'} | ${'bytes_from_b58'} | ${['3yZe7d', 1]} | ${1} | ${'bytes_from_b58 accepts only one string argument'} + ${'op'} | ${'sha256_string'} | ${['hello, world!']} | ${0} | ${'QmVQ8pg6L1tpoWYeq6dpoWqnzZoSLCh7E96fCFXKvfKD3u'} + ${'op'} | ${'sha256_string'} | ${['hello, world!', true]} | ${0} | ${'84V7ZxLW7qKsx1Qvbd63BdGaHxUc3TfT2MBPqAXM7Wyu'} + ${'op'} | ${'sha256_string'} | ${[]} | ${1} | ${'sha256_string accepts 1-3 arguments, found: 0'} + ${'op'} | ${'concat_strings'} | ${[]} | ${0} | ${''} + ${'op'} | ${'concat_strings'} | ${['a', 'b', 'c']} | ${0} | ${'abc'} + ${'peer'} | ${'timeout'} | ${[200, []]} | ${0} | ${[]} + ${'peer'} | ${'timeout'} | ${[200, ['test']]} | ${0} | ${['test']} + ${'peer'} | ${'timeout'} | ${[]} | ${1} | ${'timeout accepts exactly two arguments: timeout duration in ms and a message string'} + ${'peer'} | ${'timeout'} | ${[200, 'test', 1]} | ${1} | ${'timeout accepts exactly two arguments: timeout duration in ms and a message string'} + ${'debug'} | ${'stringify'} | ${[]} | ${0} | ${'""'} + ${'debug'} | ${'stringify'} | ${[{ a: 10, b: 20 }]} | ${0} | ${a10b20} + ${'debug'} | ${'stringify'} | ${[1, 2, 3, 4]} | ${0} | ${oneTwoThreeFour} + ${'math'} | ${'add'} | ${[2, 2]} | ${0} | ${4} + ${'math'} | ${'add'} | ${[2]} | ${1} | ${'Expected 2 argument(s). Got 1'} + ${'math'} | ${'sub'} | ${[2, 2]} | ${0} | ${0} + ${'math'} | ${'sub'} | ${[2, 3]} | ${0} | ${-1} + ${'math'} | ${'mul'} | ${[2, 2]} | ${0} | ${4} + ${'math'} | ${'mul'} | ${[2, 0]} | ${0} | ${0} + ${'math'} | ${'mul'} | ${[2, -1]} | ${0} | ${-2} + ${'math'} | ${'fmul'} | ${[10, 0.66]} | ${0} | ${6} + ${'math'} | ${'fmul'} | ${[0.5, 0.5]} | ${0} | ${0} + ${'math'} | ${'fmul'} | ${[100.5, 0.5]} | ${0} | ${50} + ${'math'} | ${'div'} | ${[2, 2]} | ${0} | ${1} + ${'math'} | ${'div'} | ${[2, 3]} | ${0} | ${0} + ${'math'} | ${'div'} | ${[10, 5]} | ${0} | ${2} + ${'math'} | ${'rem'} | ${[10, 3]} | ${0} | ${1} + ${'math'} | ${'pow'} | ${[2, 2]} | ${0} | ${4} + ${'math'} | ${'pow'} | ${[2, 0]} | ${0} | ${1} + ${'math'} | ${'log'} | ${[2, 2]} | ${0} | ${1} + ${'math'} | ${'log'} | ${[2, 4]} | ${0} | ${2} + ${'cmp'} | ${'gt'} | ${[2, 4]} | ${0} | ${false} + ${'cmp'} | ${'gte'} | ${[2, 4]} | ${0} | ${false} + ${'cmp'} | ${'gte'} | ${[4, 2]} | ${0} | ${true} + ${'cmp'} | ${'gte'} | ${[2, 2]} | ${0} | ${true} + ${'cmp'} | ${'lt'} | ${[2, 4]} | ${0} | ${true} + ${'cmp'} | ${'lte'} | ${[2, 4]} | ${0} | ${true} + ${'cmp'} | ${'lte'} | ${[4, 2]} | ${0} | ${false} + ${'cmp'} | ${'lte'} | ${[2, 2]} | ${0} | ${true} + ${'cmp'} | ${'cmp'} | ${[2, 4]} | ${0} | ${-1} + ${'cmp'} | ${'cmp'} | ${[2, -4]} | ${0} | ${1} + ${'cmp'} | ${'cmp'} | ${[2, 2]} | ${0} | ${0} + ${'array'} | ${'sum'} | ${[[1, 2, 3]]} | ${0} | ${6} + ${'array'} | ${'dedup'} | ${[['a', 'a', 'b', 'c', 'a', 'b', 'c']]} | ${0} | ${['a', 'b', 'c']} + ${'array'} | ${'intersect'} | ${[['a', 'b', 'c'], ['c', 'b', 'd']]} | ${0} | ${['b', 'c']} + ${'array'} | ${'diff'} | ${[['a', 'b', 'c'], ['c', 'b', 'd']]} | ${0} | ${['a']} + ${'array'} | ${'sdiff'} | ${[['a', 'b', 'c'], ['c', 'b', 'd']]} | ${0} | ${['a', 'd']} + ${'json'} | ${'obj'} | ${['a', 10, 'b', 'string', 'c', null]} | ${0} | ${{ a: 10, b: 'string', c: null }} + ${'json'} | ${'obj'} | ${['a', 10, 'b', 'string', 'c']} | ${1} | ${'Expected even number of argument(s). Got 5'} + ${'json'} | ${'obj'} | ${[]} | ${0} | ${{}} + ${'json'} | ${'put'} | ${[{}, 'a', 10]} | ${0} | ${{ a: 10 }} + ${'json'} | ${'put'} | ${[{ b: 11 }, 'a', 10]} | ${0} | ${{ a: 10, b: 11 }} + ${'json'} | ${'put'} | ${['a', 'a', 11]} | ${1} | ${'Argument 0 expected to be of type object, Got string'} + ${'json'} | ${'put'} | ${[{}, 'a', 10, 'b', 20]} | ${1} | ${'Expected 3 argument(s). Got 5'} + ${'json'} | ${'put'} | ${[{}]} | ${1} | ${'Expected 3 argument(s). Got 1'} + ${'json'} | ${'puts'} | ${[{}, 'a', 10]} | ${0} | ${{ a: 10 }} + ${'json'} | ${'puts'} | ${[{ b: 11 }, 'a', 10]} | ${0} | ${{ a: 10, b: 11 }} + ${'json'} | ${'puts'} | ${[{}, 'a', 10, 'b', 'string', 'c', null]} | ${0} | ${{ a: 10, b: 'string', c: null }} + ${'json'} | ${'puts'} | ${[{ x: 'text' }, 'a', 10, 'b', 'string']} | ${0} | ${{ a: 10, b: 'string', x: 'text' }} + ${'json'} | ${'puts'} | ${[{}]} | ${1} | ${'Expected more than 3 argument(s). Got 1'} + ${'json'} | ${'puts'} | ${['a', 'a', 11]} | ${1} | ${'Argument 0 expected to be of type object, Got string'} + ${'json'} | ${'stringify'} | ${[{ a: 10, b: 'string', c: null }]} | ${0} | ${'{"a":10,"b":"string","c":null}'} + ${'json'} | ${'stringify'} | ${[1]} | ${1} | ${'Argument 0 expected to be of type object, Got number'} + ${'json'} | ${'parse'} | ${['{"a":10,"b":"string","c":null}']} | ${0} | ${{ a: 10, b: 'string', c: null }} + ${'json'} | ${'parse'} | ${['incorrect']} | ${1} | ${'Unexpected token i in JSON at position 0'} + ${'json'} | ${'parse'} | ${[10]} | ${1} | ${'Argument 0 expected to be of type string, Got number'} + `( + // + '$fnName with $args expected retcode: $retCode and result: $result', + async ({ serviceId, fnName, args, retCode, result }) => { + // arrange + const req: CallServiceData = { + serviceId: serviceId, + fnName: fnName, + args: args, + tetraplets: [], + particleContext: { + particleId: 'some', + initPeerId: 'init peer id', + timestamp: 595951200, + ttl: 595961200, + signature: 'sig', + }, + }; + + // act + const fn = builtInServices[req.serviceId][req.fnName]; + const res = await fn(req); + + // assert + expect(res).toMatchObject({ + retCode: retCode, + result: result, + }); + }, + ); + + it('should return correct error message for identiy service', async () => { + // arrange + const req: CallServiceData = { + serviceId: 'peer', + fnName: 'identify', + args: [], + tetraplets: [], + particleContext: { + particleId: 'some', + initPeerId: 'init peer id', + timestamp: 595951200, + ttl: 595961200, + signature: 'sig', + }, + }; + + // act + const fn = builtInServices[req.serviceId][req.fnName]; + const res = await fn(req); + + // assert + expect(res).toMatchObject({ + retCode: 0, + result: { + external_addresses: [], + node_version: expect.stringContaining('js'), + air_version: expect.stringContaining('js'), + }, + }); + }); +}); + +const key = '+cmeYlZKj+MfSa9dpHV+BmLPm6wq4inGlsPlQ1GvtPk='; + +const context = (async () => { + const keyBytes = toUint8Array(key); + const kp = await KeyPair.fromEd25519SK(keyBytes); + const res = { + peerKeyPair: kp, + peerId: kp.getPeerId(), + }; + return res; +})(); + +const testData = [1, 2, 3, 4, 5, 6, 7, 9, 10]; + +// signature produced by KeyPair created from key above (`key` variable) +const testDataSig = [ + 224, 104, 245, 206, 140, 248, 27, 72, 68, 133, 111, 10, 164, 197, 242, 132, 107, 77, 224, 67, 99, 106, 76, 29, 144, + 121, 122, 169, 36, 173, 58, 80, 170, 102, 137, 253, 157, 247, 168, 87, 162, 223, 188, 214, 203, 220, 52, 246, 29, + 86, 77, 71, 224, 248, 16, 213, 254, 75, 78, 239, 243, 222, 241, 15, +]; + +// signature produced by KeyPair created from some random KeyPair +const testDataWrongSig = [ + 116, 247, 189, 118, 236, 53, 147, 123, 219, 75, 176, 105, 101, 108, 233, 137, 97, 14, 146, 132, 252, 70, 51, 153, + 237, 167, 156, 150, 36, 90, 229, 108, 166, 231, 255, 137, 8, 246, 125, 0, 213, 150, 83, 196, 237, 221, 131, 159, + 157, 159, 25, 109, 95, 160, 181, 65, 254, 238, 47, 156, 240, 151, 58, 14, +]; + +const makeTetraplet = (initPeerId: string, serviceId?: string, fnName?: string): CallParams<'data'> => { + return { + initPeerId: initPeerId, + tetraplets: { + data: [ + { + function_name: fnName, + service_id: serviceId, + }, + ], + }, + } as any; +}; + +describe('Sig service tests', () => { + it('sig.sign should create the correct signature', async () => { + const ctx = await context; + const sig = new Sig(ctx.peerKeyPair); + + const res = await sig.sign(testData, makeTetraplet(ctx.peerId)); + + expect(res.success).toBe(true); + expect(res.signature).toStrictEqual(testDataSig); + }); + + it('sig.verify should return true for the correct signature', async () => { + const ctx = await context; + const sig = new Sig(ctx.peerKeyPair); + + const res = await sig.verify(testDataSig, testData); + + expect(res).toBe(true); + }); + + it('sig.verify should return false for the incorrect signature', async () => { + const ctx = await context; + const sig = new Sig(ctx.peerKeyPair); + + const res = await sig.verify(testDataWrongSig, testData); + + expect(res).toBe(false); + }); + + it('sign-verify call chain should work', async () => { + const ctx = await context; + const sig = new Sig(ctx.peerKeyPair); + + const signature = await sig.sign(testData, makeTetraplet(ctx.peerId)); + const res = await sig.verify(signature.signature as number[], testData); + + expect(res).toBe(true); + }); + + it('sig.sign with defaultSigGuard should work for correct callParams', async () => { + const ctx = await context; + const sig = new Sig(ctx.peerKeyPair); + sig.securityGuard = defaultSigGuard(ctx.peerId); + + const signature = await sig.sign(testData, makeTetraplet(ctx.peerId, 'registry', 'get_route_bytes')); + + await expect(signature).toBeDefined(); + }); + + it('sig.sign with defaultSigGuard should not allow particles initiated from incorrect service', async () => { + const ctx = await context; + const sig = new Sig(ctx.peerKeyPair); + sig.securityGuard = defaultSigGuard(ctx.peerId); + + const res = await sig.sign(testData, makeTetraplet(ctx.peerId, 'other_service', 'other_fn')); + + await expect(res.success).toBe(false); + await expect(res.error).toBe('Security guard validation failed'); + }); + + it('sig.sign with defaultSigGuard should not allow particles initiated from other peers', async () => { + const ctx = await context; + const sig = new Sig(ctx.peerKeyPair); + sig.securityGuard = defaultSigGuard(ctx.peerId); + + const res = await sig.sign( + testData, + makeTetraplet((await KeyPair.randomEd25519()).getPeerId(), 'registry', 'get_key_bytes'), + ); + + await expect(res.success).toBe(false); + await expect(res.error).toBe('Security guard validation failed'); + }); + + it('changing securityGuard should work', async () => { + const ctx = await context; + const sig = new Sig(ctx.peerKeyPair); + sig.securityGuard = allowServiceFn('test', 'test'); + + const successful1 = await sig.sign(testData, makeTetraplet(ctx.peerId, 'test', 'test')); + const unSuccessful1 = await sig.sign(testData, makeTetraplet(ctx.peerId, 'wrong', 'wrong')); + + sig.securityGuard = allowServiceFn('wrong', 'wrong'); + + const successful2 = await sig.sign(testData, makeTetraplet(ctx.peerId, 'wrong', 'wrong')); + const unSuccessful2 = await sig.sign(testData, makeTetraplet(ctx.peerId, 'test', 'test')); + + expect(successful1.success).toBe(true); + expect(successful2.success).toBe(true); + expect(unSuccessful1.success).toBe(false); + expect(unSuccessful2.success).toBe(false); + }); +}); diff --git a/packages/core/js-peer/src/__test__/unit/compiler/v3.spec.ts b/packages/core/src/js-peer/__test__/unit/compiler/v3.spec.ts similarity index 71% rename from packages/core/js-peer/src/__test__/unit/compiler/v3.spec.ts rename to packages/core/src/js-peer/__test__/unit/compiler/v3.spec.ts index 2eb7b6b9..c21ec1eb 100644 --- a/packages/core/js-peer/src/__test__/unit/compiler/v3.spec.ts +++ b/packages/core/src/js-peer/__test__/unit/compiler/v3.spec.ts @@ -1,5 +1,4 @@ -import each from 'jest-each'; -import { aqua2ts, ts2aqua } from '../../../compilerSupport/conversions'; +import { aqua2ts, ts2aqua } from '../../../compilerSupport/conversions.js'; const i32 = { tag: 'scalar', name: 'i32' } as const; @@ -152,24 +151,24 @@ const nestedStructs = [ ]; describe('Conversion from aqua to typescript', () => { - each` - aqua | ts | type - ${1} | ${1} | ${i32} - ${[]} | ${null} | ${opt_i32} - ${[1]} | ${1} | ${opt_i32} - ${[1, 2, 3]} | ${[1, 2, 3]} | ${array_i32} - ${[]} | ${[]} | ${array_i32} - ${[[1]]} | ${[1]} | ${array_opt_i32} - ${[[]]} | ${[null]} | ${array_opt_i32} - ${[[1], [2]]} | ${[1, 2]} | ${array_opt_i32} - ${[[], [2]]} | ${[null, 2]} | ${array_opt_i32} - ${structs[0].aqua} | ${structs[0].ts} | ${labeledProduct} - ${structs[1].aqua} | ${structs[1].ts} | ${labeledProduct} - ${structs[0].aqua} | ${structs[0].ts} | ${struct} - ${structs[1].aqua} | ${structs[1].ts} | ${struct} - ${nestedStructs[0].aqua} | ${nestedStructs[0].ts} | ${nestedLabeledProductType} - ${nestedStructs[1].aqua} | ${nestedStructs[1].ts} | ${nestedLabeledProductType} -`.test( + test.each` + aqua | ts | type + ${1} | ${1} | ${i32} + ${[]} | ${null} | ${opt_i32} + ${[1]} | ${1} | ${opt_i32} + ${[1, 2, 3]} | ${[1, 2, 3]} | ${array_i32} + ${[]} | ${[]} | ${array_i32} + ${[[1]]} | ${[1]} | ${array_opt_i32} + ${[[]]} | ${[null]} | ${array_opt_i32} + ${[[1], [2]]} | ${[1, 2]} | ${array_opt_i32} + ${[[], [2]]} | ${[null, 2]} | ${array_opt_i32} + ${structs[0].aqua} | ${structs[0].ts} | ${labeledProduct} + ${structs[1].aqua} | ${structs[1].ts} | ${labeledProduct} + ${structs[0].aqua} | ${structs[0].ts} | ${struct} + ${structs[1].aqua} | ${structs[1].ts} | ${struct} + ${nestedStructs[0].aqua} | ${nestedStructs[0].ts} | ${nestedLabeledProductType} + ${nestedStructs[1].aqua} | ${nestedStructs[1].ts} | ${nestedLabeledProductType} + `( // 'aqua: $aqua. ts: $ts. type: $type', async ({ aqua, ts, type }) => { diff --git a/packages/core/js-peer/src/__test__/unit/ephemeral.spec.ts b/packages/core/src/js-peer/__test__/unit/ephemeral.spec.ts.skip similarity index 100% rename from packages/core/js-peer/src/__test__/unit/ephemeral.spec.ts rename to packages/core/src/js-peer/__test__/unit/ephemeral.spec.ts.skip diff --git a/packages/core/js-peer/src/__test__/util.ts b/packages/core/src/js-peer/__test__/util.ts similarity index 74% rename from packages/core/js-peer/src/__test__/util.ts rename to packages/core/src/js-peer/__test__/util.ts index 98bdb96b..b352dda9 100644 --- a/packages/core/js-peer/src/__test__/util.ts +++ b/packages/core/src/js-peer/__test__/util.ts @@ -1,17 +1,18 @@ -import api from '@fluencelabs/aqua-api/aqua-api'; -import { InlinedWorkerLoader } from '@fluencelabs/marine.deps-loader.node'; +import * as api from '@fluencelabs/aqua-api/aqua-api.js'; import { promises as fs } from 'fs'; -import { FluencePeer, PeerConfig } from '../FluencePeer'; -import { Particle } from '../Particle'; -import { avmModuleLoader, controlModuleLoader, MakeServiceCall } from '../utils'; -import { ServiceDef } from '../compilerSupport/interface'; -import { callFunctionImpl } from '../compilerSupport/callFunction'; +import { FluencePeer, PeerConfig } from '../FluencePeer.js'; +import { Particle } from '../Particle.js'; +import { MakeServiceCall } from '../utils.js'; +import { avmModuleLoader, controlModuleLoader } from '../utilsForNode.js'; +import { ServiceDef } from '../compilerSupport/interface.js'; +import { callFunctionImpl } from '../compilerSupport/callFunction.js'; -import { marineLogFunction } from '../utils'; -import { MarineBackgroundRunner } from '@fluencelabs/marine.background-runner'; -import { MarineBasedAvmRunner } from '../avm'; -import { nodes } from './connection'; +import { marineLogFunction } from '../utils.js'; +import { MarineBackgroundRunner } from '../../marine/worker/index.js'; +import { MarineBasedAvmRunner } from '../avm.js'; +import { nodes } from './connection.js'; +import { WorkerLoaderFromFs } from '../../marine/deps-loader/node.js'; export const registerHandlersHelper = ( peer: FluencePeer, @@ -51,7 +52,7 @@ export const compileAqua = async (aquaFile: string): Promise => { }; export const mkTestPeer = () => { - const workerLoader = new InlinedWorkerLoader(); + const workerLoader = new WorkerLoaderFromFs('../../marine/worker-script'); const marine = new MarineBackgroundRunner(workerLoader, controlModuleLoader, marineLogFunction); const avm = new MarineBasedAvmRunner(marine, avmModuleLoader, undefined); diff --git a/packages/core/js-peer/src/_aqua/node-utils.ts b/packages/core/src/js-peer/_aqua/node-utils.ts similarity index 96% rename from packages/core/js-peer/src/_aqua/node-utils.ts rename to packages/core/src/js-peer/_aqua/node-utils.ts index 1bd05d84..dadc5140 100644 --- a/packages/core/js-peer/src/_aqua/node-utils.ts +++ b/packages/core/src/js-peer/_aqua/node-utils.ts @@ -6,9 +6,9 @@ * Aqua version: 0.7.7-362 * */ -import { CallParams } from '../commonTypes'; -import { registerServiceImpl } from '../compilerSupport/registerService'; -import { FluencePeer } from '../FluencePeer'; +import { CallParams } from '../commonTypes.js'; +import { registerServiceImpl } from '../compilerSupport/registerService.js'; +import { FluencePeer } from '../FluencePeer.js'; // Services diff --git a/packages/core/js-peer/src/_aqua/services.ts b/packages/core/src/js-peer/_aqua/services.ts similarity index 97% rename from packages/core/js-peer/src/_aqua/services.ts rename to packages/core/src/js-peer/_aqua/services.ts index 5fa7535d..7d6541e9 100644 --- a/packages/core/js-peer/src/_aqua/services.ts +++ b/packages/core/src/js-peer/_aqua/services.ts @@ -6,9 +6,9 @@ * Aqua version: 0.7.7-362 * */ -import { CallParams } from '../commonTypes'; -import { registerServiceImpl } from '../compilerSupport/registerService'; -import { FluencePeer } from '../FluencePeer'; +import { CallParams } from '../commonTypes.js'; +import { registerServiceImpl } from '../compilerSupport/registerService.js'; +import { FluencePeer } from '../FluencePeer.js'; // Services diff --git a/packages/core/js-peer/src/_aqua/single-module-srv.ts b/packages/core/src/js-peer/_aqua/single-module-srv.ts similarity index 97% rename from packages/core/js-peer/src/_aqua/single-module-srv.ts rename to packages/core/src/js-peer/_aqua/single-module-srv.ts index 0ca0bff2..639e5592 100644 --- a/packages/core/js-peer/src/_aqua/single-module-srv.ts +++ b/packages/core/src/js-peer/_aqua/single-module-srv.ts @@ -6,9 +6,9 @@ * Aqua version: 0.7.7-362 * */ -import { CallParams } from '../commonTypes'; -import { registerServiceImpl } from '../compilerSupport/registerService'; -import { FluencePeer } from '../FluencePeer'; +import { CallParams } from '../commonTypes.js'; +import { registerServiceImpl } from '../compilerSupport/registerService.js'; +import { FluencePeer } from '../FluencePeer.js'; // Services diff --git a/packages/core/js-peer/src/avm.ts b/packages/core/src/js-peer/avm.ts similarity index 89% rename from packages/core/js-peer/src/avm.ts rename to packages/core/src/js-peer/avm.ts index fd1e8a7c..1cc77282 100644 --- a/packages/core/js-peer/src/avm.ts +++ b/packages/core/src/js-peer/avm.ts @@ -1,7 +1,7 @@ import type { CallResultsArray, InterpreterResult, RunParameters } from '@fluencelabs/avm'; import { deserializeAvmResult, serializeAvmArgs } from '@fluencelabs/avm'; -import type { LogLevel } from '@fluencelabs/marine-js'; -import type { IMarine, IAvmRunner, IWasmLoader } from '@fluencelabs/interfaces'; +import type { LogLevel } from '@fluencelabs/marine-js/dist/types'; +import type { IMarine, IAvmRunner, IWasmLoader } from '../interfaces/index.js'; export class MarineBasedAvmRunner implements IAvmRunner { constructor(private marine: IMarine, private avmWasmLoader: IWasmLoader, private logLevel: LogLevel | undefined) {} diff --git a/packages/core/js-peer/src/builtins/Sig.ts b/packages/core/src/js-peer/builtins/Sig.ts similarity index 90% rename from packages/core/js-peer/src/builtins/Sig.ts rename to packages/core/src/js-peer/builtins/Sig.ts index dd2a99e8..9339edf7 100644 --- a/packages/core/js-peer/src/builtins/Sig.ts +++ b/packages/core/src/js-peer/builtins/Sig.ts @@ -1,7 +1,7 @@ -import { CallParams, PeerIdB58 } from '../commonTypes'; -import { KeyPair } from '@fluencelabs/keypair'; -import { SigDef } from '../_aqua/services'; -import { allowOnlyParticleOriginatedAt, allowServiceFn, and, or, SecurityGuard } from './securityGuard'; +import { CallParams, PeerIdB58 } from '../commonTypes.js'; +import { KeyPair } from '../../keypair/index.js'; +import { SigDef } from '../_aqua/services.js'; +import { allowOnlyParticleOriginatedAt, allowServiceFn, and, or, SecurityGuard } from './securityGuard.js'; export const defaultSigGuard = (peerId: PeerIdB58) => { return and<'data'>( diff --git a/packages/core/js-peer/src/builtins/SingleModuleSrv.ts b/packages/core/src/js-peer/builtins/SingleModuleSrv.ts similarity index 88% rename from packages/core/js-peer/src/builtins/SingleModuleSrv.ts rename to packages/core/src/js-peer/builtins/SingleModuleSrv.ts index 76a1aeb7..db27a78d 100644 --- a/packages/core/js-peer/src/builtins/SingleModuleSrv.ts +++ b/packages/core/src/js-peer/builtins/SingleModuleSrv.ts @@ -1,12 +1,13 @@ import { v4 as uuidv4 } from 'uuid'; -import { SrvDef } from '../_aqua/single-module-srv'; -import { NodeUtilsDef } from '../_aqua/node-utils'; -import { FluencePeer } from '../FluencePeer'; -import { CallParams } from '../commonTypes'; -import { allowOnlyParticleOriginatedAt, SecurityGuard } from './securityGuard'; +import { SrvDef } from '../_aqua/single-module-srv.js'; +import { NodeUtilsDef } from '../_aqua/node-utils.js'; +import { FluencePeer } from '../FluencePeer.js'; +import { CallParams } from '../commonTypes.js'; +import { Buffer } from 'buffer'; +import { allowOnlyParticleOriginatedAt, SecurityGuard } from './securityGuard.js'; -export const defaultGuard = (peer: FluencePeer) => { - return allowOnlyParticleOriginatedAt(peer.getStatus().peerId!); +export const defaultGuard = (peer: () => FluencePeer) => { + return allowOnlyParticleOriginatedAt(peer().getStatus().peerId!); }; export class Srv implements SrvDef { @@ -14,7 +15,7 @@ export class Srv implements SrvDef { constructor(private peer: FluencePeer) {} - securityGuard_create: SecurityGuard<'wasm_b64_content'> = defaultGuard(this.peer); + securityGuard_create: SecurityGuard<'wasm_b64_content'> = defaultGuard(() => this.peer); async create(wasm_b64_content: string, callParams: CallParams<'wasm_b64_content'>) { if (!this.securityGuard_create(callParams)) { @@ -48,7 +49,7 @@ export class Srv implements SrvDef { } } - securityGuard_remove: SecurityGuard<'service_id'> = defaultGuard(this.peer); + securityGuard_remove: SecurityGuard<'service_id'> = defaultGuard(() => this.peer); remove(service_id: string, callParams: CallParams<'service_id'>) { if (!this.securityGuard_remove(callParams)) { @@ -83,7 +84,7 @@ export class Srv implements SrvDef { export class NodeUtils implements NodeUtilsDef { constructor(private peer: FluencePeer) {} - securityGuard_readFile: SecurityGuard<'path'> = defaultGuard(this.peer); + securityGuard_readFile: SecurityGuard<'path'> = defaultGuard(() => this.peer); async read_file(path: string, callParams: CallParams<'path'>) { // TODO: split node-only and universal services into different client packages diff --git a/packages/core/js-peer/src/builtins/common.ts b/packages/core/src/js-peer/builtins/common.ts similarity index 98% rename from packages/core/js-peer/src/builtins/common.ts rename to packages/core/src/js-peer/builtins/common.ts index be6cff4d..78d229a4 100644 --- a/packages/core/js-peer/src/builtins/common.ts +++ b/packages/core/src/js-peer/builtins/common.ts @@ -14,14 +14,18 @@ * limitations under the License. */ -import { encode, decode } from 'bs58'; +import * as bs58 from 'bs58'; + import { sha256 } from 'multiformats/hashes/sha2'; import { CallServiceResult } from '@fluencelabs/avm'; -import { CallServiceData, GenericCallServiceHandler, ResultCodes } from '../commonTypes'; -import { jsonify } from '../utils'; +import { GenericCallServiceHandler, ResultCodes } from '../commonTypes.js'; +import { jsonify } from '../utils.js'; import { Buffer } from 'buffer'; +//@ts-ignore +const { encode, decode } = bs58.default; + const success = (result: any): CallServiceResult => { return { result: result, diff --git a/packages/core/js-peer/src/builtins/securityGuard.ts b/packages/core/src/js-peer/builtins/securityGuard.ts similarity index 97% rename from packages/core/js-peer/src/builtins/securityGuard.ts rename to packages/core/src/js-peer/builtins/securityGuard.ts index a8d7c772..c079da02 100644 --- a/packages/core/js-peer/src/builtins/securityGuard.ts +++ b/packages/core/src/js-peer/builtins/securityGuard.ts @@ -1,5 +1,5 @@ import { SecurityTetraplet } from '@fluencelabs/avm'; -import { CallParams, PeerIdB58 } from '../commonTypes'; +import { CallParams, PeerIdB58 } from '../commonTypes.js'; type ArgName = string | null; diff --git a/packages/core/js-peer/src/commonTypes.ts b/packages/core/src/js-peer/commonTypes.ts similarity index 100% rename from packages/core/js-peer/src/commonTypes.ts rename to packages/core/src/js-peer/commonTypes.ts diff --git a/packages/core/js-peer/src/compilerSupport/callFunction.ts b/packages/core/src/js-peer/compilerSupport/callFunction.ts similarity index 97% rename from packages/core/js-peer/src/compilerSupport/callFunction.ts rename to packages/core/src/js-peer/compilerSupport/callFunction.ts index e8d5739d..ba22e64c 100644 --- a/packages/core/js-peer/src/compilerSupport/callFunction.ts +++ b/packages/core/src/js-peer/compilerSupport/callFunction.ts @@ -1,5 +1,5 @@ -import { ArrowWithoutCallbacks, FnConfig, FunctionCallDef, NonArrowType } from './interface'; -import { FluencePeer } from '../FluencePeer'; +import { ArrowWithoutCallbacks, FnConfig, FunctionCallDef, NonArrowType } from './interface.js'; +import { FluencePeer } from '../FluencePeer.js'; import { injectRelayService, @@ -9,7 +9,7 @@ import { ServiceDescription, userHandlerService, injectValueService, -} from './services'; +} from './services.js'; /** * Convenience function which does all the internal work of creating particles diff --git a/packages/core/js-peer/src/compilerSupport/conversions.ts b/packages/core/src/js-peer/compilerSupport/conversions.ts similarity index 97% rename from packages/core/js-peer/src/compilerSupport/conversions.ts rename to packages/core/src/js-peer/compilerSupport/conversions.ts index 39e46e79..73fd5200 100644 --- a/packages/core/js-peer/src/compilerSupport/conversions.ts +++ b/packages/core/src/js-peer/compilerSupport/conversions.ts @@ -1,7 +1,7 @@ -import { jsonify } from '../utils'; +import { jsonify } from '../utils.js'; import { match } from 'ts-pattern'; -import { ArrowType, ArrowWithoutCallbacks, NonArrowType } from './interface'; -import { CallServiceData } from '../commonTypes'; +import { ArrowType, ArrowWithoutCallbacks, NonArrowType } from './interface.js'; +import { CallServiceData } from '../commonTypes.js'; /** * Convert value from its representation in aqua language to representation in typescript @@ -21,6 +21,7 @@ export const aqua2ts = (value: any, type: NonArrowType): any => { return aqua2ts(value[0], opt.type); } }) + // @ts-ignore .with({ tag: 'scalar' }, { tag: 'bottomType' }, { tag: 'topType' }, () => { return value; }) diff --git a/packages/core/js-peer/src/compilerSupport/interface.ts b/packages/core/src/js-peer/compilerSupport/interface.ts similarity index 100% rename from packages/core/js-peer/src/compilerSupport/interface.ts rename to packages/core/src/js-peer/compilerSupport/interface.ts diff --git a/packages/core/js-peer/src/compilerSupport/registerService.ts b/packages/core/src/js-peer/compilerSupport/registerService.ts similarity index 93% rename from packages/core/js-peer/src/compilerSupport/registerService.ts rename to packages/core/src/js-peer/compilerSupport/registerService.ts index 38990e16..6fce61eb 100644 --- a/packages/core/js-peer/src/compilerSupport/registerService.ts +++ b/packages/core/src/js-peer/compilerSupport/registerService.ts @@ -1,6 +1,6 @@ -import type { FluencePeer } from '../FluencePeer'; -import { ServiceDef } from './interface'; -import { registerGlobalService, userHandlerService } from './services'; +import type { FluencePeer } from '../FluencePeer.js'; +import { ServiceDef } from './interface.js'; +import { registerGlobalService, userHandlerService } from './services.js'; export const registerServiceImpl = ( peer: FluencePeer, diff --git a/packages/core/js-peer/src/compilerSupport/services.ts b/packages/core/src/js-peer/compilerSupport/services.ts similarity index 96% rename from packages/core/js-peer/src/compilerSupport/services.ts rename to packages/core/src/js-peer/compilerSupport/services.ts index 19f8ef42..6131f216 100644 --- a/packages/core/js-peer/src/compilerSupport/services.ts +++ b/packages/core/src/js-peer/compilerSupport/services.ts @@ -1,12 +1,12 @@ import { SecurityTetraplet } from '@fluencelabs/avm'; import { match } from 'ts-pattern'; -import { Particle } from '../Particle'; -import { CallParams, CallServiceData, GenericCallServiceHandler, ResultCodes } from '../commonTypes'; -import { FluencePeer } from '../FluencePeer'; +import { Particle } from '../Particle.js'; +import { CallParams, CallServiceData, GenericCallServiceHandler, ResultCodes } from '../commonTypes.js'; +import { FluencePeer } from '../FluencePeer.js'; -import { aquaArgs2Ts, responseServiceValue2ts, returnType2Aqua, ts2aqua } from './conversions'; -import { ArrowWithoutCallbacks, FunctionCallConstants, FunctionCallDef, NonArrowType } from './interface'; +import { aquaArgs2Ts, responseServiceValue2ts, returnType2Aqua, ts2aqua } from './conversions.js'; +import { ArrowWithoutCallbacks, FunctionCallConstants, FunctionCallDef, NonArrowType } from './interface.js'; export interface ServiceDescription { serviceId: string; diff --git a/packages/core/js-peer/src/ephemeral.ts b/packages/core/src/js-peer/ephemeral.ts similarity index 94% rename from packages/core/js-peer/src/ephemeral.ts rename to packages/core/src/js-peer/ephemeral.ts index e472b9c1..207bfe68 100644 --- a/packages/core/js-peer/src/ephemeral.ts +++ b/packages/core/src/js-peer/ephemeral.ts @@ -1,15 +1,15 @@ -import { FluenceConnection, ParticleHandler } from '@fluencelabs/interfaces'; -import { InlinedWorkerLoader } from '@fluencelabs/marine.deps-loader.node'; - -import { keyPairFromBase64Sk } from '@fluencelabs/keypair'; - -import { PeerIdB58 } from './commonTypes'; -import { FluencePeer } from './FluencePeer'; -import log from 'loglevel'; -import { MarineBackgroundRunner } from '@fluencelabs/marine.background-runner'; -import { avmModuleLoader, controlModuleLoader, marineLogFunction } from './utils'; +import { FluenceConnection, ParticleHandler } from '../interfaces/index.js'; +import { keyPairFromBase64Sk } from '../keypair/index.js'; +import { PeerIdB58 } from './commonTypes.js'; +import { FluencePeer } from './FluencePeer.js'; +import { MarineBackgroundRunner } from '../marine/worker/index.js'; +import { avmModuleLoader, controlModuleLoader } from './utilsForNode'; +import { marineLogFunction } from './utils'; import { MarineBasedAvmRunner } from './avm'; +import log from 'loglevel'; +import { WorkerLoaderFromFs } from '../marine/deps-loader/node.js'; + interface EphemeralConfig { peers: Array<{ peerId: PeerIdB58; @@ -126,7 +126,7 @@ export class EphemeralNetwork { log.debug('Starting ephemeral network up...'); const allPeerIds = this.config.peers.map((x) => x.peerId); // shared worker for all the peers - const workerLoader = new InlinedWorkerLoader(); + const workerLoader = new WorkerLoaderFromFs('../../marine/worker-script'); const promises = this.config.peers.map(async (x) => { const logLevel = undefined; diff --git a/packages/core/js-peer/src/utils.ts b/packages/core/src/js-peer/utils.ts similarity index 92% rename from packages/core/js-peer/src/utils.ts rename to packages/core/src/js-peer/utils.ts index 78494648..4d412bdc 100644 --- a/packages/core/js-peer/src/utils.ts +++ b/packages/core/src/js-peer/utils.ts @@ -15,14 +15,13 @@ */ import log from 'loglevel'; -import platform from 'platform'; +import * as platform from 'platform'; import { Buffer } from 'buffer'; -import { CallServiceData, CallServiceResult, CallServiceResultType, ResultCodes } from './commonTypes'; -import { FluencePeer } from './FluencePeer'; -import { ParticleExecutionStage } from './Particle'; -import { LogFunction } from '@fluencelabs/marine-js'; -import { WasmNpmLoader } from '@fluencelabs/marine.deps-loader.node'; +import { CallServiceData, CallServiceResult, CallServiceResultType, ResultCodes } from './commonTypes.js'; +import { FluencePeer } from './FluencePeer.js'; +import { ParticleExecutionStage } from './Particle.js'; +import { LogFunction } from '@fluencelabs/marine-js/dist/types'; export const MakeServiceCall = (fn: (args: any[]) => CallServiceResultType) => @@ -202,6 +201,3 @@ export const marineLogFunction: LogFunction = (message) => { break; } }; - -export const controlModuleLoader = new WasmNpmLoader('@fluencelabs/marine-js', 'marine-js.wasm'); -export const avmModuleLoader = new WasmNpmLoader('@fluencelabs/avm', 'avm.wasm'); diff --git a/packages/core/src/js-peer/utilsForNode.ts b/packages/core/src/js-peer/utilsForNode.ts new file mode 100644 index 00000000..22b3018f --- /dev/null +++ b/packages/core/src/js-peer/utilsForNode.ts @@ -0,0 +1,5 @@ +import { WorkerLoaderFromFs, WasmLoaderFromFs, WasmLoaderFromNpm } from '../marine/deps-loader/node.js'; + +// TODO!: after moving to ESM loaders stopped working. Should be fixed in scope of DXJ-194 +export const controlModuleLoader = new WasmLoaderFromNpm('@fluencelabs/marine-js', 'marine-js.wasm'); +export const avmModuleLoader = new WasmLoaderFromNpm('@fluencelabs/avm', 'avm.wasm'); diff --git a/packages/core/src/keypair/__test__/KeyPair.spec.ts b/packages/core/src/keypair/__test__/KeyPair.spec.ts new file mode 100644 index 00000000..43b27f6a --- /dev/null +++ b/packages/core/src/keypair/__test__/KeyPair.spec.ts @@ -0,0 +1,95 @@ +import { toUint8Array } from 'js-base64'; +import * as bs58 from 'bs58'; +import { KeyPair } from '../index.js'; + +// @ts-ignore +const { decode } = bs58.default; + +const key = '+cmeYlZKj+MfSa9dpHV+BmLPm6wq4inGlsPlQ1GvtPk='; +const keyBytes = toUint8Array(key); + +const testData = Uint8Array.from([1, 2, 3, 4, 5, 6, 7, 9, 10]); + +const testDataSig = Uint8Array.from([ + 224, 104, 245, 206, 140, 248, 27, 72, 68, 133, 111, 10, 164, 197, 242, 132, 107, 77, 224, 67, 99, 106, 76, 29, 144, + 121, 122, 169, 36, 173, 58, 80, 170, 102, 137, 253, 157, 247, 168, 87, 162, 223, 188, 214, 203, 220, 52, 246, 29, + 86, 77, 71, 224, 248, 16, 213, 254, 75, 78, 239, 243, 222, 241, 15, +]); + +// signature produced by KeyPair created from some random KeyPair + +describe('KeyPair tests', () => { + it('generate keypair from seed', async function () { + // arrange + const random = await KeyPair.randomEd25519(); + const privateKey = random.toEd25519PrivateKey(); + + // act + const keyPair = await KeyPair.fromEd25519SK(privateKey); + const privateKey2 = keyPair.toEd25519PrivateKey(); + + // assert + expect(privateKey).toStrictEqual(privateKey2); + }); + + it('create keypair from ed25519 private key', async function () { + // arrange + // TODO: remove decoder which relies on "z" + const rustSK = 'jDaxLJzYtzgwTMrELJCAqavtmx85ktQNfB2rLcK7MhH'; + const sk = decode(rustSK); + + // act + const keyPair = await KeyPair.fromEd25519SK(sk); + + // assert + const expectedPeerId = '12D3KooWH1W3VznVZ87JH4FwABK4mkntcspTVWJDta6c2xg9Pzbp'; + expect(keyPair.getPeerId()).toStrictEqual(expectedPeerId); + }); + + it('create keypair from a seed phrase', async function () { + // arrange + const seedArray = new Uint8Array(32).fill(1); + + // act + const keyPair = await KeyPair.fromEd25519SK(seedArray); + + // assert + const expectedPeerId = '12D3KooWK99VoVxNE7XzyBwXEzW7xhK7Gpv85r9F3V3fyKSUKPH5'; + expect(keyPair.getPeerId()).toStrictEqual(expectedPeerId); + }); + + it('sign', async function () { + // arrange + const keyPair = await KeyPair.fromEd25519SK(keyBytes); + + // act + const res = await keyPair.signBytes(testData); + + // assert + expect(res).toStrictEqual(testDataSig); + }); + + it('verify', async function () { + // arrange + const keyPair = await KeyPair.fromEd25519SK(keyBytes); + + // act + const res = await keyPair.verify(testData, testDataSig); + + // assert + expect(res).toBe(true); + }); + + it('sign-verify', async function () { + // arrange + const keyPair = await KeyPair.fromEd25519SK(keyBytes); + + // act + const data = new Uint8Array(32).fill(1); + const sig = await keyPair.signBytes(data); + const res = await keyPair.verify(data, sig); + + // assert + expect(res).toBe(true); + }); +}); diff --git a/packages/core/keypair/src/index.ts b/packages/core/src/keypair/index.ts similarity index 60% rename from packages/core/keypair/src/index.ts rename to packages/core/src/keypair/index.ts index 0be07d51..57c87f4d 100644 --- a/packages/core/keypair/src/index.ts +++ b/packages/core/src/keypair/index.ts @@ -14,30 +14,31 @@ * limitations under the License. */ -import * as PeerId from 'peer-id'; -import { keys } from 'libp2p-crypto'; +import type { PeerId } from '@libp2p/interface-peer-id'; +import { generateKeyPairFromSeed, generateKeyPair } from '@libp2p/crypto/keys'; +import { createFromPrivKey } from '@libp2p/peer-id-factory'; +import type { PrivateKey } from '@libp2p/interface-keys'; import { toUint8Array } from 'js-base64'; export class KeyPair { /** * Key pair in libp2p format. Used for backward compatibility with the current FluencePeer implementation */ - public Libp2pPeerId: PeerId; - - constructor(libp2pPeerId: PeerId) { - this.Libp2pPeerId = libp2pPeerId; + getLibp2pPeerId() { + return this.libp2pPeerId; } + constructor(private key: PrivateKey, private libp2pPeerId: PeerId) {} + /** * Generates new KeyPair from ed25519 private key represented as a 32 byte array - * @param key - Any sequence of 32 bytes + * @param seed - Any sequence of 32 bytes * @returns - Promise with the created KeyPair */ - static async fromEd25519SK(arr: Uint8Array): Promise { - // generateKeyPairFromSeed takes seed and copies it to private key as is - const privateKey = await keys.generateKeyPairFromSeed('Ed25519', arr, 256); - const lib2p2Pid = await PeerId.createFromPrivKey(privateKey.bytes); - return new KeyPair(lib2p2Pid); + static async fromEd25519SK(seed: Uint8Array): Promise { + const key = await generateKeyPairFromSeed('Ed25519', seed, 256); + const lib2p2Pid = await createFromPrivKey(key); + return new KeyPair(key, lib2p2Pid); } /** @@ -45,27 +46,28 @@ export class KeyPair { * @returns - Promise with the created KeyPair */ static async randomEd25519(): Promise { - const lib2p2Pid = await PeerId.create({ keyType: 'Ed25519' }); - return new KeyPair(lib2p2Pid); + const key = await generateKeyPair('Ed25519'); + const lib2p2Pid = await createFromPrivKey(key); + return new KeyPair(key, lib2p2Pid); } getPeerId(): string { - return this.Libp2pPeerId.toB58String(); + return this.libp2pPeerId.toString(); } /** * @returns 32 byte private key */ toEd25519PrivateKey(): Uint8Array { - return this.Libp2pPeerId.privKey.marshal().subarray(0, 32); + return this.key.marshal().subarray(0, 32); } signBytes(data: Uint8Array): Promise { - return this.Libp2pPeerId.privKey.sign(data); + return this.key.sign(data); } verify(data: Uint8Array, signature: Uint8Array): Promise { - return this.Libp2pPeerId.privKey.public.verify(data, signature); + return this.key.public.verify(data, signature); } } diff --git a/packages/core/src/marine/deps-loader/common.ts b/packages/core/src/marine/deps-loader/common.ts new file mode 100644 index 00000000..4fa40b18 --- /dev/null +++ b/packages/core/src/marine/deps-loader/common.ts @@ -0,0 +1,23 @@ +import { BlobWorker } from 'threads'; +import { fromBase64, toUint8Array } from 'js-base64'; +import type { WorkerImplementation } from 'threads/dist/types/master'; +import { LazyLoader } from '../../interfaces/index.js'; +import { Buffer } from 'buffer'; + +export class InlinedWorkerLoader extends LazyLoader { + constructor(b64script: string) { + super(() => { + const script = fromBase64(b64script); + return BlobWorker.fromText(script); + }); + } +} + +export class InlinedWasmLoader extends LazyLoader { + constructor(b64wasm: string) { + super(() => { + const wasm = toUint8Array(b64wasm); + return Buffer.from(wasm); + }); + } +} diff --git a/packages/marine/deps-loader.node/src/index.ts b/packages/core/src/marine/deps-loader/node.ts similarity index 69% rename from packages/marine/deps-loader.node/src/index.ts rename to packages/core/src/marine/deps-loader/node.ts index c7cfdc0e..b71e9057 100644 --- a/packages/marine/deps-loader.node/src/index.ts +++ b/packages/core/src/marine/deps-loader/node.ts @@ -1,12 +1,13 @@ -import { LazyLoader } from '@fluencelabs/interfaces'; -import { BlobWorker } from 'threads'; +import { createRequire } from 'module'; +import { LazyLoader } from '../../interfaces/index.js'; + import type { WorkerImplementation } from 'threads/dist/types/master'; +import { Worker } from 'threads'; import { Buffer } from 'buffer'; -import fs from 'fs'; -import path from 'path'; -import { fromBase64 } from 'js-base64'; -// @ts-ignore -import b64script from './marine-js.b64.node'; +import * as fs from 'fs'; +import * as path from 'path'; + +const require = createRequire(import.meta.url); const bufferToSharedArrayBuffer = (buffer: Buffer): SharedArrayBuffer => { const sab = new SharedArrayBuffer(buffer.length); @@ -38,27 +39,25 @@ export const loadWasmFromFileSystem = async (filePath: string): Promise { +export class WasmLoaderFromFs extends LazyLoader { constructor(filePath: string) { super(() => loadWasmFromFileSystem(filePath)); } } -export class WasmNpmLoader extends LazyLoader { +export class WasmLoaderFromNpm extends LazyLoader { constructor(pkg: string, file: string) { super(() => loadWasmFromNpmPackage({ package: pkg, file: file })); } } -export class FsWorkerLoader extends LazyLoader { +export class WorkerLoaderFromFs extends LazyLoader { constructor(scriptPath: string) { - super(() => { - return Promise.resolve(new Worker(scriptPath)); - }); + super(() => new Worker(scriptPath)); } } -export class NpmWorkerLoader extends LazyLoader { +export class WorkerLoaderFromNpm extends LazyLoader { constructor(pkg: string, file: string) { super(() => { const packagePath = require.resolve(pkg); @@ -67,12 +66,3 @@ export class NpmWorkerLoader extends LazyLoader { }); } } - -export class InlinedWorkerLoader extends LazyLoader { - constructor() { - super(() => { - const script = fromBase64(b64script); - return Promise.resolve(BlobWorker.fromText(script)); - }); - } -} diff --git a/packages/marine/deps-loader.web/src/index.ts b/packages/core/src/marine/deps-loader/web.ts similarity index 73% rename from packages/marine/deps-loader.web/src/index.ts rename to packages/core/src/marine/deps-loader/web.ts index 46bd1249..6beb6162 100644 --- a/packages/marine/deps-loader.web/src/index.ts +++ b/packages/core/src/marine/deps-loader/web.ts @@ -1,10 +1,5 @@ -import { BlobWorker } from 'threads'; import { Buffer } from 'buffer'; -import { LazyLoader } from '@fluencelabs/interfaces'; -import type { WorkerImplementation } from 'threads/dist/types/master'; -import { fromBase64 } from 'js-base64'; -// @ts-ignore -import b64script from './marine-js.b64.web'; +import { LazyLoader } from '../../interfaces/index.js'; const bufferToSharedArrayBuffer = (buffer: Buffer): SharedArrayBuffer => { const sab = new SharedArrayBuffer(buffer.length); @@ -38,17 +33,8 @@ export const loadWasmFromServer = async (filePath: string): Promise { +export class WebLoaderFromUrl extends LazyLoader { constructor(filePath: string) { super(() => loadWasmFromServer(filePath)); } } - -export class InlinedWorkerLoader extends LazyLoader { - constructor() { - super(() => { - const script = fromBase64(b64script); - return Promise.resolve(BlobWorker.fromText(script)); - }); - } -} diff --git a/packages/marine/worker-script/src/index.ts b/packages/core/src/marine/worker-script/index.ts similarity index 89% rename from packages/marine/worker-script/src/index.ts rename to packages/core/src/marine/worker-script/index.ts index 0935ec72..43226595 100644 --- a/packages/marine/worker-script/src/index.ts +++ b/packages/core/src/marine/worker-script/index.ts @@ -14,10 +14,11 @@ * limitations under the License. */ -import { MarineService } from '@fluencelabs/marine-js'; -import type { Env, MarineServiceConfig, JSONArray, JSONObject, LogMessage } from '@fluencelabs/marine-js'; +import { MarineService } from '@fluencelabs/marine-js/dist/MarineService'; +import type { Env, MarineServiceConfig } from '@fluencelabs/marine-js/dist/config'; +import type { JSONArray, JSONObject, LogMessage } from '@fluencelabs/marine-js/dist/types'; import { Observable, Subject } from 'threads/observable'; -import { expose } from 'threads'; +import { expose } from 'threads/worker'; let marineServices = new Map(); let controlModule: WebAssembly.Module | undefined; diff --git a/packages/marine/background-runner/src/index.ts b/packages/core/src/marine/worker/index.ts similarity index 87% rename from packages/marine/background-runner/src/index.ts rename to packages/core/src/marine/worker/index.ts index 373881cd..f36d4c98 100644 --- a/packages/marine/background-runner/src/index.ts +++ b/packages/core/src/marine/worker/index.ts @@ -14,9 +14,10 @@ * limitations under the License. */ -import { JSONArray, JSONObject, LogFunction, logLevelToEnv, LogLevel } from '@fluencelabs/marine-js'; -import type { IMarine, IWorkerLoader, IWasmLoader } from '@fluencelabs/interfaces'; -import type { MarineBackgroundInterface } from '@fluencelabs/marine.worker-script'; +import type { JSONArray, JSONObject, LogLevel } from '@fluencelabs/marine-js/dist/types'; +import { LogFunction, logLevelToEnv } from '@fluencelabs/marine-js/dist/types'; +import type { IMarine, IWorkerLoader, IWasmLoader } from '../../interfaces/index.js'; +import type { MarineBackgroundInterface } from '../worker-script/index.js'; import { spawn, Thread } from 'threads'; import type { ModuleThread } from 'threads'; diff --git a/packages/core/tsconfig.json b/packages/core/tsconfig.json new file mode 100644 index 00000000..515a1819 --- /dev/null +++ b/packages/core/tsconfig.json @@ -0,0 +1,9 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "./dist", + "moduleResolution": "node" + }, + "include": ["src/**/*"], + "exclude": ["node_modules", "dist"] +} diff --git a/packages/marine/background-runner/.gitignore b/packages/marine/background-runner/.gitignore deleted file mode 100644 index 1a59a95f..00000000 --- a/packages/marine/background-runner/.gitignore +++ /dev/null @@ -1,21 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -lerna-debug.log* - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release -bundle/ - -dist -esm -types - -# Dependency directories -node_modules/ -jspm_packages/ - -.idea diff --git a/packages/marine/background-runner/.npmignore b/packages/marine/background-runner/.npmignore deleted file mode 100644 index 1354879a..00000000 --- a/packages/marine/background-runner/.npmignore +++ /dev/null @@ -1,12 +0,0 @@ -.idea -.gitignore -node_modules -types - -src/ - -tsconfig.json -webpack.config.js - -bundle -pkg \ No newline at end of file diff --git a/packages/marine/background-runner/.prettierrc.js b/packages/marine/background-runner/.prettierrc.js deleted file mode 100644 index 4e5ea887..00000000 --- a/packages/marine/background-runner/.prettierrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - semi: true, - trailingComma: "all", - singleQuote: true, - printWidth: 120, - tabWidth: 4, - useTabs: false -}; diff --git a/packages/marine/background-runner/CONTRIBUTING.md b/packages/marine/background-runner/CONTRIBUTING.md deleted file mode 100644 index 0e3b264d..00000000 --- a/packages/marine/background-runner/CONTRIBUTING.md +++ /dev/null @@ -1,13 +0,0 @@ -## Contribute Code - -You are welcome to contribute to Fluence. - -Things you need to know: - -1. You need to **agree to the Contributors License Agreement**. This is a common practice in all major Open Source projects. At the current moment we are unable to accept contributions made on behalf of a company. Only individual contributions will be accepted. -2. **Not all proposed contributions can be accepted**. Some features may e.g. just fit a third-party add-on better. The contribution must fit the overall direction of Fluence and really improve it. The more effort you invest, the better you should clarify in advance whether the contribution fits: the best way would be to just open an issue to discuss the contribution you plan to make. - -### Contributor License Agreement - -When you contribute, you have to be aware that your contribution is covered by **Apache License 2.0**, but might relicensed under few other software licenses mentioned in the **Contributor License Agreement**. -In particular you need to agree to the [Contributor License Agreement](https://gist.github.com/fluencelabs-org/3f4cbb3cc14c1c0fb9ad99d8f7316ed7). If you agree to its content, you simply have to click on the link posted by the CLA assistant as a comment to the pull request. Click it to check the CLA, then accept it on the following screen if you agree to it. CLA assistant will save this decision for upcoming contributions and will notify you if there is any change to the CLA in the meantime. diff --git a/packages/marine/background-runner/README.md b/packages/marine/background-runner/README.md deleted file mode 100644 index e5b162e4..00000000 --- a/packages/marine/background-runner/README.md +++ /dev/null @@ -1,11 +0,0 @@ -# MarineJS background runner - -This package is a part of FluenceJS, the official implementation of the Fluence Peer in typescript. See the [FluenceJS repo](https://github.com/fluencelabs/fluence-js) for more info - -## Contributing - -While the project is still in the early stages of development, you are welcome to track progress and contribute. As the project is undergoing rapid changes, interested contributors should contact the team before embarking on larger pieces of work. All contributors should consult with and agree to our [basic contributing rules](CONTRIBUTING.md). - -## License - -[Apache 2.0](LICENSE) diff --git a/packages/marine/background-runner/package.json b/packages/marine/background-runner/package.json deleted file mode 100644 index a5477a0f..00000000 --- a/packages/marine/background-runner/package.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "@fluencelabs/marine.background-runner", - "version": "0.1.0", - "description": "MarineJS background runner", - "main": "./dist/index.js", - "typings": "./dist/index.d.ts", - "engines": { - "node": ">=10", - "pnpm": ">=3" - }, - "scripts": { - "build": "tsc" - }, - "repository": "https://github.com/fluencelabs/fluence-js", - "author": "Fluence Labs", - "license": "Apache-2.0", - "dependencies": { - "threads": "^1.7.0" - }, - "devDependencies": { - "@fluencelabs/marine.worker-script": "workspace:0.1.0", - "@fluencelabs/interfaces": "workspace:0.2.0", - "@fluencelabs/marine-js": "0.3.38", - "typescript": "^4.6.4", - "@types/node": "16.11.59" - } -} diff --git a/packages/marine/background-runner/tsconfig.json b/packages/marine/background-runner/tsconfig.json deleted file mode 100644 index ef65b4cc..00000000 --- a/packages/marine/background-runner/tsconfig.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "compilerOptions": { - "outDir": "./dist/", - "lib": ["ES2015", "dom"], - "target": "ES5", - "sourceMap": true, - "declaration": true, - "module": "commonjs" - }, - "exclude": ["node_modules", "dist"], - "include": ["src/**/*"] -} diff --git a/packages/marine/deps-loader.node/.gitignore b/packages/marine/deps-loader.node/.gitignore deleted file mode 100644 index 1a59a95f..00000000 --- a/packages/marine/deps-loader.node/.gitignore +++ /dev/null @@ -1,21 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -lerna-debug.log* - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release -bundle/ - -dist -esm -types - -# Dependency directories -node_modules/ -jspm_packages/ - -.idea diff --git a/packages/marine/deps-loader.node/.npmignore b/packages/marine/deps-loader.node/.npmignore deleted file mode 100644 index 1354879a..00000000 --- a/packages/marine/deps-loader.node/.npmignore +++ /dev/null @@ -1,12 +0,0 @@ -.idea -.gitignore -node_modules -types - -src/ - -tsconfig.json -webpack.config.js - -bundle -pkg \ No newline at end of file diff --git a/packages/marine/deps-loader.node/.prettierrc.js b/packages/marine/deps-loader.node/.prettierrc.js deleted file mode 100644 index 4e5ea887..00000000 --- a/packages/marine/deps-loader.node/.prettierrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - semi: true, - trailingComma: "all", - singleQuote: true, - printWidth: 120, - tabWidth: 4, - useTabs: false -}; diff --git a/packages/marine/deps-loader.node/CONTRIBUTING.md b/packages/marine/deps-loader.node/CONTRIBUTING.md deleted file mode 100644 index 0e3b264d..00000000 --- a/packages/marine/deps-loader.node/CONTRIBUTING.md +++ /dev/null @@ -1,13 +0,0 @@ -## Contribute Code - -You are welcome to contribute to Fluence. - -Things you need to know: - -1. You need to **agree to the Contributors License Agreement**. This is a common practice in all major Open Source projects. At the current moment we are unable to accept contributions made on behalf of a company. Only individual contributions will be accepted. -2. **Not all proposed contributions can be accepted**. Some features may e.g. just fit a third-party add-on better. The contribution must fit the overall direction of Fluence and really improve it. The more effort you invest, the better you should clarify in advance whether the contribution fits: the best way would be to just open an issue to discuss the contribution you plan to make. - -### Contributor License Agreement - -When you contribute, you have to be aware that your contribution is covered by **Apache License 2.0**, but might relicensed under few other software licenses mentioned in the **Contributor License Agreement**. -In particular you need to agree to the [Contributor License Agreement](https://gist.github.com/fluencelabs-org/3f4cbb3cc14c1c0fb9ad99d8f7316ed7). If you agree to its content, you simply have to click on the link posted by the CLA assistant as a comment to the pull request. Click it to check the CLA, then accept it on the following screen if you agree to it. CLA assistant will save this decision for upcoming contributions and will notify you if there is any change to the CLA in the meantime. diff --git a/packages/marine/deps-loader.node/README.md b/packages/marine/deps-loader.node/README.md deleted file mode 100644 index af675dba..00000000 --- a/packages/marine/deps-loader.node/README.md +++ /dev/null @@ -1,11 +0,0 @@ -# MarineJS deps loader for nodejs - -This package is a part of FluenceJS, the official implementation of the Fluence Peer in typescript. See the [FluenceJS repo](https://github.com/fluencelabs/fluence-js) for more info - -## Contributing - -While the project is still in the early stages of development, you are welcome to track progress and contribute. As the project is undergoing rapid changes, interested contributors should contact the team before embarking on larger pieces of work. All contributors should consult with and agree to our [basic contributing rules](CONTRIBUTING.md). - -## License - -[Apache 2.0](LICENSE) diff --git a/packages/marine/deps-loader.node/package.json b/packages/marine/deps-loader.node/package.json deleted file mode 100644 index aa011b4c..00000000 --- a/packages/marine/deps-loader.node/package.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "@fluencelabs/marine.deps-loader.node", - "version": "0.1.0", - "description": "MarineJS deps loader", - "main": "./dist/index.js", - "typings": "./dist/index.d.ts", - "engines": { - "node": ">=10", - "pnpm": ">=3" - }, - "scripts": { - "build": "tsc && ./postbuild.sh" - }, - "repository": "https://github.com/fluencelabs/fluence-js", - "author": "Fluence Labs", - "license": "Apache-2.0", - "dependencies": { - "@fluencelabs/interfaces": "workspace:0.2.0", - "js-base64": "3.7.3", - "buffer": "^6.0.3" - }, - "devDependencies": { - "@fluencelabs/marine.worker-script": "workspace:0.1.0", - "@types/node": "16.11.59", - "threads": "^1.7.0", - "ts-loader": "8.4.0", - "typescript": "^4.6.4", - "webpack": "5.75.0", - "webpack-cli": "5.0.1" - } -} diff --git a/packages/marine/deps-loader.node/postbuild.sh b/packages/marine/deps-loader.node/postbuild.sh deleted file mode 100755 index 7ff5b448..00000000 --- a/packages/marine/deps-loader.node/postbuild.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh - -cp ./node_modules/@fluencelabs/marine.worker-script/dist/marine-js.b64.node.d.ts dist/ -cp ./node_modules/@fluencelabs/marine.worker-script/dist/marine-js.b64.node.js dist/ \ No newline at end of file diff --git a/packages/marine/deps-loader.node/tsconfig.json b/packages/marine/deps-loader.node/tsconfig.json deleted file mode 100644 index 51d16836..00000000 --- a/packages/marine/deps-loader.node/tsconfig.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "compilerOptions": { - "lib": ["es2017", "dom"], - "outDir": "./dist/", - "target": "es6", - "module": "commonjs", - "allowJs": true, - "strict": true, - "esModuleInterop": true, - "skipLibCheck": true, - "forceConsistentCasingInFileNames": true, - "declaration": true, - "sourceMap": true - }, - "exclude": ["node_modules", "dist"], - "include": ["src/**/*"] -} diff --git a/packages/marine/deps-loader.web/.gitignore b/packages/marine/deps-loader.web/.gitignore deleted file mode 100644 index 1a59a95f..00000000 --- a/packages/marine/deps-loader.web/.gitignore +++ /dev/null @@ -1,21 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -lerna-debug.log* - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release -bundle/ - -dist -esm -types - -# Dependency directories -node_modules/ -jspm_packages/ - -.idea diff --git a/packages/marine/deps-loader.web/.npmignore b/packages/marine/deps-loader.web/.npmignore deleted file mode 100644 index 1354879a..00000000 --- a/packages/marine/deps-loader.web/.npmignore +++ /dev/null @@ -1,12 +0,0 @@ -.idea -.gitignore -node_modules -types - -src/ - -tsconfig.json -webpack.config.js - -bundle -pkg \ No newline at end of file diff --git a/packages/marine/deps-loader.web/.prettierrc.js b/packages/marine/deps-loader.web/.prettierrc.js deleted file mode 100644 index 4e5ea887..00000000 --- a/packages/marine/deps-loader.web/.prettierrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - semi: true, - trailingComma: "all", - singleQuote: true, - printWidth: 120, - tabWidth: 4, - useTabs: false -}; diff --git a/packages/marine/deps-loader.web/CONTRIBUTING.md b/packages/marine/deps-loader.web/CONTRIBUTING.md deleted file mode 100644 index 0e3b264d..00000000 --- a/packages/marine/deps-loader.web/CONTRIBUTING.md +++ /dev/null @@ -1,13 +0,0 @@ -## Contribute Code - -You are welcome to contribute to Fluence. - -Things you need to know: - -1. You need to **agree to the Contributors License Agreement**. This is a common practice in all major Open Source projects. At the current moment we are unable to accept contributions made on behalf of a company. Only individual contributions will be accepted. -2. **Not all proposed contributions can be accepted**. Some features may e.g. just fit a third-party add-on better. The contribution must fit the overall direction of Fluence and really improve it. The more effort you invest, the better you should clarify in advance whether the contribution fits: the best way would be to just open an issue to discuss the contribution you plan to make. - -### Contributor License Agreement - -When you contribute, you have to be aware that your contribution is covered by **Apache License 2.0**, but might relicensed under few other software licenses mentioned in the **Contributor License Agreement**. -In particular you need to agree to the [Contributor License Agreement](https://gist.github.com/fluencelabs-org/3f4cbb3cc14c1c0fb9ad99d8f7316ed7). If you agree to its content, you simply have to click on the link posted by the CLA assistant as a comment to the pull request. Click it to check the CLA, then accept it on the following screen if you agree to it. CLA assistant will save this decision for upcoming contributions and will notify you if there is any change to the CLA in the meantime. diff --git a/packages/marine/deps-loader.web/README.md b/packages/marine/deps-loader.web/README.md deleted file mode 100644 index 46761d62..00000000 --- a/packages/marine/deps-loader.web/README.md +++ /dev/null @@ -1,11 +0,0 @@ -# MarineJS deps loader for web - -This package is a part of FluenceJS, the official implementation of the Fluence Peer in typescript. See the [FluenceJS repo](https://github.com/fluencelabs/fluence-js) for more info - -## Contributing - -While the project is still in the early stages of development, you are welcome to track progress and contribute. As the project is undergoing rapid changes, interested contributors should contact the team before embarking on larger pieces of work. All contributors should consult with and agree to our [basic contributing rules](CONTRIBUTING.md). - -## License - -[Apache 2.0](LICENSE) diff --git a/packages/marine/deps-loader.web/package.json b/packages/marine/deps-loader.web/package.json deleted file mode 100644 index 6a328043..00000000 --- a/packages/marine/deps-loader.web/package.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "name": "@fluencelabs/marine.deps-loader.web", - "version": "0.1.0", - "description": "MarineJS deps loader web", - "main": "./dist/index.js", - "typings": "./dist/index.d.ts", - "engines": { - "node": ">=10", - "pnpm": ">=3" - }, - "scripts": { - "build": "tsc && ./postbuild.sh" - }, - "repository": "https://github.com/fluencelabs/fluence-js", - "author": "Fluence Labs", - "license": "Apache-2.0", - "dependencies": { - "buffer": "^6.0.3", - "js-base64": "3.7.3", - "@fluencelabs/interfaces": "workspace:0.2.0" - }, - "devDependencies": { - "@fluencelabs/marine.worker-script": "workspace:0.1.0", - "typescript": "^4.6.4", - "threads": "^1.7.0", - "ts-loader": "8.4.0", - "webpack": "4.46.0", - "webpack-cli": "4.10.0" - } -} diff --git a/packages/marine/deps-loader.web/postbuild.sh b/packages/marine/deps-loader.web/postbuild.sh deleted file mode 100755 index c06ffd4d..00000000 --- a/packages/marine/deps-loader.web/postbuild.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh - -cp ./node_modules/@fluencelabs/marine.worker-script/dist/marine-js.b64.web.d.ts dist/ -cp ./node_modules/@fluencelabs/marine.worker-script/dist/marine-js.b64.web.js dist/ \ No newline at end of file diff --git a/packages/marine/deps-loader.web/tsconfig.json b/packages/marine/deps-loader.web/tsconfig.json deleted file mode 100644 index 6a02a1b3..00000000 --- a/packages/marine/deps-loader.web/tsconfig.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "compilerOptions": { - "lib": ["es2017", "dom"], - "outDir": "./dist/", - "target": "es5", - "module": "commonjs", - "allowJs": true, - "strict": true, - "esModuleInterop": true, - "skipLibCheck": true, - "forceConsistentCasingInFileNames": true, - "declaration": true, - "declarationMap": false, - "sourceMap": false - }, - "exclude": ["node_modules", "dist"], - "include": ["src/**/*"] -} diff --git a/packages/marine/worker-script/.gitignore b/packages/marine/worker-script/.gitignore deleted file mode 100644 index 1a59a95f..00000000 --- a/packages/marine/worker-script/.gitignore +++ /dev/null @@ -1,21 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -lerna-debug.log* - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release -bundle/ - -dist -esm -types - -# Dependency directories -node_modules/ -jspm_packages/ - -.idea diff --git a/packages/marine/worker-script/.npmignore b/packages/marine/worker-script/.npmignore deleted file mode 100644 index 1354879a..00000000 --- a/packages/marine/worker-script/.npmignore +++ /dev/null @@ -1,12 +0,0 @@ -.idea -.gitignore -node_modules -types - -src/ - -tsconfig.json -webpack.config.js - -bundle -pkg \ No newline at end of file diff --git a/packages/marine/worker-script/.prettierrc.js b/packages/marine/worker-script/.prettierrc.js deleted file mode 100644 index 4e5ea887..00000000 --- a/packages/marine/worker-script/.prettierrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - semi: true, - trailingComma: "all", - singleQuote: true, - printWidth: 120, - tabWidth: 4, - useTabs: false -}; diff --git a/packages/marine/worker-script/CONTRIBUTING.md b/packages/marine/worker-script/CONTRIBUTING.md deleted file mode 100644 index 0e3b264d..00000000 --- a/packages/marine/worker-script/CONTRIBUTING.md +++ /dev/null @@ -1,13 +0,0 @@ -## Contribute Code - -You are welcome to contribute to Fluence. - -Things you need to know: - -1. You need to **agree to the Contributors License Agreement**. This is a common practice in all major Open Source projects. At the current moment we are unable to accept contributions made on behalf of a company. Only individual contributions will be accepted. -2. **Not all proposed contributions can be accepted**. Some features may e.g. just fit a third-party add-on better. The contribution must fit the overall direction of Fluence and really improve it. The more effort you invest, the better you should clarify in advance whether the contribution fits: the best way would be to just open an issue to discuss the contribution you plan to make. - -### Contributor License Agreement - -When you contribute, you have to be aware that your contribution is covered by **Apache License 2.0**, but might relicensed under few other software licenses mentioned in the **Contributor License Agreement**. -In particular you need to agree to the [Contributor License Agreement](https://gist.github.com/fluencelabs-org/3f4cbb3cc14c1c0fb9ad99d8f7316ed7). If you agree to its content, you simply have to click on the link posted by the CLA assistant as a comment to the pull request. Click it to check the CLA, then accept it on the following screen if you agree to it. CLA assistant will save this decision for upcoming contributions and will notify you if there is any change to the CLA in the meantime. diff --git a/packages/marine/worker-script/README.md b/packages/marine/worker-script/README.md deleted file mode 100644 index fbeaa388..00000000 --- a/packages/marine/worker-script/README.md +++ /dev/null @@ -1,11 +0,0 @@ -# MarineJS background worker script - -This package is a part of FluenceJS, the official implementation of the Fluence Peer in typescript. See the [FluenceJS repo](https://github.com/fluencelabs/fluence-js) for more info - -## Contributing - -While the project is still in the early stages of development, you are welcome to track progress and contribute. As the project is undergoing rapid changes, interested contributors should contact the team before embarking on larger pieces of work. All contributors should consult with and agree to our [basic contributing rules](CONTRIBUTING.md). - -## License - -[Apache 2.0](LICENSE) diff --git a/packages/marine/worker-script/build_b64.sh b/packages/marine/worker-script/build_b64.sh deleted file mode 100755 index f5b86edc..00000000 --- a/packages/marine/worker-script/build_b64.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/sh - -## base64 on MacOS doesn't have -w option -if echo | base64 -w0 > /dev/null 2>&1; -then - BASE64_WEB=$(base64 -w0 ./dist/marine-js.web.js) - BASE64_NODE=$(base64 -w0 ./dist/marine-js.node.js) -else - BASE64_WEB=$(base64 ./dist/marine-js.web.js) - BASE64_NODE=$(base64 ./dist/marine-js.node.js) -fi - -cat << EOF > ./dist/marine-js.b64.web.js -"use strict"; -// auto-generated -Object.defineProperty(exports, "__esModule", { value: true }); -exports.default = "$BASE64_WEB"; -EOF - -cat << EOF > ./dist/marine-js.b64.node.js -"use strict"; -// auto-generated -Object.defineProperty(exports, "__esModule", { value: true }); -exports.default = "$BASE64_NODE"; -EOF - -cat << EOF > ./dist/marine-js.b64.node.d.ts -declare const _default: string; -export default _default; -EOF - -cat << EOF > ./dist/marine-js.b64.web.d.ts -declare const _default: string; -export default _default; -EOF - diff --git a/packages/marine/worker-script/package.json b/packages/marine/worker-script/package.json deleted file mode 100644 index 8e675fd2..00000000 --- a/packages/marine/worker-script/package.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "version": "0.1.0", - "name": "@fluencelabs/marine.worker-script", - "description": "MarineJS background worker script", - "main": "./dist/index.js", - "typings": "./dist/index.d.ts", - "engines": { - "node": ">=10", - "pnpm": ">=3" - }, - "scripts": { - "build": "tsc --emitDeclarationOnly && pnpm build:web && pnpm build:node && pnpm build:b64 ", - "build:b64": "./build_b64.sh", - "build:web": "webpack -c webpack.config.web.js", - "build:node": "webpack -c webpack.config.node.js" - }, - "repository": "https://github.com/fluencelabs/fluence-js", - "author": "Fluence Labs", - "license": "Apache-2.0", - "dependencies": { - "@fluencelabs/marine-js": "0.3.38", - "threads": "^1.7.0" - }, - "devDependencies": { - "@types/node": "16.11.59", - "ts-loader": "8.4.0", - "typescript": "^4.6.4", - "webpack": "5.75.0", - "webpack-cli": "5.0.1" - } -} diff --git a/packages/marine/worker-script/webpack.config.js b/packages/marine/worker-script/webpack.config.js deleted file mode 100644 index 5080c772..00000000 --- a/packages/marine/worker-script/webpack.config.js +++ /dev/null @@ -1,47 +0,0 @@ -// Generated using webpack-cli https://github.com/webpack/webpack-cli - -const path = require('path'); - -// const isProduction = true; -// uncomment to debug -const isProduction = false; - -const config = () => ({ - entry: './src/index.ts', - output: { - path: path.resolve('dist'), - }, - module: { - rules: [ - { - test: /\.(js|ts|tsx)$/i, - use: [ - // force new line - { - loader: 'ts-loader', - options: { - compilerOptions: { - declaration: false, - }, - }, - }, - ], - exclude: ['/node_modules/'], - }, - ], - }, - resolve: { - extensions: ['.tsx', '.ts', '.js'], - }, -}); - -module.exports = () => { - const res = config(); - if (isProduction) { - res.mode = 'production'; - } else { - res.mode = 'development'; - } - - return res; -}; diff --git a/packages/marine/worker-script/webpack.config.node.js b/packages/marine/worker-script/webpack.config.node.js deleted file mode 100644 index 509a4a58..00000000 --- a/packages/marine/worker-script/webpack.config.node.js +++ /dev/null @@ -1,10 +0,0 @@ -// Generated using webpack-cli https://github.com/webpack/webpack-cli - -const config = require('./webpack.config.js'); - -module.exports = () => { - const cfg = config(); - cfg.output.filename = 'marine-js.node.js'; - cfg.target = 'node'; - return cfg; -}; diff --git a/packages/marine/worker-script/webpack.config.web.js b/packages/marine/worker-script/webpack.config.web.js deleted file mode 100644 index defb6f21..00000000 --- a/packages/marine/worker-script/webpack.config.web.js +++ /dev/null @@ -1,10 +0,0 @@ -// Generated using webpack-cli https://github.com/webpack/webpack-cli - -const config = require('./webpack.config.js'); - -module.exports = () => { - const cfg = config(); - cfg.output.filename = 'marine-js.web.js'; - cfg.target = 'web'; - return cfg; -}; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 18cb9941..191fb8f4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -2,371 +2,190 @@ lockfileVersion: 5.4 importers: - packages/@tests/marine/node: + .: specifiers: - '@fluencelabs/avm': 0.32.1 - '@fluencelabs/marine.background-runner': workspace:0.1.0 - '@fluencelabs/marine.deps-loader.node': workspace:0.1.0 + ts-node: 10.9.1 + typescript: '4.7' + devDependencies: + ts-node: 10.9.1_nv75g3i7xuh23du6z7qul3uiqi + typescript: 4.7.4 + + packages/client/js-client.web.standalone: + specifiers: + '@fluencelabs/avm': 0.35.3 + '@fluencelabs/js-peer': workspace:* + '@fluencelabs/marine-js': 0.3.42 + '@rollup/plugin-inject': 5.0.3 '@types/jest': 28.1.0 '@types/node': 16.11.59 + buffer: 6.0.3 + esbuild: 0.16.7 jest: 28.1.0 + js-base64: 3.7.2 + process: 0.11.10 ts-jest: 28.0.2 - typescript: ^4.0.0 + vite: 4.0.4 + vite-plugin-replace: 0.1.1 + vite-tsconfig-paths: 4.0.3 dependencies: - '@fluencelabs/avm': 0.32.1 - '@fluencelabs/marine.background-runner': link:../../../marine/background-runner - '@fluencelabs/marine.deps-loader.node': link:../../../marine/deps-loader.node + '@fluencelabs/js-peer': link:../../core + buffer: 6.0.3 + esbuild: 0.16.7 + process: 0.11.10 devDependencies: + '@fluencelabs/avm': 0.35.3 + '@fluencelabs/marine-js': 0.3.42 + '@rollup/plugin-inject': 5.0.3 '@types/jest': 28.1.0 '@types/node': 16.11.59 jest: 28.1.0_@types+node@16.11.59 - ts-jest: 28.0.2_qah6rulmyywoowvfc5owcdakum - typescript: 4.7.4 - - packages/@tests/smoke: - specifiers: - '@fluencelabs/fluence': workspace:* - '@fluencelabs/js-client.node': workspace:* - '@types/node': 16.11.59 - ts-node: 10.9.1 - typescript: 4.6.4 - dependencies: - '@fluencelabs/fluence': link:../../client/fluence-js - '@fluencelabs/js-client.node': link:../../client/js-client.node - ts-node: 10.9.1_f4s53rsdbgkmxc2oaa23drhnsy - devDependencies: - '@types/node': 16.11.59 - typescript: 4.6.4 - - packages/client/compiler-support: - specifiers: - '@fluencelabs/js-peer': workspace:0.1.0 - '@types/jest': 28.1.0 - '@types/node': 16.11.59 - jest: 28.1.0 - ts-jest: 28.0.2 - ts-node: 10.9.1 - typescript: 4.6.4 - dependencies: - '@fluencelabs/js-peer': link:../../core/js-peer - devDependencies: - '@types/jest': 28.1.0 - '@types/node': 16.11.59 - jest: 28.1.0_4echt27za7uk6ezjshmbxcfmgy - ts-jest: 28.0.2_vibqa5hxa5biq5fwuxzv5iobty - ts-node: 10.9.1_f4s53rsdbgkmxc2oaa23drhnsy - typescript: 4.6.4 - - packages/client/fluence-js: - specifiers: - '@fluencelabs/avm': 0.32.1 - '@fluencelabs/js-peer': workspace:0.1.0 - '@fluencelabs/keypair': workspace:0.2.0 - '@fluencelabs/marine-js': 0.3.38 - '@types/jest': 28.1.0 - '@types/node': 16.11.59 - jest: 28.1.0 - loglevel: 1.8.1 - ts-jest: 28.0.2 - ts-node: 10.9.1 - typescript: 4.6.4 - dependencies: - '@fluencelabs/avm': 0.32.1 - '@fluencelabs/js-peer': link:../../core/js-peer - '@fluencelabs/keypair': link:../../core/keypair - '@fluencelabs/marine-js': 0.3.38 - loglevel: 1.8.1 - devDependencies: - '@types/jest': 28.1.0 - '@types/node': 16.11.59 - jest: 28.1.0_4echt27za7uk6ezjshmbxcfmgy - ts-jest: 28.0.2_vibqa5hxa5biq5fwuxzv5iobty - ts-node: 10.9.1_f4s53rsdbgkmxc2oaa23drhnsy - typescript: 4.6.4 - - packages/client/js-client.node: - specifiers: - '@fluencelabs/js-peer': workspace:0.1.0 - '@fluencelabs/marine.background-runner': workspace:0.1.0 - '@fluencelabs/marine.deps-loader.node': workspace:0.1.0 - '@types/jest': 28.1.0 - '@types/node': 16.11.59 - jest: 28.1.0 - ts-jest: 28.0.2 - ts-node: 10.9.1 - typescript: 4.6.4 - dependencies: - '@fluencelabs/js-peer': link:../../core/js-peer - '@fluencelabs/marine.background-runner': link:../../marine/background-runner - '@fluencelabs/marine.deps-loader.node': link:../../marine/deps-loader.node - devDependencies: - '@types/jest': 28.1.0 - '@types/node': 16.11.59 - jest: 28.1.0_4echt27za7uk6ezjshmbxcfmgy - ts-jest: 28.0.2_vibqa5hxa5biq5fwuxzv5iobty - ts-node: 10.9.1_f4s53rsdbgkmxc2oaa23drhnsy - typescript: 4.6.4 - - packages/client/js-client.web: - specifiers: - '@fluencelabs/js-peer': workspace:0.1.0 - '@fluencelabs/marine.background-runner': workspace:0.1.0 - '@fluencelabs/marine.deps-loader.web': workspace:0.1.0 - '@types/jest': 28.1.0 - '@types/node': 16.11.59 - jest: 28.1.0 - ts-jest: 28.0.2 - ts-node: 10.9.1 - typescript: 4.6.4 - dependencies: - '@fluencelabs/js-peer': link:../../core/js-peer - '@fluencelabs/marine.background-runner': link:../../marine/background-runner - '@fluencelabs/marine.deps-loader.web': link:../../marine/deps-loader.web - devDependencies: - '@types/jest': 28.1.0 - '@types/node': 16.11.59 - jest: 28.1.0_4echt27za7uk6ezjshmbxcfmgy - ts-jest: 28.0.2_vibqa5hxa5biq5fwuxzv5iobty - ts-node: 10.9.1_f4s53rsdbgkmxc2oaa23drhnsy - typescript: 4.6.4 + js-base64: 3.7.2 + ts-jest: 28.0.2_x4jxemvix5u5qh7s2uiphct2vm + vite: 4.0.4_@types+node@16.11.59 + vite-plugin-replace: 0.1.1_vite@4.0.4 + vite-tsconfig-paths: 4.0.3_trrwuuiz4f5khno7hdf3cjz2ky packages/client/tools: specifiers: '@types/node': 16.11.59 - typescript: 4.6.4 devDependencies: '@types/node': 16.11.59 - typescript: 4.6.4 - packages/core/connection: - specifiers: - '@chainsafe/libp2p-noise': 4.1.1 - '@fluencelabs/interfaces': workspace:0.2.0 - browser-or-node: 2.0.0 - buffer: 6.0.3 - it-length-prefixed: 5.0.3 - it-pipe: 1.1.0 - libp2p: 0.36.2 - libp2p-interfaces: 4.0.6 - libp2p-mplex: 0.10.7 - libp2p-websockets: 0.16.2 - loglevel: 1.8.1 - multiaddr: 10.0.1 - peer-id: 0.16.0 - typescript: 4.6.4 - dependencies: - '@chainsafe/libp2p-noise': 4.1.1 - '@fluencelabs/interfaces': link:../interfaces - browser-or-node: 2.0.0 - buffer: 6.0.3 - it-length-prefixed: 5.0.3 - it-pipe: 1.1.0 - libp2p: 0.36.2_node-fetch@3.2.10 - libp2p-interfaces: 4.0.6_node-fetch@3.2.10 - libp2p-mplex: 0.10.7 - libp2p-websockets: 0.16.2_node-fetch@3.2.10 - loglevel: 1.8.1 - multiaddr: 10.0.1_node-fetch@3.2.10 - peer-id: 0.16.0 - devDependencies: - typescript: 4.6.4 - - packages/core/interfaces: - specifiers: - '@fluencelabs/avm': 0.31.10 - '@fluencelabs/marine-js': 0.3.38 - '@types/node': 16.11.59 - threads: ^1.7.0 - typescript: 4.6.4 - devDependencies: - '@fluencelabs/avm': 0.31.10 - '@fluencelabs/marine-js': 0.3.38 - '@types/node': 16.11.59 - threads: 1.7.0 - typescript: 4.6.4 - - packages/core/js-peer: + packages/core: specifiers: + '@chainsafe/libp2p-noise': 11.0.0 '@fluencelabs/aqua': 0.7.7-362 '@fluencelabs/aqua-api': 0.9.1-373 '@fluencelabs/aqua-lib': 0.6.0 - '@fluencelabs/avm': 0.32.1 - '@fluencelabs/connection': workspace:0.2.0 + '@fluencelabs/avm': 0.31.10 '@fluencelabs/fluence-network-environment': 1.0.13 - '@fluencelabs/interfaces': workspace:0.2.0 - '@fluencelabs/keypair': workspace:0.2.0 - '@fluencelabs/marine-js': 0.3.38 - '@fluencelabs/marine.background-runner': workspace:0.1.0 - '@fluencelabs/marine.deps-loader.node': workspace:0.1.0 + '@fluencelabs/marine-js': 0.3.44 + '@libp2p/crypto': 1.0.8 + '@libp2p/interface-connection': 3.0.8 + '@libp2p/interface-keys': 1.0.7 + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/interfaces': 3.3.1 + '@libp2p/mplex': 7.1.1 + '@libp2p/peer-id': 2.0.1 + '@libp2p/peer-id-factory': 2.0.1 + '@libp2p/websockets': 5.0.3 + '@multiformats/multiaddr': 11.3.0 '@types/bs58': 4.0.1 - '@types/jest': 28.1.0 + '@types/jest': 29.4.0 + '@types/node': 16.11.59 '@types/platform': 1.3.4 '@types/uuid': 8.3.2 async: 3.2.4 - base64-js: ^1.5.1 + browser-or-node: 2.0.0 bs58: 5.0.0 buffer: 6.0.3 - cids: 1.1.9 - jest: 28.1.0 - jest-each: 28.1.3 + it-length-prefixed: 8.0.4 + it-map: 2.0.0 + it-pipe: 2.0.5 + jest: 29.4.1 js-base64: 3.7.2 + libp2p: 0.42.2 loglevel: 1.8.1 - multiaddr: 10.0.1 - multiformats: 9.9.0 - peer-id: 0.16.0 + multiformats: 11.0.1 platform: 1.3.6 rxjs: 7.5.5 - ts-jest: 28.0.2 - ts-node: 10.9.1 + threads: 1.7.0 + ts-jest: 29.0.5 ts-pattern: 3.3.3 - typescript: 4.6.4 + uint8arrays: 4.0.3 uuid: 8.3.2 dependencies: - '@fluencelabs/avm': 0.32.1 - '@fluencelabs/connection': link:../connection - '@fluencelabs/interfaces': link:../interfaces - '@fluencelabs/keypair': link:../keypair - '@fluencelabs/marine-js': 0.3.38 - '@fluencelabs/marine.background-runner': link:../../marine/background-runner + '@chainsafe/libp2p-noise': 11.0.0 + '@fluencelabs/avm': 0.31.10 + '@fluencelabs/marine-js': 0.3.44 + '@libp2p/crypto': 1.0.8_uint8arraylist@2.4.3 + '@libp2p/interface-connection': 3.0.8 + '@libp2p/interface-keys': 1.0.7 + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/interfaces': 3.3.1 + '@libp2p/mplex': 7.1.1 + '@libp2p/peer-id': 2.0.1 + '@libp2p/peer-id-factory': 2.0.1 + '@libp2p/websockets': 5.0.3 + '@multiformats/multiaddr': 11.3.0 async: 3.2.4 - base64-js: 1.5.1 + browser-or-node: 2.0.0 bs58: 5.0.0 buffer: 6.0.3 - cids: 1.1.9 + it-length-prefixed: 8.0.4 + it-map: 2.0.0 + it-pipe: 2.0.5 + js-base64: 3.7.2 + libp2p: 0.42.2 loglevel: 1.8.1 - multiformats: 9.9.0 - peer-id: 0.16.0 + multiformats: 11.0.1 platform: 1.3.6 rxjs: 7.5.5 + threads: 1.7.0 ts-pattern: 3.3.3 + uint8arrays: 4.0.3 uuid: 8.3.2 devDependencies: - '@fluencelabs/aqua': 0.7.7-362_i3yjj2scigfcyyfwxdhvpsnmxe + '@fluencelabs/aqua': 0.7.7-362_cgl6iwuyfzkj3bzihtpi7yfmsi '@fluencelabs/aqua-api': 0.9.1-373 '@fluencelabs/aqua-lib': 0.6.0 '@fluencelabs/fluence-network-environment': 1.0.13 - '@fluencelabs/marine.deps-loader.node': link:../../marine/deps-loader.node '@types/bs58': 4.0.1 - '@types/jest': 28.1.0 + '@types/jest': 29.4.0 + '@types/node': 16.11.59 '@types/platform': 1.3.4 '@types/uuid': 8.3.2 - jest: 28.1.0_gsb7asu77en4txj3es3i65pxci - jest-each: 28.1.3 - js-base64: 3.7.2 - multiaddr: 10.0.1_node-fetch@3.2.10 - ts-jest: 28.0.2_vibqa5hxa5biq5fwuxzv5iobty - ts-node: 10.9.1_apbkdfxvcdmborgupeskcsfbo4 - typescript: 4.6.4 - - packages/core/keypair: - specifiers: - js-base64: 3.7.2 - libp2p-crypto: 0.21.2 - peer-id: 0.16.0 - typescript: 4.6.4 - dependencies: - js-base64: 3.7.2 - libp2p-crypto: 0.21.2 - peer-id: 0.16.0 - devDependencies: - typescript: 4.6.4 - - packages/marine/background-runner: - specifiers: - '@fluencelabs/interfaces': workspace:0.2.0 - '@fluencelabs/marine-js': 0.3.38 - '@fluencelabs/marine.worker-script': workspace:0.1.0 - '@types/node': 16.11.59 - threads: ^1.7.0 - typescript: ^4.6.4 - dependencies: - threads: 1.7.0 - devDependencies: - '@fluencelabs/interfaces': link:../../core/interfaces - '@fluencelabs/marine-js': 0.3.38 - '@fluencelabs/marine.worker-script': link:../worker-script - '@types/node': 16.11.59 - typescript: 4.7.4 - - packages/marine/deps-loader.node: - specifiers: - '@fluencelabs/interfaces': workspace:0.2.0 - '@fluencelabs/marine.worker-script': workspace:0.1.0 - '@types/node': 16.11.59 - buffer: ^6.0.3 - js-base64: 3.7.3 - threads: ^1.7.0 - ts-loader: 8.4.0 - typescript: ^4.6.4 - webpack: 5.75.0 - webpack-cli: 5.0.1 - dependencies: - '@fluencelabs/interfaces': link:../../core/interfaces - buffer: 6.0.3 - js-base64: 3.7.3 - devDependencies: - '@fluencelabs/marine.worker-script': link:../worker-script - '@types/node': 16.11.59 - threads: 1.7.0 - ts-loader: 8.4.0_l2co7ao223gzrfox7yaiyzd7wu - typescript: 4.7.4 - webpack: 5.75.0_webpack-cli@5.0.1 - webpack-cli: 5.0.1_webpack@5.75.0 - - packages/marine/deps-loader.web: - specifiers: - '@fluencelabs/interfaces': workspace:0.2.0 - '@fluencelabs/marine.worker-script': workspace:0.1.0 - buffer: ^6.0.3 - js-base64: 3.7.3 - threads: ^1.7.0 - ts-loader: 8.4.0 - typescript: ^4.6.4 - webpack: 4.46.0 - webpack-cli: 4.10.0 - dependencies: - '@fluencelabs/interfaces': link:../../core/interfaces - buffer: 6.0.3 - js-base64: 3.7.3 - devDependencies: - '@fluencelabs/marine.worker-script': link:../worker-script - threads: 1.7.0 - ts-loader: 8.4.0_hrl2l4xchpnd6hlkqocppvpxx4 - typescript: 4.7.4 - webpack: 4.46.0_webpack-cli@4.10.0 - webpack-cli: 4.10.0_webpack@4.46.0 - - packages/marine/worker-script: - specifiers: - '@fluencelabs/marine-js': 0.3.38 - '@types/node': 16.11.59 - threads: ^1.7.0 - ts-loader: 8.4.0 - typescript: ^4.6.4 - webpack: 5.75.0 - webpack-cli: 5.0.1 - dependencies: - '@fluencelabs/marine-js': 0.3.38 - threads: 1.7.0 - devDependencies: - '@types/node': 16.11.59 - ts-loader: 8.4.0_l2co7ao223gzrfox7yaiyzd7wu - typescript: 4.7.4 - webpack: 5.75.0_webpack-cli@5.0.1 - webpack-cli: 5.0.1_webpack@5.75.0 + jest: 29.4.1_@types+node@16.11.59 + ts-jest: 29.0.5_knhdxpg4pvwuf6vrybjt5d2q5i packages: + /@achingbrain/ip-address/8.1.0: + resolution: {integrity: sha512-Zus4vMKVRDm+R1o0QJNhD0PD/8qRGO3Zx8YPsFG5lANt5utVtGg3iHVGBSAF80TfQmhi8rP+Kg/OigdxY0BXHw==} + engines: {node: '>= 12'} + dependencies: + jsbn: 1.1.0 + sprintf-js: 1.1.2 + dev: false + + /@achingbrain/nat-port-mapper/1.0.7: + resolution: {integrity: sha512-P8Z8iMZBQCsN7q3XoVoJAX3CGPUTbGTh1XBU8JytCW3hBmSk594l8YvdrtY5NVexVHSwLeiXnDsP4d10NJHaeg==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@achingbrain/ssdp': 4.0.1 + '@libp2p/logger': 2.0.5 + default-gateway: 6.0.3 + err-code: 3.0.1 + it-first: 1.0.7 + p-defer: 4.0.0 + p-timeout: 5.1.0 + xml2js: 0.4.23 + transitivePeerDependencies: + - supports-color + dev: false + /@achingbrain/node-fetch/2.6.7: resolution: {integrity: sha512-iTASGs+HTFK5E4ZqcMsHmeJ4zodyq8L38lZV33jwqcBJYoUt3HjN4+ot+O9/0b+ke8ddE7UgOtVuZN/OkV19/g==} engines: {node: 4.x || >=6.0.0} + dev: true + + /@achingbrain/ssdp/4.0.1: + resolution: {integrity: sha512-z/CkfFI0Ksrpo8E+lu2rKahlE1KJHUn8X8ihQj2Jg6CEL+oHYGCNfttOES0+VnV7htuog70c8bYNHYhlmmqxBQ==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + event-iterator: 2.0.0 + freeport-promise: 2.0.0 + merge-options: 3.0.4 + uuid: 8.3.2 + xml2js: 0.4.23 + dev: false /@ampproject/remapping/2.2.0: resolution: {integrity: sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==} engines: {node: '>=6.0.0'} dependencies: '@jridgewell/gen-mapping': 0.1.1 - '@jridgewell/trace-mapping': 0.3.15 + '@jridgewell/trace-mapping': 0.3.17 dev: true /@babel/code-frame/7.18.6: @@ -376,36 +195,36 @@ packages: '@babel/highlight': 7.18.6 dev: true - /@babel/compat-data/7.20.10: - resolution: {integrity: sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg==} + /@babel/compat-data/7.20.14: + resolution: {integrity: sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==} engines: {node: '>=6.9.0'} dev: true - /@babel/core/7.18.13: - resolution: {integrity: sha512-ZisbOvRRusFktksHSG6pjj1CSvkPkcZq/KHD45LAkVP/oiHJkNBZWfpvlLmX8OtHDG8IuzsFlVRWo08w7Qxn0A==} + /@babel/core/7.20.12: + resolution: {integrity: sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==} engines: {node: '>=6.9.0'} dependencies: '@ampproject/remapping': 2.2.0 '@babel/code-frame': 7.18.6 - '@babel/generator': 7.20.7 - '@babel/helper-compilation-targets': 7.20.7_@babel+core@7.18.13 + '@babel/generator': 7.20.14 + '@babel/helper-compilation-targets': 7.20.7_@babel+core@7.20.12 '@babel/helper-module-transforms': 7.20.11 - '@babel/helpers': 7.18.9 - '@babel/parser': 7.20.7 + '@babel/helpers': 7.20.13 + '@babel/parser': 7.20.15 '@babel/template': 7.20.7 - '@babel/traverse': 7.20.10 + '@babel/traverse': 7.20.13 '@babel/types': 7.20.7 - convert-source-map: 1.8.0 + convert-source-map: 1.9.0 debug: 4.3.4 gensync: 1.0.0-beta.2 - json5: 2.2.1 + json5: 2.2.3 semver: 6.3.0 transitivePeerDependencies: - supports-color dev: true - /@babel/generator/7.20.7: - resolution: {integrity: sha512-7wqMOJq8doJMZmP4ApXTzLxSr7+oO2jroJURrVEp6XShrQUObV8Tq/D0NCcoYg2uHqUrjzO0zwBjoYzelxK+sw==} + /@babel/generator/7.20.14: + resolution: {integrity: sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.20.7 @@ -413,16 +232,16 @@ packages: jsesc: 2.5.2 dev: true - /@babel/helper-compilation-targets/7.20.7_@babel+core@7.18.13: + /@babel/helper-compilation-targets/7.20.7_@babel+core@7.20.12: resolution: {integrity: sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/compat-data': 7.20.10 - '@babel/core': 7.18.13 + '@babel/compat-data': 7.20.14 + '@babel/core': 7.20.12 '@babel/helper-validator-option': 7.18.6 - browserslist: 4.21.4 + browserslist: 4.21.5 lru-cache: 5.1.1 semver: 6.3.0 dev: true @@ -464,7 +283,7 @@ packages: '@babel/helper-split-export-declaration': 7.18.6 '@babel/helper-validator-identifier': 7.19.1 '@babel/template': 7.20.7 - '@babel/traverse': 7.20.10 + '@babel/traverse': 7.20.13 '@babel/types': 7.20.7 transitivePeerDependencies: - supports-color @@ -504,12 +323,12 @@ packages: engines: {node: '>=6.9.0'} dev: true - /@babel/helpers/7.18.9: - resolution: {integrity: sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==} + /@babel/helpers/7.20.13: + resolution: {integrity: sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg==} engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.20.7 - '@babel/traverse': 7.20.10 + '@babel/traverse': 7.20.13 '@babel/types': 7.20.7 transitivePeerDependencies: - supports-color @@ -524,130 +343,140 @@ packages: js-tokens: 4.0.0 dev: true - /@babel/parser/7.20.7: - resolution: {integrity: sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg==} + /@babel/parser/7.20.15: + resolution: {integrity: sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg==} engines: {node: '>=6.0.0'} hasBin: true dependencies: '@babel/types': 7.20.7 dev: true - /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.18.13: + /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.20.12: resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@babel/helper-plugin-utils': 7.20.2 dev: true - /@babel/plugin-syntax-bigint/7.8.3_@babel+core@7.18.13: + /@babel/plugin-syntax-bigint/7.8.3_@babel+core@7.20.12: resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@babel/helper-plugin-utils': 7.20.2 dev: true - /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.18.13: + /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.20.12: resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@babel/helper-plugin-utils': 7.20.2 dev: true - /@babel/plugin-syntax-import-meta/7.10.4_@babel+core@7.18.13: + /@babel/plugin-syntax-import-meta/7.10.4_@babel+core@7.20.12: resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@babel/helper-plugin-utils': 7.20.2 dev: true - /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.18.13: + /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.20.12: resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@babel/helper-plugin-utils': 7.20.2 dev: true - /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.18.13: + /@babel/plugin-syntax-jsx/7.18.6_@babel+core@7.20.12: + resolution: {integrity: sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.20.12 + '@babel/helper-plugin-utils': 7.20.2 + dev: true + + /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.20.12: resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@babel/helper-plugin-utils': 7.20.2 dev: true - /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.18.13: + /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.20.12: resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@babel/helper-plugin-utils': 7.20.2 dev: true - /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.18.13: + /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.20.12: resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@babel/helper-plugin-utils': 7.20.2 dev: true - /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.18.13: + /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.20.12: resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@babel/helper-plugin-utils': 7.20.2 dev: true - /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.18.13: + /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.20.12: resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@babel/helper-plugin-utils': 7.20.2 dev: true - /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.18.13: + /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.20.12: resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@babel/helper-plugin-utils': 7.20.2 dev: true - /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.18.13: + /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.20.12: resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@babel/helper-plugin-utils': 7.20.2 dev: true - /@babel/plugin-syntax-typescript/7.20.0_@babel+core@7.18.13: + /@babel/plugin-syntax-typescript/7.20.0_@babel+core@7.20.12: resolution: {integrity: sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@babel/helper-plugin-utils': 7.20.2 dev: true @@ -656,21 +485,21 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.18.6 - '@babel/parser': 7.20.7 + '@babel/parser': 7.20.15 '@babel/types': 7.20.7 dev: true - /@babel/traverse/7.20.10: - resolution: {integrity: sha512-oSf1juCgymrSez8NI4A2sr4+uB/mFd9MXplYGPEBnfAuWmmyeVcHa6xLPiaRBcXkcb/28bgxmQLTVwFKE1yfsg==} + /@babel/traverse/7.20.13: + resolution: {integrity: sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ==} engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.18.6 - '@babel/generator': 7.20.7 + '@babel/generator': 7.20.14 '@babel/helper-environment-visitor': 7.18.9 '@babel/helper-function-name': 7.19.0 '@babel/helper-hoist-variables': 7.18.6 '@babel/helper-split-export-declaration': 7.18.6 - '@babel/parser': 7.20.7 + '@babel/parser': 7.20.15 '@babel/types': 7.20.7 debug: 4.3.4 globals: 11.12.0 @@ -691,24 +520,33 @@ packages: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} dev: true - /@chainsafe/libp2p-noise/4.1.1: - resolution: {integrity: sha512-/Fz86sZmnvRSf7FHxMPifzakxx9xK4KVYx6yi35KPZughop9ivJslUSCLhx/UqDHiuj3h9i04pVXET6nIjSJyQ==} - deprecated: critical bug fixex in >=4.1.2 + /@chainsafe/is-ip/2.0.1: + resolution: {integrity: sha512-nqSJ8u2a1Rv9FYbyI8qpDhTYujaKEyLknNrTejLYoSWmdeg+2WB7R6BZqPZYfrJzDxVi3rl6ZQuoaEvpKRZWgQ==} + dev: false + + /@chainsafe/libp2p-noise/11.0.0: + resolution: {integrity: sha512-NEl5aIv6muz9OL+dsa3INEU89JX0NViBxOy7NwwG8eNRPUDHo5E3ZTMSHXQpVx1K/ofoNS4ANO9xwezY6ss5GA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} dependencies: + '@libp2p/crypto': 1.0.8_uint8arraylist@2.4.3 + '@libp2p/interface-connection-encrypter': 3.0.6 + '@libp2p/interface-keys': 1.0.7 + '@libp2p/interface-metrics': 4.0.5 + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/logger': 2.0.5 + '@libp2p/peer-id': 2.0.1 '@stablelib/chacha20poly1305': 1.0.1 '@stablelib/hkdf': 1.0.1 '@stablelib/sha256': 1.0.1 '@stablelib/x25519': 1.0.3 - debug: 4.3.4 - it-buffer: 0.1.3 - it-length-prefixed: 5.0.3 - it-pair: 1.0.0 - it-pb-rpc: 0.1.13 - it-pipe: 1.1.0 - libp2p-crypto: 0.19.7 - peer-id: 0.15.4 - protobufjs: 6.11.3 - uint8arrays: 3.1.0 + it-length-prefixed: 8.0.4 + it-pair: 2.0.3 + it-pb-stream: 2.0.3 + it-pipe: 2.0.5 + it-stream-types: 1.0.5 + protons-runtime: 4.0.2_uint8arraylist@2.4.3 + uint8arraylist: 2.4.3 + uint8arrays: 4.0.3 transitivePeerDependencies: - supports-color dev: false @@ -729,7 +567,7 @@ packages: libp2p-crypto: 0.19.7 peer-id: 0.15.4 protobufjs: 6.11.3 - uint8arrays: 3.1.0 + uint8arrays: 3.1.1 transitivePeerDependencies: - supports-color dev: true @@ -739,12 +577,184 @@ packages: engines: {node: '>=12'} dependencies: '@jridgewell/trace-mapping': 0.3.9 - - /@discoveryjs/json-ext/0.5.7: - resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} - engines: {node: '>=10.0.0'} dev: true + /@esbuild/android-arm/0.16.7: + resolution: {integrity: sha512-yhzDbiVcmq6T1/XEvdcJIVcXHdLjDJ5cQ0Dp9R9p9ERMBTeO1dR5tc8YYv8zwDeBw1xZm+Eo3MRo8cwclhBS0g==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + optional: true + + /@esbuild/android-arm64/0.16.7: + resolution: {integrity: sha512-tYFw0lBJSEvLoGzzYh1kXuzoX1iPkbOk3O29VqzQb0HbOy7t/yw1hGkvwoJhXHwzQUPsShyYcTgRf6bDBcfnTw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + optional: true + + /@esbuild/android-x64/0.16.7: + resolution: {integrity: sha512-3P2OuTxwAtM3k/yEWTNUJRjMPG1ce8rXs51GTtvEC5z1j8fC1plHeVVczdeHECU7aM2/Buc0MwZ6ciM/zysnWg==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + optional: true + + /@esbuild/darwin-arm64/0.16.7: + resolution: {integrity: sha512-VUb9GK23z8jkosHU9yJNUgQpsfJn+7ZyBm6adi2Ec5/U241eR1tAn82QicnUzaFDaffeixiHwikjmnec/YXEZg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + optional: true + + /@esbuild/darwin-x64/0.16.7: + resolution: {integrity: sha512-duterlv3tit3HI9vhzMWnSVaB1B6YsXpFq1Ntd6Fou82BB1l4tucYy3FI9dHv3tvtDuS0NiGf/k6XsdBqPZ01w==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + optional: true + + /@esbuild/freebsd-arm64/0.16.7: + resolution: {integrity: sha512-9kkycpBFes/vhi7B7o0cf+q2WdJi+EpVzpVTqtWFNiutARWDFFLcB93J8PR1cG228sucsl3B+7Ts27izE6qiaQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + optional: true + + /@esbuild/freebsd-x64/0.16.7: + resolution: {integrity: sha512-5Ahf6jzWXJ4J2uh9dpy5DKOO+PeRUE/9DMys6VuYfwgQzd6n5+pVFm58L2Z2gRe611RX6SdydnNaiIKM3svY7g==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + optional: true + + /@esbuild/linux-arm/0.16.7: + resolution: {integrity: sha512-QqJnyCfu5OF78Olt7JJSZ7OSv/B4Hf+ZJWp4kkq9xwMsgu7yWq3crIic8gGOpDYTqVKKMDAVDgRXy5Wd/nWZyQ==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-arm64/0.16.7: + resolution: {integrity: sha512-2wv0xYDskk2+MzIm/AEprDip39a23Chptc4mL7hsHg26P0gD8RUhzmDu0KCH2vMThUI1sChXXoK9uH0KYQKaDg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-ia32/0.16.7: + resolution: {integrity: sha512-APVYbEilKbD5ptmKdnIcXej2/+GdV65TfTjxR2Uk8t1EsOk49t6HapZW6DS/Bwlvh5hDwtLapdSumIVNGxgqLg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-loong64/0.16.7: + resolution: {integrity: sha512-5wPUAGclplQrAW7EFr3F84Y/d++7G0KykohaF4p54+iNWhUnMVU8Bh2sxiEOXUy4zKIdpHByMgJ5/Ko6QhtTUw==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-mips64el/0.16.7: + resolution: {integrity: sha512-hxzlXtWF6yWfkE/SMTscNiVqLOAn7fOuIF3q/kiZaXxftz1DhZW/HpnTmTTWrzrS7zJWQxHHT4QSxyAj33COmA==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-ppc64/0.16.7: + resolution: {integrity: sha512-WM83Dac0LdXty5xPhlOuCD5Egfk1xLND/oRLYeB7Jb/tY4kzFSDgLlq91wYbHua/s03tQGA9iXvyjgymMw62Vw==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-riscv64/0.16.7: + resolution: {integrity: sha512-3nkNnNg4Ax6MS/l8O8Ynq2lGEVJYyJ2EoY3PHjNJ4PuZ80EYLMrFTFZ4L/Hc16AxgtXKwmNP9TM0YKNiBzBiJQ==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-s390x/0.16.7: + resolution: {integrity: sha512-3SA/2VJuv0o1uD7zuqxEP+RrAyRxnkGddq0bwHQ98v1KNlzXD/JvxwTO3T6GM5RH6JUd29RTVQTOJfyzMkkppA==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-x64/0.16.7: + resolution: {integrity: sha512-xi/tbqCqvPIzU+zJVyrpz12xqciTAPMi2fXEWGnapZymoGhuL2GIWIRXg4O2v5BXaYA5TSaiKYE14L0QhUTuQg==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/netbsd-x64/0.16.7: + resolution: {integrity: sha512-NUsYbq3B+JdNKn8SXkItFvdes9qTwEoS3aLALtiWciW/ystiCKM20Fgv9XQBOXfhUHyh5CLEeZDXzLOrwBXuCQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + optional: true + + /@esbuild/openbsd-x64/0.16.7: + resolution: {integrity: sha512-qjwzsgeve9I8Tbsko2FEkdSk2iiezuNGFgipQxY/736NePXDaDZRodIejYGWOlbYXugdxb0nif5yvypH6lKBmA==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + optional: true + + /@esbuild/sunos-x64/0.16.7: + resolution: {integrity: sha512-mFWDz4RoBTzPphTCkM7Kc7Qpa0o/Z01acajR+Ai7LdfKgcP/C6jYOaKwv7nKzD0+MjOT20j7You9g4ozYy1dKQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + optional: true + + /@esbuild/win32-arm64/0.16.7: + resolution: {integrity: sha512-m39UmX19RvEIuC8sYZ0M+eQtdXw4IePDSZ78ZQmYyFaXY9krq4YzQCK2XWIJomNLtg4q+W5aXr8bW3AbqWNoVg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + optional: true + + /@esbuild/win32-ia32/0.16.7: + resolution: {integrity: sha512-1cbzSEZA1fANwmT6rjJ4G1qQXHxCxGIcNYFYR9ctI82/prT38lnwSRZ0i5p/MVXksw9eMlHlet6pGu2/qkXFCg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + optional: true + + /@esbuild/win32-x64/0.16.7: + resolution: {integrity: sha512-QaQ8IH0JLacfGf5cf0HCCPnQuCTd/dAI257vXBgb/cccKGbH/6pVtI1gwhdAQ0Y48QSpTIFrh9etVyNdZY+zzw==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + optional: true + /@fluencelabs/aqua-api/0.9.1-373: resolution: {integrity: sha512-q0A2z/FXOlc9UKCQ/Kf00ig0VpgdJ9woITYSj1tnVo9X3kR71gSv4loCQmukJoqlVZXzfQ8r+spalwBerin89A==} dev: true @@ -763,20 +773,21 @@ packages: resolution: {integrity: sha512-ifjtCM93KO3LhzPkMxqmXhwLmrg/scjOiyTihEVg7ns5N+BVzaK1eWzdOdqGdl9ZVoah43pdlQUepEo7VdRmsw==} dev: true - /@fluencelabs/aqua/0.7.7-362_i3yjj2scigfcyyfwxdhvpsnmxe: + /@fluencelabs/aqua/0.7.7-362_cgl6iwuyfzkj3bzihtpi7yfmsi: resolution: {integrity: sha512-CwvBc3wKQdvnDM4Zxj6yFE5MR2oeh+EZ++m2hLvENt7OWl3cnZVR4cJQkRxMMLVT0MxRwLiy97UIBwGsPqlSCA==} hasBin: true dependencies: '@fluencelabs/aqua-ipfs': 0.5.5 '@fluencelabs/aqua-lib': 0.5.2 - '@fluencelabs/fluence': 0.26.3-snapshot-4_i3yjj2scigfcyyfwxdhvpsnmxe + '@fluencelabs/fluence': 0.26.3-snapshot-4_cgl6iwuyfzkj3bzihtpi7yfmsi '@fluencelabs/fluence-network-environment': 1.0.13 - ipfs-http-client: 50.1.2_node-fetch@3.2.10 + ipfs-http-client: 50.1.2_node-fetch@3.3.0 transitivePeerDependencies: - '@babel/core' - '@types/jest' - babel-jest - bufferutil + - encoding - esbuild - jest - node-fetch @@ -787,17 +798,17 @@ packages: /@fluencelabs/avm/0.31.10: resolution: {integrity: sha512-tkpjdHyRmsTwAEZCJt15//jXEgC2Nw2qFiD1NenvK127SlgKeuzQU9IMReUYY3dowb2IGeC578/uGMu96jHYKw==} - dev: true + dev: false /@fluencelabs/avm/0.31.4: resolution: {integrity: sha512-rApXdqk0NUX+Fyq9BJ1jQ7X//EfVrAg9wrjdd4K/tvo54Lgij0tY/IT+imwr/Eb4qgHgi1QMW4zT0AOlgKIKmw==} dev: true - /@fluencelabs/avm/0.32.1: - resolution: {integrity: sha512-1wZfLkKj8fNpsX+vQucqcxwjg/xFB03D2L//p2Hld68g54X+VFsGcHHUqbvQjCZ/8EdaS801s0ldiJuzXF706A==} - dev: false + /@fluencelabs/avm/0.35.3: + resolution: {integrity: sha512-Y5mPPCmAUUKc5CDO12IL8mGEreWa7maVdX0MWCAH4+GvfLPFN1FxOMSKRYEtvkyVEL88pc9pd8cm5IRCBkFthg==} + dev: true - /@fluencelabs/connection/0.2.0_node-fetch@3.2.10: + /@fluencelabs/connection/0.2.0_node-fetch@3.3.0: resolution: {integrity: sha512-0jTRI1h/j/fR2VaLIlcIm6VoP3j2jL2lI6/OaYaOnwGXmI6CbZWHNeq9eaKWycT9B1vpN9wHu0Vi7vH3pFplhg==} engines: {node: '>=10', pnpm: '>=3'} dependencies: @@ -807,15 +818,16 @@ packages: buffer: 6.0.3 it-length-prefixed: 5.0.3 it-pipe: 1.1.0 - libp2p: 0.36.2_node-fetch@3.2.10 - libp2p-interfaces: 4.0.6_node-fetch@3.2.10 + libp2p: 0.36.2_node-fetch@3.3.0 + libp2p-interfaces: 4.0.6_node-fetch@3.3.0 libp2p-mplex: 0.10.7 - libp2p-websockets: 0.16.2_node-fetch@3.2.10 + libp2p-websockets: 0.16.2_node-fetch@3.3.0 loglevel: 1.8.0 - multiaddr: 10.0.1_node-fetch@3.2.10 + multiaddr: 10.0.1_node-fetch@3.3.0 peer-id: 0.16.0 transitivePeerDependencies: - bufferutil + - encoding - node-fetch - supports-color - utf-8-validate @@ -825,16 +837,16 @@ packages: resolution: {integrity: sha512-2pci3T0sUHE08jwEs1r/vHKVT4XUh/A3j/QJ0eIhddsxyIjEksjdn05X7DF6STD14CF8GgBVOJEPgav8qaUMpA==} dev: true - /@fluencelabs/fluence/0.26.3-snapshot-4_i3yjj2scigfcyyfwxdhvpsnmxe: + /@fluencelabs/fluence/0.26.3-snapshot-4_cgl6iwuyfzkj3bzihtpi7yfmsi: resolution: {integrity: sha512-M/iQhnViXfMaATj3gFPQXrZe9zSVcyN9F9A9hfJBUn0VLamhmbfeIoSZeheK8VGBxYbRGcrtoqLPTy1vJQVgVw==} engines: {node: '>=10', pnpm: '>=3'} hasBin: true dependencies: '@fluencelabs/avm': 0.31.4 - '@fluencelabs/connection': 0.2.0_node-fetch@3.2.10 + '@fluencelabs/connection': 0.2.0_node-fetch@3.3.0 '@fluencelabs/interfaces': 0.1.0 '@fluencelabs/keypair': 0.2.0 - '@fluencelabs/marine-js': 0.3.18_vibqa5hxa5biq5fwuxzv5iobty + '@fluencelabs/marine-js': 0.3.18_2g5e7lwqsvuxdxojhdo55sfvve async: 3.2.3 base64-js: 1.5.1 browser-or-node: 2.0.0 @@ -845,7 +857,7 @@ packages: multiformats: 9.6.5 peer-id: 0.16.0 platform: 1.3.6 - rxjs: 7.5.6 + rxjs: 7.5.5 ts-pattern: 3.3.3 uuid: 8.3.2 transitivePeerDependencies: @@ -853,6 +865,7 @@ packages: - '@types/jest' - babel-jest - bufferutil + - encoding - esbuild - jest - node-fetch @@ -870,12 +883,12 @@ packages: resolution: {integrity: sha512-sNFvoeefSa0Xa/xzzLwWBXPMB4y/vHEFh3BaA6FCGNPwbtN0pje9rd8AOgSP9fjlTPpxy3TuBI+eAIzBk5b+SQ==} engines: {node: '>=10', pnpm: '>=3'} dependencies: - js-base64: 3.7.3 + js-base64: 3.7.2 libp2p-crypto: 0.21.2 peer-id: 0.16.0 dev: true - /@fluencelabs/marine-js/0.3.18_vibqa5hxa5biq5fwuxzv5iobty: + /@fluencelabs/marine-js/0.3.18_2g5e7lwqsvuxdxojhdo55sfvve: resolution: {integrity: sha512-aNuGtyY910kJvtRwfqmZKjVs+1l3LVWShv5xvkY04faHm65nX3sZLe8UHwughdja/4ixV1IFKlaTUgw2u3Sf5A==} dependencies: '@wasmer/wasi': 0.12.0 @@ -883,7 +896,7 @@ packages: browser-or-node: 2.0.0 buffer: 6.0.3 threads: 1.7.0 - ts-jest: 27.1.5_vibqa5hxa5biq5fwuxzv5iobty + ts-jest: 27.1.5_2g5e7lwqsvuxdxojhdo55sfvve transitivePeerDependencies: - '@babel/core' - '@types/jest' @@ -894,11 +907,20 @@ packages: - typescript dev: true - /@fluencelabs/marine-js/0.3.38: - resolution: {integrity: sha512-vP5w7be6vR0MZGkMpmmCvyVhABmVroPD9VAeCCDTuLhzqHMlDhm/cltU0B4kt9yijiNlh9CbY7dSZsCcspWPHw==} + /@fluencelabs/marine-js/0.3.42: + resolution: {integrity: sha512-v8FuQ7CvImFjG4kZXnE7b1h2/J3/5JWiGMc64M2AtkI2ipdk3uGB+xaIzxpx4Zcvpp9gEr2EQonpaZCu7Qx2hg==} dependencies: '@wasmer/wasi': 0.12.0 '@wasmer/wasmfs': 0.12.0 + dev: true + + /@fluencelabs/marine-js/0.3.44: + resolution: {integrity: sha512-DbI/x0bRv44oqfMZJlIkVhzZByXhmnOoxpco/cglk5aAvslOSDdRssf3bZADqqUQggGdtISOZcYPM+a4tirYLQ==} + dependencies: + '@wasmer/wasi': 0.12.0 + '@wasmer/wasmfs': 0.12.0 + default-import: 1.1.5 + dev: false /@istanbuljs/load-nyc-config/1.1.0: resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} @@ -921,13 +943,25 @@ packages: engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: '@jest/types': 28.1.3 - '@types/node': 18.7.14 + '@types/node': 18.11.18 chalk: 4.1.2 jest-message-util: 28.1.3 jest-util: 28.1.3 slash: 3.0.0 dev: true + /@jest/console/29.4.1: + resolution: {integrity: sha512-m+XpwKSi3PPM9znm5NGS8bBReeAJJpSkL1OuFCqaMaJL2YX9YXLkkI+MBchMPwu+ZuM2rynL51sgfkQteQ1CKQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/types': 29.4.1 + '@types/node': 18.11.18 + chalk: 4.1.2 + jest-message-util: 29.4.1 + jest-util: 29.4.1 + slash: 3.0.0 + dev: true + /@jest/core/28.1.3: resolution: {integrity: sha512-CIKBrlaKOzA7YG19BEqCw3SLIsEwjZkeJzf5bdooVnW4bH5cktqe3JX+G2YV1aK5vP8N9na1IGWFzYaTp6k6NA==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -942,14 +976,14 @@ packages: '@jest/test-result': 28.1.3 '@jest/transform': 28.1.3 '@jest/types': 28.1.3 - '@types/node': 18.7.14 + '@types/node': 18.11.18 ansi-escapes: 4.3.2 chalk: 4.1.2 - ci-info: 3.3.2 + ci-info: 3.7.1 exit: 0.1.2 graceful-fs: 4.2.10 jest-changed-files: 28.1.3 - jest-config: 28.1.3_@types+node@18.7.14 + jest-config: 28.1.3_@types+node@18.11.18 jest-haste-map: 28.1.3 jest-message-util: 28.1.3 jest-regex-util: 28.0.2 @@ -971,42 +1005,41 @@ packages: - ts-node dev: true - /@jest/core/28.1.3_ts-node@10.9.1: - resolution: {integrity: sha512-CIKBrlaKOzA7YG19BEqCw3SLIsEwjZkeJzf5bdooVnW4bH5cktqe3JX+G2YV1aK5vP8N9na1IGWFzYaTp6k6NA==} - engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + /@jest/core/29.4.1: + resolution: {integrity: sha512-RXFTohpBqpaTebNdg5l3I5yadnKo9zLBajMT0I38D0tDhreVBYv3fA8kywthI00sWxPztWLD3yjiUkewwu/wKA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: node-notifier: optional: true dependencies: - '@jest/console': 28.1.3 - '@jest/reporters': 28.1.3 - '@jest/test-result': 28.1.3 - '@jest/transform': 28.1.3 - '@jest/types': 28.1.3 - '@types/node': 18.7.14 + '@jest/console': 29.4.1 + '@jest/reporters': 29.4.1 + '@jest/test-result': 29.4.1 + '@jest/transform': 29.4.1 + '@jest/types': 29.4.1 + '@types/node': 18.11.18 ansi-escapes: 4.3.2 chalk: 4.1.2 - ci-info: 3.3.2 + ci-info: 3.7.1 exit: 0.1.2 graceful-fs: 4.2.10 - jest-changed-files: 28.1.3 - jest-config: 28.1.3_gsb7asu77en4txj3es3i65pxci - jest-haste-map: 28.1.3 - jest-message-util: 28.1.3 - jest-regex-util: 28.0.2 - jest-resolve: 28.1.3 - jest-resolve-dependencies: 28.1.3 - jest-runner: 28.1.3 - jest-runtime: 28.1.3 - jest-snapshot: 28.1.3 - jest-util: 28.1.3 - jest-validate: 28.1.3 - jest-watcher: 28.1.3 + jest-changed-files: 29.4.0 + jest-config: 29.4.1_@types+node@18.11.18 + jest-haste-map: 29.4.1 + jest-message-util: 29.4.1 + jest-regex-util: 29.2.0 + jest-resolve: 29.4.1 + jest-resolve-dependencies: 29.4.1 + jest-runner: 29.4.1 + jest-runtime: 29.4.1 + jest-snapshot: 29.4.1 + jest-util: 29.4.1 + jest-validate: 29.4.1 + jest-watcher: 29.4.1 micromatch: 4.0.5 - pretty-format: 28.1.3 - rimraf: 3.0.2 + pretty-format: 29.4.1 slash: 3.0.0 strip-ansi: 6.0.1 transitivePeerDependencies: @@ -1020,10 +1053,20 @@ packages: dependencies: '@jest/fake-timers': 28.1.3 '@jest/types': 28.1.3 - '@types/node': 18.7.14 + '@types/node': 18.11.18 jest-mock: 28.1.3 dev: true + /@jest/environment/29.4.1: + resolution: {integrity: sha512-pJ14dHGSQke7Q3mkL/UZR9ZtTOxqskZaC91NzamEH4dlKRt42W+maRBXiw/LWkdJe+P0f/zDR37+SPMplMRlPg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/fake-timers': 29.4.1 + '@jest/types': 29.4.1 + '@types/node': 18.11.18 + jest-mock: 29.4.1 + dev: true + /@jest/expect-utils/28.1.3: resolution: {integrity: sha512-wvbi9LUrHJLn3NlDW6wF2hvIMtd4JUl2QNVrjq+IBSHirgfrR3o9RnVtxzdEGO2n9JyIWwHnLfby5KzqBGg2YA==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -1031,6 +1074,13 @@ packages: jest-get-type: 28.0.2 dev: true + /@jest/expect-utils/29.4.1: + resolution: {integrity: sha512-w6YJMn5DlzmxjO00i9wu2YSozUYRBhIoJ6nQwpMYcBMtiqMGJm1QBzOf6DDgRao8dbtpDoaqLg6iiQTvv0UHhQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + jest-get-type: 29.2.0 + dev: true + /@jest/expect/28.1.3: resolution: {integrity: sha512-lzc8CpUbSoE4dqT0U+g1qODQjBRHPpCPXissXD4mS9+sWQdmmpeJ9zSH1rS1HEkrsMN0fb7nKrJ9giAR1d3wBw==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -1041,18 +1091,40 @@ packages: - supports-color dev: true + /@jest/expect/29.4.1: + resolution: {integrity: sha512-ZxKJP5DTUNF2XkpJeZIzvnzF1KkfrhEF6Rz0HGG69fHl6Bgx5/GoU3XyaeFYEjuuKSOOsbqD/k72wFvFxc3iTw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + expect: 29.4.1 + jest-snapshot: 29.4.1 + transitivePeerDependencies: + - supports-color + dev: true + /@jest/fake-timers/28.1.3: resolution: {integrity: sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: '@jest/types': 28.1.3 '@sinonjs/fake-timers': 9.1.2 - '@types/node': 18.7.14 + '@types/node': 18.11.18 jest-message-util: 28.1.3 jest-mock: 28.1.3 jest-util: 28.1.3 dev: true + /@jest/fake-timers/29.4.1: + resolution: {integrity: sha512-/1joI6rfHFmmm39JxNfmNAO3Nwm6Y0VoL5fJDy7H1AtWrD1CgRtqJbN9Ld6rhAkGO76qqp4cwhhxJ9o9kYjQMw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/types': 29.4.1 + '@sinonjs/fake-timers': 10.0.2 + '@types/node': 18.11.18 + jest-message-util: 29.4.1 + jest-mock: 29.4.1 + jest-util: 29.4.1 + dev: true + /@jest/globals/28.1.3: resolution: {integrity: sha512-XFU4P4phyryCXu1pbcqMO0GSQcYe1IsalYCDzRNyhetyeyxMcIxa11qPNDpVNLeretItNqEmYYQn1UYz/5x1NA==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -1064,6 +1136,18 @@ packages: - supports-color dev: true + /@jest/globals/29.4.1: + resolution: {integrity: sha512-znoK2EuFytbHH0ZSf2mQK2K1xtIgmaw4Da21R2C/NE/+NnItm5mPEFQmn8gmF3f0rfOlmZ3Y3bIf7bFj7DHxAA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/environment': 29.4.1 + '@jest/expect': 29.4.1 + '@jest/types': 29.4.1 + jest-mock: 29.4.1 + transitivePeerDependencies: + - supports-color + dev: true + /@jest/reporters/28.1.3: resolution: {integrity: sha512-JuAy7wkxQZVNU/V6g9xKzCGC5LVXx9FDcABKsSXp5MiKPEE2144a/vXTEDoyzjUpZKfVwp08Wqg5A4WfTMAzjg==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -1078,15 +1162,15 @@ packages: '@jest/test-result': 28.1.3 '@jest/transform': 28.1.3 '@jest/types': 28.1.3 - '@jridgewell/trace-mapping': 0.3.15 - '@types/node': 18.7.14 + '@jridgewell/trace-mapping': 0.3.17 + '@types/node': 18.11.18 chalk: 4.1.2 collect-v8-coverage: 1.0.1 exit: 0.1.2 glob: 7.2.3 graceful-fs: 4.2.10 istanbul-lib-coverage: 3.2.0 - istanbul-lib-instrument: 5.2.0 + istanbul-lib-instrument: 5.2.1 istanbul-lib-report: 3.0.0 istanbul-lib-source-maps: 4.0.1 istanbul-reports: 3.1.5 @@ -1102,18 +1186,71 @@ packages: - supports-color dev: true + /@jest/reporters/29.4.1: + resolution: {integrity: sha512-AISY5xpt2Xpxj9R6y0RF1+O6GRy9JsGa8+vK23Lmzdy1AYcpQn5ItX79wJSsTmfzPKSAcsY1LNt/8Y5Xe5LOSg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + dependencies: + '@bcoe/v8-coverage': 0.2.3 + '@jest/console': 29.4.1 + '@jest/test-result': 29.4.1 + '@jest/transform': 29.4.1 + '@jest/types': 29.4.1 + '@jridgewell/trace-mapping': 0.3.17 + '@types/node': 18.11.18 + chalk: 4.1.2 + collect-v8-coverage: 1.0.1 + exit: 0.1.2 + glob: 7.2.3 + graceful-fs: 4.2.10 + istanbul-lib-coverage: 3.2.0 + istanbul-lib-instrument: 5.2.1 + istanbul-lib-report: 3.0.0 + istanbul-lib-source-maps: 4.0.1 + istanbul-reports: 3.1.5 + jest-message-util: 29.4.1 + jest-util: 29.4.1 + jest-worker: 29.4.1 + slash: 3.0.0 + string-length: 4.0.2 + strip-ansi: 6.0.1 + v8-to-istanbul: 9.0.1 + transitivePeerDependencies: + - supports-color + dev: true + /@jest/schemas/28.1.3: resolution: {integrity: sha512-/l/VWsdt/aBXgjshLWOFyFt3IVdYypu5y2Wn2rOO1un6nkqIn8SLXzgIMYXFyYsRWDyF5EthmKJMIdJvk08grg==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: - '@sinclair/typebox': 0.24.28 + '@sinclair/typebox': 0.24.51 + dev: true + + /@jest/schemas/29.4.0: + resolution: {integrity: sha512-0E01f/gOZeNTG76i5eWWSupvSHaIINrTie7vCyjiYFKgzNdyEGd12BUv4oNBFHOqlHDbtoJi3HrQ38KCC90NsQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@sinclair/typebox': 0.25.21 dev: true /@jest/source-map/28.1.2: resolution: {integrity: sha512-cV8Lx3BeStJb8ipPHnqVw/IM2VCMWO3crWZzYodSIkxXnRcXJipCdx1JCK0K5MsJJouZQTH73mzf4vgxRaH9ww==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: - '@jridgewell/trace-mapping': 0.3.15 + '@jridgewell/trace-mapping': 0.3.17 + callsites: 3.1.0 + graceful-fs: 4.2.10 + dev: true + + /@jest/source-map/29.2.0: + resolution: {integrity: sha512-1NX9/7zzI0nqa6+kgpSdKPK+WU1p+SJk3TloWZf5MzPbxri9UEeXX5bWZAPCzbQcyuAzubcdUHA7hcNznmRqWQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jridgewell/trace-mapping': 0.3.17 callsites: 3.1.0 graceful-fs: 4.2.10 dev: true @@ -1128,6 +1265,16 @@ packages: collect-v8-coverage: 1.0.1 dev: true + /@jest/test-result/29.4.1: + resolution: {integrity: sha512-WRt29Lwt+hEgfN8QDrXqXGgCTidq1rLyFqmZ4lmJOpVArC8daXrZWkWjiaijQvgd3aOUj2fM8INclKHsQW9YyQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/console': 29.4.1 + '@jest/types': 29.4.1 + '@types/istanbul-lib-coverage': 2.0.4 + collect-v8-coverage: 1.0.1 + dev: true + /@jest/test-sequencer/28.1.3: resolution: {integrity: sha512-NIMPEqqa59MWnDi1kvXXpYbqsfQmSJsIbnd85mdVGkiDfQ9WQQTXOLsvISUfonmnBT+w85WEgneCigEEdHDFxw==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -1138,16 +1285,26 @@ packages: slash: 3.0.0 dev: true + /@jest/test-sequencer/29.4.1: + resolution: {integrity: sha512-v5qLBNSsM0eHzWLXsQ5fiB65xi49A3ILPSFQKPXzGL4Vyux0DPZAIN7NAFJa9b4BiTDP9MBF/Zqc/QA1vuiJ0w==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/test-result': 29.4.1 + graceful-fs: 4.2.10 + jest-haste-map: 29.4.1 + slash: 3.0.0 + dev: true + /@jest/transform/28.1.3: resolution: {integrity: sha512-u5dT5di+oFI6hfcLOHGTAfmUxFRrjK+vnaP0kkVow9Md/M7V/MxqQMOz/VV25UZO8pzeA9PjfTpOu6BDuwSPQA==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@jest/types': 28.1.3 - '@jridgewell/trace-mapping': 0.3.15 + '@jridgewell/trace-mapping': 0.3.17 babel-plugin-istanbul: 6.1.1 chalk: 4.1.2 - convert-source-map: 1.8.0 + convert-source-map: 1.9.0 fast-json-stable-stringify: 2.1.0 graceful-fs: 4.2.10 jest-haste-map: 28.1.3 @@ -1161,14 +1318,37 @@ packages: - supports-color dev: true + /@jest/transform/29.4.1: + resolution: {integrity: sha512-5w6YJrVAtiAgr0phzKjYd83UPbCXsBRTeYI4BXokv9Er9CcrH9hfXL/crCvP2d2nGOcovPUnlYiLPFLZrkG5Hg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@babel/core': 7.20.12 + '@jest/types': 29.4.1 + '@jridgewell/trace-mapping': 0.3.17 + babel-plugin-istanbul: 6.1.1 + chalk: 4.1.2 + convert-source-map: 2.0.0 + fast-json-stable-stringify: 2.1.0 + graceful-fs: 4.2.10 + jest-haste-map: 29.4.1 + jest-regex-util: 29.2.0 + jest-util: 29.4.1 + micromatch: 4.0.5 + pirates: 4.0.5 + slash: 3.0.0 + write-file-atomic: 5.0.0 + transitivePeerDependencies: + - supports-color + dev: true + /@jest/types/27.5.1: resolution: {integrity: sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 18.7.14 - '@types/yargs': 16.0.4 + '@types/node': 18.11.18 + '@types/yargs': 16.0.5 chalk: 4.1.2 dev: true @@ -1179,8 +1359,20 @@ packages: '@jest/schemas': 28.1.3 '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 18.7.14 - '@types/yargs': 17.0.11 + '@types/node': 18.11.18 + '@types/yargs': 17.0.22 + chalk: 4.1.2 + dev: true + + /@jest/types/29.4.1: + resolution: {integrity: sha512-zbrAXDUOnpJ+FMST2rV7QZOgec8rskg2zv8g2ajeqitp4tvZiyqTCYXANrKsM+ryj5o+LI+ZN2EgU9drrkiwSA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/schemas': 29.4.0 + '@types/istanbul-lib-coverage': 2.0.4 + '@types/istanbul-reports': 3.0.1 + '@types/node': 18.11.18 + '@types/yargs': 17.0.22 chalk: 4.1.2 dev: true @@ -1198,30 +1390,25 @@ packages: dependencies: '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.4.14 - '@jridgewell/trace-mapping': 0.3.15 + '@jridgewell/trace-mapping': 0.3.17 dev: true /@jridgewell/resolve-uri/3.1.0: resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} engines: {node: '>=6.0.0'} + dev: true /@jridgewell/set-array/1.1.2: resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} engines: {node: '>=6.0.0'} dev: true - /@jridgewell/source-map/0.3.2: - resolution: {integrity: sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==} - dependencies: - '@jridgewell/gen-mapping': 0.3.2 - '@jridgewell/trace-mapping': 0.3.15 - dev: true - /@jridgewell/sourcemap-codec/1.4.14: resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} + dev: true - /@jridgewell/trace-mapping/0.3.15: - resolution: {integrity: sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==} + /@jridgewell/trace-mapping/0.3.17: + resolution: {integrity: sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==} dependencies: '@jridgewell/resolve-uri': 3.1.0 '@jridgewell/sourcemap-codec': 1.4.14 @@ -1232,15 +1419,500 @@ packages: dependencies: '@jridgewell/resolve-uri': 3.1.0 '@jridgewell/sourcemap-codec': 1.4.14 + dev: true + + /@libp2p/crypto/1.0.11_uint8arraylist@2.4.3: + resolution: {integrity: sha512-DWiG/0fKIDnkhTF3HoCu2OzkuKXysR/UKGdM9JZkT6F9jS9rwZYEwmacs4ybw1qyufyH+pMXV3/vuUu2Q/UxLw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-keys': 1.0.7 + '@noble/ed25519': 1.7.1 + '@noble/secp256k1': 1.7.1 + err-code: 3.0.1 + multiformats: 11.0.1 + node-forge: 1.3.1 + protons-runtime: 4.0.2_uint8arraylist@2.4.3 + uint8arrays: 4.0.3 + transitivePeerDependencies: + - uint8arraylist + dev: false + + /@libp2p/crypto/1.0.8_uint8arraylist@2.4.3: + resolution: {integrity: sha512-L0nOms1gJKwT5HRzDiEzTon+VOqilez6jIx+J27aSRJjgK+PpWGP2pmo5t0K60EGbIkDK0XDMjQkj0TUecDk5g==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-keys': 1.0.7 + '@noble/ed25519': 1.7.1 + '@noble/secp256k1': 1.7.1 + err-code: 3.0.1 + multiformats: 10.0.3 + node-forge: 1.3.1 + protons-runtime: 4.0.2_uint8arraylist@2.4.3 + uint8arrays: 4.0.3 + transitivePeerDependencies: + - uint8arraylist + dev: false + + /@libp2p/interface-address-manager/2.0.4: + resolution: {integrity: sha512-RcSi+z+xpVKJXq3BsfLf2rq8zb8VTAFown6uJBu02towMc0enYqqhwlV9DxcCaC573MgQ7gY2s/3XvxQdFraVA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interfaces': 3.3.1 + '@multiformats/multiaddr': 11.3.0 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interface-connection-encrypter/3.0.6: + resolution: {integrity: sha512-LwyYBN/aSa3IPCe7gBxffx/vaC0rFxAXlCbx4QGaWGtg6qK80Ouj89LEDWb3HkMbecNVWaV4TEqJIM5WnAAx1Q==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-peer-id': 2.0.1 + it-stream-types: 1.0.5 + uint8arraylist: 2.4.3 + dev: false + + /@libp2p/interface-connection-manager/1.3.7: + resolution: {integrity: sha512-GyRa7FXtwjbch4ucFa/jj6vcaQT2RyhUbH3q0tIOTzjntABTMzQrhn3BWOGU5deRp2K7cVOB/OzrdhHdGUxYQA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-connection': 3.0.8 + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/interfaces': 3.3.1 + '@multiformats/multiaddr': 11.3.0 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interface-connection/3.0.8: + resolution: {integrity: sha512-JiI9xVPkiSgW9hkvHWA4e599OLPNSACrpgtx6UffHG9N+Jpt0IOmM4iLic8bSIYkZJBOQFG1Sv/gVNB98Uq0Nw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/interfaces': 3.3.1 + '@multiformats/multiaddr': 11.3.0 + it-stream-types: 1.0.5 + uint8arraylist: 2.4.3 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interface-content-routing/2.0.1: + resolution: {integrity: sha512-M3rYXMhH+102qyZzc0GzkKq10x100nWVXGns2qtN3O82Hy/6FxXdgLUGIGWMdCj/7ilaVAuTwx8V3+DGmDIiMw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-peer-info': 1.0.8 + '@libp2p/interfaces': 3.3.1 + multiformats: 11.0.1 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interface-dht/2.0.1: + resolution: {integrity: sha512-+yEbt+1hMTR1bITzYyE771jEujimPXqDyFm8T1a8slMpeOD9z5wmLfuCWif8oGZJzXX5YqldWwSwytJQgWXL9g==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-peer-discovery': 1.0.5 + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/interface-peer-info': 1.0.8 + '@libp2p/interfaces': 3.3.1 + multiformats: 11.0.1 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interface-keychain/2.0.4: + resolution: {integrity: sha512-RCH0PL9um/ejsPiWIOzxFzjPzL2nT2tRUtCDo1aBQqoBi7eYp4I4ya1KbzgWDPTmNuuFtCReRMQsZ7/KVirKPA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-peer-id': 2.0.1 + multiformats: 11.0.1 + dev: false + + /@libp2p/interface-keys/1.0.7: + resolution: {integrity: sha512-DRMPY9LfcnGJKrjaqIkY62U3fW2dya3VLy4x986ExtMrGn4kxIHeQ1IKk8/Vs9CJHTKmXEMID4of1Cjnw4aJpA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false + + /@libp2p/interface-libp2p/1.1.1: + resolution: {integrity: sha512-cELZZv/tzFxbUzL3Jvbk+AM2J6kDhIUNBIMMMLuR3LIHfmVJkh31G3ChLUZuKhBwB8wXJ1Ssev3fk1tfz/5DWA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-connection': 3.0.8 + '@libp2p/interface-content-routing': 2.0.1 + '@libp2p/interface-dht': 2.0.1 + '@libp2p/interface-keychain': 2.0.4 + '@libp2p/interface-metrics': 4.0.5 + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/interface-peer-info': 1.0.8 + '@libp2p/interface-peer-routing': 1.0.7 + '@libp2p/interface-peer-store': 1.2.8 + '@libp2p/interface-pubsub': 3.0.6 + '@libp2p/interface-registrar': 2.0.8 + '@libp2p/interfaces': 3.3.1 + '@multiformats/multiaddr': 11.3.0 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interface-metrics/4.0.5: + resolution: {integrity: sha512-srBeky1ugu1Bzw9VHGg8ta15oLh+P2PEIsg0cI9qzDbtCJaWGq/IIetpfuaJNVOuBD1CGEEbITNmsk4tDwIE0w==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-connection': 3.0.8 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interface-peer-discovery/1.0.5: + resolution: {integrity: sha512-R0TN/vDaCJLvRhop0y4qoPqapHxX4AEQDEtqmpayAA1BuPgbBq4fS4mepR3FAMcNva/szeqVCDuI4gDejtCaVg==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-peer-info': 1.0.8 + '@libp2p/interfaces': 3.3.1 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interface-peer-id/2.0.1: + resolution: {integrity: sha512-k01hKHTAZWMOiBC+yyFsmBguEMvhPkXnQtqLtFqga2fVZu8Zve7zFAtQYLhQjeJ4/apeFtO6ddTS8mCE6hl4OA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + multiformats: 11.0.1 + dev: false + + /@libp2p/interface-peer-info/1.0.8: + resolution: {integrity: sha512-LRvZt/9bZFYW7seAwuSg2hZuPl+FRTAsij5HtyvVwmpfVxipm6yQrKjQ+LiK/SZhIDVsSJ+UjF0mluJj+jeAzQ==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-peer-id': 2.0.1 + '@multiformats/multiaddr': 11.3.0 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interface-peer-routing/1.0.7: + resolution: {integrity: sha512-0zxOOmKD6nA3LaArcP9UdRO4vJzEyoRtE34vvQP41UxjcSTaj4em5Fl4Q0RuOMXYPtRp+LdXRYbjJgCSeQoxwA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/interface-peer-info': 1.0.8 + '@libp2p/interfaces': 3.3.1 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interface-peer-store/1.2.8: + resolution: {integrity: sha512-FM9VLmpg9CUBKZ2RW+J7RrQfQVMksLiC8oqENqHgb/VkPJY3kafbn7HIi0NcK6H/H5VcwBIhL15SUJk66O1K6g==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/interface-peer-info': 1.0.8 + '@libp2p/interface-record': 2.0.6 + '@libp2p/interfaces': 3.3.1 + '@multiformats/multiaddr': 11.3.0 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interface-pubsub/3.0.6: + resolution: {integrity: sha512-c1aVHAhxmEh9IpLBgJyCsMscVDl7YUeP1Iq6ILEQoWiPJhNpQqdfmqyk7ZfrzuBU19VFe1EqH0bLuLDbtfysTQ==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-connection': 3.0.8 + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/interfaces': 3.3.1 + it-pushable: 3.1.2 + uint8arraylist: 2.4.3 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interface-record/2.0.6: + resolution: {integrity: sha512-4EtDkY3sbYapWM8++gVHlv31HZXoLmj9I7CRXUKXzFkVE0GLK/A8jYWl7K0lmf2juPjeYm2eHITeA9/wAtIS3w==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-peer-id': 2.0.1 + uint8arraylist: 2.4.3 + dev: false + + /@libp2p/interface-registrar/2.0.8: + resolution: {integrity: sha512-WbnXB09QF41zZzNgDUAZrRMilqgB7wBMTsSvql8xdDcws+jbaX4wE0iEpRXg1hyd0pz4mooIcMRaH1NiEQ5D8w==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-connection': 3.0.8 + '@libp2p/interface-peer-id': 2.0.1 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interface-stream-muxer/3.0.5: + resolution: {integrity: sha512-815aJ+qVswNcTEOuOUTcB+7OLzAfROyjjqoWpK0bD0P/xqTHqOQcqdaDuK02zPuAZqYq9uR3+SoBasrCg6k3zw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-connection': 3.0.8 + '@libp2p/interfaces': 3.3.1 + it-stream-types: 1.0.5 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interface-transport/2.1.1: + resolution: {integrity: sha512-xDM/s8iPN/XfNqD9qNelibRMPKkhOLinXwQeNtoTZjarq+Cg6rtO6/5WBG/49hyI3+r+5jd2eykjPGQbb86NFQ==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-connection': 3.0.8 + '@libp2p/interface-stream-muxer': 3.0.5 + '@libp2p/interfaces': 3.3.1 + '@multiformats/multiaddr': 11.3.0 + it-stream-types: 1.0.5 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/interfaces/3.3.1: + resolution: {integrity: sha512-3N+goQt74SmaVOjwpwMPKLNgh1uDQGw8GD12c40Kc86WOq0qvpm3NfACW+H8Su2X6KmWjCSMzk9JWs9+8FtUfg==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false + + /@libp2p/logger/2.0.5: + resolution: {integrity: sha512-WEhxsc7+gsfuTcljI4vSgW/H2f18aBaC+JiO01FcX841Wxe9szjzHdBLDh9eqygUlzoK0LEeIBfctN7ibzus5A==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-peer-id': 2.0.1 + debug: 4.3.4 + interface-datastore: 7.0.4 + multiformats: 11.0.1 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/mplex/7.1.1: + resolution: {integrity: sha512-0owK1aWgXXtjiohXtjwLV7Ehjdj96eBtsapVt7AzlHA+W8uYnI+x058thq3MisyMDlHiiE3BTh6fEf+t2/0dUw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-connection': 3.0.8 + '@libp2p/interface-stream-muxer': 3.0.5 + '@libp2p/logger': 2.0.5 + abortable-iterator: 4.0.2 + any-signal: 3.0.1 + benchmark: 2.1.4 + err-code: 3.0.1 + it-batched-bytes: 1.0.0 + it-pushable: 3.1.2 + it-stream-types: 1.0.5 + rate-limiter-flexible: 2.4.1 + uint8arraylist: 2.4.3 + uint8arrays: 4.0.3 + varint: 6.0.0 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/multistream-select/3.1.2: + resolution: {integrity: sha512-NfF0fwQM4sqiLuNGBVc9z2mfz3OigOfyLJ5zekRBGYHkbKWrBRFS3FligUPr9roCOzH6ojjDkKVd5aK9/llfJQ==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interfaces': 3.3.1 + '@libp2p/logger': 2.0.5 + abortable-iterator: 4.0.2 + err-code: 3.0.1 + it-first: 2.0.0 + it-handshake: 4.1.2 + it-length-prefixed: 8.0.4 + it-merge: 2.0.0 + it-pipe: 2.0.5 + it-pushable: 3.1.2 + it-reader: 6.0.2 + it-stream-types: 1.0.5 + p-defer: 4.0.0 + uint8arraylist: 2.4.3 + uint8arrays: 4.0.3 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/peer-collections/3.0.0: + resolution: {integrity: sha512-rVhfDmkVzfBVR4scAfaKb05htZENx01PYt2USi1EnODyoo2c2U2W5tfOfyaKI/4D+ayQDOjT27G0ZCyAgwkYGw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/peer-id': 2.0.1 + dev: false + + /@libp2p/peer-id-factory/2.0.1: + resolution: {integrity: sha512-CRJmqwNQhDC51sQ9lf6EqEY8HuywwymMVffL2kIYI5ts5k+6gvIXzoSxLf3V3o+OxcroXG4KG0uGxxAi5DUXSA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/crypto': 1.0.8_uint8arraylist@2.4.3 + '@libp2p/interface-keys': 1.0.7 + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/peer-id': 2.0.1 + multiformats: 11.0.1 + protons-runtime: 4.0.2_uint8arraylist@2.4.3 + uint8arraylist: 2.4.3 + uint8arrays: 4.0.3 + dev: false + + /@libp2p/peer-id/2.0.1: + resolution: {integrity: sha512-uGIR4rS+j+IzzIu0kih4MonZEfRmjGNfXaSPMIFOeMxZItZT6TIpxoVNYxHl4YtneSFKzlLnf9yx9EhRcyfy8Q==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/interfaces': 3.3.1 + multiformats: 11.0.1 + uint8arrays: 4.0.3 + dev: false + + /@libp2p/peer-record/5.0.0: + resolution: {integrity: sha512-qGaqYQSRqI/vol1NEMR9Z3ncLjIkyIF0o/CQYXzXCDjA91i9+0iMjXGgIgBLn3bfA1b9pHuz4HvwjgYUKMYOkQ==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/crypto': 1.0.11_uint8arraylist@2.4.3 + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/interface-record': 2.0.6 + '@libp2p/logger': 2.0.5 + '@libp2p/peer-id': 2.0.1 + '@libp2p/utils': 3.0.4 + '@multiformats/multiaddr': 11.3.0 + err-code: 3.0.1 + interface-datastore: 7.0.4 + it-all: 2.0.0 + it-filter: 2.0.0 + it-foreach: 1.0.0 + it-map: 2.0.0 + it-pipe: 2.0.5 + multiformats: 11.0.1 + protons-runtime: 4.0.2_uint8arraylist@2.4.3 + uint8-varint: 1.0.4 + uint8arraylist: 2.4.3 + uint8arrays: 4.0.3 + varint: 6.0.0 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/peer-store/6.0.0: + resolution: {integrity: sha512-7GSqRYkJR3E0Vo96XH84X6KNPdwOE1t6jb7jegYzvzKDZMFaceJUZg9om3+ZHCUbethnYuqsY7j0c7OHCB40nA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/interface-peer-info': 1.0.8 + '@libp2p/interface-peer-store': 1.2.8 + '@libp2p/interface-record': 2.0.6 + '@libp2p/interfaces': 3.3.1 + '@libp2p/logger': 2.0.5 + '@libp2p/peer-id': 2.0.1 + '@libp2p/peer-record': 5.0.0 + '@multiformats/multiaddr': 11.3.0 + err-code: 3.0.1 + interface-datastore: 7.0.4 + it-all: 2.0.0 + it-filter: 2.0.0 + it-foreach: 1.0.0 + it-map: 2.0.0 + it-pipe: 2.0.5 + mortice: 3.0.1 + multiformats: 11.0.1 + protons-runtime: 4.0.2_uint8arraylist@2.4.3 + uint8arraylist: 2.4.3 + uint8arrays: 4.0.3 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/tracked-map/3.0.2: + resolution: {integrity: sha512-mtsZWf2ntttuCrmEIro2p1ceCAaKde2TzT/99DZlkGdJN/Mo1jZgXq7ltZjWc8G3DAlgs+0ygjMzNKcZzAveuQ==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-metrics': 4.0.5 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/utils/3.0.4: + resolution: {integrity: sha512-EWJNJtlop2ylmGE1BNiMA0u4eTLKoY0LbZ/DOvSDs9VlGSLua9J+LUjp6XV8lazGv7l1rOLiU+1hP5fcmg1+eg==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@achingbrain/ip-address': 8.1.0 + '@libp2p/interface-connection': 3.0.8 + '@libp2p/interface-peer-store': 1.2.8 + '@libp2p/logger': 2.0.5 + '@multiformats/multiaddr': 11.3.0 + abortable-iterator: 4.0.2 + err-code: 3.0.1 + is-loopback-addr: 2.0.1 + it-stream-types: 1.0.5 + private-ip: 3.0.0 + uint8arraylist: 2.4.3 + transitivePeerDependencies: + - supports-color + dev: false + + /@libp2p/websockets/5.0.3: + resolution: {integrity: sha512-/0ie47LEKU5VVeaeE/T6UbvaZbUSmyWXu4KcojY+zl809oONFjagKuZB6T7jJQqAV7WCq7O+ulC2tFOwbID08w==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/interface-connection': 3.0.8 + '@libp2p/interface-transport': 2.1.1 + '@libp2p/interfaces': 3.3.1 + '@libp2p/logger': 2.0.5 + '@libp2p/utils': 3.0.4 + '@multiformats/mafmt': 11.0.3 + '@multiformats/multiaddr': 11.3.0 + '@multiformats/multiaddr-to-uri': 9.0.2 + abortable-iterator: 4.0.2 + it-ws: 5.0.6 + p-defer: 4.0.0 + p-timeout: 6.1.0 + wherearewe: 2.0.1 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + dev: false /@multiformats/base-x/4.0.1: resolution: {integrity: sha512-eMk0b9ReBbV23xXU693TAIrLyeO5iTgBZGSJfpqriG8UkYvr/hC9u9pyMlAakDNHWmbhMZCDs6KQO0jzKD8OTw==} + dev: true - /@noble/ed25519/1.6.1: - resolution: {integrity: sha512-Gptpue6qPmg7p1E5LBO5GDtXw5WMc2DVtUmu4EQequOcoCvum1dT9sY6s9M8aSJWq9YopCN4jmTOAvqMdw3q7w==} + /@multiformats/mafmt/11.0.3: + resolution: {integrity: sha512-DvCQeZJgaC4kE3BLqMuW3gQkNAW14Z7I+yMt30Ze+wkfHkWSp+bICcHGihhtgfzYCumHA/vHlJ9n54mrCcmnvQ==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@multiformats/multiaddr': 11.3.0 + transitivePeerDependencies: + - supports-color + dev: false - /@noble/secp256k1/1.6.3: - resolution: {integrity: sha512-T04e4iTurVy7I8Sw4+c5OSN9/RkPlo1uKxAomtxQNLq8j1uPAqnsqG1bqvY3Jv7c13gyr6dui0zmh/I3+f/JaQ==} + /@multiformats/multiaddr-to-uri/9.0.2: + resolution: {integrity: sha512-vrWmfFadmix5Ab9l//oRQdQ7O3J5bGJpJRMSm21bHlQB0XV4xtNU6vMZBVXeu3Su79LgflEp37cjTFE3yKf3Hw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@multiformats/multiaddr': 11.3.0 + transitivePeerDependencies: + - supports-color + dev: false + + /@multiformats/multiaddr/11.3.0: + resolution: {integrity: sha512-Inrmp986nHe92pgYyOWNVnB8QDmYe5EhR/7TStc46O4YEm87pbc1i4DWiTlEJ6tOpL8V6IBH5ol8BZsIaN+Tww==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@chainsafe/is-ip': 2.0.1 + dns-over-http-resolver: 2.1.1 + err-code: 3.0.1 + multiformats: 11.0.1 + uint8arrays: 4.0.3 + varint: 6.0.0 + transitivePeerDependencies: + - supports-color + dev: false + + /@noble/ed25519/1.7.1: + resolution: {integrity: sha512-Rk4SkJFaXZiznFyC/t77Q0NKS4FL7TLJJsVG2V2oiEq3kJVeTdxysEe/yRWSpnWMe808XRDJ+VFh5pt/FN5plw==} + + /@noble/secp256k1/1.7.1: + resolution: {integrity: sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==} /@protobufjs/aspromise/1.1.2: resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==} @@ -1275,20 +1947,64 @@ packages: /@protobufjs/utf8/1.1.0: resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} - /@sinclair/typebox/0.24.28: - resolution: {integrity: sha512-dgJd3HLOkLmz4Bw50eZx/zJwtBq65nms3N9VBYu5LTjJ883oBFkTyXRlCB/ZGGwqYpJJHA5zW2Ibhl5ngITfow==} + /@rollup/plugin-inject/5.0.3: + resolution: {integrity: sha512-411QlbL+z2yXpRWFXSmw/teQRMkXcAAC8aYTemc15gwJRpvEVDQwoe+N/HTFD8RFG8+88Bme9DK2V9CVm7hJdA==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0 + peerDependenciesMeta: + rollup: + optional: true + dependencies: + '@rollup/pluginutils': 5.0.2 + estree-walker: 2.0.2 + magic-string: 0.27.0 dev: true - /@sinonjs/commons/1.8.3: - resolution: {integrity: sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==} + /@rollup/pluginutils/5.0.2: + resolution: {integrity: sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0 + peerDependenciesMeta: + rollup: + optional: true + dependencies: + '@types/estree': 1.0.0 + estree-walker: 2.0.2 + picomatch: 2.3.1 + dev: true + + /@sinclair/typebox/0.24.51: + resolution: {integrity: sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA==} + dev: true + + /@sinclair/typebox/0.25.21: + resolution: {integrity: sha512-gFukHN4t8K4+wVC+ECqeqwzBDeFeTzBXroBTqE6vcWrQGbEUpHO7LYdG0f4xnvYq4VOEwITSlHlp0JBAIFMS/g==} + dev: true + + /@sinonjs/commons/1.8.6: + resolution: {integrity: sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==} dependencies: type-detect: 4.0.8 dev: true + /@sinonjs/commons/2.0.0: + resolution: {integrity: sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==} + dependencies: + type-detect: 4.0.8 + dev: true + + /@sinonjs/fake-timers/10.0.2: + resolution: {integrity: sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==} + dependencies: + '@sinonjs/commons': 2.0.0 + dev: true + /@sinonjs/fake-timers/9.1.2: resolution: {integrity: sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==} dependencies: - '@sinonjs/commons': 1.8.3 + '@sinonjs/commons': 1.8.6 dev: true /@sovpro/delimited-stream/1.1.0: @@ -1382,24 +2098,28 @@ packages: /@tsconfig/node10/1.0.9: resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} + dev: true /@tsconfig/node12/1.0.11: resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} + dev: true /@tsconfig/node14/1.0.3: resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} + dev: true /@tsconfig/node16/1.0.3: resolution: {integrity: sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==} + dev: true - /@types/babel__core/7.1.19: - resolution: {integrity: sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==} + /@types/babel__core/7.20.0: + resolution: {integrity: sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==} dependencies: - '@babel/parser': 7.20.7 + '@babel/parser': 7.20.15 '@babel/types': 7.20.7 '@types/babel__generator': 7.6.4 '@types/babel__template': 7.4.1 - '@types/babel__traverse': 7.18.0 + '@types/babel__traverse': 7.18.3 dev: true /@types/babel__generator/7.6.4: @@ -1411,12 +2131,12 @@ packages: /@types/babel__template/7.4.1: resolution: {integrity: sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==} dependencies: - '@babel/parser': 7.20.7 + '@babel/parser': 7.20.15 '@babel/types': 7.20.7 dev: true - /@types/babel__traverse/7.18.0: - resolution: {integrity: sha512-v4Vwdko+pgymgS+A2UIaJru93zQd85vIGWObM5ekZNdXCKtDYqATlEYnWgfo86Q6I1Lh0oXnksDnMU1cwmlPDw==} + /@types/babel__traverse/7.18.3: + resolution: {integrity: sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==} dependencies: '@babel/types': 7.20.7 dev: true @@ -1427,28 +2147,14 @@ packages: base-x: 3.0.9 dev: true - /@types/eslint-scope/3.7.4: - resolution: {integrity: sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==} - dependencies: - '@types/eslint': 8.4.10 - '@types/estree': 0.0.51 + /@types/estree/1.0.0: + resolution: {integrity: sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==} dev: true - /@types/eslint/8.4.10: - resolution: {integrity: sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw==} + /@types/graceful-fs/4.1.6: + resolution: {integrity: sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==} dependencies: - '@types/estree': 0.0.51 - '@types/json-schema': 7.0.11 - dev: true - - /@types/estree/0.0.51: - resolution: {integrity: sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==} - dev: true - - /@types/graceful-fs/4.1.5: - resolution: {integrity: sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==} - dependencies: - '@types/node': 18.7.14 + '@types/node': 18.11.18 dev: true /@types/istanbul-lib-coverage/2.0.4: @@ -1474,32 +2180,43 @@ packages: pretty-format: 27.5.1 dev: true - /@types/json-schema/7.0.11: - resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==} + /@types/jest/29.4.0: + resolution: {integrity: sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ==} + dependencies: + expect: 29.4.1 + pretty-format: 29.4.1 dev: true /@types/long/4.0.2: resolution: {integrity: sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==} + dev: true /@types/minimatch/3.0.5: resolution: {integrity: sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==} + dev: true /@types/node/16.11.59: resolution: {integrity: sha512-6u+36Dj3aDzhfBVUf/mfmc92OEdzQ2kx2jcXGdigfl70E/neV21ZHE6UCz4MDzTRcVqGAM27fk+DLXvyDsn3Jw==} + dev: true - /@types/node/18.7.14: - resolution: {integrity: sha512-6bbDaETVi8oyIARulOE9qF1/Qdi/23z6emrUh0fNJRUmjznqrixD4MpGDdgOFk5Xb0m2H6Xu42JGdvAxaJR/wA==} + /@types/node/18.11.18: + resolution: {integrity: sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA==} /@types/platform/1.3.4: resolution: {integrity: sha512-U0o4K+GNiK0PNxoDwd8xRnvLVe4kzei6opn3/FCjAriqaP+rfrDdSl1kP/hLL6Y3/Y3hhGnBwD4dCkkAqs1W/Q==} dev: true - /@types/prettier/2.7.0: - resolution: {integrity: sha512-RI1L7N4JnW5gQw2spvL7Sllfuf1SaHdrZpCHiBlCXjIlufi1SMNnbu2teze3/QE67Fg2tBlH7W+mi4hVNk4p0A==} + /@types/prettier/2.7.2: + resolution: {integrity: sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==} dev: true /@types/retry/0.12.0: resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==} + dev: true + + /@types/retry/0.12.1: + resolution: {integrity: sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==} + dev: false /@types/stack-utils/2.0.1: resolution: {integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==} @@ -1513,20 +2230,21 @@ packages: resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==} dev: true - /@types/yargs/16.0.4: - resolution: {integrity: sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==} + /@types/yargs/16.0.5: + resolution: {integrity: sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==} dependencies: '@types/yargs-parser': 21.0.0 dev: true - /@types/yargs/17.0.11: - resolution: {integrity: sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==} + /@types/yargs/17.0.22: + resolution: {integrity: sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==} dependencies: '@types/yargs-parser': 21.0.0 dev: true /@vascosantos/moving-average/1.1.0: resolution: {integrity: sha512-MVEJ4vWAPNbrGLjz7ITnHYg+YXZ6ijAqtH5/cHwSoCpbvuJ98aLXwFfPKAUfZpJMQR5uXB58UJajbY130IRF/w==} + dev: true /@wasmer/wasi/0.12.0: resolution: {integrity: sha512-FJhLZKAfLWm/yjQI7eCRHNbA8ezmb7LSpUYFkHruZXs2mXk2+DaQtSElEtOoNrVQ4vApTyVaAd5/b7uEu8w6wQ==} @@ -1543,315 +2261,6 @@ packages: pako: 1.0.11 tar-stream: 2.2.0 - /@webassemblyjs/ast/1.11.1: - resolution: {integrity: sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==} - dependencies: - '@webassemblyjs/helper-numbers': 1.11.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.1 - dev: true - - /@webassemblyjs/ast/1.9.0: - resolution: {integrity: sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==} - dependencies: - '@webassemblyjs/helper-module-context': 1.9.0 - '@webassemblyjs/helper-wasm-bytecode': 1.9.0 - '@webassemblyjs/wast-parser': 1.9.0 - dev: true - - /@webassemblyjs/floating-point-hex-parser/1.11.1: - resolution: {integrity: sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==} - dev: true - - /@webassemblyjs/floating-point-hex-parser/1.9.0: - resolution: {integrity: sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==} - dev: true - - /@webassemblyjs/helper-api-error/1.11.1: - resolution: {integrity: sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==} - dev: true - - /@webassemblyjs/helper-api-error/1.9.0: - resolution: {integrity: sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==} - dev: true - - /@webassemblyjs/helper-buffer/1.11.1: - resolution: {integrity: sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==} - dev: true - - /@webassemblyjs/helper-buffer/1.9.0: - resolution: {integrity: sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==} - dev: true - - /@webassemblyjs/helper-code-frame/1.9.0: - resolution: {integrity: sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==} - dependencies: - '@webassemblyjs/wast-printer': 1.9.0 - dev: true - - /@webassemblyjs/helper-fsm/1.9.0: - resolution: {integrity: sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==} - dev: true - - /@webassemblyjs/helper-module-context/1.9.0: - resolution: {integrity: sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==} - dependencies: - '@webassemblyjs/ast': 1.9.0 - dev: true - - /@webassemblyjs/helper-numbers/1.11.1: - resolution: {integrity: sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==} - dependencies: - '@webassemblyjs/floating-point-hex-parser': 1.11.1 - '@webassemblyjs/helper-api-error': 1.11.1 - '@xtuc/long': 4.2.2 - dev: true - - /@webassemblyjs/helper-wasm-bytecode/1.11.1: - resolution: {integrity: sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==} - dev: true - - /@webassemblyjs/helper-wasm-bytecode/1.9.0: - resolution: {integrity: sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==} - dev: true - - /@webassemblyjs/helper-wasm-section/1.11.1: - resolution: {integrity: sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==} - dependencies: - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/helper-buffer': 1.11.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.1 - '@webassemblyjs/wasm-gen': 1.11.1 - dev: true - - /@webassemblyjs/helper-wasm-section/1.9.0: - resolution: {integrity: sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==} - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/helper-buffer': 1.9.0 - '@webassemblyjs/helper-wasm-bytecode': 1.9.0 - '@webassemblyjs/wasm-gen': 1.9.0 - dev: true - - /@webassemblyjs/ieee754/1.11.1: - resolution: {integrity: sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==} - dependencies: - '@xtuc/ieee754': 1.2.0 - dev: true - - /@webassemblyjs/ieee754/1.9.0: - resolution: {integrity: sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==} - dependencies: - '@xtuc/ieee754': 1.2.0 - dev: true - - /@webassemblyjs/leb128/1.11.1: - resolution: {integrity: sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==} - dependencies: - '@xtuc/long': 4.2.2 - dev: true - - /@webassemblyjs/leb128/1.9.0: - resolution: {integrity: sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==} - dependencies: - '@xtuc/long': 4.2.2 - dev: true - - /@webassemblyjs/utf8/1.11.1: - resolution: {integrity: sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==} - dev: true - - /@webassemblyjs/utf8/1.9.0: - resolution: {integrity: sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==} - dev: true - - /@webassemblyjs/wasm-edit/1.11.1: - resolution: {integrity: sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==} - dependencies: - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/helper-buffer': 1.11.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.1 - '@webassemblyjs/helper-wasm-section': 1.11.1 - '@webassemblyjs/wasm-gen': 1.11.1 - '@webassemblyjs/wasm-opt': 1.11.1 - '@webassemblyjs/wasm-parser': 1.11.1 - '@webassemblyjs/wast-printer': 1.11.1 - dev: true - - /@webassemblyjs/wasm-edit/1.9.0: - resolution: {integrity: sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==} - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/helper-buffer': 1.9.0 - '@webassemblyjs/helper-wasm-bytecode': 1.9.0 - '@webassemblyjs/helper-wasm-section': 1.9.0 - '@webassemblyjs/wasm-gen': 1.9.0 - '@webassemblyjs/wasm-opt': 1.9.0 - '@webassemblyjs/wasm-parser': 1.9.0 - '@webassemblyjs/wast-printer': 1.9.0 - dev: true - - /@webassemblyjs/wasm-gen/1.11.1: - resolution: {integrity: sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==} - dependencies: - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.1 - '@webassemblyjs/ieee754': 1.11.1 - '@webassemblyjs/leb128': 1.11.1 - '@webassemblyjs/utf8': 1.11.1 - dev: true - - /@webassemblyjs/wasm-gen/1.9.0: - resolution: {integrity: sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==} - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/helper-wasm-bytecode': 1.9.0 - '@webassemblyjs/ieee754': 1.9.0 - '@webassemblyjs/leb128': 1.9.0 - '@webassemblyjs/utf8': 1.9.0 - dev: true - - /@webassemblyjs/wasm-opt/1.11.1: - resolution: {integrity: sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==} - dependencies: - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/helper-buffer': 1.11.1 - '@webassemblyjs/wasm-gen': 1.11.1 - '@webassemblyjs/wasm-parser': 1.11.1 - dev: true - - /@webassemblyjs/wasm-opt/1.9.0: - resolution: {integrity: sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==} - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/helper-buffer': 1.9.0 - '@webassemblyjs/wasm-gen': 1.9.0 - '@webassemblyjs/wasm-parser': 1.9.0 - dev: true - - /@webassemblyjs/wasm-parser/1.11.1: - resolution: {integrity: sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==} - dependencies: - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/helper-api-error': 1.11.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.1 - '@webassemblyjs/ieee754': 1.11.1 - '@webassemblyjs/leb128': 1.11.1 - '@webassemblyjs/utf8': 1.11.1 - dev: true - - /@webassemblyjs/wasm-parser/1.9.0: - resolution: {integrity: sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==} - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/helper-api-error': 1.9.0 - '@webassemblyjs/helper-wasm-bytecode': 1.9.0 - '@webassemblyjs/ieee754': 1.9.0 - '@webassemblyjs/leb128': 1.9.0 - '@webassemblyjs/utf8': 1.9.0 - dev: true - - /@webassemblyjs/wast-parser/1.9.0: - resolution: {integrity: sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==} - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/floating-point-hex-parser': 1.9.0 - '@webassemblyjs/helper-api-error': 1.9.0 - '@webassemblyjs/helper-code-frame': 1.9.0 - '@webassemblyjs/helper-fsm': 1.9.0 - '@xtuc/long': 4.2.2 - dev: true - - /@webassemblyjs/wast-printer/1.11.1: - resolution: {integrity: sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==} - dependencies: - '@webassemblyjs/ast': 1.11.1 - '@xtuc/long': 4.2.2 - dev: true - - /@webassemblyjs/wast-printer/1.9.0: - resolution: {integrity: sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==} - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/wast-parser': 1.9.0 - '@xtuc/long': 4.2.2 - dev: true - - /@webpack-cli/configtest/1.2.0_dfxgqfcw6epibhmjfd2ethbqbi: - resolution: {integrity: sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==} - peerDependencies: - webpack: 4.x.x || 5.x.x - webpack-cli: 4.x.x - dependencies: - webpack: 4.46.0_webpack-cli@4.10.0 - webpack-cli: 4.10.0_webpack@4.46.0 - dev: true - - /@webpack-cli/configtest/2.0.1_rjsyjcrmk25kqsjzwkvj3a2evq: - resolution: {integrity: sha512-njsdJXJSiS2iNbQVS0eT8A/KPnmyH4pv1APj2K0d1wrZcBLw+yppxOy4CGqa0OxDJkzfL/XELDhD8rocnIwB5A==} - engines: {node: '>=14.15.0'} - peerDependencies: - webpack: 5.x.x - webpack-cli: 5.x.x - dependencies: - webpack: 5.75.0_webpack-cli@5.0.1 - webpack-cli: 5.0.1_webpack@5.75.0 - dev: true - - /@webpack-cli/info/1.5.0_webpack-cli@4.10.0: - resolution: {integrity: sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==} - peerDependencies: - webpack-cli: 4.x.x - dependencies: - envinfo: 7.8.1 - webpack-cli: 4.10.0_webpack@4.46.0 - dev: true - - /@webpack-cli/info/2.0.1_rjsyjcrmk25kqsjzwkvj3a2evq: - resolution: {integrity: sha512-fE1UEWTwsAxRhrJNikE7v4EotYflkEhBL7EbajfkPlf6E37/2QshOy/D48Mw8G5XMFlQtS6YV42vtbG9zBpIQA==} - engines: {node: '>=14.15.0'} - peerDependencies: - webpack: 5.x.x - webpack-cli: 5.x.x - dependencies: - webpack: 5.75.0_webpack-cli@5.0.1 - webpack-cli: 5.0.1_webpack@5.75.0 - dev: true - - /@webpack-cli/serve/1.7.0_webpack-cli@4.10.0: - resolution: {integrity: sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==} - peerDependencies: - webpack-cli: 4.x.x - webpack-dev-server: '*' - peerDependenciesMeta: - webpack-dev-server: - optional: true - dependencies: - webpack-cli: 4.10.0_webpack@4.46.0 - dev: true - - /@webpack-cli/serve/2.0.1_rjsyjcrmk25kqsjzwkvj3a2evq: - resolution: {integrity: sha512-0G7tNyS+yW8TdgHwZKlDWYXFA6OJQnoLCQvYKkQP0Q2X205PSQ6RNUj0M+1OB/9gRQaUZ/ccYfaxd0nhaWKfjw==} - engines: {node: '>=14.15.0'} - peerDependencies: - webpack: 5.x.x - webpack-cli: 5.x.x - webpack-dev-server: '*' - peerDependenciesMeta: - webpack-dev-server: - optional: true - dependencies: - webpack: 5.75.0_webpack-cli@5.0.1 - webpack-cli: 5.0.1_webpack@5.75.0 - dev: true - - /@xtuc/ieee754/1.2.0: - resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==} - dev: true - - /@xtuc/long/4.2.2: - resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} - dev: true - /abort-controller/3.0.0: resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} engines: {node: '>=6.5'} @@ -1863,51 +2272,32 @@ packages: resolution: {integrity: sha512-qVP8HFfTpUQI2F+f1tpTriKDIZ4XrmwCrBCrQeRKO7DKWF3kgoT6NXiNDv2krrGcHxPwmI63eGQiec81sEaWIw==} dependencies: get-iterator: 1.0.2 - - /acorn-import-assertions/1.8.0_acorn@8.8.0: - resolution: {integrity: sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==} - peerDependencies: - acorn: ^8 - dependencies: - acorn: 8.8.0 dev: true + /abortable-iterator/4.0.2: + resolution: {integrity: sha512-SJGELER5yXr9v3kiL6mT5RZ1qlyJ9hV4nm34+vfsdIM1lp3zENQvpsqKgykpFLgRMUn3lzlizLTpiOASW05/+g==} + dependencies: + get-iterator: 2.0.0 + it-stream-types: 1.0.5 + dev: false + /acorn-walk/8.2.0: resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} engines: {node: '>=0.4.0'} + dev: true - /acorn/6.4.2: - resolution: {integrity: sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==} + /acorn/8.8.2: + resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} engines: {node: '>=0.4.0'} hasBin: true dev: true - /acorn/8.8.0: - resolution: {integrity: sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==} - engines: {node: '>=0.4.0'} - hasBin: true - /aggregate-error/3.1.0: resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} engines: {node: '>=8'} dependencies: clean-stack: 2.2.0 indent-string: 4.0.0 - - /ajv-errors/1.0.1_ajv@6.12.6: - resolution: {integrity: sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==} - peerDependencies: - ajv: '>=5.0.0' - dependencies: - ajv: 6.12.6 - dev: true - - /ajv-keywords/3.5.2_ajv@6.12.6: - resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==} - peerDependencies: - ajv: ^6.9.1 - dependencies: - ajv: 6.12.6 dev: true /ajv/6.12.6: @@ -1917,6 +2307,7 @@ packages: fast-json-stable-stringify: 2.1.0 json-schema-traverse: 0.4.1 uri-js: 4.4.1 + dev: true /ansi-escapes/4.3.2: resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} @@ -1959,30 +2350,17 @@ packages: /any-signal/3.0.1: resolution: {integrity: sha512-xgZgJtKEa9YmDqXodIgl7Fl1C8yNXr8w6gXjqK3LW4GcEiYT+6AQfJSE/8SPsEpLLmcvbv8YU+qet94UewHxqg==} - /anymatch/2.0.0: - resolution: {integrity: sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==} - dependencies: - micromatch: 3.1.10 - normalize-path: 2.1.1 - transitivePeerDependencies: - - supports-color - dev: true - optional: true - - /anymatch/3.1.2: - resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==} + /anymatch/3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} dependencies: normalize-path: 3.0.0 picomatch: 2.3.1 dev: true - /aproba/1.2.0: - resolution: {integrity: sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==} - dev: true - /arg/4.1.3: resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} + dev: true /argparse/1.0.10: resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} @@ -1990,26 +2368,6 @@ packages: sprintf-js: 1.0.3 dev: true - /arr-diff/4.0.0: - resolution: {integrity: sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==} - engines: {node: '>=0.10.0'} - dev: true - - /arr-flatten/1.1.0: - resolution: {integrity: sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==} - engines: {node: '>=0.10.0'} - dev: true - - /arr-union/3.1.0: - resolution: {integrity: sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==} - engines: {node: '>=0.10.0'} - dev: true - - /array-unique/0.3.2: - resolution: {integrity: sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==} - engines: {node: '>=0.10.0'} - dev: true - /asn1.js/5.4.1: resolution: {integrity: sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==} dependencies: @@ -2017,33 +2375,19 @@ packages: inherits: 2.0.4 minimalistic-assert: 1.0.1 safer-buffer: 2.1.2 + dev: true /asn1/0.2.6: resolution: {integrity: sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==} dependencies: safer-buffer: 2.1.2 + dev: true /assert-plus/1.0.0: resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==} engines: {node: '>=0.8'} - - /assert/1.5.0: - resolution: {integrity: sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==} - dependencies: - object-assign: 4.1.1 - util: 0.10.3 dev: true - /assign-symbols/1.0.0: - resolution: {integrity: sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==} - engines: {node: '>=0.10.0'} - dev: true - - /async-each/1.0.3: - resolution: {integrity: sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==} - dev: true - optional: true - /async/3.2.3: resolution: {integrity: sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==} dev: true @@ -2053,30 +2397,45 @@ packages: /asynckit/0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - - /atob/2.1.2: - resolution: {integrity: sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==} - engines: {node: '>= 4.5.0'} - hasBin: true dev: true /aws-sign2/0.7.0: resolution: {integrity: sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==} + dev: true - /aws4/1.11.0: - resolution: {integrity: sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==} + /aws4/1.12.0: + resolution: {integrity: sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==} + dev: true - /babel-jest/28.1.3_@babel+core@7.18.13: + /babel-jest/28.1.3_@babel+core@7.20.12: resolution: {integrity: sha512-epUaPOEWMk3cWX0M/sPvCHHCe9fMFAa/9hXEgKP8nFfNl/jlGkE9ucq9NqkZGXLDduCJYS0UvSlPUwC0S+rH6Q==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} peerDependencies: '@babel/core': ^7.8.0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@jest/transform': 28.1.3 - '@types/babel__core': 7.1.19 + '@types/babel__core': 7.20.0 babel-plugin-istanbul: 6.1.1 - babel-preset-jest: 28.1.3_@babel+core@7.18.13 + babel-preset-jest: 28.1.3_@babel+core@7.20.12 + chalk: 4.1.2 + graceful-fs: 4.2.10 + slash: 3.0.0 + transitivePeerDependencies: + - supports-color + dev: true + + /babel-jest/29.4.1_@babel+core@7.20.12: + resolution: {integrity: sha512-xBZa/pLSsF/1sNpkgsiT3CmY7zV1kAsZ9OxxtrFqYucnOuRftXAfcJqcDVyOPeN4lttWTwhLdu0T9f8uvoPEUg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + '@babel/core': ^7.8.0 + dependencies: + '@babel/core': 7.20.12 + '@jest/transform': 29.4.1 + '@types/babel__core': 7.20.0 + babel-plugin-istanbul: 6.1.1 + babel-preset-jest: 29.4.0_@babel+core@7.20.12 chalk: 4.1.2 graceful-fs: 4.2.10 slash: 3.0.0 @@ -2091,7 +2450,7 @@ packages: '@babel/helper-plugin-utils': 7.20.2 '@istanbuljs/load-nyc-config': 1.1.0 '@istanbuljs/schema': 0.1.3 - istanbul-lib-instrument: 5.2.0 + istanbul-lib-instrument: 5.2.1 test-exclude: 6.0.0 transitivePeerDependencies: - supports-color @@ -2103,43 +2462,65 @@ packages: dependencies: '@babel/template': 7.20.7 '@babel/types': 7.20.7 - '@types/babel__core': 7.1.19 - '@types/babel__traverse': 7.18.0 + '@types/babel__core': 7.20.0 + '@types/babel__traverse': 7.18.3 dev: true - /babel-preset-current-node-syntax/1.0.1_@babel+core@7.18.13: + /babel-plugin-jest-hoist/29.4.0: + resolution: {integrity: sha512-a/sZRLQJEmsmejQ2rPEUe35nO1+C9dc9O1gplH1SXmJxveQSRUYdBk8yGZG/VOUuZs1u2aHZJusEGoRMbhhwCg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@babel/template': 7.20.7 + '@babel/types': 7.20.7 + '@types/babel__core': 7.20.0 + '@types/babel__traverse': 7.18.3 + dev: true + + /babel-preset-current-node-syntax/1.0.1_@babel+core@7.20.12: resolution: {integrity: sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.18.13 - '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.18.13 - '@babel/plugin-syntax-bigint': 7.8.3_@babel+core@7.18.13 - '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.18.13 - '@babel/plugin-syntax-import-meta': 7.10.4_@babel+core@7.18.13 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.18.13 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.18.13 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.18.13 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.18.13 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.18.13 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.18.13 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.18.13 - '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.18.13 + '@babel/core': 7.20.12 + '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.20.12 + '@babel/plugin-syntax-bigint': 7.8.3_@babel+core@7.20.12 + '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.20.12 + '@babel/plugin-syntax-import-meta': 7.10.4_@babel+core@7.20.12 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.20.12 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.20.12 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.20.12 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.20.12 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.20.12 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.20.12 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.20.12 + '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.20.12 dev: true - /babel-preset-jest/28.1.3_@babel+core@7.18.13: + /babel-preset-jest/28.1.3_@babel+core@7.20.12: resolution: {integrity: sha512-L+fupJvlWAHbQfn74coNX3zf60LXMJsezNvvx8eIh7iOR1luJ1poxYgQk1F8PYtNq/6QODDHCqsSnTFSWC491A==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 babel-plugin-jest-hoist: 28.1.3 - babel-preset-current-node-syntax: 1.0.1_@babel+core@7.18.13 + babel-preset-current-node-syntax: 1.0.1_@babel+core@7.20.12 + dev: true + + /babel-preset-jest/29.4.0_@babel+core@7.20.12: + resolution: {integrity: sha512-fUB9vZflUSM3dO/6M2TCAepTzvA4VkOvl67PjErcrQMGt9Eve7uazaeyCZ2th3UtI7ljpiBJES0F7A1vBRsLZA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.20.12 + babel-plugin-jest-hoist: 29.4.0 + babel-preset-current-node-syntax: 1.0.1_@babel+core@7.20.12 dev: true /balanced-match/1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + dev: true /base-x/3.0.9: resolution: {integrity: sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==} @@ -2150,19 +2531,6 @@ packages: /base-x/4.0.0: resolution: {integrity: sha512-FuwxlW4H5kh37X/oW59pwTzzTKRzfrrQwhmyspRM7swOEZcHtDZSCt45U6oKgtuFE+WYPblePMVIPR4RZrh/hw==} - /base/0.11.2: - resolution: {integrity: sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==} - engines: {node: '>=0.10.0'} - dependencies: - cache-base: 1.0.1 - class-utils: 0.3.6 - component-emitter: 1.3.0 - define-property: 1.0.0 - isobject: 3.0.1 - mixin-deep: 1.3.2 - pascalcase: 0.1.1 - dev: true - /base64-js/1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -2170,31 +2538,24 @@ packages: resolution: {integrity: sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==} dependencies: tweetnacl: 0.14.5 - - /big.js/5.2.2: - resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} dev: true - /bignumber.js/9.1.0: - resolution: {integrity: sha512-4LwHK4nfDOraBCtst+wOWIHbu1vhvAPJK8g8nROd4iuc3PSEjWif/qwbkh8jwCJz6yDBvtU4KPynETgrfh7y3A==} + /benchmark/2.1.4: + resolution: {integrity: sha512-l9MlfN4M1K/H2fbhfMy3B7vJd6AGKJVQn2h6Sg/Yx+KckoUA7ewS5Vv6TjSq18ooE1kS9hhAlQRH3AkXIh/aOQ==} + dependencies: + lodash: 4.17.21 + platform: 1.3.6 + dev: false - /binary-extensions/1.13.1: - resolution: {integrity: sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==} - engines: {node: '>=0.10.0'} + /bignumber.js/9.1.1: + resolution: {integrity: sha512-pHm4LsMJ6lzgNGVfZHjMoO8sdoRhOzOH4MLmY65Jg70bpxCKu5iOHNJyfF6OyvYw7t8Fpf35RuzUyqnQsj8Vig==} dev: true - optional: true - - /binary-extensions/2.2.0: - resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} - engines: {node: '>=8'} - dev: true - optional: true /bindings/1.5.0: resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} - requiresBuild: true dependencies: file-uri-to-path: 1.0.0 + dev: true /bl/4.1.0: resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} @@ -2203,12 +2564,13 @@ packages: inherits: 2.0.4 readable-stream: 3.6.0 - /bl/5.0.0: - resolution: {integrity: sha512-8vxFNZ0pflFfi0WXA3WQXlj6CaMEwsmh63I1CNp0q+wWv8sD0ARx1KovSQd0l2GkwrMIOyedq0EF1FxI+RCZLQ==} + /bl/5.1.0: + resolution: {integrity: sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==} dependencies: buffer: 6.0.3 inherits: 2.0.4 readable-stream: 3.6.0 + dev: true /blakejs/1.2.1: resolution: {integrity: sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==} @@ -2220,15 +2582,8 @@ packages: browser-readablestream-to-it: 1.0.3 dev: true - /bluebird/3.7.2: - resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==} - dev: true - /bn.js/4.12.0: resolution: {integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==} - - /bn.js/5.2.1: - resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==} dev: true /borc/3.0.0: @@ -2236,7 +2591,7 @@ packages: engines: {node: '>=4'} hasBin: true dependencies: - bignumber.js: 9.1.0 + bignumber.js: 9.1.1 buffer: 6.0.3 commander: 2.20.3 ieee754: 1.2.1 @@ -2250,23 +2605,6 @@ packages: dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 - - /braces/2.3.2: - resolution: {integrity: sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==} - engines: {node: '>=0.10.0'} - dependencies: - arr-flatten: 1.1.0 - array-unique: 0.3.2 - extend-shallow: 2.0.1 - fill-range: 4.0.0 - isobject: 3.0.1 - repeat-element: 1.1.4 - snapdragon: 0.8.2 - snapdragon-node: 2.1.1 - split-string: 3.1.0 - to-regex: 3.0.2 - transitivePeerDependencies: - - supports-color dev: true /braces/3.0.2: @@ -2278,6 +2616,7 @@ packages: /brorand/1.1.0: resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==} + dev: true /browser-or-node/2.0.0: resolution: {integrity: sha512-3Lrks/Okgof+/cRguUNG+qRXSeq79SO3hY4QrXJayJofwJwHiGC0qi99uDjsfTwULUFSr1OGVsBkdIkygKjTUA==} @@ -2289,70 +2628,15 @@ packages: resolution: {integrity: sha512-+12sHB+Br8HIh6VAMVEG5r3UXCyESIgDW7kzk3BjIXa43DVqVwL7GC5TW3jeh+72dtcH99pPVpw0X8i0jt+/kw==} dev: true - /browserify-aes/1.2.0: - resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==} - dependencies: - buffer-xor: 1.0.3 - cipher-base: 1.0.4 - create-hash: 1.2.0 - evp_bytestokey: 1.0.3 - inherits: 2.0.4 - safe-buffer: 5.2.1 - dev: true - - /browserify-cipher/1.0.1: - resolution: {integrity: sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==} - dependencies: - browserify-aes: 1.2.0 - browserify-des: 1.0.2 - evp_bytestokey: 1.0.3 - dev: true - - /browserify-des/1.0.2: - resolution: {integrity: sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==} - dependencies: - cipher-base: 1.0.4 - des.js: 1.0.1 - inherits: 2.0.4 - safe-buffer: 5.2.1 - dev: true - - /browserify-rsa/4.1.0: - resolution: {integrity: sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==} - dependencies: - bn.js: 5.2.1 - randombytes: 2.1.0 - dev: true - - /browserify-sign/4.2.1: - resolution: {integrity: sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==} - dependencies: - bn.js: 5.2.1 - browserify-rsa: 4.1.0 - create-hash: 1.2.0 - create-hmac: 1.1.7 - elliptic: 6.5.4 - inherits: 2.0.4 - parse-asn1: 5.1.6 - readable-stream: 3.6.0 - safe-buffer: 5.2.1 - dev: true - - /browserify-zlib/0.2.0: - resolution: {integrity: sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==} - dependencies: - pako: 1.0.11 - dev: true - - /browserslist/4.21.4: - resolution: {integrity: sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==} + /browserslist/4.21.5: + resolution: {integrity: sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001441 - electron-to-chromium: 1.4.284 - node-releases: 2.0.6 - update-browserslist-db: 1.0.10_browserslist@4.21.4 + caniuse-lite: 1.0.30001450 + electron-to-chromium: 1.4.285 + node-releases: 2.0.9 + update-browserslist-db: 1.0.10_browserslist@4.21.5 dev: true /bs-logger/0.2.6: @@ -2380,18 +2664,6 @@ packages: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} dev: true - /buffer-xor/1.0.3: - resolution: {integrity: sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==} - dev: true - - /buffer/4.9.2: - resolution: {integrity: sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==} - dependencies: - base64-js: 1.5.1 - ieee754: 1.2.1 - isarray: 1.0.0 - dev: true - /buffer/5.7.1: resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} dependencies: @@ -2404,44 +2676,19 @@ packages: base64-js: 1.5.1 ieee754: 1.2.1 - /builtin-status-codes/3.0.0: - resolution: {integrity: sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==} - dev: true - - /cacache/12.0.4: - resolution: {integrity: sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==} + /busboy/1.6.0: + resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} + engines: {node: '>=10.16.0'} dependencies: - bluebird: 3.7.2 - chownr: 1.1.4 - figgy-pudding: 3.5.2 - glob: 7.2.3 - graceful-fs: 4.2.10 - infer-owner: 1.0.4 - lru-cache: 5.1.1 - mississippi: 3.0.0 - mkdirp: 0.5.6 - move-concurrently: 1.0.1 - promise-inflight: 1.0.1_bluebird@3.7.2 - rimraf: 2.7.1 - ssri: 6.0.2 - unique-filename: 1.1.1 - y18n: 4.0.3 - dev: true + streamsearch: 1.1.0 + dev: false - /cache-base/1.0.1: - resolution: {integrity: sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==} - engines: {node: '>=0.10.0'} + /byte-access/1.0.1: + resolution: {integrity: sha512-GKYa+lvxnzhgHWj9X+LCsQ4s2/C5uvib573eAOiQKywXMkzFFErY2+yQdzmdE5iWVpmqecsRx3bOtOY4/1eINw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} dependencies: - collection-visit: 1.0.0 - component-emitter: 1.3.0 - get-value: 2.0.6 - has-value: 1.0.0 - isobject: 3.0.1 - set-value: 2.0.1 - to-object-path: 0.3.0 - union-value: 1.0.1 - unset-value: 1.0.0 - dev: true + uint8arraylist: 2.4.3 + dev: false /callsites/3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} @@ -2457,12 +2704,13 @@ packages: engines: {node: '>=10'} dev: true - /caniuse-lite/1.0.30001441: - resolution: {integrity: sha512-OyxRR4Vof59I3yGWXws6i908EtGbMzVUi3ganaZQHmydk1iwDhRnvaPG2WaR0KcqrDFKrxVZHULT396LEPhXfg==} + /caniuse-lite/1.0.30001450: + resolution: {integrity: sha512-qMBmvmQmFXaSxexkjjfMvD5rnDL0+m+dUMZKoDYsGG8iZN29RuYh9eRoMvKsT6uMAWlyUUGDEQGJJYjzCIO9ew==} dev: true /caseless/0.12.0: resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} + dev: true /chalk/2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} @@ -2486,56 +2734,9 @@ packages: engines: {node: '>=10'} dev: true - /chokidar/2.1.8: - resolution: {integrity: sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==} - deprecated: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies - dependencies: - anymatch: 2.0.0 - async-each: 1.0.3 - braces: 2.3.2 - glob-parent: 3.1.0 - inherits: 2.0.4 - is-binary-path: 1.0.1 - is-glob: 4.0.3 - normalize-path: 3.0.0 - path-is-absolute: 1.0.1 - readdirp: 2.2.1 - upath: 1.2.0 - optionalDependencies: - fsevents: 1.2.13 - transitivePeerDependencies: - - supports-color - dev: true - optional: true - - /chokidar/3.5.3: - resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} - engines: {node: '>= 8.10.0'} - requiresBuild: true - dependencies: - anymatch: 3.1.2 - braces: 3.0.2 - glob-parent: 5.1.2 - is-binary-path: 2.1.0 - is-glob: 4.0.3 - normalize-path: 3.0.0 - readdirp: 3.6.0 - optionalDependencies: - fsevents: 2.3.2 - dev: true - optional: true - - /chownr/1.1.4: - resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} - dev: true - - /chrome-trace-event/1.0.3: - resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} - engines: {node: '>=6.0'} - dev: true - - /ci-info/3.3.2: - resolution: {integrity: sha512-xmDt/QIAdeZ9+nfdPsaBCpMvHNLFiLdjj59qjqn+6iPe6YmHGQ35sBnQ8uslRBXFmXkiZQOJRjvQeoGppoTjjg==} + /ci-info/3.7.1: + resolution: {integrity: sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w==} + engines: {node: '>=8'} dev: true /cids/1.1.9: @@ -2546,13 +2747,7 @@ packages: multibase: 4.0.6 multicodec: 3.2.1 multihashes: 4.0.3 - uint8arrays: 3.1.0 - - /cipher-base/1.0.4: - resolution: {integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==} - dependencies: - inherits: 2.0.4 - safe-buffer: 5.2.1 + uint8arrays: 3.1.1 dev: true /cjs-module-lexer/1.2.2: @@ -2561,38 +2756,22 @@ packages: /class-is/1.1.0: resolution: {integrity: sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==} - - /class-utils/0.3.6: - resolution: {integrity: sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==} - engines: {node: '>=0.10.0'} - dependencies: - arr-union: 3.1.0 - define-property: 0.2.5 - isobject: 3.0.1 - static-extend: 0.1.2 dev: true /clean-stack/2.2.0: resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} engines: {node: '>=6'} + dev: true - /cliui/7.0.4: - resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} + /cliui/8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} dependencies: string-width: 4.2.3 strip-ansi: 6.0.1 wrap-ansi: 7.0.0 dev: true - /clone-deep/4.0.1: - resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==} - engines: {node: '>=6'} - dependencies: - is-plain-object: 2.0.4 - kind-of: 6.0.3 - shallow-clone: 3.0.1 - dev: true - /co/4.6.0: resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==} engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} @@ -2602,14 +2781,6 @@ packages: resolution: {integrity: sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==} dev: true - /collection-visit/1.0.0: - resolution: {integrity: sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==} - engines: {node: '>=0.10.0'} - dependencies: - map-visit: 1.0.0 - object-visit: 1.0.1 - dev: true - /color-convert/1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} dependencies: @@ -2631,114 +2802,36 @@ packages: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} dev: true - /colorette/2.0.19: - resolution: {integrity: sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==} - dev: true - /combined-stream/1.0.8: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} engines: {node: '>= 0.8'} dependencies: delayed-stream: 1.0.0 + dev: true /commander/2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} dev: true - /commander/7.2.0: - resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} - engines: {node: '>= 10'} - dev: true - - /commander/9.4.1: - resolution: {integrity: sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==} - engines: {node: ^12.20.0 || >=14} - dev: true - - /commondir/1.0.1: - resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} - dev: true - - /component-emitter/1.3.0: - resolution: {integrity: sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==} - dev: true - /concat-map/0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - - /concat-stream/1.6.2: - resolution: {integrity: sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==} - engines: {'0': node >= 0.8} - dependencies: - buffer-from: 1.1.2 - inherits: 2.0.4 - readable-stream: 2.3.7 - typedarray: 0.0.6 dev: true - /console-browserify/1.2.0: - resolution: {integrity: sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==} + /convert-source-map/1.9.0: + resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} dev: true - /constants-browserify/1.0.0: - resolution: {integrity: sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==} - dev: true - - /convert-source-map/1.8.0: - resolution: {integrity: sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==} - dependencies: - safe-buffer: 5.1.2 - dev: true - - /copy-concurrently/1.0.5: - resolution: {integrity: sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==} - dependencies: - aproba: 1.2.0 - fs-write-stream-atomic: 1.0.10 - iferr: 0.1.5 - mkdirp: 0.5.6 - rimraf: 2.7.1 - run-queue: 1.0.3 - dev: true - - /copy-descriptor/0.1.1: - resolution: {integrity: sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==} - engines: {node: '>=0.10.0'} + /convert-source-map/2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} dev: true /core-util-is/1.0.2: resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==} - - /create-ecdh/4.0.4: - resolution: {integrity: sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==} - dependencies: - bn.js: 4.12.0 - elliptic: 6.5.4 - dev: true - - /create-hash/1.2.0: - resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==} - dependencies: - cipher-base: 1.0.4 - inherits: 2.0.4 - md5.js: 1.3.5 - ripemd160: 2.0.2 - sha.js: 2.4.11 - dev: true - - /create-hmac/1.1.7: - resolution: {integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==} - dependencies: - cipher-base: 1.0.4 - create-hash: 1.2.0 - inherits: 2.0.4 - ripemd160: 2.0.2 - safe-buffer: 5.2.1 - sha.js: 2.4.11 dev: true /create-require/1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} + dev: true /cross-spawn/7.0.3: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} @@ -2748,35 +2841,17 @@ packages: shebang-command: 2.0.0 which: 2.0.2 - /crypto-browserify/3.12.0: - resolution: {integrity: sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==} - dependencies: - browserify-cipher: 1.0.1 - browserify-sign: 4.2.1 - create-ecdh: 4.0.4 - create-hash: 1.2.0 - create-hmac: 1.1.7 - diffie-hellman: 5.0.3 - inherits: 2.0.4 - pbkdf2: 3.1.2 - public-encrypt: 4.0.3 - randombytes: 2.1.0 - randomfill: 1.0.4 - dev: true - - /cyclist/1.0.1: - resolution: {integrity: sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==} - dev: true - /dashdash/1.14.1: resolution: {integrity: sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==} engines: {node: '>=0.10'} dependencies: assert-plus: 1.0.0 + dev: true - /data-uri-to-buffer/4.0.0: - resolution: {integrity: sha512-Vr3mLBA8qWmcuschSLAOogKgQ/Jwxulv3RNE4FXnYWRGujzrRWQI4m12fQqRkwX06C0KanhLr4hK+GydchZsaA==} + /data-uri-to-buffer/4.0.1: + resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==} engines: {node: '>= 12'} + dev: true /datastore-core/7.0.3: resolution: {integrity: sha512-DmPsUux63daOfCszxLkcp6LjdJ0k/BQNhIMtoAi5mbraYQnEQkFtKORmTu6XmDX6ujbtaBkeuJAiCBNI7MZklw==} @@ -2792,21 +2867,31 @@ packages: it-pipe: 1.1.0 it-pushable: 1.4.2 it-take: 1.0.2 - uint8arrays: 3.1.0 + uint8arrays: 3.1.1 transitivePeerDependencies: - supports-color - - /debug/2.6.9: - resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - dependencies: - ms: 2.0.0 dev: true + /datastore-core/8.0.4: + resolution: {integrity: sha512-oBA6a024NFXJOTu+w9nLAimfy4wCYUhdE/5XQGtdKt1BmCVtPYW10GORvVT3pdZBcse6k/mVcBl+hjkXIlm65A==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@libp2p/logger': 2.0.5 + err-code: 3.0.1 + interface-datastore: 7.0.4 + it-all: 2.0.0 + it-drain: 2.0.0 + it-filter: 2.0.0 + it-map: 2.0.0 + it-merge: 2.0.0 + it-pipe: 2.0.5 + it-pushable: 3.1.2 + it-take: 2.0.0 + uint8arrays: 4.0.3 + transitivePeerDependencies: + - supports-color + dev: false + /debug/4.3.4: resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} engines: {node: '>=6.0'} @@ -2818,17 +2903,12 @@ packages: dependencies: ms: 2.1.2 - /decode-uri-component/0.2.0: - resolution: {integrity: sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==} - engines: {node: '>=0.10'} - dev: true - /dedent/0.7.0: resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} dev: true - /deepmerge/4.2.2: - resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==} + /deepmerge/4.3.0: + resolution: {integrity: sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==} engines: {node: '>=0.10.0'} dev: true @@ -2838,37 +2918,14 @@ packages: dependencies: execa: 5.1.1 - /define-property/0.2.5: - resolution: {integrity: sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==} - engines: {node: '>=0.10.0'} - dependencies: - is-descriptor: 0.1.6 - dev: true - - /define-property/1.0.0: - resolution: {integrity: sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==} - engines: {node: '>=0.10.0'} - dependencies: - is-descriptor: 1.0.2 - dev: true - - /define-property/2.0.2: - resolution: {integrity: sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==} - engines: {node: '>=0.10.0'} - dependencies: - is-descriptor: 1.0.2 - isobject: 3.0.1 - dev: true + /default-import/1.1.5: + resolution: {integrity: sha512-aaJ6uzZlmaEcN1U8yvtiyV7MG3/zZQf1XtGSW5dTfAVvfk0VZuriJelXxVL9a0ni42vMkhjWcztFfpIhwFcfOQ==} + engines: {node: '>=14'} + dev: false /delayed-stream/1.0.0: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} engines: {node: '>=0.4.0'} - - /des.js/1.0.1: - resolution: {integrity: sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==} - dependencies: - inherits: 2.0.4 - minimalistic-assert: 1.0.1 dev: true /detect-newline/3.1.0: @@ -2886,56 +2943,55 @@ packages: engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dev: true + /diff-sequences/29.3.1: + resolution: {integrity: sha512-hlM3QR272NXCi4pq+N4Kok4kOp6EsgOM3ZSpJI7Da3UAs+Ttsi8MRmB6trM/lhyzUxGfOgnpkHtgqm5Q/CTcfQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dev: true + /diff/4.0.2: resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} engines: {node: '>=0.3.1'} - - /diffie-hellman/5.0.3: - resolution: {integrity: sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==} - dependencies: - bn.js: 4.12.0 - miller-rabin: 4.0.1 - randombytes: 2.1.0 dev: true - /dns-over-http-resolver/1.2.3_node-fetch@3.2.10: + /dns-over-http-resolver/1.2.3_node-fetch@3.3.0: resolution: {integrity: sha512-miDiVSI6KSNbi4SVifzO/reD8rMnxgrlnkrlkugOLQpWQTe2qMdHsZp5DmfKjxNE+/T3VAAYLQUZMv9SMr6+AA==} dependencies: debug: 4.3.4 - native-fetch: 3.0.0_node-fetch@3.2.10 + native-fetch: 3.0.0_node-fetch@3.3.0 receptacle: 1.3.2 transitivePeerDependencies: - node-fetch - supports-color - - /domain-browser/1.2.0: - resolution: {integrity: sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==} - engines: {node: '>=0.4', npm: '>=1.2'} dev: true - /duplexify/3.7.1: - resolution: {integrity: sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==} + /dns-over-http-resolver/2.1.1: + resolution: {integrity: sha512-Lm/eXB7yAQLJ5WxlBGwYfBY7utduXPZykcSmcG6K7ozM0wrZFvxZavhT6PqI0kd/5CUTfev/RrEFQqyU4CGPew==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} dependencies: - end-of-stream: 1.4.4 - inherits: 2.0.4 - readable-stream: 2.3.7 - stream-shift: 1.0.1 - dev: true + debug: 4.3.4 + native-fetch: 4.0.2_undici@5.16.0 + receptacle: 1.3.2 + undici: 5.16.0 + transitivePeerDependencies: + - supports-color + dev: false /ecc-jsbn/0.1.2: resolution: {integrity: sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==} dependencies: jsbn: 0.1.1 safer-buffer: 2.1.2 + dev: true - /electron-fetch/1.7.4: - resolution: {integrity: sha512-+fBLXEy4CJWQ5bz8dyaeSG1hD6JJ15kBZyj3eh24pIVrd3hLM47H/umffrdQfS6GZ0falF0g9JT9f3Rs6AVUhw==} + /electron-fetch/1.9.1: + resolution: {integrity: sha512-M9qw6oUILGVrcENMSRRefE1MbHPIz0h79EKIeJWK9v563aT9Qkh8aEHPO1H5vi970wPirNY+jO9OpFoLiMsMGA==} engines: {node: '>=6'} dependencies: encoding: 0.1.13 + dev: true - /electron-to-chromium/1.4.284: - resolution: {integrity: sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==} + /electron-to-chromium/1.4.285: + resolution: {integrity: sha512-47o4PPgxfU1KMNejz+Dgaodf7YTcg48uOfV1oM6cs3adrl2+7R+dHkt3Jpxqo0LRCbGJEzTKMUt0RdvByb/leg==} dev: true /elliptic/6.5.4: @@ -2948,77 +3004,75 @@ packages: inherits: 2.0.4 minimalistic-assert: 1.0.1 minimalistic-crypto-utils: 1.0.1 + dev: true /emittery/0.10.2: resolution: {integrity: sha512-aITqOwnLanpHLNXZJENbOgjUBeHocD+xsSJmNrjovKBW5HbSpW3d1pEls7GFQPUWXiwG9+0P4GtHfEqC/4M0Iw==} engines: {node: '>=12'} dev: true + /emittery/0.13.1: + resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} + engines: {node: '>=12'} + dev: true + /emoji-regex/8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} dev: true - /emojis-list/3.0.0: - resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==} - engines: {node: '>= 4'} - dev: true - /encoding/0.1.13: resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} dependencies: iconv-lite: 0.6.3 + dev: true /end-of-stream/1.4.4: resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} dependencies: once: 1.4.0 - /enhanced-resolve/4.5.0: - resolution: {integrity: sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==} - engines: {node: '>=6.9.0'} - dependencies: - graceful-fs: 4.2.10 - memory-fs: 0.5.0 - tapable: 1.1.3 - dev: true - - /enhanced-resolve/5.12.0: - resolution: {integrity: sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==} - engines: {node: '>=10.13.0'} - dependencies: - graceful-fs: 4.2.10 - tapable: 2.2.1 - dev: true - - /envinfo/7.8.1: - resolution: {integrity: sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==} - engines: {node: '>=4'} - hasBin: true - dev: true - /err-code/3.0.1: resolution: {integrity: sha512-GiaH0KJUewYok+eeY05IIgjtAe4Yltygk9Wqp1V5yVWLdhf0hYZchRjNIT9bb0mSwRcIusT3cx7PJUf3zEIfUA==} - /errno/0.1.8: - resolution: {integrity: sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==} - hasBin: true - dependencies: - prr: 1.0.1 - dev: true - /error-ex/1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} dependencies: is-arrayish: 0.2.1 dev: true - /es-module-lexer/0.9.3: - resolution: {integrity: sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==} - dev: true - /es6-promisify/7.0.0: resolution: {integrity: sha512-ginqzK3J90Rd4/Yz7qRrqUeIpe3TwSXTPPZtPne7tGBPeAaQiU8qt4fpKApnxHcq1AwtUdHVg5P77x/yrggG8Q==} engines: {node: '>=6'} + dev: true + + /esbuild/0.16.7: + resolution: {integrity: sha512-P6OBFYFSQOGzfApqCeYKqfKRRbCIRsdppTXFo4aAvtiW3o8TTyiIplBvHJI171saPAiy3WlawJHCveJVIOIx1A==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/android-arm': 0.16.7 + '@esbuild/android-arm64': 0.16.7 + '@esbuild/android-x64': 0.16.7 + '@esbuild/darwin-arm64': 0.16.7 + '@esbuild/darwin-x64': 0.16.7 + '@esbuild/freebsd-arm64': 0.16.7 + '@esbuild/freebsd-x64': 0.16.7 + '@esbuild/linux-arm': 0.16.7 + '@esbuild/linux-arm64': 0.16.7 + '@esbuild/linux-ia32': 0.16.7 + '@esbuild/linux-loong64': 0.16.7 + '@esbuild/linux-mips64el': 0.16.7 + '@esbuild/linux-ppc64': 0.16.7 + '@esbuild/linux-riscv64': 0.16.7 + '@esbuild/linux-s390x': 0.16.7 + '@esbuild/linux-x64': 0.16.7 + '@esbuild/netbsd-x64': 0.16.7 + '@esbuild/openbsd-x64': 0.16.7 + '@esbuild/sunos-x64': 0.16.7 + '@esbuild/win32-arm64': 0.16.7 + '@esbuild/win32-ia32': 0.16.7 + '@esbuild/win32-x64': 0.16.7 /escalade/3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} @@ -3035,22 +3089,6 @@ packages: engines: {node: '>=8'} dev: true - /eslint-scope/4.0.3: - resolution: {integrity: sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==} - engines: {node: '>=4.0.0'} - dependencies: - esrecurse: 4.3.0 - estraverse: 4.3.0 - dev: true - - /eslint-scope/5.1.1: - resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} - engines: {node: '>=8.0.0'} - dependencies: - esrecurse: 4.3.0 - estraverse: 4.3.0 - dev: true - /esm/3.2.25: resolution: {integrity: sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==} engines: {node: '>=6'} @@ -3062,21 +3100,8 @@ packages: hasBin: true dev: true - /esrecurse/4.3.0: - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} - engines: {node: '>=4.0'} - dependencies: - estraverse: 5.3.0 - dev: true - - /estraverse/4.3.0: - resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} - engines: {node: '>=4.0'} - dev: true - - /estraverse/5.3.0: - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} - engines: {node: '>=4.0'} + /estree-walker/2.0.2: + resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} dev: true /event-iterator/2.0.0: @@ -3094,13 +3119,6 @@ packages: resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} engines: {node: '>=0.8.x'} - /evp_bytestokey/1.0.3: - resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==} - dependencies: - md5.js: 1.3.5 - safe-buffer: 5.2.1 - dev: true - /execa/5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} @@ -3120,21 +3138,6 @@ packages: engines: {node: '>= 0.8.0'} dev: true - /expand-brackets/2.1.4: - resolution: {integrity: sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==} - engines: {node: '>=0.10.0'} - dependencies: - debug: 2.6.9 - define-property: 0.2.5 - extend-shallow: 2.0.1 - posix-character-classes: 0.1.1 - regex-not: 1.0.2 - snapdragon: 0.8.2 - to-regex: 3.0.2 - transitivePeerDependencies: - - supports-color - dev: true - /expect/28.1.3: resolution: {integrity: sha512-eEh0xn8HlsuOBxFgIss+2mX85VAS4Qy3OSkjV7rlBWljtA4oWH37glVGyOZSZvErDT/yBywZdPGwCXuTvSG85g==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -3146,46 +3149,29 @@ packages: jest-util: 28.1.3 dev: true - /extend-shallow/2.0.1: - resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} - engines: {node: '>=0.10.0'} + /expect/29.4.1: + resolution: {integrity: sha512-OKrGESHOaMxK3b6zxIq9SOW8kEXztKff/Dvg88j4xIJxur1hspEbedVkR3GpHe5LO+WB2Qw7OWN0RMTdp6as5A==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - is-extendable: 0.1.1 - dev: true - - /extend-shallow/3.0.2: - resolution: {integrity: sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==} - engines: {node: '>=0.10.0'} - dependencies: - assign-symbols: 1.0.0 - is-extendable: 1.0.1 + '@jest/expect-utils': 29.4.1 + jest-get-type: 29.2.0 + jest-matcher-utils: 29.4.1 + jest-message-util: 29.4.1 + jest-util: 29.4.1 dev: true /extend/3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} - - /extglob/2.0.4: - resolution: {integrity: sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==} - engines: {node: '>=0.10.0'} - dependencies: - array-unique: 0.3.2 - define-property: 1.0.0 - expand-brackets: 2.1.4 - extend-shallow: 2.0.1 - fragment-cache: 0.2.1 - regex-not: 1.0.2 - snapdragon: 0.8.2 - to-regex: 3.0.2 - transitivePeerDependencies: - - supports-color dev: true /extsprintf/1.3.0: resolution: {integrity: sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==} engines: {'0': node >=0.6.0} + dev: true /fast-deep-equal/3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + dev: true /fast-extend/1.0.2: resolution: {integrity: sha512-XXA9RmlPatkFKUzqVZAFth18R4Wo+Xug/S+C7YlYA3xrXwfPlW3dqNwOb4hvQo7wZJ2cNDYhrYuPzVOfHy5/uQ==} @@ -3195,14 +3181,10 @@ packages: /fast-json-stable-stringify/2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - - /fastest-levenshtein/1.0.16: - resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==} - engines: {node: '>= 4.9.1'} dev: true - /fb-watchman/2.0.1: - resolution: {integrity: sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==} + /fb-watchman/2.0.2: + resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==} dependencies: bser: 2.1.1 dev: true @@ -3213,23 +3195,10 @@ packages: dependencies: node-domexception: 1.0.0 web-streams-polyfill: 3.2.1 - - /figgy-pudding/3.5.2: - resolution: {integrity: sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==} dev: true /file-uri-to-path/1.0.0: resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} - requiresBuild: true - - /fill-range/4.0.0: - resolution: {integrity: sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==} - engines: {node: '>=0.10.0'} - dependencies: - extend-shallow: 2.0.1 - is-number: 3.0.0 - repeat-string: 1.6.1 - to-regex-range: 2.1.1 dev: true /fill-range/7.0.1: @@ -3239,22 +3208,6 @@ packages: to-regex-range: 5.0.1 dev: true - /find-cache-dir/2.1.0: - resolution: {integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==} - engines: {node: '>=6'} - dependencies: - commondir: 1.0.1 - make-dir: 2.1.0 - pkg-dir: 3.0.0 - dev: true - - /find-up/3.0.0: - resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} - engines: {node: '>=6'} - dependencies: - locate-path: 3.0.0 - dev: true - /find-up/4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -3263,20 +3216,9 @@ packages: path-exists: 4.0.0 dev: true - /flush-write-stream/1.1.1: - resolution: {integrity: sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==} - dependencies: - inherits: 2.0.4 - readable-stream: 2.3.7 - dev: true - - /for-in/1.0.2: - resolution: {integrity: sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==} - engines: {node: '>=0.10.0'} - dev: true - /forever-agent/0.6.1: resolution: {integrity: sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==} + dev: true /form-data/2.3.3: resolution: {integrity: sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==} @@ -3285,6 +3227,7 @@ packages: asynckit: 0.4.0 combined-stream: 1.0.8 mime-types: 2.1.35 + dev: true /form-data/4.0.0: resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} @@ -3300,20 +3243,12 @@ packages: engines: {node: '>=12.20.0'} dependencies: fetch-blob: 3.2.0 - - /fragment-cache/0.2.1: - resolution: {integrity: sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==} - engines: {node: '>=0.10.0'} - dependencies: - map-cache: 0.2.2 dev: true - /from2/2.3.0: - resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==} - dependencies: - inherits: 2.0.4 - readable-stream: 2.3.7 - dev: true + /freeport-promise/2.0.0: + resolution: {integrity: sha512-dwWpT1DdQcwrhmRwnDnPM/ZFny+FtzU+k50qF2eid3KxaQDsMiBrwo1i0G3qSugkN5db6Cb0zgfc68QeTOpEFg==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false /fs-constants/1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} @@ -3321,31 +3256,10 @@ packages: /fs-monkey/0.3.3: resolution: {integrity: sha512-FNUvuTAJ3CqCQb5ELn+qCbGR/Zllhf2HtwsdAtBi59s1WeCjKMT81fHcSu7dwIskqGVK+MmOrb7VOBlq3/SItw==} - /fs-write-stream-atomic/1.0.10: - resolution: {integrity: sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==} - dependencies: - graceful-fs: 4.2.10 - iferr: 0.1.5 - imurmurhash: 0.1.4 - readable-stream: 2.3.7 - dev: true - /fs.realpath/1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} dev: true - /fsevents/1.2.13: - resolution: {integrity: sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==} - engines: {node: '>= 4.0'} - os: [darwin] - deprecated: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2. - requiresBuild: true - dependencies: - bindings: 1.5.0 - nan: 2.16.0 - dev: true - optional: true - /fsevents/2.3.2: resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -3370,6 +3284,11 @@ packages: /get-iterator/1.0.2: resolution: {integrity: sha512-v+dm9bNVfOYsY1OrhaCrmyOcYoSeVvbt+hHZ0Au+T+p1y+0Uyj9aMaGIeUTT6xdpRbWzDeYKvfOslPhggQMcsg==} + dev: true + + /get-iterator/2.0.0: + resolution: {integrity: sha512-BDJawD5PU2gZv6Vlp8O28H4GnZcsr3h9gZUvnAP5xXP3WOy/QAoOsyMepSkw21jur+4t5Vppde72ChjhTIzxzg==} + dev: false /get-package-type/0.1.0: resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} @@ -3380,34 +3299,10 @@ packages: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} - /get-value/2.0.6: - resolution: {integrity: sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==} - engines: {node: '>=0.10.0'} - dev: true - /getpass/0.1.7: resolution: {integrity: sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==} dependencies: assert-plus: 1.0.0 - - /glob-parent/3.1.0: - resolution: {integrity: sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==} - dependencies: - is-glob: 3.1.0 - path-dirname: 1.0.2 - dev: true - optional: true - - /glob-parent/5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} - dependencies: - is-glob: 4.0.3 - dev: true - optional: true - - /glob-to-regexp/0.4.1: - resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} dev: true /glob/7.2.3: @@ -3426,6 +3321,10 @@ packages: engines: {node: '>=4'} dev: true + /globrex/0.1.2: + resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} + dev: true + /graceful-fs/4.2.10: resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} dev: true @@ -3433,6 +3332,7 @@ packages: /har-schema/2.0.0: resolution: {integrity: sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==} engines: {node: '>=4'} + dev: true /har-validator/5.1.5: resolution: {integrity: sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==} @@ -3441,6 +3341,7 @@ packages: dependencies: ajv: 6.12.6 har-schema: 2.0.0 + dev: true /has-flag/3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} @@ -3452,37 +3353,6 @@ packages: engines: {node: '>=8'} dev: true - /has-value/0.3.1: - resolution: {integrity: sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==} - engines: {node: '>=0.10.0'} - dependencies: - get-value: 2.0.6 - has-values: 0.1.4 - isobject: 2.1.0 - dev: true - - /has-value/1.0.0: - resolution: {integrity: sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==} - engines: {node: '>=0.10.0'} - dependencies: - get-value: 2.0.6 - has-values: 1.0.0 - isobject: 3.0.1 - dev: true - - /has-values/0.1.4: - resolution: {integrity: sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==} - engines: {node: '>=0.10.0'} - dev: true - - /has-values/1.0.0: - resolution: {integrity: sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==} - engines: {node: '>=0.10.0'} - dependencies: - is-number: 3.0.0 - kind-of: 4.0.0 - dev: true - /has/1.0.3: resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} engines: {node: '>= 0.4.0'} @@ -3490,20 +3360,12 @@ packages: function-bind: 1.1.1 dev: true - /hash-base/3.1.0: - resolution: {integrity: sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==} - engines: {node: '>=4'} - dependencies: - inherits: 2.0.4 - readable-stream: 3.6.0 - safe-buffer: 5.2.1 - dev: true - /hash.js/1.1.7: resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==} dependencies: inherits: 2.0.4 minimalistic-assert: 1.0.1 + dev: true /hashlru/2.3.0: resolution: {integrity: sha512-0cMsjjIC8I+D3M44pOQdsy0OHXGLVz6Z0beRuufhKa0KfaD2wGwAev6jILzXsd3/vpnNQJmWyZtIILqM1N+n5A==} @@ -3514,6 +3376,7 @@ packages: hash.js: 1.1.7 minimalistic-assert: 1.0.1 minimalistic-crypto-utils: 1.0.1 + dev: true /html-escaper/2.0.2: resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} @@ -3526,9 +3389,6 @@ packages: assert-plus: 1.0.0 jsprim: 1.4.2 sshpk: 1.17.0 - - /https-browserify/1.0.0: - resolution: {integrity: sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==} dev: true /human-signals/2.1.0: @@ -3540,14 +3400,11 @@ packages: engines: {node: '>=0.10.0'} dependencies: safer-buffer: 2.1.2 + dev: true /ieee754/1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} - /iferr/0.1.5: - resolution: {integrity: sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==} - dev: true - /import-local/3.1.0: resolution: {integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==} engines: {node: '>=8'} @@ -3565,9 +3422,6 @@ packages: /indent-string/4.0.0: resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} engines: {node: '>=8'} - - /infer-owner/1.0.4: - resolution: {integrity: sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==} dev: true /inflight/1.0.6: @@ -3577,14 +3431,6 @@ packages: wrappy: 1.0.2 dev: true - /inherits/2.0.1: - resolution: {integrity: sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==} - dev: true - - /inherits/2.0.3: - resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==} - dev: true - /inherits/2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} @@ -3608,7 +3454,17 @@ packages: dependencies: interface-store: 2.0.2 nanoid: 3.3.4 - uint8arrays: 3.1.0 + uint8arrays: 3.1.1 + dev: true + + /interface-datastore/7.0.4: + resolution: {integrity: sha512-Q8LZS/jfFFHz6XyZazLTAc078SSCoa27ZPBOfobWdpDiFO7FqPA2yskitUJIhaCgxNK8C+/lMBUTBNfVIDvLiw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + interface-store: 3.0.4 + nanoid: 4.0.0 + uint8arrays: 4.0.3 + dev: false /interface-ipld-format/1.0.1: resolution: {integrity: sha512-WV/ar+KQJVoQpqRDYdo7YPGYIUHJxCuOEhdvsRpzLqoOIVCqPKdMMYmsLL1nCRsF3yYNio+PAJbCKiv6drrEAg==} @@ -3625,16 +3481,12 @@ packages: /interface-store/2.0.2: resolution: {integrity: sha512-rScRlhDcz6k199EkHqT8NpM87ebN89ICOzILoBHgaG36/WX50N32BnU/kpZgCGPLhARRAWUUX5/cyaIjt7Kipg==} - - /interpret/2.2.0: - resolution: {integrity: sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==} - engines: {node: '>= 0.10'} dev: true - /interpret/3.1.1: - resolution: {integrity: sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==} - engines: {node: '>=10.13.0'} - dev: true + /interface-store/3.0.4: + resolution: {integrity: sha512-OjHUuGXbH4eXSBx1TF1tTySvjLldPLzRSYYXJwrEQI+XfH5JWYZofr0gVMV4F8XTwC+4V7jomDYkvGRmDSRKqQ==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false /ip-address/8.1.0: resolution: {integrity: sha512-Wz91gZKpNKoXtqvY8ScarKYwhXoK4r/b5QuT+uywe/azv0/nUCo7Bh0IRRI7F9DHR06kJNWtzMGLIbXavngbKA==} @@ -3642,29 +3494,36 @@ packages: dependencies: jsbn: 1.1.0 sprintf-js: 1.1.2 + dev: true /ip-regex/4.3.0: resolution: {integrity: sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==} engines: {node: '>=8'} + dev: true + + /ip-regex/5.0.0: + resolution: {integrity: sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: false /ipaddr.js/2.0.1: resolution: {integrity: sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==} engines: {node: '>= 10'} - /ipfs-core-types/0.5.2_node-fetch@3.2.10: + /ipfs-core-types/0.5.2_node-fetch@3.3.0: resolution: {integrity: sha512-DOQeL+GFGYMTlnbdtMeBzvfVnyAalSgCfPr8XUCI+FVBZZWwzkt5jZZzGDmF87HVRrMR3FuVyBKZj772mcXKyQ==} dependencies: cids: 1.1.9 interface-datastore: 4.0.2 ipld-block: 0.11.1 - multiaddr: 9.0.2_node-fetch@3.2.10 + multiaddr: 9.0.2_node-fetch@3.3.0 multibase: 4.0.6 transitivePeerDependencies: - node-fetch - supports-color dev: true - /ipfs-core-utils/0.8.3_node-fetch@3.2.10: + /ipfs-core-utils/0.8.3_node-fetch@3.3.0: resolution: {integrity: sha512-PY7PkCgCtVYtNOe1C3ew1+5D9NqXqizb886R/lyGWe+KsmWtBQkQIk0ZIDwKyHGvG2KA2QQeIDzdOmzBQBJtHQ==} dependencies: any-signal: 2.1.2 @@ -3672,14 +3531,14 @@ packages: browser-readablestream-to-it: 1.0.3 cids: 1.1.9 err-code: 3.0.1 - ipfs-core-types: 0.5.2_node-fetch@3.2.10 + ipfs-core-types: 0.5.2_node-fetch@3.3.0 ipfs-unixfs: 4.0.3 ipfs-utils: 8.1.6 it-all: 1.0.6 it-map: 1.0.6 it-peekable: 1.0.3 - multiaddr: 9.0.2_node-fetch@3.2.10 - multiaddr-to-uri: 7.0.0_node-fetch@3.2.10 + multiaddr: 9.0.2_node-fetch@3.3.0 + multiaddr-to-uri: 7.0.0_node-fetch@3.3.0 parse-duration: 1.0.2 timeout-abort-controller: 1.1.1 uint8arrays: 2.1.10 @@ -3688,7 +3547,7 @@ packages: - supports-color dev: true - /ipfs-http-client/50.1.2_node-fetch@3.2.10: + /ipfs-http-client/50.1.2_node-fetch@3.3.0: resolution: {integrity: sha512-ZbJlED4wqwFXQFVB9FQDs20ygdq7O/zSq4AvO9KRAmkqUj2TsCWCteUz2fBMnGWLh2tExxeSl/rQbHbJptb8JQ==} engines: {node: '>=14.0.0', npm: '>=3.0.0'} dependencies: @@ -3697,8 +3556,8 @@ packages: cids: 1.1.9 debug: 4.3.4 form-data: 4.0.0 - ipfs-core-types: 0.5.2_node-fetch@3.2.10 - ipfs-core-utils: 0.8.3_node-fetch@3.2.10 + ipfs-core-types: 0.5.2_node-fetch@3.3.0 + ipfs-core-utils: 0.8.3_node-fetch@3.3.0 ipfs-unixfs: 4.0.3 ipfs-utils: 8.1.6 ipld-block: 0.11.1 @@ -3710,7 +3569,7 @@ packages: it-tar: 3.0.0 it-to-stream: 1.0.0 merge-options: 3.0.4 - multiaddr: 9.0.2_node-fetch@3.2.10 + multiaddr: 9.0.2_node-fetch@3.3.0 multibase: 4.0.6 multicodec: 3.2.1 multihashes: 4.0.3 @@ -3738,7 +3597,7 @@ packages: abort-controller: 3.0.0 any-signal: 2.1.2 buffer: 6.0.3 - electron-fetch: 1.7.4 + electron-fetch: 1.9.1 err-code: 3.0.1 is-electron: 2.2.1 iso-url: 1.2.1 @@ -3753,23 +3612,29 @@ packages: stream-to-it: 0.2.4 dev: true - /ipfs-utils/9.0.7: - resolution: {integrity: sha512-Umvb0Zydy2zZiTmQBGLfLISr8vOmXX8cxEIP+N8zGHrtRShG/j32yl1xd/BtS+Hbg0FIbVm3opwvxB2gmta0YA==} + /ipfs-utils/9.0.14: + resolution: {integrity: sha512-zIaiEGX18QATxgaS0/EOQNoo33W0islREABAcxXE8n7y2MGAlB+hdsxXn4J0hGZge8IqVQhW8sWIb+oJz2yEvg==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} dependencies: any-signal: 3.0.1 + browser-readablestream-to-it: 1.0.3 buffer: 6.0.3 - electron-fetch: 1.7.4 + electron-fetch: 1.9.1 err-code: 3.0.1 is-electron: 2.2.1 iso-url: 1.2.1 + it-all: 1.0.6 it-glob: 1.0.2 it-to-stream: 1.0.0 merge-options: 3.0.4 nanoid: 3.3.4 - native-fetch: 3.0.0_hmwa7nplpltavckpkeobtw6pv4 - node-fetch: /@achingbrain/node-fetch/2.6.7 - react-native-fetch-api: 2.0.0 + native-fetch: 3.0.0_node-fetch@2.6.9 + node-fetch: 2.6.9 + react-native-fetch-api: 3.0.0 stream-to-it: 0.2.4 + transitivePeerDependencies: + - encoding + dev: true /ipld-block/0.11.1: resolution: {integrity: sha512-sDqqLqD5qh4QzGq6ssxLHUCnH4emCf/8F8IwjQM2cjEEIEHMUj57XhNYgmGbemdYPznUhffxFGEHsruh5+HQRw==} @@ -3816,111 +3681,28 @@ packages: multihashing-async: 2.1.4 dev: true - /is-accessor-descriptor/0.1.6: - resolution: {integrity: sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==} - engines: {node: '>=0.10.0'} - dependencies: - kind-of: 3.2.2 - dev: true - - /is-accessor-descriptor/1.0.0: - resolution: {integrity: sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==} - engines: {node: '>=0.10.0'} - dependencies: - kind-of: 6.0.3 - dev: true - /is-arrayish/0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} dev: true - /is-binary-path/1.0.1: - resolution: {integrity: sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==} - engines: {node: '>=0.10.0'} - dependencies: - binary-extensions: 1.13.1 - dev: true - optional: true - - /is-binary-path/2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} - dependencies: - binary-extensions: 2.2.0 - dev: true - optional: true - - /is-buffer/1.1.6: - resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==} - dev: true - /is-buffer/2.0.5: resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} engines: {node: '>=4'} + dev: true /is-circular/1.0.2: resolution: {integrity: sha512-YttjnrswnUYRVJvxCvu8z+PGMUSzC2JttP0OEXezlAEdp3EXzhf7IZ3j0gRAybJBQupedIZFhY61Tga6E0qASA==} dev: true - /is-core-module/2.10.0: - resolution: {integrity: sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==} + /is-core-module/2.11.0: + resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==} dependencies: has: 1.0.3 dev: true - /is-data-descriptor/0.1.4: - resolution: {integrity: sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==} - engines: {node: '>=0.10.0'} - dependencies: - kind-of: 3.2.2 - dev: true - - /is-data-descriptor/1.0.0: - resolution: {integrity: sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==} - engines: {node: '>=0.10.0'} - dependencies: - kind-of: 6.0.3 - dev: true - - /is-descriptor/0.1.6: - resolution: {integrity: sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==} - engines: {node: '>=0.10.0'} - dependencies: - is-accessor-descriptor: 0.1.6 - is-data-descriptor: 0.1.4 - kind-of: 5.1.0 - dev: true - - /is-descriptor/1.0.2: - resolution: {integrity: sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==} - engines: {node: '>=0.10.0'} - dependencies: - is-accessor-descriptor: 1.0.0 - is-data-descriptor: 1.0.0 - kind-of: 6.0.3 - dev: true - /is-electron/2.2.1: resolution: {integrity: sha512-r8EEQQsqT+Gn0aXFx7lTFygYQhILLCB+wn0WCDL5LZRINeLH/Rvw1j2oKodELLXYNImQ3CRlVsY8wW4cGOsyuw==} - /is-extendable/0.1.1: - resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==} - engines: {node: '>=0.10.0'} - dev: true - - /is-extendable/1.0.1: - resolution: {integrity: sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==} - engines: {node: '>=0.10.0'} - dependencies: - is-plain-object: 2.0.4 - dev: true - - /is-extglob/2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} - dev: true - optional: true - /is-fullwidth-code-point/3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} @@ -3931,38 +3713,21 @@ packages: engines: {node: '>=6'} dev: true - /is-glob/3.1.0: - resolution: {integrity: sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==} - engines: {node: '>=0.10.0'} - dependencies: - is-extglob: 2.1.1 - dev: true - optional: true - - /is-glob/4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} - engines: {node: '>=0.10.0'} - dependencies: - is-extglob: 2.1.1 - dev: true - optional: true - /is-ip/3.1.0: resolution: {integrity: sha512-35vd5necO7IitFPjd/YBeqwWnyDWbuLH9ZXQdMfDA8TEo7pv5X8yfrvVO3xbJbLUlERCMvf6X0hTUamQxCYJ9Q==} engines: {node: '>=8'} dependencies: ip-regex: 4.3.0 + dev: true /is-loopback-addr/1.0.1: resolution: {integrity: sha512-DhWU/kqY7X2F6KrrVTu7mHlbd2Pbo4D1YkAzasBMjQs6lJAoefxaA6m6CpSX0K6pjt9D0b9PNFI5zduy/vzOYw==} - - /is-number/3.0.0: - resolution: {integrity: sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==} - engines: {node: '>=0.10.0'} - dependencies: - kind-of: 3.2.2 dev: true + /is-loopback-addr/2.0.1: + resolution: {integrity: sha512-SEsepLbdWFb13B6U0tt6dYcUM0iK/U7XOC43N70Z4Qb88WpNtp+ospyNI9ddpqncs7Z7brAEsVBTQpaqSNntIw==} + dev: false + /is-number/7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} @@ -3976,32 +3741,12 @@ packages: resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} engines: {node: '>=8'} - /is-plain-object/2.0.4: - resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} - engines: {node: '>=0.10.0'} - dependencies: - isobject: 3.0.1 - dev: true - /is-stream/2.0.1: resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} engines: {node: '>=8'} /is-typedarray/1.0.0: resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} - - /is-windows/1.0.2: - resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} - engines: {node: '>=0.10.0'} - dev: true - - /is-wsl/1.1.0: - resolution: {integrity: sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==} - engines: {node: '>=4'} - dev: true - - /isarray/1.0.0: - resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} dev: true /isexe/2.0.0: @@ -4019,37 +3764,27 @@ packages: dependencies: events: 3.3.0 readable-stream: 3.6.0 + dev: true /iso-url/1.2.1: resolution: {integrity: sha512-9JPDgCN4B7QPkLtYAAOrEuAWvP9rWvR5offAr0/SeF046wIkglqH3VXgYYP6NcsKslH80UIVgmPqNe3j7tG2ng==} engines: {node: '>=12'} - /isobject/2.1.0: - resolution: {integrity: sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==} - engines: {node: '>=0.10.0'} - dependencies: - isarray: 1.0.0 - dev: true - - /isobject/3.0.1: - resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} - engines: {node: '>=0.10.0'} - dev: true - /isstream/0.1.2: resolution: {integrity: sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==} + dev: true /istanbul-lib-coverage/3.2.0: resolution: {integrity: sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==} engines: {node: '>=8'} dev: true - /istanbul-lib-instrument/5.2.0: - resolution: {integrity: sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==} + /istanbul-lib-instrument/5.2.1: + resolution: {integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==} engines: {node: '>=8'} dependencies: - '@babel/core': 7.18.13 - '@babel/parser': 7.20.7 + '@babel/core': 7.20.12 + '@babel/parser': 7.20.15 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.0 semver: 6.3.0 @@ -4087,30 +3822,69 @@ packages: /it-all/1.0.6: resolution: {integrity: sha512-3cmCc6Heqe3uWi3CVM/k51fa/XbMFpQVzFoDsV0IZNHSQDyAXl3c4MjHkFX5kF3922OGj7Myv1nSEUgRtcuM1A==} + dev: true + + /it-all/2.0.0: + resolution: {integrity: sha512-I/yi9ogTY59lFxtfsDSlI9w9QZtC/5KJt6g7CPPBJJh2xql2ZS7Ghcp9hoqDDbc4QfwQvtx8Loy0zlKQ8H5gFg==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false + + /it-batched-bytes/1.0.0: + resolution: {integrity: sha512-OfztV9UHQmoZ6u5F4y+YOI1Z+5JAhkv3Gexc1a0B7ikcVXc3PFSKlEnHv79u+Yp/h23o3tsF9hHAhuqgHCYT2Q==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + it-stream-types: 1.0.5 + p-defer: 4.0.0 + uint8arraylist: 2.4.3 + dev: false /it-buffer/0.1.3: resolution: {integrity: sha512-9a2/9SYVwG7bcn3tpRDR4bXbtuMLXnDK48KVC+GXiQg97ZOOdWz2nIITBsOQ19b+gj01Rw8RNwtiLDLI8P8oiQ==} dependencies: - bl: 5.0.0 + bl: 5.1.0 buffer: 6.0.3 + dev: true /it-concat/2.0.0: resolution: {integrity: sha512-jchrEB3fHlUENWkVJRmbFJ1A7gcjJDmwiolQsHhVC14DpUIbX8fgr3SOC7XNE5OoUUQNL6/RaMCPChkPemyQUw==} dependencies: - bl: 5.0.0 + bl: 5.1.0 dev: true /it-drain/1.0.5: resolution: {integrity: sha512-r/GjkiW1bZswC04TNmUnLxa6uovme7KKwPhc+cb1hHU65E3AByypHH6Pm91WHuvqfFsm+9ws0kPtDBV3/8vmIg==} + dev: true + + /it-drain/2.0.0: + resolution: {integrity: sha512-oa/5iyBtRs9UW486vPpyDTC0ee3rqx5qlrPI7txIUJcqqtiO5yVozEB6LQrl5ysQYv+P3y/dlKEqwVqlCV0SEA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false /it-filter/1.0.3: resolution: {integrity: sha512-EI3HpzUrKjTH01miLHWmhNWy3Xpbx4OXMXltgrNprL5lDpF3giVpHIouFpr5l+evXw6aOfxhnt01BIB+4VQA+w==} + dev: true + + /it-filter/2.0.0: + resolution: {integrity: sha512-E68+zzoNNI7MxdH1T4lUTgwpCyEnymlH349Qg2mcvsqLmYRkaZLM4NfZZ0hUuH7/5DkWXubQSDOYH396va8mpg==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false /it-first/1.0.7: resolution: {integrity: sha512-nvJKZoBpZD/6Rtde6FXqwDqDZGF1sCADmr2Zoc0hZsIvnE449gRFnGctxDf09Bzc/FWnHXAdaHVIetY6lrE0/g==} + /it-first/2.0.0: + resolution: {integrity: sha512-fzZGzVf01exFyIZXNjkpSMFr1eW2+J1K0v018tYY26Dd4f/O3pWlBTdrOBfSQRZwtI8Pst6c7eKhYczWvFs6tA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false + /it-foreach/0.1.1: resolution: {integrity: sha512-ZLxL651N5w5SL/EIIcrXELgYrrkuEKj/TErG93C4lr6lNZziKsf338ljSG85PjQfu7Frg/1wESl5pLrPSFXI9g==} + dev: true + + /it-foreach/1.0.0: + resolution: {integrity: sha512-2j5HK1P6aMwEvgL6K5nzUwOk+81B/mjt05PxiSspFEKwJnqy1LfJYlLLS6llBoM+NdoUxf6EsBCHidFGmsXvhw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false /it-glob/0.0.14: resolution: {integrity: sha512-TKKzs9CglbsihSpcwJPXN5DBUssu4akRzPlp8QJRCoLrKoaOpyY2V1qDlxx+UMivn0i114YyTd4AawWl7eqIdw==} @@ -4124,6 +3898,7 @@ packages: dependencies: '@types/minimatch': 3.0.5 minimatch: 3.1.2 + dev: true /it-handshake/2.0.0: resolution: {integrity: sha512-K4q+mz8aLlCK3vTjtgNdHC9c/JbuOATsfogarjMsLcBZC5vYfKbX3Gq3AWcCdjIsIrPqzTlhPKSxl64LJkrt2w==} @@ -4131,6 +3906,18 @@ packages: it-pushable: 1.4.2 it-reader: 3.0.0 p-defer: 3.0.0 + dev: true + + /it-handshake/4.1.2: + resolution: {integrity: sha512-Q/EvrB4KWIX5+/wO7edBK3l79Vh28+iWPGZvZSSqwAtOJnHZIvywC+JUbiXPRJVXfICBJRqFETtIJcvrqWL2Zw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + it-pushable: 3.1.2 + it-reader: 6.0.2 + it-stream-types: 1.0.5 + p-defer: 4.0.0 + uint8arraylist: 2.4.3 + dev: false /it-last/1.0.6: resolution: {integrity: sha512-aFGeibeiX/lM4bX3JY0OkVCFkAw8+n9lkukkLNivbJRvNz8lI3YXv5xcqhFUV2lDJiraEK3OXRDbGuevnnR67Q==} @@ -4139,22 +3926,57 @@ packages: /it-length-prefixed/5.0.3: resolution: {integrity: sha512-b+jDHLcnOnPDQN79ronmzF5jeBjdJsy0ce2O6i6X4J5tnaO8Fd146ZA/tMbzaLlKnTpXa0eKtofpYhumXGENeg==} dependencies: - bl: 5.0.0 + bl: 5.1.0 buffer: 6.0.3 varint: 6.0.0 + dev: true + + /it-length-prefixed/8.0.4: + resolution: {integrity: sha512-5OJ1lxH+IaqJB7lxe8IAIwt9UfSfsmjKJoAI/RO9djYoBDt1Jfy9PeVHUmOfqhqyu/4kJvWBFAJUaG1HhLQ12A==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + err-code: 3.0.1 + it-stream-types: 1.0.5 + uint8-varint: 1.0.4 + uint8arraylist: 2.4.3 + uint8arrays: 4.0.3 + dev: false /it-map/1.0.6: resolution: {integrity: sha512-XT4/RM6UHIFG9IobGlQPFQUrlEKkU4eBUFG3qhWhfAdh1JfF2x11ShCrKCdmZ0OiZppPfoLuzcfA4cey6q3UAQ==} + dev: true + + /it-map/2.0.0: + resolution: {integrity: sha512-mLgtk/NZaN7NZ06iLrMXCA6jjhtZO0vZT5Ocsp31H+nsGI18RSPVmUbFyA1sWx7q+g92J22Sixya7T2QSSAwfA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false /it-merge/1.0.4: resolution: {integrity: sha512-DcL6GksTD2HQ7+5/q3JznXaLNfwjyG3/bObaF98da+oHfUiPmdo64oJlT9J8R8G5sJRU7thwaY5zxoAKCn7FJw==} dependencies: it-pushable: 1.4.2 + dev: true + + /it-merge/2.0.0: + resolution: {integrity: sha512-mH4bo/ZrMoU+Wlu7ZuYPNNh9oWZ/GvYbeXZ0zll97+Rp6H4jFu98iu6v9qqXDz//RUjdO9zGh8awzMfOElsjpA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + it-pushable: 3.1.2 + dev: false /it-pair/1.0.0: resolution: {integrity: sha512-9raOiDu5OAuDOahtMtapKQDrQTxBfzlzrNcB6o7JARHkt+7Bb1dMkW/TpYdAjBJE77KH3e2zGzwpGUP9tXbLww==} dependencies: get-iterator: 1.0.2 + dev: true + + /it-pair/2.0.3: + resolution: {integrity: sha512-heCgsbYscFCQY5YvltlGT9tjgLGYo7NxPEoJyl55X4BD2KOXpTyuwOhPLWhi9Io0y6+4ZUXCkyaQXIB6Y8xhRw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + it-stream-types: 1.0.5 + p-defer: 4.0.0 + dev: false /it-pb-rpc/0.1.13: resolution: {integrity: sha512-aZ4FNJsDgNepVVTmYXgXbQabIiOQyqYWUhdfovaHDcPSM5KjegwJihJEWMJjMyj+oLSKcZl0vmHgHxXWJ9/ufw==} @@ -4162,6 +3984,17 @@ packages: is-buffer: 2.0.5 it-handshake: 2.0.0 it-length-prefixed: 5.0.3 + dev: true + + /it-pb-stream/2.0.3: + resolution: {integrity: sha512-nuJzftDqk52gZmVD6T0sIKggXMhBkLSAFCD1OecxqGTVwk2wuDYY0ZHpcXZJuHty3kIuLY4xlWZrnDH9efV4YA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + it-handshake: 4.1.2 + it-length-prefixed: 8.0.4 + it-stream-types: 1.0.5 + uint8arraylist: 2.4.3 + dev: false /it-peekable/1.0.3: resolution: {integrity: sha512-5+8zemFS+wSfIkSZyf0Zh5kNN+iGyccN02914BY4w/Dj+uoFEoPSvj5vaWn8pNZJNSxzjW0zHRxC3LUb2KWJTQ==} @@ -4169,29 +4002,73 @@ packages: /it-pipe/1.1.0: resolution: {integrity: sha512-lF0/3qTVeth13TOnHVs0BTFaziwQF7m5Gg+E6JV0BXcLKutC92YjSi7bASgkPOXaLEb+YvNZrPorGMBIJvZfxg==} + dev: true + + /it-pipe/2.0.5: + resolution: {integrity: sha512-y85nW1N6zoiTnkidr2EAyC+ZVzc7Mwt2p+xt2a2ooG1ThFakSpNw1Kxm+7F13Aivru96brJhjQVRQNU+w0yozw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + it-merge: 2.0.0 + it-pushable: 3.1.2 + it-stream-types: 1.0.5 + dev: false /it-pushable/1.4.2: resolution: {integrity: sha512-vVPu0CGRsTI8eCfhMknA7KIBqqGFolbRx+1mbQ6XuZ7YCz995Qj7L4XUviwClFunisDq96FdxzF5FnAbw15afg==} dependencies: fast-fifo: 1.1.0 + dev: true + + /it-pushable/3.1.2: + resolution: {integrity: sha512-zU9FbeoGT0f+yobwm8agol2OTMXbq4ZSWLEi7hug6TEZx4qVhGhGyp31cayH04aBYsIoO2Nr5kgMjH/oWj2BJQ==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false /it-reader/3.0.0: resolution: {integrity: sha512-NxR40odATeaBmSefn6Xn43DplYvn2KtEKQzn4jrTRuPYXMky5M4e+KQ7aTJh0k0vkytLyeenGO1I1GXlGm4laQ==} dependencies: - bl: 5.0.0 + bl: 5.1.0 + dev: true + + /it-reader/6.0.2: + resolution: {integrity: sha512-rQdVyml+r/2v8PQsPfJgf626tAkbA7NW1EF6zuucT2Ryy1U6YJtSuCJL8fKuDOyiR/mLzbfP0QQJlSeeoLph2A==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + it-stream-types: 1.0.5 + uint8arraylist: 2.4.3 + dev: false /it-sort/1.0.1: resolution: {integrity: sha512-c+C48cP7XMMebB9irLrJs2EmpLILId8NYSojqAqN8etE8ienx0azBgaKvZHYH1DkerqIul0Fl2FqISu2BZgTEQ==} dependencies: it-all: 1.0.6 + dev: true + + /it-sort/2.0.0: + resolution: {integrity: sha512-yeAE97b5PEjCrWFUiNyR90eJdGslj8FB3cjT84rsc+mzx9lxPyR2zJkYB9ZOJoWE5MMebxqcQCLRT3OSlzo7Zg==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + it-all: 2.0.0 + dev: false + + /it-stream-types/1.0.5: + resolution: {integrity: sha512-I88Ka1nHgfX62e5mi5LLL+oueqz7Ltg0bUdtsUKDe9SoUqbQPf2Mp5kxDTe9pNhHQGs4pvYPAINwuZ1HAt42TA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false /it-take/1.0.2: resolution: {integrity: sha512-u7I6qhhxH7pSevcYNaMECtkvZW365ARqAIt9K+xjdK1B2WUDEjQSfETkOCT8bxFq/59LqrN3cMLUtTgmDBaygw==} + dev: true + + /it-take/2.0.0: + resolution: {integrity: sha512-lN3diSTomOvYBk2K0LHAgrQ52DlQfvq8tH/+HLAFpX8Q3JwBkr/BPJEi3Z3Lf8jMmN1KOCBXvt5sXa3eW9vUmg==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false /it-tar/3.0.0: resolution: {integrity: sha512-VhD1Hnx4IXDcQgYJnJgltkn+w5F8kiJaB46lqovh+YWfty2JGW7i40QQjWbSvcg1QfaU8is8AVX8xwx/Db9oOg==} dependencies: - bl: 5.0.0 + bl: 5.1.0 buffer: 6.0.3 iso-constants: 0.1.2 it-concat: 2.0.0 @@ -4208,6 +4085,7 @@ packages: p-defer: 3.0.0 p-fifo: 1.0.0 readable-stream: 3.6.0 + dev: true /it-ws/4.0.0: resolution: {integrity: sha512-XmTzpMkevc6rUboy73r0CCNhciMmL/Yxir9O6FujRwdrjysztqLBQ1Xkr4CpY2m7BVSCObKotaCWJeZ29lOXRA==} @@ -4219,6 +4097,21 @@ packages: transitivePeerDependencies: - bufferutil - utf-8-validate + dev: true + + /it-ws/5.0.6: + resolution: {integrity: sha512-TEEJQaGtkxgP/nGVq8dq48nPT85Afu8kwwvtDFLj4rQLWRhZcb26RWdXLdn9qhXkWPiWbK5H7JWBW1Bebj/SuQ==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + event-iterator: 2.0.0 + iso-url: 1.2.1 + it-stream-types: 1.0.5 + uint8arrays: 4.0.3 + ws: 8.12.0 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + dev: false /jest-changed-files/28.1.3: resolution: {integrity: sha512-esaOfUWJXk2nfZt9SPyC8gA1kNfdKLkQWyzsMlqq8msYSlNKfmZxfRgZn4Cd4MGVUF+7v6dBs0d5TOAKa7iIiA==} @@ -4228,6 +4121,14 @@ packages: p-limit: 3.1.0 dev: true + /jest-changed-files/29.4.0: + resolution: {integrity: sha512-rnI1oPxgFghoz32Y8eZsGJMjW54UlqT17ycQeCEktcxxwqqKdlj9afl8LNeO0Pbu+h2JQHThQP0BzS67eTRx4w==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + execa: 5.1.1 + p-limit: 3.1.0 + dev: true + /jest-circus/28.1.3: resolution: {integrity: sha512-cZ+eS5zc79MBwt+IhQhiEp0OeBddpc1n8MBo1nMB8A7oPMKEO+Sre+wHaLJexQUj9Ya/8NOBY0RESUgYjB6fow==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -4236,7 +4137,7 @@ packages: '@jest/expect': 28.1.3 '@jest/test-result': 28.1.3 '@jest/types': 28.1.3 - '@types/node': 18.7.14 + '@types/node': 18.11.18 chalk: 4.1.2 co: 4.6.0 dedent: 0.7.0 @@ -4250,37 +4151,36 @@ packages: p-limit: 3.1.0 pretty-format: 28.1.3 slash: 3.0.0 - stack-utils: 2.0.5 + stack-utils: 2.0.6 transitivePeerDependencies: - supports-color dev: true - /jest-cli/28.1.3_4echt27za7uk6ezjshmbxcfmgy: - resolution: {integrity: sha512-roY3kvrv57Azn1yPgdTebPAXvdR2xfezaKKYzVxZ6It/5NCxzJym6tUI5P1zkdWhfUYkxEI9uZWcQdaFLo8mJQ==} - engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - hasBin: true - peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 - peerDependenciesMeta: - node-notifier: - optional: true + /jest-circus/29.4.1: + resolution: {integrity: sha512-v02NuL5crMNY4CGPHBEflLzl4v91NFb85a+dH9a1pUNx6Xjggrd8l9pPy4LZ1VYNRXlb+f65+7O/MSIbLir6pA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/core': 28.1.3_ts-node@10.9.1 - '@jest/test-result': 28.1.3 - '@jest/types': 28.1.3 + '@jest/environment': 29.4.1 + '@jest/expect': 29.4.1 + '@jest/test-result': 29.4.1 + '@jest/types': 29.4.1 + '@types/node': 18.11.18 chalk: 4.1.2 - exit: 0.1.2 - graceful-fs: 4.2.10 - import-local: 3.1.0 - jest-config: 28.1.3_4echt27za7uk6ezjshmbxcfmgy - jest-util: 28.1.3 - jest-validate: 28.1.3 - prompts: 2.4.2 - yargs: 17.5.1 + co: 4.6.0 + dedent: 0.7.0 + is-generator-fn: 2.1.0 + jest-each: 29.4.1 + jest-matcher-utils: 29.4.1 + jest-message-util: 29.4.1 + jest-runtime: 29.4.1 + jest-snapshot: 29.4.1 + jest-util: 29.4.1 + p-limit: 3.1.0 + pretty-format: 29.4.1 + slash: 3.0.0 + stack-utils: 2.0.6 transitivePeerDependencies: - - '@types/node' - supports-color - - ts-node dev: true /jest-cli/28.1.3_@types+node@16.11.59: @@ -4304,16 +4204,16 @@ packages: jest-util: 28.1.3 jest-validate: 28.1.3 prompts: 2.4.2 - yargs: 17.5.1 + yargs: 17.6.2 transitivePeerDependencies: - '@types/node' - supports-color - ts-node dev: true - /jest-cli/28.1.3_gsb7asu77en4txj3es3i65pxci: - resolution: {integrity: sha512-roY3kvrv57Azn1yPgdTebPAXvdR2xfezaKKYzVxZ6It/5NCxzJym6tUI5P1zkdWhfUYkxEI9uZWcQdaFLo8mJQ==} - engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + /jest-cli/29.4.1_@types+node@16.11.59: + resolution: {integrity: sha512-jz7GDIhtxQ37M+9dlbv5K+/FVcIo1O/b1sX3cJgzlQUf/3VG25nvuWzlDC4F1FLLzUThJeWLu8I7JF9eWpuURQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 @@ -4321,64 +4221,24 @@ packages: node-notifier: optional: true dependencies: - '@jest/core': 28.1.3_ts-node@10.9.1 - '@jest/test-result': 28.1.3 - '@jest/types': 28.1.3 + '@jest/core': 29.4.1 + '@jest/test-result': 29.4.1 + '@jest/types': 29.4.1 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.10 import-local: 3.1.0 - jest-config: 28.1.3_gsb7asu77en4txj3es3i65pxci - jest-util: 28.1.3 - jest-validate: 28.1.3 + jest-config: 29.4.1_@types+node@16.11.59 + jest-util: 29.4.1 + jest-validate: 29.4.1 prompts: 2.4.2 - yargs: 17.5.1 + yargs: 17.6.2 transitivePeerDependencies: - '@types/node' - supports-color - ts-node dev: true - /jest-config/28.1.3_4echt27za7uk6ezjshmbxcfmgy: - resolution: {integrity: sha512-MG3INjByJ0J4AsNBm7T3hsuxKQqFIiRo/AUqb1q9LRKI5UU6Aar9JHbr9Ivn1TVwfUD9KirRoM/T6u8XlcQPHQ==} - engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - peerDependencies: - '@types/node': '*' - ts-node: '>=9.0.0' - peerDependenciesMeta: - '@types/node': - optional: true - ts-node: - optional: true - dependencies: - '@babel/core': 7.18.13 - '@jest/test-sequencer': 28.1.3 - '@jest/types': 28.1.3 - '@types/node': 16.11.59 - babel-jest: 28.1.3_@babel+core@7.18.13 - chalk: 4.1.2 - ci-info: 3.3.2 - deepmerge: 4.2.2 - glob: 7.2.3 - graceful-fs: 4.2.10 - jest-circus: 28.1.3 - jest-environment-node: 28.1.3 - jest-get-type: 28.0.2 - jest-regex-util: 28.0.2 - jest-resolve: 28.1.3 - jest-runner: 28.1.3 - jest-util: 28.1.3 - jest-validate: 28.1.3 - micromatch: 4.0.5 - parse-json: 5.2.0 - pretty-format: 28.1.3 - slash: 3.0.0 - strip-json-comments: 3.1.1 - ts-node: 10.9.1_f4s53rsdbgkmxc2oaa23drhnsy - transitivePeerDependencies: - - supports-color - dev: true - /jest-config/28.1.3_@types+node@16.11.59: resolution: {integrity: sha512-MG3INjByJ0J4AsNBm7T3hsuxKQqFIiRo/AUqb1q9LRKI5UU6Aar9JHbr9Ivn1TVwfUD9KirRoM/T6u8XlcQPHQ==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -4391,14 +4251,14 @@ packages: ts-node: optional: true dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@jest/test-sequencer': 28.1.3 '@jest/types': 28.1.3 '@types/node': 16.11.59 - babel-jest: 28.1.3_@babel+core@7.18.13 + babel-jest: 28.1.3_@babel+core@7.20.12 chalk: 4.1.2 - ci-info: 3.3.2 - deepmerge: 4.2.2 + ci-info: 3.7.1 + deepmerge: 4.3.0 glob: 7.2.3 graceful-fs: 4.2.10 jest-circus: 28.1.3 @@ -4418,7 +4278,7 @@ packages: - supports-color dev: true - /jest-config/28.1.3_@types+node@18.7.14: + /jest-config/28.1.3_@types+node@18.11.18: resolution: {integrity: sha512-MG3INjByJ0J4AsNBm7T3hsuxKQqFIiRo/AUqb1q9LRKI5UU6Aar9JHbr9Ivn1TVwfUD9KirRoM/T6u8XlcQPHQ==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} peerDependencies: @@ -4430,14 +4290,14 @@ packages: ts-node: optional: true dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@jest/test-sequencer': 28.1.3 '@jest/types': 28.1.3 - '@types/node': 18.7.14 - babel-jest: 28.1.3_@babel+core@7.18.13 + '@types/node': 18.11.18 + babel-jest: 28.1.3_@babel+core@7.20.12 chalk: 4.1.2 - ci-info: 3.3.2 - deepmerge: 4.2.2 + ci-info: 3.7.1 + deepmerge: 4.3.0 glob: 7.2.3 graceful-fs: 4.2.10 jest-circus: 28.1.3 @@ -4457,9 +4317,9 @@ packages: - supports-color dev: true - /jest-config/28.1.3_gsb7asu77en4txj3es3i65pxci: - resolution: {integrity: sha512-MG3INjByJ0J4AsNBm7T3hsuxKQqFIiRo/AUqb1q9LRKI5UU6Aar9JHbr9Ivn1TVwfUD9KirRoM/T6u8XlcQPHQ==} - engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + /jest-config/29.4.1_@types+node@16.11.59: + resolution: {integrity: sha512-g7p3q4NuXiM4hrS4XFATTkd+2z0Ml2RhFmFPM8c3WyKwVDNszbl4E7cV7WIx1YZeqqCtqbtTtZhGZWJlJqngzg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: '@types/node': '*' ts-node: '>=9.0.0' @@ -4469,30 +4329,68 @@ packages: ts-node: optional: true dependencies: - '@babel/core': 7.18.13 - '@jest/test-sequencer': 28.1.3 - '@jest/types': 28.1.3 - '@types/node': 18.7.14 - babel-jest: 28.1.3_@babel+core@7.18.13 + '@babel/core': 7.20.12 + '@jest/test-sequencer': 29.4.1 + '@jest/types': 29.4.1 + '@types/node': 16.11.59 + babel-jest: 29.4.1_@babel+core@7.20.12 chalk: 4.1.2 - ci-info: 3.3.2 - deepmerge: 4.2.2 + ci-info: 3.7.1 + deepmerge: 4.3.0 glob: 7.2.3 graceful-fs: 4.2.10 - jest-circus: 28.1.3 - jest-environment-node: 28.1.3 - jest-get-type: 28.0.2 - jest-regex-util: 28.0.2 - jest-resolve: 28.1.3 - jest-runner: 28.1.3 - jest-util: 28.1.3 - jest-validate: 28.1.3 + jest-circus: 29.4.1 + jest-environment-node: 29.4.1 + jest-get-type: 29.2.0 + jest-regex-util: 29.2.0 + jest-resolve: 29.4.1 + jest-runner: 29.4.1 + jest-util: 29.4.1 + jest-validate: 29.4.1 micromatch: 4.0.5 parse-json: 5.2.0 - pretty-format: 28.1.3 + pretty-format: 29.4.1 + slash: 3.0.0 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + dev: true + + /jest-config/29.4.1_@types+node@18.11.18: + resolution: {integrity: sha512-g7p3q4NuXiM4hrS4XFATTkd+2z0Ml2RhFmFPM8c3WyKwVDNszbl4E7cV7WIx1YZeqqCtqbtTtZhGZWJlJqngzg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + '@types/node': '*' + ts-node: '>=9.0.0' + peerDependenciesMeta: + '@types/node': + optional: true + ts-node: + optional: true + dependencies: + '@babel/core': 7.20.12 + '@jest/test-sequencer': 29.4.1 + '@jest/types': 29.4.1 + '@types/node': 18.11.18 + babel-jest: 29.4.1_@babel+core@7.20.12 + chalk: 4.1.2 + ci-info: 3.7.1 + deepmerge: 4.3.0 + glob: 7.2.3 + graceful-fs: 4.2.10 + jest-circus: 29.4.1 + jest-environment-node: 29.4.1 + jest-get-type: 29.2.0 + jest-regex-util: 29.2.0 + jest-resolve: 29.4.1 + jest-runner: 29.4.1 + jest-util: 29.4.1 + jest-validate: 29.4.1 + micromatch: 4.0.5 + parse-json: 5.2.0 + pretty-format: 29.4.1 slash: 3.0.0 strip-json-comments: 3.1.1 - ts-node: 10.9.1_apbkdfxvcdmborgupeskcsfbo4 transitivePeerDependencies: - supports-color dev: true @@ -4517,6 +4415,16 @@ packages: pretty-format: 28.1.3 dev: true + /jest-diff/29.4.1: + resolution: {integrity: sha512-uazdl2g331iY56CEyfbNA0Ut7Mn2ulAG5vUaEHXycf1L6IPyuImIxSz4F0VYBKi7LYIuxOwTZzK3wh5jHzASMw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + chalk: 4.1.2 + diff-sequences: 29.3.1 + jest-get-type: 29.2.0 + pretty-format: 29.4.1 + dev: true + /jest-docblock/28.1.1: resolution: {integrity: sha512-3wayBVNiOYx0cwAbl9rwm5kKFP8yHH3d/fkEaL02NPTkDojPtheGB7HZSFY4wzX+DxyrvhXz0KSCVksmCknCuA==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -4524,6 +4432,13 @@ packages: detect-newline: 3.1.0 dev: true + /jest-docblock/29.2.0: + resolution: {integrity: sha512-bkxUsxTgWQGbXV5IENmfiIuqZhJcyvF7tU4zJ/7ioTutdz4ToB5Yx6JOFBpgI+TphRY4lhOyCWGNH/QFQh5T6A==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + detect-newline: 3.1.0 + dev: true + /jest-each/28.1.3: resolution: {integrity: sha512-arT1z4sg2yABU5uogObVPvSlSMQlDA48owx07BDPAiasW0yYpYHYOo4HHLz9q0BVzDVU4hILFjzJw0So9aCL/g==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -4535,6 +4450,17 @@ packages: pretty-format: 28.1.3 dev: true + /jest-each/29.4.1: + resolution: {integrity: sha512-QlYFiX3llJMWUV0BtWht/esGEz9w+0i7BHwODKCze7YzZzizgExB9MOfiivF/vVT0GSQ8wXLhvHXh3x2fVD4QQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/types': 29.4.1 + chalk: 4.1.2 + jest-get-type: 29.2.0 + jest-util: 29.4.1 + pretty-format: 29.4.1 + dev: true + /jest-environment-node/28.1.3: resolution: {integrity: sha512-ugP6XOhEpjAEhGYvp5Xj989ns5cB1K6ZdjBYuS30umT4CQEETaxSiPcZ/E1kFktX4GkrcM4qu07IIlDYX1gp+A==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -4542,11 +4468,23 @@ packages: '@jest/environment': 28.1.3 '@jest/fake-timers': 28.1.3 '@jest/types': 28.1.3 - '@types/node': 18.7.14 + '@types/node': 18.11.18 jest-mock: 28.1.3 jest-util: 28.1.3 dev: true + /jest-environment-node/29.4.1: + resolution: {integrity: sha512-x/H2kdVgxSkxWAIlIh9MfMuBa0hZySmfsC5lCsWmWr6tZySP44ediRKDUiNggX/eHLH7Cd5ZN10Rw+XF5tXsqg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/environment': 29.4.1 + '@jest/fake-timers': 29.4.1 + '@jest/types': 29.4.1 + '@types/node': 18.11.18 + jest-mock: 29.4.1 + jest-util: 29.4.1 + dev: true + /jest-get-type/27.5.1: resolution: {integrity: sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} @@ -4557,15 +4495,20 @@ packages: engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dev: true + /jest-get-type/29.2.0: + resolution: {integrity: sha512-uXNJlg8hKFEnDgFsrCjznB+sTxdkuqiCL6zMgA75qEbAJjJYTs9XPrvDctrEig2GDow22T/LvHgO57iJhXB/UA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dev: true + /jest-haste-map/28.1.3: resolution: {integrity: sha512-3S+RQWDXccXDKSWnkHa/dPwt+2qwA8CJzR61w3FoYCvoo3Pn8tvGcysmMF0Bj0EX5RYvAI2EIvC57OmotfdtKA==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: '@jest/types': 28.1.3 - '@types/graceful-fs': 4.1.5 - '@types/node': 18.7.14 - anymatch: 3.1.2 - fb-watchman: 2.0.1 + '@types/graceful-fs': 4.1.6 + '@types/node': 18.11.18 + anymatch: 3.1.3 + fb-watchman: 2.0.2 graceful-fs: 4.2.10 jest-regex-util: 28.0.2 jest-util: 28.1.3 @@ -4576,6 +4519,25 @@ packages: fsevents: 2.3.2 dev: true + /jest-haste-map/29.4.1: + resolution: {integrity: sha512-imTjcgfVVTvg02khXL11NNLTx9ZaofbAWhilrMg/G8dIkp+HYCswhxf0xxJwBkfhWb3e8dwbjuWburvxmcr58w==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/types': 29.4.1 + '@types/graceful-fs': 4.1.6 + '@types/node': 18.11.18 + anymatch: 3.1.3 + fb-watchman: 2.0.2 + graceful-fs: 4.2.10 + jest-regex-util: 29.2.0 + jest-util: 29.4.1 + jest-worker: 29.4.1 + micromatch: 4.0.5 + walker: 1.0.8 + optionalDependencies: + fsevents: 2.3.2 + dev: true + /jest-leak-detector/28.1.3: resolution: {integrity: sha512-WFVJhnQsiKtDEo5lG2mM0v40QWnBM+zMdHHyJs8AWZ7J0QZJS59MsyKeJHWhpBZBH32S48FOVvGyOFT1h0DlqA==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -4584,6 +4546,14 @@ packages: pretty-format: 28.1.3 dev: true + /jest-leak-detector/29.4.1: + resolution: {integrity: sha512-akpZv7TPyGMnH2RimOCgy+hPmWZf55EyFUvymQ4LMsQP8xSPlZumCPtXGoDhFNhUE2039RApZkTQDKU79p/FiQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + jest-get-type: 29.2.0 + pretty-format: 29.4.1 + dev: true + /jest-matcher-utils/27.5.1: resolution: {integrity: sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} @@ -4604,6 +4574,16 @@ packages: pretty-format: 28.1.3 dev: true + /jest-matcher-utils/29.4.1: + resolution: {integrity: sha512-k5h0u8V4nAEy6lSACepxL/rw78FLDkBnXhZVgFneVpnJONhb2DhZj/Gv4eNe+1XqQ5IhgUcqj745UwH0HJmMnA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + chalk: 4.1.2 + jest-diff: 29.4.1 + jest-get-type: 29.2.0 + pretty-format: 29.4.1 + dev: true + /jest-message-util/28.1.3: resolution: {integrity: sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -4616,7 +4596,22 @@ packages: micromatch: 4.0.5 pretty-format: 28.1.3 slash: 3.0.0 - stack-utils: 2.0.5 + stack-utils: 2.0.6 + dev: true + + /jest-message-util/29.4.1: + resolution: {integrity: sha512-H4/I0cXUaLeCw6FM+i4AwCnOwHRgitdaUFOdm49022YD5nfyr8C/DrbXOBEyJaj+w/y0gGJ57klssOaUiLLQGQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@babel/code-frame': 7.18.6 + '@jest/types': 29.4.1 + '@types/stack-utils': 2.0.1 + chalk: 4.1.2 + graceful-fs: 4.2.10 + micromatch: 4.0.5 + pretty-format: 29.4.1 + slash: 3.0.0 + stack-utils: 2.0.6 dev: true /jest-mock/28.1.3: @@ -4624,11 +4619,20 @@ packages: engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: '@jest/types': 28.1.3 - '@types/node': 18.7.14 + '@types/node': 18.11.18 dev: true - /jest-pnp-resolver/1.2.2_jest-resolve@28.1.3: - resolution: {integrity: sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==} + /jest-mock/29.4.1: + resolution: {integrity: sha512-MwA4hQ7zBOcgVCVnsM8TzaFLVUD/pFWTfbkY953Y81L5ret3GFRZtmPmRFAjKQSdCKoJvvqOu6Bvfpqlwwb0dQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/types': 29.4.1 + '@types/node': 18.11.18 + jest-util: 29.4.1 + dev: true + + /jest-pnp-resolver/1.2.3_jest-resolve@28.1.3: + resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==} engines: {node: '>=6'} peerDependencies: jest-resolve: '*' @@ -4639,11 +4643,28 @@ packages: jest-resolve: 28.1.3 dev: true + /jest-pnp-resolver/1.2.3_jest-resolve@29.4.1: + resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==} + engines: {node: '>=6'} + peerDependencies: + jest-resolve: '*' + peerDependenciesMeta: + jest-resolve: + optional: true + dependencies: + jest-resolve: 29.4.1 + dev: true + /jest-regex-util/28.0.2: resolution: {integrity: sha512-4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dev: true + /jest-regex-util/29.2.0: + resolution: {integrity: sha512-6yXn0kg2JXzH30cr2NlThF+70iuO/3irbaB4mh5WyqNIvLLP+B6sFdluO1/1RJmslyh/f9osnefECflHvTbwVA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dev: true + /jest-resolve-dependencies/28.1.3: resolution: {integrity: sha512-qa0QO2Q0XzQoNPouMbCc7Bvtsem8eQgVPNkwn9LnS+R2n8DaVDPL/U1gngC0LTl1RYXJU0uJa2BMC2DbTfFrHA==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -4654,6 +4675,16 @@ packages: - supports-color dev: true + /jest-resolve-dependencies/29.4.1: + resolution: {integrity: sha512-Y3QG3M1ncAMxfjbYgtqNXC5B595zmB6e//p/qpA/58JkQXu/IpLDoLeOa8YoYfsSglBKQQzNUqtfGJJT/qLmJg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + jest-regex-util: 29.2.0 + jest-snapshot: 29.4.1 + transitivePeerDependencies: + - supports-color + dev: true + /jest-resolve/28.1.3: resolution: {integrity: sha512-Z1W3tTjE6QaNI90qo/BJpfnvpxtaFTFw5CDgwpyE/Kz8U/06N1Hjf4ia9quUhCh39qIGWF1ZuxFiBiJQwSEYKQ==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -4661,11 +4692,26 @@ packages: chalk: 4.1.2 graceful-fs: 4.2.10 jest-haste-map: 28.1.3 - jest-pnp-resolver: 1.2.2_jest-resolve@28.1.3 + jest-pnp-resolver: 1.2.3_jest-resolve@28.1.3 jest-util: 28.1.3 jest-validate: 28.1.3 resolve: 1.22.1 - resolve.exports: 1.1.0 + resolve.exports: 1.1.1 + slash: 3.0.0 + dev: true + + /jest-resolve/29.4.1: + resolution: {integrity: sha512-j/ZFNV2lm9IJ2wmlq1uYK0Y/1PiyDq9g4HEGsNTNr3viRbJdV+8Lf1SXIiLZXFvyiisu0qUyIXGBnw+OKWkJwQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + chalk: 4.1.2 + graceful-fs: 4.2.10 + jest-haste-map: 29.4.1 + jest-pnp-resolver: 1.2.3_jest-resolve@29.4.1 + jest-util: 29.4.1 + jest-validate: 29.4.1 + resolve: 1.22.1 + resolve.exports: 2.0.0 slash: 3.0.0 dev: true @@ -4678,7 +4724,7 @@ packages: '@jest/test-result': 28.1.3 '@jest/transform': 28.1.3 '@jest/types': 28.1.3 - '@types/node': 18.7.14 + '@types/node': 18.11.18 chalk: 4.1.2 emittery: 0.10.2 graceful-fs: 4.2.10 @@ -4698,6 +4744,35 @@ packages: - supports-color dev: true + /jest-runner/29.4.1: + resolution: {integrity: sha512-8d6XXXi7GtHmsHrnaqBKWxjKb166Eyj/ksSaUYdcBK09VbjPwIgWov1VwSmtupCIz8q1Xv4Qkzt/BTo3ZqiCeg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/console': 29.4.1 + '@jest/environment': 29.4.1 + '@jest/test-result': 29.4.1 + '@jest/transform': 29.4.1 + '@jest/types': 29.4.1 + '@types/node': 18.11.18 + chalk: 4.1.2 + emittery: 0.13.1 + graceful-fs: 4.2.10 + jest-docblock: 29.2.0 + jest-environment-node: 29.4.1 + jest-haste-map: 29.4.1 + jest-leak-detector: 29.4.1 + jest-message-util: 29.4.1 + jest-resolve: 29.4.1 + jest-runtime: 29.4.1 + jest-util: 29.4.1 + jest-watcher: 29.4.1 + jest-worker: 29.4.1 + p-limit: 3.1.0 + source-map-support: 0.5.13 + transitivePeerDependencies: + - supports-color + dev: true + /jest-runtime/28.1.3: resolution: {integrity: sha512-NU+881ScBQQLc1JHG5eJGU7Ui3kLKrmwCPPtYsJtBykixrM2OhVQlpMmFWJjMyDfdkGgBMNjXCGB/ebzsgNGQw==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} @@ -4728,21 +4803,52 @@ packages: - supports-color dev: true + /jest-runtime/29.4.1: + resolution: {integrity: sha512-UXTMU9uKu2GjYwTtoAw5rn4STxWw/nadOfW7v1sx6LaJYa3V/iymdCLQM6xy3+7C6mY8GfX22vKpgxY171UIoA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/environment': 29.4.1 + '@jest/fake-timers': 29.4.1 + '@jest/globals': 29.4.1 + '@jest/source-map': 29.2.0 + '@jest/test-result': 29.4.1 + '@jest/transform': 29.4.1 + '@jest/types': 29.4.1 + '@types/node': 18.11.18 + chalk: 4.1.2 + cjs-module-lexer: 1.2.2 + collect-v8-coverage: 1.0.1 + glob: 7.2.3 + graceful-fs: 4.2.10 + jest-haste-map: 29.4.1 + jest-message-util: 29.4.1 + jest-mock: 29.4.1 + jest-regex-util: 29.2.0 + jest-resolve: 29.4.1 + jest-snapshot: 29.4.1 + jest-util: 29.4.1 + semver: 7.3.8 + slash: 3.0.0 + strip-bom: 4.0.0 + transitivePeerDependencies: + - supports-color + dev: true + /jest-snapshot/28.1.3: resolution: {integrity: sha512-4lzMgtiNlc3DU/8lZfmqxN3AYD6GGLbl+72rdBpXvcV+whX7mDrREzkPdp2RnmfIiWBg1YbuFSkXduF2JcafJg==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: - '@babel/core': 7.18.13 - '@babel/generator': 7.20.7 - '@babel/plugin-syntax-typescript': 7.20.0_@babel+core@7.18.13 - '@babel/traverse': 7.20.10 + '@babel/core': 7.20.12 + '@babel/generator': 7.20.14 + '@babel/plugin-syntax-typescript': 7.20.0_@babel+core@7.20.12 + '@babel/traverse': 7.20.13 '@babel/types': 7.20.7 '@jest/expect-utils': 28.1.3 '@jest/transform': 28.1.3 '@jest/types': 28.1.3 - '@types/babel__traverse': 7.18.0 - '@types/prettier': 2.7.0 - babel-preset-current-node-syntax: 1.0.1_@babel+core@7.18.13 + '@types/babel__traverse': 7.18.3 + '@types/prettier': 2.7.2 + babel-preset-current-node-syntax: 1.0.1_@babel+core@7.20.12 chalk: 4.1.2 expect: 28.1.3 graceful-fs: 4.2.10 @@ -4759,14 +4865,46 @@ packages: - supports-color dev: true + /jest-snapshot/29.4.1: + resolution: {integrity: sha512-l4iV8EjGgQWVz3ee/LR9sULDk2pCkqb71bjvlqn+qp90lFwpnulHj4ZBT8nm1hA1C5wowXLc7MGnw321u0tsYA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@babel/core': 7.20.12 + '@babel/generator': 7.20.14 + '@babel/plugin-syntax-jsx': 7.18.6_@babel+core@7.20.12 + '@babel/plugin-syntax-typescript': 7.20.0_@babel+core@7.20.12 + '@babel/traverse': 7.20.13 + '@babel/types': 7.20.7 + '@jest/expect-utils': 29.4.1 + '@jest/transform': 29.4.1 + '@jest/types': 29.4.1 + '@types/babel__traverse': 7.18.3 + '@types/prettier': 2.7.2 + babel-preset-current-node-syntax: 1.0.1_@babel+core@7.20.12 + chalk: 4.1.2 + expect: 29.4.1 + graceful-fs: 4.2.10 + jest-diff: 29.4.1 + jest-get-type: 29.2.0 + jest-haste-map: 29.4.1 + jest-matcher-utils: 29.4.1 + jest-message-util: 29.4.1 + jest-util: 29.4.1 + natural-compare: 1.4.0 + pretty-format: 29.4.1 + semver: 7.3.8 + transitivePeerDependencies: + - supports-color + dev: true + /jest-util/27.5.1: resolution: {integrity: sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: '@jest/types': 27.5.1 - '@types/node': 18.7.14 + '@types/node': 18.11.18 chalk: 4.1.2 - ci-info: 3.3.2 + ci-info: 3.7.1 graceful-fs: 4.2.10 picomatch: 2.3.1 dev: true @@ -4776,9 +4914,21 @@ packages: engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: '@jest/types': 28.1.3 - '@types/node': 18.7.14 + '@types/node': 18.11.18 chalk: 4.1.2 - ci-info: 3.3.2 + ci-info: 3.7.1 + graceful-fs: 4.2.10 + picomatch: 2.3.1 + dev: true + + /jest-util/29.4.1: + resolution: {integrity: sha512-bQy9FPGxVutgpN4VRc0hk6w7Hx/m6L53QxpDreTZgJd9gfx/AV2MjyPde9tGyZRINAUrSv57p2inGBu2dRLmkQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/types': 29.4.1 + '@types/node': 18.11.18 + chalk: 4.1.2 + ci-info: 3.7.1 graceful-fs: 4.2.10 picomatch: 2.3.1 dev: true @@ -4795,13 +4945,25 @@ packages: pretty-format: 28.1.3 dev: true + /jest-validate/29.4.1: + resolution: {integrity: sha512-qNZXcZQdIQx4SfUB/atWnI4/I2HUvhz8ajOSYUu40CSmf9U5emil8EDHgE7M+3j9/pavtk3knlZBDsgFvv/SWw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/types': 29.4.1 + camelcase: 6.3.0 + chalk: 4.1.2 + jest-get-type: 29.2.0 + leven: 3.1.0 + pretty-format: 29.4.1 + dev: true + /jest-watcher/28.1.3: resolution: {integrity: sha512-t4qcqj9hze+jviFPUN3YAtAEeFnr/azITXQEMARf5cMwKY2SMBRnCQTXLixTl20OR6mLh9KLMrgVJgJISym+1g==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: '@jest/test-result': 28.1.3 '@jest/types': 28.1.3 - '@types/node': 18.7.14 + '@types/node': 18.11.18 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.10.2 @@ -4809,41 +4971,37 @@ packages: string-length: 4.0.2 dev: true - /jest-worker/27.5.1: - resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} - engines: {node: '>= 10.13.0'} + /jest-watcher/29.4.1: + resolution: {integrity: sha512-vFOzflGFs27nU6h8dpnVRER3O2rFtL+VMEwnG0H3KLHcllLsU8y9DchSh0AL/Rg5nN1/wSiQ+P4ByMGpuybaVw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@types/node': 18.7.14 - merge-stream: 2.0.0 - supports-color: 8.1.1 + '@jest/test-result': 29.4.1 + '@jest/types': 29.4.1 + '@types/node': 18.11.18 + ansi-escapes: 4.3.2 + chalk: 4.1.2 + emittery: 0.13.1 + jest-util: 29.4.1 + string-length: 4.0.2 dev: true /jest-worker/28.1.3: resolution: {integrity: sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: - '@types/node': 18.7.14 + '@types/node': 18.11.18 merge-stream: 2.0.0 supports-color: 8.1.1 dev: true - /jest/28.1.0_4echt27za7uk6ezjshmbxcfmgy: - resolution: {integrity: sha512-TZR+tHxopPhzw3c3560IJXZWLNHgpcz1Zh0w5A65vynLGNcg/5pZ+VildAd7+XGOu6jd58XMY/HNn0IkZIXVXg==} - engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - hasBin: true - peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 - peerDependenciesMeta: - node-notifier: - optional: true + /jest-worker/29.4.1: + resolution: {integrity: sha512-O9doU/S1EBe+yp/mstQ0VpPwpv0Clgn68TkNwGxL6/usX/KUW9Arnn4ag8C3jc6qHcXznhsT5Na1liYzAsuAbQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/core': 28.1.3_ts-node@10.9.1 - import-local: 3.1.0 - jest-cli: 28.1.3_4echt27za7uk6ezjshmbxcfmgy - transitivePeerDependencies: - - '@types/node' - - supports-color - - ts-node + '@types/node': 18.11.18 + jest-util: 29.4.1 + merge-stream: 2.0.0 + supports-color: 8.1.1 dev: true /jest/28.1.0_@types+node@16.11.59: @@ -4865,9 +5023,9 @@ packages: - ts-node dev: true - /jest/28.1.0_gsb7asu77en4txj3es3i65pxci: - resolution: {integrity: sha512-TZR+tHxopPhzw3c3560IJXZWLNHgpcz1Zh0w5A65vynLGNcg/5pZ+VildAd7+XGOu6jd58XMY/HNn0IkZIXVXg==} - engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + /jest/29.4.1_@types+node@16.11.59: + resolution: {integrity: sha512-cknimw7gAXPDOmj0QqztlxVtBVCw2lYY9CeIE5N6kD+kET1H4H79HSNISJmijb1HF+qk+G+ploJgiDi5k/fRlg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 @@ -4875,9 +5033,10 @@ packages: node-notifier: optional: true dependencies: - '@jest/core': 28.1.3_ts-node@10.9.1 + '@jest/core': 29.4.1 + '@jest/types': 29.4.1 import-local: 3.1.0 - jest-cli: 28.1.3_gsb7asu77en4txj3es3i65pxci + jest-cli: 29.4.1_@types+node@16.11.59 transitivePeerDependencies: - '@types/node' - supports-color @@ -4887,9 +5046,6 @@ packages: /js-base64/3.7.2: resolution: {integrity: sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==} - /js-base64/3.7.3: - resolution: {integrity: sha512-PAr6Xg2jvd7MCR6Ld9Jg3BmTcjYsHEBx1VlwEwULb/qowPf5VD9kEMagj23Gm7JRnSvE/Da/57nChZjnvL8v6A==} - /js-sha3/0.8.0: resolution: {integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==} dev: true @@ -4908,6 +5064,7 @@ packages: /jsbn/0.1.1: resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==} + dev: true /jsbn/1.1.0: resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} @@ -4918,22 +5075,21 @@ packages: hasBin: true dev: true - /json-parse-better-errors/1.0.2: - resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} - dev: true - /json-parse-even-better-errors/2.3.1: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} dev: true /json-schema-traverse/0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + dev: true /json-schema/0.4.0: resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} + dev: true /json-stringify-safe/5.0.1: resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} + dev: true /json-text-sequence/0.3.0: resolution: {integrity: sha512-7khKIYPKwXQem4lWXfpIN/FEnhztCeRPSxH4qm3fVlqulwujrRDD54xAwDDn/qVKpFtV550+QAkcWJcufzqQuA==} @@ -4942,15 +5098,8 @@ packages: '@sovpro/delimited-stream': 1.1.0 dev: true - /json5/1.0.1: - resolution: {integrity: sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==} - hasBin: true - dependencies: - minimist: 1.2.6 - dev: true - - /json5/2.2.1: - resolution: {integrity: sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==} + /json5/2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} hasBin: true dev: true @@ -4963,32 +5112,10 @@ packages: extsprintf: 1.3.0 json-schema: 0.4.0 verror: 1.10.0 + dev: true /keypair/1.0.4: resolution: {integrity: sha512-zwhgOhhniaL7oxMgUMKKw5219PWWABMO+dgMnzJOQ2/5L3XJtTJGhW2PEXlxXj9zaccdReZJZ83+4NPhVfNVDg==} - - /kind-of/3.2.2: - resolution: {integrity: sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==} - engines: {node: '>=0.10.0'} - dependencies: - is-buffer: 1.1.6 - dev: true - - /kind-of/4.0.0: - resolution: {integrity: sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==} - engines: {node: '>=0.10.0'} - dependencies: - is-buffer: 1.1.6 - dev: true - - /kind-of/5.1.0: - resolution: {integrity: sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==} - engines: {node: '>=0.10.0'} - dev: true - - /kind-of/6.0.3: - resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} - engines: {node: '>=0.10.0'} dev: true /kleur/3.0.3: @@ -5009,13 +5136,14 @@ packages: is-typedarray: 1.0.0 iso-random-stream: 2.0.2 keypair: 1.0.4 - multiformats: 9.9.0 + multiformats: 9.6.5 node-forge: 0.10.0 pem-jwk: 2.0.0 protobufjs: 6.11.3 secp256k1: 4.0.3 - uint8arrays: 3.1.0 + uint8arrays: 3.1.1 ursa-optional: 0.10.2 + dev: true /libp2p-crypto/0.20.0: resolution: {integrity: sha512-WgIW9rYcWaO/5j2T6NW3R6Q46yvp2ZfFErqRMbi4/pOTL3T7+OROYpL/1iWVksWkXyurU/t2qFsIijWMxR5C4Q==} @@ -5024,29 +5152,31 @@ packages: err-code: 3.0.1 iso-random-stream: 2.0.2 keypair: 1.0.4 - multiformats: 9.9.0 + multiformats: 9.6.5 noble-ed25519: 1.2.6 noble-secp256k1: 1.2.14 node-forge: 0.10.0 pem-jwk: 2.0.0 protobufjs: 6.11.3 - uint8arrays: 3.1.0 + uint8arrays: 3.1.1 ursa-optional: 0.10.2 + dev: true /libp2p-crypto/0.21.2: resolution: {integrity: sha512-EXFrhSpiHtJ+/L8xXDvQNK5VjUMG51u878jzZcaT5XhuN/zFg6PWJFnl/qB2Y2j7eMWnvCRP7Kp+ua2H36cG4g==} engines: {node: '>=12.0.0'} dependencies: - '@noble/ed25519': 1.6.1 - '@noble/secp256k1': 1.6.3 + '@noble/ed25519': 1.7.1 + '@noble/secp256k1': 1.7.1 err-code: 3.0.1 iso-random-stream: 2.0.2 - multiformats: 9.9.0 + multiformats: 9.6.5 node-forge: 1.3.1 protobufjs: 6.11.3 - uint8arrays: 3.1.0 + uint8arrays: 3.1.1 + dev: true - /libp2p-interfaces/4.0.6_node-fetch@3.2.10: + /libp2p-interfaces/4.0.6_node-fetch@3.3.0: resolution: {integrity: sha512-3KjzNEIWhi+VoOamLvgKKUE/xqwxSw/JYqsBnfMhAWVRvRtosROtVT03wci2XbuuowCYw+/hEX1xKJIR1w5n0A==} dependencies: abortable-iterator: 3.0.2 @@ -5056,21 +5186,22 @@ packages: it-pipe: 1.1.0 it-pushable: 1.4.2 libp2p-crypto: 0.21.2 - multiaddr: 10.0.1_node-fetch@3.2.10 - multiformats: 9.9.0 + multiaddr: 10.0.1_node-fetch@3.3.0 + multiformats: 9.6.5 p-queue: 6.6.2 peer-id: 0.16.0 protobufjs: 6.11.3 - uint8arrays: 3.1.0 + uint8arrays: 3.1.1 transitivePeerDependencies: - node-fetch - supports-color + dev: true /libp2p-mplex/0.10.7: resolution: {integrity: sha512-21VV0DZWuOsHgitWy1GZD1M/kki3a/hVoAJ5QC48p01JNSK5W8gxRiZtq7cCGJ/xNpbQxvMlMtS5eq8CFRlysg==} dependencies: abortable-iterator: 3.0.2 - bl: 5.0.0 + bl: 5.1.0 debug: 4.3.4 err-code: 3.0.1 it-pipe: 1.1.0 @@ -5078,8 +5209,9 @@ packages: varint: 6.0.0 transitivePeerDependencies: - supports-color + dev: true - /libp2p-utils/0.4.1_node-fetch@3.2.10: + /libp2p-utils/0.4.1_node-fetch@3.3.0: resolution: {integrity: sha512-kq/US2unamiyY+YwP47dO1uqpAdcbdYI2Fzi9JIEhjfPBaD1MR/uyQ/YP7ABthl3EaxAjIQYd1TVp85d6QKAtQ==} dependencies: abortable-iterator: 3.0.2 @@ -5087,34 +5219,37 @@ packages: err-code: 3.0.1 ip-address: 8.1.0 is-loopback-addr: 1.0.1 - multiaddr: 10.0.1_node-fetch@3.2.10 + multiaddr: 10.0.1_node-fetch@3.3.0 private-ip: 2.3.4 transitivePeerDependencies: - node-fetch - supports-color + dev: true - /libp2p-websockets/0.16.2_node-fetch@3.2.10: + /libp2p-websockets/0.16.2_node-fetch@3.3.0: resolution: {integrity: sha512-QGfo8jX1Ks16yi8C67CCyMW7k9cfCYiQ0lzKVJBud0fV3ymbMO2L8gzU6iXUUZTHILo8ka26zKhwQ4lmUMI+nA==} dependencies: abortable-iterator: 3.0.2 class-is: 1.1.0 debug: 4.3.4 err-code: 3.0.1 - ipfs-utils: 9.0.7 + ipfs-utils: 9.0.14 it-ws: 4.0.0 - libp2p-utils: 0.4.1_node-fetch@3.2.10 - mafmt: 10.0.0_node-fetch@3.2.10 - multiaddr: 10.0.1_node-fetch@3.2.10 - multiaddr-to-uri: 8.0.0_node-fetch@3.2.10 + libp2p-utils: 0.4.1_node-fetch@3.3.0 + mafmt: 10.0.0_node-fetch@3.3.0 + multiaddr: 10.0.1_node-fetch@3.3.0 + multiaddr-to-uri: 8.0.0_node-fetch@3.3.0 p-defer: 3.0.0 p-timeout: 4.1.0 transitivePeerDependencies: - bufferutil + - encoding - node-fetch - supports-color - utf-8-validate + dev: true - /libp2p/0.36.2_node-fetch@3.2.10: + /libp2p/0.36.2_node-fetch@3.3.0: resolution: {integrity: sha512-UpNYBMQVivMu56zoibdGitopv39uBBAybIBOEGWmFy/I2NnTVGUutLPrxo47AuN2kntYgo/TNJfW+PpswUgSaw==} engines: {node: '>=15.0.0'} dependencies: @@ -5122,7 +5257,7 @@ packages: abortable-iterator: 3.0.2 aggregate-error: 3.1.0 any-signal: 3.0.1 - bignumber.js: 9.1.0 + bignumber.js: 9.1.1 class-is: 1.1.0 datastore-core: 7.0.3 debug: 4.3.4 @@ -5145,13 +5280,13 @@ packages: it-sort: 1.0.1 it-take: 1.0.2 libp2p-crypto: 0.21.2 - libp2p-interfaces: 4.0.6_node-fetch@3.2.10 - libp2p-utils: 0.4.1_node-fetch@3.2.10 - mafmt: 10.0.0_node-fetch@3.2.10 + libp2p-interfaces: 4.0.6_node-fetch@3.3.0 + libp2p-utils: 0.4.1_node-fetch@3.3.0 + mafmt: 10.0.0_node-fetch@3.3.0 merge-options: 3.0.4 mortice: 2.0.1 - multiaddr: 10.0.1_node-fetch@3.2.10 - multiformats: 9.9.0 + multiaddr: 10.0.1_node-fetch@3.3.0 + multiformats: 9.6.5 multistream-select: 3.0.2 mutable-proxy: 1.0.0 nat-api: 0.3.1 @@ -5168,54 +5303,95 @@ packages: set-delayed-interval: 1.0.0 streaming-iterables: 6.2.0 timeout-abort-controller: 3.0.0 - uint8arrays: 3.1.0 + uint8arrays: 3.1.1 varint: 6.0.0 wherearewe: 1.0.2 xsalsa20: 1.2.0 transitivePeerDependencies: - node-fetch - supports-color + dev: true + + /libp2p/0.42.2: + resolution: {integrity: sha512-arTOCJEEmAFw5HjlXdULVAFs7Y/dWZmgX/qN4SzuxtSkB0pa+fqn/DIbIfpBi2BuY+QozvnARPF1xJtSdqfqJQ==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + '@achingbrain/nat-port-mapper': 1.0.7 + '@libp2p/crypto': 1.0.8_uint8arraylist@2.4.3 + '@libp2p/interface-address-manager': 2.0.4 + '@libp2p/interface-connection': 3.0.8 + '@libp2p/interface-connection-encrypter': 3.0.6 + '@libp2p/interface-connection-manager': 1.3.7 + '@libp2p/interface-content-routing': 2.0.1 + '@libp2p/interface-dht': 2.0.1 + '@libp2p/interface-libp2p': 1.1.1 + '@libp2p/interface-metrics': 4.0.5 + '@libp2p/interface-peer-discovery': 1.0.5 + '@libp2p/interface-peer-id': 2.0.1 + '@libp2p/interface-peer-info': 1.0.8 + '@libp2p/interface-peer-routing': 1.0.7 + '@libp2p/interface-peer-store': 1.2.8 + '@libp2p/interface-pubsub': 3.0.6 + '@libp2p/interface-registrar': 2.0.8 + '@libp2p/interface-stream-muxer': 3.0.5 + '@libp2p/interface-transport': 2.1.1 + '@libp2p/interfaces': 3.3.1 + '@libp2p/logger': 2.0.5 + '@libp2p/multistream-select': 3.1.2 + '@libp2p/peer-collections': 3.0.0 + '@libp2p/peer-id': 2.0.1 + '@libp2p/peer-id-factory': 2.0.1 + '@libp2p/peer-record': 5.0.0 + '@libp2p/peer-store': 6.0.0 + '@libp2p/tracked-map': 3.0.2 + '@libp2p/utils': 3.0.4 + '@multiformats/mafmt': 11.0.3 + '@multiformats/multiaddr': 11.3.0 + abortable-iterator: 4.0.2 + any-signal: 3.0.1 + datastore-core: 8.0.4 + err-code: 3.0.1 + events: 3.3.0 + hashlru: 2.3.0 + interface-datastore: 7.0.4 + it-all: 2.0.0 + it-drain: 2.0.0 + it-filter: 2.0.0 + it-first: 2.0.0 + it-foreach: 1.0.0 + it-handshake: 4.1.2 + it-length-prefixed: 8.0.4 + it-map: 2.0.0 + it-merge: 2.0.0 + it-pair: 2.0.3 + it-pipe: 2.0.5 + it-sort: 2.0.0 + it-stream-types: 1.0.5 + merge-options: 3.0.4 + multiformats: 11.0.1 + node-forge: 1.3.1 + p-fifo: 1.0.0 + p-retry: 5.1.2 + p-settle: 5.1.0 + private-ip: 3.0.0 + protons-runtime: 4.0.2_uint8arraylist@2.4.3 + rate-limiter-flexible: 2.4.1 + retimer: 3.0.0 + sanitize-filename: 1.6.3 + set-delayed-interval: 1.0.0 + timeout-abort-controller: 3.0.0 + uint8arraylist: 2.4.3 + uint8arrays: 4.0.3 + wherearewe: 2.0.1 + xsalsa20: 1.2.0 + transitivePeerDependencies: + - supports-color + dev: false /lines-and-columns/1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} dev: true - /loader-runner/2.4.0: - resolution: {integrity: sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==} - engines: {node: '>=4.3.0 <5.0.0 || >=5.10'} - dev: true - - /loader-runner/4.3.0: - resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} - engines: {node: '>=6.11.5'} - dev: true - - /loader-utils/1.4.2: - resolution: {integrity: sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==} - engines: {node: '>=4.0.0'} - dependencies: - big.js: 5.2.2 - emojis-list: 3.0.0 - json5: 1.0.1 - dev: true - - /loader-utils/2.0.4: - resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==} - engines: {node: '>=8.9.0'} - dependencies: - big.js: 5.2.2 - emojis-list: 3.0.0 - json5: 2.2.1 - dev: true - - /locate-path/3.0.0: - resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} - engines: {node: '>=6'} - dependencies: - p-locate: 3.0.0 - path-exists: 3.0.0 - dev: true - /locate-path/5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} @@ -5227,6 +5403,10 @@ packages: resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} dev: true + /lodash/4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + dev: false + /loglevel/1.8.0: resolution: {integrity: sha512-G6A/nJLRgWOuuwdNuA6koovfEV1YpqqAG4pRUlFaz3jj2QNZ8M4vBqnVA+HBTmU/AMNUtlOsMmSpF6NyOjztbA==} engines: {node: '>= 0.6.0'} @@ -5239,6 +5419,19 @@ packages: /long/4.0.0: resolution: {integrity: sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==} + dev: true + + /long/5.2.1: + resolution: {integrity: sha512-GKSNGeNAtw8IryjjkhZxuKB3JzlcLTwjtiQCHKvqQet81I93kXslhDQruGI/QsddO83mcDToBVy7GqGS/zYf/A==} + dev: false + + /longbits/1.1.0: + resolution: {integrity: sha512-22U2exkkYy7sr7nuQJYx2NEZ2kEMsC69+BxM5h8auLvkVIJa+LwAB5mFIExnuW2dFuYXFOWsFMKXjaWiq/htYQ==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + byte-access: 1.0.1 + uint8arraylist: 2.4.3 + dev: false /lru-cache/5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} @@ -5253,20 +5446,20 @@ packages: yallist: 4.0.0 dev: true - /mafmt/10.0.0_node-fetch@3.2.10: + /mafmt/10.0.0_node-fetch@3.3.0: resolution: {integrity: sha512-K1bziJOXcnepfztu+2Xy9FLKVLaFMDuspmiyJIYRxnO0WOxFSV7XKSdMxMrVZxcvg1+YjlTIvSGTImUHU2k4Aw==} dependencies: - multiaddr: 10.0.1_node-fetch@3.2.10 + multiaddr: 10.0.1_node-fetch@3.3.0 transitivePeerDependencies: - node-fetch - supports-color + dev: true - /make-dir/2.1.0: - resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} - engines: {node: '>=6'} + /magic-string/0.27.0: + resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==} + engines: {node: '>=12'} dependencies: - pify: 4.0.1 - semver: 5.7.1 + '@jridgewell/sourcemap-codec': 1.4.14 dev: true /make-dir/3.1.0: @@ -5278,6 +5471,7 @@ packages: /make-error/1.3.6: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} + dev: true /makeerror/1.0.12: resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==} @@ -5285,47 +5479,12 @@ packages: tmpl: 1.0.5 dev: true - /map-cache/0.2.2: - resolution: {integrity: sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==} - engines: {node: '>=0.10.0'} - dev: true - - /map-visit/1.0.0: - resolution: {integrity: sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==} - engines: {node: '>=0.10.0'} - dependencies: - object-visit: 1.0.1 - dev: true - - /md5.js/1.3.5: - resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==} - dependencies: - hash-base: 3.1.0 - inherits: 2.0.4 - safe-buffer: 5.2.1 - dev: true - /memfs/3.0.4: resolution: {integrity: sha512-OcZEzwX9E5AoY8SXjuAvw0DbIAYwUzV/I236I8Pqvrlv7sL/Y0E9aRCon05DhaV8pg1b32uxj76RgW0s5xjHBA==} dependencies: fast-extend: 1.0.2 fs-monkey: 0.3.3 - /memory-fs/0.4.1: - resolution: {integrity: sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ==} - dependencies: - errno: 0.1.8 - readable-stream: 2.3.7 - dev: true - - /memory-fs/0.5.0: - resolution: {integrity: sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==} - engines: {node: '>=4.3.0 <5.0.0 || >=5.10'} - dependencies: - errno: 0.1.8 - readable-stream: 2.3.7 - dev: true - /merge-options/3.0.4: resolution: {integrity: sha512-2Sug1+knBjkaMsMgf1ctR1Ujx+Ayku4EdJN4Z+C2+JzoeF7A3OZ9KM2GY0CpQS51NR61LTurMJrRKPhSs3ZRTQ==} engines: {node: '>=10'} @@ -5335,27 +5494,6 @@ packages: /merge-stream/2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - /micromatch/3.1.10: - resolution: {integrity: sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==} - engines: {node: '>=0.10.0'} - dependencies: - arr-diff: 4.0.0 - array-unique: 0.3.2 - braces: 2.3.2 - define-property: 2.0.2 - extend-shallow: 3.0.2 - extglob: 2.0.4 - fragment-cache: 0.2.1 - kind-of: 6.0.3 - nanomatch: 1.2.13 - object.pick: 1.3.0 - regex-not: 1.0.2 - snapdragon: 0.8.2 - to-regex: 3.0.2 - transitivePeerDependencies: - - supports-color - dev: true - /micromatch/4.0.5: resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} engines: {node: '>=8.6'} @@ -5364,23 +5502,17 @@ packages: picomatch: 2.3.1 dev: true - /miller-rabin/4.0.1: - resolution: {integrity: sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==} - hasBin: true - dependencies: - bn.js: 4.12.0 - brorand: 1.1.0 - dev: true - /mime-db/1.52.0: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} + dev: true /mime-types/2.1.35: resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} dependencies: mime-db: 1.52.0 + dev: true /mimic-fn/2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} @@ -5388,47 +5520,20 @@ packages: /minimalistic-assert/1.0.1: resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} + dev: true /minimalistic-crypto-utils/1.0.1: resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==} + dev: true /minimatch/3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: brace-expansion: 1.1.11 - - /minimist/1.2.6: - resolution: {integrity: sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==} - - /mississippi/3.0.0: - resolution: {integrity: sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==} - engines: {node: '>=4.0.0'} - dependencies: - concat-stream: 1.6.2 - duplexify: 3.7.1 - end-of-stream: 1.4.4 - flush-write-stream: 1.1.1 - from2: 2.3.0 - parallel-transform: 1.2.0 - pump: 3.0.0 - pumpify: 1.5.1 - stream-each: 1.2.3 - through2: 2.0.5 dev: true - /mixin-deep/1.3.2: - resolution: {integrity: sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==} - engines: {node: '>=0.10.0'} - dependencies: - for-in: 1.0.2 - is-extendable: 1.0.1 - dev: true - - /mkdirp/0.5.6: - resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} - hasBin: true - dependencies: - minimist: 1.2.6 + /minimist/1.2.7: + resolution: {integrity: sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==} dev: true /mortice/2.0.1: @@ -5438,21 +5543,17 @@ packages: observable-webworkers: 1.0.0 p-queue: 6.6.2 promise-timeout: 1.3.0 + dev: true - /move-concurrently/1.0.1: - resolution: {integrity: sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==} + /mortice/3.0.1: + resolution: {integrity: sha512-eyDUsl1nCR9+JtNksKnaESLP9MgAXCA4w1LTtsmOSQNsThnv++f36rrBu5fC/fdGIwTJZmbiaR/QewptH93pYA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} dependencies: - aproba: 1.2.0 - copy-concurrently: 1.0.5 - fs-write-stream-atomic: 1.0.10 - mkdirp: 0.5.6 - rimraf: 2.7.1 - run-queue: 1.0.3 - dev: true - - /ms/2.0.0: - resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} - dev: true + nanoid: 4.0.0 + observable-webworkers: 2.0.1 + p-queue: 7.3.0 + p-timeout: 6.1.0 + dev: false /ms/2.1.2: resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} @@ -5460,45 +5561,47 @@ packages: /ms/2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - /multiaddr-to-uri/7.0.0_node-fetch@3.2.10: + /multiaddr-to-uri/7.0.0_node-fetch@3.3.0: resolution: {integrity: sha512-VbscDpLcbV0m25tJqfnZSfbjVUuNlPa4BbD5l/7me1t0lc3SWI0XAoO5E/PNJF0e1qUlbdq7yjVFEQjUT+9r0g==} deprecated: This module is deprecated, please upgrade to @multiformats/multiaddr-to-uri dependencies: - multiaddr: 9.0.2_node-fetch@3.2.10 + multiaddr: 9.0.2_node-fetch@3.3.0 transitivePeerDependencies: - node-fetch - supports-color dev: true - /multiaddr-to-uri/8.0.0_node-fetch@3.2.10: + /multiaddr-to-uri/8.0.0_node-fetch@3.3.0: resolution: {integrity: sha512-dq4p/vsOOUdVEd1J1gl+R2GFrXJQH8yjLtz4hodqdVbieg39LvBOdMQRdQnfbg5LSM/q1BYNVf5CBbwZFFqBgA==} deprecated: This module is deprecated, please upgrade to @multiformats/multiaddr-to-uri dependencies: - multiaddr: 10.0.1_node-fetch@3.2.10 + multiaddr: 10.0.1_node-fetch@3.3.0 transitivePeerDependencies: - node-fetch - supports-color + dev: true - /multiaddr/10.0.1_node-fetch@3.2.10: + /multiaddr/10.0.1_node-fetch@3.3.0: resolution: {integrity: sha512-G5upNcGzEGuTHkzxezPrrD6CaIHR9uo+7MwqhNVcXTs33IInon4y7nMiGxl2CY5hG7chvYQUQhz5V52/Qe3cbg==} deprecated: This module is deprecated, please upgrade to @multiformats/multiaddr dependencies: - dns-over-http-resolver: 1.2.3_node-fetch@3.2.10 + dns-over-http-resolver: 1.2.3_node-fetch@3.3.0 err-code: 3.0.1 is-ip: 3.1.0 - multiformats: 9.9.0 - uint8arrays: 3.1.0 + multiformats: 9.6.5 + uint8arrays: 3.1.1 varint: 6.0.0 transitivePeerDependencies: - node-fetch - supports-color + dev: true - /multiaddr/9.0.2_node-fetch@3.2.10: + /multiaddr/9.0.2_node-fetch@3.3.0: resolution: {integrity: sha512-YFaEb9t4yXSbaGksSEdg+Kn2U02s7w4wXUgyEMQmPxFJj7CfVHY10WOsScAX/rK6Soa15S1zXYadqH9TtlVreQ==} deprecated: This module is deprecated, please upgrade to @multiformats/multiaddr dependencies: cids: 1.1.9 - dns-over-http-resolver: 1.2.3_node-fetch@3.2.10 + dns-over-http-resolver: 1.2.3_node-fetch@3.3.0 err-code: 3.0.1 is-ip: 3.1.0 multibase: 4.0.6 @@ -5515,28 +5618,38 @@ packages: deprecated: This module has been superseded by the multiformats module dependencies: '@multiformats/base-x': 4.0.1 + dev: true /multicodec/3.2.1: resolution: {integrity: sha512-+expTPftro8VAW8kfvcuNNNBgb9gPeNYV9dn+z1kJRWF2vih+/S79f2RVeIwmrJBUJ6NT9IUPWnZDQvegEh5pw==} deprecated: This module has been superseded by the multiformats module dependencies: - uint8arrays: 3.1.0 + uint8arrays: 3.1.1 varint: 6.0.0 + dev: true + + /multiformats/10.0.3: + resolution: {integrity: sha512-K2yGSmstS/oEmYiEIieHb53jJCaqp4ERPDQAYrm5sV3UUrVDZeshJQCK6GHAKyIGufU1vAcbS0PdAAZmC7Tzcw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false + + /multiformats/11.0.1: + resolution: {integrity: sha512-atWruyH34YiknSdL5yeIir00EDlJRpHzELYQxG7Iy29eCyL+VrZHpPrX5yqlik3jnuqpLpRKVZ0SGVb9UzKaSA==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false /multiformats/9.6.5: resolution: {integrity: sha512-vMwf/FUO+qAPvl3vlSZEgEVFY/AxeZq5yg761ScF3CZsXgmTi/HGkicUiNN0CI4PW8FiY2P0OLklOcmQjdQJhw==} dev: true - /multiformats/9.9.0: - resolution: {integrity: sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==} - /multihashes/4.0.3: resolution: {integrity: sha512-0AhMH7Iu95XjDLxIeuCOOE4t9+vQZsACyKZ9Fxw2pcsRmlX4iCn1mby0hS0bb+nQOVpdQYWPpnyusw4da5RPhA==} engines: {node: '>=12.0.0', npm: '>=6.0.0'} dependencies: multibase: 4.0.6 - uint8arrays: 3.1.0 + uint8arrays: 3.1.1 varint: 5.0.2 + dev: true /multihashing-async/2.1.4: resolution: {integrity: sha512-sB1MiQXPSBTNRVSJc2zM157PXgDtud2nMFUEIvBrsq5Wv96sUclMRK/ecjoP1T/W61UJBqt4tCTwMkUpt2Gbzg==} @@ -5547,14 +5660,14 @@ packages: js-sha3: 0.8.0 multihashes: 4.0.3 murmurhash3js-revisited: 3.0.0 - uint8arrays: 3.1.0 + uint8arrays: 3.1.1 dev: true /multistream-select/3.0.2: resolution: {integrity: sha512-ICGA8DAviZj6Xo1NkaRV3J38M+tFDoWiGtO1ksluyMnskAsdGjAzocg806OzpQPivNGWWboX3CrFT2Tk4UdYXA==} dependencies: abortable-iterator: 3.0.2 - bl: 5.0.0 + bl: 5.1.0 debug: 4.3.4 err-code: 3.0.1 it-first: 1.0.7 @@ -5563,9 +5676,10 @@ packages: it-pipe: 1.1.0 it-reader: 3.0.0 p-defer: 3.0.0 - uint8arrays: 3.1.0 + uint8arrays: 3.1.1 transitivePeerDependencies: - supports-color + dev: true /murmurhash3js-revisited/3.0.0: resolution: {integrity: sha512-/sF3ee6zvScXMb1XFJ8gDsSnY+X8PbOyjIuBhtgis10W2Jx4ZjIhikUCIF9c4gpJxVnQIsPAFrSwTCuAjicP6g==} @@ -5575,35 +5689,24 @@ packages: /mutable-proxy/1.0.0: resolution: {integrity: sha512-4OvNRr1DJpy2QuDUV74m+BWZ//n4gG4bmd21MzDSPqHEidIDWqwyOjcadU1LBMO3vXYGurVKjfBrxrSQIHFu9A==} engines: {node: '>=6.X.X', npm: '>=3.X.X'} + dev: true - /nan/2.16.0: - resolution: {integrity: sha512-UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA==} - requiresBuild: true + /nan/2.17.0: + resolution: {integrity: sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==} + dev: true /nanoid/3.3.4: resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - - /nanomatch/1.2.13: - resolution: {integrity: sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==} - engines: {node: '>=0.10.0'} - dependencies: - arr-diff: 4.0.0 - array-unique: 0.3.2 - define-property: 2.0.2 - extend-shallow: 3.0.2 - fragment-cache: 0.2.1 - is-windows: 1.0.2 - kind-of: 6.0.3 - object.pick: 1.3.0 - regex-not: 1.0.2 - snapdragon: 0.8.2 - to-regex: 3.0.2 - transitivePeerDependencies: - - supports-color dev: true + /nanoid/4.0.0: + resolution: {integrity: sha512-IgBP8piMxe/gf73RTQx7hmnhwz0aaEXYakvqZyE302IXW3HyVNhdNGC+O2MwMAVhLEnvXlvKtGbtJf6wvHihCg==} + engines: {node: ^14 || ^16 || >=18} + hasBin: true + dev: false + /nat-api/0.3.1: resolution: {integrity: sha512-5cyLugEkXnKSKSvVjKjxxPMLDnkwY3boZLbATWwiGJ4T/3UvIpiQmzb2RqtxxEFcVo/7PwsHPGN0MosopONO8Q==} engines: {node: '>=10.0.0'} @@ -5616,6 +5719,7 @@ packages: xml2js: 0.1.14 transitivePeerDependencies: - supports-color + dev: true /native-abort-controller/1.0.4_abort-controller@3.0.0: resolution: {integrity: sha512-zp8yev7nxczDJMoP6pDxyD20IU0T22eX8VwN2ztDccKvSZhRaV33yP1BGwKSZfXuqWUzsXopVFjBdau9OOAwMQ==} @@ -5631,22 +5735,36 @@ packages: node-fetch: '*' dependencies: node-fetch: /@achingbrain/node-fetch/2.6.7 + dev: true - /native-fetch/3.0.0_node-fetch@3.2.10: + /native-fetch/3.0.0_node-fetch@2.6.9: resolution: {integrity: sha512-G3Z7vx0IFb/FQ4JxvtqGABsOTIqRWvgQz6e+erkB+JJD6LrszQtMozEHI4EkmgZQvnGHrpLVzUWk7t4sJCIkVw==} peerDependencies: node-fetch: '*' dependencies: - node-fetch: 3.2.10 + node-fetch: 2.6.9 + dev: true + + /native-fetch/3.0.0_node-fetch@3.3.0: + resolution: {integrity: sha512-G3Z7vx0IFb/FQ4JxvtqGABsOTIqRWvgQz6e+erkB+JJD6LrszQtMozEHI4EkmgZQvnGHrpLVzUWk7t4sJCIkVw==} + peerDependencies: + node-fetch: '*' + dependencies: + node-fetch: 3.3.0 + dev: true + + /native-fetch/4.0.2_undici@5.16.0: + resolution: {integrity: sha512-4QcVlKFtv2EYVS5MBgsGX5+NWKtbDbIECdUXDBGDMAZXq3Jkv9zf+y8iS7Ub8fEdga3GpYeazp9gauNqXHJOCg==} + peerDependencies: + undici: '*' + dependencies: + undici: 5.16.0 + dev: false /natural-compare/1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} dev: true - /neo-async/2.6.2: - resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} - dev: true - /netmask/2.0.2: resolution: {integrity: sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==} engines: {node: '>= 0.4.0'} @@ -5654,82 +5772,65 @@ packages: /noble-ed25519/1.2.6: resolution: {integrity: sha512-zfnWqg9FVMp8CnzUpAjbt1nDXpDjCvxYiCXdnW1mY8zQHw/6twUlkFm14VPdojVzc0kcd+i9zT79+26GcNbsuQ==} deprecated: Switch to namespaced @noble/ed25519 for security and feature updates + dev: true /noble-secp256k1/1.2.14: resolution: {integrity: sha512-GSCXyoZBUaaPwVWdYncMEmzlSUjF9J/YeEHpklYJCyg8wPuJP3NzDx0BkiwArzINkdX2HJHvUJhL6vVWPOQQcg==} deprecated: Switch to namespaced @noble/secp256k1 for security and feature updates + dev: true /node-addon-api/2.0.2: resolution: {integrity: sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==} + dev: true /node-domexception/1.0.0: resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} engines: {node: '>=10.5.0'} + dev: true - /node-fetch/3.2.10: - resolution: {integrity: sha512-MhuzNwdURnZ1Cp4XTazr69K0BTizsBroX7Zx3UgDSVcZYKF/6p0CBe4EUb/hLqmzVhl0UpYfgRljQ4yxE+iCxA==} + /node-fetch/2.6.9: + resolution: {integrity: sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==} + engines: {node: 4.x || >=6.0.0} + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + dependencies: + whatwg-url: 5.0.0 + dev: true + + /node-fetch/3.3.0: + resolution: {integrity: sha512-BKwRP/O0UvoMKp7GNdwPlObhYGB5DQqwhEDQlNKuoqwVYSxkSZCSbHjnFFmUEtwSKRPU4kNK8PbDYYitwaE3QA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - data-uri-to-buffer: 4.0.0 + data-uri-to-buffer: 4.0.1 fetch-blob: 3.2.0 formdata-polyfill: 4.0.10 + dev: true /node-forge/0.10.0: resolution: {integrity: sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==} engines: {node: '>= 6.0.0'} + dev: true /node-forge/1.3.1: resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==} engines: {node: '>= 6.13.0'} - /node-gyp-build/4.5.0: - resolution: {integrity: sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==} + /node-gyp-build/4.6.0: + resolution: {integrity: sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==} hasBin: true + dev: true /node-int64/0.4.0: resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==} dev: true - /node-libs-browser/2.2.1: - resolution: {integrity: sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==} - dependencies: - assert: 1.5.0 - browserify-zlib: 0.2.0 - buffer: 4.9.2 - console-browserify: 1.2.0 - constants-browserify: 1.0.0 - crypto-browserify: 3.12.0 - domain-browser: 1.2.0 - events: 3.3.0 - https-browserify: 1.0.0 - os-browserify: 0.3.0 - path-browserify: 0.0.1 - process: 0.11.10 - punycode: 1.4.1 - querystring-es3: 0.2.1 - readable-stream: 2.3.7 - stream-browserify: 2.0.2 - stream-http: 2.8.3 - string_decoder: 1.3.0 - timers-browserify: 2.0.12 - tty-browserify: 0.0.0 - url: 0.11.0 - util: 0.11.1 - vm-browserify: 1.1.2 + /node-releases/2.0.9: + resolution: {integrity: sha512-2xfmOrRkGogbTK9R6Leda0DGiXeY3p2NJpy4+gNCffdUvV6mdEJnaDEic1i3Ec2djAo8jWYoJMR5PB0MSMpxUA==} dev: true - /node-releases/2.0.6: - resolution: {integrity: sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==} - dev: true - - /normalize-path/2.1.1: - resolution: {integrity: sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==} - engines: {node: '>=0.10.0'} - dependencies: - remove-trailing-separator: 1.1.0 - dev: true - optional: true - /normalize-path/3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} @@ -5743,33 +5844,6 @@ packages: /oauth-sign/0.9.0: resolution: {integrity: sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==} - - /object-assign/4.1.1: - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} - engines: {node: '>=0.10.0'} - dev: true - - /object-copy/0.1.0: - resolution: {integrity: sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==} - engines: {node: '>=0.10.0'} - dependencies: - copy-descriptor: 0.1.1 - define-property: 0.2.5 - kind-of: 3.2.2 - dev: true - - /object-visit/1.0.1: - resolution: {integrity: sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==} - engines: {node: '>=0.10.0'} - dependencies: - isobject: 3.0.1 - dev: true - - /object.pick/1.3.0: - resolution: {integrity: sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==} - engines: {node: '>=0.10.0'} - dependencies: - isobject: 3.0.1 dev: true /observable-fns/0.6.1: @@ -5777,6 +5851,12 @@ packages: /observable-webworkers/1.0.0: resolution: {integrity: sha512-+cECwCR8IEh8UY5nefQVLO9Cydqpk1izO+o7BABmKjXfJZyEOzBWY3ss5jbOPM6KmEa9aQExvAtTW6tVTOsNAQ==} + dev: true + + /observable-webworkers/2.0.1: + resolution: {integrity: sha512-JI1vB0u3pZjoQKOK1ROWzp0ygxSi7Yb0iR+7UNsw4/Zn4cQ0P3R7XL38zac/Dy2tEA7Lg88/wIJTjF8vYXZ0uw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false /once/1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} @@ -5789,25 +5869,28 @@ packages: dependencies: mimic-fn: 2.1.0 - /os-browserify/0.3.0: - resolution: {integrity: sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==} - dev: true - /p-any/3.0.0: resolution: {integrity: sha512-5rqbqfsRWNb0sukt0awwgJMlaep+8jV45S15SKKB34z4UuzjcofIfnriCBhWjZP2jbVtjt9yRl7buB6RlKsu9w==} engines: {node: '>=10'} dependencies: p-cancelable: 2.1.1 p-some: 5.0.0 + dev: true /p-cancelable/2.1.1: resolution: {integrity: sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==} engines: {node: '>=8'} + dev: true /p-defer/3.0.0: resolution: {integrity: sha512-ugZxsxmtTln604yeYd29EGrNhazN2lywetzpKhfmQjW/VJmhpDmWbiX+h0zL8V91R0UXkhb3KtPmyq9PZw3aYw==} engines: {node: '>=8'} + /p-defer/4.0.0: + resolution: {integrity: sha512-Vb3QRvQ0Y5XnF40ZUWW7JfLogicVh/EnA5gBIvKDJoYpeI82+1E3AlB9yOcKFS0AhHrWVnAQO39fbR0G99IVEQ==} + engines: {node: '>=12'} + dev: false + /p-fifo/1.0.0: resolution: {integrity: sha512-IjoCxXW48tqdtDFz6fqo5q1UfFVjjVZe8TC1QRflvNUJtNfCUhxOUw6MOVZhDPjqhSzc26xKdugsO17gmzd5+A==} dependencies: @@ -5817,12 +5900,14 @@ packages: /p-finally/1.0.0: resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==} engines: {node: '>=4'} + dev: true /p-limit/2.3.0: resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} engines: {node: '>=6'} dependencies: p-try: 2.2.0 + dev: true /p-limit/3.1.0: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} @@ -5831,12 +5916,12 @@ packages: yocto-queue: 0.1.0 dev: true - /p-locate/3.0.0: - resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} - engines: {node: '>=6'} + /p-limit/4.0.0: + resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - p-limit: 2.3.0 - dev: true + yocto-queue: 1.0.0 + dev: false /p-locate/4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} @@ -5851,10 +5936,25 @@ packages: dependencies: eventemitter3: 4.0.7 p-timeout: 3.2.0 + dev: true + + /p-queue/7.3.0: + resolution: {integrity: sha512-5fP+yVQ0qp0rEfZoDTlP2c3RYBgxvRsw30qO+VtPPc95lyvSG+x6USSh1TuLB4n96IO6I8/oXQGsTgtna4q2nQ==} + engines: {node: '>=12'} + dependencies: + eventemitter3: 4.0.7 + p-timeout: 5.1.0 + dev: false /p-reflect/2.1.0: resolution: {integrity: sha512-paHV8NUz8zDHu5lhr/ngGWQiW067DK/+IbJ+RfZ4k+s8y4EKyYCz8pGYWjxCg35eHztpJAt+NUgvN4L+GCbPlg==} engines: {node: '>=8'} + dev: true + + /p-reflect/3.1.0: + resolution: {integrity: sha512-3sG3UlpisPSaX+o7u2q01hIQmrpkvdl5GSO1ZwL7pfc5kHB2bPF0eFNCfYTrW1/LTUdgmPwBAvmT0Zr8eSmaAQ==} + engines: {node: '>=12'} + dev: false /p-retry/4.6.2: resolution: {integrity: sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==} @@ -5862,6 +5962,15 @@ packages: dependencies: '@types/retry': 0.12.0 retry: 0.13.1 + dev: true + + /p-retry/5.1.2: + resolution: {integrity: sha512-couX95waDu98NfNZV+i/iLt+fdVxmI7CbrrdC2uDWfPdUAApyxT4wmDlyOtR5KtTDmkDO0zDScDjDou9YHhd9g==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + '@types/retry': 0.12.1 + retry: 0.13.1 + dev: false /p-settle/4.1.1: resolution: {integrity: sha512-6THGh13mt3gypcNMm0ADqVNCcYa3BK6DWsuJWFCuEKP1rpY+OKGp7gaZwVmLspmic01+fsg/fN57MfvDzZ/PuQ==} @@ -5869,6 +5978,15 @@ packages: dependencies: p-limit: 2.3.0 p-reflect: 2.1.0 + dev: true + + /p-settle/5.1.0: + resolution: {integrity: sha512-ujR6UFfh09ziOKyC5aaJak5ZclsjlLw57SYtFZg6yllMofyygnaibQRZ4jf6QPWqoOCGUXyb1cxUKELeAyKO7g==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + p-limit: 4.0.0 + p-reflect: 3.1.0 + dev: false /p-some/5.0.0: resolution: {integrity: sha512-Js5XZxo6vHjB9NOYAzWDYAIyyiPvva0DWESAIWIK7uhSpGsyg5FwUPxipU/SOQx5x9EqhOh545d1jo6cVkitig==} @@ -5876,42 +5994,38 @@ packages: dependencies: aggregate-error: 3.1.0 p-cancelable: 2.1.1 + dev: true /p-timeout/3.2.0: resolution: {integrity: sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==} engines: {node: '>=8'} dependencies: p-finally: 1.0.0 + dev: true /p-timeout/4.1.0: resolution: {integrity: sha512-+/wmHtzJuWii1sXn3HCuH/FTwGhrp4tmJTxSKJbfS+vkipci6osxXM5mY0jUiRzWKMTgUT8l7HFbeSwZAynqHw==} engines: {node: '>=10'} + dev: true + + /p-timeout/5.1.0: + resolution: {integrity: sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==} + engines: {node: '>=12'} + dev: false + + /p-timeout/6.1.0: + resolution: {integrity: sha512-s0y6Le9QYGELLzNpFIt6h8B2DHTVUDLStvxtvRMSKNKeuNVVWby2dZ+pIJpW4/pWr5a3s8W85wBNtc0ZA+lzCg==} + engines: {node: '>=14.16'} + dev: false /p-try/2.2.0: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} + dev: true /pako/1.0.11: resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==} - /parallel-transform/1.2.0: - resolution: {integrity: sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==} - dependencies: - cyclist: 1.0.1 - inherits: 2.0.4 - readable-stream: 2.3.7 - dev: true - - /parse-asn1/5.1.6: - resolution: {integrity: sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==} - dependencies: - asn1.js: 5.4.1 - browserify-aes: 1.2.0 - evp_bytestokey: 1.0.3 - pbkdf2: 3.1.2 - safe-buffer: 5.2.1 - dev: true - /parse-duration/1.0.2: resolution: {integrity: sha512-Dg27N6mfok+ow1a2rj/nRjtCfaKrHUZV2SJpEn/s8GaVUSlf4GGRCRP1c13Hj+wfPKVMrFDqLMLITkYKgKxyyg==} dev: true @@ -5926,28 +6040,9 @@ packages: lines-and-columns: 1.2.4 dev: true - /pascalcase/0.1.1: - resolution: {integrity: sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==} - engines: {node: '>=0.10.0'} - dev: true - - /path-browserify/0.0.1: - resolution: {integrity: sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==} - dev: true - /path-browserify/1.0.1: resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} - /path-dirname/1.0.2: - resolution: {integrity: sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==} - dev: true - optional: true - - /path-exists/3.0.0: - resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} - engines: {node: '>=4'} - dev: true - /path-exists/4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -5966,17 +6061,6 @@ packages: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} dev: true - /pbkdf2/3.1.2: - resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==} - engines: {node: '>=0.12'} - dependencies: - create-hash: 1.2.0 - create-hmac: 1.1.7 - ripemd160: 2.0.2 - safe-buffer: 5.2.1 - sha.js: 2.4.11 - dev: true - /peer-id/0.15.4: resolution: {integrity: sha512-MDoBIMZYwQIAHaZQUwsIcvoFgdbIl5GtZMwSkXpIYvc5v0TSDv+u8WsTKrKt2Vv28tHFFDJQdVzu3T4qTPzK+w==} engines: {node: '>=14.0.0'} @@ -5984,10 +6068,11 @@ packages: dependencies: class-is: 1.1.0 libp2p-crypto: 0.20.0 - minimist: 1.2.6 - multiformats: 9.9.0 + minimist: 1.2.7 + multiformats: 9.6.5 protobufjs: 6.11.3 - uint8arrays: 3.1.0 + uint8arrays: 3.1.1 + dev: true /peer-id/0.16.0: resolution: {integrity: sha512-EmL7FurFUduU9m1PS9cfJ5TAuCvxKQ7DKpfx3Yj6IKWyBRtosriFuOag/l3ni/dtPgPLwiA4R9IvpL7hsDLJuQ==} @@ -5995,9 +6080,10 @@ packages: dependencies: class-is: 1.1.0 libp2p-crypto: 0.21.2 - multiformats: 9.9.0 + multiformats: 9.6.5 protobufjs: 6.11.3 - uint8arrays: 3.1.0 + uint8arrays: 3.1.1 + dev: true /pem-jwk/2.0.0: resolution: {integrity: sha512-rFxu7rVoHgQ5H9YsP50dDWf0rHjreVA2z0yPiWr5WdH/UHb29hKtF7h6l8vNd1cbYR1t0QL+JKhW55a2ZV4KtA==} @@ -6005,9 +6091,11 @@ packages: hasBin: true dependencies: asn1.js: 5.4.1 + dev: true /performance-now/2.1.0: resolution: {integrity: sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==} + dev: true /picocolors/1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} @@ -6018,23 +6106,11 @@ packages: engines: {node: '>=8.6'} dev: true - /pify/4.0.1: - resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} - engines: {node: '>=6'} - dev: true - /pirates/4.0.5: resolution: {integrity: sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==} engines: {node: '>= 6'} dev: true - /pkg-dir/3.0.0: - resolution: {integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==} - engines: {node: '>=6'} - dependencies: - find-up: 3.0.0 - dev: true - /pkg-dir/4.2.0: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} @@ -6045,9 +6121,13 @@ packages: /platform/1.3.6: resolution: {integrity: sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg==} - /posix-character-classes/0.1.1: - resolution: {integrity: sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==} - engines: {node: '>=0.10.0'} + /postcss/8.4.21: + resolution: {integrity: sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + nanoid: 3.3.4 + picocolors: 1.0.0 + source-map-js: 1.0.2 dev: true /pretty-format/27.5.1: @@ -6069,6 +6149,15 @@ packages: react-is: 18.2.0 dev: true + /pretty-format/29.4.1: + resolution: {integrity: sha512-dt/Z761JUVsrIKaY215o1xQJBGlSmTx/h4cSqXqjHLnU1+Kt+mavVE7UgqJJO5ukx5HjSswHfmXz4LjS2oIJfg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/schemas': 29.4.0 + ansi-styles: 5.2.0 + react-is: 18.2.0 + dev: true + /private-ip/2.3.4: resolution: {integrity: sha512-ts/YFVwfBeLq61f9+KsOhXW6RH0wvY0gU50R6QZYzgFhggyyLK6WDFeYdjfi/HMnBm2hecLvsR3PB3JcRxDk+A==} dependencies: @@ -6076,29 +6165,26 @@ packages: ipaddr.js: 2.0.1 is-ip: 3.1.0 netmask: 2.0.2 - - /process-nextick-args/2.0.1: - resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} dev: true + /private-ip/3.0.0: + resolution: {integrity: sha512-HkMBs4nMtrP+cvcw0bDi2BAZIGgiKI4Zq8Oc+dMqNBpHS8iGL4+WO/pRtc8Bwnv9rjnV0QwMDwEBymFtqv7Kww==} + engines: {node: '>=14.16'} + dependencies: + '@chainsafe/is-ip': 2.0.1 + ip-regex: 5.0.0 + ipaddr.js: 2.0.1 + netmask: 2.0.2 + dev: false + /process/0.11.10: resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} engines: {node: '>= 0.6.0'} - dev: true - - /promise-inflight/1.0.1_bluebird@3.7.2: - resolution: {integrity: sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==} - peerDependencies: - bluebird: '*' - peerDependenciesMeta: - bluebird: - optional: true - dependencies: - bluebird: 3.7.2 - dev: true + dev: false /promise-timeout/1.3.0: resolution: {integrity: sha512-5yANTE0tmi5++POym6OgtFmwfDvOXABD9oj/jLQr5GPEyuNEb7jH4wbbANJceJid49jwhi1RddxnhnEAb/doqg==} + dev: true /prompts/2.4.2: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} @@ -6124,74 +6210,51 @@ packages: '@protobufjs/pool': 1.1.0 '@protobufjs/utf8': 1.1.0 '@types/long': 4.0.2 - '@types/node': 18.7.14 + '@types/node': 18.11.18 long: 4.0.0 - - /prr/1.0.1: - resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==} dev: true + /protobufjs/7.2.1: + resolution: {integrity: sha512-L3pCItypTnPK27+CS8nuhZMYtsY+i8dqdq2vZsYHlG17CnWp1DWPQ/sos0vOKrj1fHEAzo3GBqSHLaeZyKUCDA==} + engines: {node: '>=12.0.0'} + requiresBuild: true + dependencies: + '@protobufjs/aspromise': 1.1.2 + '@protobufjs/base64': 1.1.2 + '@protobufjs/codegen': 2.0.4 + '@protobufjs/eventemitter': 1.1.0 + '@protobufjs/fetch': 1.1.0 + '@protobufjs/float': 1.0.2 + '@protobufjs/inquire': 1.1.0 + '@protobufjs/path': 1.1.2 + '@protobufjs/pool': 1.1.0 + '@protobufjs/utf8': 1.1.0 + '@types/node': 18.11.18 + long: 5.2.1 + dev: false + + /protons-runtime/4.0.2_uint8arraylist@2.4.3: + resolution: {integrity: sha512-R4N6qKHgz8T2Gl45CTcZfITzXPQY9ym8lbLb4VyFMS4ag1KusCRZwkQXTBRhxQ+93ck3K3aDhK1wIk98AMtNyw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + peerDependencies: + uint8arraylist: ^2.3.2 + dependencies: + protobufjs: 7.2.1 + uint8arraylist: 2.4.3 + dev: false + /psl/1.9.0: resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} - - /public-encrypt/4.0.3: - resolution: {integrity: sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==} - dependencies: - bn.js: 4.12.0 - browserify-rsa: 4.1.0 - create-hash: 1.2.0 - parse-asn1: 5.1.6 - randombytes: 2.1.0 - safe-buffer: 5.2.1 dev: true - /pump/2.0.1: - resolution: {integrity: sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==} - dependencies: - end-of-stream: 1.4.4 - once: 1.4.0 - dev: true - - /pump/3.0.0: - resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} - dependencies: - end-of-stream: 1.4.4 - once: 1.4.0 - dev: true - - /pumpify/1.5.1: - resolution: {integrity: sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==} - dependencies: - duplexify: 3.7.1 - inherits: 2.0.4 - pump: 2.0.1 - dev: true - - /punycode/1.3.2: - resolution: {integrity: sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==} - dev: true - - /punycode/1.4.1: - resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} - dev: true - - /punycode/2.1.1: - resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==} + /punycode/2.3.0: + resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} engines: {node: '>=6'} + dev: true /qs/6.5.3: resolution: {integrity: sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==} engines: {node: '>=0.6'} - - /querystring-es3/0.2.1: - resolution: {integrity: sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==} - engines: {node: '>=0.4.x'} - dev: true - - /querystring/0.2.0: - resolution: {integrity: sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==} - engines: {node: '>=0.4.x'} - deprecated: The querystring API is considered Legacy. new code should use the URLSearchParams API instead. dev: true /randombytes/2.1.0: @@ -6205,6 +6268,10 @@ packages: randombytes: 2.1.0 safe-buffer: 5.2.1 + /rate-limiter-flexible/2.4.1: + resolution: {integrity: sha512-dgH4T44TzKVO9CLArNto62hJOwlWJMLUjVVr/ii0uUzZXEXthDNr7/yefW5z/1vvHAfycc1tnuiYyNJ8CTRB3g==} + dev: false + /react-is/17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} dev: true @@ -6217,17 +6284,12 @@ packages: resolution: {integrity: sha512-GOA8tc1EVYLnHvma/TU9VTgLOyralO7eATRuCDchQveXW9Fr9vXygyq9iwqmM7YRZ8qRJfEt9xOS7OYMdJvRFw==} dependencies: p-defer: 3.0.0 + dev: true - /readable-stream/2.3.7: - resolution: {integrity: sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==} + /react-native-fetch-api/3.0.0: + resolution: {integrity: sha512-g2rtqPjdroaboDKTsJCTlcmtw54E25OjyaunUP0anOZn4Fuo2IKs8BVfe02zVggA/UysbmfSnRJIqtNkAgggNA==} dependencies: - core-util-is: 1.0.2 - inherits: 2.0.4 - isarray: 1.0.0 - process-nextick-args: 2.0.1 - safe-buffer: 5.1.2 - string_decoder: 1.1.1 - util-deprecate: 1.0.2 + p-defer: 3.0.0 dev: true /readable-stream/3.6.0: @@ -6238,75 +6300,18 @@ packages: string_decoder: 1.3.0 util-deprecate: 1.0.2 - /readdirp/2.2.1: - resolution: {integrity: sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==} - engines: {node: '>=0.10'} - dependencies: - graceful-fs: 4.2.10 - micromatch: 3.1.10 - readable-stream: 2.3.7 - transitivePeerDependencies: - - supports-color - dev: true - optional: true - - /readdirp/3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} - engines: {node: '>=8.10.0'} - dependencies: - picomatch: 2.3.1 - dev: true - optional: true - /receptacle/1.3.2: resolution: {integrity: sha512-HrsFvqZZheusncQRiEE7GatOAETrARKV/lnfYicIm8lbvp/JQOdADOfhjBd2DajvoszEyxSM6RlAAIZgEoeu/A==} dependencies: ms: 2.1.3 - /rechoir/0.7.1: - resolution: {integrity: sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==} - engines: {node: '>= 0.10'} - dependencies: - resolve: 1.22.1 - dev: true - - /rechoir/0.8.0: - resolution: {integrity: sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==} - engines: {node: '>= 10.13.0'} - dependencies: - resolve: 1.22.1 - dev: true - - /regex-not/1.0.2: - resolution: {integrity: sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==} - engines: {node: '>=0.10.0'} - dependencies: - extend-shallow: 3.0.2 - safe-regex: 1.1.0 - dev: true - - /remove-trailing-separator/1.1.0: - resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==} - dev: true - optional: true - - /repeat-element/1.1.4: - resolution: {integrity: sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==} - engines: {node: '>=0.10.0'} - dev: true - - /repeat-string/1.6.1: - resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==} - engines: {node: '>=0.10'} - dev: true - /request/2.88.2: resolution: {integrity: sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==} engines: {node: '>= 6'} deprecated: request has been deprecated, see https://github.com/request/request/issues/3142 dependencies: aws-sign2: 0.7.0 - aws4: 1.11.0 + aws4: 1.12.0 caseless: 0.12.0 combined-stream: 1.0.8 extend: 3.0.2 @@ -6325,6 +6330,7 @@ packages: tough-cookie: 2.5.0 tunnel-agent: 0.6.0 uuid: 3.4.0 + dev: true /require-directory/2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} @@ -6343,13 +6349,13 @@ packages: engines: {node: '>=8'} dev: true - /resolve-url/0.2.1: - resolution: {integrity: sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==} - deprecated: https://github.com/lydell/resolve-url#deprecated + /resolve.exports/1.1.1: + resolution: {integrity: sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==} + engines: {node: '>=10'} dev: true - /resolve.exports/1.1.0: - resolution: {integrity: sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==} + /resolve.exports/2.0.0: + resolution: {integrity: sha512-6K/gDlqgQscOlg9fSRpWstA8sYe8rbELsSTNpx+3kTrsVCzvSl0zIvRErM7fdl9ERWDsKnrLnwB+Ne89918XOg==} engines: {node: '>=10'} dev: true @@ -6357,16 +6363,11 @@ packages: resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} hasBin: true dependencies: - is-core-module: 2.10.0 + is-core-module: 2.11.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 dev: true - /ret/0.1.15: - resolution: {integrity: sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==} - engines: {node: '>=0.12'} - dev: true - /retimer/2.0.0: resolution: {integrity: sha512-KLXY85WkEq2V2bKex/LOO1ViXVn2KGYe4PYysAdYdjmraYIUsVkXu8O4am+8+5UbaaGl1qho4aqAAPHNQ4GSbg==} dev: true @@ -6378,13 +6379,6 @@ packages: resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==} engines: {node: '>= 4'} - /rimraf/2.7.1: - resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} - hasBin: true - dependencies: - glob: 7.2.3 - dev: true - /rimraf/3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} hasBin: true @@ -6392,46 +6386,25 @@ packages: glob: 7.2.3 dev: true - /ripemd160/2.0.2: - resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==} - dependencies: - hash-base: 3.1.0 - inherits: 2.0.4 - dev: true - - /run-queue/1.0.3: - resolution: {integrity: sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==} - dependencies: - aproba: 1.2.0 + /rollup/3.12.1: + resolution: {integrity: sha512-t9elERrz2i4UU9z7AwISj3CQcXP39cWxgRWLdf4Tm6aKm1eYrqHIgjzXBgb67GNY1sZckTFFi0oMozh3/S++Ig==} + engines: {node: '>=14.18.0', npm: '>=8.0.0'} + hasBin: true + optionalDependencies: + fsevents: 2.3.2 dev: true /rxjs/7.5.5: resolution: {integrity: sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==} dependencies: - tslib: 2.4.0 - dev: false - - /rxjs/7.5.6: - resolution: {integrity: sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw==} - dependencies: - tslib: 2.4.0 - dev: true - - /safe-buffer/5.1.2: - resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} - dev: true + tslib: 2.5.0 /safe-buffer/5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - /safe-regex/1.1.0: - resolution: {integrity: sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==} - dependencies: - ret: 0.1.15 - dev: true - /safer-buffer/2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + dev: true /sanitize-filename/1.6.3: resolution: {integrity: sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==} @@ -6441,24 +6414,6 @@ packages: /sax/1.2.4: resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==} - /schema-utils/1.0.0: - resolution: {integrity: sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==} - engines: {node: '>= 4'} - dependencies: - ajv: 6.12.6 - ajv-errors: 1.0.1_ajv@6.12.6 - ajv-keywords: 3.5.2_ajv@6.12.6 - dev: true - - /schema-utils/3.1.1: - resolution: {integrity: sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==} - engines: {node: '>= 10.13.0'} - dependencies: - '@types/json-schema': 7.0.11 - ajv: 6.12.6 - ajv-keywords: 3.5.2_ajv@6.12.6 - dev: true - /secp256k1/4.0.3: resolution: {integrity: sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==} engines: {node: '>=10.0.0'} @@ -6466,11 +6421,7 @@ packages: dependencies: elliptic: 6.5.4 node-addon-api: 2.0.2 - node-gyp-build: 4.5.0 - - /semver/5.7.1: - resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} - hasBin: true + node-gyp-build: 4.6.0 dev: true /semver/6.3.0: @@ -6486,50 +6437,9 @@ packages: lru-cache: 6.0.0 dev: true - /serialize-javascript/4.0.0: - resolution: {integrity: sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==} - dependencies: - randombytes: 2.1.0 - dev: true - - /serialize-javascript/6.0.0: - resolution: {integrity: sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==} - dependencies: - randombytes: 2.1.0 - dev: true - /set-delayed-interval/1.0.0: resolution: {integrity: sha512-29fhAwuZlLcuBnW/EwxvLcg2D3ELX+VBDNhnavs3YYkab72qmrcSeQNVdzl8EcPPahGQXhBM6MKdPLCQGMDakw==} - /set-value/2.0.1: - resolution: {integrity: sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==} - engines: {node: '>=0.10.0'} - dependencies: - extend-shallow: 2.0.1 - is-extendable: 0.1.1 - is-plain-object: 2.0.4 - split-string: 3.1.0 - dev: true - - /setimmediate/1.0.5: - resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} - dev: true - - /sha.js/2.4.11: - resolution: {integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==} - hasBin: true - dependencies: - inherits: 2.0.4 - safe-buffer: 5.2.1 - dev: true - - /shallow-clone/3.0.1: - resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==} - engines: {node: '>=8'} - dependencies: - kind-of: 6.0.3 - dev: true - /shebang-command/2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -6552,51 +6462,9 @@ packages: engines: {node: '>=8'} dev: true - /snapdragon-node/2.1.1: - resolution: {integrity: sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==} + /source-map-js/1.0.2: + resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} engines: {node: '>=0.10.0'} - dependencies: - define-property: 1.0.0 - isobject: 3.0.1 - snapdragon-util: 3.0.1 - dev: true - - /snapdragon-util/3.0.1: - resolution: {integrity: sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==} - engines: {node: '>=0.10.0'} - dependencies: - kind-of: 3.2.2 - dev: true - - /snapdragon/0.8.2: - resolution: {integrity: sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==} - engines: {node: '>=0.10.0'} - dependencies: - base: 0.11.2 - debug: 2.6.9 - define-property: 0.2.5 - extend-shallow: 2.0.1 - map-cache: 0.2.2 - source-map: 0.5.7 - source-map-resolve: 0.5.3 - use: 3.1.1 - transitivePeerDependencies: - - supports-color - dev: true - - /source-list-map/2.0.1: - resolution: {integrity: sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==} - dev: true - - /source-map-resolve/0.5.3: - resolution: {integrity: sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==} - deprecated: See https://github.com/lydell/source-map-resolve#deprecated - dependencies: - atob: 2.1.2 - decode-uri-component: 0.2.0 - resolve-url: 0.2.1 - source-map-url: 0.4.1 - urix: 0.1.0 dev: true /source-map-support/0.5.13: @@ -6606,35 +6474,11 @@ packages: source-map: 0.6.1 dev: true - /source-map-support/0.5.21: - resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} - dependencies: - buffer-from: 1.1.2 - source-map: 0.6.1 - dev: true - - /source-map-url/0.4.1: - resolution: {integrity: sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==} - deprecated: See https://github.com/lydell/source-map-url#deprecated - dev: true - - /source-map/0.5.7: - resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} - engines: {node: '>=0.10.0'} - dev: true - /source-map/0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} dev: true - /split-string/3.1.0: - resolution: {integrity: sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==} - engines: {node: '>=0.10.0'} - dependencies: - extend-shallow: 3.0.2 - dev: true - /sprintf-js/1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} dev: true @@ -6656,11 +6500,6 @@ packages: jsbn: 0.1.1 safer-buffer: 2.1.2 tweetnacl: 0.14.5 - - /ssri/6.0.2: - resolution: {integrity: sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==} - dependencies: - figgy-pudding: 3.5.2 dev: true /stable/0.1.8: @@ -6668,57 +6507,28 @@ packages: deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' dev: true - /stack-utils/2.0.5: - resolution: {integrity: sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==} + /stack-utils/2.0.6: + resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} engines: {node: '>=10'} dependencies: escape-string-regexp: 2.0.0 dev: true - /static-extend/0.1.2: - resolution: {integrity: sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==} - engines: {node: '>=0.10.0'} - dependencies: - define-property: 0.2.5 - object-copy: 0.1.0 - dev: true - - /stream-browserify/2.0.2: - resolution: {integrity: sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==} - dependencies: - inherits: 2.0.4 - readable-stream: 2.3.7 - dev: true - - /stream-each/1.2.3: - resolution: {integrity: sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==} - dependencies: - end-of-stream: 1.4.4 - stream-shift: 1.0.1 - dev: true - - /stream-http/2.8.3: - resolution: {integrity: sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==} - dependencies: - builtin-status-codes: 3.0.0 - inherits: 2.0.4 - readable-stream: 2.3.7 - to-arraybuffer: 1.0.1 - xtend: 4.0.2 - dev: true - - /stream-shift/1.0.1: - resolution: {integrity: sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==} - dev: true - /stream-to-it/0.2.4: resolution: {integrity: sha512-4vEbkSs83OahpmBybNJXlJd7d6/RxzkkSdT3I0mnGt79Xd2Kk+e1JqbvAvsQfCeKj3aKb0QIWkyK3/n0j506vQ==} dependencies: get-iterator: 1.0.2 + dev: true /streaming-iterables/6.2.0: resolution: {integrity: sha512-3AYC8oB60WyD1ic7uHmN/vm2oRGzRnQ3XFBl/bFMDi1q1+nc5/vjMmiE4vroIya3jG59t87VpyAj/iXYxyw9AA==} engines: {node: '>=10'} + dev: true + + /streamsearch/1.1.0: + resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} + engines: {node: '>=10.0.0'} + dev: false /string-length/4.0.2: resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==} @@ -6737,12 +6547,6 @@ packages: strip-ansi: 6.0.1 dev: true - /string_decoder/1.1.1: - resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} - dependencies: - safe-buffer: 5.1.2 - dev: true - /string_decoder/1.3.0: resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} dependencies: @@ -6790,8 +6594,8 @@ packages: has-flag: 4.0.0 dev: true - /supports-hyperlinks/2.2.0: - resolution: {integrity: sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==} + /supports-hyperlinks/2.3.0: + resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==} engines: {node: '>=8'} dependencies: has-flag: 4.0.0 @@ -6803,16 +6607,6 @@ packages: engines: {node: '>= 0.4'} dev: true - /tapable/1.1.3: - resolution: {integrity: sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==} - engines: {node: '>=6'} - dev: true - - /tapable/2.2.1: - resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} - engines: {node: '>=6'} - dev: true - /tar-stream/2.2.0: resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} engines: {node: '>=6'} @@ -6828,71 +6622,7 @@ packages: engines: {node: '>=8'} dependencies: ansi-escapes: 4.3.2 - supports-hyperlinks: 2.2.0 - dev: true - - /terser-webpack-plugin/1.4.5_webpack@4.46.0: - resolution: {integrity: sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==} - engines: {node: '>= 6.9.0'} - peerDependencies: - webpack: ^4.0.0 - dependencies: - cacache: 12.0.4 - find-cache-dir: 2.1.0 - is-wsl: 1.1.0 - schema-utils: 1.0.0 - serialize-javascript: 4.0.0 - source-map: 0.6.1 - terser: 4.8.1 - webpack: 4.46.0_webpack-cli@4.10.0 - webpack-sources: 1.4.3 - worker-farm: 1.7.0 - dev: true - - /terser-webpack-plugin/5.3.6_webpack@5.75.0: - resolution: {integrity: sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==} - engines: {node: '>= 10.13.0'} - peerDependencies: - '@swc/core': '*' - esbuild: '*' - uglify-js: '*' - webpack: ^5.1.0 - peerDependenciesMeta: - '@swc/core': - optional: true - esbuild: - optional: true - uglify-js: - optional: true - dependencies: - '@jridgewell/trace-mapping': 0.3.15 - jest-worker: 27.5.1 - schema-utils: 3.1.1 - serialize-javascript: 6.0.0 - terser: 5.16.1 - webpack: 5.75.0_webpack-cli@5.0.1 - dev: true - - /terser/4.8.1: - resolution: {integrity: sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==} - engines: {node: '>=6.0.0'} - hasBin: true - dependencies: - acorn: 8.8.0 - commander: 2.20.3 - source-map: 0.6.1 - source-map-support: 0.5.13 - dev: true - - /terser/5.16.1: - resolution: {integrity: sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw==} - engines: {node: '>=10'} - hasBin: true - dependencies: - '@jridgewell/source-map': 0.3.2 - acorn: 8.8.0 - commander: 2.20.3 - source-map-support: 0.5.21 + supports-hyperlinks: 2.3.0 dev: true /test-exclude/6.0.0: @@ -6916,13 +6646,6 @@ packages: transitivePeerDependencies: - supports-color - /through2/2.0.5: - resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} - dependencies: - readable-stream: 2.3.7 - xtend: 4.0.2 - dev: true - /timeout-abort-controller/1.1.1: resolution: {integrity: sha512-BsF9i3NAJag6T0ZEjki9j654zoafI2X6ayuNd6Tp8+Ul6Tr5s4jo973qFeiWrRSweqvskC+AHDKUmIW4b7pdhQ==} dependencies: @@ -6935,13 +6658,6 @@ packages: dependencies: retimer: 3.0.0 - /timers-browserify/2.0.12: - resolution: {integrity: sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==} - engines: {node: '>=0.6.0'} - dependencies: - setimmediate: 1.0.5 - dev: true - /tiny-worker/2.3.0: resolution: {integrity: sha512-pJ70wq5EAqTAEl9IkGzA+fN0836rycEuz2Cn6yeZ6FRzlVS5IDOkFHpIoEsksPRQV34GDqXm65+OlnZqUSyK2g==} requiresBuild: true @@ -6953,30 +6669,11 @@ packages: resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==} dev: true - /to-arraybuffer/1.0.1: - resolution: {integrity: sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA==} - dev: true - /to-fast-properties/2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} dev: true - /to-object-path/0.3.0: - resolution: {integrity: sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==} - engines: {node: '>=0.10.0'} - dependencies: - kind-of: 3.2.2 - dev: true - - /to-regex-range/2.1.1: - resolution: {integrity: sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==} - engines: {node: '>=0.10.0'} - dependencies: - is-number: 3.0.0 - repeat-string: 1.6.1 - dev: true - /to-regex-range/5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} @@ -6984,29 +6681,24 @@ packages: is-number: 7.0.0 dev: true - /to-regex/3.0.2: - resolution: {integrity: sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==} - engines: {node: '>=0.10.0'} - dependencies: - define-property: 2.0.2 - extend-shallow: 3.0.2 - regex-not: 1.0.2 - safe-regex: 1.1.0 - dev: true - /tough-cookie/2.5.0: resolution: {integrity: sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==} engines: {node: '>=0.8'} dependencies: psl: 1.9.0 - punycode: 2.1.1 + punycode: 2.3.0 + dev: true + + /tr46/0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + dev: true /truncate-utf8-bytes/1.0.2: resolution: {integrity: sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==} dependencies: utf8-byte-length: 1.0.4 - /ts-jest/27.1.5_vibqa5hxa5biq5fwuxzv5iobty: + /ts-jest/27.1.5_2g5e7lwqsvuxdxojhdo55sfvve: resolution: {integrity: sha512-Xv6jBQPoBEvBq/5i2TeSG9tt/nqkbpcurrEG1b+2yfBrcJelOZF9Ml6dmyMh7bcW9JyFbRYpR5rxROSlBLTZHA==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} hasBin: true @@ -7027,20 +6719,21 @@ packages: esbuild: optional: true dependencies: - '@types/jest': 28.1.0 + '@babel/core': 7.20.12 + '@types/jest': 29.4.0 bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 28.1.0_gsb7asu77en4txj3es3i65pxci + jest: 29.4.1_@types+node@16.11.59 jest-util: 27.5.1 - json5: 2.2.1 + json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 semver: 7.3.8 - typescript: 4.6.4 + typescript: 4.7.4 yargs-parser: 20.2.9 dev: true - /ts-jest/28.0.2_qah6rulmyywoowvfc5owcdakum: + /ts-jest/28.0.2_x4jxemvix5u5qh7s2uiphct2vm: resolution: {integrity: sha512-IOZMb3D0gx6IHO9ywPgiQxJ3Zl4ECylEFwoVpENB55aTn5sdO0Ptyx/7noNBxAaUff708RqQL4XBNxxOVjY0vQ==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} hasBin: true @@ -7061,13 +6754,14 @@ packages: esbuild: optional: true dependencies: - '@babel/core': 7.18.13 + '@babel/core': 7.20.12 '@types/jest': 28.1.0 bs-logger: 0.2.6 + esbuild: 0.16.7 fast-json-stable-stringify: 2.1.0 jest: 28.1.0_@types+node@16.11.59 jest-util: 28.1.3 - json5: 2.2.1 + json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 semver: 7.3.8 @@ -7075,73 +6769,41 @@ packages: yargs-parser: 20.2.9 dev: true - /ts-jest/28.0.2_vibqa5hxa5biq5fwuxzv5iobty: - resolution: {integrity: sha512-IOZMb3D0gx6IHO9ywPgiQxJ3Zl4ECylEFwoVpENB55aTn5sdO0Ptyx/7noNBxAaUff708RqQL4XBNxxOVjY0vQ==} - engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + /ts-jest/29.0.5_knhdxpg4pvwuf6vrybjt5d2q5i: + resolution: {integrity: sha512-PL3UciSgIpQ7f6XjVOmbi96vmDHUqAyqDr8YxzopDqX3kfgYtX1cuNeBjP+L9sFXi6nzsGGA6R3fP3DDDJyrxA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true peerDependencies: '@babel/core': '>=7.0.0-beta.0 <8' - '@types/jest': ^27.0.0 - babel-jest: ^28.0.0 + '@jest/types': ^29.0.0 + babel-jest: ^29.0.0 esbuild: '*' - jest: ^28.0.0 + jest: ^29.0.0 typescript: '>=4.3' peerDependenciesMeta: '@babel/core': optional: true - '@types/jest': + '@jest/types': optional: true babel-jest: optional: true esbuild: optional: true dependencies: - '@types/jest': 28.1.0 + '@babel/core': 7.20.12 bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 28.1.0_gsb7asu77en4txj3es3i65pxci - jest-util: 28.1.3 - json5: 2.2.1 + jest: 29.4.1_@types+node@16.11.59 + jest-util: 29.4.1 + json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 semver: 7.3.8 - typescript: 4.6.4 - yargs-parser: 20.2.9 - dev: true - - /ts-loader/8.4.0_hrl2l4xchpnd6hlkqocppvpxx4: - resolution: {integrity: sha512-6nFY3IZ2//mrPc+ImY3hNWx1vCHyEhl6V+wLmL4CZcm6g1CqX7UKrkc6y0i4FwcfOhxyMPCfaEvh20f4r9GNpw==} - engines: {node: '>=10.0.0'} - peerDependencies: - typescript: '*' - webpack: '*' - dependencies: - chalk: 4.1.2 - enhanced-resolve: 4.5.0 - loader-utils: 2.0.4 - micromatch: 4.0.5 - semver: 7.3.8 typescript: 4.7.4 - webpack: 4.46.0_webpack-cli@4.10.0 + yargs-parser: 21.1.1 dev: true - /ts-loader/8.4.0_l2co7ao223gzrfox7yaiyzd7wu: - resolution: {integrity: sha512-6nFY3IZ2//mrPc+ImY3hNWx1vCHyEhl6V+wLmL4CZcm6g1CqX7UKrkc6y0i4FwcfOhxyMPCfaEvh20f4r9GNpw==} - engines: {node: '>=10.0.0'} - peerDependencies: - typescript: '*' - webpack: '*' - dependencies: - chalk: 4.1.2 - enhanced-resolve: 4.5.0 - loader-utils: 2.0.4 - micromatch: 4.0.5 - semver: 7.3.8 - typescript: 4.7.4 - webpack: 5.75.0_webpack-cli@5.0.1 - dev: true - - /ts-node/10.9.1_apbkdfxvcdmborgupeskcsfbo4: + /ts-node/10.9.1_nv75g3i7xuh23du6z7qul3uiqi: resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} hasBin: true peerDependencies: @@ -7160,65 +6822,46 @@ packages: '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.3 - '@types/node': 18.7.14 - acorn: 8.8.0 + '@types/node': 18.11.18 + acorn: 8.8.2 acorn-walk: 8.2.0 arg: 4.1.3 create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 4.6.4 + typescript: 4.7.4 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 dev: true - /ts-node/10.9.1_f4s53rsdbgkmxc2oaa23drhnsy: - resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} - hasBin: true - peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=2.7' - peerDependenciesMeta: - '@swc/core': - optional: true - '@swc/wasm': - optional: true - dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@tsconfig/node10': 1.0.9 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.3 - '@types/node': 16.11.59 - acorn: 8.8.0 - acorn-walk: 8.2.0 - arg: 4.1.3 - create-require: 1.1.1 - diff: 4.0.2 - make-error: 1.3.6 - typescript: 4.6.4 - v8-compile-cache-lib: 3.0.1 - yn: 3.1.1 - /ts-pattern/3.3.3: resolution: {integrity: sha512-Z5EFi6g6wyX3uDFHqxF5W5c5h663oZg9O6aOiAT7fqNu0HPSfCxtHzrQ7SblTy738Mrg2Ezorky8H5aUOm8Pvg==} - /tslib/2.4.0: - resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} - - /tty-browserify/0.0.0: - resolution: {integrity: sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw==} + /tsconfck/2.0.2_typescript@4.7.4: + resolution: {integrity: sha512-H3DWlwKpow+GpVLm/2cpmok72pwRr1YFROV3YzAmvzfGFiC1zEM/mc9b7+1XnrxuXtEbhJ7xUSIqjPFbedp7aQ==} + engines: {node: ^14.13.1 || ^16 || >=18, pnpm: ^7.18.0} + hasBin: true + peerDependencies: + typescript: ^4.3.5 + peerDependenciesMeta: + typescript: + optional: true + dependencies: + typescript: 4.7.4 dev: true + /tslib/2.5.0: + resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} + /tunnel-agent/0.6.0: resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} dependencies: safe-buffer: 5.2.1 + dev: true /tweetnacl/0.14.5: resolution: {integrity: sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==} + dev: true /type-detect/4.0.8: resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} @@ -7230,78 +6873,66 @@ packages: engines: {node: '>=10'} dev: true - /typedarray/0.0.6: - resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} - dev: true - - /typescript/4.6.4: - resolution: {integrity: sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==} - engines: {node: '>=4.2.0'} - hasBin: true - /typescript/4.7.4: resolution: {integrity: sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==} engines: {node: '>=4.2.0'} hasBin: true dev: true + /uint8-varint/1.0.4: + resolution: {integrity: sha512-FHnaReHRIM7kHe/Ms0I2KGkuSY4o7ouhUJGJeiFEuYWGvBt4Y64+BJ3mV6DqmyYtYTZj4Pz8K/BmViSNFLRrVw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + byte-access: 1.0.1 + longbits: 1.1.0 + uint8arraylist: 2.4.3 + uint8arrays: 4.0.3 + dev: false + + /uint8arraylist/2.4.3: + resolution: {integrity: sha512-oEVZr4/GrH87K0kjNce6z8pSCzLEPqHNLNR5sj8cJOySrTP8Vb/pMIbZKLJGhQKxm1TiZ31atNrpn820Pyqpow==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + uint8arrays: 4.0.3 + dev: false + /uint8arrays/2.1.10: resolution: {integrity: sha512-Q9/hhJa2836nQfEJSZTmr+pg9+cDJS9XEAp7N2Vg5MzL3bK/mkMVfjscRGYruP9jNda6MAdf4QD/y78gSzkp6A==} dependencies: - multiformats: 9.9.0 + multiformats: 9.6.5 dev: true - /uint8arrays/3.1.0: - resolution: {integrity: sha512-ei5rfKtoRO8OyOIor2Rz5fhzjThwIHJZ3uyDPnDHTXbP0aMQ1RN/6AI5B5d9dBxJOU+BvOAk7ZQ1xphsX8Lrog==} + /uint8arrays/3.1.1: + resolution: {integrity: sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==} dependencies: - multiformats: 9.9.0 - - /union-value/1.0.1: - resolution: {integrity: sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==} - engines: {node: '>=0.10.0'} - dependencies: - arr-union: 3.1.0 - get-value: 2.0.6 - is-extendable: 0.1.1 - set-value: 2.0.1 + multiformats: 9.6.5 dev: true - /unique-filename/1.1.1: - resolution: {integrity: sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==} + /uint8arrays/4.0.3: + resolution: {integrity: sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} dependencies: - unique-slug: 2.0.2 - dev: true + multiformats: 11.0.1 + dev: false - /unique-slug/2.0.2: - resolution: {integrity: sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==} + /undici/5.16.0: + resolution: {integrity: sha512-KWBOXNv6VX+oJQhchXieUznEmnJMqgXMbs0xxH2t8q/FUAWSJvOSr/rMaZKnX5RIVq7JDn0JbP4BOnKG2SGXLQ==} + engines: {node: '>=12.18'} dependencies: - imurmurhash: 0.1.4 - dev: true + busboy: 1.6.0 + dev: false /unordered-array-remove/1.0.2: resolution: {integrity: sha512-45YsfD6svkgaCBNyvD+dFHm4qFX9g3wRSIVgWVPtm2OCnphvPxzJoe20ATsiNpNJrmzHifnxm+BN5F7gFT/4gw==} - - /unset-value/1.0.0: - resolution: {integrity: sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==} - engines: {node: '>=0.10.0'} - dependencies: - has-value: 0.3.1 - isobject: 3.0.1 dev: true - /upath/1.2.0: - resolution: {integrity: sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==} - engines: {node: '>=4'} - dev: true - optional: true - - /update-browserslist-db/1.0.10_browserslist@4.21.4: + /update-browserslist-db/1.0.10_browserslist@4.21.5: resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' dependencies: - browserslist: 4.21.4 + browserslist: 4.21.5 escalade: 3.1.1 picocolors: 1.0.0 dev: true @@ -7309,18 +6940,7 @@ packages: /uri-js/4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: - punycode: 2.1.1 - - /urix/0.1.0: - resolution: {integrity: sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==} - deprecated: Please see https://github.com/lydell/urix#deprecated - dev: true - - /url/0.11.0: - resolution: {integrity: sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==} - dependencies: - punycode: 1.3.2 - querystring: 0.2.0 + punycode: 2.3.0 dev: true /ursa-optional/0.10.2: @@ -7329,11 +6949,7 @@ packages: requiresBuild: true dependencies: bindings: 1.5.0 - nan: 2.16.0 - - /use/3.1.1: - resolution: {integrity: sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==} - engines: {node: '>=0.10.0'} + nan: 2.17.0 dev: true /utf8-byte-length/1.0.4: @@ -7342,22 +6958,11 @@ packages: /util-deprecate/1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - /util/0.10.3: - resolution: {integrity: sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ==} - dependencies: - inherits: 2.0.1 - dev: true - - /util/0.11.1: - resolution: {integrity: sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==} - dependencies: - inherits: 2.0.3 - dev: true - /uuid/3.4.0: resolution: {integrity: sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==} deprecated: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. hasBin: true + dev: true /uuid/8.3.2: resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} @@ -7365,18 +6970,20 @@ packages: /v8-compile-cache-lib/3.0.1: resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} + dev: true /v8-to-istanbul/9.0.1: resolution: {integrity: sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==} engines: {node: '>=10.12.0'} dependencies: - '@jridgewell/trace-mapping': 0.3.15 + '@jridgewell/trace-mapping': 0.3.17 '@types/istanbul-lib-coverage': 2.0.4 - convert-source-map: 1.8.0 + convert-source-map: 1.9.0 dev: true /varint/5.0.2: resolution: {integrity: sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==} + dev: true /varint/6.0.0: resolution: {integrity: sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==} @@ -7388,9 +6995,62 @@ packages: assert-plus: 1.0.0 core-util-is: 1.0.2 extsprintf: 1.3.0 + dev: true - /vm-browserify/1.1.2: - resolution: {integrity: sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==} + /vite-plugin-replace/0.1.1_vite@4.0.4: + resolution: {integrity: sha512-v+okl3JNt2pf1jDYijw+WPVt6h9FWa/atTi+qnSFBqmKThLTDhlesx0r3bh+oFPmxRJmis5tNx9HtN6lGFoqWg==} + peerDependencies: + vite: ^2 + dependencies: + vite: 4.0.4_@types+node@16.11.59 + dev: true + + /vite-tsconfig-paths/4.0.3_trrwuuiz4f5khno7hdf3cjz2ky: + resolution: {integrity: sha512-gRO2Q/tOkV+9kMht5tz90+IaEKvW2zCnvwJV3tp2ruPNZOTM5rF+yXorJT4ggmAMYEaJ3nyXjx5P5jY5FwiZ+A==} + peerDependencies: + vite: '>2.0.0-0' + dependencies: + debug: 4.3.4 + globrex: 0.1.2 + tsconfck: 2.0.2_typescript@4.7.4 + vite: 4.0.4_@types+node@16.11.59 + transitivePeerDependencies: + - supports-color + - typescript + dev: true + + /vite/4.0.4_@types+node@16.11.59: + resolution: {integrity: sha512-xevPU7M8FU0i/80DMR+YhgrzR5KS2ORy1B4xcX/cXLsvnUWvfHuqMmVU6N0YiJ4JWGRJJsLCgjEzKjG9/GKoSw==} + engines: {node: ^14.18.0 || >=16.0.0} + hasBin: true + peerDependencies: + '@types/node': '>= 14' + less: '*' + sass: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + dependencies: + '@types/node': 16.11.59 + esbuild: 0.16.7 + postcss: 8.4.21 + resolve: 1.22.1 + rollup: 3.12.1 + optionalDependencies: + fsevents: 2.3.2 dev: true /walker/1.0.8: @@ -7399,208 +7059,20 @@ packages: makeerror: 1.0.12 dev: true - /watchpack-chokidar2/2.0.1: - resolution: {integrity: sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==} - requiresBuild: true - dependencies: - chokidar: 2.1.8 - transitivePeerDependencies: - - supports-color - dev: true - optional: true - - /watchpack/1.7.5: - resolution: {integrity: sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==} - dependencies: - graceful-fs: 4.2.10 - neo-async: 2.6.2 - optionalDependencies: - chokidar: 3.5.3 - watchpack-chokidar2: 2.0.1 - transitivePeerDependencies: - - supports-color - dev: true - - /watchpack/2.4.0: - resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} - engines: {node: '>=10.13.0'} - dependencies: - glob-to-regexp: 0.4.1 - graceful-fs: 4.2.10 - dev: true - /web-streams-polyfill/3.2.1: resolution: {integrity: sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==} engines: {node: '>= 8'} - - /webpack-cli/4.10.0_webpack@4.46.0: - resolution: {integrity: sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==} - engines: {node: '>=10.13.0'} - hasBin: true - peerDependencies: - '@webpack-cli/generators': '*' - '@webpack-cli/migrate': '*' - webpack: 4.x.x || 5.x.x - webpack-bundle-analyzer: '*' - webpack-dev-server: '*' - peerDependenciesMeta: - '@webpack-cli/generators': - optional: true - '@webpack-cli/migrate': - optional: true - webpack-bundle-analyzer: - optional: true - webpack-dev-server: - optional: true - dependencies: - '@discoveryjs/json-ext': 0.5.7 - '@webpack-cli/configtest': 1.2.0_dfxgqfcw6epibhmjfd2ethbqbi - '@webpack-cli/info': 1.5.0_webpack-cli@4.10.0 - '@webpack-cli/serve': 1.7.0_webpack-cli@4.10.0 - colorette: 2.0.19 - commander: 7.2.0 - cross-spawn: 7.0.3 - fastest-levenshtein: 1.0.16 - import-local: 3.1.0 - interpret: 2.2.0 - rechoir: 0.7.1 - webpack: 4.46.0_webpack-cli@4.10.0 - webpack-merge: 5.8.0 dev: true - /webpack-cli/5.0.1_webpack@5.75.0: - resolution: {integrity: sha512-S3KVAyfwUqr0Mo/ur3NzIp6jnerNpo7GUO6so51mxLi1spqsA17YcMXy0WOIJtBSnj748lthxC6XLbNKh/ZC+A==} - engines: {node: '>=14.15.0'} - hasBin: true - peerDependencies: - '@webpack-cli/generators': '*' - webpack: 5.x.x - webpack-bundle-analyzer: '*' - webpack-dev-server: '*' - peerDependenciesMeta: - '@webpack-cli/generators': - optional: true - webpack-bundle-analyzer: - optional: true - webpack-dev-server: - optional: true - dependencies: - '@discoveryjs/json-ext': 0.5.7 - '@webpack-cli/configtest': 2.0.1_rjsyjcrmk25kqsjzwkvj3a2evq - '@webpack-cli/info': 2.0.1_rjsyjcrmk25kqsjzwkvj3a2evq - '@webpack-cli/serve': 2.0.1_rjsyjcrmk25kqsjzwkvj3a2evq - colorette: 2.0.19 - commander: 9.4.1 - cross-spawn: 7.0.3 - envinfo: 7.8.1 - fastest-levenshtein: 1.0.16 - import-local: 3.1.0 - interpret: 3.1.1 - rechoir: 0.8.0 - webpack: 5.75.0_webpack-cli@5.0.1 - webpack-merge: 5.8.0 + /webidl-conversions/3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} dev: true - /webpack-merge/5.8.0: - resolution: {integrity: sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==} - engines: {node: '>=10.0.0'} + /whatwg-url/5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} dependencies: - clone-deep: 4.0.1 - wildcard: 2.0.0 - dev: true - - /webpack-sources/1.4.3: - resolution: {integrity: sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==} - dependencies: - source-list-map: 2.0.1 - source-map: 0.6.1 - dev: true - - /webpack-sources/3.2.3: - resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} - engines: {node: '>=10.13.0'} - dev: true - - /webpack/4.46.0_webpack-cli@4.10.0: - resolution: {integrity: sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==} - engines: {node: '>=6.11.5'} - hasBin: true - peerDependencies: - webpack-cli: '*' - webpack-command: '*' - peerDependenciesMeta: - webpack-cli: - optional: true - webpack-command: - optional: true - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/helper-module-context': 1.9.0 - '@webassemblyjs/wasm-edit': 1.9.0 - '@webassemblyjs/wasm-parser': 1.9.0 - acorn: 6.4.2 - ajv: 6.12.6 - ajv-keywords: 3.5.2_ajv@6.12.6 - chrome-trace-event: 1.0.3 - enhanced-resolve: 4.5.0 - eslint-scope: 4.0.3 - json-parse-better-errors: 1.0.2 - loader-runner: 2.4.0 - loader-utils: 1.4.2 - memory-fs: 0.4.1 - micromatch: 3.1.10 - mkdirp: 0.5.6 - neo-async: 2.6.2 - node-libs-browser: 2.2.1 - schema-utils: 1.0.0 - tapable: 1.1.3 - terser-webpack-plugin: 1.4.5_webpack@4.46.0 - watchpack: 1.7.5 - webpack-cli: 4.10.0_webpack@4.46.0 - webpack-sources: 1.4.3 - transitivePeerDependencies: - - supports-color - dev: true - - /webpack/5.75.0_webpack-cli@5.0.1: - resolution: {integrity: sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==} - engines: {node: '>=10.13.0'} - hasBin: true - peerDependencies: - webpack-cli: '*' - peerDependenciesMeta: - webpack-cli: - optional: true - dependencies: - '@types/eslint-scope': 3.7.4 - '@types/estree': 0.0.51 - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/wasm-edit': 1.11.1 - '@webassemblyjs/wasm-parser': 1.11.1 - acorn: 8.8.0 - acorn-import-assertions: 1.8.0_acorn@8.8.0 - browserslist: 4.21.4 - chrome-trace-event: 1.0.3 - enhanced-resolve: 5.12.0 - es-module-lexer: 0.9.3 - eslint-scope: 5.1.1 - events: 3.3.0 - glob-to-regexp: 0.4.1 - graceful-fs: 4.2.10 - json-parse-even-better-errors: 2.3.1 - loader-runner: 4.3.0 - mime-types: 2.1.35 - neo-async: 2.6.2 - schema-utils: 3.1.1 - tapable: 2.2.1 - terser-webpack-plugin: 5.3.6_webpack@5.75.0 - watchpack: 2.4.0 - webpack-cli: 5.0.1_webpack@5.75.0 - webpack-sources: 3.2.3 - transitivePeerDependencies: - - '@swc/core' - - esbuild - - uglify-js + tr46: 0.0.3 + webidl-conversions: 3.0.1 dev: true /wherearewe/1.0.2: @@ -7608,6 +7080,14 @@ packages: engines: {node: '>=16.0.0', npm: '>=7.0.0'} dependencies: is-electron: 2.2.1 + dev: true + + /wherearewe/2.0.1: + resolution: {integrity: sha512-XUguZbDxCA2wBn2LoFtcEhXL6AXo+hVjGonwhSTTTU9SzbWG8Xu3onNIpzf9j/mYUcJQ0f+m37SzG77G851uFw==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + is-electron: 2.2.1 + dev: false /which/2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} @@ -7616,16 +7096,6 @@ packages: dependencies: isexe: 2.0.0 - /wildcard/2.0.0: - resolution: {integrity: sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==} - dev: true - - /worker-farm/1.7.0: - resolution: {integrity: sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==} - dependencies: - errno: 0.1.8 - dev: true - /wrap-ansi/7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -7646,6 +7116,14 @@ packages: signal-exit: 3.0.7 dev: true + /write-file-atomic/5.0.0: + resolution: {integrity: sha512-R7NYMnHSlV42K54lwY9lvW6MnSm1HSJqZL3xiSgi9E7//FYaI74r2G0rd+/X6VAMkHEdzxQaU5HUOXWUz5kA/w==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + imurmurhash: 0.1.4 + signal-exit: 3.0.7 + dev: true + /ws/7.5.9: resolution: {integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==} engines: {node: '>=8.3.0'} @@ -7657,24 +7135,43 @@ packages: optional: true utf-8-validate: optional: true + dev: true + + /ws/8.12.0: + resolution: {integrity: sha512-kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + dev: false /xml2js/0.1.14: resolution: {integrity: sha512-pbdws4PPPNc1HPluSUKamY4GWMk592K7qwcj6BExbVOhhubub8+pMda/ql68b6L3luZs/OGjGSB5goV7SnmgnA==} dependencies: sax: 1.2.4 + dev: true + + /xml2js/0.4.23: + resolution: {integrity: sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==} + engines: {node: '>=4.0.0'} + dependencies: + sax: 1.2.4 + xmlbuilder: 11.0.1 + dev: false + + /xmlbuilder/11.0.1: + resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==} + engines: {node: '>=4.0'} + dev: false /xsalsa20/1.2.0: resolution: {integrity: sha512-FIr/DEeoHfj7ftfylnoFt3rAIRoWXpx2AoDfrT2qD2wtp7Dp+COajvs/Icb7uHqRW9m60f5iXZwdsJJO3kvb7w==} - /xtend/4.0.2: - resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} - engines: {node: '>=0.4'} - dev: true - - /y18n/4.0.3: - resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} - dev: true - /y18n/5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} @@ -7698,11 +7195,11 @@ packages: engines: {node: '>=12'} dev: true - /yargs/17.5.1: - resolution: {integrity: sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==} + /yargs/17.6.2: + resolution: {integrity: sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==} engines: {node: '>=12'} dependencies: - cliui: 7.0.4 + cliui: 8.0.1 escalade: 3.1.1 get-caller-file: 2.0.5 require-directory: 2.1.1 @@ -7714,8 +7211,14 @@ packages: /yn/3.1.1: resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} engines: {node: '>=6'} + dev: true /yocto-queue/0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} dev: true + + /yocto-queue/1.0.0: + resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} + engines: {node: '>=12.20'} + dev: false diff --git a/packages/marine/worker-script/tsconfig.json b/tsconfig.json similarity index 53% rename from packages/marine/worker-script/tsconfig.json rename to tsconfig.json index 63fa4675..b5bac564 100644 --- a/packages/marine/worker-script/tsconfig.json +++ b/tsconfig.json @@ -2,17 +2,13 @@ "compilerOptions": { "lib": ["es2015", "dom"], "outDir": "./dist/", - "target": "es5", - "module": "commonjs", - "allowJs": true, - "strict": true, - "esModuleInterop": true, + "target": "ESNext", + "module": "ESNext", "skipLibCheck": true, + "strict": true, "forceConsistentCasingInFileNames": true, + "allowJs": true, "declaration": true, - "declarationMap": false, - "sourceMap": false - }, - "exclude": ["node_modules", "dist"], - "include": ["src"] + "moduleResolution": "nodenext" + } }