diff --git a/.nvmrc b/.nvmrc index 48082f72f0..b6a7d89c68 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -12 +16 diff --git a/package.json b/package.json index db4b83b154..b56108a420 100644 --- a/package.json +++ b/package.json @@ -97,9 +97,9 @@ "@polkadot/api-base": "^8.12.1", "@polkadot/api-contract": "^8.12.1", "@polkadot/api-derive": "^8.12.1", - "@polkadot/hw-ledger": "^10.0.1", - "@polkadot/keyring": "^10.0.1", - "@polkadot/networks": "^10.0.1", + "@polkadot/hw-ledger": "^10.0.2", + "@polkadot/keyring": "^10.0.2", + "@polkadot/networks": "^10.0.2", "@polkadot/phishing": "^0.16.2", "@polkadot/rpc-augment": "^8.12.1", "@polkadot/rpc-core": "^8.12.1", @@ -110,8 +110,8 @@ "@polkadot/types-create": "^8.12.1", "@polkadot/types-known": "^8.12.1", "@polkadot/types-support": "^8.12.1", - "@polkadot/util": "^10.0.1", - "@polkadot/util-crypto": "^10.0.1", + "@polkadot/util": "^10.0.2", + "@polkadot/util-crypto": "^10.0.2", "@polkadot/wasm-crypto": "^6.2.3", "babel-core": "^7.0.0-bridge.0", "styled-components": "^5.3.1", diff --git a/packages/apps-config/package.json b/packages/apps-config/package.json index 11885e638a..6240d2a35a 100644 --- a/packages/apps-config/package.json +++ b/packages/apps-config/package.json @@ -33,10 +33,10 @@ "@phala/typedefs": "0.2.30", "@polkadot/api": "^8.12.1", "@polkadot/api-derive": "^8.12.1", - "@polkadot/networks": "^10.0.1", + "@polkadot/networks": "^10.0.2", "@polkadot/types": "^8.12.1", - "@polkadot/util": "^10.0.1", - "@polkadot/x-fetch": "^10.0.1", + "@polkadot/util": "^10.0.2", + "@polkadot/x-fetch": "^10.0.2", "@polymathnetwork/polymesh-types": "0.0.2", "@snowfork/snowbridge-types": "0.2.7", "@sora-substrate/type-definitions": "1.9.13", diff --git a/packages/apps-config/src/ci/check.ts b/packages/apps-config/src/ci/check.ts deleted file mode 100644 index 0fa4959f63..0000000000 --- a/packages/apps-config/src/ci/check.ts +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright 2017-2022 @polkadot/apps-config authors & contributors -// SPDX-License-Identifier: Apache-2.0 - -import fs from 'fs'; - -import { ApiPromise, WsProvider } from '@polkadot/api'; -import { assert, isError } from '@polkadot/util'; - -import { typesBundle, typesChain } from '../api'; -import { fetchJson } from './fetch'; - -interface DnsResponse { - Answer?: { name: string }[]; - Question: { name: string }[]; -} - -const TICK = '`'; - -export function checkEndpoint (issueFile: string, failures: string[]): (name: string, ws: string) => Promise { - return async (name: string, ws: string): Promise => { - const [,, hostWithPort] = ws.split('/'); - const [host] = hostWithPort.split(':'); - const json = await fetchJson(`https://dns.google/resolve?name=${host}`); - - let provider: WsProvider | null = null; - let api: ApiPromise | null = null; - let timerId: NodeJS.Timeout | null = null; - - try { - assert(json.Answer, `No DNS entry for ${host}`); - - provider = new WsProvider(ws, false); - api = new ApiPromise({ - provider, - throwOnConnect: true, - throwOnUnknown: false, - typesBundle, - typesChain - }); - - setTimeout((): void => { - provider && - provider - .connect() - .catch(() => undefined); - }, 1000); - - await Promise.race([ - // eslint-disable-next-line promise/param-names - new Promise((_, reject): void => { - timerId = setTimeout((): void => { - timerId = null; - reject(new Error(`Timeout connecting to ${ws}`)); - }, 30_000); - }), - api.isReadyOrError - .then((a) => a.rpc.chain.getBlock()) - .then((b) => console.log(b.toHuman())) - ]); - } catch (error) { - if (isError(error) && failures.some((f) => (error as Error).message.includes(f))) { - process.env.CI_LOG && fs.appendFileSync(issueFile, `\n${TICK}${name} @ ${ws} ${error.message}${TICK}\n`); - - throw error; - } - - console.error(JSON.stringify(error)); - } finally { - if (timerId) { - clearTimeout(timerId); - } - - if (provider) { - try { - if (api) { - await api.disconnect(); - } else { - await provider.disconnect(); - } - } catch { - // ignore - } - } - } - - return Promise.resolve(true); - }; -} diff --git a/packages/apps-config/src/ci/fetch.ts b/packages/apps-config/src/ci/fetch.ts index 93e8267da1..530bb7c057 100644 --- a/packages/apps-config/src/ci/fetch.ts +++ b/packages/apps-config/src/ci/fetch.ts @@ -3,6 +3,9 @@ import { fetch } from '@polkadot/x-fetch'; +// this is also in @polkadot/phishing - we may want to expose it +// inside x-fetch at some point in the future... + // a fetch with a 2s timeout async function fetchWithTimeout (url: string, timeout = 2000): Promise { const controller = new AbortController(); @@ -29,10 +32,10 @@ async function fetchWithTimeout (url: string, timeout = 2000): Promise } } -export function fetchJson (url: string, timeout = 2000): Promise { +export function fetchJson (url: string, timeout?: number): Promise { return fetchWithTimeout(url, timeout).then((r) => r.json()); } -export function fetchText (url: string, timeout = 2000): Promise { +export function fetchText (url: string, timeout?: number): Promise { return fetchWithTimeout(url, timeout).then((r) => r.text()); } diff --git a/packages/apps-config/src/ci/runner.ts b/packages/apps-config/src/ci/runner.ts index e46ccd079d..5acec4d253 100644 --- a/packages/apps-config/src/ci/runner.ts +++ b/packages/apps-config/src/ci/runner.ts @@ -1,18 +1,101 @@ // Copyright 2017-2022 @polkadot/apps-config authors & contributors // SPDX-License-Identifier: Apache-2.0 -import { isString } from '@polkadot/util'; +import fs from 'fs'; +import { ApiPromise, WsProvider } from '@polkadot/api'; +import { assert, isError, isString } from '@polkadot/util'; + +import { typesBundle, typesChain } from '../api'; import { createWsEndpoints } from '../endpoints'; -import { checkEndpoint } from './check'; +import { fetchJson } from './fetch'; interface Endpoint { name: string; ws: string; } +interface DnsResponse { + Answer?: { name: string }[]; + Question: { name: string }[]; +} + +const TICK = '`'; + +function createChecker (issueFile: string, failures: string[]): (name: string, ws: string) => Promise { + return async (name: string, ws: string): Promise => { + const [,, hostWithPort] = ws.split('/'); + const [host] = hostWithPort.split(':'); + const json = await fetchJson(`https://dns.google/resolve?name=${host}`); + + let provider: WsProvider | null = null; + let api: ApiPromise | null = null; + let timerId: NodeJS.Timeout | null = null; + let isOk = true; + + try { + assert(json.Answer, `No DNS entry for ${host}`); + + provider = new WsProvider(ws, false); + api = new ApiPromise({ + provider, + throwOnConnect: true, + throwOnUnknown: false, + typesBundle, + typesChain + }); + + setTimeout((): void => { + provider && + provider + .connect() + .catch(() => undefined); + }, 1000); + + await Promise.race([ + // eslint-disable-next-line promise/param-names + new Promise((_, reject): void => { + timerId = setTimeout((): void => { + timerId = null; + reject(new Error(`Timeout connecting to ${ws}`)); + }, 30_000); + }), + api.isReadyOrError + .then((a) => a.rpc.chain.getBlock()) + .then((b) => console.log(`>>> ${name} @ ${ws}`, b.toHuman())) + ]); + } catch (error) { + if (isError(error) && failures.some((f) => (error as Error).message.includes(f))) { + process.env.CI_LOG && fs.appendFileSync(issueFile, `\n${TICK}${name} @ ${ws} ${error.message}${TICK}\n`); + + isOk = false; + } + + console.error(JSON.stringify(error)); + } finally { + if (timerId) { + clearTimeout(timerId); + } + + if (provider) { + try { + if (api) { + await api.disconnect(); + } else { + await provider.disconnect(); + } + } catch { + // ignore + } + } + } + + return isOk; + }; +} + export function checkEndpoints (issueFile: string, failures: string[]): void { - const checker = checkEndpoint(issueFile, failures); + const checker = createChecker(issueFile, failures); it.each( createWsEndpoints() @@ -29,9 +112,7 @@ export function checkEndpoints (issueFile: string, failures: string[]): void { ws: value })) .filter((v): v is Endpoint => !!v.ws) - )('%name @ %$ws', ({ name, ws }): Promise => { - console.error(`>>> ${name} @ ${ws}`); - - return checker(name, ws).then((r) => expect(r).toBe(true)); + )('%name @ %$ws', async ({ name, ws }): Promise => { + expect(await checker(name, ws)).toBe(true); }); } diff --git a/packages/page-accounts/package.json b/packages/page-accounts/package.json index d55e722e10..641f4d7531 100644 --- a/packages/page-accounts/package.json +++ b/packages/page-accounts/package.json @@ -14,11 +14,11 @@ "version": "0.116.2-94-x", "dependencies": { "@babel/runtime": "^7.18.6", - "@polkadot/hw-ledger": "^10.0.1", + "@polkadot/hw-ledger": "^10.0.2", "@polkadot/phishing": "^0.16.2", "@polkadot/react-components": "^0.116.2-94-x", "@polkadot/react-hooks": "^0.116.2-94-x", - "@polkadot/util": "^10.0.1", + "@polkadot/util": "^10.0.2", "@polkadot/vanitygen": "^0.51.15", "detect-browser": "^5.3.0", "file-saver": "^2.0.5" diff --git a/packages/react-components/package.json b/packages/react-components/package.json index bcde6d039e..c57cac3042 100644 --- a/packages/react-components/package.json +++ b/packages/react-components/package.json @@ -17,15 +17,15 @@ "@fortawesome/fontawesome-svg-core": "^6.1.1", "@fortawesome/free-solid-svg-icons": "^6.1.1", "@fortawesome/react-fontawesome": "^0.1.19", - "@polkadot/keyring": "^10.0.1", + "@polkadot/keyring": "^10.0.2", "@polkadot/react-api": "^0.116.2-94-x", "@polkadot/react-identicon": "^2.8.1", "@polkadot/react-qr": "^2.8.1", "@polkadot/react-query": "^0.116.2-94-x", "@polkadot/ui-keyring": "^2.8.1", "@polkadot/ui-settings": "^2.8.1", - "@polkadot/util": "^10.0.1", - "@polkadot/util-crypto": "^10.0.1", + "@polkadot/util": "^10.0.2", + "@polkadot/util-crypto": "^10.0.2", "chart.js": "^3.8.0", "codeflask": "^1.4.1", "i18next": "^21.8.11", diff --git a/packages/react-hooks/package.json b/packages/react-hooks/package.json index 88532a709d..ec05ce3ce7 100644 --- a/packages/react-hooks/package.json +++ b/packages/react-hooks/package.json @@ -14,7 +14,7 @@ "version": "0.116.2-94-x", "dependencies": { "@babel/runtime": "^7.18.6", - "@polkadot/hw-ledger": "^10.0.1", + "@polkadot/hw-ledger": "^10.0.2", "is-ipfs": "6.0.2" } } diff --git a/packages/react-signer/package.json b/packages/react-signer/package.json index 9bd661bc31..599f71019e 100644 --- a/packages/react-signer/package.json +++ b/packages/react-signer/package.json @@ -14,7 +14,7 @@ "version": "0.116.2-94-x", "dependencies": { "@babel/runtime": "^7.18.6", - "@polkadot/hw-ledger": "^10.0.1", + "@polkadot/hw-ledger": "^10.0.2", "@polkadot/react-components": "^0.116.2-94-x" } } diff --git a/yarn.lock b/yarn.lock index f0b4804f64..04652b53ed 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2737,12 +2737,12 @@ __metadata: resolution: "@polkadot/app-accounts@workspace:packages/page-accounts" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/hw-ledger": ^10.0.1 + "@polkadot/hw-ledger": ^10.0.2 "@polkadot/phishing": ^0.16.2 "@polkadot/react-components": ^0.116.2-94-x "@polkadot/react-hooks": ^0.116.2-94-x "@polkadot/test-support": 0.116.2-94-x - "@polkadot/util": ^10.0.1 + "@polkadot/util": ^10.0.2 "@polkadot/vanitygen": ^0.51.15 detect-browser: ^5.3.0 file-saver: ^2.0.5 @@ -3052,10 +3052,10 @@ __metadata: "@phala/typedefs": 0.2.30 "@polkadot/api": ^8.12.1 "@polkadot/api-derive": ^8.12.1 - "@polkadot/networks": ^10.0.1 + "@polkadot/networks": ^10.0.2 "@polkadot/types": ^8.12.1 - "@polkadot/util": ^10.0.1 - "@polkadot/x-fetch": ^10.0.1 + "@polkadot/util": ^10.0.2 + "@polkadot/x-fetch": ^10.0.2 "@polymathnetwork/polymesh-types": 0.0.2 "@snowfork/snowbridge-types": 0.2.7 "@sora-substrate/type-definitions": 1.9.13 @@ -3290,58 +3290,58 @@ __metadata: languageName: node linkType: hard -"@polkadot/hw-ledger-transports@npm:10.0.1": - version: 10.0.1 - resolution: "@polkadot/hw-ledger-transports@npm:10.0.1" +"@polkadot/hw-ledger-transports@npm:10.0.2": + version: 10.0.2 + resolution: "@polkadot/hw-ledger-transports@npm:10.0.2" dependencies: "@babel/runtime": ^7.18.6 "@ledgerhq/hw-transport": ^6.27.1 "@ledgerhq/hw-transport-node-hid-singleton": ^6.27.2 "@ledgerhq/hw-transport-webhid": ^6.27.1 "@ledgerhq/hw-transport-webusb": ^6.27.1 - "@polkadot/util": 10.0.1 + "@polkadot/util": 10.0.2 dependenciesMeta: "@ledgerhq/hw-transport-node-hid-singleton": optional: true - checksum: f0cc2f1bb407c5a715cb0977d74f5da2ac3dd326e0b4380f606a5e1babdc15c7398860c069887bbc9932f540cc3a8b4313899b864f08549c4ec1a4b9c3b8af03 + checksum: c7694eb9ce6a05771b8670b4bc49c4603c9939f417e407cd1fea669fcf358fa9d34f0703bdb7e159bda583dc367e9848b733ac588500ed99425fecb1a2700f30 languageName: node linkType: hard -"@polkadot/hw-ledger@npm:^10.0.1": - version: 10.0.1 - resolution: "@polkadot/hw-ledger@npm:10.0.1" +"@polkadot/hw-ledger@npm:^10.0.2": + version: 10.0.2 + resolution: "@polkadot/hw-ledger@npm:10.0.2" dependencies: "@babel/runtime": ^7.18.6 "@ledgerhq/hw-transport": ^6.27.1 - "@polkadot/hw-ledger-transports": 10.0.1 - "@polkadot/util": 10.0.1 + "@polkadot/hw-ledger-transports": 10.0.2 + "@polkadot/util": 10.0.2 "@zondax/ledger-substrate": ^0.32.0 - checksum: 384f53e24122d21f9a92ae2a93ea0d3760bdaefc5b192e672a8d03af8be373a8742783c4af23ad6e56fa16cc88de72b182811bc62185ea814baed42b94aab6d0 + checksum: d86bf0883b40c8e6581a56e2af2d320ce7bbc4916d48602b2ce8f6d47940d3c9613db24d891171658567e3382a1216a220a9d78e448b23ef261c3e87baa15fd1 languageName: node linkType: hard -"@polkadot/keyring@npm:^10.0.1": - version: 10.0.1 - resolution: "@polkadot/keyring@npm:10.0.1" +"@polkadot/keyring@npm:^10.0.2": + version: 10.0.2 + resolution: "@polkadot/keyring@npm:10.0.2" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/util": 10.0.1 - "@polkadot/util-crypto": 10.0.1 + "@polkadot/util": 10.0.2 + "@polkadot/util-crypto": 10.0.2 peerDependencies: - "@polkadot/util": 10.0.1 - "@polkadot/util-crypto": 10.0.1 - checksum: aebf235e039267619891fa33b19ea91ba851355f2740ffca73c088b1f98babd334a51553cd2437718b65c4b8911f91db6b9b529f7a5dbdb2bb2f60118e4a31a0 + "@polkadot/util": 10.0.2 + "@polkadot/util-crypto": 10.0.2 + checksum: 69b4ab52f9b57f42195fcfb4141f70ff4a52a7dc0ad1f17627535d120a2a01bca01a632b79c7908d289da9999cb5d96273b5332e80c014c3781fb88ac0a70b6d languageName: node linkType: hard -"@polkadot/networks@npm:^10.0.1": - version: 10.0.1 - resolution: "@polkadot/networks@npm:10.0.1" +"@polkadot/networks@npm:^10.0.2": + version: 10.0.2 + resolution: "@polkadot/networks@npm:10.0.2" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/util": 10.0.1 + "@polkadot/util": 10.0.2 "@substrate/ss58-registry": ^1.23.0 - checksum: 136c17155364a32c6d43c1cab9263fc38e691a9da35e6419934a09d6614eaa9521778fe9a1afe008f15b4cbf0a7fff0fee2322169232c6fcdb49396bbca0d075 + checksum: d8ab6c706f3059e925cadfe9801c097c657bb8f41293514fca7fd7edb20b0bae941d2cd1ecd24615d68e626b751b13ba3fe47d916a8968225771d0f936e7c043 languageName: node linkType: hard @@ -3379,15 +3379,15 @@ __metadata: "@fortawesome/fontawesome-svg-core": ^6.1.1 "@fortawesome/free-solid-svg-icons": ^6.1.1 "@fortawesome/react-fontawesome": ^0.1.19 - "@polkadot/keyring": ^10.0.1 + "@polkadot/keyring": ^10.0.2 "@polkadot/react-api": ^0.116.2-94-x "@polkadot/react-identicon": ^2.8.1 "@polkadot/react-qr": ^2.8.1 "@polkadot/react-query": ^0.116.2-94-x "@polkadot/ui-keyring": ^2.8.1 "@polkadot/ui-settings": ^2.8.1 - "@polkadot/util": ^10.0.1 - "@polkadot/util-crypto": ^10.0.1 + "@polkadot/util": ^10.0.2 + "@polkadot/util-crypto": ^10.0.2 "@types/codeflask": ^1.4.3 "@types/owasp-password-strength-test": ^1.3.0 chart.js: ^3.8.0 @@ -3420,7 +3420,7 @@ __metadata: resolution: "@polkadot/react-hooks@workspace:packages/react-hooks" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/hw-ledger": ^10.0.1 + "@polkadot/hw-ledger": ^10.0.2 is-ipfs: 6.0.2 languageName: unknown linkType: soft @@ -3495,7 +3495,7 @@ __metadata: resolution: "@polkadot/react-signer@workspace:packages/react-signer" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/hw-ledger": ^10.0.1 + "@polkadot/hw-ledger": ^10.0.2 "@polkadot/react-components": ^0.116.2-94-x languageName: unknown linkType: soft @@ -3683,39 +3683,39 @@ __metadata: languageName: node linkType: hard -"@polkadot/util-crypto@npm:^10.0.1": - version: 10.0.1 - resolution: "@polkadot/util-crypto@npm:10.0.1" +"@polkadot/util-crypto@npm:^10.0.2": + version: 10.0.2 + resolution: "@polkadot/util-crypto@npm:10.0.2" dependencies: "@babel/runtime": ^7.18.6 "@noble/hashes": 1.1.2 "@noble/secp256k1": 1.6.0 - "@polkadot/networks": 10.0.1 - "@polkadot/util": 10.0.1 + "@polkadot/networks": 10.0.2 + "@polkadot/util": 10.0.2 "@polkadot/wasm-crypto": ^6.2.3 - "@polkadot/x-bigint": 10.0.1 - "@polkadot/x-randomvalues": 10.0.1 + "@polkadot/x-bigint": 10.0.2 + "@polkadot/x-randomvalues": 10.0.2 "@scure/base": 1.1.1 ed2curve: ^0.3.0 tweetnacl: ^1.0.3 peerDependencies: - "@polkadot/util": 10.0.1 - checksum: 2ba98e39a874769ddcd8388f2b3edddcdf41aea00127f82b1d1511f655989bffd37c30da3d5079a339457abf32375812ddc61ccff65241f58e18e87ac1ee0693 + "@polkadot/util": 10.0.2 + checksum: 472e5678fcd9e6ed0bc39f203af56d62dc82f1dcb708c5cd0678fd85e3407090a335f70d16e2afb42136d9e007cc190057bede8ac5f9c772e2c395cddf9c0dec languageName: node linkType: hard -"@polkadot/util@npm:^10.0.1": - version: 10.0.1 - resolution: "@polkadot/util@npm:10.0.1" +"@polkadot/util@npm:^10.0.2": + version: 10.0.2 + resolution: "@polkadot/util@npm:10.0.2" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/x-bigint": 10.0.1 - "@polkadot/x-global": 10.0.1 - "@polkadot/x-textdecoder": 10.0.1 - "@polkadot/x-textencoder": 10.0.1 + "@polkadot/x-bigint": 10.0.2 + "@polkadot/x-global": 10.0.2 + "@polkadot/x-textdecoder": 10.0.2 + "@polkadot/x-textencoder": 10.0.2 "@types/bn.js": ^5.1.0 bn.js: ^5.2.1 - checksum: 039fe5450158554eed5e519f8fcb1fd9a7c387307dda16fd728d39b8bf63991ff0add0e538f50dd91fe9e19f138eb95505be2d010afe752bbb12018d6719cce8 + checksum: dbcc331da2e3383225266ae00163d73641fdecaa3e2b994df62d77a268d86dc3c0b725836b7073bd5673707974b0a21f929a6bac6a6bb3e213b5967053c96c0a languageName: node linkType: hard @@ -3813,25 +3813,25 @@ __metadata: languageName: node linkType: hard -"@polkadot/x-bigint@npm:10.0.1, @polkadot/x-bigint@npm:^10.0.1": - version: 10.0.1 - resolution: "@polkadot/x-bigint@npm:10.0.1" +"@polkadot/x-bigint@npm:10.0.2, @polkadot/x-bigint@npm:^10.0.1": + version: 10.0.2 + resolution: "@polkadot/x-bigint@npm:10.0.2" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/x-global": 10.0.1 - checksum: b6d0bad30d76ac0d1978e941a735571bdf765597d0af11fad65aed9d21d0cb3ecdc359aaecd169bf11791fb61e4c150a85f9760c0c33dead3a62b0382897385c + "@polkadot/x-global": 10.0.2 + checksum: 77bf8554d74591750bb0c8afad9da1a5b754fb749233daf44c7aee9773819b61e6125544e116d96b157bd774b20145acbce2e6f5fdd51ecc0e4cab8de0161126 languageName: node linkType: hard -"@polkadot/x-fetch@npm:^10.0.1": - version: 10.0.1 - resolution: "@polkadot/x-fetch@npm:10.0.1" +"@polkadot/x-fetch@npm:^10.0.1, @polkadot/x-fetch@npm:^10.0.2": + version: 10.0.2 + resolution: "@polkadot/x-fetch@npm:10.0.2" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/x-global": 10.0.1 + "@polkadot/x-global": 10.0.2 "@types/node-fetch": ^2.6.2 node-fetch: ^3.2.6 - checksum: 3f452941421b7786edc256a28da550eb4d1d557b89df029a5401b14af9eb35c6bd1f3d881606ebda1d8e2c1dff380636532b95f49e376409b802b890c16af813 + checksum: c7ecc29345ff4feab7cfa1d9282c172dc7f63254f52786725c8c89e9bded138ad311c2f18fb42eb39c891090e00fbd006ec2bff7dab00ab84507991f8da54615 languageName: node linkType: hard @@ -3847,7 +3847,7 @@ __metadata: languageName: node linkType: hard -"@polkadot/x-global@npm:10.0.1, @polkadot/x-global@npm:^10.0.1": +"@polkadot/x-global@npm:10.0.1": version: 10.0.1 resolution: "@polkadot/x-global@npm:10.0.1" dependencies: @@ -3856,6 +3856,15 @@ __metadata: languageName: node linkType: hard +"@polkadot/x-global@npm:10.0.2, @polkadot/x-global@npm:^10.0.1": + version: 10.0.2 + resolution: "@polkadot/x-global@npm:10.0.2" + dependencies: + "@babel/runtime": ^7.18.6 + checksum: 2f2416f3796a2708e04a9b73ae68b29c5dd00ad800b74c674e2df3eb8d070403443a5fa0f29e08d0c1e889628e45e09e36765f8cad7c2a6c6bebf40fbae2d669 + languageName: node + linkType: hard + "@polkadot/x-global@npm:9.7.2, @polkadot/x-global@npm:^9.5.1": version: 9.7.2 resolution: "@polkadot/x-global@npm:9.7.2" @@ -3865,33 +3874,33 @@ __metadata: languageName: node linkType: hard -"@polkadot/x-randomvalues@npm:10.0.1": - version: 10.0.1 - resolution: "@polkadot/x-randomvalues@npm:10.0.1" +"@polkadot/x-randomvalues@npm:10.0.2": + version: 10.0.2 + resolution: "@polkadot/x-randomvalues@npm:10.0.2" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/x-global": 10.0.1 - checksum: cda0b5721a6b3fd064e4458a72cfc45e497767b291474776a2fed8a8a306d1f4c2d45746cfbe5fb6eac02265c5c30b48175d4cd6f3e928ca16b105770ae306c7 + "@polkadot/x-global": 10.0.2 + checksum: a8febcde1e09e3686d9165ac699c6a606b0411536adab522e98deef2433875236adac696f6dce2f887c202b1304cf5e512de1fe0b689bec3f5f7aeeedb03a6fe languageName: node linkType: hard -"@polkadot/x-textdecoder@npm:10.0.1": - version: 10.0.1 - resolution: "@polkadot/x-textdecoder@npm:10.0.1" +"@polkadot/x-textdecoder@npm:10.0.2": + version: 10.0.2 + resolution: "@polkadot/x-textdecoder@npm:10.0.2" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/x-global": 10.0.1 - checksum: f5c8ce059e16c220bee8a460ce29959e2ff2b71a775472f791913a6296b90461af0f6bdf9c3d16e57aee5702c6ffa27abf4e965e70e1d204bed03cee625a2b5f + "@polkadot/x-global": 10.0.2 + checksum: 93a47cc3082c2d6ca6a45552f05a5e29d33c4ca0891af2585e5e09db7e054a754faaf359fbc89b18a2c897dbd792f84b5a86fa3d98831ff0ba15015ed960f093 languageName: node linkType: hard -"@polkadot/x-textencoder@npm:10.0.1": - version: 10.0.1 - resolution: "@polkadot/x-textencoder@npm:10.0.1" +"@polkadot/x-textencoder@npm:10.0.2": + version: 10.0.2 + resolution: "@polkadot/x-textencoder@npm:10.0.2" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/x-global": 10.0.1 - checksum: f36370dbdea0a3d681a42fdbf1f40801313592d80e57714f0e6efb543442c72334f2ea9ebfd539c3eb78c424c64520943ff51628504d789c17ab180dc1f33f7d + "@polkadot/x-global": 10.0.2 + checksum: 24600fb003e48b030b610e404964630c901c65c8d1e9be95c1d0c4f385a9b40ae118d881ac50061e87ff2c4bbf1a80b3017a18ff03fd82e12b3b6102b508e6fc languageName: node linkType: hard