diff --git a/package-lock.json b/package-lock.json index 8007be2..297cf39 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,7 @@ "hasInstallScript": true, "license": "ISC", "dependencies": { - "@fluencelabs/fluence": "0.17.1", + "@fluencelabs/fluence": "0.19.0", "@fluencelabs/fluence-network-environment": "1.0.10", "css-spinners": "^1.0.1", "tachyons": "^4.12.0", @@ -19,7 +19,7 @@ "devDependencies": { "@babel/core": "^7.11.6", "@babel/preset-env": "^7.11.5", - "@fluencelabs/aqua": "^0.5.3-260", + "@fluencelabs/aqua": "0.6.0-263", "@fluencelabs/aqua-lib": "0.3.3", "@types/yup": "^0.29.11", "babel-loader": "^8.1.0", @@ -1248,24 +1248,24 @@ } }, "node_modules/@chainsafe/libp2p-noise": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@chainsafe/libp2p-noise/-/libp2p-noise-4.0.0.tgz", - "integrity": "sha512-Q9gcC1IzN8/aQQXl/ntRbldTD/3c35j5lK5guIKEB+QU/Ogi0EyaihkL3YGx9QrSiFTyz0ABlSfxA0Wxfw5R1A==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@chainsafe/libp2p-noise/-/libp2p-noise-4.1.1.tgz", + "integrity": "sha512-/Fz86sZmnvRSf7FHxMPifzakxx9xK4KVYx6yi35KPZughop9ivJslUSCLhx/UqDHiuj3h9i04pVXET6nIjSJyQ==", "dependencies": { "@stablelib/chacha20poly1305": "^1.0.1", "@stablelib/hkdf": "^1.0.1", "@stablelib/sha256": "^1.0.1", "@stablelib/x25519": "^1.0.1", "debug": "^4.3.1", - "it-buffer": "^0.1.1", - "it-length-prefixed": "^5.0.2", + "it-buffer": "^0.1.3", + "it-length-prefixed": "^5.0.3", "it-pair": "^1.0.0", - "it-pb-rpc": "^0.1.9", + "it-pb-rpc": "^0.1.11", "it-pipe": "^1.1.0", - "libp2p-crypto": "^0.19.0", - "peer-id": "^0.15.0", - "protobufjs": "^6.10.1", - "uint8arrays": "^2.0.5" + "libp2p-crypto": "^0.19.7", + "peer-id": "^0.15.3", + "protobufjs": "^6.11.2", + "uint8arrays": "^3.0.0" } }, "node_modules/@chainsafe/libp2p-noise/node_modules/it-length-prefixed": { @@ -1278,15 +1278,45 @@ "varint": "^6.0.0" } }, + "node_modules/@chainsafe/libp2p-noise/node_modules/libp2p-crypto": { + "version": "0.19.7", + "resolved": "https://registry.npmjs.org/libp2p-crypto/-/libp2p-crypto-0.19.7.tgz", + "integrity": "sha512-Qb5o/3WFKF2j6mYSt4UBPyi2kbKl3jYV0podBJoJCw70DlpM5Xc+oh3fFY9ToSunu8aSQQ5GY8nutjXgX/uGRA==", + "dependencies": { + "err-code": "^3.0.1", + "is-typedarray": "^1.0.0", + "iso-random-stream": "^2.0.0", + "keypair": "^1.0.1", + "multiformats": "^9.4.5", + "node-forge": "^0.10.0", + "pem-jwk": "^2.0.0", + "protobufjs": "^6.11.2", + "secp256k1": "^4.0.0", + "uint8arrays": "^3.0.0", + "ursa-optional": "^0.10.1" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@chainsafe/libp2p-noise/node_modules/uint8arrays": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.0.0.tgz", + "integrity": "sha512-HRCx0q6O9Bfbp+HHSfQQKD7wU70+lydKVt4EghkdOvlK/NlrF90z+eXV34mUd48rNvVJXwkrMSPpCATkct8fJA==", + "dependencies": { + "multiformats": "^9.4.2" + } + }, "node_modules/@fluencelabs/aqua": { - "version": "0.5.3-260", - "resolved": "https://registry.npmjs.org/@fluencelabs/aqua/-/aqua-0.5.3-260.tgz", - "integrity": "sha512-VHDpUEpiuJ8FGTrY61uoLyUietwej0K1sC1VkysvNEtLU8o0jh4nBwKP3vyNkw30N4n9u3qjN8zcF1FRNxHYfg==", + "version": "0.6.0-263", + "resolved": "https://registry.npmjs.org/@fluencelabs/aqua/-/aqua-0.6.0-263.tgz", + "integrity": "sha512-E9ynPrkboKgyYEE6M+WDyroFJ0k0FTs1w9Gu/hOqFYnE63106VNZz/RrKtjK0o202MqhCpoOlSG0HsV3B5CzVA==", "dev": true, "dependencies": { "@fluencelabs/aqua-ipfs": "0.5.2", "@fluencelabs/aqua-lib": "0.3.2", - "@fluencelabs/fluence": "0.18.0", + "@fluencelabs/avm": "0.20.2", + "@fluencelabs/fluence": "0.19.0", "ipfs-http-client": "50.1.2" }, "bin": { @@ -1321,49 +1351,11 @@ "integrity": "sha512-8+NKFwRg9SFzpbac1SvvTWcOgHhMoYZwRyb93qJRcNFaN7xjRcA8v0i6CF7Mkjno1zH3xixC9J44+LKQd8uvzA==", "dev": true }, - "node_modules/@fluencelabs/aqua/node_modules/@fluencelabs/avm": { - "version": "0.20.0", - "resolved": "https://registry.npmjs.org/@fluencelabs/avm/-/avm-0.20.0.tgz", - "integrity": "sha512-dDtXh9iJ4U/lZhdS36Dsef55fzeCYGSYVBey1mi+OHzyDtQoxxAkac9HeMlgWWQoZzy9i43JmX0t0iX7tBt+4A==", - "dev": true, - "bin": { - "copy-avm": "dist/copyAvm.js" - } - }, - "node_modules/@fluencelabs/aqua/node_modules/@fluencelabs/fluence": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/@fluencelabs/fluence/-/fluence-0.18.0.tgz", - "integrity": "sha512-YmDgpyu3ffFYkWrzILyfJH8hvca11QpeY0TZiN0ptHTRGxOeFThw5Ikcf68kErPTT7OQUhsjSKHGHT0Yopb3mg==", - "dev": true, - "dependencies": { - "@chainsafe/libp2p-noise": "4.0.0", - "@fluencelabs/avm": "0.20.0", - "@fluencelabs/avm-runner-background": "0.1.2", - "@fluencelabs/avm-runner-interface": "^0.2.0", - "async": "3.2.0", - "bs58": "4.0.1", - "cids": "0.8.1", - "it-length-prefixed": "3.0.1", - "it-pipe": "1.1.0", - "libp2p": "0.32.3", - "libp2p-crypto": "0.19.7", - "libp2p-mplex": "0.10.4", - "libp2p-websockets": "0.16.1", - "loglevel": "1.7.0", - "multiaddr": "10.0.0", - "peer-id": "0.15.3", - "rxjs": "^7.3.0", - "ts-pattern": "^3.3.3", - "uuid": "8.3.0" - }, - "bin": { - "copy-avm-public": "dist/tools/copyAvmPublic.js" - } - }, "node_modules/@fluencelabs/avm": { - "version": "0.19.6", - "resolved": "https://registry.npmjs.org/@fluencelabs/avm/-/avm-0.19.6.tgz", - "integrity": "sha512-T6UQsIuGVltf13Wc3bFmuCYmQzu/00Y4lPS7atBauQ2R4+BqhRg1dc5reSZ+MbAW3Vy+NmJY1EEYOFRpLCGBwg==", + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@fluencelabs/avm/-/avm-0.20.2.tgz", + "integrity": "sha512-u438Gpw6KoEugXlMch0hOupRqGGeQIcjxDi3QAavbUb1csG2eKkk/iYD1ka9Qbc1hLnrCFXpD2tw/LwNEX3Aew==", + "dev": true, "bin": { "copy-avm": "dist/copyAvm.js" } @@ -1387,12 +1379,12 @@ "integrity": "sha512-Y41pL+UwZZVdormxju8cJQsNRp6tdER0VqJ9Kg9gH2wd1KJAaYTJkyVbn8NB7fEFRUbqfbb1BXHi9wWBYOgGYQ==" }, "node_modules/@fluencelabs/fluence": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/@fluencelabs/fluence/-/fluence-0.17.1.tgz", - "integrity": "sha512-0GAxJC2RvpXm2kTSVcegiSnZWEKBu766NSNxFCBagNI6MIcOjOOgn5FdolEWaVAFM2EVkWWBvYLmgSjUpExQ8g==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/@fluencelabs/fluence/-/fluence-0.19.0.tgz", + "integrity": "sha512-LZ8Ze6w+rSEDm8mXEqaDwYOUcPEkdGum+5VH8t4UIHT/1sgBZ/AeINrMoS4q/7r8sZORu0WwbdxvyrNFV9bBPw==", "dependencies": { - "@chainsafe/libp2p-noise": "4.0.0", - "@fluencelabs/avm": "0.19.6", + "@chainsafe/libp2p-noise": "^4.1.1", + "@fluencelabs/avm": "0.20.0", "@fluencelabs/avm-runner-background": "0.1.2", "@fluencelabs/avm-runner-interface": "^0.2.0", "async": "3.2.0", @@ -1400,13 +1392,13 @@ "cids": "0.8.1", "it-length-prefixed": "3.0.1", "it-pipe": "1.1.0", - "libp2p": "0.32.3", - "libp2p-crypto": "0.19.7", - "libp2p-mplex": "0.10.4", - "libp2p-websockets": "0.16.1", + "libp2p": "=0.33.0", + "libp2p-crypto": "=0.20.0", + "libp2p-mplex": "=0.10.2", + "libp2p-websockets": "^0.16.2", "loglevel": "1.7.0", - "multiaddr": "10.0.0", - "peer-id": "0.15.3", + "multiaddr": "^10.0.1", + "peer-id": "=0.15.4", "rxjs": "^7.3.0", "ts-pattern": "^3.3.3", "uuid": "8.3.0" @@ -1420,6 +1412,14 @@ "resolved": "https://registry.npmjs.org/@fluencelabs/fluence-network-environment/-/fluence-network-environment-1.0.10.tgz", "integrity": "sha512-aaWZDDFIIasSTgdFdw1KEz+boZMSn7pXffUENZNLX4DrP11rC3AEX4c8GnIJQbWqGsouOFZOPna2DSG6o2rLNQ==" }, + "node_modules/@fluencelabs/fluence/node_modules/@fluencelabs/avm": { + "version": "0.20.0", + "resolved": "https://registry.npmjs.org/@fluencelabs/avm/-/avm-0.20.0.tgz", + "integrity": "sha512-dDtXh9iJ4U/lZhdS36Dsef55fzeCYGSYVBey1mi+OHzyDtQoxxAkac9HeMlgWWQoZzy9i43JmX0t0iX7tBt+4A==", + "bin": { + "copy-avm": "dist/copyAvm.js" + } + }, "node_modules/@motrix/nat-api": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/@motrix/nat-api/-/nat-api-0.3.2.tgz", @@ -1811,10 +1811,9 @@ "integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==" }, "node_modules/@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", - "dev": true + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==" }, "node_modules/@types/node": { "version": "14.14.9", @@ -2127,9 +2126,9 @@ } }, "node_modules/abortable-iterator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abortable-iterator/-/abortable-iterator-3.0.0.tgz", - "integrity": "sha512-7KqcPPnMhfot4GrEjK51zesS4Ye/lUCHBgYt3oRxIlU24HO3mVxBwEo9niNyfHqoWKqWLuZTc3zErNomdHA+ag==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/abortable-iterator/-/abortable-iterator-3.0.2.tgz", + "integrity": "sha512-qVP8HFfTpUQI2F+f1tpTriKDIZ4XrmwCrBCrQeRKO7DKWF3kgoT6NXiNDv2krrGcHxPwmI63eGQiec81sEaWIw==", "dependencies": { "get-iterator": "^1.0.2" } @@ -5506,17 +5505,17 @@ "dev": true }, "node_modules/elliptic": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", - "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", "dependencies": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", + "bn.js": "^4.11.9", + "brorand": "^1.1.0", "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" } }, "node_modules/elm": { @@ -6854,7 +6853,8 @@ "node_modules/es6-promisify": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-6.1.1.tgz", - "integrity": "sha512-HBL8I3mIki5C1Cc9QjKUenHtnG0A5/xA8Q/AllRcfiwl2CZFXGK7ddBiCoRwAix4i2KxcQfjtIVcrVbB3vbmwg==" + "integrity": "sha512-HBL8I3mIki5C1Cc9QjKUenHtnG0A5/xA8Q/AllRcfiwl2CZFXGK7ddBiCoRwAix4i2KxcQfjtIVcrVbB3vbmwg==", + "dev": true }, "node_modules/es6-symbol": { "version": "3.1.3", @@ -6989,14 +6989,12 @@ "node_modules/eventemitter3": { "version": "4.0.7", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" }, "node_modules/events": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", - "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", - "dev": true, + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "engines": { "node": ">=0.8.x" } @@ -8924,17 +8922,11 @@ } }, "node_modules/interface-datastore": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-5.1.3.tgz", - "integrity": "sha512-OVJ2wXg4wuR8kGI9r+09UponEQl/oEtiPaMKiS8QnAKSOf/NTOGnnpmtQPy00UOp3vvbFOvocF6G7HnV76Fmpw==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-6.1.0.tgz", + "integrity": "sha512-oNHdsrWBsI/kDwUtEgt+aaZtQFKtQYN0TGZzc3SGiIA6m+plZ6malhmsygtbmDpfpIsNNC7ce9Gyaj+Tki+gVw==", "dependencies": { - "err-code": "^3.0.1", - "interface-store": "^1.0.2", - "ipfs-utils": "^8.1.2", - "it-all": "^1.0.2", - "it-drain": "^1.0.1", - "it-filter": "^1.0.2", - "it-take": "^1.0.1", + "interface-store": "^2.0.1", "nanoid": "^3.0.2", "uint8arrays": "^3.0.0" } @@ -9032,9 +9024,9 @@ } }, "node_modules/interface-store": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-1.0.2.tgz", - "integrity": "sha512-rUBLYsgoWwxuUpnQoSUr+DR/3dH3reVeIu5aOHFZK31lAexmb++kR6ZECNRgrx6WvoaM3Akdo0A7TDrqgCzZaQ==" + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-2.0.2.tgz", + "integrity": "sha512-rScRlhDcz6k199EkHqT8NpM87ebN89ICOzILoBHgaG36/WX50N32BnU/kpZgCGPLhARRAWUUX5/cyaIjt7Kipg==" }, "node_modules/internal-ip": { "version": "4.3.0", @@ -9549,6 +9541,7 @@ "version": "8.1.6", "resolved": "https://registry.npmjs.org/ipfs-utils/-/ipfs-utils-8.1.6.tgz", "integrity": "sha512-V/cwb6113DrDhrjDTWImA6+zmJbpdbUkxdxmEQO7it8ykV76bBmzU1ZXSM0QR0qxGy9VW8dkUlPAC2K10VgSmw==", + "dev": true, "dependencies": { "abort-controller": "^3.0.0", "any-signal": "^2.1.0", @@ -10500,14 +10493,6 @@ "node": ">=10" } }, - "node_modules/iso-random-stream/node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "engines": { - "node": ">=0.8.x" - } - }, "node_modules/iso-url": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/iso-url/-/iso-url-1.1.5.tgz", @@ -10564,24 +10549,20 @@ "integrity": "sha512-rxFUyPCrhk7WrNxD8msU10iEPhQmROoqwuyWmQUYY1PtopwUGBYyra9EYG2nRZADYeuT83cohKWmKCWPzpeyiw==" }, "node_modules/it-first": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/it-first/-/it-first-1.0.6.tgz", - "integrity": "sha512-wiI02c+G1BVuu0jz30Nsr1/et0cpSRulKUusN8HDZXxuX4MdUzfMp2P4JUk+a49Wr1kHitRLrnnh3+UzJ6neaQ==" + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/it-first/-/it-first-1.0.7.tgz", + "integrity": "sha512-nvJKZoBpZD/6Rtde6FXqwDqDZGF1sCADmr2Zoc0hZsIvnE449gRFnGctxDf09Bzc/FWnHXAdaHVIetY6lrE0/g==" }, "node_modules/it-glob": { "version": "0.0.14", "resolved": "https://registry.npmjs.org/it-glob/-/it-glob-0.0.14.tgz", "integrity": "sha512-TKKzs9CglbsihSpcwJPXN5DBUssu4akRzPlp8QJRCoLrKoaOpyY2V1qDlxx+UMivn0i114YyTd4AawWl7eqIdw==", + "dev": true, "dependencies": { "@types/minimatch": "^3.0.4", "minimatch": "^3.0.4" } }, - "node_modules/it-glob/node_modules/@types/minimatch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", - "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==" - }, "node_modules/it-handshake": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/it-handshake/-/it-handshake-2.0.0.tgz", @@ -10652,9 +10633,9 @@ "integrity": "sha512-EElupuWhHVStUgUY+OfTJIS2MZed96lDrAXzJUuqiiqLnIKoBRqtX1ZG2oR0bGDsSppmz83MtzCeKLZ9TVAUxQ==" }, "node_modules/it-merge": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/it-merge/-/it-merge-1.0.2.tgz", - "integrity": "sha512-bp+h4X3tQ83/a2MvaeP4nRi+52z2AO2y8tf2OzDdaSXKMC0n0gVtHrJUDaE+kiIkBiUtTt1hp7vJHMM0VtCfGA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/it-merge/-/it-merge-1.0.4.tgz", + "integrity": "sha512-DcL6GksTD2HQ7+5/q3JznXaLNfwjyG3/bObaF98da+oHfUiPmdo64oJlT9J8R8G5sJRU7thwaY5zxoAKCn7FJw==", "dependencies": { "it-pushable": "^1.4.0" } @@ -10668,9 +10649,9 @@ } }, "node_modules/it-pb-rpc": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/it-pb-rpc/-/it-pb-rpc-0.1.11.tgz", - "integrity": "sha512-1Yvae7LNHNM/WzxWT7OyHqwpA7DZoGos22JioMZ5H6i9iExQf71NHE0phHKEfkJdWLo7SRqPLLbqs2zaeKCwPA==", + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/it-pb-rpc/-/it-pb-rpc-0.1.13.tgz", + "integrity": "sha512-aZ4FNJsDgNepVVTmYXgXbQabIiOQyqYWUhdfovaHDcPSM5KjegwJihJEWMJjMyj+oLSKcZl0vmHgHxXWJ9/ufw==", "dependencies": { "is-buffer": "^2.0.5", "it-handshake": "^2.0.0", @@ -10874,9 +10855,9 @@ } }, "node_modules/keypair": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/keypair/-/keypair-1.0.3.tgz", - "integrity": "sha512-0wjZ2z/SfZZq01+3/8jYLd8aEShSa+aat1zyPGQY3IuKoEAp6DJGvu2zt6snELrQU9jbCkIlCyNOD7RdQbHhkQ==" + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/keypair/-/keypair-1.0.4.tgz", + "integrity": "sha512-zwhgOhhniaL7oxMgUMKKw5219PWWABMO+dgMnzJOQ2/5L3XJtTJGhW2PEXlxXj9zaccdReZJZ83+4NPhVfNVDg==" }, "node_modules/killable": { "version": "1.0.1", @@ -10913,23 +10894,24 @@ } }, "node_modules/libp2p": { - "version": "0.32.3", - "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-0.32.3.tgz", - "integrity": "sha512-FD1cweUmWgI510JIRfr80yCD/SugAawZPUQXPKPtOtaFeAynpEj7DEIE6iiVpc6Ed56nnyUivVikY7C8L50f9g==", + "version": "0.33.0", + "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-0.33.0.tgz", + "integrity": "sha512-ZNcxWJWNBmlLa9STcYbZyS3so/JEpI7kNLjIUIhIdntjJC9z+OMbGiqfPFcaMejMpjb/j+qpsqsiayjG0p9qIA==", "dependencies": { "@motrix/nat-api": "^0.3.1", "@vascosantos/moving-average": "^1.1.0", "abort-controller": "^3.0.0", + "abortable-iterator": "^3.0.0", "aggregate-error": "^3.1.0", "any-signal": "^2.1.1", "bignumber.js": "^9.0.1", "class-is": "^1.1.0", "debug": "^4.3.1", "err-code": "^3.0.0", - "es6-promisify": "^6.1.1", + "es6-promisify": "^7.0.0", "events": "^3.3.0", "hashlru": "^2.3.0", - "interface-datastore": "^5.1.1", + "interface-datastore": "^6.0.2", "it-all": "^1.0.4", "it-buffer": "^0.1.2", "it-drain": "^1.0.3", @@ -10963,7 +10945,7 @@ "set-delayed-interval": "^1.0.0", "streaming-iterables": "^6.0.0", "timeout-abort-controller": "^1.1.1", - "uint8arrays": "^2.1.3", + "uint8arrays": "^3.0.0", "varint": "^6.0.0", "wherearewe": "^1.0.0", "xsalsa20": "^1.1.0" @@ -10973,19 +10955,19 @@ } }, "node_modules/libp2p-crypto": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/libp2p-crypto/-/libp2p-crypto-0.19.7.tgz", - "integrity": "sha512-Qb5o/3WFKF2j6mYSt4UBPyi2kbKl3jYV0podBJoJCw70DlpM5Xc+oh3fFY9ToSunu8aSQQ5GY8nutjXgX/uGRA==", + "version": "0.20.0", + "resolved": "https://registry.npmjs.org/libp2p-crypto/-/libp2p-crypto-0.20.0.tgz", + "integrity": "sha512-WgIW9rYcWaO/5j2T6NW3R6Q46yvp2ZfFErqRMbi4/pOTL3T7+OROYpL/1iWVksWkXyurU/t2qFsIijWMxR5C4Q==", "dependencies": { "err-code": "^3.0.1", - "is-typedarray": "^1.0.0", "iso-random-stream": "^2.0.0", - "keypair": "^1.0.1", + "keypair": "^1.0.4", "multiformats": "^9.4.5", + "noble-ed25519": "^1.2.6", + "noble-secp256k1": "^1.2.10", "node-forge": "^0.10.0", "pem-jwk": "^2.0.0", "protobufjs": "^6.11.2", - "secp256k1": "^4.0.0", "uint8arrays": "^3.0.0", "ursa-optional": "^0.10.1" }, @@ -11002,9 +10984,9 @@ } }, "node_modules/libp2p-interfaces": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/libp2p-interfaces/-/libp2p-interfaces-1.1.0.tgz", - "integrity": "sha512-5nc/HZJgeks1qfkyYQdI84hcZLF4SJKJSUx33JpO0w7v7R+obz+HOwk0GSa4/ZvQHjX+/+OWC4NYVA0yZxZXag==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/libp2p-interfaces/-/libp2p-interfaces-1.3.1.tgz", + "integrity": "sha512-Bh991Nv2KT/jZ7DjPd/zqhk8cCtkHl6OWw8lyK7wBX7Aj3/ezGwjoDABJzKgt1lbvcgCeQIbzPiIbaKj4DUI4w==", "dependencies": { "abort-controller": "^3.0.0", "abortable-iterator": "^3.0.0", @@ -11013,10 +10995,11 @@ "it-length-prefixed": "^5.0.2", "it-pipe": "^1.1.0", "it-pushable": "^1.4.2", - "libp2p-crypto": "^0.19.5", + "libp2p-crypto": "^0.20.0", "multiaddr": "^10.0.0", "multiformats": "^9.1.2", - "peer-id": "^0.15.0", + "p-queue": "^6.6.2", + "peer-id": "^0.15.4", "protobufjs": "^6.10.2", "uint8arrays": "^3.0.0" } @@ -11040,20 +11023,58 @@ } }, "node_modules/libp2p-mplex": { - "version": "0.10.4", - "resolved": "https://registry.npmjs.org/libp2p-mplex/-/libp2p-mplex-0.10.4.tgz", - "integrity": "sha512-a8Oy68EXaSBBXGOGYMuwBcpnynkhqAFJ3LiyV24u9fE4wTxvuWTr0prSyKc+KC8QsLuX3A+CAdSgxqm09NbumQ==", + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/libp2p-mplex/-/libp2p-mplex-0.10.2.tgz", + "integrity": "sha512-fNdlPTts2MmGalPTYdQtzeGeuM73je9mP+2OvB6Gdn5vP9LeutUzUV4wvD9ISDVi8Gru5BzCsIBiS3WjxQqjdw==", "dependencies": { "abort-controller": "^3.0.0", "abortable-iterator": "^3.0.0", - "bl": "^5.0.0", + "bl": "^4.0.0", "debug": "^4.3.1", - "err-code": "^3.0.1", + "err-code": "^2.0.3", "it-pipe": "^1.1.0", "it-pushable": "^1.4.1", "varint": "^6.0.0" } }, + "node_modules/libp2p-mplex/node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/libp2p-mplex/node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/libp2p-mplex/node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" + }, "node_modules/libp2p-utils": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/libp2p-utils/-/libp2p-utils-0.4.1.tgz", @@ -11069,15 +11090,15 @@ } }, "node_modules/libp2p-websockets": { - "version": "0.16.1", - "resolved": "https://registry.npmjs.org/libp2p-websockets/-/libp2p-websockets-0.16.1.tgz", - "integrity": "sha512-HXaCdlAkG5RDZCehEnkoVzQjT1C6NIaCKLERkkZ1ArKG77K7Y7uy+8y81uNZhy4OLQ8jGUMyOvKnjw6EjKJPmw==", + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/libp2p-websockets/-/libp2p-websockets-0.16.2.tgz", + "integrity": "sha512-QGfo8jX1Ks16yi8C67CCyMW7k9cfCYiQ0lzKVJBud0fV3ymbMO2L8gzU6iXUUZTHILo8ka26zKhwQ4lmUMI+nA==", "dependencies": { "abortable-iterator": "^3.0.0", "class-is": "^1.1.0", "debug": "^4.3.1", "err-code": "^3.0.1", - "ipfs-utils": "^8.1.2", + "ipfs-utils": "^9.0.1", "it-ws": "^4.0.0", "libp2p-utils": "^0.4.0", "mafmt": "^10.0.0", @@ -11087,12 +11108,47 @@ "p-timeout": "^4.1.0" } }, - "node_modules/libp2p/node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "node_modules/libp2p-websockets/node_modules/any-signal": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/any-signal/-/any-signal-3.0.0.tgz", + "integrity": "sha512-l1H1GEkGGIXVGfCtvq8N68YI7gHajmfzRdKhmb8sGyAQpLCblirLa8eB09j4uKaiwe7vodAChocUf7AT3mYq5g==" + }, + "node_modules/libp2p-websockets/node_modules/ipfs-utils": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/ipfs-utils/-/ipfs-utils-9.0.4.tgz", + "integrity": "sha512-cfLKk004KLoEWJhBx4zg3mCro6mkiNhyGIlT7OZX9zxO1UqvLWpvW7cSZ1b1fbUIZ8qI7X2B7PeKlXC7jSfZ7g==", + "dependencies": { + "any-signal": "^3.0.0", + "buffer": "^6.0.1", + "electron-fetch": "^1.7.2", + "err-code": "^3.0.1", + "is-electron": "^2.2.0", + "iso-url": "^1.1.5", + "it-glob": "^1.0.1", + "it-to-stream": "^1.0.0", + "merge-options": "^3.0.4", + "nanoid": "^3.1.20", + "native-fetch": "^3.0.0", + "node-fetch": "https://registry.npmjs.org/@achingbrain/node-fetch/-/node-fetch-2.6.7.tgz", + "react-native-fetch-api": "^2.0.0", + "stream-to-it": "^0.2.2" + } + }, + "node_modules/libp2p-websockets/node_modules/it-glob": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/it-glob/-/it-glob-1.0.2.tgz", + "integrity": "sha512-Ch2Dzhw4URfB9L/0ZHyY+uqOnKvBNeS/SMcRiPmJfpHiM0TsUZn+GkpcZxAoF3dJVdPm/PuIk3A4wlV7SUo23Q==", + "dependencies": { + "@types/minimatch": "^3.0.4", + "minimatch": "^3.0.4" + } + }, + "node_modules/libp2p/node_modules/es6-promisify": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-7.0.0.tgz", + "integrity": "sha512-ginqzK3J90Rd4/Yz7qRrqUeIpe3TwSXTPPZtPne7tGBPeAaQiU8qt4fpKApnxHcq1AwtUdHVg5P77x/yrggG8Q==", "engines": { - "node": ">=0.8.x" + "node": ">=6" } }, "node_modules/libp2p/node_modules/it-length-prefixed": { @@ -11105,6 +11161,27 @@ "varint": "^6.0.0" } }, + "node_modules/libp2p/node_modules/libp2p-crypto": { + "version": "0.19.7", + "resolved": "https://registry.npmjs.org/libp2p-crypto/-/libp2p-crypto-0.19.7.tgz", + "integrity": "sha512-Qb5o/3WFKF2j6mYSt4UBPyi2kbKl3jYV0podBJoJCw70DlpM5Xc+oh3fFY9ToSunu8aSQQ5GY8nutjXgX/uGRA==", + "dependencies": { + "err-code": "^3.0.1", + "is-typedarray": "^1.0.0", + "iso-random-stream": "^2.0.0", + "keypair": "^1.0.1", + "multiformats": "^9.4.5", + "node-forge": "^0.10.0", + "pem-jwk": "^2.0.0", + "protobufjs": "^6.11.2", + "secp256k1": "^4.0.0", + "uint8arrays": "^3.0.0", + "ursa-optional": "^0.10.1" + }, + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/libp2p/node_modules/p-retry": { "version": "4.6.1", "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.1.tgz", @@ -11125,6 +11202,14 @@ "node": ">= 4" } }, + "node_modules/libp2p/node_modules/uint8arrays": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.0.0.tgz", + "integrity": "sha512-HRCx0q6O9Bfbp+HHSfQQKD7wU70+lydKVt4EghkdOvlK/NlrF90z+eXV34mUd48rNvVJXwkrMSPpCATkct8fJA==", + "dependencies": { + "multiformats": "^9.4.2" + } + }, "node_modules/load-json-file": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", @@ -11792,15 +11877,15 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "node_modules/multiaddr": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/multiaddr/-/multiaddr-10.0.0.tgz", - "integrity": "sha512-yP3LzFkM0GORZHNenS8Ok2spsaICRBhxLEohAfKKwwrgHIEWrDUhMRIkh/MONDBThNqaiGl7Ch1H7qblRDNHyg==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/multiaddr/-/multiaddr-10.0.1.tgz", + "integrity": "sha512-G5upNcGzEGuTHkzxezPrrD6CaIHR9uo+7MwqhNVcXTs33IInon4y7nMiGxl2CY5hG7chvYQUQhz5V52/Qe3cbg==", "dependencies": { - "dns-over-http-resolver": "^1.0.0", + "dns-over-http-resolver": "^1.2.3", "err-code": "^3.0.1", "is-ip": "^3.1.0", - "multiformats": "^9.0.2", - "uint8arrays": "^2.1.3", + "multiformats": "^9.4.5", + "uint8arrays": "^3.0.0", "varint": "^6.0.0" } }, @@ -11812,6 +11897,14 @@ "multiaddr": "^10.0.0" } }, + "node_modules/multiaddr/node_modules/uint8arrays": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.0.0.tgz", + "integrity": "sha512-HRCx0q6O9Bfbp+HHSfQQKD7wU70+lydKVt4EghkdOvlK/NlrF90z+eXV34mUd48rNvVJXwkrMSPpCATkct8fJA==", + "dependencies": { + "multiformats": "^9.4.2" + } + }, "node_modules/multibase": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.7.0.tgz", @@ -12164,6 +12257,18 @@ "tslib": "^1.10.0" } }, + "node_modules/noble-ed25519": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/noble-ed25519/-/noble-ed25519-1.2.6.tgz", + "integrity": "sha512-zfnWqg9FVMp8CnzUpAjbt1nDXpDjCvxYiCXdnW1mY8zQHw/6twUlkFm14VPdojVzc0kcd+i9zT79+26GcNbsuQ==", + "deprecated": "Switch to namespaced @noble/ed25519 for security and feature updates" + }, + "node_modules/noble-secp256k1": { + "version": "1.2.14", + "resolved": "https://registry.npmjs.org/noble-secp256k1/-/noble-secp256k1-1.2.14.tgz", + "integrity": "sha512-GSCXyoZBUaaPwVWdYncMEmzlSUjF9J/YeEHpklYJCyg8wPuJP3NzDx0BkiwArzINkdX2HJHvUJhL6vVWPOQQcg==", + "deprecated": "Switch to namespaced @noble/secp256k1 for security and feature updates" + }, "node_modules/node-addon-api": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", @@ -12283,9 +12388,9 @@ } }, "node_modules/node-gyp-build": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.2.3.tgz", - "integrity": "sha512-MN6ZpzmfNCRM+3t57PTJHgHyw/h4OWnZ6mR8P5j/uZtqQr46RRuDE/P+g3n0YR/AiYXeWixZZzaip77gdICfRg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.3.0.tgz", + "integrity": "sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==", "bin": { "node-gyp-build": "bin.js", "node-gyp-build-optional": "optional.js", @@ -13197,7 +13302,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true, "engines": { "node": ">=4" } @@ -13237,6 +13341,32 @@ "node": ">=6" } }, + "node_modules/p-queue": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz", + "integrity": "sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==", + "dependencies": { + "eventemitter3": "^4.0.4", + "p-timeout": "^3.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-queue/node_modules/p-timeout": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", + "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "dependencies": { + "p-finally": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/p-reflect": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/p-reflect/-/p-reflect-2.1.0.tgz", @@ -13511,12 +13641,12 @@ } }, "node_modules/peer-id": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/peer-id/-/peer-id-0.15.3.tgz", - "integrity": "sha512-pass5tk6Fbaz7PTD/3fJg2KWqaproHY0B0Ki8GQMEuMjkoLRcS2Vqt9yy6ob/+8uGBmWjRLtbMhaLV4HTyMDfw==", + "version": "0.15.4", + "resolved": "https://registry.npmjs.org/peer-id/-/peer-id-0.15.4.tgz", + "integrity": "sha512-MDoBIMZYwQIAHaZQUwsIcvoFgdbIl5GtZMwSkXpIYvc5v0TSDv+u8WsTKrKt2Vv28tHFFDJQdVzu3T4qTPzK+w==", "dependencies": { "class-is": "^1.1.0", - "libp2p-crypto": "^0.19.0", + "libp2p-crypto": "^0.20.0", "minimist": "^1.2.5", "multiformats": "^9.4.5", "protobufjs": "^6.10.2", @@ -14332,14 +14462,24 @@ } }, "node_modules/private-ip": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/private-ip/-/private-ip-2.2.1.tgz", - "integrity": "sha512-jN1WT/br/VNW9xEcwHr6DjtOKxQ5qOIqmh7o+co2TWgq56pZJw99iO3UT1tWdfgsQiyK9FqG4ji3ykwpjFqITA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/private-ip/-/private-ip-2.3.3.tgz", + "integrity": "sha512-5zyFfekIVUOTVbL92hc8LJOtE/gyGHeREHkJ2yTyByP8Q2YZVoBqLg3EfYLeF0oVvGqtaEX2t2Qovja0/gStXw==", "dependencies": { "ip-regex": "^4.3.0", + "ipaddr.js": "^2.0.1", + "is-ip": "^3.1.0", "netmask": "^2.0.2" } }, + "node_modules/private-ip/node_modules/ipaddr.js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", + "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", + "engines": { + "node": ">= 10" + } + }, "node_modules/process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", @@ -15643,12 +15783,12 @@ } }, "node_modules/secp256k1": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.2.tgz", - "integrity": "sha512-UDar4sKvWAksIlfX3xIaQReADn+WFnHvbVujpcbr+9Sf/69odMwy2MUsz5CKLQgX9nsIyrjuxL2imVyoNHa3fg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", "hasInstallScript": true, "dependencies": { - "elliptic": "^6.5.2", + "elliptic": "^6.5.4", "node-addon-api": "^2.0.0", "node-gyp-build": "^4.2.0" }, @@ -15671,15 +15811,6 @@ "node-forge": "^0.10.0" } }, - "node_modules/selfsigned/node_modules/node-forge": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", - "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", - "dev": true, - "engines": { - "node": ">= 6.0.0" - } - }, "node_modules/semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", @@ -16610,9 +16741,9 @@ } }, "node_modules/streaming-iterables": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/streaming-iterables/-/streaming-iterables-6.0.0.tgz", - "integrity": "sha512-GYbJh0ife8PvryWSyFifY1m1uj6zO12d9duuP6xltiOolUz44eKasp5gbFhRbFbLy50ik6hcKn4Pbxl9AkxB+Q==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/streaming-iterables/-/streaming-iterables-6.1.0.tgz", + "integrity": "sha512-orDf+LamVwU6pXx2Aj38aleA0EAx2G308XuJjU43RuNYFp7u/ytZhWnb+1x+uJyTlHEod/0Ixicc1biVaCD9ow==", "engines": { "node": ">=10" } @@ -17626,6 +17757,7 @@ "version": "2.1.10", "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-2.1.10.tgz", "integrity": "sha512-Q9/hhJa2836nQfEJSZTmr+pg9+cDJS9XEAp7N2Vg5MzL3bK/mkMVfjscRGYruP9jNda6MAdf4QD/y78gSzkp6A==", + "dev": true, "dependencies": { "multiformats": "^9.4.2" } @@ -19276,9 +19408,9 @@ "dev": true }, "node_modules/ws": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.4.tgz", - "integrity": "sha512-zP9z6GXm6zC27YtspwH99T3qTG7bBFv2VIkeHstMLrLlDJuzA7tQ5ls3OJ1hOGGCzTQPniNJoHXIAOS0Jljohg==", + "version": "7.5.6", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.6.tgz", + "integrity": "sha512-6GLgCqo2cy2A2rjCNFlxQS6ZljG/coZfZXclldI8FB/1G3CCI36Zd8xy2HrFVACi8tfk5XrgLQEk+P0Tnz9UcA==", "engines": { "node": ">=8.3.0" }, @@ -19325,9 +19457,9 @@ } }, "node_modules/xsalsa20": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/xsalsa20/-/xsalsa20-1.1.0.tgz", - "integrity": "sha512-zd3ytX2cm+tcSndRU+krm0eL4TMMpZE7evs5hLRAoOy6gviqLfe3qOlkjF3i5SeAkQUCeJk0lJZrEU56kHRfWw==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/xsalsa20/-/xsalsa20-1.2.0.tgz", + "integrity": "sha512-FIr/DEeoHfj7ftfylnoFt3rAIRoWXpx2AoDfrT2qD2wtp7Dp+COajvs/Icb7uHqRW9m60f5iXZwdsJJO3kvb7w==" }, "node_modules/xtend": { "version": "4.0.2", @@ -20375,24 +20507,24 @@ } }, "@chainsafe/libp2p-noise": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@chainsafe/libp2p-noise/-/libp2p-noise-4.0.0.tgz", - "integrity": "sha512-Q9gcC1IzN8/aQQXl/ntRbldTD/3c35j5lK5guIKEB+QU/Ogi0EyaihkL3YGx9QrSiFTyz0ABlSfxA0Wxfw5R1A==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@chainsafe/libp2p-noise/-/libp2p-noise-4.1.1.tgz", + "integrity": "sha512-/Fz86sZmnvRSf7FHxMPifzakxx9xK4KVYx6yi35KPZughop9ivJslUSCLhx/UqDHiuj3h9i04pVXET6nIjSJyQ==", "requires": { "@stablelib/chacha20poly1305": "^1.0.1", "@stablelib/hkdf": "^1.0.1", "@stablelib/sha256": "^1.0.1", "@stablelib/x25519": "^1.0.1", "debug": "^4.3.1", - "it-buffer": "^0.1.1", - "it-length-prefixed": "^5.0.2", + "it-buffer": "^0.1.3", + "it-length-prefixed": "^5.0.3", "it-pair": "^1.0.0", - "it-pb-rpc": "^0.1.9", + "it-pb-rpc": "^0.1.11", "it-pipe": "^1.1.0", - "libp2p-crypto": "^0.19.0", - "peer-id": "^0.15.0", - "protobufjs": "^6.10.1", - "uint8arrays": "^2.0.5" + "libp2p-crypto": "^0.19.7", + "peer-id": "^0.15.3", + "protobufjs": "^6.11.2", + "uint8arrays": "^3.0.0" }, "dependencies": { "it-length-prefixed": { @@ -20404,18 +20536,45 @@ "buffer": "^6.0.3", "varint": "^6.0.0" } + }, + "libp2p-crypto": { + "version": "0.19.7", + "resolved": "https://registry.npmjs.org/libp2p-crypto/-/libp2p-crypto-0.19.7.tgz", + "integrity": "sha512-Qb5o/3WFKF2j6mYSt4UBPyi2kbKl3jYV0podBJoJCw70DlpM5Xc+oh3fFY9ToSunu8aSQQ5GY8nutjXgX/uGRA==", + "requires": { + "err-code": "^3.0.1", + "is-typedarray": "^1.0.0", + "iso-random-stream": "^2.0.0", + "keypair": "^1.0.1", + "multiformats": "^9.4.5", + "node-forge": "^0.10.0", + "pem-jwk": "^2.0.0", + "protobufjs": "^6.11.2", + "secp256k1": "^4.0.0", + "uint8arrays": "^3.0.0", + "ursa-optional": "^0.10.1" + } + }, + "uint8arrays": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.0.0.tgz", + "integrity": "sha512-HRCx0q6O9Bfbp+HHSfQQKD7wU70+lydKVt4EghkdOvlK/NlrF90z+eXV34mUd48rNvVJXwkrMSPpCATkct8fJA==", + "requires": { + "multiformats": "^9.4.2" + } } } }, "@fluencelabs/aqua": { - "version": "0.5.3-260", - "resolved": "https://registry.npmjs.org/@fluencelabs/aqua/-/aqua-0.5.3-260.tgz", - "integrity": "sha512-VHDpUEpiuJ8FGTrY61uoLyUietwej0K1sC1VkysvNEtLU8o0jh4nBwKP3vyNkw30N4n9u3qjN8zcF1FRNxHYfg==", + "version": "0.6.0-263", + "resolved": "https://registry.npmjs.org/@fluencelabs/aqua/-/aqua-0.6.0-263.tgz", + "integrity": "sha512-E9ynPrkboKgyYEE6M+WDyroFJ0k0FTs1w9Gu/hOqFYnE63106VNZz/RrKtjK0o202MqhCpoOlSG0HsV3B5CzVA==", "dev": true, "requires": { "@fluencelabs/aqua-ipfs": "0.5.2", "@fluencelabs/aqua-lib": "0.3.2", - "@fluencelabs/fluence": "0.18.0", + "@fluencelabs/avm": "0.20.2", + "@fluencelabs/fluence": "0.19.0", "ipfs-http-client": "50.1.2" }, "dependencies": { @@ -20424,39 +20583,6 @@ "resolved": "https://registry.npmjs.org/@fluencelabs/aqua-lib/-/aqua-lib-0.3.2.tgz", "integrity": "sha512-8+NKFwRg9SFzpbac1SvvTWcOgHhMoYZwRyb93qJRcNFaN7xjRcA8v0i6CF7Mkjno1zH3xixC9J44+LKQd8uvzA==", "dev": true - }, - "@fluencelabs/avm": { - "version": "0.20.0", - "resolved": "https://registry.npmjs.org/@fluencelabs/avm/-/avm-0.20.0.tgz", - "integrity": "sha512-dDtXh9iJ4U/lZhdS36Dsef55fzeCYGSYVBey1mi+OHzyDtQoxxAkac9HeMlgWWQoZzy9i43JmX0t0iX7tBt+4A==", - "dev": true - }, - "@fluencelabs/fluence": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/@fluencelabs/fluence/-/fluence-0.18.0.tgz", - "integrity": "sha512-YmDgpyu3ffFYkWrzILyfJH8hvca11QpeY0TZiN0ptHTRGxOeFThw5Ikcf68kErPTT7OQUhsjSKHGHT0Yopb3mg==", - "dev": true, - "requires": { - "@chainsafe/libp2p-noise": "4.0.0", - "@fluencelabs/avm": "0.20.0", - "@fluencelabs/avm-runner-background": "0.1.2", - "@fluencelabs/avm-runner-interface": "^0.2.0", - "async": "3.2.0", - "bs58": "4.0.1", - "cids": "0.8.1", - "it-length-prefixed": "3.0.1", - "it-pipe": "1.1.0", - "libp2p": "0.32.3", - "libp2p-crypto": "0.19.7", - "libp2p-mplex": "0.10.4", - "libp2p-websockets": "0.16.1", - "loglevel": "1.7.0", - "multiaddr": "10.0.0", - "peer-id": "0.15.3", - "rxjs": "^7.3.0", - "ts-pattern": "^3.3.3", - "uuid": "8.3.0" - } } } }, @@ -20484,9 +20610,10 @@ "dev": true }, "@fluencelabs/avm": { - "version": "0.19.6", - "resolved": "https://registry.npmjs.org/@fluencelabs/avm/-/avm-0.19.6.tgz", - "integrity": "sha512-T6UQsIuGVltf13Wc3bFmuCYmQzu/00Y4lPS7atBauQ2R4+BqhRg1dc5reSZ+MbAW3Vy+NmJY1EEYOFRpLCGBwg==" + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@fluencelabs/avm/-/avm-0.20.2.tgz", + "integrity": "sha512-u438Gpw6KoEugXlMch0hOupRqGGeQIcjxDi3QAavbUb1csG2eKkk/iYD1ka9Qbc1hLnrCFXpD2tw/LwNEX3Aew==", + "dev": true }, "@fluencelabs/avm-runner-background": { "version": "0.1.2", @@ -20504,12 +20631,12 @@ "integrity": "sha512-Y41pL+UwZZVdormxju8cJQsNRp6tdER0VqJ9Kg9gH2wd1KJAaYTJkyVbn8NB7fEFRUbqfbb1BXHi9wWBYOgGYQ==" }, "@fluencelabs/fluence": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/@fluencelabs/fluence/-/fluence-0.17.1.tgz", - "integrity": "sha512-0GAxJC2RvpXm2kTSVcegiSnZWEKBu766NSNxFCBagNI6MIcOjOOgn5FdolEWaVAFM2EVkWWBvYLmgSjUpExQ8g==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/@fluencelabs/fluence/-/fluence-0.19.0.tgz", + "integrity": "sha512-LZ8Ze6w+rSEDm8mXEqaDwYOUcPEkdGum+5VH8t4UIHT/1sgBZ/AeINrMoS4q/7r8sZORu0WwbdxvyrNFV9bBPw==", "requires": { - "@chainsafe/libp2p-noise": "4.0.0", - "@fluencelabs/avm": "0.19.6", + "@chainsafe/libp2p-noise": "^4.1.1", + "@fluencelabs/avm": "0.20.0", "@fluencelabs/avm-runner-background": "0.1.2", "@fluencelabs/avm-runner-interface": "^0.2.0", "async": "3.2.0", @@ -20517,16 +20644,23 @@ "cids": "0.8.1", "it-length-prefixed": "3.0.1", "it-pipe": "1.1.0", - "libp2p": "0.32.3", - "libp2p-crypto": "0.19.7", - "libp2p-mplex": "0.10.4", - "libp2p-websockets": "0.16.1", + "libp2p": "=0.33.0", + "libp2p-crypto": "=0.20.0", + "libp2p-mplex": "=0.10.2", + "libp2p-websockets": "^0.16.2", "loglevel": "1.7.0", - "multiaddr": "10.0.0", - "peer-id": "0.15.3", + "multiaddr": "^10.0.1", + "peer-id": "=0.15.4", "rxjs": "^7.3.0", "ts-pattern": "^3.3.3", "uuid": "8.3.0" + }, + "dependencies": { + "@fluencelabs/avm": { + "version": "0.20.0", + "resolved": "https://registry.npmjs.org/@fluencelabs/avm/-/avm-0.20.0.tgz", + "integrity": "sha512-dDtXh9iJ4U/lZhdS36Dsef55fzeCYGSYVBey1mi+OHzyDtQoxxAkac9HeMlgWWQoZzy9i43JmX0t0iX7tBt+4A==" + } } }, "@fluencelabs/fluence-network-environment": { @@ -20875,10 +21009,9 @@ "integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==" }, "@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", - "dev": true + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==" }, "@types/node": { "version": "14.14.9", @@ -21185,9 +21318,9 @@ } }, "abortable-iterator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abortable-iterator/-/abortable-iterator-3.0.0.tgz", - "integrity": "sha512-7KqcPPnMhfot4GrEjK51zesS4Ye/lUCHBgYt3oRxIlU24HO3mVxBwEo9niNyfHqoWKqWLuZTc3zErNomdHA+ag==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/abortable-iterator/-/abortable-iterator-3.0.2.tgz", + "integrity": "sha512-qVP8HFfTpUQI2F+f1tpTriKDIZ4XrmwCrBCrQeRKO7DKWF3kgoT6NXiNDv2krrGcHxPwmI63eGQiec81sEaWIw==", "requires": { "get-iterator": "^1.0.2" } @@ -23966,17 +24099,17 @@ "dev": true }, "elliptic": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", - "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", + "bn.js": "^4.11.9", + "brorand": "^1.1.0", "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" } }, "elm": { @@ -25036,7 +25169,8 @@ "es6-promisify": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-6.1.1.tgz", - "integrity": "sha512-HBL8I3mIki5C1Cc9QjKUenHtnG0A5/xA8Q/AllRcfiwl2CZFXGK7ddBiCoRwAix4i2KxcQfjtIVcrVbB3vbmwg==" + "integrity": "sha512-HBL8I3mIki5C1Cc9QjKUenHtnG0A5/xA8Q/AllRcfiwl2CZFXGK7ddBiCoRwAix4i2KxcQfjtIVcrVbB3vbmwg==", + "dev": true }, "es6-symbol": { "version": "3.1.3", @@ -25136,14 +25270,12 @@ "eventemitter3": { "version": "4.0.7", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" }, "events": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", - "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", - "dev": true + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" }, "evp_bytestokey": { "version": "1.0.3", @@ -26733,17 +26865,11 @@ "dev": true }, "interface-datastore": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-5.1.3.tgz", - "integrity": "sha512-OVJ2wXg4wuR8kGI9r+09UponEQl/oEtiPaMKiS8QnAKSOf/NTOGnnpmtQPy00UOp3vvbFOvocF6G7HnV76Fmpw==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-6.1.0.tgz", + "integrity": "sha512-oNHdsrWBsI/kDwUtEgt+aaZtQFKtQYN0TGZzc3SGiIA6m+plZ6malhmsygtbmDpfpIsNNC7ce9Gyaj+Tki+gVw==", "requires": { - "err-code": "^3.0.1", - "interface-store": "^1.0.2", - "ipfs-utils": "^8.1.2", - "it-all": "^1.0.2", - "it-drain": "^1.0.1", - "it-filter": "^1.0.2", - "it-take": "^1.0.1", + "interface-store": "^2.0.1", "nanoid": "^3.0.2", "uint8arrays": "^3.0.0" }, @@ -26831,9 +26957,9 @@ } }, "interface-store": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-1.0.2.tgz", - "integrity": "sha512-rUBLYsgoWwxuUpnQoSUr+DR/3dH3reVeIu5aOHFZK31lAexmb++kR6ZECNRgrx6WvoaM3Akdo0A7TDrqgCzZaQ==" + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-2.0.2.tgz", + "integrity": "sha512-rScRlhDcz6k199EkHqT8NpM87ebN89ICOzILoBHgaG36/WX50N32BnU/kpZgCGPLhARRAWUUX5/cyaIjt7Kipg==" }, "internal-ip": { "version": "4.3.0", @@ -27301,6 +27427,7 @@ "version": "8.1.6", "resolved": "https://registry.npmjs.org/ipfs-utils/-/ipfs-utils-8.1.6.tgz", "integrity": "sha512-V/cwb6113DrDhrjDTWImA6+zmJbpdbUkxdxmEQO7it8ykV76bBmzU1ZXSM0QR0qxGy9VW8dkUlPAC2K10VgSmw==", + "dev": true, "requires": { "abort-controller": "^3.0.0", "any-signal": "^2.1.0", @@ -28042,13 +28169,6 @@ "requires": { "events": "^3.3.0", "readable-stream": "^3.4.0" - }, - "dependencies": { - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" - } } }, "iso-url": { @@ -28101,24 +28221,18 @@ "integrity": "sha512-rxFUyPCrhk7WrNxD8msU10iEPhQmROoqwuyWmQUYY1PtopwUGBYyra9EYG2nRZADYeuT83cohKWmKCWPzpeyiw==" }, "it-first": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/it-first/-/it-first-1.0.6.tgz", - "integrity": "sha512-wiI02c+G1BVuu0jz30Nsr1/et0cpSRulKUusN8HDZXxuX4MdUzfMp2P4JUk+a49Wr1kHitRLrnnh3+UzJ6neaQ==" + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/it-first/-/it-first-1.0.7.tgz", + "integrity": "sha512-nvJKZoBpZD/6Rtde6FXqwDqDZGF1sCADmr2Zoc0hZsIvnE449gRFnGctxDf09Bzc/FWnHXAdaHVIetY6lrE0/g==" }, "it-glob": { "version": "0.0.14", "resolved": "https://registry.npmjs.org/it-glob/-/it-glob-0.0.14.tgz", "integrity": "sha512-TKKzs9CglbsihSpcwJPXN5DBUssu4akRzPlp8QJRCoLrKoaOpyY2V1qDlxx+UMivn0i114YyTd4AawWl7eqIdw==", + "dev": true, "requires": { "@types/minimatch": "^3.0.4", "minimatch": "^3.0.4" - }, - "dependencies": { - "@types/minimatch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", - "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==" - } } }, "it-handshake": { @@ -28179,9 +28293,9 @@ "integrity": "sha512-EElupuWhHVStUgUY+OfTJIS2MZed96lDrAXzJUuqiiqLnIKoBRqtX1ZG2oR0bGDsSppmz83MtzCeKLZ9TVAUxQ==" }, "it-merge": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/it-merge/-/it-merge-1.0.2.tgz", - "integrity": "sha512-bp+h4X3tQ83/a2MvaeP4nRi+52z2AO2y8tf2OzDdaSXKMC0n0gVtHrJUDaE+kiIkBiUtTt1hp7vJHMM0VtCfGA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/it-merge/-/it-merge-1.0.4.tgz", + "integrity": "sha512-DcL6GksTD2HQ7+5/q3JznXaLNfwjyG3/bObaF98da+oHfUiPmdo64oJlT9J8R8G5sJRU7thwaY5zxoAKCn7FJw==", "requires": { "it-pushable": "^1.4.0" } @@ -28195,9 +28309,9 @@ } }, "it-pb-rpc": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/it-pb-rpc/-/it-pb-rpc-0.1.11.tgz", - "integrity": "sha512-1Yvae7LNHNM/WzxWT7OyHqwpA7DZoGos22JioMZ5H6i9iExQf71NHE0phHKEfkJdWLo7SRqPLLbqs2zaeKCwPA==", + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/it-pb-rpc/-/it-pb-rpc-0.1.13.tgz", + "integrity": "sha512-aZ4FNJsDgNepVVTmYXgXbQabIiOQyqYWUhdfovaHDcPSM5KjegwJihJEWMJjMyj+oLSKcZl0vmHgHxXWJ9/ufw==", "requires": { "is-buffer": "^2.0.5", "it-handshake": "^2.0.0", @@ -28382,9 +28496,9 @@ } }, "keypair": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/keypair/-/keypair-1.0.3.tgz", - "integrity": "sha512-0wjZ2z/SfZZq01+3/8jYLd8aEShSa+aat1zyPGQY3IuKoEAp6DJGvu2zt6snELrQU9jbCkIlCyNOD7RdQbHhkQ==" + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/keypair/-/keypair-1.0.4.tgz", + "integrity": "sha512-zwhgOhhniaL7oxMgUMKKw5219PWWABMO+dgMnzJOQ2/5L3XJtTJGhW2PEXlxXj9zaccdReZJZ83+4NPhVfNVDg==" }, "killable": { "version": "1.0.1", @@ -28415,23 +28529,24 @@ } }, "libp2p": { - "version": "0.32.3", - "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-0.32.3.tgz", - "integrity": "sha512-FD1cweUmWgI510JIRfr80yCD/SugAawZPUQXPKPtOtaFeAynpEj7DEIE6iiVpc6Ed56nnyUivVikY7C8L50f9g==", + "version": "0.33.0", + "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-0.33.0.tgz", + "integrity": "sha512-ZNcxWJWNBmlLa9STcYbZyS3so/JEpI7kNLjIUIhIdntjJC9z+OMbGiqfPFcaMejMpjb/j+qpsqsiayjG0p9qIA==", "requires": { "@motrix/nat-api": "^0.3.1", "@vascosantos/moving-average": "^1.1.0", "abort-controller": "^3.0.0", + "abortable-iterator": "^3.0.0", "aggregate-error": "^3.1.0", "any-signal": "^2.1.1", "bignumber.js": "^9.0.1", "class-is": "^1.1.0", "debug": "^4.3.1", "err-code": "^3.0.0", - "es6-promisify": "^6.1.1", + "es6-promisify": "^7.0.0", "events": "^3.3.0", "hashlru": "^2.3.0", - "interface-datastore": "^5.1.1", + "interface-datastore": "^6.0.2", "it-all": "^1.0.4", "it-buffer": "^0.1.2", "it-drain": "^1.0.3", @@ -28465,16 +28580,16 @@ "set-delayed-interval": "^1.0.0", "streaming-iterables": "^6.0.0", "timeout-abort-controller": "^1.1.1", - "uint8arrays": "^2.1.3", + "uint8arrays": "^3.0.0", "varint": "^6.0.0", "wherearewe": "^1.0.0", "xsalsa20": "^1.1.0" }, "dependencies": { - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" + "es6-promisify": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-7.0.0.tgz", + "integrity": "sha512-ginqzK3J90Rd4/Yz7qRrqUeIpe3TwSXTPPZtPne7tGBPeAaQiU8qt4fpKApnxHcq1AwtUdHVg5P77x/yrggG8Q==" }, "it-length-prefixed": { "version": "5.0.3", @@ -28486,6 +28601,24 @@ "varint": "^6.0.0" } }, + "libp2p-crypto": { + "version": "0.19.7", + "resolved": "https://registry.npmjs.org/libp2p-crypto/-/libp2p-crypto-0.19.7.tgz", + "integrity": "sha512-Qb5o/3WFKF2j6mYSt4UBPyi2kbKl3jYV0podBJoJCw70DlpM5Xc+oh3fFY9ToSunu8aSQQ5GY8nutjXgX/uGRA==", + "requires": { + "err-code": "^3.0.1", + "is-typedarray": "^1.0.0", + "iso-random-stream": "^2.0.0", + "keypair": "^1.0.1", + "multiformats": "^9.4.5", + "node-forge": "^0.10.0", + "pem-jwk": "^2.0.0", + "protobufjs": "^6.11.2", + "secp256k1": "^4.0.0", + "uint8arrays": "^3.0.0", + "ursa-optional": "^0.10.1" + } + }, "p-retry": { "version": "4.6.1", "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.1.tgz", @@ -28499,23 +28632,31 @@ "version": "0.13.1", "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==" + }, + "uint8arrays": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.0.0.tgz", + "integrity": "sha512-HRCx0q6O9Bfbp+HHSfQQKD7wU70+lydKVt4EghkdOvlK/NlrF90z+eXV34mUd48rNvVJXwkrMSPpCATkct8fJA==", + "requires": { + "multiformats": "^9.4.2" + } } } }, "libp2p-crypto": { - "version": "0.19.7", - "resolved": "https://registry.npmjs.org/libp2p-crypto/-/libp2p-crypto-0.19.7.tgz", - "integrity": "sha512-Qb5o/3WFKF2j6mYSt4UBPyi2kbKl3jYV0podBJoJCw70DlpM5Xc+oh3fFY9ToSunu8aSQQ5GY8nutjXgX/uGRA==", + "version": "0.20.0", + "resolved": "https://registry.npmjs.org/libp2p-crypto/-/libp2p-crypto-0.20.0.tgz", + "integrity": "sha512-WgIW9rYcWaO/5j2T6NW3R6Q46yvp2ZfFErqRMbi4/pOTL3T7+OROYpL/1iWVksWkXyurU/t2qFsIijWMxR5C4Q==", "requires": { "err-code": "^3.0.1", - "is-typedarray": "^1.0.0", "iso-random-stream": "^2.0.0", - "keypair": "^1.0.1", + "keypair": "^1.0.4", "multiformats": "^9.4.5", + "noble-ed25519": "^1.2.6", + "noble-secp256k1": "^1.2.10", "node-forge": "^0.10.0", "pem-jwk": "^2.0.0", "protobufjs": "^6.11.2", - "secp256k1": "^4.0.0", "uint8arrays": "^3.0.0", "ursa-optional": "^0.10.1" }, @@ -28531,9 +28672,9 @@ } }, "libp2p-interfaces": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/libp2p-interfaces/-/libp2p-interfaces-1.1.0.tgz", - "integrity": "sha512-5nc/HZJgeks1qfkyYQdI84hcZLF4SJKJSUx33JpO0w7v7R+obz+HOwk0GSa4/ZvQHjX+/+OWC4NYVA0yZxZXag==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/libp2p-interfaces/-/libp2p-interfaces-1.3.1.tgz", + "integrity": "sha512-Bh991Nv2KT/jZ7DjPd/zqhk8cCtkHl6OWw8lyK7wBX7Aj3/ezGwjoDABJzKgt1lbvcgCeQIbzPiIbaKj4DUI4w==", "requires": { "abort-controller": "^3.0.0", "abortable-iterator": "^3.0.0", @@ -28542,10 +28683,11 @@ "it-length-prefixed": "^5.0.2", "it-pipe": "^1.1.0", "it-pushable": "^1.4.2", - "libp2p-crypto": "^0.19.5", + "libp2p-crypto": "^0.20.0", "multiaddr": "^10.0.0", "multiformats": "^9.1.2", - "peer-id": "^0.15.0", + "p-queue": "^6.6.2", + "peer-id": "^0.15.4", "protobufjs": "^6.10.2", "uint8arrays": "^3.0.0" }, @@ -28571,18 +28713,44 @@ } }, "libp2p-mplex": { - "version": "0.10.4", - "resolved": "https://registry.npmjs.org/libp2p-mplex/-/libp2p-mplex-0.10.4.tgz", - "integrity": "sha512-a8Oy68EXaSBBXGOGYMuwBcpnynkhqAFJ3LiyV24u9fE4wTxvuWTr0prSyKc+KC8QsLuX3A+CAdSgxqm09NbumQ==", + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/libp2p-mplex/-/libp2p-mplex-0.10.2.tgz", + "integrity": "sha512-fNdlPTts2MmGalPTYdQtzeGeuM73je9mP+2OvB6Gdn5vP9LeutUzUV4wvD9ISDVi8Gru5BzCsIBiS3WjxQqjdw==", "requires": { "abort-controller": "^3.0.0", "abortable-iterator": "^3.0.0", - "bl": "^5.0.0", + "bl": "^4.0.0", "debug": "^4.3.1", - "err-code": "^3.0.1", + "err-code": "^2.0.3", "it-pipe": "^1.1.0", "it-pushable": "^1.4.1", "varint": "^6.0.0" + }, + "dependencies": { + "bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" + } } }, "libp2p-utils": { @@ -28600,15 +28768,15 @@ } }, "libp2p-websockets": { - "version": "0.16.1", - "resolved": "https://registry.npmjs.org/libp2p-websockets/-/libp2p-websockets-0.16.1.tgz", - "integrity": "sha512-HXaCdlAkG5RDZCehEnkoVzQjT1C6NIaCKLERkkZ1ArKG77K7Y7uy+8y81uNZhy4OLQ8jGUMyOvKnjw6EjKJPmw==", + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/libp2p-websockets/-/libp2p-websockets-0.16.2.tgz", + "integrity": "sha512-QGfo8jX1Ks16yi8C67CCyMW7k9cfCYiQ0lzKVJBud0fV3ymbMO2L8gzU6iXUUZTHILo8ka26zKhwQ4lmUMI+nA==", "requires": { "abortable-iterator": "^3.0.0", "class-is": "^1.1.0", "debug": "^4.3.1", "err-code": "^3.0.1", - "ipfs-utils": "^8.1.2", + "ipfs-utils": "^9.0.1", "it-ws": "^4.0.0", "libp2p-utils": "^0.4.0", "mafmt": "^10.0.0", @@ -28616,6 +28784,43 @@ "multiaddr-to-uri": "^8.0.0", "p-defer": "^3.0.0", "p-timeout": "^4.1.0" + }, + "dependencies": { + "any-signal": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/any-signal/-/any-signal-3.0.0.tgz", + "integrity": "sha512-l1H1GEkGGIXVGfCtvq8N68YI7gHajmfzRdKhmb8sGyAQpLCblirLa8eB09j4uKaiwe7vodAChocUf7AT3mYq5g==" + }, + "ipfs-utils": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/ipfs-utils/-/ipfs-utils-9.0.4.tgz", + "integrity": "sha512-cfLKk004KLoEWJhBx4zg3mCro6mkiNhyGIlT7OZX9zxO1UqvLWpvW7cSZ1b1fbUIZ8qI7X2B7PeKlXC7jSfZ7g==", + "requires": { + "any-signal": "^3.0.0", + "buffer": "^6.0.1", + "electron-fetch": "^1.7.2", + "err-code": "^3.0.1", + "is-electron": "^2.2.0", + "iso-url": "^1.1.5", + "it-glob": "^1.0.1", + "it-to-stream": "^1.0.0", + "merge-options": "^3.0.4", + "nanoid": "^3.1.20", + "native-fetch": "^3.0.0", + "node-fetch": "https://registry.npmjs.org/@achingbrain/node-fetch/-/node-fetch-2.6.7.tgz", + "react-native-fetch-api": "^2.0.0", + "stream-to-it": "^0.2.2" + } + }, + "it-glob": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/it-glob/-/it-glob-1.0.2.tgz", + "integrity": "sha512-Ch2Dzhw4URfB9L/0ZHyY+uqOnKvBNeS/SMcRiPmJfpHiM0TsUZn+GkpcZxAoF3dJVdPm/PuIk3A4wlV7SUo23Q==", + "requires": { + "@types/minimatch": "^3.0.4", + "minimatch": "^3.0.4" + } + } } }, "load-json-file": { @@ -29170,16 +29375,26 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "multiaddr": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/multiaddr/-/multiaddr-10.0.0.tgz", - "integrity": "sha512-yP3LzFkM0GORZHNenS8Ok2spsaICRBhxLEohAfKKwwrgHIEWrDUhMRIkh/MONDBThNqaiGl7Ch1H7qblRDNHyg==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/multiaddr/-/multiaddr-10.0.1.tgz", + "integrity": "sha512-G5upNcGzEGuTHkzxezPrrD6CaIHR9uo+7MwqhNVcXTs33IInon4y7nMiGxl2CY5hG7chvYQUQhz5V52/Qe3cbg==", "requires": { - "dns-over-http-resolver": "^1.0.0", + "dns-over-http-resolver": "^1.2.3", "err-code": "^3.0.1", "is-ip": "^3.1.0", - "multiformats": "^9.0.2", - "uint8arrays": "^2.1.3", + "multiformats": "^9.4.5", + "uint8arrays": "^3.0.0", "varint": "^6.0.0" + }, + "dependencies": { + "uint8arrays": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.0.0.tgz", + "integrity": "sha512-HRCx0q6O9Bfbp+HHSfQQKD7wU70+lydKVt4EghkdOvlK/NlrF90z+eXV34mUd48rNvVJXwkrMSPpCATkct8fJA==", + "requires": { + "multiformats": "^9.4.2" + } + } } }, "multiaddr-to-uri": { @@ -29466,6 +29681,16 @@ "tslib": "^1.10.0" } }, + "noble-ed25519": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/noble-ed25519/-/noble-ed25519-1.2.6.tgz", + "integrity": "sha512-zfnWqg9FVMp8CnzUpAjbt1nDXpDjCvxYiCXdnW1mY8zQHw/6twUlkFm14VPdojVzc0kcd+i9zT79+26GcNbsuQ==" + }, + "noble-secp256k1": { + "version": "1.2.14", + "resolved": "https://registry.npmjs.org/noble-secp256k1/-/noble-secp256k1-1.2.14.tgz", + "integrity": "sha512-GSCXyoZBUaaPwVWdYncMEmzlSUjF9J/YeEHpklYJCyg8wPuJP3NzDx0BkiwArzINkdX2HJHvUJhL6vVWPOQQcg==" + }, "node-addon-api": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", @@ -29586,9 +29811,9 @@ } }, "node-gyp-build": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.2.3.tgz", - "integrity": "sha512-MN6ZpzmfNCRM+3t57PTJHgHyw/h4OWnZ6mR8P5j/uZtqQr46RRuDE/P+g3n0YR/AiYXeWixZZzaip77gdICfRg==" + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.3.0.tgz", + "integrity": "sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==" }, "node-libs-browser": { "version": "2.2.1", @@ -30280,8 +30505,7 @@ "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" }, "p-limit": { "version": "2.3.0", @@ -30306,6 +30530,25 @@ "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", "dev": true }, + "p-queue": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz", + "integrity": "sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==", + "requires": { + "eventemitter3": "^4.0.4", + "p-timeout": "^3.2.0" + }, + "dependencies": { + "p-timeout": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", + "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "requires": { + "p-finally": "^1.0.0" + } + } + } + }, "p-reflect": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/p-reflect/-/p-reflect-2.1.0.tgz", @@ -30531,12 +30774,12 @@ } }, "peer-id": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/peer-id/-/peer-id-0.15.3.tgz", - "integrity": "sha512-pass5tk6Fbaz7PTD/3fJg2KWqaproHY0B0Ki8GQMEuMjkoLRcS2Vqt9yy6ob/+8uGBmWjRLtbMhaLV4HTyMDfw==", + "version": "0.15.4", + "resolved": "https://registry.npmjs.org/peer-id/-/peer-id-0.15.4.tgz", + "integrity": "sha512-MDoBIMZYwQIAHaZQUwsIcvoFgdbIl5GtZMwSkXpIYvc5v0TSDv+u8WsTKrKt2Vv28tHFFDJQdVzu3T4qTPzK+w==", "requires": { "class-is": "^1.1.0", - "libp2p-crypto": "^0.19.0", + "libp2p-crypto": "^0.20.0", "minimist": "^1.2.5", "multiformats": "^9.4.5", "protobufjs": "^6.10.2", @@ -31238,12 +31481,21 @@ } }, "private-ip": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/private-ip/-/private-ip-2.2.1.tgz", - "integrity": "sha512-jN1WT/br/VNW9xEcwHr6DjtOKxQ5qOIqmh7o+co2TWgq56pZJw99iO3UT1tWdfgsQiyK9FqG4ji3ykwpjFqITA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/private-ip/-/private-ip-2.3.3.tgz", + "integrity": "sha512-5zyFfekIVUOTVbL92hc8LJOtE/gyGHeREHkJ2yTyByP8Q2YZVoBqLg3EfYLeF0oVvGqtaEX2t2Qovja0/gStXw==", "requires": { "ip-regex": "^4.3.0", + "ipaddr.js": "^2.0.1", + "is-ip": "^3.1.0", "netmask": "^2.0.2" + }, + "dependencies": { + "ipaddr.js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", + "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==" + } } }, "process": { @@ -32294,11 +32546,11 @@ } }, "secp256k1": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.2.tgz", - "integrity": "sha512-UDar4sKvWAksIlfX3xIaQReADn+WFnHvbVujpcbr+9Sf/69odMwy2MUsz5CKLQgX9nsIyrjuxL2imVyoNHa3fg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", "requires": { - "elliptic": "^6.5.2", + "elliptic": "^6.5.4", "node-addon-api": "^2.0.0", "node-gyp-build": "^4.2.0" } @@ -32316,14 +32568,6 @@ "dev": true, "requires": { "node-forge": "^0.10.0" - }, - "dependencies": { - "node-forge": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", - "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", - "dev": true - } } }, "semver": { @@ -33155,9 +33399,9 @@ } }, "streaming-iterables": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/streaming-iterables/-/streaming-iterables-6.0.0.tgz", - "integrity": "sha512-GYbJh0ife8PvryWSyFifY1m1uj6zO12d9duuP6xltiOolUz44eKasp5gbFhRbFbLy50ik6hcKn4Pbxl9AkxB+Q==" + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/streaming-iterables/-/streaming-iterables-6.1.0.tgz", + "integrity": "sha512-orDf+LamVwU6pXx2Aj38aleA0EAx2G308XuJjU43RuNYFp7u/ytZhWnb+1x+uJyTlHEod/0Ixicc1biVaCD9ow==" }, "strict-uri-encode": { "version": "1.1.0", @@ -34005,6 +34249,7 @@ "version": "2.1.10", "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-2.1.10.tgz", "integrity": "sha512-Q9/hhJa2836nQfEJSZTmr+pg9+cDJS9XEAp7N2Vg5MzL3bK/mkMVfjscRGYruP9jNda6MAdf4QD/y78gSzkp6A==", + "dev": true, "requires": { "multiformats": "^9.4.2" } @@ -35342,9 +35587,9 @@ "dev": true }, "ws": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.4.tgz", - "integrity": "sha512-zP9z6GXm6zC27YtspwH99T3qTG7bBFv2VIkeHstMLrLlDJuzA7tQ5ls3OJ1hOGGCzTQPniNJoHXIAOS0Jljohg==", + "version": "7.5.6", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.6.tgz", + "integrity": "sha512-6GLgCqo2cy2A2rjCNFlxQS6ZljG/coZfZXclldI8FB/1G3CCI36Zd8xy2HrFVACi8tfk5XrgLQEk+P0Tnz9UcA==", "requires": {} }, "xml2js": { @@ -35370,9 +35615,9 @@ "dev": true }, "xsalsa20": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/xsalsa20/-/xsalsa20-1.1.0.tgz", - "integrity": "sha512-zd3ytX2cm+tcSndRU+krm0eL4TMMpZE7evs5hLRAoOy6gviqLfe3qOlkjF3i5SeAkQUCeJk0lJZrEU56kHRfWw==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/xsalsa20/-/xsalsa20-1.2.0.tgz", + "integrity": "sha512-FIr/DEeoHfj7ftfylnoFt3rAIRoWXpx2AoDfrT2qD2wtp7Dp+COajvs/Icb7uHqRW9m60f5iXZwdsJJO3kvb7w==" }, "xtend": { "version": "4.0.2", diff --git a/package.json b/package.json index 526be5b..a091525 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ }, "homepage": "https://github.com/fluencelabs/fluence-admin#readme", "dependencies": { - "@fluencelabs/fluence": "0.17.1", + "@fluencelabs/fluence": "0.19.0", "@fluencelabs/fluence-network-environment": "1.0.10", "css-spinners": "^1.0.1", "tachyons": "^4.12.0", @@ -41,7 +41,7 @@ "devDependencies": { "@babel/core": "^7.11.6", "@babel/preset-env": "^7.11.5", - "@fluencelabs/aqua": "^0.5.3-260", + "@fluencelabs/aqua": "0.6.0-263", "@fluencelabs/aqua-lib": "0.3.3", "@types/yup": "^0.29.11", "babel-loader": "^8.1.0", diff --git a/src/_aqua/app.d.ts b/src/_aqua/app.d.ts index 794ebd1..e4240b3 100644 --- a/src/_aqua/app.d.ts +++ b/src/_aqua/app.d.ts @@ -3,7 +3,7 @@ * This file is auto-generated. Do not edit manually: changes may be erased. * Generated by Aqua compiler: https://github.com/fluencelabs/aqua/. * If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues - * Aqua version: 0.4.0-235 + * Aqua version: 0.6.0-263 * */ import { Fluence, FluencePeer } from '@fluencelabs/fluence'; @@ -20,20 +20,71 @@ import { // Functions -export function collectServiceInterfaces(peer_: string, services: { blueprint_id: string; id: string; owner_id: string; }[], collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, config?: {ttl?: number}): Promise; -export function collectServiceInterfaces(peer: FluencePeer, peer_: string, services: { blueprint_id: string; id: string; owner_id: string; }[], collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, config?: {ttl?: number}): Promise; +export function askAllAndSend( + peer_: string, + collectPeerInfo: (arg0: string, arg1: { air_version: string; external_addresses: string[]; node_version: string; }, arg2: { blueprint_id: string; id: string; owner_id: string; }[], arg3: { dependencies: string[]; id: string; name: string; }[], arg4: { config: { name: string; }; hash: string; name: string; }[], callParams: CallParams<'arg0' | 'arg1' | 'arg2' | 'arg3' | 'arg4'>) => void | Promise, + collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, + config?: {ttl?: number} +): Promise; + +export function askAllAndSend( + peer: FluencePeer, + peer_: string, + collectPeerInfo: (arg0: string, arg1: { air_version: string; external_addresses: string[]; node_version: string; }, arg2: { blueprint_id: string; id: string; owner_id: string; }[], arg3: { dependencies: string[]; id: string; name: string; }[], arg4: { config: { name: string; }; hash: string; name: string; }[], callParams: CallParams<'arg0' | 'arg1' | 'arg2' | 'arg3' | 'arg4'>) => void | Promise, + collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, + config?: {ttl?: number} +): Promise; -export function askAllAndSend(peer_: string, collectPeerInfo: (arg0: string, arg1: { external_addresses: string[]; }, arg2: { blueprint_id: string; id: string; owner_id: string; }[], arg3: { dependencies: string[]; id: string; name: string; }[], arg4: { config: { name: string; }; hash: string; name: string; }[], callParams: CallParams<'arg0' | 'arg1' | 'arg2' | 'arg3' | 'arg4'>) => void | Promise, collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, config?: {ttl?: number}): Promise; -export function askAllAndSend(peer: FluencePeer, peer_: string, collectPeerInfo: (arg0: string, arg1: { external_addresses: string[]; }, arg2: { blueprint_id: string; id: string; owner_id: string; }[], arg3: { dependencies: string[]; id: string; name: string; }[], arg4: { config: { name: string; }; hash: string; name: string; }[], callParams: CallParams<'arg0' | 'arg1' | 'arg2' | 'arg3' | 'arg4'>) => void | Promise, collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, config?: {ttl?: number}): Promise; +export function getAll( + knownPeers: string[], + collectPeerInfo: (arg0: string, arg1: { air_version: string; external_addresses: string[]; node_version: string; }, arg2: { blueprint_id: string; id: string; owner_id: string; }[], arg3: { dependencies: string[]; id: string; name: string; }[], arg4: { config: { name: string; }; hash: string; name: string; }[], callParams: CallParams<'arg0' | 'arg1' | 'arg2' | 'arg3' | 'arg4'>) => void | Promise, + collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, + config?: {ttl?: number} +): Promise; + +export function getAll( + peer: FluencePeer, + knownPeers: string[], + collectPeerInfo: (arg0: string, arg1: { air_version: string; external_addresses: string[]; node_version: string; }, arg2: { blueprint_id: string; id: string; owner_id: string; }[], arg3: { dependencies: string[]; id: string; name: string; }[], arg4: { config: { name: string; }; hash: string; name: string; }[], callParams: CallParams<'arg0' | 'arg1' | 'arg2' | 'arg3' | 'arg4'>) => void | Promise, + collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, + config?: {ttl?: number} +): Promise; -export function findAndAskNeighboursSchema(relayPeerId: string, clientId: string, collectPeerInfo: (arg0: string, arg1: { external_addresses: string[]; }, arg2: { blueprint_id: string; id: string; owner_id: string; }[], arg3: { dependencies: string[]; id: string; name: string; }[], arg4: { config: { name: string; }; hash: string; name: string; }[], callParams: CallParams<'arg0' | 'arg1' | 'arg2' | 'arg3' | 'arg4'>) => void | Promise, collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, config?: {ttl?: number}): Promise; -export function findAndAskNeighboursSchema(peer: FluencePeer, relayPeerId: string, clientId: string, collectPeerInfo: (arg0: string, arg1: { external_addresses: string[]; }, arg2: { blueprint_id: string; id: string; owner_id: string; }[], arg3: { dependencies: string[]; id: string; name: string; }[], arg4: { config: { name: string; }; hash: string; name: string; }[], callParams: CallParams<'arg0' | 'arg1' | 'arg2' | 'arg3' | 'arg4'>) => void | Promise, collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, config?: {ttl?: number}): Promise; +export function findAndAskNeighboursSchema( + relayPeerId: string, + clientId: string, + collectPeerInfo: (arg0: string, arg1: { air_version: string; external_addresses: string[]; node_version: string; }, arg2: { blueprint_id: string; id: string; owner_id: string; }[], arg3: { dependencies: string[]; id: string; name: string; }[], arg4: { config: { name: string; }; hash: string; name: string; }[], callParams: CallParams<'arg0' | 'arg1' | 'arg2' | 'arg3' | 'arg4'>) => void | Promise, + collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, + config?: {ttl?: number} +): Promise; + +export function findAndAskNeighboursSchema( + peer: FluencePeer, + relayPeerId: string, + clientId: string, + collectPeerInfo: (arg0: string, arg1: { air_version: string; external_addresses: string[]; node_version: string; }, arg2: { blueprint_id: string; id: string; owner_id: string; }[], arg3: { dependencies: string[]; id: string; name: string; }[], arg4: { config: { name: string; }; hash: string; name: string; }[], callParams: CallParams<'arg0' | 'arg1' | 'arg2' | 'arg3' | 'arg4'>) => void | Promise, + collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, + config?: {ttl?: number} +): Promise; -export function getAll(knownPeers: string[], collectPeerInfo: (arg0: string, arg1: { external_addresses: string[]; }, arg2: { blueprint_id: string; id: string; owner_id: string; }[], arg3: { dependencies: string[]; id: string; name: string; }[], arg4: { config: { name: string; }; hash: string; name: string; }[], callParams: CallParams<'arg0' | 'arg1' | 'arg2' | 'arg3' | 'arg4'>) => void | Promise, collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, config?: {ttl?: number}): Promise; -export function getAll(peer: FluencePeer, knownPeers: string[], collectPeerInfo: (arg0: string, arg1: { external_addresses: string[]; }, arg2: { blueprint_id: string; id: string; owner_id: string; }[], arg3: { dependencies: string[]; id: string; name: string; }[], arg4: { config: { name: string; }; hash: string; name: string; }[], callParams: CallParams<'arg0' | 'arg1' | 'arg2' | 'arg3' | 'arg4'>) => void | Promise, collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, config?: {ttl?: number}): Promise; +export function collectServiceInterfaces( + peer_: string, + services: { blueprint_id: string; id: string; owner_id: string; }[], + collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, + config?: {ttl?: number} +): Promise; + +export function collectServiceInterfaces( + peer: FluencePeer, + peer_: string, + services: { blueprint_id: string; id: string; owner_id: string; }[], + collectServiceInterface: (arg0: string, arg1: string, arg2: { function_signatures: { arguments: string[][]; name: string; output_types: string[]; }[]; record_types: { fields: string[][]; id: number; name: string; }[]; }, callParams: CallParams<'arg0' | 'arg1' | 'arg2'>) => void | Promise, + config?: {ttl?: number} +): Promise; + diff --git a/src/_aqua/app.js b/src/_aqua/app.js index 9f2a5c4..a5bcaa4 100644 --- a/src/_aqua/app.js +++ b/src/_aqua/app.js @@ -3,7 +3,7 @@ * This file is auto-generated. Do not edit manually: changes may be erased. * Generated by Aqua compiler: https://github.com/fluencelabs/aqua/. * If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues - * Aqua version: 0.4.0-235 + * Aqua version: 0.6.0-263 * */ import { Fluence, FluencePeer } from '@fluencelabs/fluence'; @@ -18,114 +18,10 @@ import { // Functions -export function collectServiceInterfaces(...args) { - - let script = ` - (xor - (seq - (seq - (seq - (call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-) - (call %init_peer_id% ("getDataSrv" "peer") [] peer) - ) - (call %init_peer_id% ("getDataSrv" "services") [] services) - ) - (fold services srv - (par - (seq - (call -relay- ("op" "noop") []) - (xor - (seq - (seq - (call peer ("srv" "get_interface") [srv.$.id!] iface) - (call -relay- ("op" "noop") []) - ) - (xor - (call %init_peer_id% ("callbackSrv" "collectServiceInterface") [peer srv.$.id! iface]) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1]) - ) - ) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2]) - ) - ) - (next srv) - ) - ) - ) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3]) - ) - ` - return callFunction( - args, - { - "functionName" : "collectServiceInterfaces", - "returnType" : { - "tag" : "void" - }, - "argDefs" : [ - { - "name" : "peer", - "argType" : { - "tag" : "primitive" - } - }, - { - "name" : "services", - "argType" : { - "tag" : "primitive" - } - }, - { - "name" : "collectServiceInterface", - "argType" : { - "tag" : "callback", - "callback" : { - "argDefs" : [ - { - "name" : "arg0", - "argType" : { - "tag" : "primitive" - } - }, - { - "name" : "arg1", - "argType" : { - "tag" : "primitive" - } - }, - { - "name" : "arg2", - "argType" : { - "tag" : "primitive" - } - } - ], - "returnType" : { - "tag" : "void" - } - } - } - } - ], - "names" : { - "relay" : "-relay-", - "getDataSrv" : "getDataSrv", - "callbackSrv" : "callbackSrv", - "responseSrv" : "callbackSrv", - "responseFnName" : "response", - "errorHandlingSrv" : "errorHandlingSrv", - "errorFnName" : "error" - } -}, - script - ) -} - - export function askAllAndSend(...args) { let script = ` - (xor + (xor (seq (seq (seq @@ -152,38 +48,44 @@ export function askAllAndSend(...args) { (call -relay- ("op" "noop") []) ) (xor - (call %init_peer_id% ("callbackSrv" "collectPeerInfo") [peer ident services blueprints modules]) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1]) - ) - ) - (call -relay- ("op" "noop") []) - ) - (fold services srv - (par - (seq - (call -relay- ("op" "noop") []) - (xor - (seq - (seq - (call peer ("srv" "get_interface") [srv.$.id!] iface) - (call -relay- ("op" "noop") []) - ) - (xor - (call %init_peer_id% ("callbackSrv" "collectServiceInterface") [peer srv.$.id! iface]) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2]) - ) - ) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3]) + (seq + (call %init_peer_id% ("callbackSrv" "collectPeerInfo") [peer ident services blueprints modules]) + (call -relay- ("op" "noop") []) + ) + (seq + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1]) + (call -relay- ("op" "noop") []) ) ) - (seq - (call -relay- ("op" "noop") []) - (next srv) + ) + (par + (fold services srv + (par + (xor + (seq + (seq + (call peer ("srv" "get_interface") [srv.$.id!] iface) + (call -relay- ("op" "noop") []) + ) + (xor + (call %init_peer_id% ("callbackSrv" "collectServiceInterface") [peer srv.$.id! iface]) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2]) + ) + ) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3]) + ) + (next srv) + ) ) + (null) ) ) + (call -relay- ("op" "noop") []) + ) + (seq + (call -relay- ("op" "noop") []) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 4]) ) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 4]) ) ) (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 5]) @@ -293,10 +195,195 @@ export function askAllAndSend(...args) { } +export function getAll(...args) { + + let script = ` + (xor + (seq + (seq + (seq + (call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-) + (call %init_peer_id% ("getDataSrv" "knownPeers") [] knownPeers) + ) + (call -relay- ("op" "noop") []) + ) + (xor + (par + (fold knownPeers peer + (par + (xor + (seq + (seq + (seq + (seq + (seq + (seq + (call peer ("peer" "identify") [] ident) + (call peer ("dist" "list_blueprints") [] blueprints) + ) + (call peer ("dist" "list_modules") [] modules) + ) + (call peer ("srv" "list") [] services) + ) + (call -relay- ("op" "noop") []) + ) + (xor + (seq + (call %init_peer_id% ("callbackSrv" "collectPeerInfo") [peer ident services blueprints modules]) + (call -relay- ("op" "noop") []) + ) + (seq + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1]) + (call -relay- ("op" "noop") []) + ) + ) + ) + (par + (fold services srv + (par + (xor + (seq + (seq + (call peer ("srv" "get_interface") [srv.$.id!] iface) + (call -relay- ("op" "noop") []) + ) + (xor + (call %init_peer_id% ("callbackSrv" "collectServiceInterface") [peer srv.$.id! iface]) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2]) + ) + ) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3]) + ) + (next srv) + ) + ) + (null) + ) + ) + (seq + (call -relay- ("op" "noop") []) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 4]) + ) + ) + (next peer) + ) + ) + (null) + ) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 5]) + ) + ) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 6]) + ) + ` + return callFunction( + args, + { + "functionName" : "getAll", + "returnType" : { + "tag" : "void" + }, + "argDefs" : [ + { + "name" : "knownPeers", + "argType" : { + "tag" : "primitive" + } + }, + { + "name" : "collectPeerInfo", + "argType" : { + "tag" : "callback", + "callback" : { + "argDefs" : [ + { + "name" : "arg0", + "argType" : { + "tag" : "primitive" + } + }, + { + "name" : "arg1", + "argType" : { + "tag" : "primitive" + } + }, + { + "name" : "arg2", + "argType" : { + "tag" : "primitive" + } + }, + { + "name" : "arg3", + "argType" : { + "tag" : "primitive" + } + }, + { + "name" : "arg4", + "argType" : { + "tag" : "primitive" + } + } + ], + "returnType" : { + "tag" : "void" + } + } + } + }, + { + "name" : "collectServiceInterface", + "argType" : { + "tag" : "callback", + "callback" : { + "argDefs" : [ + { + "name" : "arg0", + "argType" : { + "tag" : "primitive" + } + }, + { + "name" : "arg1", + "argType" : { + "tag" : "primitive" + } + }, + { + "name" : "arg2", + "argType" : { + "tag" : "primitive" + } + } + ], + "returnType" : { + "tag" : "void" + } + } + } + } + ], + "names" : { + "relay" : "-relay-", + "getDataSrv" : "getDataSrv", + "callbackSrv" : "callbackSrv", + "responseSrv" : "callbackSrv", + "responseFnName" : "response", + "errorHandlingSrv" : "errorHandlingSrv", + "errorFnName" : "error" + } +}, + script + ) +} + + export function findAndAskNeighboursSchema(...args) { let script = ` - (xor + (xor (seq (seq (seq @@ -310,85 +397,97 @@ export function findAndAskNeighboursSchema(...args) { ) (xor (seq - (call relayPeerId ("kad" "neighborhood") [clientId [] []] neighbors) - (fold neighbors n + (seq + (call relayPeerId ("kad" "neighborhood") [clientId [] []] neighbors) (par - (xor - (seq - (call n ("kad" "neighborhood") [clientId [] []] neighbors2) - (fold neighbors2 n2 - (par - (seq - (call -relay- ("op" "noop") []) - (xor - (seq + (fold neighbors n + (par + (xor + (seq + (call n ("kad" "neighborhood") [clientId [] []] neighbors2) + (par + (fold neighbors2 n2 + (par (seq - (seq + (call -relay- ("op" "noop") []) + (xor (seq (seq (seq (seq - (call n2 ("peer" "identify") [] ident) - (call n2 ("dist" "list_blueprints") [] blueprints) + (seq + (seq + (call n2 ("peer" "identify") [] ident) + (call n2 ("dist" "list_blueprints") [] blueprints) + ) + (call n2 ("dist" "list_modules") [] modules) + ) + (call n2 ("srv" "list") [] services) ) - (call n2 ("dist" "list_modules") [] modules) + (call -relay- ("op" "noop") []) ) - (call n2 ("srv" "list") [] services) - ) - (call -relay- ("op" "noop") []) - ) - (xor - (call %init_peer_id% ("callbackSrv" "collectPeerInfo") [n2 ident services blueprints modules]) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1]) - ) - ) - (call -relay- ("op" "noop") []) - ) - (fold services srv - (par - (seq - (call -relay- ("op" "noop") []) - (xor - (seq + (xor (seq - (call n2 ("srv" "get_interface") [srv.$.id!] iface) + (call %init_peer_id% ("callbackSrv" "collectPeerInfo") [n2 ident services blueprints modules]) (call -relay- ("op" "noop") []) ) - (xor - (call %init_peer_id% ("callbackSrv" "collectServiceInterface") [n2 srv.$.id! iface]) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2]) + (seq + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1]) + (call -relay- ("op" "noop") []) ) ) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3]) + ) + (par + (fold services srv + (par + (xor + (seq + (seq + (call n2 ("srv" "get_interface") [srv.$.id!] iface) + (call -relay- ("op" "noop") []) + ) + (xor + (call %init_peer_id% ("callbackSrv" "collectServiceInterface") [n2 srv.$.id! iface]) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2]) + ) + ) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3]) + ) + (next srv) + ) + ) + (null) ) ) (seq (call -relay- ("op" "noop") []) - (next srv) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 4]) ) ) ) - ) - (seq - (call -relay- ("op" "noop") []) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 4]) + (next n2) ) ) + (null) ) - (next n2) + ) + (seq + (call -relay- ("op" "noop") []) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 5]) ) ) - ) - (seq - (call -relay- ("op" "noop") []) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 5]) + (next n) ) ) - (next n) + (null) ) ) + (call -relay- ("op" "noop") []) + ) + (seq + (call -relay- ("op" "noop") []) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 6]) ) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 6]) ) ) (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 7]) @@ -504,136 +603,64 @@ export function findAndAskNeighboursSchema(...args) { } -export function getAll(...args) { +export function collectServiceInterfaces(...args) { let script = ` - (xor + (xor (seq (seq - (call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-) - (call %init_peer_id% ("getDataSrv" "knownPeers") [] knownPeers) + (seq + (call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-) + (call %init_peer_id% ("getDataSrv" "peer") [] peer) + ) + (call %init_peer_id% ("getDataSrv" "services") [] services) ) - (xor - (fold knownPeers peer + (par + (fold services srv (par (seq (call -relay- ("op" "noop") []) (xor (seq (seq - (seq - (seq - (seq - (seq - (seq - (call peer ("peer" "identify") [] ident) - (call peer ("dist" "list_blueprints") [] blueprints) - ) - (call peer ("dist" "list_modules") [] modules) - ) - (call peer ("srv" "list") [] services) - ) - (call -relay- ("op" "noop") []) - ) - (xor - (call %init_peer_id% ("callbackSrv" "collectPeerInfo") [peer ident services blueprints modules]) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1]) - ) - ) + (call peer ("srv" "get_interface") [srv.$.id!] iface) (call -relay- ("op" "noop") []) ) - (fold services srv - (par - (seq - (call -relay- ("op" "noop") []) - (xor - (seq - (seq - (call peer ("srv" "get_interface") [srv.$.id!] iface) - (call -relay- ("op" "noop") []) - ) - (xor - (call %init_peer_id% ("callbackSrv" "collectServiceInterface") [peer srv.$.id! iface]) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2]) - ) - ) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3]) - ) - ) - (seq - (call -relay- ("op" "noop") []) - (next srv) - ) - ) + (xor + (call %init_peer_id% ("callbackSrv" "collectServiceInterface") [peer srv.$.id! iface]) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1]) ) ) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 4]) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2]) ) ) - (next peer) + (next srv) ) ) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 5]) + (null) ) ) - (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 6]) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3]) ) ` return callFunction( args, { - "functionName" : "getAll", + "functionName" : "collectServiceInterfaces", "returnType" : { "tag" : "void" }, "argDefs" : [ { - "name" : "knownPeers", + "name" : "peer", "argType" : { "tag" : "primitive" } }, { - "name" : "collectPeerInfo", + "name" : "services", "argType" : { - "tag" : "callback", - "callback" : { - "argDefs" : [ - { - "name" : "arg0", - "argType" : { - "tag" : "primitive" - } - }, - { - "name" : "arg1", - "argType" : { - "tag" : "primitive" - } - }, - { - "name" : "arg2", - "argType" : { - "tag" : "primitive" - } - }, - { - "name" : "arg3", - "argType" : { - "tag" : "primitive" - } - }, - { - "name" : "arg4", - "argType" : { - "tag" : "primitive" - } - } - ], - "returnType" : { - "tag" : "void" - } - } + "tag" : "primitive" } }, { diff --git a/src/index.js b/src/index.js index 0a85a39..65ca9f0 100644 --- a/src/index.js +++ b/src/index.js @@ -127,6 +127,118 @@ function genFlags(peerId, relays, relayIdx) { flags: flags, }); + if (window) { + window.collectedData = { + // service ids + services: new Map(), + // services per creator + creators: new Map(), + // blueprints used in services + serviceBlueprints: new Set(), + // all blueprints + blueprints: new Map(), + // module hashes used in services + serviceModules: new Set(), + // unique module names used in services + moduleNames: new Set(), + // all modules + modules: new Map(), + // peer infos per PeerId + peerInfos: new Map(), + }; + + window.showStat = () => { + /* + 1490 users created 3018 services + from 280 blueprints + from 299 modules of which there are 43 unique module names + */ + let usersCount = window.collectedData.creators.size; + let serviceCount = window.collectedData.services.size; + let blueprintCount = window.collectedData.serviceBlueprints.size; + let moduleCount = window.collectedData.serviceModules.size; + let nameCount = window.collectedData.moduleNames.size; + let totalModules = window.collectedData.modules.size; + + console.log(`${usersCount} users created ${serviceCount} services`); + console.log(`from ${blueprintCount} blueprints`); + console.log(`from ${moduleCount} modules of which there are ${nameCount} unique module names`); + console.log(`total ${totalModules} modules were uploaded`); + + let servicesPerHost = new Map(); + for (let service of window.collectedData.services.values()) { + let perHost = servicesPerHost.has(service.host) ? servicesPerHost.get(service.host) : new Set(); + perHost.add(service.id); + servicesPerHost.set(service.host, perHost); + } + + let N = 10; + let sorted = [...servicesPerHost.entries()].sort((a, b) => b[1].size - a[1].size); + console.log(`top ${N} nodes by hosted services:`) + let slice = sorted.slice(0, 10); + for (let entry of slice) { + console.log(`\t node ${entry[0]} has ${entry[1].size} services`); + } + + let byNodeVersion = new Map(); + let byAirVersion = new Map(); + for (let info of window.collectedData.peerInfos.values()) { + let byNodeCount = byNodeVersion.get(info.node_version) || 0; + byNodeVersion.set(info.node_version, byNodeCount + 1) + let byAirCount = byAirVersion.get(info.air_version) || 0; + byAirVersion.set(info.air_version, byAirCount + 1) + } + + console.log("Nodes version distribution:"); + for (let entry of byNodeVersion.entries()) { + let version = entry[0]; + let count = entry[1]; + console.log(`\t${version}: ${count} nodes`); + } + + console.log("AIR intepreter versions distribution:"); + for (let entry of byAirVersion.entries()) { + let version = entry[0]; + let count = entry[1]; + console.log(`\t${version}: ${count} nodes`); + } + }; + } + + function collectStats(peerId, identify, services, blueprints, modules) { + if (window) { + window.collectedData.peerInfos.set(peerId, identify); + + for (let blueprint of blueprints) { + window.collectedData.blueprints.set(blueprint.id, blueprint); + } + + for (let module of modules) { + window.collectedData.modules.set(module.hash, module); + } + + for (let service of services) { + service.host = peerId; + window.collectedData.services.set(service.id, service); + window.collectedData.serviceBlueprints.add(service.blueprint_id); + + let blueprint = window.collectedData.blueprints.get(service.blueprint_id); + for (let prefixedHash of blueprint.dependencies) { + let moduleHash = prefixedHash.split(':')[1]; + window.collectedData.serviceModules.add(moduleHash); + + let module = window.collectedData.modules.get(moduleHash); + window.collectedData.moduleNames.add(module.name); + } + + let perCreator = window.collectedData.creators.has(service.owner_id) ? window.collectedData.creators.get(service.owner_id) : new Set(); + perCreator.add(service.id); + window.collectedData.creators.set(service.owner_id, perCreator); + } + + } + } + // alias ServiceInterfaceCb: PeerId, string, Interface -> () function collectServiceInterface(peer_id, service_id, iface) { // console.count(`service interface from ${peer_id}`); @@ -146,7 +258,9 @@ function genFlags(peerId, relays, relayIdx) { // alias PeerInfoCb: PeerId, Info, []Service, []Blueprint, []Module -> () function collectPeerInfo(peerId, identify, services, blueprints, modules, interfaces) { // console.log('peer info from %s, %s services', peerId, services.length); - try { + try { + collectStats(peerId, identify, services, blueprints, modules); + const eventRaw = { // HACK: show AIR interpreter version in the NODE ID field peerId: peerId + ' (' + identify.air_version + ')',