From 54e9d85d4b3d0d4b2e3756736c36cd7d22f8a7bd Mon Sep 17 00:00:00 2001 From: Dmitry Osipov Date: Thu, 26 Oct 2023 14:53:00 +0200 Subject: [PATCH] support draft nft --- .env.example | 2 + assets/draft-nft.meta.txt | 1 + package-lock.json | 960 +++++++++++++------------------------- package.json | 6 +- src/config.ts | 2 + src/handlers/draft-nft.ts | 55 +++ src/handlers/helpers.ts | 6 +- src/main.ts | 3 + src/processor.ts | 2 +- src/types/draft-nft.ts | 38 ++ src/types/index.ts | 1 + 11 files changed, 442 insertions(+), 634 deletions(-) create mode 100644 assets/draft-nft.meta.txt create mode 100644 src/handlers/draft-nft.ts create mode 100644 src/types/draft-nft.ts diff --git a/.env.example b/.env.example index 0b70c85..72e3f73 100644 --- a/.env.example +++ b/.env.example @@ -8,5 +8,7 @@ PROCESSOR_PROMETHEUS_PORT=3000 GQL_PORT=4350 NFT_CB=0x8d7ac116076a6031982ee65f323118b20b3d5a9ed3993a36a1da6e9faf8572c7 +NFT_VIT=0x8d7ac116076a6031982ee65f323118b20b3d5a9ed3993a36a1da6e9faf8572c7 +NFT_DRAFT=0x8d7ac116076a6031982ee65f323118b20b3d5a9ed3993a36a1da6e9faf8572c7 ARCHIVE_URI=https://squid-archive-testnet.gear-tech.io/graphql NODE_ADDRESS=https://testnet.vara-network.io diff --git a/assets/draft-nft.meta.txt b/assets/draft-nft.meta.txt new file mode 100644 index 0000000..c369292 --- /dev/null +++ b/assets/draft-nft.meta.txt @@ -0,0 +1 @@ +0002000100000000000105000000010900000000000000010a000000010b0000000519580008306e66745f64726166745f696f304e46544472616674496e697400000c0128636f6c6c656374696f6e040128436f6c6c656374696f6e00012c6d617962655f6c696d69740c01344f7074696f6e3c4e667449643e000120696d675f6c696e6b080118537472696e6700000408306e66745f64726166745f696f28436f6c6c656374696f6e00000801106e616d65080118537472696e6700012c6465736372697074696f6e080118537472696e6700000800000502000c04184f7074696f6e04045401100108104e6f6e6500000010536f6d6504001000000100001000000507001408306e66745f64726166745f696f384e46544472616674416374696f6e0001202041646441646d696e0401246e65775f61646d696e18011c4163746f724964000000104d696e740801106e616d65080118537472696e6700012c6465736372697074696f6e080118537472696e67000100184d696e74546f0c0108746f18011c4163746f7249640001106e616d65080118537472696e6700012c6465736372697074696f6e080118537472696e67000200305472616e7366657246726f6d0c011066726f6d18011c4163746f724964000108746f18011c4163746f724964000120746f6b656e5f69641001144e66744964000300205472616e73666572080108746f18011c4163746f724964000120746f6b656e5f69641001144e667449640004001c417070726f7665080108746f18011c4163746f724964000120746f6b656e5f69641001144e66744964000500385265766f6b65417070726f76616c040120746f6b656e5f69641001144e66744964000600104275726e040120746f6b656e5f69641001144e66744964000700001810106773746418636f6d6d6f6e287072696d6974697665731c4163746f724964000004001c01205b75383b2033325d00001c0000032000000020002000000503002408306e66745f64726166745f696f344e465444726166744576656e7400011c2841646d696e4164646564000000184d696e7465641001146f776e657218011c4163746f724964000120746f6b656e5f69641001144e667449640001246d656469615f75726c080118537472696e670001286174747269625f75726c080118537472696e670001002c5472616e736665727265640c01146f776e657218011c4163746f724964000124726563697069656e7418011c4163746f724964000120746f6b656e5f69641001144e66744964000200144275726e74040120746f6b656e5f69641001144e6674496400030020417070726f76656408011c6163636f756e7418011c4163746f724964000120746f6b656e5f69641001144e667449640004003c417070726f76616c5265766f6b6564040120746f6b656e5f69641001144e66744964000500144572726f720400080118537472696e67000600002808306e66745f64726166745f696f285374617465517565727900010c104e616d650000002c4465736372697074696f6e0001000c416c6c000200002c08306e66745f64726166745f696f2853746174655265706c7900010c104e616d650400080118537472696e670000002c4465736372697074696f6e0400080118537472696e670001000c416c6c04003001344e465444726166745374617465000200003008306e66745f64726166745f696f344e46544472616674537461746500001c0118746f6b656e733401445665633c284e667449642c204e6674293e0001186f776e6572734001685665633c284163746f7249642c205665633c4e667449643e293e000124617070726f76616c734c01545665633c284e667449642c204163746f724964293e000128636f6c6c656374696f6e040128436f6c6c656374696f6e0001146e6f6e63651001144e66744964000120696d675f6c696e6b080118537472696e6700011861646d696e735401305665633c4163746f7249643e00003400000238003800000408103c003c08306e66745f64726166745f696f0c4e667400001401146f776e657218011c4163746f7249640001106e616d65080118537472696e6700012c6465736372697074696f6e080118537472696e670001246d656469615f75726c080118537472696e670001286174747269625f75726c080118537472696e67000040000002440044000004081848004800000210004c00000250005000000408101800540000021800 \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index c2f68cc..6904cd7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6,8 +6,8 @@ "": { "name": "squid", "dependencies": { - "@gear-js/api": "^0.34.0", - "@polkadot/api": "^10.9.1", + "@gear-js/api": "^0.35.1", + "@polkadot/api": "^10.10.1", "@subsquid/archive-registry": "^3.1.0", "@subsquid/graphql-server": "^3.3.2", "@subsquid/ss58": "^0.1.4", @@ -19,7 +19,7 @@ "typeorm": "^0.3.17" }, "devDependencies": { - "@polkadot/types": "^10.9.1", + "@polkadot/types": "^10.10.1", "@subsquid/substrate-metadata-explorer": "^1.1.2", "@subsquid/substrate-typegen": "^2.2.1", "@subsquid/typeorm-codegen": "^0.3.3", @@ -190,12 +190,12 @@ "dev": true }, "node_modules/@gear-js/api": { - "version": "0.34.0", - "resolved": "https://registry.npmjs.org/@gear-js/api/-/api-0.34.0.tgz", - "integrity": "sha512-clJtAtJJrOZ42CYA33IN0o+fmVOeSkDcMzSYMW99jtA5o49L1LPxMloV3whfahrKZXnPx7X5LTkR30AuC2h1oQ==", + "version": "0.35.1", + "resolved": "https://registry.npmjs.org/@gear-js/api/-/api-0.35.1.tgz", + "integrity": "sha512-ar6LHPoSFa6a54Vy/CSMrTHPVQaxnVXG777xF37r3aT5aJcTqZ7DCgR7YcAeu4bIzoTcPPeD1Wg3sLVQlxjwzw==", "peerDependencies": { - "@polkadot/api": "10.9.1", - "@polkadot/wasm-crypto": "7.2.1", + "@polkadot/api": "10.10.1", + "@polkadot/wasm-crypto": "7.2.2", "rxjs": "7.8.1" } }, @@ -371,79 +371,79 @@ } }, "node_modules/@polkadot/api": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/api/-/api-10.9.1.tgz", - "integrity": "sha512-ND/2UqZBWvtt4PfV03OStTKg0mxmPk4UpMAgJKutdgsz/wP9CYJ1KbjwFgPNekL9JnzbKQsWyQNPVrcw7kQk8A==", - "dependencies": { - "@polkadot/api-augment": "10.9.1", - "@polkadot/api-base": "10.9.1", - "@polkadot/api-derive": "10.9.1", - "@polkadot/keyring": "^12.3.1", - "@polkadot/rpc-augment": "10.9.1", - "@polkadot/rpc-core": "10.9.1", - "@polkadot/rpc-provider": "10.9.1", - "@polkadot/types": "10.9.1", - "@polkadot/types-augment": "10.9.1", - "@polkadot/types-codec": "10.9.1", - "@polkadot/types-create": "10.9.1", - "@polkadot/types-known": "10.9.1", - "@polkadot/util": "^12.3.1", - "@polkadot/util-crypto": "^12.3.1", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/api/-/api-10.10.1.tgz", + "integrity": "sha512-YHVkmNvjGF4Eg3thAbVhj9UX3SXx+Yxk6yVuzsEcckEudIRHzL2ikIWGCfUprfzSeFNpUCKdJIi1tsxVHtA7Tg==", + "dependencies": { + "@polkadot/api-augment": "10.10.1", + "@polkadot/api-base": "10.10.1", + "@polkadot/api-derive": "10.10.1", + "@polkadot/keyring": "^12.5.1", + "@polkadot/rpc-augment": "10.10.1", + "@polkadot/rpc-core": "10.10.1", + "@polkadot/rpc-provider": "10.10.1", + "@polkadot/types": "10.10.1", + "@polkadot/types-augment": "10.10.1", + "@polkadot/types-codec": "10.10.1", + "@polkadot/types-create": "10.10.1", + "@polkadot/types-known": "10.10.1", + "@polkadot/util": "^12.5.1", + "@polkadot/util-crypto": "^12.5.1", "eventemitter3": "^5.0.1", "rxjs": "^7.8.1", - "tslib": "^2.5.3" + "tslib": "^2.6.2" }, "engines": { "node": ">=16" } }, "node_modules/@polkadot/api-augment": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/api-augment/-/api-augment-10.9.1.tgz", - "integrity": "sha512-kRZZvCFVcN4hAH4dJ+Qzfdy27/4EEq3oLDf3ihj0LTVrAezSWcKPGE3EVFy+Mn6Lo4SUc7RVyoKvIUhSk2l4Dg==", - "dependencies": { - "@polkadot/api-base": "10.9.1", - "@polkadot/rpc-augment": "10.9.1", - "@polkadot/types": "10.9.1", - "@polkadot/types-augment": "10.9.1", - "@polkadot/types-codec": "10.9.1", - "@polkadot/util": "^12.3.1", - "tslib": "^2.5.3" + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/api-augment/-/api-augment-10.10.1.tgz", + "integrity": "sha512-J0r1DT1M5y75iO1iwcpUBokKD3q6b22kWlPfiHEDNFydVw5vm7OTRBk9Njjl8rOnlSzcW/Ya8qWfV/wkrqHxUQ==", + "dependencies": { + "@polkadot/api-base": "10.10.1", + "@polkadot/rpc-augment": "10.10.1", + "@polkadot/types": "10.10.1", + "@polkadot/types-augment": "10.10.1", + "@polkadot/types-codec": "10.10.1", + "@polkadot/util": "^12.5.1", + "tslib": "^2.6.2" }, "engines": { "node": ">=16" } }, "node_modules/@polkadot/api-base": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/api-base/-/api-base-10.9.1.tgz", - "integrity": "sha512-Q3m2KzlceMK2kX8bhnUZWk3RT6emmijeeFZZQgCePpEcrSeNjnqG4qjuTPgkveaOkUT8MAoDc5Avuzcc2jlW9g==", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/api-base/-/api-base-10.10.1.tgz", + "integrity": "sha512-joH2Ywxnn+AStkw+JWAdF3i3WJy4NcBYp0SWJM/WqGafWR/FuHnati2pcj/MHzkHT8JkBippmSSJFvsqRhlwcQ==", "dependencies": { - "@polkadot/rpc-core": "10.9.1", - "@polkadot/types": "10.9.1", - "@polkadot/util": "^12.3.1", + "@polkadot/rpc-core": "10.10.1", + "@polkadot/types": "10.10.1", + "@polkadot/util": "^12.5.1", "rxjs": "^7.8.1", - "tslib": "^2.5.3" + "tslib": "^2.6.2" }, "engines": { "node": ">=16" } }, "node_modules/@polkadot/api-derive": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/api-derive/-/api-derive-10.9.1.tgz", - "integrity": "sha512-mRud1UZCFIc4Z63qAoGSIHh/foyUYADfy1RQYCmPpeFKfIdCIrHpd7xFdJXTOMYOS0BwlM6u4qli/ZT4XigezQ==", - "dependencies": { - "@polkadot/api": "10.9.1", - "@polkadot/api-augment": "10.9.1", - "@polkadot/api-base": "10.9.1", - "@polkadot/rpc-core": "10.9.1", - "@polkadot/types": "10.9.1", - "@polkadot/types-codec": "10.9.1", - "@polkadot/util": "^12.3.1", - "@polkadot/util-crypto": "^12.3.1", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/api-derive/-/api-derive-10.10.1.tgz", + "integrity": "sha512-Q9Ibs4eRPqdV8qnRzFPD3dlWNbLHxRqMqNTNPmNQwKPo5m6fcQbZ0UZy3yJ+PI9S4AQHGhsWtfoi5qW8006GHQ==", + "dependencies": { + "@polkadot/api": "10.10.1", + "@polkadot/api-augment": "10.10.1", + "@polkadot/api-base": "10.10.1", + "@polkadot/rpc-core": "10.10.1", + "@polkadot/types": "10.10.1", + "@polkadot/types-codec": "10.10.1", + "@polkadot/util": "^12.5.1", + "@polkadot/util-crypto": "^12.5.1", "rxjs": "^7.8.1", - "tslib": "^2.5.3" + "tslib": "^2.6.2" }, "engines": { "node": ">=16" @@ -480,142 +480,142 @@ } }, "node_modules/@polkadot/rpc-augment": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/rpc-augment/-/rpc-augment-10.9.1.tgz", - "integrity": "sha512-MaLHkNlyqN20ZRYr6uNd1BZr1OsrnX9qLAmsl0mcrri1vPGRH6VHjfFH1RBLkikpWD82v17g0l2hLwdV1ZHMcw==", - "dependencies": { - "@polkadot/rpc-core": "10.9.1", - "@polkadot/types": "10.9.1", - "@polkadot/types-codec": "10.9.1", - "@polkadot/util": "^12.3.1", - "tslib": "^2.5.3" + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/rpc-augment/-/rpc-augment-10.10.1.tgz", + "integrity": "sha512-PcvsX8DNV8BNDXXnY2K8F4mE7cWz7fKg8ykXNZTN8XUN6MrI4k/ohv7itYic7X5LaP25ZmQt5UiGyjKDGIELow==", + "dependencies": { + "@polkadot/rpc-core": "10.10.1", + "@polkadot/types": "10.10.1", + "@polkadot/types-codec": "10.10.1", + "@polkadot/util": "^12.5.1", + "tslib": "^2.6.2" }, "engines": { "node": ">=16" } }, "node_modules/@polkadot/rpc-core": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/rpc-core/-/rpc-core-10.9.1.tgz", - "integrity": "sha512-ZtA8B8SfXSAwVkBlCcKRHw0eSM7ec/sbiNOM5GasXPeRujUgT7lOwSH2GbUZSqe9RfRDMp6DvO9c2JoGc3LLWw==", - "dependencies": { - "@polkadot/rpc-augment": "10.9.1", - "@polkadot/rpc-provider": "10.9.1", - "@polkadot/types": "10.9.1", - "@polkadot/util": "^12.3.1", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/rpc-core/-/rpc-core-10.10.1.tgz", + "integrity": "sha512-awfFfJYsVF6W4DrqTj5RP00SSDRNB770FIoe1QE1Op4NcSrfeLpwh54HUJS716f4l5mOSYuvMp+zCbKzt8zKow==", + "dependencies": { + "@polkadot/rpc-augment": "10.10.1", + "@polkadot/rpc-provider": "10.10.1", + "@polkadot/types": "10.10.1", + "@polkadot/util": "^12.5.1", "rxjs": "^7.8.1", - "tslib": "^2.5.3" + "tslib": "^2.6.2" }, "engines": { "node": ">=16" } }, "node_modules/@polkadot/rpc-provider": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/rpc-provider/-/rpc-provider-10.9.1.tgz", - "integrity": "sha512-4QzT2QzD+320+eT6b79sGAA85Tt3Bb8fQvse4r5Mom2iiBd2SO81vOhxSAOaIe4GUsw25VzFJmsbe7+OObItdg==", - "dependencies": { - "@polkadot/keyring": "^12.3.1", - "@polkadot/types": "10.9.1", - "@polkadot/types-support": "10.9.1", - "@polkadot/util": "^12.3.1", - "@polkadot/util-crypto": "^12.3.1", - "@polkadot/x-fetch": "^12.3.1", - "@polkadot/x-global": "^12.3.1", - "@polkadot/x-ws": "^12.3.1", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/rpc-provider/-/rpc-provider-10.10.1.tgz", + "integrity": "sha512-VMDWoJgx6/mPHAOT66Sq+Jf2lJABfV/ZUIXtT2k8HjOndbm6oKrFqGEOSSLvB2q4olDee3FkFFxkyW1s6k4JaQ==", + "dependencies": { + "@polkadot/keyring": "^12.5.1", + "@polkadot/types": "10.10.1", + "@polkadot/types-support": "10.10.1", + "@polkadot/util": "^12.5.1", + "@polkadot/util-crypto": "^12.5.1", + "@polkadot/x-fetch": "^12.5.1", + "@polkadot/x-global": "^12.5.1", + "@polkadot/x-ws": "^12.5.1", "eventemitter3": "^5.0.1", - "mock-socket": "^9.2.1", - "nock": "^13.3.1", - "tslib": "^2.5.3" + "mock-socket": "^9.3.1", + "nock": "^13.3.4", + "tslib": "^2.6.2" }, "engines": { "node": ">=16" }, "optionalDependencies": { - "@substrate/connect": "0.7.26" + "@substrate/connect": "0.7.33" } }, "node_modules/@polkadot/types": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-10.9.1.tgz", - "integrity": "sha512-AG33i2ZGGfq7u+5rkAdGrXAQHHl844/Yv+junH5ZzX69xiCoWO1bH/yzDUNBdpki2GlACWvF9nLYh3F2tVF93w==", - "dependencies": { - "@polkadot/keyring": "^12.3.1", - "@polkadot/types-augment": "10.9.1", - "@polkadot/types-codec": "10.9.1", - "@polkadot/types-create": "10.9.1", - "@polkadot/util": "^12.3.1", - "@polkadot/util-crypto": "^12.3.1", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-10.10.1.tgz", + "integrity": "sha512-Ben62P1tjYEhKag34GBGcLX6NqcFR1VD5nNbWaxgr+t36Jl/tlHs6P9DlbFqQP7Tt9FmGrAYY0m3oTkhjG1NzA==", + "dependencies": { + "@polkadot/keyring": "^12.5.1", + "@polkadot/types-augment": "10.10.1", + "@polkadot/types-codec": "10.10.1", + "@polkadot/types-create": "10.10.1", + "@polkadot/util": "^12.5.1", + "@polkadot/util-crypto": "^12.5.1", "rxjs": "^7.8.1", - "tslib": "^2.5.3" + "tslib": "^2.6.2" }, "engines": { "node": ">=16" } }, "node_modules/@polkadot/types-augment": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-10.9.1.tgz", - "integrity": "sha512-OY9/jTMFRFqYdkUnfcGwqMLC64A0Q25bjvCuVQCVjsPFKE3wl0Kt5rNT01eV2UmLXrR6fY0xWbR2w80bLA7CIQ==", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-10.10.1.tgz", + "integrity": "sha512-XRHE75IocXfFE6EADYov3pqXCyBk5SWbiHoZ0+4WYWP9SwMuzsBaAy84NlhLBlkG3+ehIqi0HpAd/qrljJGZbg==", "dependencies": { - "@polkadot/types": "10.9.1", - "@polkadot/types-codec": "10.9.1", - "@polkadot/util": "^12.3.1", - "tslib": "^2.5.3" + "@polkadot/types": "10.10.1", + "@polkadot/types-codec": "10.10.1", + "@polkadot/util": "^12.5.1", + "tslib": "^2.6.2" }, "engines": { "node": ">=16" } }, "node_modules/@polkadot/types-codec": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-10.9.1.tgz", - "integrity": "sha512-mJ5OegKGraY1FLvEa8FopRCr3pQrhDkcn5RNOjmgJQozENVeRaxhk0NwxYz7IojFvSDnKnc6lNQfKaaSe5pLHg==", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-10.10.1.tgz", + "integrity": "sha512-ETPG0wzWzt/bDKRQmYbO7CLe/0lUt8VrG6/bECdv+Kye+8Qedba2LZyTWm/9f2ngms8TZ82yI8mPv/mozdtfnw==", "dependencies": { - "@polkadot/util": "^12.3.1", - "@polkadot/x-bigint": "^12.3.1", - "tslib": "^2.5.3" + "@polkadot/util": "^12.5.1", + "@polkadot/x-bigint": "^12.5.1", + "tslib": "^2.6.2" }, "engines": { "node": ">=16" } }, "node_modules/@polkadot/types-create": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-10.9.1.tgz", - "integrity": "sha512-OVz50MGTTuiuVnRP/zAx4CTuLioc0hsiwNwqN2lNhmIJGtnQ4Vy/7mQRsIWehiYz6g0Vzzm5B3qWkTXO1NSN5w==", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-10.10.1.tgz", + "integrity": "sha512-7OiLzd+Ter5zrpjP7fDwA1m89kd38VvMVixfOSv8x7ld2pDT+yyyKl14TCwRSWrKWCMtIb6M3iasPhq5cUa7cw==", "dependencies": { - "@polkadot/types-codec": "10.9.1", - "@polkadot/util": "^12.3.1", - "tslib": "^2.5.3" + "@polkadot/types-codec": "10.10.1", + "@polkadot/util": "^12.5.1", + "tslib": "^2.6.2" }, "engines": { "node": ">=16" } }, "node_modules/@polkadot/types-known": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/types-known/-/types-known-10.9.1.tgz", - "integrity": "sha512-zCMVWc4pJtkbMFPu72bD4IhvV/gkHXPX3C5uu92WdmCfnn0vEIEsMKWlVXVVvQQZKAqvs/awpqIfrUtEViOGEA==", - "dependencies": { - "@polkadot/networks": "^12.3.1", - "@polkadot/types": "10.9.1", - "@polkadot/types-codec": "10.9.1", - "@polkadot/types-create": "10.9.1", - "@polkadot/util": "^12.3.1", - "tslib": "^2.5.3" + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/types-known/-/types-known-10.10.1.tgz", + "integrity": "sha512-yRa1lbDRqg3V/zoa0vSwdGOiYTIWktILW8OfkaLDExTu0GZBSbVHZlLAta52XVpA9Zww7mrUUC9+iernOwk//w==", + "dependencies": { + "@polkadot/networks": "^12.5.1", + "@polkadot/types": "10.10.1", + "@polkadot/types-codec": "10.10.1", + "@polkadot/types-create": "10.10.1", + "@polkadot/util": "^12.5.1", + "tslib": "^2.6.2" }, "engines": { "node": ">=16" } }, "node_modules/@polkadot/types-support": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/types-support/-/types-support-10.9.1.tgz", - "integrity": "sha512-XsieuLDsszvMZQlleacQBfx07i/JkwQV/UxH9q8Hz7Okmaz9pEVEW1h3ka2/cPuC7a4l32JhaORBUYshBZNdJg==", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/types-support/-/types-support-10.10.1.tgz", + "integrity": "sha512-Cd2mwk9RG6LlX8X3H0bRY7wCTbZPqU3z38CMFhvNkFDAyjqKjtn8hpS4n8mMrZK2EwCs/MjQH1wb7rtFkaWmJw==", "dependencies": { - "@polkadot/util": "^12.3.1", - "tslib": "^2.5.3" + "@polkadot/util": "^12.5.1", + "tslib": "^2.6.2" }, "engines": { "node": ">=16" @@ -661,7 +661,7 @@ "@polkadot/util": "12.5.1" } }, - "node_modules/@polkadot/util-crypto/node_modules/@polkadot/wasm-bridge": { + "node_modules/@polkadot/wasm-bridge": { "version": "7.2.2", "resolved": "https://registry.npmjs.org/@polkadot/wasm-bridge/-/wasm-bridge-7.2.2.tgz", "integrity": "sha512-CgNENd65DVYtackOVXXRA0D1RPoCv5+77IdBCf7kNqu6LeAnR4nfTI6qjaApUdN1xRweUsQjSH7tu7VjkMOA0A==", @@ -677,7 +677,7 @@ "@polkadot/x-randomvalues": "*" } }, - "node_modules/@polkadot/util-crypto/node_modules/@polkadot/wasm-crypto": { + "node_modules/@polkadot/wasm-crypto": { "version": "7.2.2", "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto/-/wasm-crypto-7.2.2.tgz", "integrity": "sha512-1ZY1rxUTawYm0m1zylvBMFovNIHYgG2v/XoASNp/EMG5c8FQIxCbhJRaTBA983GVq4lN/IAKREKEp9ZbLLqssA==", @@ -697,7 +697,7 @@ "@polkadot/x-randomvalues": "*" } }, - "node_modules/@polkadot/util-crypto/node_modules/@polkadot/wasm-crypto-asmjs": { + "node_modules/@polkadot/wasm-crypto-asmjs": { "version": "7.2.2", "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-asmjs/-/wasm-crypto-asmjs-7.2.2.tgz", "integrity": "sha512-wKg+cpsWQCTSVhjlHuNeB/184rxKqY3vaklacbLOMbUXieIfuDBav5PJdzS3yeiVE60TpYaHW4iX/5OYHS82gg==", @@ -711,7 +711,7 @@ "@polkadot/util": "*" } }, - "node_modules/@polkadot/util-crypto/node_modules/@polkadot/wasm-crypto-init": { + "node_modules/@polkadot/wasm-crypto-init": { "version": "7.2.2", "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-init/-/wasm-crypto-init-7.2.2.tgz", "integrity": "sha512-vD4iPIp9x+SssUIWUenxWLPw4BVIwhXHNMpsV81egK990tvpyIxL205/EF5QRb1mKn8WfWcNFm5tYwwh9NdnnA==", @@ -730,7 +730,7 @@ "@polkadot/x-randomvalues": "*" } }, - "node_modules/@polkadot/util-crypto/node_modules/@polkadot/wasm-crypto-wasm": { + "node_modules/@polkadot/wasm-crypto-wasm": { "version": "7.2.2", "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-wasm/-/wasm-crypto-wasm-7.2.2.tgz", "integrity": "sha512-3efoIB6jA3Hhv6k0YIBwCtlC8gCSWCk+R296yIXRLLr3cGN415KM/PO/d1JIXYI64lbrRzWRmZRhllw3jf6Atg==", @@ -745,155 +745,6 @@ "@polkadot/util": "*" } }, - "node_modules/@polkadot/wasm-bridge": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-bridge/-/wasm-bridge-7.2.1.tgz", - "integrity": "sha512-uV/LHREDBGBbHrrv7HTki+Klw0PYZzFomagFWII4lp6Toj/VCvRh5WMzooVC+g/XsBGosAwrvBhoModabyHx+A==", - "peer": true, - "dependencies": { - "@polkadot/wasm-util": "7.2.1", - "tslib": "^2.5.0" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@polkadot/util": "*", - "@polkadot/x-randomvalues": "*" - } - }, - "node_modules/@polkadot/wasm-bridge/node_modules/@polkadot/wasm-util": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-util/-/wasm-util-7.2.1.tgz", - "integrity": "sha512-FBSn/3aYJzhN0sYAYhHB8y9JL8mVgxLy4M1kUXYbyo+8GLRQEN5rns8Vcb8TAlIzBWgVTOOptYBvxo0oj0h7Og==", - "peer": true, - "dependencies": { - "tslib": "^2.5.0" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@polkadot/util": "*" - } - }, - "node_modules/@polkadot/wasm-crypto": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto/-/wasm-crypto-7.2.1.tgz", - "integrity": "sha512-SA2+33S9TAwGhniKgztVN6pxUKpGfN4Tre/eUZGUfpgRkT92wIUT2GpGWQE+fCCqGQgADrNiBcwt6XwdPqMQ4Q==", - "peer": true, - "dependencies": { - "@polkadot/wasm-bridge": "7.2.1", - "@polkadot/wasm-crypto-asmjs": "7.2.1", - "@polkadot/wasm-crypto-init": "7.2.1", - "@polkadot/wasm-crypto-wasm": "7.2.1", - "@polkadot/wasm-util": "7.2.1", - "tslib": "^2.5.0" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@polkadot/util": "*", - "@polkadot/x-randomvalues": "*" - } - }, - "node_modules/@polkadot/wasm-crypto-asmjs": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-asmjs/-/wasm-crypto-asmjs-7.2.1.tgz", - "integrity": "sha512-z/d21bmxyVfkzGsKef/FWswKX02x5lK97f4NPBZ9XBeiFkmzlXhdSnu58/+b1sKsRAGdW/Rn/rTNRDhW0GqCAg==", - "peer": true, - "dependencies": { - "tslib": "^2.5.0" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@polkadot/util": "*" - } - }, - "node_modules/@polkadot/wasm-crypto-init": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-init/-/wasm-crypto-init-7.2.1.tgz", - "integrity": "sha512-GcEXtwN9LcSf32V9zSaYjHImFw16hCyo2Xzg4GLLDPPeaAAfbFr2oQMgwyDbvBrBjLKHVHjsPZyGhXae831amw==", - "peer": true, - "dependencies": { - "@polkadot/wasm-bridge": "7.2.1", - "@polkadot/wasm-crypto-asmjs": "7.2.1", - "@polkadot/wasm-crypto-wasm": "7.2.1", - "@polkadot/wasm-util": "7.2.1", - "tslib": "^2.5.0" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@polkadot/util": "*", - "@polkadot/x-randomvalues": "*" - } - }, - "node_modules/@polkadot/wasm-crypto-init/node_modules/@polkadot/wasm-util": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-util/-/wasm-util-7.2.1.tgz", - "integrity": "sha512-FBSn/3aYJzhN0sYAYhHB8y9JL8mVgxLy4M1kUXYbyo+8GLRQEN5rns8Vcb8TAlIzBWgVTOOptYBvxo0oj0h7Og==", - "peer": true, - "dependencies": { - "tslib": "^2.5.0" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@polkadot/util": "*" - } - }, - "node_modules/@polkadot/wasm-crypto-wasm": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-wasm/-/wasm-crypto-wasm-7.2.1.tgz", - "integrity": "sha512-DqyXE4rSD0CVlLIw88B58+HHNyrvm+JAnYyuEDYZwCvzUWOCNos/DDg9wi/K39VAIsCCKDmwKqkkfIofuOj/lA==", - "peer": true, - "dependencies": { - "@polkadot/wasm-util": "7.2.1", - "tslib": "^2.5.0" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@polkadot/util": "*" - } - }, - "node_modules/@polkadot/wasm-crypto-wasm/node_modules/@polkadot/wasm-util": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-util/-/wasm-util-7.2.1.tgz", - "integrity": "sha512-FBSn/3aYJzhN0sYAYhHB8y9JL8mVgxLy4M1kUXYbyo+8GLRQEN5rns8Vcb8TAlIzBWgVTOOptYBvxo0oj0h7Og==", - "peer": true, - "dependencies": { - "tslib": "^2.5.0" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@polkadot/util": "*" - } - }, - "node_modules/@polkadot/wasm-crypto/node_modules/@polkadot/wasm-util": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-util/-/wasm-util-7.2.1.tgz", - "integrity": "sha512-FBSn/3aYJzhN0sYAYhHB8y9JL8mVgxLy4M1kUXYbyo+8GLRQEN5rns8Vcb8TAlIzBWgVTOOptYBvxo0oj0h7Og==", - "peer": true, - "dependencies": { - "tslib": "^2.5.0" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@polkadot/util": "*" - } - }, "node_modules/@polkadot/wasm-util": { "version": "7.2.2", "resolved": "https://registry.npmjs.org/@polkadot/wasm-util/-/wasm-util-7.2.2.tgz", @@ -1520,14 +1371,14 @@ } }, "node_modules/@substrate/connect": { - "version": "0.7.26", - "resolved": "https://registry.npmjs.org/@substrate/connect/-/connect-0.7.26.tgz", - "integrity": "sha512-uuGSiroGuKWj1+38n1kY5HReer5iL9bRwPCzuoLtqAOmI1fGI0hsSI2LlNQMAbfRgr7VRHXOk5MTuQf5ulsFRw==", + "version": "0.7.33", + "resolved": "https://registry.npmjs.org/@substrate/connect/-/connect-0.7.33.tgz", + "integrity": "sha512-1B984/bmXVQvTT9oV3c3b7215lvWmulP9rfP3T3Ri+OU3uIsyCzYw0A+XG6J8/jgO2FnroeNIBWlgoLaUM1uzw==", + "hasInstallScript": true, "optional": true, "dependencies": { "@substrate/connect-extension-protocol": "^1.0.1", - "eventemitter3": "^4.0.7", - "smoldot": "1.0.4" + "smoldot": "2.0.1" } }, "node_modules/@substrate/connect-extension-protocol": { @@ -1536,12 +1387,6 @@ "integrity": "sha512-161JhCC1csjH3GE5mPLEd7HbWtwNSPJBg3p1Ksz9SFlTzj/bgEwudiRN2y5i0MoLGCIJRYKyKGMxVnd29PzNjg==", "optional": true }, - "node_modules/@substrate/connect/node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "optional": true - }, "node_modules/@substrate/ss58-registry": { "version": "1.43.0", "resolved": "https://registry.npmjs.org/@substrate/ss58-registry/-/ss58-registry-1.43.0.tgz", @@ -1556,9 +1401,9 @@ } }, "node_modules/@types/bn.js": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.2.tgz", - "integrity": "sha512-dkpZu0szUtn9UXTmw+e0AJFd4D2XAxDnsCLdc05SfqpqzPEBft8eQr8uaFitfo/dUUOZERaLec2hHMG87A4Dxg==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.3.tgz", + "integrity": "sha512-wT1B4iIO82ecXkdN6waCK8Ou7E71WU+mP1osDA5Q8c6Ur+ozU2vIKUIhSpUr6uE5L2YHocKS1Z2jG2fBC1YVeg==", "dependencies": { "@types/node": "*" } @@ -3221,11 +3066,6 @@ "json-buffer": "3.0.1" } }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, "node_modules/lodash.defaults": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", @@ -3384,13 +3224,12 @@ "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" }, "node_modules/nock": { - "version": "13.3.3", - "resolved": "https://registry.npmjs.org/nock/-/nock-13.3.3.tgz", - "integrity": "sha512-z+KUlILy9SK/RjpeXDiDUEAq4T94ADPHE3qaRkf66mpEhzc/ytOMm3Bwdrbq6k1tMWkbdujiKim3G2tfQARuJw==", + "version": "13.3.6", + "resolved": "https://registry.npmjs.org/nock/-/nock-13.3.6.tgz", + "integrity": "sha512-lT6YuktKroUFM+27mubf2uqQZVy2Jf+pfGzuh9N6VwdHlFoZqvi4zyxFTVR1w/ChPqGY6yxGehHp6C3wqCASCw==", "dependencies": { "debug": "^4.1.0", "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.21", "propagate": "^2.0.0" }, "engines": { @@ -3545,12 +3384,6 @@ "resolved": "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz", "integrity": "sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ==" }, - "node_modules/pako": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", - "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==", - "optional": true - }, "node_modules/parse5": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", @@ -3919,12 +3752,11 @@ } }, "node_modules/smoldot": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/smoldot/-/smoldot-1.0.4.tgz", - "integrity": "sha512-N3TazI1C4GGrseFH/piWyZCCCRJTRx2QhDfrUKRT4SzILlW5m8ayZ3QTKICcz1C/536T9cbHHJyP7afxI6Mi1A==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/smoldot/-/smoldot-2.0.1.tgz", + "integrity": "sha512-Wqw2fL/sELQByLSeeTX1Z/d0H4McmphPMx8vh6UZS/bIIDx81oU7s/drmx2iL/ME36uk++YxpRuJey8/MOyfOA==", "optional": true, "dependencies": { - "pako": "^2.0.4", "ws": "^8.8.1" } }, @@ -4629,9 +4461,9 @@ "dev": true }, "@gear-js/api": { - "version": "0.34.0", - "resolved": "https://registry.npmjs.org/@gear-js/api/-/api-0.34.0.tgz", - "integrity": "sha512-clJtAtJJrOZ42CYA33IN0o+fmVOeSkDcMzSYMW99jtA5o49L1LPxMloV3whfahrKZXnPx7X5LTkR30AuC2h1oQ==", + "version": "0.35.1", + "resolved": "https://registry.npmjs.org/@gear-js/api/-/api-0.35.1.tgz", + "integrity": "sha512-ar6LHPoSFa6a54Vy/CSMrTHPVQaxnVXG777xF37r3aT5aJcTqZ7DCgR7YcAeu4bIzoTcPPeD1Wg3sLVQlxjwzw==", "requires": {} }, "@graphql-tools/merge": { @@ -4768,70 +4600,70 @@ "integrity": "sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==" }, "@polkadot/api": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/api/-/api-10.9.1.tgz", - "integrity": "sha512-ND/2UqZBWvtt4PfV03OStTKg0mxmPk4UpMAgJKutdgsz/wP9CYJ1KbjwFgPNekL9JnzbKQsWyQNPVrcw7kQk8A==", - "requires": { - "@polkadot/api-augment": "10.9.1", - "@polkadot/api-base": "10.9.1", - "@polkadot/api-derive": "10.9.1", - "@polkadot/keyring": "^12.3.1", - "@polkadot/rpc-augment": "10.9.1", - "@polkadot/rpc-core": "10.9.1", - "@polkadot/rpc-provider": "10.9.1", - "@polkadot/types": "10.9.1", - "@polkadot/types-augment": "10.9.1", - "@polkadot/types-codec": "10.9.1", - "@polkadot/types-create": "10.9.1", - "@polkadot/types-known": "10.9.1", - "@polkadot/util": "^12.3.1", - "@polkadot/util-crypto": "^12.3.1", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/api/-/api-10.10.1.tgz", + "integrity": "sha512-YHVkmNvjGF4Eg3thAbVhj9UX3SXx+Yxk6yVuzsEcckEudIRHzL2ikIWGCfUprfzSeFNpUCKdJIi1tsxVHtA7Tg==", + "requires": { + "@polkadot/api-augment": "10.10.1", + "@polkadot/api-base": "10.10.1", + "@polkadot/api-derive": "10.10.1", + "@polkadot/keyring": "^12.5.1", + "@polkadot/rpc-augment": "10.10.1", + "@polkadot/rpc-core": "10.10.1", + "@polkadot/rpc-provider": "10.10.1", + "@polkadot/types": "10.10.1", + "@polkadot/types-augment": "10.10.1", + "@polkadot/types-codec": "10.10.1", + "@polkadot/types-create": "10.10.1", + "@polkadot/types-known": "10.10.1", + "@polkadot/util": "^12.5.1", + "@polkadot/util-crypto": "^12.5.1", "eventemitter3": "^5.0.1", "rxjs": "^7.8.1", - "tslib": "^2.5.3" + "tslib": "^2.6.2" } }, "@polkadot/api-augment": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/api-augment/-/api-augment-10.9.1.tgz", - "integrity": "sha512-kRZZvCFVcN4hAH4dJ+Qzfdy27/4EEq3oLDf3ihj0LTVrAezSWcKPGE3EVFy+Mn6Lo4SUc7RVyoKvIUhSk2l4Dg==", - "requires": { - "@polkadot/api-base": "10.9.1", - "@polkadot/rpc-augment": "10.9.1", - "@polkadot/types": "10.9.1", - "@polkadot/types-augment": "10.9.1", - "@polkadot/types-codec": "10.9.1", - "@polkadot/util": "^12.3.1", - "tslib": "^2.5.3" + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/api-augment/-/api-augment-10.10.1.tgz", + "integrity": "sha512-J0r1DT1M5y75iO1iwcpUBokKD3q6b22kWlPfiHEDNFydVw5vm7OTRBk9Njjl8rOnlSzcW/Ya8qWfV/wkrqHxUQ==", + "requires": { + "@polkadot/api-base": "10.10.1", + "@polkadot/rpc-augment": "10.10.1", + "@polkadot/types": "10.10.1", + "@polkadot/types-augment": "10.10.1", + "@polkadot/types-codec": "10.10.1", + "@polkadot/util": "^12.5.1", + "tslib": "^2.6.2" } }, "@polkadot/api-base": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/api-base/-/api-base-10.9.1.tgz", - "integrity": "sha512-Q3m2KzlceMK2kX8bhnUZWk3RT6emmijeeFZZQgCePpEcrSeNjnqG4qjuTPgkveaOkUT8MAoDc5Avuzcc2jlW9g==", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/api-base/-/api-base-10.10.1.tgz", + "integrity": "sha512-joH2Ywxnn+AStkw+JWAdF3i3WJy4NcBYp0SWJM/WqGafWR/FuHnati2pcj/MHzkHT8JkBippmSSJFvsqRhlwcQ==", "requires": { - "@polkadot/rpc-core": "10.9.1", - "@polkadot/types": "10.9.1", - "@polkadot/util": "^12.3.1", + "@polkadot/rpc-core": "10.10.1", + "@polkadot/types": "10.10.1", + "@polkadot/util": "^12.5.1", "rxjs": "^7.8.1", - "tslib": "^2.5.3" + "tslib": "^2.6.2" } }, "@polkadot/api-derive": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/api-derive/-/api-derive-10.9.1.tgz", - "integrity": "sha512-mRud1UZCFIc4Z63qAoGSIHh/foyUYADfy1RQYCmPpeFKfIdCIrHpd7xFdJXTOMYOS0BwlM6u4qli/ZT4XigezQ==", - "requires": { - "@polkadot/api": "10.9.1", - "@polkadot/api-augment": "10.9.1", - "@polkadot/api-base": "10.9.1", - "@polkadot/rpc-core": "10.9.1", - "@polkadot/types": "10.9.1", - "@polkadot/types-codec": "10.9.1", - "@polkadot/util": "^12.3.1", - "@polkadot/util-crypto": "^12.3.1", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/api-derive/-/api-derive-10.10.1.tgz", + "integrity": "sha512-Q9Ibs4eRPqdV8qnRzFPD3dlWNbLHxRqMqNTNPmNQwKPo5m6fcQbZ0UZy3yJ+PI9S4AQHGhsWtfoi5qW8006GHQ==", + "requires": { + "@polkadot/api": "10.10.1", + "@polkadot/api-augment": "10.10.1", + "@polkadot/api-base": "10.10.1", + "@polkadot/rpc-core": "10.10.1", + "@polkadot/types": "10.10.1", + "@polkadot/types-codec": "10.10.1", + "@polkadot/util": "^12.5.1", + "@polkadot/util-crypto": "^12.5.1", "rxjs": "^7.8.1", - "tslib": "^2.5.3" + "tslib": "^2.6.2" } }, "@polkadot/keyring": { @@ -4855,116 +4687,116 @@ } }, "@polkadot/rpc-augment": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/rpc-augment/-/rpc-augment-10.9.1.tgz", - "integrity": "sha512-MaLHkNlyqN20ZRYr6uNd1BZr1OsrnX9qLAmsl0mcrri1vPGRH6VHjfFH1RBLkikpWD82v17g0l2hLwdV1ZHMcw==", - "requires": { - "@polkadot/rpc-core": "10.9.1", - "@polkadot/types": "10.9.1", - "@polkadot/types-codec": "10.9.1", - "@polkadot/util": "^12.3.1", - "tslib": "^2.5.3" + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/rpc-augment/-/rpc-augment-10.10.1.tgz", + "integrity": "sha512-PcvsX8DNV8BNDXXnY2K8F4mE7cWz7fKg8ykXNZTN8XUN6MrI4k/ohv7itYic7X5LaP25ZmQt5UiGyjKDGIELow==", + "requires": { + "@polkadot/rpc-core": "10.10.1", + "@polkadot/types": "10.10.1", + "@polkadot/types-codec": "10.10.1", + "@polkadot/util": "^12.5.1", + "tslib": "^2.6.2" } }, "@polkadot/rpc-core": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/rpc-core/-/rpc-core-10.9.1.tgz", - "integrity": "sha512-ZtA8B8SfXSAwVkBlCcKRHw0eSM7ec/sbiNOM5GasXPeRujUgT7lOwSH2GbUZSqe9RfRDMp6DvO9c2JoGc3LLWw==", - "requires": { - "@polkadot/rpc-augment": "10.9.1", - "@polkadot/rpc-provider": "10.9.1", - "@polkadot/types": "10.9.1", - "@polkadot/util": "^12.3.1", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/rpc-core/-/rpc-core-10.10.1.tgz", + "integrity": "sha512-awfFfJYsVF6W4DrqTj5RP00SSDRNB770FIoe1QE1Op4NcSrfeLpwh54HUJS716f4l5mOSYuvMp+zCbKzt8zKow==", + "requires": { + "@polkadot/rpc-augment": "10.10.1", + "@polkadot/rpc-provider": "10.10.1", + "@polkadot/types": "10.10.1", + "@polkadot/util": "^12.5.1", "rxjs": "^7.8.1", - "tslib": "^2.5.3" + "tslib": "^2.6.2" } }, "@polkadot/rpc-provider": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/rpc-provider/-/rpc-provider-10.9.1.tgz", - "integrity": "sha512-4QzT2QzD+320+eT6b79sGAA85Tt3Bb8fQvse4r5Mom2iiBd2SO81vOhxSAOaIe4GUsw25VzFJmsbe7+OObItdg==", - "requires": { - "@polkadot/keyring": "^12.3.1", - "@polkadot/types": "10.9.1", - "@polkadot/types-support": "10.9.1", - "@polkadot/util": "^12.3.1", - "@polkadot/util-crypto": "^12.3.1", - "@polkadot/x-fetch": "^12.3.1", - "@polkadot/x-global": "^12.3.1", - "@polkadot/x-ws": "^12.3.1", - "@substrate/connect": "0.7.26", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/rpc-provider/-/rpc-provider-10.10.1.tgz", + "integrity": "sha512-VMDWoJgx6/mPHAOT66Sq+Jf2lJABfV/ZUIXtT2k8HjOndbm6oKrFqGEOSSLvB2q4olDee3FkFFxkyW1s6k4JaQ==", + "requires": { + "@polkadot/keyring": "^12.5.1", + "@polkadot/types": "10.10.1", + "@polkadot/types-support": "10.10.1", + "@polkadot/util": "^12.5.1", + "@polkadot/util-crypto": "^12.5.1", + "@polkadot/x-fetch": "^12.5.1", + "@polkadot/x-global": "^12.5.1", + "@polkadot/x-ws": "^12.5.1", + "@substrate/connect": "0.7.33", "eventemitter3": "^5.0.1", - "mock-socket": "^9.2.1", - "nock": "^13.3.1", - "tslib": "^2.5.3" + "mock-socket": "^9.3.1", + "nock": "^13.3.4", + "tslib": "^2.6.2" } }, "@polkadot/types": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-10.9.1.tgz", - "integrity": "sha512-AG33i2ZGGfq7u+5rkAdGrXAQHHl844/Yv+junH5ZzX69xiCoWO1bH/yzDUNBdpki2GlACWvF9nLYh3F2tVF93w==", - "requires": { - "@polkadot/keyring": "^12.3.1", - "@polkadot/types-augment": "10.9.1", - "@polkadot/types-codec": "10.9.1", - "@polkadot/types-create": "10.9.1", - "@polkadot/util": "^12.3.1", - "@polkadot/util-crypto": "^12.3.1", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-10.10.1.tgz", + "integrity": "sha512-Ben62P1tjYEhKag34GBGcLX6NqcFR1VD5nNbWaxgr+t36Jl/tlHs6P9DlbFqQP7Tt9FmGrAYY0m3oTkhjG1NzA==", + "requires": { + "@polkadot/keyring": "^12.5.1", + "@polkadot/types-augment": "10.10.1", + "@polkadot/types-codec": "10.10.1", + "@polkadot/types-create": "10.10.1", + "@polkadot/util": "^12.5.1", + "@polkadot/util-crypto": "^12.5.1", "rxjs": "^7.8.1", - "tslib": "^2.5.3" + "tslib": "^2.6.2" } }, "@polkadot/types-augment": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-10.9.1.tgz", - "integrity": "sha512-OY9/jTMFRFqYdkUnfcGwqMLC64A0Q25bjvCuVQCVjsPFKE3wl0Kt5rNT01eV2UmLXrR6fY0xWbR2w80bLA7CIQ==", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-10.10.1.tgz", + "integrity": "sha512-XRHE75IocXfFE6EADYov3pqXCyBk5SWbiHoZ0+4WYWP9SwMuzsBaAy84NlhLBlkG3+ehIqi0HpAd/qrljJGZbg==", "requires": { - "@polkadot/types": "10.9.1", - "@polkadot/types-codec": "10.9.1", - "@polkadot/util": "^12.3.1", - "tslib": "^2.5.3" + "@polkadot/types": "10.10.1", + "@polkadot/types-codec": "10.10.1", + "@polkadot/util": "^12.5.1", + "tslib": "^2.6.2" } }, "@polkadot/types-codec": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-10.9.1.tgz", - "integrity": "sha512-mJ5OegKGraY1FLvEa8FopRCr3pQrhDkcn5RNOjmgJQozENVeRaxhk0NwxYz7IojFvSDnKnc6lNQfKaaSe5pLHg==", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-10.10.1.tgz", + "integrity": "sha512-ETPG0wzWzt/bDKRQmYbO7CLe/0lUt8VrG6/bECdv+Kye+8Qedba2LZyTWm/9f2ngms8TZ82yI8mPv/mozdtfnw==", "requires": { - "@polkadot/util": "^12.3.1", - "@polkadot/x-bigint": "^12.3.1", - "tslib": "^2.5.3" + "@polkadot/util": "^12.5.1", + "@polkadot/x-bigint": "^12.5.1", + "tslib": "^2.6.2" } }, "@polkadot/types-create": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-10.9.1.tgz", - "integrity": "sha512-OVz50MGTTuiuVnRP/zAx4CTuLioc0hsiwNwqN2lNhmIJGtnQ4Vy/7mQRsIWehiYz6g0Vzzm5B3qWkTXO1NSN5w==", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-10.10.1.tgz", + "integrity": "sha512-7OiLzd+Ter5zrpjP7fDwA1m89kd38VvMVixfOSv8x7ld2pDT+yyyKl14TCwRSWrKWCMtIb6M3iasPhq5cUa7cw==", "requires": { - "@polkadot/types-codec": "10.9.1", - "@polkadot/util": "^12.3.1", - "tslib": "^2.5.3" + "@polkadot/types-codec": "10.10.1", + "@polkadot/util": "^12.5.1", + "tslib": "^2.6.2" } }, "@polkadot/types-known": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/types-known/-/types-known-10.9.1.tgz", - "integrity": "sha512-zCMVWc4pJtkbMFPu72bD4IhvV/gkHXPX3C5uu92WdmCfnn0vEIEsMKWlVXVVvQQZKAqvs/awpqIfrUtEViOGEA==", - "requires": { - "@polkadot/networks": "^12.3.1", - "@polkadot/types": "10.9.1", - "@polkadot/types-codec": "10.9.1", - "@polkadot/types-create": "10.9.1", - "@polkadot/util": "^12.3.1", - "tslib": "^2.5.3" + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/types-known/-/types-known-10.10.1.tgz", + "integrity": "sha512-yRa1lbDRqg3V/zoa0vSwdGOiYTIWktILW8OfkaLDExTu0GZBSbVHZlLAta52XVpA9Zww7mrUUC9+iernOwk//w==", + "requires": { + "@polkadot/networks": "^12.5.1", + "@polkadot/types": "10.10.1", + "@polkadot/types-codec": "10.10.1", + "@polkadot/types-create": "10.10.1", + "@polkadot/util": "^12.5.1", + "tslib": "^2.6.2" } }, "@polkadot/types-support": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/@polkadot/types-support/-/types-support-10.9.1.tgz", - "integrity": "sha512-XsieuLDsszvMZQlleacQBfx07i/JkwQV/UxH9q8Hz7Okmaz9pEVEW1h3ka2/cPuC7a4l32JhaORBUYshBZNdJg==", + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/@polkadot/types-support/-/types-support-10.10.1.tgz", + "integrity": "sha512-Cd2mwk9RG6LlX8X3H0bRY7wCTbZPqU3z38CMFhvNkFDAyjqKjtn8hpS4n8mMrZK2EwCs/MjQH1wb7rtFkaWmJw==", "requires": { - "@polkadot/util": "^12.3.1", - "tslib": "^2.5.3" + "@polkadot/util": "^12.5.1", + "tslib": "^2.6.2" } }, "@polkadot/util": { @@ -4996,159 +4828,57 @@ "@polkadot/x-randomvalues": "12.5.1", "@scure/base": "^1.1.3", "tslib": "^2.6.2" - }, - "dependencies": { - "@polkadot/wasm-bridge": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-bridge/-/wasm-bridge-7.2.2.tgz", - "integrity": "sha512-CgNENd65DVYtackOVXXRA0D1RPoCv5+77IdBCf7kNqu6LeAnR4nfTI6qjaApUdN1xRweUsQjSH7tu7VjkMOA0A==", - "requires": { - "@polkadot/wasm-util": "7.2.2", - "tslib": "^2.6.1" - } - }, - "@polkadot/wasm-crypto": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto/-/wasm-crypto-7.2.2.tgz", - "integrity": "sha512-1ZY1rxUTawYm0m1zylvBMFovNIHYgG2v/XoASNp/EMG5c8FQIxCbhJRaTBA983GVq4lN/IAKREKEp9ZbLLqssA==", - "requires": { - "@polkadot/wasm-bridge": "7.2.2", - "@polkadot/wasm-crypto-asmjs": "7.2.2", - "@polkadot/wasm-crypto-init": "7.2.2", - "@polkadot/wasm-crypto-wasm": "7.2.2", - "@polkadot/wasm-util": "7.2.2", - "tslib": "^2.6.1" - } - }, - "@polkadot/wasm-crypto-asmjs": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-asmjs/-/wasm-crypto-asmjs-7.2.2.tgz", - "integrity": "sha512-wKg+cpsWQCTSVhjlHuNeB/184rxKqY3vaklacbLOMbUXieIfuDBav5PJdzS3yeiVE60TpYaHW4iX/5OYHS82gg==", - "requires": { - "tslib": "^2.6.1" - } - }, - "@polkadot/wasm-crypto-init": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-init/-/wasm-crypto-init-7.2.2.tgz", - "integrity": "sha512-vD4iPIp9x+SssUIWUenxWLPw4BVIwhXHNMpsV81egK990tvpyIxL205/EF5QRb1mKn8WfWcNFm5tYwwh9NdnnA==", - "requires": { - "@polkadot/wasm-bridge": "7.2.2", - "@polkadot/wasm-crypto-asmjs": "7.2.2", - "@polkadot/wasm-crypto-wasm": "7.2.2", - "@polkadot/wasm-util": "7.2.2", - "tslib": "^2.6.1" - } - }, - "@polkadot/wasm-crypto-wasm": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-wasm/-/wasm-crypto-wasm-7.2.2.tgz", - "integrity": "sha512-3efoIB6jA3Hhv6k0YIBwCtlC8gCSWCk+R296yIXRLLr3cGN415KM/PO/d1JIXYI64lbrRzWRmZRhllw3jf6Atg==", - "requires": { - "@polkadot/wasm-util": "7.2.2", - "tslib": "^2.6.1" - } - } } }, "@polkadot/wasm-bridge": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-bridge/-/wasm-bridge-7.2.1.tgz", - "integrity": "sha512-uV/LHREDBGBbHrrv7HTki+Klw0PYZzFomagFWII4lp6Toj/VCvRh5WMzooVC+g/XsBGosAwrvBhoModabyHx+A==", - "peer": true, + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@polkadot/wasm-bridge/-/wasm-bridge-7.2.2.tgz", + "integrity": "sha512-CgNENd65DVYtackOVXXRA0D1RPoCv5+77IdBCf7kNqu6LeAnR4nfTI6qjaApUdN1xRweUsQjSH7tu7VjkMOA0A==", "requires": { - "@polkadot/wasm-util": "7.2.1", - "tslib": "^2.5.0" - }, - "dependencies": { - "@polkadot/wasm-util": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-util/-/wasm-util-7.2.1.tgz", - "integrity": "sha512-FBSn/3aYJzhN0sYAYhHB8y9JL8mVgxLy4M1kUXYbyo+8GLRQEN5rns8Vcb8TAlIzBWgVTOOptYBvxo0oj0h7Og==", - "peer": true, - "requires": { - "tslib": "^2.5.0" - } - } + "@polkadot/wasm-util": "7.2.2", + "tslib": "^2.6.1" } }, "@polkadot/wasm-crypto": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto/-/wasm-crypto-7.2.1.tgz", - "integrity": "sha512-SA2+33S9TAwGhniKgztVN6pxUKpGfN4Tre/eUZGUfpgRkT92wIUT2GpGWQE+fCCqGQgADrNiBcwt6XwdPqMQ4Q==", - "peer": true, - "requires": { - "@polkadot/wasm-bridge": "7.2.1", - "@polkadot/wasm-crypto-asmjs": "7.2.1", - "@polkadot/wasm-crypto-init": "7.2.1", - "@polkadot/wasm-crypto-wasm": "7.2.1", - "@polkadot/wasm-util": "7.2.1", - "tslib": "^2.5.0" - }, - "dependencies": { - "@polkadot/wasm-util": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-util/-/wasm-util-7.2.1.tgz", - "integrity": "sha512-FBSn/3aYJzhN0sYAYhHB8y9JL8mVgxLy4M1kUXYbyo+8GLRQEN5rns8Vcb8TAlIzBWgVTOOptYBvxo0oj0h7Og==", - "peer": true, - "requires": { - "tslib": "^2.5.0" - } - } + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto/-/wasm-crypto-7.2.2.tgz", + "integrity": "sha512-1ZY1rxUTawYm0m1zylvBMFovNIHYgG2v/XoASNp/EMG5c8FQIxCbhJRaTBA983GVq4lN/IAKREKEp9ZbLLqssA==", + "requires": { + "@polkadot/wasm-bridge": "7.2.2", + "@polkadot/wasm-crypto-asmjs": "7.2.2", + "@polkadot/wasm-crypto-init": "7.2.2", + "@polkadot/wasm-crypto-wasm": "7.2.2", + "@polkadot/wasm-util": "7.2.2", + "tslib": "^2.6.1" } }, "@polkadot/wasm-crypto-asmjs": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-asmjs/-/wasm-crypto-asmjs-7.2.1.tgz", - "integrity": "sha512-z/d21bmxyVfkzGsKef/FWswKX02x5lK97f4NPBZ9XBeiFkmzlXhdSnu58/+b1sKsRAGdW/Rn/rTNRDhW0GqCAg==", - "peer": true, + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-asmjs/-/wasm-crypto-asmjs-7.2.2.tgz", + "integrity": "sha512-wKg+cpsWQCTSVhjlHuNeB/184rxKqY3vaklacbLOMbUXieIfuDBav5PJdzS3yeiVE60TpYaHW4iX/5OYHS82gg==", "requires": { - "tslib": "^2.5.0" + "tslib": "^2.6.1" } }, "@polkadot/wasm-crypto-init": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-init/-/wasm-crypto-init-7.2.1.tgz", - "integrity": "sha512-GcEXtwN9LcSf32V9zSaYjHImFw16hCyo2Xzg4GLLDPPeaAAfbFr2oQMgwyDbvBrBjLKHVHjsPZyGhXae831amw==", - "peer": true, - "requires": { - "@polkadot/wasm-bridge": "7.2.1", - "@polkadot/wasm-crypto-asmjs": "7.2.1", - "@polkadot/wasm-crypto-wasm": "7.2.1", - "@polkadot/wasm-util": "7.2.1", - "tslib": "^2.5.0" - }, - "dependencies": { - "@polkadot/wasm-util": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-util/-/wasm-util-7.2.1.tgz", - "integrity": "sha512-FBSn/3aYJzhN0sYAYhHB8y9JL8mVgxLy4M1kUXYbyo+8GLRQEN5rns8Vcb8TAlIzBWgVTOOptYBvxo0oj0h7Og==", - "peer": true, - "requires": { - "tslib": "^2.5.0" - } - } + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-init/-/wasm-crypto-init-7.2.2.tgz", + "integrity": "sha512-vD4iPIp9x+SssUIWUenxWLPw4BVIwhXHNMpsV81egK990tvpyIxL205/EF5QRb1mKn8WfWcNFm5tYwwh9NdnnA==", + "requires": { + "@polkadot/wasm-bridge": "7.2.2", + "@polkadot/wasm-crypto-asmjs": "7.2.2", + "@polkadot/wasm-crypto-wasm": "7.2.2", + "@polkadot/wasm-util": "7.2.2", + "tslib": "^2.6.1" } }, "@polkadot/wasm-crypto-wasm": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-wasm/-/wasm-crypto-wasm-7.2.1.tgz", - "integrity": "sha512-DqyXE4rSD0CVlLIw88B58+HHNyrvm+JAnYyuEDYZwCvzUWOCNos/DDg9wi/K39VAIsCCKDmwKqkkfIofuOj/lA==", - "peer": true, + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-wasm/-/wasm-crypto-wasm-7.2.2.tgz", + "integrity": "sha512-3efoIB6jA3Hhv6k0YIBwCtlC8gCSWCk+R296yIXRLLr3cGN415KM/PO/d1JIXYI64lbrRzWRmZRhllw3jf6Atg==", "requires": { - "@polkadot/wasm-util": "7.2.1", - "tslib": "^2.5.0" - }, - "dependencies": { - "@polkadot/wasm-util": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-util/-/wasm-util-7.2.1.tgz", - "integrity": "sha512-FBSn/3aYJzhN0sYAYhHB8y9JL8mVgxLy4M1kUXYbyo+8GLRQEN5rns8Vcb8TAlIzBWgVTOOptYBvxo0oj0h7Og==", - "peer": true, - "requires": { - "tslib": "^2.5.0" - } - } + "@polkadot/wasm-util": "7.2.2", + "tslib": "^2.6.1" } }, "@polkadot/wasm-util": { @@ -5653,22 +5383,13 @@ } }, "@substrate/connect": { - "version": "0.7.26", - "resolved": "https://registry.npmjs.org/@substrate/connect/-/connect-0.7.26.tgz", - "integrity": "sha512-uuGSiroGuKWj1+38n1kY5HReer5iL9bRwPCzuoLtqAOmI1fGI0hsSI2LlNQMAbfRgr7VRHXOk5MTuQf5ulsFRw==", + "version": "0.7.33", + "resolved": "https://registry.npmjs.org/@substrate/connect/-/connect-0.7.33.tgz", + "integrity": "sha512-1B984/bmXVQvTT9oV3c3b7215lvWmulP9rfP3T3Ri+OU3uIsyCzYw0A+XG6J8/jgO2FnroeNIBWlgoLaUM1uzw==", "optional": true, "requires": { "@substrate/connect-extension-protocol": "^1.0.1", - "eventemitter3": "^4.0.7", - "smoldot": "1.0.4" - }, - "dependencies": { - "eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "optional": true - } + "smoldot": "2.0.1" } }, "@substrate/connect-extension-protocol": { @@ -5691,9 +5412,9 @@ } }, "@types/bn.js": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.2.tgz", - "integrity": "sha512-dkpZu0szUtn9UXTmw+e0AJFd4D2XAxDnsCLdc05SfqpqzPEBft8eQr8uaFitfo/dUUOZERaLec2hHMG87A4Dxg==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.3.tgz", + "integrity": "sha512-wT1B4iIO82ecXkdN6waCK8Ou7E71WU+mP1osDA5Q8c6Ur+ozU2vIKUIhSpUr6uE5L2YHocKS1Z2jG2fBC1YVeg==", "requires": { "@types/node": "*" } @@ -6917,11 +6638,6 @@ "json-buffer": "3.0.1" } }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, "lodash.defaults": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", @@ -7034,13 +6750,12 @@ "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" }, "nock": { - "version": "13.3.3", - "resolved": "https://registry.npmjs.org/nock/-/nock-13.3.3.tgz", - "integrity": "sha512-z+KUlILy9SK/RjpeXDiDUEAq4T94ADPHE3qaRkf66mpEhzc/ytOMm3Bwdrbq6k1tMWkbdujiKim3G2tfQARuJw==", + "version": "13.3.6", + "resolved": "https://registry.npmjs.org/nock/-/nock-13.3.6.tgz", + "integrity": "sha512-lT6YuktKroUFM+27mubf2uqQZVy2Jf+pfGzuh9N6VwdHlFoZqvi4zyxFTVR1w/ChPqGY6yxGehHp6C3wqCASCw==", "requires": { "debug": "^4.1.0", "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.21", "propagate": "^2.0.0" }, "dependencies": { @@ -7133,12 +6848,6 @@ "resolved": "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz", "integrity": "sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ==" }, - "pako": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", - "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==", - "optional": true - }, "parse5": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", @@ -7412,12 +7121,11 @@ } }, "smoldot": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/smoldot/-/smoldot-1.0.4.tgz", - "integrity": "sha512-N3TazI1C4GGrseFH/piWyZCCCRJTRx2QhDfrUKRT4SzILlW5m8ayZ3QTKICcz1C/536T9cbHHJyP7afxI6Mi1A==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/smoldot/-/smoldot-2.0.1.tgz", + "integrity": "sha512-Wqw2fL/sELQByLSeeTX1Z/d0H4McmphPMx8vh6UZS/bIIDx81oU7s/drmx2iL/ME36uk++YxpRuJey8/MOyfOA==", "optional": true, "requires": { - "pako": "^2.0.4", "ws": "^8.8.1" } }, diff --git a/package.json b/package.json index 26b6ee7..08a92b9 100644 --- a/package.json +++ b/package.json @@ -12,8 +12,8 @@ "start": "npm run migration:apply && node lib/main.js" }, "dependencies": { - "@gear-js/api": "^0.34.0", - "@polkadot/api": "^10.9.1", + "@gear-js/api": "^0.35.1", + "@polkadot/api": "^10.10.1", "@subsquid/archive-registry": "^3.1.0", "@subsquid/graphql-server": "^3.3.2", "@subsquid/ss58": "^0.1.4", @@ -25,7 +25,7 @@ "typeorm": "^0.3.17" }, "devDependencies": { - "@polkadot/types": "^10.9.1", + "@polkadot/types": "^10.10.1", "@subsquid/substrate-metadata-explorer": "^1.1.2", "@subsquid/substrate-typegen": "^2.2.1", "@subsquid/typeorm-codegen": "^0.3.3", diff --git a/src/config.ts b/src/config.ts index 93172e0..4130f52 100644 --- a/src/config.ts +++ b/src/config.ts @@ -13,12 +13,14 @@ export default { nfts: { cb: getEnv('NFT_CB'), vit: getEnv('NFT_VIT'), + draft: getEnv('NFT_DRAFT'), vitMigratedAtBlock: getEnv('VIT_MIGRATED_AT_BLOCK'), vitMigratedTS: Number(getEnv('VIT_MIGRATED_TS')), readMigrateNfts: Boolean(getEnv('READ_MIGRATED_NFTS', '')), }, archive: { uri: getEnv('ARCHIVE_URI'), + fromBlock: Number(getEnv('INDEX_FROM_BLOCK', '0')), }, node: { address: getEnv('NODE_ADDRESS'), diff --git a/src/handlers/draft-nft.ts b/src/handlers/draft-nft.ts new file mode 100644 index 0000000..3d64be7 --- /dev/null +++ b/src/handlers/draft-nft.ts @@ -0,0 +1,55 @@ +import { ProgramMetadata } from '@gear-js/api'; +import { BatchState } from '../batchState'; +import { readFileSync } from 'fs'; +import { DraftNftEvent } from '../types'; +import config from '../config'; +import { getCollectionDescription, getCollectionName } from './helpers'; + +const meta = ProgramMetadata.from(readFileSync('./assets/draft-nft.meta.txt', 'utf8')); + +export async function draftNftHandler( + state: BatchState, + payload: string, + source: string, + blockNumber: bigint, + ts: Date, +) { + const data = meta.createType(meta.types.handle.output, payload); + if (data.isMinted) { + const { owner, mediaUrl, tokenId, attribUrl } = data.asMinted; + let collection = await state.getCollection(source); + if (!collection) { + const [collectionName, collectionDesc] = await Promise.all([ + getCollectionName(meta, config.nfts.draft, '0x00'), + getCollectionDescription(meta, config.nfts.draft, '0x01'), + ]); + collection = state.newCollection(source, collectionName, collectionDesc); + } + + await state.mintNft( + tokenId.toString(), + collection, + owner.toHex(), + [attribUrl.toString()], + collection.description, + collection.name + ' - ' + tokenId.toString(), + mediaUrl.toString(), + blockNumber, + ts, + data.isMinted, + ); + } else if (data.isTransferred) { + const { tokenId, owner, recipient } = data.asTransferred; + const collection = await state.getCollection(source); + await state.transferNft(tokenId.toString(), collection, owner.toHex(), recipient.toHex(), ts, blockNumber); + } else if (data.isBurnt) { + const { tokenId } = data.asBurnt; + await state.burnNft(tokenId.toString(), source); + } else if (data.isApproved) { + const { account, tokenId } = data.asApproved; + await state.approveAccount(tokenId.toString(), source, account.toHex()); + } else if (data.isApprovalRevoked) { + const { tokenId } = data.asApprovalRevoked; + await state.revokeApprove(tokenId.toString(), source); + } +} diff --git a/src/handlers/helpers.ts b/src/handlers/helpers.ts index a0f29ab..baaa354 100644 --- a/src/handlers/helpers.ts +++ b/src/handlers/helpers.ts @@ -3,8 +3,7 @@ import { StateReply } from '../types'; import { HumanTypesRepr } from '@gear-js/api'; import { gearReadStateReq } from '../utils'; -export async function getCollectionName(meta: ProgramMetadata, programId: string) { - const payload = '0x07'; +export async function getCollectionName(meta: ProgramMetadata, programId: string, payload = '0x07') { const result = await gearReadStateReq(programId, payload); const data = meta.createType((meta.types.state as HumanTypesRepr).output, result); if (data.isName) { @@ -13,8 +12,7 @@ export async function getCollectionName(meta: ProgramMetadata, programId: string throw new Error('Invalid state'); } -export async function getCollectionDescription(meta: ProgramMetadata, programId: string) { - const payload = '0x08'; +export async function getCollectionDescription(meta: ProgramMetadata, programId: string, payload = '0x08') { const result = await gearReadStateReq(programId, payload); const data = meta.createType((meta.types.state as HumanTypesRepr).output, result); if (data.isDescription) { diff --git a/src/main.ts b/src/main.ts index 0cc7488..0e14fb4 100644 --- a/src/main.ts +++ b/src/main.ts @@ -5,6 +5,7 @@ import config from './config'; import { BatchState } from './batchState'; import { cbNftHandler } from './handlers/cb-nft'; import { readMigratedNfts } from './handlers/vit-nft'; +import { draftNftHandler } from './handlers/draft-nft'; const programs = [config.nfts.cb, config.nfts.vit]; @@ -37,6 +38,8 @@ processor.run(new TypeormDatabase(), async (ctx) => { if (programs.includes(source)) { await cbNftHandler(state, payload, source, blockNumber, ts); + } else if (source === config.nfts.draft) { + await draftNftHandler(state, payload, source, blockNumber, ts); } } } diff --git a/src/processor.ts b/src/processor.ts index f85f5f4..57c8c41 100644 --- a/src/processor.ts +++ b/src/processor.ts @@ -19,7 +19,7 @@ export const processor = new SubstrateBatchProcessor() }, }, } as const) - .setBlockRange({ from: 513000 }); + .setBlockRange({ from: config.archive.fromBlock }); export type Item = BatchProcessorItem; export type EventItem = BatchProcessorEventItem; diff --git a/src/types/draft-nft.ts b/src/types/draft-nft.ts new file mode 100644 index 0000000..fbb1cef --- /dev/null +++ b/src/types/draft-nft.ts @@ -0,0 +1,38 @@ +import { Enum, Text, u128 } from '@polkadot/types'; +import { Hash } from '@polkadot/types/interfaces'; + +export interface DraftNftEvent extends Enum { + isMinted: boolean; + asMinted: { + owner: Hash; + tokenId: u128; + mediaUrl: Text; + attribUrl: Text; + }; + isTransferred: boolean; + asTransferred: { + owner: Hash; + recipient: Hash; + tokenId: u128; + }; + isBurnt: boolean; + asBurnt: { + tokenId: u128; + }; + isApproved: boolean; + asApproved: { + account: Hash; + tokenId: u128; + }; + isApprovalRevoked: boolean; + asApprovalRevoked: { + tokenId: u128; + }; +} + +export interface DragtNftStateReply extends Enum { + isName: boolean; + asName: Text; + isDescription: boolean; + asDescription: Text; +} diff --git a/src/types/index.ts b/src/types/index.ts index 9095c20..46ce105 100644 --- a/src/types/index.ts +++ b/src/types/index.ts @@ -1,3 +1,4 @@ export * from './events'; export * from './cb-nft'; export * from './vit.nft'; +export * from './draft-nft';