From 82ebb5978550e0cc6387f2cfd95b2895c069ba91 Mon Sep 17 00:00:00 2001 From: Gerald Date: Thu, 17 Feb 2022 18:41:48 +0100 Subject: [PATCH 01/86] feat: derivate a new signer key for each account (store derivation path in data storage) --- packages/extension/jest.config.js | 6 + packages/extension/package.json | 4 + packages/extension/src/background/index.ts | 4 +- .../src/background/keys/keyDerivation.ts | 73 + packages/extension/src/background/keys/l1.ts | 38 +- .../src/background/selectedWallet.ts | 6 +- packages/extension/src/shared/MessageType.ts | 1 + packages/extension/src/shared/backup.model.ts | 6 + packages/extension/src/ui/Account.ts | 17 +- packages/extension/src/ui/utils/accounts.ts | 1 + packages/extension/src/ui/utils/recovery.ts | 10 +- packages/extension/test/keyDerivation.test.ts | 66 + yarn.lock | 1600 ++++++++++++++++- 13 files changed, 1780 insertions(+), 52 deletions(-) create mode 100644 packages/extension/jest.config.js create mode 100644 packages/extension/src/background/keys/keyDerivation.ts create mode 100644 packages/extension/test/keyDerivation.test.ts diff --git a/packages/extension/jest.config.js b/packages/extension/jest.config.js new file mode 100644 index 000000000..9b8aaf38e --- /dev/null +++ b/packages/extension/jest.config.js @@ -0,0 +1,6 @@ +module.exports = { + preset: "ts-jest", + transform: { + "^.+\\.(ts|tsx)?$": "ts-jest", + }, +} diff --git a/packages/extension/package.json b/packages/extension/package.json index 8a3d37430..b4c9952e4 100644 --- a/packages/extension/package.json +++ b/packages/extension/package.json @@ -5,6 +5,7 @@ "license": "MIT", "devDependencies": { "@svgr/webpack": "^6.0.0", + "@types/jest": "^27.4.0", "@types/object-hash": "^2.2.1", "@types/react": "^17.0.34", "@types/react-copy-to-clipboard": "^5.0.2", @@ -19,7 +20,9 @@ "eslint-webpack-plugin": "^3.1.1", "file-loader": "^6.2.0", "html-webpack-plugin": "^5.5.0", + "jest": "^27.5.1", "raw-loader": "^4.0.2", + "ts-jest": "^27.1.3", "ts-loader": "^9.2.6", "typescript": "^4.4.4", "url-loader": "^4.1.1", @@ -30,6 +33,7 @@ "build": "NODE_ENV=production webpack", "start": "webpack", "dev": "webpack --color --watch", + "test": "jest", "version": "yarn run sync-manifest-version", "sync-manifest-version": "node -p \"JSON.stringify({...require('./src/manifest.json'), version: '$npm_package_version'}, null, 2)\" > ./src/manifest.temp.json && prettier --write ./src/manifest.temp.json && mv ./src/manifest.temp.json ./src/manifest.json" }, diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index e2b18971b..251d6c8f2 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -446,7 +446,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" }) } - const wallet = { address: newAccount.address, network } + const { wallet } = newAccount selectedWalletStore.setItem("SELECTED_WALLET", wallet) transactionTracker.trackTransaction(newAccount.txHash, wallet, { title: "Deploy wallet", @@ -454,7 +454,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" return sendToTabAndUi({ type: "NEW_ACCOUNT_RES", - data: { status: "ok", ...newAccount }, + data: { status: "ok", address: wallet.address, ...newAccount }, }) } diff --git a/packages/extension/src/background/keys/keyDerivation.ts b/packages/extension/src/background/keys/keyDerivation.ts new file mode 100644 index 000000000..b4f9b37f1 --- /dev/null +++ b/packages/extension/src/background/keys/keyDerivation.ts @@ -0,0 +1,73 @@ +import { BigNumber, BigNumberish, utils } from "ethers" +import { ec, number } from "starknet" + +// from https://github.com/ethereum/EIPs/blob/master/EIPS/eip-2645.md +// m / purpose' / layer' / application' / eth_address_1' / eth_address_2' / index +// layer = pathHash(starknet) +// application = pathHash(argentx) + +const BASE_PATH = "m/2645'/1195502025'/1148870696'/0'/0'" + +export function getStarkPair(index: number, secret: BigNumberish) { + const masterNode = utils.HDNode.fromSeed(BigNumber.from(secret).toHexString()) + + const path = getPathForIndex(index) + const childNode = masterNode.derivePath(path) + const grindedKey = grindKey(childNode.privateKey) + const starkPair = ec.getKeyPair(grindedKey) + return starkPair +} + +export function getPathForIndex(index: number) { + return `${BASE_PATH}/${index}` +} + +export function getNextPathIndex(paths: string[]) { + return ( + paths.reduce((prev, path) => { + if (!path.startsWith(BASE_PATH)) { + return prev + } + const stringIndex = path.replace(BASE_PATH + "/", "") + if (!stringIndex.match(/^\d*$/gm)) { + return prev + } + const index = parseInt(stringIndex) + return Math.max(prev, index) + }, -1) + 1 + ) +} + +export function grindKey(keySeed: string) { + const keyValLimit = ec.ec.n + const sha256EcMaxDigest = number.toBN( + "1 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000", + 16, + ) + const maxAllowedVal = sha256EcMaxDigest.sub( + sha256EcMaxDigest.mod(keyValLimit), + ) + let i = 0 + let key = hashKeyWithIndex(keySeed, i) + i++ + // Make sure the produced key is devided by the Stark EC order, and falls within the range + // [0, maxAllowedVal). + while (!key.lt(maxAllowedVal)) { + key = hashKeyWithIndex(keySeed, i) + i++ + } + return "0x" + key.umod(keyValLimit).toString("hex") +} + +function hashKeyWithIndex(key: string, index: number) { + const payload = utils.concat([utils.arrayify(key), utils.arrayify(index)]) + const hash = utils.sha256(payload) + return number.toBN(hash) +} + +export function pathHash(name: string) { + const hash = utils.arrayify(utils.sha256(utils.toUtf8Bytes(name))).slice(-4) + return BigNumber.from( + utils.concat([[hash[0] & 127], hash.slice(-3)]), + ).toNumber() +} diff --git a/packages/extension/src/background/keys/l1.ts b/packages/extension/src/background/keys/l1.ts index 4528c74bf..a1975d699 100644 --- a/packages/extension/src/background/keys/l1.ts +++ b/packages/extension/src/background/keys/l1.ts @@ -7,6 +7,11 @@ import { BackupWallet } from "../../shared/backup.model" import { getProvider } from "../../shared/networks" import { selectedWalletStore } from "../selectedWallet" import { Storage } from "../storage" +import { + getNextPathIndex, + getPathForIndex, + getStarkPair, +} from "./keyDerivation" const isDev = process.env.NODE_ENV === "development" @@ -48,7 +53,11 @@ async function getKeystore() { if (!encKeystore) { throw Error("No keystore exists") } - return encKeystore + const encKeystoreObj = JSON.parse(encKeystore) + return JSON.stringify({ + ...encKeystoreObj, + wallets: encKeystoreObj["x-argentx"].accounts, + }) } export async function setKeystore(keystore: string) { @@ -130,7 +139,10 @@ async function getEncKeystore( const N = isDev ? 64 : 32768 const backup = await wallet.encrypt(password, { scrypt: { N } }, progressFn) - const extendedBackup = { ...JSON.parse(backup), wallets } + const extendedBackup = { + ...JSON.parse(backup), + "x-argentx": { version: 1, accounts: wallets }, + } return JSON.stringify(extendedBackup, null, 2) } @@ -154,10 +166,16 @@ export async function createAccount(networkId: string) { throw Error("Password required") } const l1 = await getL1() - const starkPair = ec.getKeyPair(l1.privateKey) + const wallets = await getWallets() + + const current_paths = wallets + .filter((wallet) => wallet.signer.type === "local_secret") + .map((wallet) => wallet.signer.derivation_path) + + const index = getNextPathIndex(current_paths) + const starkPair = getStarkPair(index, l1.privateKey) const starkPub = ec.getStarkKey(starkPair) const seed = ec.getStarkKey(ec.genKeyPair()) - const wallets = await getWallets() const provider = getProvider(networkId) const deployTransaction = await provider.deployContract( @@ -175,13 +193,21 @@ export async function createAccount(networkId: string) { throw new Error("Deploy transaction failed") } - const newWallet = { network: networkId, address: deployTransaction.address } + const signer = { + type: "local_secret", + derivation_path: getPathForIndex(index), + } + const newWallet = { + network: networkId, + address: deployTransaction.address, + signer, + } const newWallets = [...wallets, newWallet] const encKeystore = await getEncKeystore(l1, sessionPassword, newWallets) store.setItem("encKeystore", encKeystore) return { - address: deployTransaction.address, + wallet: newWallet, txHash: deployTransaction.transaction_hash, wallets, } diff --git a/packages/extension/src/background/selectedWallet.ts b/packages/extension/src/background/selectedWallet.ts index 04a8916a9..9c1322cc7 100644 --- a/packages/extension/src/background/selectedWallet.ts +++ b/packages/extension/src/background/selectedWallet.ts @@ -4,5 +4,9 @@ import { Storage } from "./storage" export const selectedWalletStore = new Storage<{ SELECTED_WALLET: BackupWallet }>({ - SELECTED_WALLET: { address: "", network: "" }, + SELECTED_WALLET: { + address: "", + network: "", + signer: { type: "", derivation_path: "" }, + }, }) diff --git a/packages/extension/src/shared/MessageType.ts b/packages/extension/src/shared/MessageType.ts index 90012f226..57963e6fa 100644 --- a/packages/extension/src/shared/MessageType.ts +++ b/packages/extension/src/shared/MessageType.ts @@ -59,6 +59,7 @@ export type MessageType = status: "ok" txHash: string address: string + wallet: BackupWallet wallets: BackupWallet[] } } diff --git a/packages/extension/src/shared/backup.model.ts b/packages/extension/src/shared/backup.model.ts index 9734f73b9..75fecb767 100644 --- a/packages/extension/src/shared/backup.model.ts +++ b/packages/extension/src/shared/backup.model.ts @@ -1,4 +1,10 @@ +export interface BackupWalletSigner { + type: string + derivation_path: string +} + export interface BackupWallet { address: string network: string + signer: BackupWalletSigner } diff --git a/packages/extension/src/ui/Account.ts b/packages/extension/src/ui/Account.ts index e32f07b21..932ca4a6f 100644 --- a/packages/extension/src/ui/Account.ts +++ b/packages/extension/src/ui/Account.ts @@ -1,6 +1,7 @@ import ArgentCompiledContract from "!!raw-loader!../contracts/ArgentAccount.txt" import { CompiledContract, Contract, json } from "starknet" +import { BackupWalletSigner } from "../shared/backup.model" import { sendMessage, waitForMessage } from "../shared/messages" import { getProvider } from "../shared/networks" @@ -11,12 +12,19 @@ const ArgentCompiledContractJson: CompiledContract = json.parse( export class Account { address: string networkId: string + signer: BackupWalletSigner deployTransaction?: string contract: Contract - constructor(address: string, networkId: string, deployTransaction?: string) { + constructor( + address: string, + networkId: string, + signer: BackupWalletSigner, + deployTransaction?: string, + ) { this.address = address this.networkId = networkId + this.signer = signer this.deployTransaction = deployTransaction this.contract = new Contract( ArgentCompiledContractJson.abi, @@ -54,6 +62,11 @@ export class Account { throw new Error(result.error) } - return new Account(result.address, networkId, result.txHash) + return new Account( + result.address, + networkId, + result.wallet.signer, + result.txHash, + ) } } diff --git a/packages/extension/src/ui/utils/accounts.ts b/packages/extension/src/ui/utils/accounts.ts index f7c9644e4..75896c66b 100644 --- a/packages/extension/src/ui/utils/accounts.ts +++ b/packages/extension/src/ui/utils/accounts.ts @@ -39,6 +39,7 @@ export const connectAccount = async ( data: { address: account.address, network: localNetworkUrl(switcherNetworkId, localhostPort), + signer: account.signer, }, }) try { diff --git a/packages/extension/src/ui/utils/recovery.ts b/packages/extension/src/ui/utils/recovery.ts index 364bb9615..ebf6084ae 100644 --- a/packages/extension/src/ui/utils/recovery.ts +++ b/packages/extension/src/ui/utils/recovery.ts @@ -25,14 +25,16 @@ export const recover = async ({ ? localNetworkId(lastSelectedAccount?.network) : defaultNetwork.id - const backupWallets = networkWallets(await getWallets(), networkId) + const walletAccounts = networkWallets(await getWallets(), networkId) - const selectedAccount = backupWallets.find( + const selectedAccount = walletAccounts.find( ({ address }) => address === lastSelectedAccount?.address, )?.address - const accounts = backupWallets - .map(({ address, network }) => new Account(address, network)) + const accounts = walletAccounts + .map( + ({ address, network, signer }) => new Account(address, network, signer), + ) .reduce((acc, account) => ({ ...acc, [account.address]: account }), {}) setDefaultAccountNames(accounts) diff --git a/packages/extension/test/keyDerivation.test.ts b/packages/extension/test/keyDerivation.test.ts new file mode 100644 index 000000000..47601e7f7 --- /dev/null +++ b/packages/extension/test/keyDerivation.test.ts @@ -0,0 +1,66 @@ +import { ec } from "starknet" + +import { + getNextPathIndex, + getStarkPair, + grindKey, + pathHash, +} from "../src/background/keys/keyDerivation" + +test("generate Stark Pair", () => { + // secret is an L1 private key (stored locally in a keystore file) + const secret = + "0xe6904d63affe7a13cd30345b000c9b1ffc087832332d7303cf237ffda8a177d0" + + const starkPair5 = getStarkPair(5, secret) + expect(ec.getStarkKey(starkPair5)).toBe( + "0x9be28603e0203db9adcac04302ba54f97f6d27abd8b801e3a80b20d25a7f21", + ) + + const starkPair7 = getStarkPair(7, secret) + expect(ec.getStarkKey(starkPair7)).toBe( + "0x0420c619da34e3bf4b050ddb980d81d715d90bb14ff379024845111fbf9971c2", + ) +}) + +test("grindKey", () => { + const privateKey = + "0x86F3E7293141F20A8BAFF320E8EE4ACCB9D4A4BF2B4D295E8CEE784DB46E0519" + const res = grindKey(privateKey) + expect(res).toBe( + "0x5c8c8683596c732541a59e03007b2d30dbbbb873556fe65b5fb63c16688f941", + ) +}) + +test("pathHash", () => { + expect(pathHash("starknet")).toBe(1195502025) + expect(pathHash("starkex")).toBe(579218131) + expect(pathHash("argentx")).toBe(1148870696) +}) + +test("getNextPathIndex", () => { + expect( + getNextPathIndex([ + "m/2645'/1195502025'/1148870696'/0'/0'/0", + "m/2645'/1195502025'/1148870696'/0'/0'/1", + "m/2645'/1195502025'/1148870696'/0'/0'/2", + ]), + ).toBe(3) + + expect( + getNextPathIndex([ + "m/2645'/1195502025'/1148870696'/0'/0'/0", + "m/2645'/1195502025'/1148870696'/0'/0'/4", + "m/2645'/1195502025'/1148870696'/0'/0'/11", + ]), + ).toBe(12) + + expect( + getNextPathIndex([ + "m/2645'/1195502025'/1148870696'/0'/0'/3", + "m/2645'/1195502025'/1148870696'/0'/0'/1", + ]), + ).toBe(4) + + expect(getNextPathIndex([])).toBe(0) +}) diff --git a/yarn.lock b/yarn.lock index eff255845..49859f7d9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,6 +2,13 @@ # yarn lockfile v1 +"@ampproject/remapping@^2.1.0": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.1.2.tgz#4edca94973ded9630d20101cd8559cedb8d8bd34" + integrity sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg== + dependencies: + "@jridgewell/trace-mapping" "^0.3.0" + "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.0.tgz#0dfc80309beec8411e65e706461c408b0bb9b431" @@ -9,11 +16,39 @@ dependencies: "@babel/highlight" "^7.16.0" +"@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.7.tgz#44416b6bd7624b998f5b1af5d470856c40138789" + integrity sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg== + dependencies: + "@babel/highlight" "^7.16.7" + "@babel/compat-data@^7.13.11", "@babel/compat-data@^7.16.0", "@babel/compat-data@^7.16.4": version "7.16.4" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.16.4.tgz#081d6bbc336ec5c2435c6346b2ae1fb98b5ac68e" integrity sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q== +"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.2", "@babel/core@^7.8.0": + version "7.17.4" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.17.4.tgz#a22f1ae8999122873b3d18865e98c7a3936b8c8b" + integrity sha512-R9x5r4t4+hBqZTmioSnkrW+I6NmbojwjGT8p4G2Gw1thWbXIHGDnmGdLdFw0/7ljucdIrNRp7Npgb4CyBYzzJg== + dependencies: + "@ampproject/remapping" "^2.1.0" + "@babel/code-frame" "^7.16.7" + "@babel/generator" "^7.17.3" + "@babel/helper-compilation-targets" "^7.16.7" + "@babel/helper-module-transforms" "^7.16.7" + "@babel/helpers" "^7.17.2" + "@babel/parser" "^7.17.3" + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.17.3" + "@babel/types" "^7.17.0" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.1.2" + semver "^6.3.0" + "@babel/core@^7.15.5", "@babel/core@^7.2.2": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.16.0.tgz#c4ff44046f5fe310525cc9eb4ef5147f0c5374d4" @@ -44,6 +79,15 @@ jsesc "^2.5.1" source-map "^0.5.0" +"@babel/generator@^7.17.3", "@babel/generator@^7.7.2": + version "7.17.3" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.17.3.tgz#a2c30b0c4f89858cb87050c3ffdfd36bdf443200" + integrity sha512-+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg== + dependencies: + "@babel/types" "^7.17.0" + jsesc "^2.5.1" + source-map "^0.5.0" + "@babel/helper-annotate-as-pure@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz#9a1f0ebcda53d9a2d00108c4ceace6a5d5f1f08d" @@ -69,6 +113,16 @@ browserslist "^4.17.5" semver "^6.3.0" +"@babel/helper-compilation-targets@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz#06e66c5f299601e6c7da350049315e83209d551b" + integrity sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA== + dependencies: + "@babel/compat-data" "^7.16.4" + "@babel/helper-validator-option" "^7.16.7" + browserslist "^4.17.5" + semver "^6.3.0" + "@babel/helper-create-class-features-plugin@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.16.0.tgz#090d4d166b342a03a9fec37ef4fd5aeb9c7c6a4b" @@ -103,6 +157,13 @@ resolve "^1.14.2" semver "^6.1.2" +"@babel/helper-environment-visitor@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz#ff484094a839bde9d89cd63cba017d7aae80ecd7" + integrity sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-explode-assignable-expression@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.0.tgz#753017337a15f46f9c09f674cff10cee9b9d7778" @@ -119,6 +180,15 @@ "@babel/template" "^7.16.0" "@babel/types" "^7.16.0" +"@babel/helper-function-name@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz#f1ec51551fb1c8956bc8dd95f38523b6cf375f8f" + integrity sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA== + dependencies: + "@babel/helper-get-function-arity" "^7.16.7" + "@babel/template" "^7.16.7" + "@babel/types" "^7.16.7" + "@babel/helper-get-function-arity@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.0.tgz#0088c7486b29a9cb5d948b1a1de46db66e089cfa" @@ -126,6 +196,13 @@ dependencies: "@babel/types" "^7.16.0" +"@babel/helper-get-function-arity@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz#ea08ac753117a669f1508ba06ebcc49156387419" + integrity sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-hoist-variables@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.0.tgz#4c9023c2f1def7e28ff46fc1dbcd36a39beaa81a" @@ -133,6 +210,13 @@ dependencies: "@babel/types" "^7.16.0" +"@babel/helper-hoist-variables@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz#86bcb19a77a509c7b77d0e22323ef588fa58c246" + integrity sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-member-expression-to-functions@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.0.tgz#29287040efd197c77636ef75188e81da8bccd5a4" @@ -147,6 +231,13 @@ dependencies: "@babel/types" "^7.16.0" +"@babel/helper-module-imports@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz#25612a8091a999704461c8a222d0efec5d091437" + integrity sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-module-transforms@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.16.0.tgz#1c82a8dd4cb34577502ebd2909699b194c3e9bb5" @@ -161,6 +252,20 @@ "@babel/traverse" "^7.16.0" "@babel/types" "^7.16.0" +"@babel/helper-module-transforms@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.16.7.tgz#7665faeb721a01ca5327ddc6bba15a5cb34b6a41" + integrity sha512-gaqtLDxJEFCeQbYp9aLAefjhkKdjKcdh6DB7jniIGU3Pz52WAmP268zK0VgPz9hUNkMSYeH976K2/Y6yPadpng== + dependencies: + "@babel/helper-environment-visitor" "^7.16.7" + "@babel/helper-module-imports" "^7.16.7" + "@babel/helper-simple-access" "^7.16.7" + "@babel/helper-split-export-declaration" "^7.16.7" + "@babel/helper-validator-identifier" "^7.16.7" + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.16.7" + "@babel/types" "^7.16.7" + "@babel/helper-optimise-call-expression@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.0.tgz#cecdb145d70c54096b1564f8e9f10cd7d193b338" @@ -173,6 +278,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz#5ac822ce97eec46741ab70a517971e443a70c5a9" integrity sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ== +"@babel/helper-plugin-utils@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz#aa3a8ab4c3cceff8e65eb9e73d87dc4ff320b2f5" + integrity sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA== + "@babel/helper-remap-async-to-generator@^7.16.0", "@babel/helper-remap-async-to-generator@^7.16.4": version "7.16.4" resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.4.tgz#5d7902f61349ff6b963e07f06a389ce139fbfe6e" @@ -199,6 +309,13 @@ dependencies: "@babel/types" "^7.16.0" +"@babel/helper-simple-access@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz#d656654b9ea08dbb9659b69d61063ccd343ff0f7" + integrity sha512-ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-skip-transparent-expression-wrappers@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz#0ee3388070147c3ae051e487eca3ebb0e2e8bb09" @@ -213,16 +330,33 @@ dependencies: "@babel/types" "^7.16.0" +"@babel/helper-split-export-declaration@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz#0b648c0c42da9d3920d85ad585f2778620b8726b" + integrity sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-validator-identifier@^7.15.7": version "7.15.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389" integrity sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w== +"@babel/helper-validator-identifier@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz#e8c602438c4a8195751243da9031d1607d247cad" + integrity sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw== + "@babel/helper-validator-option@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz#6e72a1fff18d5dfcb878e1e62f1a021c4b72d5a3" integrity sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow== +"@babel/helper-validator-option@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz#b203ce62ce5fe153899b617c08957de860de4d23" + integrity sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ== + "@babel/helper-wrap-function@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.16.0.tgz#b3cf318afce774dfe75b86767cd6d68f3482e57c" @@ -242,6 +376,15 @@ "@babel/traverse" "^7.16.3" "@babel/types" "^7.16.0" +"@babel/helpers@^7.17.2": + version "7.17.2" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.17.2.tgz#23f0a0746c8e287773ccd27c14be428891f63417" + integrity sha512-0Qu7RLR1dILozr/6M0xgj+DFPmi6Bnulgm9M8BVa9ZCWxDqlSnqt3cf8IDPB5m45sVXUZ0kuQAgUrdSFFH79fQ== + dependencies: + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.17.0" + "@babel/types" "^7.17.0" + "@babel/highlight@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.0.tgz#6ceb32b2ca4b8f5f361fb7fd821e3fddf4a1725a" @@ -251,11 +394,25 @@ chalk "^2.0.0" js-tokens "^4.0.0" +"@babel/highlight@^7.16.7": + version "7.16.10" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88" + integrity sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw== + dependencies: + "@babel/helper-validator-identifier" "^7.16.7" + chalk "^2.0.0" + js-tokens "^4.0.0" + "@babel/parser@^7.0.0-beta.54", "@babel/parser@^7.16.0", "@babel/parser@^7.16.3": version "7.16.4" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.16.4.tgz#d5f92f57cf2c74ffe9b37981c0e72fee7311372e" integrity sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng== +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.16.7", "@babel/parser@^7.17.3": + version "7.17.3" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.17.3.tgz#b07702b982990bf6fdc1da5049a23fece4c5c3d0" + integrity sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA== + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.2": version "7.16.2" resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.2.tgz#2977fca9b212db153c195674e57cfab807733183" @@ -407,7 +564,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.12.13": +"@babel/plugin-syntax-bigint@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" + integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== @@ -435,6 +599,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" +"@babel/plugin-syntax-import-meta@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-syntax-json-strings@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" @@ -449,7 +620,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-logical-assignment-operators@^7.10.4": +"@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== @@ -463,7 +634,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-numeric-separator@^7.10.4": +"@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== @@ -498,7 +669,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-top-level-await@^7.14.5": +"@babel/plugin-syntax-top-level-await@^7.14.5", "@babel/plugin-syntax-top-level-await@^7.8.3": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== @@ -512,6 +683,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" +"@babel/plugin-syntax-typescript@^7.7.2": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.7.tgz#39c9b55ee153151990fb038651d58d3fd03f98f8" + integrity sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-arrow-functions@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.0.tgz#951706f8b449c834ed07bd474c0924c944b95a8e" @@ -945,6 +1123,15 @@ "@babel/parser" "^7.16.0" "@babel/types" "^7.16.0" +"@babel/template@^7.16.7", "@babel/template@^7.3.3": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.7.tgz#8d126c8701fde4d66b264b3eba3d96f07666d155" + integrity sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w== + dependencies: + "@babel/code-frame" "^7.16.7" + "@babel/parser" "^7.16.7" + "@babel/types" "^7.16.7" + "@babel/traverse@^7.0.0-beta.54", "@babel/traverse@^7.13.0", "@babel/traverse@^7.16.0", "@babel/traverse@^7.16.3", "@babel/traverse@^7.4.5": version "7.16.3" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.16.3.tgz#f63e8a938cc1b780f66d9ed3c54f532ca2d14787" @@ -960,6 +1147,30 @@ debug "^4.1.0" globals "^11.1.0" +"@babel/traverse@^7.16.7", "@babel/traverse@^7.17.0", "@babel/traverse@^7.17.3", "@babel/traverse@^7.7.2": + version "7.17.3" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.17.3.tgz#0ae0f15b27d9a92ba1f2263358ea7c4e7db47b57" + integrity sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw== + dependencies: + "@babel/code-frame" "^7.16.7" + "@babel/generator" "^7.17.3" + "@babel/helper-environment-visitor" "^7.16.7" + "@babel/helper-function-name" "^7.16.7" + "@babel/helper-hoist-variables" "^7.16.7" + "@babel/helper-split-export-declaration" "^7.16.7" + "@babel/parser" "^7.17.3" + "@babel/types" "^7.17.0" + debug "^4.1.0" + globals "^11.1.0" + +"@babel/types@^7.0.0", "@babel/types@^7.16.7", "@babel/types@^7.17.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3": + version "7.17.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.17.0.tgz#a826e368bccb6b3d84acd76acad5c0d87342390b" + integrity sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw== + dependencies: + "@babel/helper-validator-identifier" "^7.16.7" + to-fast-properties "^2.0.0" + "@babel/types@^7.0.0-beta.54", "@babel/types@^7.15.6", "@babel/types@^7.16.0", "@babel/types@^7.4.4": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.16.0.tgz#db3b313804f96aadd0b776c4823e127ad67289ba" @@ -968,6 +1179,11 @@ "@babel/helper-validator-identifier" "^7.15.7" to-fast-properties "^2.0.0" +"@bcoe/v8-coverage@^0.2.3": + version "0.2.3" + resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== + "@discoveryjs/json-ext@^0.5.0": version "0.5.5" resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.5.tgz#9283c9ce5b289a3c4f61c12757469e59377f81f3" @@ -1421,6 +1637,209 @@ resolved "https://registry.yarnpkg.com/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz#98c23c950a3d9b6c8f0daed06da6c3af06981340" integrity sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q== +"@istanbuljs/load-nyc-config@^1.0.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== + dependencies: + camelcase "^5.3.1" + find-up "^4.1.0" + get-package-type "^0.1.0" + js-yaml "^3.13.1" + resolve-from "^5.0.0" + +"@istanbuljs/schema@^0.1.2": + version "0.1.3" + resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== + +"@jest/console@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.5.1.tgz#260fe7239602fe5130a94f1aa386eff54b014bba" + integrity sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg== + dependencies: + "@jest/types" "^27.5.1" + "@types/node" "*" + chalk "^4.0.0" + jest-message-util "^27.5.1" + jest-util "^27.5.1" + slash "^3.0.0" + +"@jest/core@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.5.1.tgz#267ac5f704e09dc52de2922cbf3af9edcd64b626" + integrity sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ== + dependencies: + "@jest/console" "^27.5.1" + "@jest/reporters" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/transform" "^27.5.1" + "@jest/types" "^27.5.1" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + emittery "^0.8.1" + exit "^0.1.2" + graceful-fs "^4.2.9" + jest-changed-files "^27.5.1" + jest-config "^27.5.1" + jest-haste-map "^27.5.1" + jest-message-util "^27.5.1" + jest-regex-util "^27.5.1" + jest-resolve "^27.5.1" + jest-resolve-dependencies "^27.5.1" + jest-runner "^27.5.1" + jest-runtime "^27.5.1" + jest-snapshot "^27.5.1" + jest-util "^27.5.1" + jest-validate "^27.5.1" + jest-watcher "^27.5.1" + micromatch "^4.0.4" + rimraf "^3.0.0" + slash "^3.0.0" + strip-ansi "^6.0.0" + +"@jest/environment@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.5.1.tgz#d7425820511fe7158abbecc010140c3fd3be9c74" + integrity sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA== + dependencies: + "@jest/fake-timers" "^27.5.1" + "@jest/types" "^27.5.1" + "@types/node" "*" + jest-mock "^27.5.1" + +"@jest/fake-timers@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.5.1.tgz#76979745ce0579c8a94a4678af7a748eda8ada74" + integrity sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ== + dependencies: + "@jest/types" "^27.5.1" + "@sinonjs/fake-timers" "^8.0.1" + "@types/node" "*" + jest-message-util "^27.5.1" + jest-mock "^27.5.1" + jest-util "^27.5.1" + +"@jest/globals@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.5.1.tgz#7ac06ce57ab966566c7963431cef458434601b2b" + integrity sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q== + dependencies: + "@jest/environment" "^27.5.1" + "@jest/types" "^27.5.1" + expect "^27.5.1" + +"@jest/reporters@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.5.1.tgz#ceda7be96170b03c923c37987b64015812ffec04" + integrity sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw== + dependencies: + "@bcoe/v8-coverage" "^0.2.3" + "@jest/console" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/transform" "^27.5.1" + "@jest/types" "^27.5.1" + "@types/node" "*" + chalk "^4.0.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.2" + graceful-fs "^4.2.9" + istanbul-lib-coverage "^3.0.0" + istanbul-lib-instrument "^5.1.0" + istanbul-lib-report "^3.0.0" + istanbul-lib-source-maps "^4.0.0" + istanbul-reports "^3.1.3" + jest-haste-map "^27.5.1" + jest-resolve "^27.5.1" + jest-util "^27.5.1" + jest-worker "^27.5.1" + slash "^3.0.0" + source-map "^0.6.0" + string-length "^4.0.1" + terminal-link "^2.0.0" + v8-to-istanbul "^8.1.0" + +"@jest/source-map@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.5.1.tgz#6608391e465add4205eae073b55e7f279e04e8cf" + integrity sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg== + dependencies: + callsites "^3.0.0" + graceful-fs "^4.2.9" + source-map "^0.6.0" + +"@jest/test-result@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.5.1.tgz#56a6585fa80f7cdab72b8c5fc2e871d03832f5bb" + integrity sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag== + dependencies: + "@jest/console" "^27.5.1" + "@jest/types" "^27.5.1" + "@types/istanbul-lib-coverage" "^2.0.0" + collect-v8-coverage "^1.0.0" + +"@jest/test-sequencer@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz#4057e0e9cea4439e544c6353c6affe58d095745b" + integrity sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ== + dependencies: + "@jest/test-result" "^27.5.1" + graceful-fs "^4.2.9" + jest-haste-map "^27.5.1" + jest-runtime "^27.5.1" + +"@jest/transform@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.5.1.tgz#6c3501dcc00c4c08915f292a600ece5ecfe1f409" + integrity sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw== + dependencies: + "@babel/core" "^7.1.0" + "@jest/types" "^27.5.1" + babel-plugin-istanbul "^6.1.1" + chalk "^4.0.0" + convert-source-map "^1.4.0" + fast-json-stable-stringify "^2.0.0" + graceful-fs "^4.2.9" + jest-haste-map "^27.5.1" + jest-regex-util "^27.5.1" + jest-util "^27.5.1" + micromatch "^4.0.4" + pirates "^4.0.4" + slash "^3.0.0" + source-map "^0.6.1" + write-file-atomic "^3.0.0" + +"@jest/types@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" + integrity sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^16.0.0" + chalk "^4.0.0" + +"@jridgewell/resolve-uri@^3.0.3": + version "3.0.5" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz#68eb521368db76d040a6315cdb24bf2483037b9c" + integrity sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew== + +"@jridgewell/sourcemap-codec@^1.4.10": + version "1.4.11" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz#771a1d8d744eeb71b6adb35808e1a6c7b9b8c8ec" + integrity sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg== + +"@jridgewell/trace-mapping@^0.3.0": + version "0.3.4" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz#f6a0832dffd5b8a6aaa633b7d9f8e8e94c83a0c3" + integrity sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ== + dependencies: + "@jridgewell/resolve-uri" "^3.0.3" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@lerna/add@4.0.0": version "4.0.0" resolved "https://registry.yarnpkg.com/@lerna/add/-/add-4.0.0.tgz#c36f57d132502a57b9e7058d1548b7a565ef183f" @@ -2503,6 +2922,20 @@ resolved "https://registry.yarnpkg.com/@rushstack/eslint-patch/-/eslint-patch-1.1.0.tgz#7f698254aadf921e48dda8c0a6b304026b8a9323" integrity sha512-JLo+Y592QzIE+q7Dl2pMUtt4q8SKYI5jDrZxrozEQxnGVOyYE+GWK9eLkwTaeN9DDctlaRAQ3TBmzZ1qdLE30A== +"@sinonjs/commons@^1.7.0": + version "1.8.3" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d" + integrity sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ== + dependencies: + type-detect "4.0.8" + +"@sinonjs/fake-timers@^8.0.1": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7" + integrity sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg== + dependencies: + "@sinonjs/commons" "^1.7.0" + "@svgr/babel-plugin-add-jsx-attribute@^6.0.0": version "6.0.0" resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.0.0.tgz#bd6d1ff32a31b82b601e73672a789cc41e84fe18" @@ -2629,6 +3062,39 @@ resolved "https://registry.yarnpkg.com/@tsconfig/svelte/-/svelte-3.0.0.tgz#b06e059209f04c414de0069f2f0e2796d979fc6f" integrity sha512-pYrtLtOwku/7r1i9AMONsJMVYAtk3hzOfiGNekhtq5tYBGA7unMve8RvUclKLMT3PrihvJqUmzsRGh0RP84hKg== +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": + version "7.1.18" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.18.tgz#1a29abcc411a9c05e2094c98f9a1b7da6cdf49f8" + integrity sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + +"@types/babel__generator@*": + version "7.6.4" + resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7" + integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg== + dependencies: + "@babel/types" "^7.0.0" + +"@types/babel__template@*": + version "7.4.1" + resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" + integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + +"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": + version "7.14.2" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.14.2.tgz#ffcd470bbb3f8bf30481678fb5502278ca833a43" + integrity sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA== + dependencies: + "@babel/types" "^7.3.0" + "@types/chrome@0.0.99": version "0.0.99" resolved "https://registry.yarnpkg.com/@types/chrome/-/chrome-0.0.99.tgz#9453a5082a5291e78a0d24604b69796b16e9342c" @@ -2682,6 +3148,13 @@ resolved "https://registry.yarnpkg.com/@types/filewriter/-/filewriter-0.0.29.tgz#a48795ecadf957f6c0d10e0c34af86c098fa5bee" integrity sha512-BsPXH/irW0ht0Ji6iw/jJaK8Lj3FJemon2gvEqHKpCdDCeemHa+rI3WBGq5z7cDMZgoLjY40oninGxqk+8NzNQ== +"@types/graceful-fs@^4.1.2": + version "4.1.5" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" + integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw== + dependencies: + "@types/node" "*" + "@types/hoist-non-react-statics@*": version "3.3.1" resolved "https://registry.yarnpkg.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz#1124aafe5118cb591977aeb1ceaaed1070eb039f" @@ -2695,6 +3168,33 @@ resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#4fc33a00c1d0c16987b1a20cf92d20614c55ac35" integrity sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg== +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" + integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== + +"@types/istanbul-lib-report@*": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" + integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== + dependencies: + "@types/istanbul-lib-coverage" "*" + +"@types/istanbul-reports@^3.0.0": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" + integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== + dependencies: + "@types/istanbul-lib-report" "*" + +"@types/jest@^27.4.0": + version "27.4.0" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.4.0.tgz#037ab8b872067cae842a320841693080f9cb84ed" + integrity sha512-gHl8XuC1RZ8H2j5sHv/JqsaxXkDDM9iDOgu0Wp8sjs4u/snb2PVehyWXJPr+ORA0RPpgw231mnutWI1+0hgjIQ== + dependencies: + jest-diff "^27.0.0" + pretty-format "^27.0.0" + "@types/json-schema@*", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.9" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" @@ -2740,6 +3240,11 @@ resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== +"@types/prettier@^2.1.5": + version "2.4.4" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.4.tgz#5d9b63132df54d8909fce1c3f8ca260fdd693e17" + integrity sha512-ReVR2rLTV1kvtlWFyuot+d1pkpG2Fw/XKE3PDAdj57rbM97ttSp9JZ2UsP+2EHTylra9cUf6JA7tGwW1INzUrA== + "@types/prop-types@*", "@types/prop-types@^15.7.4": version "15.7.4" resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.4.tgz#fcf7205c25dff795ee79af1e30da2c9790808f11" @@ -2806,6 +3311,11 @@ resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== +"@types/stack-utils@^2.0.0": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" + integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== + "@types/styled-components@^5.1.15": version "5.1.23" resolved "https://registry.yarnpkg.com/@types/styled-components/-/styled-components-5.1.23.tgz#11e5740047f292b42a042c60c0ef16b58d5adef6" @@ -2820,6 +3330,18 @@ resolved "https://registry.yarnpkg.com/@types/webextension-polyfill/-/webextension-polyfill-0.8.2.tgz#d909371d332ce3e1a94684624deb0a8693eee900" integrity sha512-Pd+p5AQx6s78jr4gDC2p3vbw+uxP2DLLqE9iAJJpZ+OUqDm3txr6uN2wUBEwjVgZTNdBHPsxawGvPCTipF2s6w== +"@types/yargs-parser@*": + version "20.2.1" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.1.tgz#3b9ce2489919d9e4fea439b76916abc34b2df129" + integrity sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw== + +"@types/yargs@^16.0.0": + version "16.0.4" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.4.tgz#26aad98dd2c2a38e421086ea9ad42b9e51642977" + integrity sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw== + dependencies: + "@types/yargs-parser" "*" + "@typescript-eslint/eslint-plugin@^5.10.1": version "5.12.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.12.0.tgz#bb46dd7ce7015c0928b98af1e602118e97df6c70" @@ -3056,11 +3578,24 @@ JSONStream@^1.0.4: jsonparse "^1.2.0" through ">=2.2.7 <3" +abab@^2.0.3, abab@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" + integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== + abbrev@1: version "1.1.1" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== +acorn-globals@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" + integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== + dependencies: + acorn "^7.1.1" + acorn-walk "^7.1.1" + acorn-import-assertions@^1.7.6: version "1.8.0" resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" @@ -3071,7 +3606,17 @@ acorn-jsx@^5.3.1: resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== -acorn@^8.4.1, acorn@^8.7.0: +acorn-walk@^7.1.1: + version "7.2.0" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" + integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== + +acorn@^7.1.1: + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +acorn@^8.2.4, acorn@^8.4.1, acorn@^8.7.0: version "8.7.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf" integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ== @@ -3180,7 +3725,12 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: dependencies: color-convert "^2.0.1" -anymatch@~3.1.2: +ansi-styles@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" + integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== + +anymatch@^3.0.3, anymatch@~3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== @@ -3349,6 +3899,20 @@ axobject-query@^2.2.0: resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.2.0.tgz#943d47e10c0b704aa42275e20edf3722648989be" integrity sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA== +babel-jest@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.5.1.tgz#a1bf8d61928edfefd21da27eb86a695bfd691444" + integrity sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg== + dependencies: + "@jest/transform" "^27.5.1" + "@jest/types" "^27.5.1" + "@types/babel__core" "^7.1.14" + babel-plugin-istanbul "^6.1.1" + babel-preset-jest "^27.5.1" + chalk "^4.0.0" + graceful-fs "^4.2.9" + slash "^3.0.0" + babel-plugin-dynamic-import-node@^2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3" @@ -3356,6 +3920,27 @@ babel-plugin-dynamic-import-node@^2.3.3: dependencies: object.assign "^4.1.0" +babel-plugin-istanbul@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" + integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@istanbuljs/load-nyc-config" "^1.0.0" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-instrument "^5.0.4" + test-exclude "^6.0.0" + +babel-plugin-jest-hoist@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz#9be98ecf28c331eb9f5df9c72d6f89deb8181c2e" + integrity sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ== + dependencies: + "@babel/template" "^7.3.3" + "@babel/types" "^7.3.3" + "@types/babel__core" "^7.0.0" + "@types/babel__traverse" "^7.0.6" + babel-plugin-polyfill-corejs2@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.0.tgz#407082d0d355ba565af24126fb6cb8e9115251fd" @@ -3395,6 +3980,32 @@ babel-plugin-syntax-jsx@^6.18.0: resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" integrity sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY= +babel-preset-current-node-syntax@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" + integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== + dependencies: + "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/plugin-syntax-bigint" "^7.8.3" + "@babel/plugin-syntax-class-properties" "^7.8.3" + "@babel/plugin-syntax-import-meta" "^7.8.3" + "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-syntax-numeric-separator" "^7.8.3" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/plugin-syntax-top-level-await" "^7.8.3" + +babel-preset-jest@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz#91f10f58034cb7989cb4f962b69fa6eef6a6bc81" + integrity sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag== + dependencies: + babel-plugin-jest-hoist "^27.5.1" + babel-preset-current-node-syntax "^1.0.0" + balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" @@ -3467,6 +4078,11 @@ brorand@^1.1.0: resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= +browser-process-hrtime@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" + integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== + browserslist@^4.14.5, browserslist@^4.17.5, browserslist@^4.17.6: version "4.18.1" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.18.1.tgz#60d3920f25b6860eb917c6c7b185576f4d8b017f" @@ -3478,6 +4094,20 @@ browserslist@^4.14.5, browserslist@^4.17.5, browserslist@^4.17.6: node-releases "^2.0.1" picocolors "^1.0.0" +bs-logger@0.x: + version "0.2.6" + resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== + dependencies: + fast-json-stable-stringify "2.x" + +bser@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" + integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== + dependencies: + node-int64 "^0.4.0" + buffer-crc32@^0.2.5: version "0.2.13" resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" @@ -3623,6 +4253,11 @@ chalk@^4.0.0, chalk@^4.1.0: ansi-styles "^4.1.0" supports-color "^7.1.0" +char-regex@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" + integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== + chardet@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" @@ -3663,6 +4298,16 @@ ci-info@^2.0.0: resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== +ci-info@^3.2.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.3.0.tgz#b4ed1fb6818dea4803a55c623041f9165d2066b2" + integrity sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw== + +cjs-module-lexer@^1.0.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" + integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA== + clean-css@^5.2.2: version "5.2.2" resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.2.2.tgz#d3a7c6ee2511011e051719838bdcf8314dc4548d" @@ -3722,11 +4367,21 @@ cmd-shim@^4.1.0: dependencies: mkdirp-infer-owner "^2.0.0" +co@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= + code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= +collect-v8-coverage@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" + integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== + color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -3764,7 +4419,7 @@ columnify@^1.5.4: strip-ansi "^3.0.0" wcwidth "^1.0.0" -combined-stream@^1.0.6, combined-stream@~1.0.6: +combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== @@ -3909,7 +4564,7 @@ conventional-recommended-bump@^6.1.0: meow "^8.0.0" q "^1.5.1" -convert-source-map@^1.7.0: +convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: version "1.8.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== @@ -4033,6 +4688,23 @@ csso@^4.2.0: dependencies: css-tree "^1.1.2" +cssom@^0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" + integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== + +cssom@~0.3.6: + version "0.3.8" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" + integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== + +cssstyle@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" + integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== + dependencies: + cssom "~0.3.6" + csstype@^3.0.10, csstype@^3.0.2: version "3.0.10" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.10.tgz#2ad3a7bed70f35b965707c092e5f30b327c290e5" @@ -4055,6 +4727,15 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" +data-urls@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" + integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== + dependencies: + abab "^2.0.3" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.0.0" + dateformat@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" @@ -4099,6 +4780,11 @@ decamelize@^1.1.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= +decimal.js@^10.2.1: + version "10.3.1" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783" + integrity sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ== + decode-uri-component@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" @@ -4109,7 +4795,7 @@ dedent@^0.7.0: resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= -deep-is@^0.1.3: +deep-is@^0.1.3, deep-is@~0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== @@ -4168,6 +4854,11 @@ detect-newline@^2.1.0: resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= +detect-newline@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" + integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== + dezalgo@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456" @@ -4176,6 +4867,11 @@ dezalgo@^1.0.0: asap "^2.0.0" wrappy "1" +diff-sequences@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327" + integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ== + dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -4226,6 +4922,13 @@ domelementtype@^2.0.1, domelementtype@^2.2.0: resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57" integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A== +domexception@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" + integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== + dependencies: + webidl-conversions "^5.0.0" + domhandler@^4.0.0, domhandler@^4.2.0: version "4.2.2" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.2.2.tgz#e825d721d19a86b8c201a35264e226c678ee755f" @@ -4295,6 +4998,11 @@ elliptic@6.5.4, elliptic@^6.5.4: minimalistic-assert "^1.0.1" minimalistic-crypto-utils "^1.0.1" +emittery@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" + integrity sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg== + emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" @@ -4412,11 +5120,28 @@ escape-string-regexp@^1.0.5: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= +escape-string-regexp@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== + escape-string-regexp@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== +escodegen@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" + integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== + dependencies: + esprima "^4.0.1" + estraverse "^5.2.0" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.6.1" + eslint-config-next@12.1.0: version "12.1.0" resolved "https://registry.yarnpkg.com/eslint-config-next/-/eslint-config-next-12.1.0.tgz#8ace680dc5207e6ab6c915f3989adec122f582e7" @@ -4616,7 +5341,7 @@ espree@^9.3.1: acorn-jsx "^5.3.1" eslint-visitor-keys "^3.3.0" -esprima@^4.0.0: +esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== @@ -4735,6 +5460,21 @@ execa@^5.0.0: signal-exit "^3.0.3" strip-final-newline "^2.0.0" +exit@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= + +expect@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/expect/-/expect-27.5.1.tgz#83ce59f1e5bdf5f9d2b94b61d2050db48f3fef74" + integrity sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw== + dependencies: + "@jest/types" "^27.5.1" + jest-get-type "^27.5.1" + jest-matcher-utils "^27.5.1" + jest-message-util "^27.5.1" + extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" @@ -4780,12 +5520,12 @@ fast-glob@^3.1.1, fast-glob@^3.2.7: merge2 "^1.3.0" micromatch "^4.0.4" -fast-json-stable-stringify@^2.0.0: +fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@^2.0.6: +fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= @@ -4802,6 +5542,13 @@ fastq@^1.6.0: dependencies: reusify "^1.0.4" +fb-watchman@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85" + integrity sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg== + dependencies: + bser "2.1.1" + figures@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" @@ -4891,6 +5638,15 @@ forever-agent@~0.6.1: resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= +form-data@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" + integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + form-data@~2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" @@ -4929,7 +5685,7 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= -fsevents@~2.3.2: +fsevents@^2.3.2, fsevents@~2.3.2: version "2.3.2" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== @@ -4977,6 +5733,11 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: has "^1.0.3" has-symbols "^1.0.1" +get-package-type@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== + get-pkg-repo@^4.0.0: version "4.2.1" resolved "https://registry.yarnpkg.com/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz#75973e1c8050c73f48190c52047c4cee3acbf385" @@ -5092,7 +5853,7 @@ glob@7.1.7: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.1.1, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.1.7: +glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.1.7: version "7.2.0" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== @@ -5262,6 +6023,18 @@ hosted-git-info@^4.0.0, hosted-git-info@^4.0.1: dependencies: lru-cache "^6.0.0" +html-encoding-sniffer@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" + integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== + dependencies: + whatwg-encoding "^1.0.5" + +html-escaper@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== + html-minifier-terser@^6.0.2: version "6.1.0" resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#bfc818934cc07918f6b3669f5774ecdfd48f32ab" @@ -5339,7 +6112,7 @@ humanize-ms@^1.2.1: dependencies: ms "^2.0.0" -iconv-lite@^0.4.24: +iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== @@ -5614,6 +6387,11 @@ is-fullwidth-code-point@^3.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== +is-generator-fn@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== + is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" @@ -5675,6 +6453,11 @@ is-plain-object@^5.0.0: resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== +is-potential-custom-element-name@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" + integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== + is-reference@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/is-reference/-/is-reference-1.2.1.tgz#8b2dac0b371f4bc994fdeaba9eb542d03002d0b7" @@ -5760,6 +6543,435 @@ isstream@~0.1.2: resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= +istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" + integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== + +istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a" + integrity sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q== + dependencies: + "@babel/core" "^7.12.3" + "@babel/parser" "^7.14.7" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.2.0" + semver "^6.3.0" + +istanbul-lib-report@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" + integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== + dependencies: + istanbul-lib-coverage "^3.0.0" + make-dir "^3.0.0" + supports-color "^7.1.0" + +istanbul-lib-source-maps@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" + integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== + dependencies: + debug "^4.1.1" + istanbul-lib-coverage "^3.0.0" + source-map "^0.6.1" + +istanbul-reports@^3.1.3: + version "3.1.4" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.4.tgz#1b6f068ecbc6c331040aab5741991273e609e40c" + integrity sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw== + dependencies: + html-escaper "^2.0.0" + istanbul-lib-report "^3.0.0" + +jest-changed-files@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5" + integrity sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw== + dependencies: + "@jest/types" "^27.5.1" + execa "^5.0.0" + throat "^6.0.1" + +jest-circus@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.5.1.tgz#37a5a4459b7bf4406e53d637b49d22c65d125ecc" + integrity sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw== + dependencies: + "@jest/environment" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/types" "^27.5.1" + "@types/node" "*" + chalk "^4.0.0" + co "^4.6.0" + dedent "^0.7.0" + expect "^27.5.1" + is-generator-fn "^2.0.0" + jest-each "^27.5.1" + jest-matcher-utils "^27.5.1" + jest-message-util "^27.5.1" + jest-runtime "^27.5.1" + jest-snapshot "^27.5.1" + jest-util "^27.5.1" + pretty-format "^27.5.1" + slash "^3.0.0" + stack-utils "^2.0.3" + throat "^6.0.1" + +jest-cli@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.5.1.tgz#278794a6e6458ea8029547e6c6cbf673bd30b145" + integrity sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw== + dependencies: + "@jest/core" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/types" "^27.5.1" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.9" + import-local "^3.0.2" + jest-config "^27.5.1" + jest-util "^27.5.1" + jest-validate "^27.5.1" + prompts "^2.0.1" + yargs "^16.2.0" + +jest-config@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.5.1.tgz#5c387de33dca3f99ad6357ddeccd91bf3a0e4a41" + integrity sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA== + dependencies: + "@babel/core" "^7.8.0" + "@jest/test-sequencer" "^27.5.1" + "@jest/types" "^27.5.1" + babel-jest "^27.5.1" + chalk "^4.0.0" + ci-info "^3.2.0" + deepmerge "^4.2.2" + glob "^7.1.1" + graceful-fs "^4.2.9" + jest-circus "^27.5.1" + jest-environment-jsdom "^27.5.1" + jest-environment-node "^27.5.1" + jest-get-type "^27.5.1" + jest-jasmine2 "^27.5.1" + jest-regex-util "^27.5.1" + jest-resolve "^27.5.1" + jest-runner "^27.5.1" + jest-util "^27.5.1" + jest-validate "^27.5.1" + micromatch "^4.0.4" + parse-json "^5.2.0" + pretty-format "^27.5.1" + slash "^3.0.0" + strip-json-comments "^3.1.1" + +jest-diff@^27.0.0, jest-diff@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def" + integrity sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw== + dependencies: + chalk "^4.0.0" + diff-sequences "^27.5.1" + jest-get-type "^27.5.1" + pretty-format "^27.5.1" + +jest-docblock@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.5.1.tgz#14092f364a42c6108d42c33c8cf30e058e25f6c0" + integrity sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ== + dependencies: + detect-newline "^3.0.0" + +jest-each@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.5.1.tgz#5bc87016f45ed9507fed6e4702a5b468a5b2c44e" + integrity sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ== + dependencies: + "@jest/types" "^27.5.1" + chalk "^4.0.0" + jest-get-type "^27.5.1" + jest-util "^27.5.1" + pretty-format "^27.5.1" + +jest-environment-jsdom@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546" + integrity sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw== + dependencies: + "@jest/environment" "^27.5.1" + "@jest/fake-timers" "^27.5.1" + "@jest/types" "^27.5.1" + "@types/node" "*" + jest-mock "^27.5.1" + jest-util "^27.5.1" + jsdom "^16.6.0" + +jest-environment-node@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.5.1.tgz#dedc2cfe52fab6b8f5714b4808aefa85357a365e" + integrity sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw== + dependencies: + "@jest/environment" "^27.5.1" + "@jest/fake-timers" "^27.5.1" + "@jest/types" "^27.5.1" + "@types/node" "*" + jest-mock "^27.5.1" + jest-util "^27.5.1" + +jest-get-type@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" + integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw== + +jest-haste-map@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.5.1.tgz#9fd8bd7e7b4fa502d9c6164c5640512b4e811e7f" + integrity sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng== + dependencies: + "@jest/types" "^27.5.1" + "@types/graceful-fs" "^4.1.2" + "@types/node" "*" + anymatch "^3.0.3" + fb-watchman "^2.0.0" + graceful-fs "^4.2.9" + jest-regex-util "^27.5.1" + jest-serializer "^27.5.1" + jest-util "^27.5.1" + jest-worker "^27.5.1" + micromatch "^4.0.4" + walker "^1.0.7" + optionalDependencies: + fsevents "^2.3.2" + +jest-jasmine2@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz#a037b0034ef49a9f3d71c4375a796f3b230d1ac4" + integrity sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ== + dependencies: + "@jest/environment" "^27.5.1" + "@jest/source-map" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/types" "^27.5.1" + "@types/node" "*" + chalk "^4.0.0" + co "^4.6.0" + expect "^27.5.1" + is-generator-fn "^2.0.0" + jest-each "^27.5.1" + jest-matcher-utils "^27.5.1" + jest-message-util "^27.5.1" + jest-runtime "^27.5.1" + jest-snapshot "^27.5.1" + jest-util "^27.5.1" + pretty-format "^27.5.1" + throat "^6.0.1" + +jest-leak-detector@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8" + integrity sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ== + dependencies: + jest-get-type "^27.5.1" + pretty-format "^27.5.1" + +jest-matcher-utils@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" + integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw== + dependencies: + chalk "^4.0.0" + jest-diff "^27.5.1" + jest-get-type "^27.5.1" + pretty-format "^27.5.1" + +jest-message-util@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.5.1.tgz#bdda72806da10d9ed6425e12afff38cd1458b6cf" + integrity sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g== + dependencies: + "@babel/code-frame" "^7.12.13" + "@jest/types" "^27.5.1" + "@types/stack-utils" "^2.0.0" + chalk "^4.0.0" + graceful-fs "^4.2.9" + micromatch "^4.0.4" + pretty-format "^27.5.1" + slash "^3.0.0" + stack-utils "^2.0.3" + +jest-mock@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.5.1.tgz#19948336d49ef4d9c52021d34ac7b5f36ff967d6" + integrity sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og== + dependencies: + "@jest/types" "^27.5.1" + "@types/node" "*" + +jest-pnp-resolver@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" + integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== + +jest-regex-util@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" + integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== + +jest-resolve-dependencies@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz#d811ecc8305e731cc86dd79741ee98fed06f1da8" + integrity sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg== + dependencies: + "@jest/types" "^27.5.1" + jest-regex-util "^27.5.1" + jest-snapshot "^27.5.1" + +jest-resolve@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.5.1.tgz#a2f1c5a0796ec18fe9eb1536ac3814c23617b384" + integrity sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw== + dependencies: + "@jest/types" "^27.5.1" + chalk "^4.0.0" + graceful-fs "^4.2.9" + jest-haste-map "^27.5.1" + jest-pnp-resolver "^1.2.2" + jest-util "^27.5.1" + jest-validate "^27.5.1" + resolve "^1.20.0" + resolve.exports "^1.1.0" + slash "^3.0.0" + +jest-runner@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.5.1.tgz#071b27c1fa30d90540805c5645a0ec167c7b62e5" + integrity sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ== + dependencies: + "@jest/console" "^27.5.1" + "@jest/environment" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/transform" "^27.5.1" + "@jest/types" "^27.5.1" + "@types/node" "*" + chalk "^4.0.0" + emittery "^0.8.1" + graceful-fs "^4.2.9" + jest-docblock "^27.5.1" + jest-environment-jsdom "^27.5.1" + jest-environment-node "^27.5.1" + jest-haste-map "^27.5.1" + jest-leak-detector "^27.5.1" + jest-message-util "^27.5.1" + jest-resolve "^27.5.1" + jest-runtime "^27.5.1" + jest-util "^27.5.1" + jest-worker "^27.5.1" + source-map-support "^0.5.6" + throat "^6.0.1" + +jest-runtime@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.5.1.tgz#4896003d7a334f7e8e4a53ba93fb9bcd3db0a1af" + integrity sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A== + dependencies: + "@jest/environment" "^27.5.1" + "@jest/fake-timers" "^27.5.1" + "@jest/globals" "^27.5.1" + "@jest/source-map" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/transform" "^27.5.1" + "@jest/types" "^27.5.1" + chalk "^4.0.0" + cjs-module-lexer "^1.0.0" + collect-v8-coverage "^1.0.0" + execa "^5.0.0" + glob "^7.1.3" + graceful-fs "^4.2.9" + jest-haste-map "^27.5.1" + jest-message-util "^27.5.1" + jest-mock "^27.5.1" + jest-regex-util "^27.5.1" + jest-resolve "^27.5.1" + jest-snapshot "^27.5.1" + jest-util "^27.5.1" + slash "^3.0.0" + strip-bom "^4.0.0" + +jest-serializer@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" + integrity sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w== + dependencies: + "@types/node" "*" + graceful-fs "^4.2.9" + +jest-snapshot@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.5.1.tgz#b668d50d23d38054a51b42c4039cab59ae6eb6a1" + integrity sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA== + dependencies: + "@babel/core" "^7.7.2" + "@babel/generator" "^7.7.2" + "@babel/plugin-syntax-typescript" "^7.7.2" + "@babel/traverse" "^7.7.2" + "@babel/types" "^7.0.0" + "@jest/transform" "^27.5.1" + "@jest/types" "^27.5.1" + "@types/babel__traverse" "^7.0.4" + "@types/prettier" "^2.1.5" + babel-preset-current-node-syntax "^1.0.0" + chalk "^4.0.0" + expect "^27.5.1" + graceful-fs "^4.2.9" + jest-diff "^27.5.1" + jest-get-type "^27.5.1" + jest-haste-map "^27.5.1" + jest-matcher-utils "^27.5.1" + jest-message-util "^27.5.1" + jest-util "^27.5.1" + natural-compare "^1.4.0" + pretty-format "^27.5.1" + semver "^7.3.2" + +jest-util@^27.0.0, jest-util@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" + integrity sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw== + dependencies: + "@jest/types" "^27.5.1" + "@types/node" "*" + chalk "^4.0.0" + ci-info "^3.2.0" + graceful-fs "^4.2.9" + picomatch "^2.2.3" + +jest-validate@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.5.1.tgz#9197d54dc0bdb52260b8db40b46ae668e04df067" + integrity sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ== + dependencies: + "@jest/types" "^27.5.1" + camelcase "^6.2.0" + chalk "^4.0.0" + jest-get-type "^27.5.1" + leven "^3.1.0" + pretty-format "^27.5.1" + +jest-watcher@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.5.1.tgz#71bd85fb9bde3a2c2ec4dc353437971c43c642a2" + integrity sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw== + dependencies: + "@jest/test-result" "^27.5.1" + "@jest/types" "^27.5.1" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + jest-util "^27.5.1" + string-length "^4.0.1" + jest-worker@^26.2.1: version "26.6.2" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" @@ -5787,6 +6999,24 @@ jest-worker@^27.3.1: merge-stream "^2.0.0" supports-color "^8.0.0" +jest-worker@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" + integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^8.0.0" + +jest@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest/-/jest-27.5.1.tgz#dadf33ba70a779be7a6fc33015843b51494f63fc" + integrity sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ== + dependencies: + "@jest/core" "^27.5.1" + import-local "^3.0.2" + jest-cli "^27.5.1" + jose@^4.3.6: version "4.5.0" resolved "https://registry.yarnpkg.com/jose/-/jose-4.5.0.tgz#92829d8cf846351eb55aaaf94f252fb1d191f2d5" @@ -5822,6 +7052,39 @@ jsbn@~0.1.0: resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= +jsdom@^16.6.0: + version "16.7.0" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" + integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== + dependencies: + abab "^2.0.5" + acorn "^8.2.4" + acorn-globals "^6.0.0" + cssom "^0.4.4" + cssstyle "^2.3.0" + data-urls "^2.0.0" + decimal.js "^10.2.1" + domexception "^2.0.1" + escodegen "^2.0.0" + form-data "^3.0.0" + html-encoding-sniffer "^2.0.1" + http-proxy-agent "^4.0.1" + https-proxy-agent "^5.0.0" + is-potential-custom-element-name "^1.0.1" + nwsapi "^2.2.0" + parse5 "6.0.1" + saxes "^5.0.1" + symbol-tree "^3.2.4" + tough-cookie "^4.0.0" + w3c-hr-time "^1.0.2" + w3c-xmlserializer "^2.0.0" + webidl-conversions "^6.1.0" + whatwg-encoding "^1.0.5" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.5.0" + ws "^7.4.6" + xml-name-validator "^3.0.0" + jsesc@^2.5.1: version "2.5.2" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" @@ -5874,6 +7137,13 @@ json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= +json5@2.x, json5@^2.1.2: + version "2.2.0" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" + integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== + dependencies: + minimist "^1.2.5" + json5@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" @@ -5881,13 +7151,6 @@ json5@^1.0.1: dependencies: minimist "^1.2.0" -json5@^2.1.2: - version "2.2.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" - integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== - dependencies: - minimist "^1.2.5" - jsonfile@^6.0.1: version "6.1.0" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" @@ -5925,6 +7188,11 @@ kind-of@^6.0.2, kind-of@^6.0.3: resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== +kleur@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== + language-subtag-registry@~0.3.2: version "0.3.21" resolved "https://registry.yarnpkg.com/language-subtag-registry/-/language-subtag-registry-0.3.21.tgz#04ac218bea46f04cb039084602c6da9e788dd45a" @@ -5961,6 +7229,11 @@ lerna@^4.0.0: import-local "^3.0.2" npmlog "^4.1.2" +leven@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== + levn@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" @@ -5969,6 +7242,14 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" +levn@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= + dependencies: + prelude-ls "~1.1.2" + type-check "~0.3.2" + libnpmaccess@^4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/libnpmaccess/-/libnpmaccess-4.0.3.tgz#dfb0e5b0a53c315a2610d300e46b4ddeb66e7eec" @@ -6059,6 +7340,11 @@ lodash.ismatch@^4.4.0: resolved "https://registry.yarnpkg.com/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37" integrity sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc= +lodash.memoize@4.x: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= + lodash.merge@^4.6.2: version "4.6.2" resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" @@ -6127,6 +7413,11 @@ make-dir@^3.0.0: dependencies: semver "^6.0.0" +make-error@1.x: + version "1.3.6" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + make-fetch-happen@^8.0.9: version "8.0.14" resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-8.0.14.tgz#aaba73ae0ab5586ad8eaa68bd83332669393e222" @@ -6170,6 +7461,13 @@ make-fetch-happen@^9.0.1: socks-proxy-agent "^6.0.0" ssri "^8.0.0" +makeerror@1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== + dependencies: + tmpl "1.0.5" + map-obj@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" @@ -6518,6 +7816,11 @@ node-gyp@^7.1.0: tar "^6.0.2" which "^2.0.2" +node-int64@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= + node-releases@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5" @@ -6685,6 +7988,11 @@ number-is-nan@^1.0.0: resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= +nwsapi@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" + integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== + oauth-sign@~0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" @@ -6778,6 +8086,18 @@ onetime@^5.1.0, onetime@^5.1.2: dependencies: mimic-fn "^2.1.0" +optionator@^0.8.1: + version "0.8.3" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" + integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== + dependencies: + deep-is "~0.1.3" + fast-levenshtein "~2.0.6" + levn "~0.3.0" + prelude-ls "~1.1.2" + type-check "~0.3.2" + word-wrap "~1.2.3" + optionator@^0.9.1: version "0.9.1" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" @@ -6948,7 +8268,7 @@ parse-json@^4.0.0: error-ex "^1.3.1" json-parse-better-errors "^1.0.1" -parse-json@^5.0.0: +parse-json@^5.0.0, parse-json@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== @@ -6978,6 +8298,11 @@ parse-url@^6.0.0: parse-path "^4.0.0" protocols "^1.4.0" +parse5@6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" + integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== + pascal-case@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" @@ -7058,6 +8383,11 @@ pify@^5.0.0: resolved "https://registry.yarnpkg.com/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA== +pirates@^4.0.4: + version "4.0.5" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" + integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== + pkg-dir@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" @@ -7091,6 +8421,11 @@ prelude-ls@^1.2.1: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== +prelude-ls@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= + prettier-plugin-import-sort@^0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/prettier-plugin-import-sort/-/prettier-plugin-import-sort-0.0.7.tgz#b13dcc4de98940b99066a9e34606a955d109b546" @@ -7114,6 +8449,15 @@ pretty-error@^4.0.0: lodash "^4.17.20" renderkid "^3.0.0" +pretty-format@^27.0.0, pretty-format@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" + integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== + dependencies: + ansi-regex "^5.0.1" + ansi-styles "^5.0.0" + react-is "^17.0.1" + process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" @@ -7132,6 +8476,14 @@ promise-retry@^2.0.1: err-code "^2.0.2" retry "^0.12.0" +prompts@^2.0.1: + version "2.4.2" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" + integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== + dependencies: + kleur "^3.0.3" + sisteransi "^1.0.5" + promzard@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/promzard/-/promzard-0.3.0.tgz#26a5d6ee8c7dee4cb12208305acfb93ba382a9ee" @@ -7158,7 +8510,7 @@ protocols@^1.1.0, protocols@^1.4.0: resolved "https://registry.yarnpkg.com/protocols/-/protocols-1.4.8.tgz#48eea2d8f58d9644a4a32caae5d5db290a075ce8" integrity sha512-IgjKyaUSjsROSO8/D49Ab7hP8mJgTYcqApOqdPhLoPxAplXmkp+zRvsrSQjFn5by0rhm4VH0GAUELIPpx7B1yg== -psl@^1.1.28: +psl@^1.1.28, psl@^1.1.33: version "1.8.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== @@ -7256,7 +8608,7 @@ react-is@^16.13.1, react-is@^16.7.0: resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== -react-is@^17.0.2: +react-is@^17.0.1, react-is@^17.0.2: version "17.0.2" resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== @@ -7590,6 +8942,11 @@ resolve-from@^5.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== +resolve.exports@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" + integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== + resolve@^1.10.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.8.1, resolve@^1.9.0: version "1.20.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" @@ -7631,7 +8988,7 @@ rimraf@^2.5.2, rimraf@^2.6.3: dependencies: glob "^7.1.3" -rimraf@^3.0.2: +rimraf@^3.0.0, rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== @@ -7736,6 +9093,13 @@ sander@^0.5.0: mkdirp "^0.5.1" rimraf "^2.5.2" +saxes@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" + integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== + dependencies: + xmlchars "^2.2.0" + scheduler@^0.20.2: version "0.20.2" resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.20.2.tgz#4baee39436e34aa93b4874bddcbf0fe8b8b50e91" @@ -7778,18 +9142,18 @@ semver@7.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== -semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== - -semver@^7.1.1, semver@^7.1.3, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: +semver@7.x, semver@^7.1.1, semver@^7.1.3, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: version "7.3.5" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== dependencies: lru-cache "^6.0.0" +semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + serialize-javascript@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" @@ -7847,6 +9211,11 @@ signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.6.tgz#24e630c4b0f03fea446a2bd299e62b4a6ca8d0af" integrity sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ== +sisteransi@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== + slash@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" @@ -7922,7 +9291,7 @@ source-map-js@^1.0.1: resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== -source-map-support@~0.5.20: +source-map-support@^0.5.6, source-map-support@~0.5.20: version "0.5.21" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== @@ -7935,7 +9304,7 @@ source-map@^0.5.0: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0: +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== @@ -8027,6 +9396,13 @@ stable@^0.1.8: resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== +stack-utils@^2.0.3: + version "2.0.5" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.5.tgz#d25265fca995154659dbbfba3b49254778d2fdd5" + integrity sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA== + dependencies: + escape-string-regexp "^2.0.0" + starknet@^2.5.0: version "2.5.1" resolved "https://registry.yarnpkg.com/starknet/-/starknet-2.5.1.tgz#894074db7882dc171da0db56661a86f71251dec7" @@ -8048,6 +9424,14 @@ strict-uri-encode@^2.0.0: resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546" integrity sha1-ucczDHBChi9rFC3CdLvMWGbONUY= +string-length@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== + dependencies: + char-regex "^1.0.2" + strip-ansi "^6.0.0" + string-width@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" @@ -8217,6 +9601,14 @@ supports-color@^8.0.0: dependencies: has-flag "^4.0.0" +supports-hyperlinks@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb" + integrity sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ== + dependencies: + has-flag "^4.0.0" + supports-color "^7.0.0" + svelte-check@^2.0.0: version "2.4.5" resolved "https://registry.yarnpkg.com/svelte-check/-/svelte-check-2.4.5.tgz#a2001993034d495118980bd95577fb3e7980661a" @@ -8272,6 +9664,11 @@ swr@^1.1.0: resolved "https://registry.yarnpkg.com/swr/-/swr-1.2.2.tgz#6cae09928d30593a7980d80f85823e57468fac5d" integrity sha512-ky0BskS/V47GpW8d6RU7CPsr6J8cr7mQD6+do5eky3bM0IyJaoi3vO8UhvrzJaObuTlGhPl2szodeB2dUd76Xw== +symbol-tree@^3.2.4: + version "3.2.4" + resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" + integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== + tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0: version "2.2.1" resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" @@ -8318,6 +9715,14 @@ temp-write@^4.0.0: temp-dir "^1.0.0" uuid "^3.3.2" +terminal-link@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" + integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== + dependencies: + ansi-escapes "^4.2.1" + supports-hyperlinks "^2.0.0" + terser-webpack-plugin@^5.1.3: version "5.2.5" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.2.5.tgz#ce65b9880a0c36872555c4874f45bbdb02ee32c9" @@ -8338,6 +9743,15 @@ terser@^5.0.0, terser@^5.10.0, terser@^5.7.2: source-map "~0.7.2" source-map-support "~0.5.20" +test-exclude@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== + dependencies: + "@istanbuljs/schema" "^0.1.2" + glob "^7.1.4" + minimatch "^3.0.4" + text-extensions@^1.0.0: version "1.9.0" resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26" @@ -8348,6 +9762,11 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= +throat@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375" + integrity sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w== + through2@^2.0.0: version "2.0.5" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" @@ -8382,6 +9801,11 @@ tmp@^0.0.33: dependencies: os-tmpdir "~1.0.2" +tmpl@1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" + integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== + to-fast-properties@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" @@ -8399,6 +9823,15 @@ toggle-selection@^1.0.6: resolved "https://registry.yarnpkg.com/toggle-selection/-/toggle-selection-1.0.6.tgz#6e45b1263f2017fa0acc7d89d78b15b8bf77da32" integrity sha1-bkWxJj8gF/oKzH2J14sVuL932jI= +tough-cookie@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" + integrity sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg== + dependencies: + psl "^1.1.33" + punycode "^2.1.1" + universalify "^0.1.2" + tough-cookie@~2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" @@ -8424,6 +9857,20 @@ trim-newlines@^3.0.0: resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== +ts-jest@^27.1.3: + version "27.1.3" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.1.3.tgz#1f723e7e74027c4da92c0ffbd73287e8af2b2957" + integrity sha512-6Nlura7s6uM9BVUAoqLH7JHyMXjz8gluryjpPXxr3IxZdAXnU6FhjvVLHFtfd1vsE1p8zD1OJfskkc0jhTSnkA== + dependencies: + bs-logger "0.x" + fast-json-stable-stringify "2.x" + jest-util "^27.0.0" + json5 "2.x" + lodash.memoize "4.x" + make-error "1.x" + semver "7.x" + yargs-parser "20.x" + ts-loader@^9.2.6: version "9.2.6" resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-9.2.6.tgz#9937c4dd0a1e3dbbb5e433f8102a6601c6615d74" @@ -8485,6 +9932,18 @@ type-check@^0.4.0, type-check@~0.4.0: dependencies: prelude-ls "^1.2.1" +type-check@~0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" + integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= + dependencies: + prelude-ls "~1.1.2" + +type-detect@4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== + type-fest@^0.18.0: version "0.18.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" @@ -8604,6 +10063,11 @@ universal-user-agent@^6.0.0: resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w== +universalify@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" + integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== + universalify@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" @@ -8669,6 +10133,15 @@ v8-compile-cache@^2.0.3: resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== +v8-to-istanbul@^8.1.0: + version "8.1.1" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz#77b752fd3975e31bbcef938f85e9bd1c7a8d60ed" + integrity sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.1" + convert-source-map "^1.6.0" + source-map "^0.7.3" + validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" @@ -8693,6 +10166,27 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" +w3c-hr-time@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" + integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== + dependencies: + browser-process-hrtime "^1.0.0" + +w3c-xmlserializer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" + integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== + dependencies: + xml-name-validator "^3.0.0" + +walker@^1.0.7: + version "1.0.8" + resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== + dependencies: + makeerror "1.0.12" + watchpack@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.3.1.tgz#4200d9447b401156eeca7767ee610f8809bc9d25" @@ -8718,6 +10212,11 @@ webidl-conversions@^3.0.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= +webidl-conversions@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" + integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== + webidl-conversions@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" @@ -8784,6 +10283,18 @@ webpack@^5.62.1: watchpack "^2.3.1" webpack-sources "^3.2.3" +whatwg-encoding@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" + integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== + dependencies: + iconv-lite "0.4.24" + +whatwg-mimetype@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" + integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== + whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" @@ -8792,7 +10303,7 @@ whatwg-url@^5.0.0: tr46 "~0.0.3" webidl-conversions "^3.0.0" -whatwg-url@^8.4.0: +whatwg-url@^8.0.0, whatwg-url@^8.4.0, whatwg-url@^8.5.0: version "8.7.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== @@ -8838,7 +10349,7 @@ wildcard@^2.0.0: resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec" integrity sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw== -word-wrap@^1.2.3: +word-wrap@^1.2.3, word-wrap@~1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== @@ -8919,6 +10430,21 @@ ws@7.4.6: resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== +ws@^7.4.6: + version "7.5.7" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67" + integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A== + +xml-name-validator@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" + integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== + +xmlchars@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" + integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== + xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" @@ -8949,7 +10475,7 @@ yargs-parser@20.2.4: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== -yargs-parser@^20.2.2, yargs-parser@^20.2.3: +yargs-parser@20.x, yargs-parser@^20.2.2, yargs-parser@^20.2.3: version "20.2.9" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== From bd07a785988dc312212c62d036d1096f91be3d1e Mon Sep 17 00:00:00 2001 From: Gerald Date: Fri, 18 Feb 2022 11:01:00 +0100 Subject: [PATCH 02/86] keyDerivation: refactoring --- .../src/background/keys/keyDerivation.ts | 33 +++++++++++-------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/packages/extension/src/background/keys/keyDerivation.ts b/packages/extension/src/background/keys/keyDerivation.ts index b4f9b37f1..9507cc37a 100644 --- a/packages/extension/src/background/keys/keyDerivation.ts +++ b/packages/extension/src/background/keys/keyDerivation.ts @@ -3,15 +3,19 @@ import { ec, number } from "starknet" // from https://github.com/ethereum/EIPs/blob/master/EIPS/eip-2645.md // m / purpose' / layer' / application' / eth_address_1' / eth_address_2' / index -// layer = pathHash(starknet) -// application = pathHash(argentx) +// layer = pathHash("starknet") +// application = pathHash("argentx") const BASE_PATH = "m/2645'/1195502025'/1148870696'/0'/0'" -export function getStarkPair(index: number, secret: BigNumberish) { +export function getStarkPair( + indexOrPath: number | string, + secret: BigNumberish, +) { const masterNode = utils.HDNode.fromSeed(BigNumber.from(secret).toHexString()) - const path = getPathForIndex(index) + const path = + typeof indexOrPath === "number" ? getPathForIndex(indexOrPath) : indexOrPath const childNode = masterNode.derivePath(path) const grindedKey = grindKey(childNode.privateKey) const starkPair = ec.getKeyPair(grindedKey) @@ -47,15 +51,16 @@ export function grindKey(keySeed: string) { const maxAllowedVal = sha256EcMaxDigest.sub( sha256EcMaxDigest.mod(keyValLimit), ) + + // Make sure the produced key is devided by the Stark EC order, + // and falls within the range [0, maxAllowedVal). let i = 0 - let key = hashKeyWithIndex(keySeed, i) - i++ - // Make sure the produced key is devided by the Stark EC order, and falls within the range - // [0, maxAllowedVal). - while (!key.lt(maxAllowedVal)) { + let key + do { key = hashKeyWithIndex(keySeed, i) i++ - } + } while (!key.lt(maxAllowedVal)) + return "0x" + key.umod(keyValLimit).toString("hex") } @@ -66,8 +71,8 @@ function hashKeyWithIndex(key: string, index: number) { } export function pathHash(name: string) { - const hash = utils.arrayify(utils.sha256(utils.toUtf8Bytes(name))).slice(-4) - return BigNumber.from( - utils.concat([[hash[0] & 127], hash.slice(-3)]), - ).toNumber() + return number + .toBN(utils.sha256(utils.toUtf8Bytes(name))) + .maskn(31) + .toNumber() } From 66e6b9d4e92d75e63d7e9b4e8b2cc9d57ca3fb37 Mon Sep 17 00:00:00 2001 From: Gerald Date: Fri, 18 Feb 2022 14:21:39 +0100 Subject: [PATCH 03/86] select the right keypair before signing tx validate keystore file before importing --- packages/extension/src/background/index.ts | 25 ++------- packages/extension/src/background/keys/l1.ts | 53 ++++++++++++------- .../extension/src/background/signer/index.ts | 24 ++++----- 3 files changed, 49 insertions(+), 53 deletions(-) diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index 251d6c8f2..02a719981 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -1,5 +1,5 @@ import { compactDecrypt } from "jose" -import { ec, encode } from "starknet" +import { encode } from "starknet" import { ActionItem } from "../shared/actionQueue" import { messageStream } from "../shared/messages" @@ -19,12 +19,11 @@ import { deleteAccount, downloadBackupFile, existsL1, - getL1, getWallets, + importKeystore, isUnlocked, lockWallet, resetAll, - setKeystore, validatePassword, } from "./keys/l1" import { getNonce, increaseStoredNonce, resetStoredNonce } from "./nonce" @@ -220,17 +219,10 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" if (!isUnlocked()) { throw Error("you need an open session") } - const l1 = await getL1() - const keyPair = ec.getKeyPair(l1.privateKey) const selectedWallet = await selectedWalletStore.getItem( "SELECTED_WALLET", ) - const signer = await getSigner({ - type: "LOCAL", - address: selectedWallet.address, - keyPair, - network: selectedWallet.network, - }) + const signer = await getSigner(selectedWallet) try { const nonce = await getNonce(signer) @@ -263,17 +255,10 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" if (!isUnlocked()) { throw Error("you need an open session") } - const l1 = await getL1() - const keyPair = ec.getKeyPair(l1.privateKey) const selectedWallet = await selectedWalletStore.getItem( "SELECTED_WALLET", ) - const signer = await getSigner({ - type: "LOCAL", - address: selectedWallet.address, - keyPair, - network: selectedWallet.network, - }) + const signer = await getSigner(selectedWallet) const [r, s] = await signer.signMessage(typedData) @@ -473,7 +458,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" } case "RECOVER_KEYSTORE": { - await setKeystore(msg.data) + await importKeystore(msg.data) return sendToTabAndUi({ type: "RECOVER_KEYSTORE_RES" }) } case "DOWNLOAD_BACKUP_FILE": { diff --git a/packages/extension/src/background/keys/l1.ts b/packages/extension/src/background/keys/l1.ts index a1975d699..9004af947 100644 --- a/packages/extension/src/background/keys/l1.ts +++ b/packages/extension/src/background/keys/l1.ts @@ -15,14 +15,15 @@ import { const isDev = process.env.NODE_ENV === "development" +const STORAGE_KEY = "KEYSTORE" interface StorageProps { - encKeystore?: string + [STORAGE_KEY]?: string } const store = new Storage({}, "L1") export async function existsL1() { - return Boolean(await store.getItem("encKeystore")) + return Boolean(await store.getItem(STORAGE_KEY)) } export async function validatePassword(password: string) { @@ -49,20 +50,32 @@ export function isUnlocked(): boolean { } async function getKeystore() { - const encKeystore = await store.getItem("encKeystore") + const encKeystore = await store.getItem(STORAGE_KEY) if (!encKeystore) { throw Error("No keystore exists") } const encKeystoreObj = JSON.parse(encKeystore) return JSON.stringify({ ...encKeystoreObj, - wallets: encKeystoreObj["x-argentx"].accounts, + wallets: encKeystoreObj["x-argent"].accounts, }) } -export async function setKeystore(keystore: string) { +async function setKeystore(keystore: string) { setRawWallet(undefined) - await store.setItem("encKeystore", keystore) + await store.setItem(STORAGE_KEY, keystore) +} + +async function validateKeystore(keystore: string) { + const keystoreObj = JSON.parse(keystore) + if (keystoreObj["x-version"] !== 1) { + throw Error("Invalid Keystore file format") + } +} + +export async function importKeystore(keystore: string) { + validateKeystore(keystore) + setKeystore(keystore) } async function recoverL1(password: string): Promise { @@ -97,9 +110,7 @@ export async function getL1(password?: string): Promise { const recoveredWallet = await recoverPromise setRawWallet(recoveredWallet) sessionPassword = password - const encKeystore = JSON.parse( - (await store.getItem("encKeystore")) || "{}", - ) + const encKeystore = JSON.parse((await store.getItem(STORAGE_KEY)) || "{}") if ( (await selectedWalletStore.getItem("SELECTED_WALLET")).address === "" && @@ -141,7 +152,8 @@ async function getEncKeystore( const extendedBackup = { ...JSON.parse(backup), - "x-argentx": { version: 1, accounts: wallets }, + "x-version": 1, + "x-argent": { accounts: wallets }, } return JSON.stringify(extendedBackup, null, 2) } @@ -175,7 +187,7 @@ export async function createAccount(networkId: string) { const index = getNextPathIndex(current_paths) const starkPair = getStarkPair(index, l1.privateKey) const starkPub = ec.getStarkKey(starkPair) - const seed = ec.getStarkKey(ec.genKeyPair()) + const seed = starkPub //ec.getStarkKey(ec.genKeyPair()) const provider = getProvider(networkId) const deployTransaction = await provider.deployContract( @@ -193,18 +205,17 @@ export async function createAccount(networkId: string) { throw new Error("Deploy transaction failed") } - const signer = { - type: "local_secret", - derivation_path: getPathForIndex(index), - } const newWallet = { network: networkId, address: deployTransaction.address, - signer, + signer: { + type: "local_secret", + derivation_path: getPathForIndex(index), + }, } const newWallets = [...wallets, newWallet] const encKeystore = await getEncKeystore(l1, sessionPassword, newWallets) - store.setItem("encKeystore", encKeystore) + store.setItem(STORAGE_KEY, encKeystore) return { wallet: newWallet, @@ -214,7 +225,7 @@ export async function createAccount(networkId: string) { } export async function downloadBackupFile() { - const encKeystore = (await store.getItem("encKeystore")) ?? "" + const encKeystore = (await store.getItem(STORAGE_KEY)) ?? "" downloadTextFile(encKeystore, "starknet-backup.json") } @@ -228,7 +239,11 @@ export const deleteAccount = async (account: string) => { const wallets = keystore.wallets.filter( ({ address }: any) => address !== account, ) - const newKeystore = JSON.stringify({ ...keystore, wallets }, null, 2) + const newKeystore = JSON.stringify( + { ...keystore, "x-argent": { accounts: wallets } }, + null, + 2, + ) await setKeystore(newKeystore) await getL1() } diff --git a/packages/extension/src/background/signer/index.ts b/packages/extension/src/background/signer/index.ts index ab08e725c..08972452e 100644 --- a/packages/extension/src/background/signer/index.ts +++ b/packages/extension/src/background/signer/index.ts @@ -1,23 +1,19 @@ import { Signer } from "starknet" +import { BackupWallet } from "../../shared/backup.model" import { getProvider } from "../../shared/networks" +import { getStarkPair } from "../keys/keyDerivation" +import { getL1 } from "../keys/l1" -type GetSignerOptions = { - type: "LOCAL" - address: string - network: string - keyPair: string -} - -export async function getSigner(options: GetSignerOptions): Promise { - const { type, address, network, keyPair } = options - - const provider = getProvider(network) +export async function getSigner(wallet: BackupWallet): Promise { + const provider = getProvider(wallet.network) - switch (type) { - case "LOCAL": + switch (wallet.signer.type) { + case "local_secret": default: { - return new Signer(provider, address, keyPair) + const l1 = await getL1() + const keyPair = getStarkPair(wallet.signer.derivation_path, l1.privateKey) + return new Signer(provider, wallet.address, keyPair) } } } From e4dc0966149ac7f4dd4213eaa14b4565fa4470bf Mon Sep 17 00:00:00 2001 From: Gerald Date: Mon, 21 Feb 2022 17:55:59 +0100 Subject: [PATCH 04/86] refactor: replace l1.ts file by a Wallet object --- packages/extension/package.json | 2 + packages/extension/src/background/download.ts | 5 + packages/extension/src/background/index.ts | 167 +++++------- .../extension/src/background/interfaces.ts | 4 + packages/extension/src/background/keys/l1.ts | 249 ----------------- .../src/background/selectedWallet.ts | 12 - .../extension/src/background/signer/index.ts | 19 -- packages/extension/src/background/storage.ts | 17 +- .../src/background/trackTransactions.ts | 4 +- packages/extension/src/background/wallet.ts | 257 ++++++++++++++++++ packages/extension/src/shared/MessageType.ts | 14 +- packages/extension/src/shared/backup.model.ts | 10 - packages/extension/src/shared/networks.ts | 4 +- packages/extension/src/shared/wallet.model.ts | 10 + packages/extension/src/ui/Account.ts | 6 +- packages/extension/test/backup.mock.json | 41 +++ packages/extension/test/backup.schema.json | 72 +++++ .../extension/test/backup_wrong.mock.json | 97 +++++++ packages/extension/test/wallet.test.ts | 150 ++++++++++ yarn.lock | 36 ++- 20 files changed, 775 insertions(+), 401 deletions(-) create mode 100644 packages/extension/src/background/download.ts create mode 100644 packages/extension/src/background/interfaces.ts delete mode 100644 packages/extension/src/background/keys/l1.ts delete mode 100644 packages/extension/src/background/selectedWallet.ts delete mode 100644 packages/extension/src/background/signer/index.ts create mode 100644 packages/extension/src/background/wallet.ts delete mode 100644 packages/extension/src/shared/backup.model.ts create mode 100644 packages/extension/src/shared/wallet.model.ts create mode 100644 packages/extension/test/backup.mock.json create mode 100644 packages/extension/test/backup.schema.json create mode 100644 packages/extension/test/backup_wrong.mock.json create mode 100644 packages/extension/test/wallet.test.ts diff --git a/packages/extension/package.json b/packages/extension/package.json index b4c9952e4..458321cf2 100644 --- a/packages/extension/package.json +++ b/packages/extension/package.json @@ -6,6 +6,7 @@ "devDependencies": { "@svgr/webpack": "^6.0.0", "@types/jest": "^27.4.0", + "@types/jest-json-schema": "^6.1.0", "@types/object-hash": "^2.2.1", "@types/react": "^17.0.34", "@types/react-copy-to-clipboard": "^5.0.2", @@ -21,6 +22,7 @@ "file-loader": "^6.2.0", "html-webpack-plugin": "^5.5.0", "jest": "^27.5.1", + "jest-json-schema": "^6.1.0", "raw-loader": "^4.0.2", "ts-jest": "^27.1.3", "ts-loader": "^9.2.6", diff --git a/packages/extension/src/background/download.ts b/packages/extension/src/background/download.ts new file mode 100644 index 000000000..1c860e588 --- /dev/null +++ b/packages/extension/src/background/download.ts @@ -0,0 +1,5 @@ +import browser from "webextension-polyfill" + +export async function downloadFile(data: { url: string; filename: string }) { + browser.downloads.download(data) +} diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index 02a719981..f244bb5b0 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -1,3 +1,4 @@ +import ArgentCompiledContract from "!!raw-loader!../contracts/ArgentAccount.txt" import { compactDecrypt } from "jose" import { encode } from "starknet" @@ -13,19 +14,8 @@ import { sendMessageToActiveTabsAndUi, sendMessageToUi, } from "./activeTabs" +import { downloadFile } from "./download" import { getKeyPair } from "./keys/communication" -import { - createAccount, - deleteAccount, - downloadBackupFile, - existsL1, - getWallets, - importKeystore, - isUnlocked, - lockWallet, - resetAll, - validatePassword, -} from "./keys/l1" import { getNonce, increaseStoredNonce, resetStoredNonce } from "./nonce" import { addToAlreadyShown, @@ -33,52 +23,51 @@ import { sentTransactionNotification, } from "./notification" import { openUi } from "./openUi" -import { selectedWalletStore } from "./selectedWallet" -import { getSigner } from "./signer" -import { setToStorage } from "./storage" +import { Storage, clearStorage, setToStorage } from "./storage" import { TransactionTracker, getTransactionStatus } from "./trackTransactions" +import { Wallet, WalletStorageProps } from "./wallet" import { addToWhitelist, isOnWhitelist } from "./whitelist" ;(async () => { const { privateKey, publicKeyJwk } = await getKeyPair() - const transactionTracker = new TransactionTracker( - async (transactions) => { - if (transactions.length > 0) { - sendMessageToUi({ - type: "TRANSACTION_UPDATES", - data: transactions, - }) - - for (const { hash, status, walletAddress, meta } of transactions) { - if ( - (status === "ACCEPTED_ON_L2" || status === "REJECTED") && - !(await hasShownNotification(hash)) - ) { - addToAlreadyShown(hash) - sentTransactionNotification(hash, status, meta) - if (walletAddress && status === "ACCEPTED_ON_L2") { - sendMessageToUi({ - type: "TRANSACTION_SUCCESS", - data: { - hash, - status, - walletAddress, - meta, - }, - }) - } - } - // on error remove stored (increased) nonce - if (walletAddress && status === "REJECTED") { - resetStoredNonce(walletAddress) + const storage = new Storage({}, "WALLET") + const wallet = new Wallet(storage, ArgentCompiledContract) + await wallet.setup() + + const transactionTracker = new TransactionTracker(async (transactions) => { + if (transactions.length > 0) { + sendMessageToUi({ + type: "TRANSACTION_UPDATES", + data: transactions, + }) + + for (const { hash, status, walletAddress, meta } of transactions) { + if ( + (status === "ACCEPTED_ON_L2" || status === "REJECTED") && + !(await hasShownNotification(hash)) + ) { + addToAlreadyShown(hash) + sentTransactionNotification(hash, status, meta) + if (walletAddress && status === "ACCEPTED_ON_L2") { + sendMessageToUi({ + type: "TRANSACTION_SUCCESS", + data: { + hash, + status, + walletAddress, + meta, + }, + }) } } + // on error remove stored (increased) nonce + if (walletAddress && status === "REJECTED") { + resetStoredNonce(walletAddress) + } } - }, - - 30 * 1000, - ) + } + }, 30 * 1000) messageStream.subscribe(async ([msg, sender]) => { const sendToTabAndUi = async (msg: MessageType) => { @@ -154,9 +143,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" } case "GET_SELECTED_WALLET": { - const selectedWallet = await selectedWalletStore.getItem( - "SELECTED_WALLET", - ) + const selectedWallet = await wallet.getSelectedAccount() return sendToTabAndUi({ type: "GET_SELECTED_WALLET_RES", @@ -165,9 +152,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" } case "CONNECT": { - const selectedWallet = await selectedWalletStore.getItem( - "SELECTED_WALLET", - ) + const selectedWallet = await wallet.getSelectedAccount() const isWhitelisted = await isOnWhitelist(msg.data.host) addTab(sender.tab?.id) @@ -187,7 +172,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" } case "WALLET_CONNECTED": { - return selectedWalletStore.setItem("SELECTED_WALLET", msg.data) + return await wallet.selectAccount(msg.data.address) } case "APPROVE_ACTION": { @@ -199,9 +184,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" switch (action.type) { case "CONNECT": { const { host } = action.payload - const selectedWallet = await selectedWalletStore.getItem( - "SELECTED_WALLET", - ) + const selectedWallet = await wallet.getSelectedAccount() await addToWhitelist(host) @@ -216,13 +199,11 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" case "TRANSACTION": { const transaction = action.payload - if (!isUnlocked()) { + if (!wallet.isSessionOpen()) { throw Error("you need an open session") } - const selectedWallet = await selectedWalletStore.getItem( - "SELECTED_WALLET", - ) - const signer = await getSigner(selectedWallet) + const selectedWallet = await wallet.getSelectedAccount() + const signer = await wallet.getSelectedAccountSigner() try { const nonce = await getNonce(signer) @@ -252,13 +233,10 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" case "SIGN": { const typedData = action.payload - if (!isUnlocked()) { + if (!wallet.isSessionOpen()) { throw Error("you need an open session") } - const selectedWallet = await selectedWalletStore.getItem( - "SELECTED_WALLET", - ) - const signer = await getSigner(selectedWallet) + const signer = await wallet.getSelectedAccountSigner() const [r, s] = await signer.signMessage(typedData) @@ -352,7 +330,8 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" } case "RESET_ALL": { - return resetAll() + clearStorage() + return wallet.lock() } case "ADD_WHITELIST": { @@ -380,7 +359,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" } const { plaintext } = await compactDecrypt(body, privateKey) const sessionPassword = encode.arrayBufferToString(plaintext) - if (await validatePassword(sessionPassword)) { + if (await wallet.startSession(sessionPassword)) { sendToTabAndUi({ type: "START_SESSION_RES" }) } return sendToTabAndUi({ type: "START_SESSION_REJ" }) @@ -388,33 +367,48 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" case "HAS_SESSION": { return sendToTabAndUi({ type: "HAS_SESSION_RES", - data: isUnlocked(), + data: wallet.isSessionOpen(), }) } case "STOP_SESSION": { - return lockWallet() + return wallet.lock() } case "IS_INITIALIZED": { return sendToTabAndUi({ type: "IS_INITIALIZED_RES", - data: await existsL1(), + data: await wallet.isInitialized(), }) } case "GET_WALLETS": { return sendToTabAndUi({ type: "GET_WALLETS_RES", - data: await getWallets(), + data: await wallet.getAccounts(), }) } case "NEW_ACCOUNT": { - if (!isUnlocked()) { + if (!wallet.isSessionOpen()) { throw Error("you need an open session") } const network = msg.data - let newAccount try { - newAccount = await createAccount(network) + const { account, txHash } = await wallet.addAccount(network) + transactionTracker.trackTransaction(txHash, account, { + title: "Deploy wallet", + }) + + await downloadFile(wallet.exportBackup()) + + return sendToTabAndUi({ + type: "NEW_ACCOUNT_RES", + data: { + status: "ok", + txHash, + address: account.address, + wallet: account, + wallets: wallet.getAccounts(), + }, + }) } catch (e: any) { let error = `${e}` if (network.includes("localhost")) { @@ -430,17 +424,6 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" data: { status: "ko", error }, }) } - - const { wallet } = newAccount - selectedWalletStore.setItem("SELECTED_WALLET", wallet) - transactionTracker.trackTransaction(newAccount.txHash, wallet, { - title: "Deploy wallet", - }) - - return sendToTabAndUi({ - type: "NEW_ACCOUNT_RES", - data: { status: "ok", address: wallet.address, ...newAccount }, - }) } case "ADD_SIGN": { @@ -458,17 +441,17 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" } case "RECOVER_KEYSTORE": { - await importKeystore(msg.data) + await wallet.importBackup(msg.data) return sendToTabAndUi({ type: "RECOVER_KEYSTORE_RES" }) } case "DOWNLOAD_BACKUP_FILE": { - await downloadBackupFile() + await downloadFile(wallet.exportBackup()) return sendToTabAndUi({ type: "DOWNLOAD_BACKUP_FILE_RES" }) } case "DELETE_ACCOUNT": { try { - await deleteAccount(msg.data) + await wallet.removeAccount(msg.data) return sendToTabAndUi({ type: "DELETE_ACCOUNT_RES" }) } catch { return sendToTabAndUi({ type: "DELETE_ACCOUNT_REJ" }) diff --git a/packages/extension/src/background/interfaces.ts b/packages/extension/src/background/interfaces.ts new file mode 100644 index 000000000..a6e3ca773 --- /dev/null +++ b/packages/extension/src/background/interfaces.ts @@ -0,0 +1,4 @@ +export interface IStorage> { + getItem(key: K): Promise + setItem(key: K, value: T[K]): Promise +} diff --git a/packages/extension/src/background/keys/l1.ts b/packages/extension/src/background/keys/l1.ts deleted file mode 100644 index 9004af947..000000000 --- a/packages/extension/src/background/keys/l1.ts +++ /dev/null @@ -1,249 +0,0 @@ -import ArgentCompiledContract from "!!raw-loader!../../contracts/ArgentAccount.txt" -import { ethers } from "ethers" -import { compileCalldata, ec } from "starknet" -import browser from "webextension-polyfill" - -import { BackupWallet } from "../../shared/backup.model" -import { getProvider } from "../../shared/networks" -import { selectedWalletStore } from "../selectedWallet" -import { Storage } from "../storage" -import { - getNextPathIndex, - getPathForIndex, - getStarkPair, -} from "./keyDerivation" - -const isDev = process.env.NODE_ENV === "development" - -const STORAGE_KEY = "KEYSTORE" -interface StorageProps { - [STORAGE_KEY]?: string -} - -const store = new Storage({}, "L1") - -export async function existsL1() { - return Boolean(await store.getItem(STORAGE_KEY)) -} - -export async function validatePassword(password: string) { - try { - await getL1(password) - return true - } catch (e) { - console.error(e) - return false - } -} - -let rawWallet: ethers.Wallet | undefined - -function setRawWallet(wallet?: ethers.Wallet) { - rawWallet = wallet - setTimeout(() => { - rawWallet = undefined - }, 15 * 60 * 60 * 1000) -} - -export function isUnlocked(): boolean { - return Boolean(rawWallet) -} - -async function getKeystore() { - const encKeystore = await store.getItem(STORAGE_KEY) - if (!encKeystore) { - throw Error("No keystore exists") - } - const encKeystoreObj = JSON.parse(encKeystore) - return JSON.stringify({ - ...encKeystoreObj, - wallets: encKeystoreObj["x-argent"].accounts, - }) -} - -async function setKeystore(keystore: string) { - setRawWallet(undefined) - await store.setItem(STORAGE_KEY, keystore) -} - -async function validateKeystore(keystore: string) { - const keystoreObj = JSON.parse(keystore) - if (keystoreObj["x-version"] !== 1) { - throw Error("Invalid Keystore file format") - } -} - -export async function importKeystore(keystore: string) { - validateKeystore(keystore) - setKeystore(keystore) -} - -async function recoverL1(password: string): Promise { - if (!(await existsL1())) { - throw Error("No KeyPair exists") - } - const encKeystore = await getKeystore() - return await ethers.Wallet.fromEncryptedJson(encKeystore, password) -} - -async function generateL1(): Promise { - if (await existsL1()) { - throw Error("KeyPair already exists") - } - return ethers.Wallet.createRandom() -} - -let sessionPassword: string | undefined -let recoverPromise: Promise | undefined - -export async function getL1(password?: string): Promise { - if (rawWallet) { - return rawWallet - } else if (await existsL1()) { - if (!recoverPromise) { - if (!password) { - throw Error("Password required") - } - recoverPromise = recoverL1(password) - } - try { - const recoveredWallet = await recoverPromise - setRawWallet(recoveredWallet) - sessionPassword = password - const encKeystore = JSON.parse((await store.getItem(STORAGE_KEY)) || "{}") - - if ( - (await selectedWalletStore.getItem("SELECTED_WALLET")).address === "" && - encKeystore.wallets.length > 0 - ) { - await selectedWalletStore.setItem( - "SELECTED_WALLET", - encKeystore.wallets[0], - ) - } - return recoveredWallet - } catch (e) { - recoverPromise = undefined - throw e - } - } else { - sessionPassword = password - const wallet = await generateL1() - setRawWallet(wallet) - return wallet - } -} - -export function lockWallet() { - setRawWallet(undefined) - recoverPromise = undefined - sessionPassword = undefined -} - -async function getEncKeystore( - wallet: ethers.Wallet, - password: string, - wallets: BackupWallet[], - progressFn?: (progress: number) => void, -): Promise { - // The number of encryption rounds must be a power of 2 (default: 131072 = 2 ^ 17) - const N = isDev ? 64 : 32768 - const backup = await wallet.encrypt(password, { scrypt: { N } }, progressFn) - - const extendedBackup = { - ...JSON.parse(backup), - "x-version": 1, - "x-argent": { accounts: wallets }, - } - return JSON.stringify(extendedBackup, null, 2) -} - -function downloadTextFile(text: string, filename: string) { - const blob = new Blob([text], { type: "application/json" }) - const url = URL.createObjectURL(blob) - browser.downloads.download({ url, filename }) -} - -export const getWallets = async (): Promise => { - try { - const { wallets } = JSON.parse(await getKeystore()) - return wallets - } catch { - return [] - } -} - -export async function createAccount(networkId: string) { - if (!sessionPassword) { - throw Error("Password required") - } - const l1 = await getL1() - const wallets = await getWallets() - - const current_paths = wallets - .filter((wallet) => wallet.signer.type === "local_secret") - .map((wallet) => wallet.signer.derivation_path) - - const index = getNextPathIndex(current_paths) - const starkPair = getStarkPair(index, l1.privateKey) - const starkPub = ec.getStarkKey(starkPair) - const seed = starkPub //ec.getStarkKey(ec.genKeyPair()) - - const provider = getProvider(networkId) - const deployTransaction = await provider.deployContract( - ArgentCompiledContract, - compileCalldata({ signer: starkPub, guardian: "0" }), - seed, - ) - - // TODO: register a L1 address with the wallet as soon as some registry is online - - if ( - deployTransaction.code !== "TRANSACTION_RECEIVED" || - !deployTransaction.address - ) { - throw new Error("Deploy transaction failed") - } - - const newWallet = { - network: networkId, - address: deployTransaction.address, - signer: { - type: "local_secret", - derivation_path: getPathForIndex(index), - }, - } - const newWallets = [...wallets, newWallet] - const encKeystore = await getEncKeystore(l1, sessionPassword, newWallets) - store.setItem(STORAGE_KEY, encKeystore) - - return { - wallet: newWallet, - txHash: deployTransaction.transaction_hash, - wallets, - } -} - -export async function downloadBackupFile() { - const encKeystore = (await store.getItem(STORAGE_KEY)) ?? "" - downloadTextFile(encKeystore, "starknet-backup.json") -} - -export async function resetAll() { - lockWallet() - await browser.storage.local.clear() -} - -export const deleteAccount = async (account: string) => { - const keystore = JSON.parse(await getKeystore()) - const wallets = keystore.wallets.filter( - ({ address }: any) => address !== account, - ) - const newKeystore = JSON.stringify( - { ...keystore, "x-argent": { accounts: wallets } }, - null, - 2, - ) - await setKeystore(newKeystore) - await getL1() -} diff --git a/packages/extension/src/background/selectedWallet.ts b/packages/extension/src/background/selectedWallet.ts deleted file mode 100644 index 9c1322cc7..000000000 --- a/packages/extension/src/background/selectedWallet.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { BackupWallet } from "../shared/backup.model" -import { Storage } from "./storage" - -export const selectedWalletStore = new Storage<{ - SELECTED_WALLET: BackupWallet -}>({ - SELECTED_WALLET: { - address: "", - network: "", - signer: { type: "", derivation_path: "" }, - }, -}) diff --git a/packages/extension/src/background/signer/index.ts b/packages/extension/src/background/signer/index.ts deleted file mode 100644 index 08972452e..000000000 --- a/packages/extension/src/background/signer/index.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Signer } from "starknet" - -import { BackupWallet } from "../../shared/backup.model" -import { getProvider } from "../../shared/networks" -import { getStarkPair } from "../keys/keyDerivation" -import { getL1 } from "../keys/l1" - -export async function getSigner(wallet: BackupWallet): Promise { - const provider = getProvider(wallet.network) - - switch (wallet.signer.type) { - case "local_secret": - default: { - const l1 = await getL1() - const keyPair = getStarkPair(wallet.signer.derivation_path, l1.privateKey) - return new Signer(provider, wallet.address, keyPair) - } - } -} diff --git a/packages/extension/src/background/storage.ts b/packages/extension/src/background/storage.ts index 4a097356a..de1f3f83f 100644 --- a/packages/extension/src/background/storage.ts +++ b/packages/extension/src/background/storage.ts @@ -1,5 +1,7 @@ import browser from "webextension-polyfill" +import { IStorage } from "./interfaces" + export async function getFromStorage( key: K, ): Promise { @@ -14,13 +16,22 @@ export function setToStorage(key: string, value: any) { return browser.storage.local.set({ [key]: JSON.stringify(value) }) } -export class Storage> { +export function removeFromStorage(key: string) { + return browser.storage.local.remove(key) +} + +export function clearStorage() { + return browser.storage.local.clear +} + +export class Storage implements IStorage { private NS: string public defaults: T constructor(defaults: T, namespace = "") { this.NS = namespace this.defaults = defaults } + async getItem(key: K): Promise { return ( (await getFromStorage(this.NS + ":" + key.toString())) ?? @@ -30,4 +41,8 @@ export class Storage> { async setItem(key: K, value: T[K]): Promise { return setToStorage(this.NS + ":" + key.toString(), value) } + + async removeItem(key: K): Promise { + return removeFromStorage(this.NS + ":" + key.toString()) + } } diff --git a/packages/extension/src/background/trackTransactions.ts b/packages/extension/src/background/trackTransactions.ts index 641dee190..3aba9be9b 100644 --- a/packages/extension/src/background/trackTransactions.ts +++ b/packages/extension/src/background/trackTransactions.ts @@ -1,11 +1,11 @@ import { Provider } from "starknet" -import { BackupWallet } from "../shared/backup.model" import { getProvider } from "../shared/networks" import { TransactionMeta, TransactionStatus, } from "../shared/transactions.model" +import { WalletAccount } from "../shared/wallet.model" interface TransactionStatusWithProvider extends TransactionStatus { provider: Provider @@ -38,7 +38,7 @@ export class TransactionTracker { public async trackTransaction( transactionHash: string, - wallet: BackupWallet, + wallet: WalletAccount, meta: TransactionMeta = { title: "Contract interaction", }, diff --git a/packages/extension/src/background/wallet.ts b/packages/extension/src/background/wallet.ts new file mode 100644 index 000000000..ac8d7bdf8 --- /dev/null +++ b/packages/extension/src/background/wallet.ts @@ -0,0 +1,257 @@ +import { ethers } from "ethers" +import { Signer, compileCalldata, ec } from "starknet" + +import { getProvider } from "../shared/networks" +import { WalletAccount } from "../shared/wallet.model" +import { IStorage } from "./interfaces" +// import { Storage } from "../storage" +import { + getNextPathIndex, + getPathForIndex, + getStarkPair, +} from "./keys/keyDerivation" + +const isDev = process.env.NODE_ENV === "development" +const isTest = process.env.NODE_ENV === "test" +const isDevOrTest = isDev || isTest + +interface WalletSession { + secret: string + password: string +} + +export interface WalletStorageProps { + BACKUP?: string + SELECTED?: string +} + +export class Wallet { + private accounts: WalletAccount[] = [] + + private encryptedBackup: string | undefined + private session: WalletSession | undefined + + private store: IStorage + private compiledContract: string + + constructor(store: IStorage, compiledContract: string) { + this.store = store + this.compiledContract = compiledContract + } + + public async setup() { + await this.readBackup() + } + + public isInitialized(): boolean { + console.log("isInitialized") + return this.encryptedBackup !== undefined + } + + public isSessionOpen(): boolean { + return this.session !== undefined + } + + private async generateNewLocalSecret( + password: string, + progressFn?: (progress: number) => void, + ) { + if (this.isInitialized()) { + return + } + const N = isDevOrTest ? 64 : 32768 + const ethersWallet = ethers.Wallet.createRandom() + this.encryptedBackup = await ethersWallet.encrypt( + password, + { scrypt: { N } }, + progressFn, + ) + + await this.writeBackup() + this.setSession(ethersWallet.privateKey, password) + } + + public async startSession(password: string): Promise { + // session has already started + if (this.session) { + return true + } + + // wallet is not initialized: let's initialise it + if (!this.isInitialized()) { + await this.generateNewLocalSecret(password) + return true + } + + try { + const { privateKey: secret } = await ethers.Wallet.fromEncryptedJson( + this.encryptedBackup as string, + password, + ) + this.setSession(secret, password) + return true + } catch (error) { + return false + } + } + + public async addAccount( + networkId: string, + ): Promise<{ account: WalletAccount; txHash: string }> { + if (!this.isSessionOpen()) { + throw Error("no open session") + } + + const current_paths = this.accounts + .filter((account) => account.signer.type === "local_secret") + .map((account) => account.signer.derivation_path) + + const index = getNextPathIndex(current_paths) + const starkPair = getStarkPair(index, this.session?.secret as string) + const starkPub = ec.getStarkKey(starkPair) + const seed = starkPub //ec.getStarkKey(ec.genKeyPair()) + + const provider = getProvider(networkId) + const deployTransaction = await provider.deployContract( + this.compiledContract, + compileCalldata({ signer: starkPub, guardian: "0" }), + seed, + ) + + // TODO: register a L1 address with the wallet as soon as some registry is online + + if ( + deployTransaction.code !== "TRANSACTION_RECEIVED" || + !deployTransaction.address + ) { + throw new Error("Deploy transaction failed") + } + + const account = { + network: networkId, + address: deployTransaction.address, + signer: { + type: "local_secret", + derivation_path: getPathForIndex(index), + }, + } + + this.accounts.push(account) + + await this.writeBackup() + await this.selectAccount(deployTransaction.address) + + return { account, txHash: deployTransaction.transaction_hash } + } + + public getAccounts(): WalletAccount[] { + return this.accounts + } + + public async getSelectedAccountSigner(): Promise { + if (!this.isSessionOpen()) { + throw Error("no open session") + } + + const account = await this.getSelectedAccount() + + const keyPair = getStarkPair( + account.signer.derivation_path, + this.session?.secret as string, + ) + const provider = getProvider(account.network) + return new Signer(provider, account.address, keyPair) + } + + public async getSelectedAccount(): Promise { + if (this.accounts.length === 0) { + throw new Error("no accounts") + } + + const address = await this.store.getItem("SELECTED") + const account = this.accounts.find((account) => account.address === address) + return account ?? this.accounts[0] + } + + public async selectAccount(address: string) { + const account = this.accounts.find((account) => account.address === address) + if (account === undefined) { + return + } + await this.store.setItem("SELECTED", account.address) + } + + public async removeAccount(address: string) { + if (!this.isSessionOpen()) { + throw Error("no open session") + } + this.accounts = this.accounts.filter( + (account) => account.address !== address, + ) + await this.writeBackup() + } + + public lock() { + this.session = undefined + } + + public async importBackup(backupString: string) { + // validate backup schema here ! + await this.store.setItem("BACKUP", backupString) + await this.setup() + } + + public exportBackup(): { url: string; filename: string } { + if (!this.isInitialized()) { + throw Error("no local backup") + } + const blob = new Blob([this.encryptedBackup as string], { + type: "application/json", + }) + const url = URL.createObjectURL(blob) + const filename = "argent-x-backup.json" + return { url, filename } + } + + private setSession(secret: string, password: string) { + this.session = { secret, password } + if (!isTest) { + setTimeout(() => { + this.lock() + }, 15 * 60 * 60 * 1000) + } + } + + private async readBackup() { + this.encryptedBackup = await this.store.getItem("BACKUP") + if (this.encryptedBackup === undefined) { + return + } + const backup = JSON.parse(this.encryptedBackup) + // in the future, check version is compatible here + // and throw or migrate if not + if (backup["x-version"] !== 1) { + this.encryptedBackup = undefined + throw new Error("invalid keystore file format") + } + + this.accounts = backup["x-argent"].accounts + } + + private async writeBackup() { + if (this.encryptedBackup === undefined) { + return + } + const backup = JSON.parse(this.encryptedBackup) + const extendedBackup = { + ...backup, + "x-version": 1, + "x-argent": { + accounts: this.accounts, + }, + } + const backupString = JSON.stringify(extendedBackup) + await this.store.setItem("BACKUP", backupString) + this.encryptedBackup = backupString + } +} diff --git a/packages/extension/src/shared/MessageType.ts b/packages/extension/src/shared/MessageType.ts index 57963e6fa..a85f6a651 100644 --- a/packages/extension/src/shared/MessageType.ts +++ b/packages/extension/src/shared/MessageType.ts @@ -2,9 +2,9 @@ import type { JWK } from "jose" import type { InvokeFunctionTransaction, typedData } from "starknet" import { ExtActionItem } from "./actionQueue" -import { BackupWallet } from "./backup.model" import { AddToken } from "./token.model" import { TransactionStatus } from "./transactions.model" +import { WalletAccount } from "./wallet.model" export type MessageType = | { type: "OPEN_UI" } @@ -20,9 +20,9 @@ export type MessageType = data: ExtActionItem[] } | { type: "GET_SELECTED_WALLET" } - | { type: "GET_SELECTED_WALLET_RES"; data: BackupWallet } + | { type: "GET_SELECTED_WALLET_RES"; data: WalletAccount } | { type: "CONNECT"; data: { host: string } } - | { type: "CONNECT_RES"; data: BackupWallet } + | { type: "CONNECT_RES"; data: WalletAccount } | { type: "SUBMITTED_TX" data: { @@ -47,7 +47,7 @@ export type MessageType = | { type: "IS_WHITELIST"; data: string } | { type: "IS_WHITELIST_RES"; data: boolean } | { type: "RESET_WHITELIST" } - | { type: "WALLET_CONNECTED"; data: BackupWallet } + | { type: "WALLET_CONNECTED"; data: WalletAccount } | { type: "RESET_ALL" } | { type: "REQ_PUB" } | { type: "REQ_PUB_RES"; data: JWK } @@ -59,8 +59,8 @@ export type MessageType = status: "ok" txHash: string address: string - wallet: BackupWallet - wallets: BackupWallet[] + wallet: WalletAccount + wallets: WalletAccount[] } } | { type: "NEW_ACCOUNT_REJ"; data: { status: "ko"; error: string } } @@ -70,7 +70,7 @@ export type MessageType = | { type: "IS_INITIALIZED" } | { type: "IS_INITIALIZED_RES"; data: boolean } | { type: "GET_WALLETS" } - | { type: "GET_WALLETS_RES"; data: BackupWallet[] } + | { type: "GET_WALLETS_RES"; data: WalletAccount[] } | { type: "START_SESSION"; data: { secure: true; body: string } } | { type: "START_SESSION_REJ" } | { type: "START_SESSION_RES" } diff --git a/packages/extension/src/shared/backup.model.ts b/packages/extension/src/shared/backup.model.ts deleted file mode 100644 index 75fecb767..000000000 --- a/packages/extension/src/shared/backup.model.ts +++ /dev/null @@ -1,10 +0,0 @@ -export interface BackupWalletSigner { - type: string - derivation_path: string -} - -export interface BackupWallet { - address: string - network: string - signer: BackupWalletSigner -} diff --git a/packages/extension/src/shared/networks.ts b/packages/extension/src/shared/networks.ts index b5481d483..866cf071d 100644 --- a/packages/extension/src/shared/networks.ts +++ b/packages/extension/src/shared/networks.ts @@ -1,6 +1,6 @@ import { Provider } from "starknet" -import { BackupWallet } from "./backup.model" +import { WalletAccount } from "./wallet.model" export interface Network { id: string @@ -33,7 +33,7 @@ export const getNetwork = (networkId: string): Network => { return networks.find(({ id }) => id === networkId) || defaultNetwork } -export const networkWallets = (wallets: BackupWallet[], networkId: string) => +export const networkWallets = (wallets: WalletAccount[], networkId: string) => wallets.filter( ({ network }) => localNetworkId(network) === localNetworkId(networkId), ) diff --git a/packages/extension/src/shared/wallet.model.ts b/packages/extension/src/shared/wallet.model.ts new file mode 100644 index 000000000..247f669f4 --- /dev/null +++ b/packages/extension/src/shared/wallet.model.ts @@ -0,0 +1,10 @@ +export interface WalletAccountSigner { + type: string + derivation_path: string +} + +export interface WalletAccount { + address: string + network: string + signer: WalletAccountSigner +} diff --git a/packages/extension/src/ui/Account.ts b/packages/extension/src/ui/Account.ts index 932ca4a6f..a224407c7 100644 --- a/packages/extension/src/ui/Account.ts +++ b/packages/extension/src/ui/Account.ts @@ -1,9 +1,9 @@ import ArgentCompiledContract from "!!raw-loader!../contracts/ArgentAccount.txt" import { CompiledContract, Contract, json } from "starknet" -import { BackupWalletSigner } from "../shared/backup.model" import { sendMessage, waitForMessage } from "../shared/messages" import { getProvider } from "../shared/networks" +import { WalletAccountSigner } from "../shared/wallet.model" const ArgentCompiledContractJson: CompiledContract = json.parse( ArgentCompiledContract, @@ -12,14 +12,14 @@ const ArgentCompiledContractJson: CompiledContract = json.parse( export class Account { address: string networkId: string - signer: BackupWalletSigner + signer: WalletAccountSigner deployTransaction?: string contract: Contract constructor( address: string, networkId: string, - signer: BackupWalletSigner, + signer: WalletAccountSigner, deployTransaction?: string, ) { this.address = address diff --git a/packages/extension/test/backup.mock.json b/packages/extension/test/backup.mock.json new file mode 100644 index 000000000..288e4f782 --- /dev/null +++ b/packages/extension/test/backup.mock.json @@ -0,0 +1,41 @@ +{ + "address": "d34a9147bb9d4293d548e6163f1d3b06fea3d9ef", + "id": "3369142b-b008-45b5-aae4-c5aba532831f", + "version": 3, + "Crypto": { + "cipher": "aes-128-ctr", + "cipherparams": { "iv": "30a5f17ff2392afaee4c0b4797bb6d60" }, + "ciphertext": "c1675d661371e4b01e079bb181e7031f2d2f419621f20727b9d0f082f5c4a19f", + "kdf": "scrypt", + "kdfparams": { + "salt": "3f5b46d003fe6ef81eae075ad715f926c9df1a63e58eb810fdd5b67ca131393b", + "n": 64, + "dklen": 32, + "p": 1, + "r": 8 + }, + "mac": "f2df5f18fdca8a5f1a6be040f8f607057cc404bdf3d3db9a50fb32bfa8e4880d" + }, + "x-ethers": { + "client": "ethers.js", + "gethFilename": "UTC--2022-02-21T09-22-13.0Z--d34a9147bb9d4293d548e6163f1d3b06fea3d9ef", + "mnemonicCounter": "bbabecfca8065212cf0fb9923f9376b8", + "mnemonicCiphertext": "90f8520d33b5b2d5797a86462f61032e", + "path": "m/44'/60'/0'/0/0", + "locale": "en", + "version": "0.1" + }, + "x-version": 1, + "x-argent": { + "accounts": [ + { + "network": "http://localhost:5000", + "address": "0x06c67629cae87e7a1b284f1002747af681b39b8199f9263b9aed985e200d8f59", + "signer": { + "type": "local_secret", + "derivation_path": "m/2645'/1195502025'/1148870696'/0'/0'/0" + } + } + ] + } +} diff --git a/packages/extension/test/backup.schema.json b/packages/extension/test/backup.schema.json new file mode 100644 index 000000000..27017612f --- /dev/null +++ b/packages/extension/test/backup.schema.json @@ -0,0 +1,72 @@ +{ + "$id": "ArgentXBackupSchema", + "title": "Argent X Backup file", + "description": "Argent X Backup file", + "type": "object", + "properties": { + "x-version": { "type": "integer" }, + "address": { "type": "string" }, + "version": { "type": "integer" }, + "Crypto": { + "type": "object", + "properties": { + "cipher": { "type": "string" }, + "ciphertext": { "type": "string" }, + "kdf": { "type": "string" }, + "mac": { "type": "string" }, + "cipherparams": { + "type": "object", + "properties": { + "iv": { "type": "string" } + }, + "required": ["iv"] + }, + "kdfparams": { + "type": "object", + "properties": { + "salt": { "type": "string" }, + "n": { "type": "number" }, + "dklen": { "type": "number" }, + "p": { "type": "number" }, + "r": { "type": "number" } + }, + "required": ["salt", "n", "dklen", "p", "r"] + } + }, + "required": [ + "cipher", + "ciphertext", + "kdf", + "mac", + "cipherparams", + "kdfparams" + ] + }, + "x-argent": { + "type": "object", + "properties": { + "accounts": { + "type": "array", + "items": { + "type": "object", + "properties": { + "address": { "type": "string" }, + "network": { "type": "string" }, + "signer": { + "type": "object", + "properties": { + "type": { "type": "string" }, + "derivation_path": { "type": "string" } + }, + "required": ["type", "derivation_path"] + } + }, + "required": ["address", "network", "signer"] + } + } + }, + "required": ["accounts"] + } + }, + "required": ["x-version", "Crypto", "x-argent", "address", "version"] +} diff --git a/packages/extension/test/backup_wrong.mock.json b/packages/extension/test/backup_wrong.mock.json new file mode 100644 index 000000000..ad2d2d783 --- /dev/null +++ b/packages/extension/test/backup_wrong.mock.json @@ -0,0 +1,97 @@ +{ + "address": "118e75402cd82a69747e853113b126a42be57cac", + "id": "97f06943-1758-47dc-97e5-19fcd3486302", + "version": 3, + "Crypto": { + "cipher": "aes-128-ctr", + "cipherparams": { + "iv": "b94616acc138f299cb1c6d4a08192315" + }, + "ciphertext": "70bc7b5b8eac992bf5b8a62bcf981dd54435cc055405ec112482fc012185d952", + "kdf": "scrypt", + "kdfparams": { + "salt": "72999edf77f77938f514f6bdd6fd4b9aad43aa0c238e7cd7c2276c22a8995719", + "n": 64, + "dklen": 32, + "p": 1, + "r": 8 + }, + "mac": "88ac5a66aedf793a972466bc53ba26605f5ffdc00ff857e092b1d60c004f77e3" + }, + "x-ethers": { + "client": "ethers.js", + "gethFilename": "UTC--2021-12-03T12-11-13.0Z--118e75402cd82a69747e853113b126a42be57cac", + "mnemonicCounter": "169827b07254ee36b927c297cf135925", + "mnemonicCiphertext": "0a30bb7be18dc15ee0715cbddb111d00", + "path": "m/44'/60'/0'/0/0", + "locale": "en", + "version": "0.1" + }, + "wallets": [ + { + "network": "goerli-alpha", + "address": "0x3971ad091725c08550755ad8b3b26224861a010dc4f41f6e84ff125746f5c09" + }, + { + "network": "goerli-alpha", + "address": "0x1d780fcd405ce406afacd3a90c7e58c64b76c99290bb0b5c7ec5ff4977da013" + }, + { + "network": "goerli-alpha", + "address": "0x7996320c6d483f248d3bfaa3c2684cf3ae45f625f500ceb00cf8f7b32606fb3" + }, + { + "network": "goerli-alpha", + "address": "0x4e75b3096bf48895688df397390cd56351fc412571d98c4ab62b63b54ec4d76" + }, + { + "network": "goerli-alpha", + "address": "0xf0ceecd4e48bb45bceb31665811371560447b74e68f4086e2602ab83c96546" + }, + { + "network": "goerli-alpha", + "address": "0x47f3f2db53c93c9178b1060416253eedd3da4607661ef43d405abe9df1298a6", + "type": 0 + }, + { + "network": "goerli-alpha", + "address": "0x52fc9dda4c61cdf4cfba9b6cce5f8ec8eb471162aed5793b9f9eb440f4bed84", + "type": 1 + }, + { + "network": "goerli-alpha", + "address": "0x55e41fdfc8a9bb5494c6145ac8412bed8045d96766d8f0c7e692fc3590b067c", + "type": 1 + }, + { + "network": "goerli-alpha", + "address": "0x38e1e923860a2bc16b68c25d39972f9e05956f8894252ff61e8b42a81771bc", + "type": 1 + }, + { + "network": "goerli-alpha", + "address": "0x1475f89353c7b95faf510ab4852f080ddc76fd12fa6ff326c8955b78dc2fbc0", + "type": 1 + }, + { + "network": "goerli-alpha", + "address": "0x489aa864db26ce19d597984b31adea880c2198e637b276a0ee3357493f1d1a9", + "type": 1 + }, + { + "network": "goerli-alpha", + "address": "0x20019a823ecfca183894e16e748240d40c1b59799444bcebe35f30cc07ae06b", + "type": 1 + }, + { + "network": "goerli-alpha", + "address": "0x59e449776ef7962fc0f40136eb925d8864e4c0b8b7a4bfab58b71888ba5a29c", + "type": 1 + }, + { + "network": "goerli-alpha", + "address": "0x3e4bd8020473c60f2f89e2f15fba9c0ffe8f6df29823e80a2e52c7ae91921b5", + "type": 1 + } + ] +} diff --git a/packages/extension/test/wallet.test.ts b/packages/extension/test/wallet.test.ts new file mode 100644 index 000000000..2cdc6be54 --- /dev/null +++ b/packages/extension/test/wallet.test.ts @@ -0,0 +1,150 @@ +import fs from "fs" +import path from "path" + +import { matchers } from "jest-json-schema" + +import { IStorage } from "../src/background/interfaces" +import { Wallet, WalletStorageProps } from "../src/background/wallet" + +expect.extend(matchers) + +export class MockStorage implements IStorage { + public store: WalletStorageProps = {} + + async getItem(key: keyof WalletStorageProps): Promise { + return Promise.resolve(this.store[key] || undefined) + } + async setItem(key: keyof WalletStorageProps, value: string): Promise { + this.store[key] = value + return Promise.resolve() + } +} + +const compiledContract = fs.readFileSync( + path.join(__dirname, "../src/contracts/ArgentAccount.txt"), + "utf8", +) + +const backupSchema = JSON.parse( + fs.readFileSync(path.join(__dirname, "./backup.schema.json"), "utf8"), +) + +const backupString = fs.readFileSync( + path.join(__dirname, "./backup.mock.json"), + "utf8", +) + +const backupWrongString = fs.readFileSync( + path.join(__dirname, "./backup_wrong.mock.json"), + "utf8", +) + +const REGEX_HEXSTRING = /^0x[a-fA-F0-9]+/i + +const NETWORK = "http://localhost:5000" // "goerli-alpha" + +jest.setTimeout(999999) + +test("create a new wallet", async () => { + const storage = new MockStorage() + const wallet = new Wallet(storage, compiledContract) + await wallet.setup() + + expect(wallet.isInitialized()).toBe(false) + + const isValid = await wallet.startSession("my_secret_password") + + expect(isValid).toBe(true) + expect(wallet.isInitialized()).toBe(true) + expect(wallet.isSessionOpen()).toBe(true) + + const backupWithoutAccount = await storage.getItem("BACKUP") + expect(backupWithoutAccount).toBeDefined() + expect(JSON.parse(backupWithoutAccount as string)).toMatchSchema(backupSchema) + + const { txHash } = await wallet.addAccount(NETWORK) + expect(txHash).toMatch(REGEX_HEXSTRING) + + const accounts = wallet.getAccounts() + expect(accounts).toHaveLength(1) + + const backupWithAccount = await storage.getItem("BACKUP") + expect(backupWithAccount).toBeDefined() + expect(JSON.parse(backupWithAccount as string)).toMatchSchema(backupSchema) + + const selectedAccount = await wallet.getSelectedAccount() + expect(selectedAccount).toBeDefined() +}) + +test("open existing wallet", async () => { + const storage = new MockStorage() + storage.setItem("BACKUP", backupString) + const wallet = new Wallet(storage, compiledContract) + await wallet.setup() + + expect(wallet.isInitialized()).toBe(true) + + const isValid = await wallet.startSession("my_secret_password") + expect(isValid).toBe(true) + expect(wallet.isSessionOpen()).toBe(true) + + const accounts = wallet.getAccounts() + expect(accounts).toHaveLength(1) + const account = accounts[0] + expect(account.address).toBe( + "0x06c67629cae87e7a1b284f1002747af681b39b8199f9263b9aed985e200d8f59", + ) + + const backupWithAccount = await storage.getItem("BACKUP") + expect(backupWithAccount).toBeDefined() + expect(JSON.parse(backupWithAccount as string)).toMatchSchema(backupSchema) + + const selectedAccount = await wallet.getSelectedAccount() + expect(selectedAccount).toBeDefined() + expect(selectedAccount?.address).toBe( + "0x06c67629cae87e7a1b284f1002747af681b39b8199f9263b9aed985e200d8f59", + ) +}) + +test("open existing wallet with wrong password", async () => { + const storage = new MockStorage() + storage.setItem("BACKUP", backupString) + const wallet = new Wallet(storage, compiledContract) + await wallet.setup() + + expect(wallet.isInitialized()).toBe(true) + + const isValid = await wallet.startSession("my_falsy_secret_password") + expect(isValid).toBe(false) + expect(wallet.isSessionOpen()).toBe(false) +}) + +test("import backup file", async () => { + const storage = new MockStorage() + const wallet = new Wallet(storage, compiledContract) + await wallet.setup() + + expect(wallet.isInitialized()).toBe(false) + + await wallet.importBackup(backupString) + + expect(wallet.isInitialized()).toBe(true) + + const isValid = await wallet.startSession("my_secret_password") + expect(isValid).toBe(true) + expect(wallet.isSessionOpen()).toBe(true) +}) + +test.skip("import wront backup file", async () => { + const storage = new MockStorage() + const wallet = new Wallet(storage, compiledContract) + await wallet.setup() + + expect(wallet.isInitialized()).toBe(false) + + expect(async () => { + await wallet.importBackup(backupWrongString) + }).toThrowError("invalid keystore") + + expect(wallet.isInitialized()).toBe(false) +}) diff --git a/yarn.lock b/yarn.lock index 49859f7d9..15aa5c7e3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3187,7 +3187,15 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/jest@^27.4.0": +"@types/jest-json-schema@^6.1.0": + version "6.1.0" + resolved "https://registry.yarnpkg.com/@types/jest-json-schema/-/jest-json-schema-6.1.0.tgz#99ee02d022d62dc94a2a5ace34e94841cffb6eb1" + integrity sha512-8e9qbbrXbDCxLQTLca84AF2oWTxa/Vd3tiOLq7cblsY6zgtk7JgZ7nsfYxqLQEWjXF3IC4sqOHsA84R/hr555Q== + dependencies: + "@types/jest" "*" + ajv "^6.10.2" + +"@types/jest@*", "@types/jest@^27.4.0": version "27.4.0" resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.4.0.tgz#037ab8b872067cae842a320841693080f9cb84ed" integrity sha512-gHl8XuC1RZ8H2j5sHv/JqsaxXkDDM9iDOgu0Wp8sjs4u/snb2PVehyWXJPr+ORA0RPpgw231mnutWI1+0hgjIQ== @@ -3674,7 +3682,7 @@ ajv-keywords@^5.0.0: dependencies: fast-deep-equal "^3.1.3" -ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: +ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -3694,6 +3702,16 @@ ajv@^8.0.0, ajv@^8.8.0: require-from-string "^2.0.2" uri-js "^4.2.2" +ajv@^8.8.2: + version "8.10.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.10.0.tgz#e573f719bd3af069017e3b66538ab968d040e54d" + integrity sha512-bzqAEZOjkrUMl2afH8dknrq5KEk2SrwdBROR+vH1EKVQTqaUbJVPdc/gEdggTMM0Se+s+Ja4ju4TlNcStKl2Hw== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + ansi-escapes@^4.2.1: version "4.3.2" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" @@ -4245,7 +4263,7 @@ chalk@^2.0.0: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^4.0.0, chalk@^4.1.0: +chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== @@ -6768,6 +6786,16 @@ jest-jasmine2@^27.5.1: pretty-format "^27.5.1" throat "^6.0.1" +jest-json-schema@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/jest-json-schema/-/jest-json-schema-6.1.0.tgz#68ccc23424a7b20550d59ab9186530f81113e6af" + integrity sha512-LMHuLmKjr/4X+H8v1xF5TEwfYEkzwGeWJ0epYQVQhlVTDDR5FWCdSO8vmsecb5cLf9NeWAqMKn3qhJvP9um0AA== + dependencies: + ajv "^8.8.2" + ajv-formats "^2.1.1" + chalk "^4.1.2" + jest-matcher-utils "^27.3.1" + jest-leak-detector@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8" @@ -6776,7 +6804,7 @@ jest-leak-detector@^27.5.1: jest-get-type "^27.5.1" pretty-format "^27.5.1" -jest-matcher-utils@^27.5.1: +jest-matcher-utils@^27.3.1, jest-matcher-utils@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw== From fc06895d5c8081cdeaf8a6a64495ad18325a1854 Mon Sep 17 00:00:00 2001 From: Gerald Date: Mon, 21 Feb 2022 19:00:24 +0100 Subject: [PATCH 05/86] add backup file validation --- packages/extension/package.json | 2 +- .../background/schema}/backup.schema.json | 2 +- packages/extension/src/background/wallet.ts | 36 ++++++++++++++----- packages/extension/test/wallet.test.ts | 27 ++++---------- yarn.lock | 2 +- 5 files changed, 37 insertions(+), 32 deletions(-) rename packages/extension/{test => src/background/schema}/backup.schema.json (96%) diff --git a/packages/extension/package.json b/packages/extension/package.json index 458321cf2..c8964e36d 100644 --- a/packages/extension/package.json +++ b/packages/extension/package.json @@ -22,7 +22,6 @@ "file-loader": "^6.2.0", "html-webpack-plugin": "^5.5.0", "jest": "^27.5.1", - "jest-json-schema": "^6.1.0", "raw-loader": "^4.0.2", "ts-jest": "^27.1.3", "ts-loader": "^9.2.6", @@ -45,6 +44,7 @@ "@mui/material": "^5.1.0", "@mui/styled-engine-sc": "^5.1.0", "@tippyjs/react": "^4.2.6", + "ajv": "^8.10.0", "ethers": "^5.5.1", "jose": "^4.3.6", "object-hash": "^3.0.0", diff --git a/packages/extension/test/backup.schema.json b/packages/extension/src/background/schema/backup.schema.json similarity index 96% rename from packages/extension/test/backup.schema.json rename to packages/extension/src/background/schema/backup.schema.json index 27017612f..ee4dcedad 100644 --- a/packages/extension/test/backup.schema.json +++ b/packages/extension/src/background/schema/backup.schema.json @@ -4,7 +4,7 @@ "description": "Argent X Backup file", "type": "object", "properties": { - "x-version": { "type": "integer" }, + "x-version": { "type": "integer", "minimum": 1, "maximum": 1 }, "address": { "type": "string" }, "version": { "type": "integer" }, "Crypto": { diff --git a/packages/extension/src/background/wallet.ts b/packages/extension/src/background/wallet.ts index ac8d7bdf8..8a4562620 100644 --- a/packages/extension/src/background/wallet.ts +++ b/packages/extension/src/background/wallet.ts @@ -1,20 +1,25 @@ +import Ajv from "ajv" import { ethers } from "ethers" import { Signer, compileCalldata, ec } from "starknet" import { getProvider } from "../shared/networks" import { WalletAccount } from "../shared/wallet.model" import { IStorage } from "./interfaces" -// import { Storage } from "../storage" import { getNextPathIndex, getPathForIndex, getStarkPair, } from "./keys/keyDerivation" +import backupSchema from "./schema/backup.schema.json" const isDev = process.env.NODE_ENV === "development" const isTest = process.env.NODE_ENV === "test" const isDevOrTest = isDev || isTest +const CURRENT_BACKUP_VERSION = 1 + +const ajv = new Ajv() + interface WalletSession { secret: string password: string @@ -44,7 +49,6 @@ export class Wallet { } public isInitialized(): boolean { - console.log("isInitialized") return this.encryptedBackup !== undefined } @@ -196,7 +200,9 @@ export class Wallet { } public async importBackup(backupString: string) { - // validate backup schema here ! + if (!Wallet.validateBackup(backupString)) { + throw new Error("invalid backup file") + } await this.store.setItem("BACKUP", backupString) await this.setup() } @@ -213,6 +219,15 @@ export class Wallet { return { url, filename } } + public static validateBackup(backupString: string): boolean { + try { + const backup = JSON.parse(backupString) + return ajv.validate(backupSchema, backup) + } catch (error) { + return false + } + } + private setSession(secret: string, password: string) { this.session = { secret, password } if (!isTest) { @@ -227,12 +242,15 @@ export class Wallet { if (this.encryptedBackup === undefined) { return } - const backup = JSON.parse(this.encryptedBackup) - // in the future, check version is compatible here - // and throw or migrate if not - if (backup["x-version"] !== 1) { + + if (!Wallet.validateBackup(this.encryptedBackup)) { this.encryptedBackup = undefined - throw new Error("invalid keystore file format") + throw new Error("invalid backup file in local storage") + } + + const backup = JSON.parse(this.encryptedBackup) + if (backup["x-version"] !== CURRENT_BACKUP_VERSION) { + // in the future, backup file migration will happen here } this.accounts = backup["x-argent"].accounts @@ -245,7 +263,7 @@ export class Wallet { const backup = JSON.parse(this.encryptedBackup) const extendedBackup = { ...backup, - "x-version": 1, + "x-version": CURRENT_BACKUP_VERSION, "x-argent": { accounts: this.accounts, }, diff --git a/packages/extension/test/wallet.test.ts b/packages/extension/test/wallet.test.ts index 2cdc6be54..4a021eabd 100644 --- a/packages/extension/test/wallet.test.ts +++ b/packages/extension/test/wallet.test.ts @@ -1,12 +1,13 @@ import fs from "fs" import path from "path" -import { matchers } from "jest-json-schema" - import { IStorage } from "../src/background/interfaces" import { Wallet, WalletStorageProps } from "../src/background/wallet" +import backupWrong from "./backup_wrong.mock.json" +import backup from "./backup.mock.json" -expect.extend(matchers) +const backupString = JSON.stringify(backup) +const backupWrongString = JSON.stringify(backupWrong) export class MockStorage implements IStorage { public store: WalletStorageProps = {} @@ -25,20 +26,6 @@ const compiledContract = fs.readFileSync( "utf8", ) -const backupSchema = JSON.parse( - fs.readFileSync(path.join(__dirname, "./backup.schema.json"), "utf8"), -) - -const backupString = fs.readFileSync( - path.join(__dirname, "./backup.mock.json"), - "utf8", -) - -const backupWrongString = fs.readFileSync( - path.join(__dirname, "./backup_wrong.mock.json"), - "utf8", -) - const REGEX_HEXSTRING = /^0x[a-fA-F0-9]+/i const NETWORK = "http://localhost:5000" // "goerli-alpha" @@ -60,7 +47,7 @@ test("create a new wallet", async () => { const backupWithoutAccount = await storage.getItem("BACKUP") expect(backupWithoutAccount).toBeDefined() - expect(JSON.parse(backupWithoutAccount as string)).toMatchSchema(backupSchema) + expect(Wallet.validateBackup(backupWithoutAccount as string)).toBe(true) const { txHash } = await wallet.addAccount(NETWORK) expect(txHash).toMatch(REGEX_HEXSTRING) @@ -70,7 +57,7 @@ test("create a new wallet", async () => { const backupWithAccount = await storage.getItem("BACKUP") expect(backupWithAccount).toBeDefined() - expect(JSON.parse(backupWithAccount as string)).toMatchSchema(backupSchema) + expect(Wallet.validateBackup(backupWithAccount as string)).toBe(true) const selectedAccount = await wallet.getSelectedAccount() expect(selectedAccount).toBeDefined() @@ -97,7 +84,7 @@ test("open existing wallet", async () => { const backupWithAccount = await storage.getItem("BACKUP") expect(backupWithAccount).toBeDefined() - expect(JSON.parse(backupWithAccount as string)).toMatchSchema(backupSchema) + expect(Wallet.validateBackup(backupWithAccount as string)).toBe(true) const selectedAccount = await wallet.getSelectedAccount() expect(selectedAccount).toBeDefined() diff --git a/yarn.lock b/yarn.lock index 15aa5c7e3..03e100a72 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3702,7 +3702,7 @@ ajv@^8.0.0, ajv@^8.8.0: require-from-string "^2.0.2" uri-js "^4.2.2" -ajv@^8.8.2: +ajv@^8.10.0, ajv@^8.8.2: version "8.10.0" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.10.0.tgz#e573f719bd3af069017e3b66538ab968d040e54d" integrity sha512-bzqAEZOjkrUMl2afH8dknrq5KEk2SrwdBROR+vH1EKVQTqaUbJVPdc/gEdggTMM0Se+s+Ja4ju4TlNcStKl2Hw== From cd7202ce278b0a5e9858a24453bd22bb9cc49d18 Mon Sep 17 00:00:00 2001 From: Gerald Date: Mon, 21 Feb 2022 21:29:24 +0100 Subject: [PATCH 06/86] testing wallet lock after SESSION_DURATION --- packages/extension/src/background/wallet.ts | 10 ++++---- packages/extension/test/wallet.test.ts | 26 ++++++++++++++++++++- 2 files changed, 30 insertions(+), 6 deletions(-) diff --git a/packages/extension/src/background/wallet.ts b/packages/extension/src/background/wallet.ts index 8a4562620..ac03e06cc 100644 --- a/packages/extension/src/background/wallet.ts +++ b/packages/extension/src/background/wallet.ts @@ -17,6 +17,7 @@ const isTest = process.env.NODE_ENV === "test" const isDevOrTest = isDev || isTest const CURRENT_BACKUP_VERSION = 1 +export const SESSION_DURATION = 15 * 60 * 60 * 1000 // 15 hours const ajv = new Ajv() @@ -230,11 +231,10 @@ export class Wallet { private setSession(secret: string, password: string) { this.session = { secret, password } - if (!isTest) { - setTimeout(() => { - this.lock() - }, 15 * 60 * 60 * 1000) - } + + setTimeout(() => { + this.lock() + }, SESSION_DURATION) } private async readBackup() { diff --git a/packages/extension/test/wallet.test.ts b/packages/extension/test/wallet.test.ts index 4a021eabd..e2e9d50a7 100644 --- a/packages/extension/test/wallet.test.ts +++ b/packages/extension/test/wallet.test.ts @@ -2,7 +2,11 @@ import fs from "fs" import path from "path" import { IStorage } from "../src/background/interfaces" -import { Wallet, WalletStorageProps } from "../src/background/wallet" +import { + SESSION_DURATION, + Wallet, + WalletStorageProps, +} from "../src/background/wallet" import backupWrong from "./backup_wrong.mock.json" import backup from "./backup.mock.json" @@ -27,12 +31,19 @@ const compiledContract = fs.readFileSync( ) const REGEX_HEXSTRING = /^0x[a-fA-F0-9]+/i +const SESSION_DURATION_PLUS_ONE_SEC = SESSION_DURATION + 1000 const NETWORK = "http://localhost:5000" // "goerli-alpha" jest.setTimeout(999999) +afterEach(() => { + jest.useRealTimers() +}) + test("create a new wallet", async () => { + jest.useFakeTimers() + const storage = new MockStorage() const wallet = new Wallet(storage, compiledContract) await wallet.setup() @@ -61,9 +72,14 @@ test("create a new wallet", async () => { const selectedAccount = await wallet.getSelectedAccount() expect(selectedAccount).toBeDefined() + + jest.advanceTimersByTime(SESSION_DURATION_PLUS_ONE_SEC) + expect(wallet.isSessionOpen()).toBe(false) }) test("open existing wallet", async () => { + jest.useFakeTimers() + const storage = new MockStorage() storage.setItem("BACKUP", backupString) const wallet = new Wallet(storage, compiledContract) @@ -91,6 +107,9 @@ test("open existing wallet", async () => { expect(selectedAccount?.address).toBe( "0x06c67629cae87e7a1b284f1002747af681b39b8199f9263b9aed985e200d8f59", ) + + jest.advanceTimersByTime(SESSION_DURATION_PLUS_ONE_SEC) + expect(wallet.isSessionOpen()).toBe(false) }) test("open existing wallet with wrong password", async () => { @@ -107,6 +126,8 @@ test("open existing wallet with wrong password", async () => { }) test("import backup file", async () => { + jest.useFakeTimers() + const storage = new MockStorage() const wallet = new Wallet(storage, compiledContract) await wallet.setup() @@ -120,6 +141,9 @@ test("import backup file", async () => { const isValid = await wallet.startSession("my_secret_password") expect(isValid).toBe(true) expect(wallet.isSessionOpen()).toBe(true) + + jest.advanceTimersByTime(SESSION_DURATION_PLUS_ONE_SEC) + expect(wallet.isSessionOpen()).toBe(false) }) test.skip("import wront backup file", async () => { From ab82f8ce350d764f758c045f3fa9d88ae12b6fec Mon Sep 17 00:00:00 2001 From: Gerald Date: Mon, 21 Feb 2022 22:06:06 +0100 Subject: [PATCH 07/86] test: fix "import wrong backup file" --- packages/extension/test/wallet.test.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/extension/test/wallet.test.ts b/packages/extension/test/wallet.test.ts index e2e9d50a7..f8204fb96 100644 --- a/packages/extension/test/wallet.test.ts +++ b/packages/extension/test/wallet.test.ts @@ -146,16 +146,16 @@ test("import backup file", async () => { expect(wallet.isSessionOpen()).toBe(false) }) -test.skip("import wront backup file", async () => { +test("import wrong backup file", async () => { const storage = new MockStorage() const wallet = new Wallet(storage, compiledContract) await wallet.setup() expect(wallet.isInitialized()).toBe(false) - expect(async () => { - await wallet.importBackup(backupWrongString) - }).toThrowError("invalid keystore") + await expect(wallet.importBackup(backupWrongString)).rejects.toThrow( + "invalid backup file", + ) expect(wallet.isInitialized()).toBe(false) }) From 15616ae2726f6ede214e20b29a312243de2d2654 Mon Sep 17 00:00:00 2001 From: Gerald Date: Mon, 21 Feb 2022 22:31:00 +0100 Subject: [PATCH 08/86] move storage into a dedicated folder --- .../extension/src/background/{storage.ts => storage/default.ts} | 2 +- packages/extension/src/background/storage/index.ts | 2 ++ .../src/background/{interfaces.ts => storage/interface.ts} | 0 packages/extension/src/background/wallet.ts | 2 +- packages/extension/test/wallet.test.ts | 2 +- 5 files changed, 5 insertions(+), 3 deletions(-) rename packages/extension/src/background/{storage.ts => storage/default.ts} (96%) create mode 100644 packages/extension/src/background/storage/index.ts rename packages/extension/src/background/{interfaces.ts => storage/interface.ts} (100%) diff --git a/packages/extension/src/background/storage.ts b/packages/extension/src/background/storage/default.ts similarity index 96% rename from packages/extension/src/background/storage.ts rename to packages/extension/src/background/storage/default.ts index de1f3f83f..6040e4484 100644 --- a/packages/extension/src/background/storage.ts +++ b/packages/extension/src/background/storage/default.ts @@ -1,6 +1,6 @@ import browser from "webextension-polyfill" -import { IStorage } from "./interfaces" +import { IStorage } from "./interface" export async function getFromStorage( key: K, diff --git a/packages/extension/src/background/storage/index.ts b/packages/extension/src/background/storage/index.ts new file mode 100644 index 000000000..156dc1e4e --- /dev/null +++ b/packages/extension/src/background/storage/index.ts @@ -0,0 +1,2 @@ +export * from "./interface" +export * from "./default" diff --git a/packages/extension/src/background/interfaces.ts b/packages/extension/src/background/storage/interface.ts similarity index 100% rename from packages/extension/src/background/interfaces.ts rename to packages/extension/src/background/storage/interface.ts diff --git a/packages/extension/src/background/wallet.ts b/packages/extension/src/background/wallet.ts index ac03e06cc..8d78d084a 100644 --- a/packages/extension/src/background/wallet.ts +++ b/packages/extension/src/background/wallet.ts @@ -4,13 +4,13 @@ import { Signer, compileCalldata, ec } from "starknet" import { getProvider } from "../shared/networks" import { WalletAccount } from "../shared/wallet.model" -import { IStorage } from "./interfaces" import { getNextPathIndex, getPathForIndex, getStarkPair, } from "./keys/keyDerivation" import backupSchema from "./schema/backup.schema.json" +import { IStorage } from "./storage" const isDev = process.env.NODE_ENV === "development" const isTest = process.env.NODE_ENV === "test" diff --git a/packages/extension/test/wallet.test.ts b/packages/extension/test/wallet.test.ts index f8204fb96..ca7bea536 100644 --- a/packages/extension/test/wallet.test.ts +++ b/packages/extension/test/wallet.test.ts @@ -1,7 +1,7 @@ import fs from "fs" import path from "path" -import { IStorage } from "../src/background/interfaces" +import { IStorage } from "../src/background/storage" import { SESSION_DURATION, Wallet, From ab120b8b28c8114386f9dffaec1e282500062ab1 Mon Sep 17 00:00:00 2001 From: Gerald Date: Tue, 22 Feb 2022 08:55:33 +0100 Subject: [PATCH 09/86] add tests to ci --- .github/workflows/test.yml | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 000000000..6eaf621ff --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,30 @@ +name: Run Tests +on: + push: + branches: [main] + pull_request: + branches: [main] + +jobs: + test: + runs-on: ubuntu-latest + + services: + devnet: + image: shardlabs/starknet-devnet + ports: + - 5000:5000 + + steps: + - name: Check out repository code + uses: actions/checkout@v2 + + - uses: actions/setup-node@v2 + with: + node-version: "14" + + - name: Install dependencies + run: yarn install --frozen-lockfile + + - name: Run tests + run: yarn --cwd packages/extension test From 9578cd2fd8a6e5310c43c4a04c992ba11d410869 Mon Sep 17 00:00:00 2001 From: Gerald Date: Tue, 22 Feb 2022 14:28:04 +0100 Subject: [PATCH 10/86] fixes --- packages/extension/src/background/index.ts | 2 +- .../src/background/keys/keyDerivation.ts | 10 ++--- .../src/background/schema/backup.schema.json | 4 +- .../src/background/storage/default.ts | 2 +- packages/extension/src/background/wallet.ts | 45 +++++++++---------- packages/extension/src/shared/wallet.model.ts | 2 +- packages/extension/test/backup.mock.json | 2 +- packages/extension/test/wallet.test.ts | 13 +++--- 8 files changed, 37 insertions(+), 43 deletions(-) diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index f244bb5b0..6b3714ae4 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -31,7 +31,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" ;(async () => { const { privateKey, publicKeyJwk } = await getKeyPair() - const storage = new Storage({}, "WALLET") + const storage = new Storage({}, "wallet") const wallet = new Wallet(storage, ArgentCompiledContract) await wallet.setup() diff --git a/packages/extension/src/background/keys/keyDerivation.ts b/packages/extension/src/background/keys/keyDerivation.ts index 9507cc37a..1678e5493 100644 --- a/packages/extension/src/background/keys/keyDerivation.ts +++ b/packages/extension/src/background/keys/keyDerivation.ts @@ -17,8 +17,8 @@ export function getStarkPair( const path = typeof indexOrPath === "number" ? getPathForIndex(indexOrPath) : indexOrPath const childNode = masterNode.derivePath(path) - const grindedKey = grindKey(childNode.privateKey) - const starkPair = ec.getKeyPair(grindedKey) + const groundKey = grindKey(childNode.privateKey) + const starkPair = ec.getKeyPair(groundKey) return starkPair } @@ -43,13 +43,13 @@ export function getNextPathIndex(paths: string[]) { } export function grindKey(keySeed: string) { - const keyValLimit = ec.ec.n + const keyValueLimit = ec.ec.n const sha256EcMaxDigest = number.toBN( "1 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000", 16, ) const maxAllowedVal = sha256EcMaxDigest.sub( - sha256EcMaxDigest.mod(keyValLimit), + sha256EcMaxDigest.mod(keyValueLimit), ) // Make sure the produced key is devided by the Stark EC order, @@ -61,7 +61,7 @@ export function grindKey(keySeed: string) { i++ } while (!key.lt(maxAllowedVal)) - return "0x" + key.umod(keyValLimit).toString("hex") + return "0x" + key.umod(keyValueLimit).toString("hex") } function hashKeyWithIndex(key: string, index: number) { diff --git a/packages/extension/src/background/schema/backup.schema.json b/packages/extension/src/background/schema/backup.schema.json index ee4dcedad..12b86aa0f 100644 --- a/packages/extension/src/background/schema/backup.schema.json +++ b/packages/extension/src/background/schema/backup.schema.json @@ -56,9 +56,9 @@ "type": "object", "properties": { "type": { "type": "string" }, - "derivation_path": { "type": "string" } + "derivationPath": { "type": "string" } }, - "required": ["type", "derivation_path"] + "required": ["type", "derivationPath"] } }, "required": ["address", "network", "signer"] diff --git a/packages/extension/src/background/storage/default.ts b/packages/extension/src/background/storage/default.ts index 6040e4484..1bc08ca1d 100644 --- a/packages/extension/src/background/storage/default.ts +++ b/packages/extension/src/background/storage/default.ts @@ -21,7 +21,7 @@ export function removeFromStorage(key: string) { } export function clearStorage() { - return browser.storage.local.clear + return browser.storage.local.clear() } export class Storage implements IStorage { diff --git a/packages/extension/src/background/wallet.ts b/packages/extension/src/background/wallet.ts index 8d78d084a..30b560029 100644 --- a/packages/extension/src/background/wallet.ts +++ b/packages/extension/src/background/wallet.ts @@ -27,15 +27,15 @@ interface WalletSession { } export interface WalletStorageProps { - BACKUP?: string - SELECTED?: string + backup?: string + selected?: string } export class Wallet { private accounts: WalletAccount[] = [] - private encryptedBackup: string | undefined - private session: WalletSession | undefined + private encryptedBackup?: string + private session?: WalletSession private store: IStorage private compiledContract: string @@ -57,20 +57,15 @@ export class Wallet { return this.session !== undefined } - private async generateNewLocalSecret( - password: string, - progressFn?: (progress: number) => void, - ) { + private async generateNewLocalSecret(password: string) { if (this.isInitialized()) { return } const N = isDevOrTest ? 64 : 32768 const ethersWallet = ethers.Wallet.createRandom() - this.encryptedBackup = await ethersWallet.encrypt( - password, - { scrypt: { N } }, - progressFn, - ) + this.encryptedBackup = await ethersWallet.encrypt(password, { + scrypt: { N }, + }) await this.writeBackup() this.setSession(ethersWallet.privateKey, password) @@ -109,12 +104,12 @@ export class Wallet { const current_paths = this.accounts .filter((account) => account.signer.type === "local_secret") - .map((account) => account.signer.derivation_path) + .map((account) => account.signer.derivationPath) const index = getNextPathIndex(current_paths) const starkPair = getStarkPair(index, this.session?.secret as string) const starkPub = ec.getStarkKey(starkPair) - const seed = starkPub //ec.getStarkKey(ec.genKeyPair()) + const seed = starkPub const provider = getProvider(networkId) const deployTransaction = await provider.deployContract( @@ -137,7 +132,7 @@ export class Wallet { address: deployTransaction.address, signer: { type: "local_secret", - derivation_path: getPathForIndex(index), + derivationPath: getPathForIndex(index), }, } @@ -161,7 +156,7 @@ export class Wallet { const account = await this.getSelectedAccount() const keyPair = getStarkPair( - account.signer.derivation_path, + account.signer.derivationPath, this.session?.secret as string, ) const provider = getProvider(account.network) @@ -173,7 +168,7 @@ export class Wallet { throw new Error("no accounts") } - const address = await this.store.getItem("SELECTED") + const address = await this.store.getItem("selected") const account = this.accounts.find((account) => account.address === address) return account ?? this.accounts[0] } @@ -183,7 +178,7 @@ export class Wallet { if (account === undefined) { return } - await this.store.setItem("SELECTED", account.address) + await this.store.setItem("selected", account.address) } public async removeAccount(address: string) { @@ -204,15 +199,15 @@ export class Wallet { if (!Wallet.validateBackup(backupString)) { throw new Error("invalid backup file") } - await this.store.setItem("BACKUP", backupString) + await this.store.setItem("backup", backupString) await this.setup() } public exportBackup(): { url: string; filename: string } { - if (!this.isInitialized()) { + if (this.encryptedBackup === undefined) { throw Error("no local backup") } - const blob = new Blob([this.encryptedBackup as string], { + const blob = new Blob([this.encryptedBackup], { type: "application/json", }) const url = URL.createObjectURL(blob) @@ -224,7 +219,7 @@ export class Wallet { try { const backup = JSON.parse(backupString) return ajv.validate(backupSchema, backup) - } catch (error) { + } catch { return false } } @@ -238,7 +233,7 @@ export class Wallet { } private async readBackup() { - this.encryptedBackup = await this.store.getItem("BACKUP") + this.encryptedBackup = await this.store.getItem("backup") if (this.encryptedBackup === undefined) { return } @@ -269,7 +264,7 @@ export class Wallet { }, } const backupString = JSON.stringify(extendedBackup) - await this.store.setItem("BACKUP", backupString) + await this.store.setItem("backup", backupString) this.encryptedBackup = backupString } } diff --git a/packages/extension/src/shared/wallet.model.ts b/packages/extension/src/shared/wallet.model.ts index 247f669f4..861559082 100644 --- a/packages/extension/src/shared/wallet.model.ts +++ b/packages/extension/src/shared/wallet.model.ts @@ -1,6 +1,6 @@ export interface WalletAccountSigner { type: string - derivation_path: string + derivationPath: string } export interface WalletAccount { diff --git a/packages/extension/test/backup.mock.json b/packages/extension/test/backup.mock.json index 288e4f782..b6b14ed58 100644 --- a/packages/extension/test/backup.mock.json +++ b/packages/extension/test/backup.mock.json @@ -33,7 +33,7 @@ "address": "0x06c67629cae87e7a1b284f1002747af681b39b8199f9263b9aed985e200d8f59", "signer": { "type": "local_secret", - "derivation_path": "m/2645'/1195502025'/1148870696'/0'/0'/0" + "derivationPath": "m/2645'/1195502025'/1148870696'/0'/0'/0" } } ] diff --git a/packages/extension/test/wallet.test.ts b/packages/extension/test/wallet.test.ts index ca7bea536..0a9ba97a3 100644 --- a/packages/extension/test/wallet.test.ts +++ b/packages/extension/test/wallet.test.ts @@ -17,11 +17,10 @@ export class MockStorage implements IStorage { public store: WalletStorageProps = {} async getItem(key: keyof WalletStorageProps): Promise { - return Promise.resolve(this.store[key] || undefined) + return Promise.resolve(this.store[key]) } async setItem(key: keyof WalletStorageProps, value: string): Promise { this.store[key] = value - return Promise.resolve() } } @@ -56,7 +55,7 @@ test("create a new wallet", async () => { expect(wallet.isInitialized()).toBe(true) expect(wallet.isSessionOpen()).toBe(true) - const backupWithoutAccount = await storage.getItem("BACKUP") + const backupWithoutAccount = await storage.getItem("backup") expect(backupWithoutAccount).toBeDefined() expect(Wallet.validateBackup(backupWithoutAccount as string)).toBe(true) @@ -66,7 +65,7 @@ test("create a new wallet", async () => { const accounts = wallet.getAccounts() expect(accounts).toHaveLength(1) - const backupWithAccount = await storage.getItem("BACKUP") + const backupWithAccount = await storage.getItem("backup") expect(backupWithAccount).toBeDefined() expect(Wallet.validateBackup(backupWithAccount as string)).toBe(true) @@ -81,7 +80,7 @@ test("open existing wallet", async () => { jest.useFakeTimers() const storage = new MockStorage() - storage.setItem("BACKUP", backupString) + storage.setItem("backup", backupString) const wallet = new Wallet(storage, compiledContract) await wallet.setup() @@ -98,7 +97,7 @@ test("open existing wallet", async () => { "0x06c67629cae87e7a1b284f1002747af681b39b8199f9263b9aed985e200d8f59", ) - const backupWithAccount = await storage.getItem("BACKUP") + const backupWithAccount = await storage.getItem("backup") expect(backupWithAccount).toBeDefined() expect(Wallet.validateBackup(backupWithAccount as string)).toBe(true) @@ -114,7 +113,7 @@ test("open existing wallet", async () => { test("open existing wallet with wrong password", async () => { const storage = new MockStorage() - storage.setItem("BACKUP", backupString) + storage.setItem("backup", backupString) const wallet = new Wallet(storage, compiledContract) await wallet.setup() From e7ead733d85e6bb2f026c0d90f96b400b39b0e0b Mon Sep 17 00:00:00 2001 From: Gerald Date: Tue, 22 Feb 2022 22:10:07 +0100 Subject: [PATCH 11/86] fix backup schema validation --- packages/extension/package.json | 2 +- packages/extension/src/background/index.ts | 2 - .../src/background/schema/backup.schema.json | 72 ------------------- .../src/background/schema/backup.schema.ts | 49 +++++++++++++ packages/extension/src/background/wallet.ts | 15 ++-- packages/extension/test/backup.mock.json | 4 +- packages/extension/test/wallet.test.ts | 10 +++ yarn.lock | 69 ++++++++++++------ 8 files changed, 114 insertions(+), 109 deletions(-) delete mode 100644 packages/extension/src/background/schema/backup.schema.json create mode 100644 packages/extension/src/background/schema/backup.schema.ts diff --git a/packages/extension/package.json b/packages/extension/package.json index c8964e36d..81266c23c 100644 --- a/packages/extension/package.json +++ b/packages/extension/package.json @@ -44,7 +44,6 @@ "@mui/material": "^5.1.0", "@mui/styled-engine-sc": "^5.1.0", "@tippyjs/react": "^4.2.6", - "ajv": "^8.10.0", "ethers": "^5.5.1", "jose": "^4.3.6", "object-hash": "^3.0.0", @@ -60,6 +59,7 @@ "styled-normalize": "^8.0.7", "swr": "^1.1.0", "webextension-polyfill": "^0.8.0", + "yup": "^0.32.11", "zustand": "^3.6.5" } } diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index 6b3714ae4..0092e8d32 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -397,8 +397,6 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" title: "Deploy wallet", }) - await downloadFile(wallet.exportBackup()) - return sendToTabAndUi({ type: "NEW_ACCOUNT_RES", data: { diff --git a/packages/extension/src/background/schema/backup.schema.json b/packages/extension/src/background/schema/backup.schema.json deleted file mode 100644 index 12b86aa0f..000000000 --- a/packages/extension/src/background/schema/backup.schema.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "$id": "ArgentXBackupSchema", - "title": "Argent X Backup file", - "description": "Argent X Backup file", - "type": "object", - "properties": { - "x-version": { "type": "integer", "minimum": 1, "maximum": 1 }, - "address": { "type": "string" }, - "version": { "type": "integer" }, - "Crypto": { - "type": "object", - "properties": { - "cipher": { "type": "string" }, - "ciphertext": { "type": "string" }, - "kdf": { "type": "string" }, - "mac": { "type": "string" }, - "cipherparams": { - "type": "object", - "properties": { - "iv": { "type": "string" } - }, - "required": ["iv"] - }, - "kdfparams": { - "type": "object", - "properties": { - "salt": { "type": "string" }, - "n": { "type": "number" }, - "dklen": { "type": "number" }, - "p": { "type": "number" }, - "r": { "type": "number" } - }, - "required": ["salt", "n", "dklen", "p", "r"] - } - }, - "required": [ - "cipher", - "ciphertext", - "kdf", - "mac", - "cipherparams", - "kdfparams" - ] - }, - "x-argent": { - "type": "object", - "properties": { - "accounts": { - "type": "array", - "items": { - "type": "object", - "properties": { - "address": { "type": "string" }, - "network": { "type": "string" }, - "signer": { - "type": "object", - "properties": { - "type": { "type": "string" }, - "derivationPath": { "type": "string" } - }, - "required": ["type", "derivationPath"] - } - }, - "required": ["address", "network", "signer"] - } - } - }, - "required": ["accounts"] - } - }, - "required": ["x-version", "Crypto", "x-argent", "address", "version"] -} diff --git a/packages/extension/src/background/schema/backup.schema.ts b/packages/extension/src/background/schema/backup.schema.ts new file mode 100644 index 000000000..2e0cc3aa0 --- /dev/null +++ b/packages/extension/src/background/schema/backup.schema.ts @@ -0,0 +1,49 @@ +import { array, number, object, string } from "yup" + +export default object({ + // standard keystore file + address: string().required(), + version: number().integer().required(), + Crypto: object() + .required() + .shape({ + cipher: string().required(), + ciphertext: string().required(), + kdf: string().required(), + mac: string().required(), + cipherparams: object().required().shape({ + iv: string().required(), + }), + kdfparams: object().required().shape({ + salt: string().required(), + n: number().required(), + dklen: number().required(), + p: number().required(), + r: number().required(), + }), + }), + // ethers.js additions + "x-ethers": object().required().shape({ + mnemonicCounter: string().required(), + mnemonicCiphertext: string().required(), + path: string().required(), + }), + // argent additions + argent: object() + .required() + .shape({ + version: number().integer().min(1).max(1).required(), + accounts: array().of( + object() + .optional() + .shape({ + address: string().required(), + network: string().required(), + signer: object().required().shape({ + type: string().required(), + derivationPath: string().required(), + }), + }), + ), + }), +}) diff --git a/packages/extension/src/background/wallet.ts b/packages/extension/src/background/wallet.ts index 30b560029..7ffec58db 100644 --- a/packages/extension/src/background/wallet.ts +++ b/packages/extension/src/background/wallet.ts @@ -1,4 +1,3 @@ -import Ajv from "ajv" import { ethers } from "ethers" import { Signer, compileCalldata, ec } from "starknet" @@ -9,7 +8,7 @@ import { getPathForIndex, getStarkPair, } from "./keys/keyDerivation" -import backupSchema from "./schema/backup.schema.json" +import backupSchema from "./schema/backup.schema" import { IStorage } from "./storage" const isDev = process.env.NODE_ENV === "development" @@ -19,8 +18,6 @@ const isDevOrTest = isDev || isTest const CURRENT_BACKUP_VERSION = 1 export const SESSION_DURATION = 15 * 60 * 60 * 1000 // 15 hours -const ajv = new Ajv() - interface WalletSession { secret: string password: string @@ -218,7 +215,7 @@ export class Wallet { public static validateBackup(backupString: string): boolean { try { const backup = JSON.parse(backupString) - return ajv.validate(backupSchema, backup) + return backupSchema.isValidSync(backup) } catch { return false } @@ -244,11 +241,11 @@ export class Wallet { } const backup = JSON.parse(this.encryptedBackup) - if (backup["x-version"] !== CURRENT_BACKUP_VERSION) { + if (backup.argent.version !== CURRENT_BACKUP_VERSION) { // in the future, backup file migration will happen here } - this.accounts = backup["x-argent"].accounts + this.accounts = backup.argent.accounts } private async writeBackup() { @@ -258,8 +255,8 @@ export class Wallet { const backup = JSON.parse(this.encryptedBackup) const extendedBackup = { ...backup, - "x-version": CURRENT_BACKUP_VERSION, - "x-argent": { + argent: { + version: CURRENT_BACKUP_VERSION, accounts: this.accounts, }, } diff --git a/packages/extension/test/backup.mock.json b/packages/extension/test/backup.mock.json index b6b14ed58..4861618ee 100644 --- a/packages/extension/test/backup.mock.json +++ b/packages/extension/test/backup.mock.json @@ -25,8 +25,8 @@ "locale": "en", "version": "0.1" }, - "x-version": 1, - "x-argent": { + "argent": { + "version": 1, "accounts": [ { "network": "http://localhost:5000", diff --git a/packages/extension/test/wallet.test.ts b/packages/extension/test/wallet.test.ts index 0a9ba97a3..65be30f10 100644 --- a/packages/extension/test/wallet.test.ts +++ b/packages/extension/test/wallet.test.ts @@ -158,3 +158,13 @@ test("import wrong backup file", async () => { expect(wallet.isInitialized()).toBe(false) }) + +test("schema validation should succeed", async () => { + const isValid = Wallet.validateBackup(backupString) + expect(isValid).toBe(true) +}) + +test("schema validation should fail", async () => { + const isValid = Wallet.validateBackup(backupWrongString) + expect(isValid).toBe(false) +}) diff --git a/yarn.lock b/yarn.lock index 03e100a72..18391813e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1107,7 +1107,7 @@ core-js-pure "^3.19.0" regenerator-runtime "^0.13.4" -"@babel/runtime@^7.10.2", "@babel/runtime@^7.16.3", "@babel/runtime@^7.17.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7": +"@babel/runtime@^7.10.2", "@babel/runtime@^7.15.4", "@babel/runtime@^7.16.3", "@babel/runtime@^7.17.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7": version "7.17.2" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.17.2.tgz#66f68591605e59da47523c631416b18508779941" integrity sha512-hzeyJyMA1YGdJTuWU0e/j4wKXrU4OMFvY2MSlaI9B7VQb0r5cxTE3EAIS2Q7Tn2RIcDkRvTA/v2JsAEhxe99uw== @@ -3213,6 +3213,11 @@ resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= +"@types/lodash@^4.14.175": + version "4.14.178" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.178.tgz#341f6d2247db528d4a13ddbb374bcdc80406f4f8" + integrity sha512-0d5Wd09ItQWH1qFbEyQ7oTQ3GZrMfth5JkbN3EvTKLXcHLRDSXeLnlvlOn0wvxVIwK5o2M8JzP/OWz7T3NRsbw== + "@types/minimatch@^3.0.3": version "3.0.5" resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" @@ -3228,6 +3233,11 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.18.tgz#3b4fed5cfb58010e3a2be4b6e74615e4847f1074" integrity sha512-eKj4f/BsN/qcculZiRSujogjvp5O/k4lOW5m35NopjZM/QwLOR075a8pJW5hD+Rtdm2DaCVPENS6KtSQnUD6BA== +"@types/node@17.0.18": + version "17.0.18" + resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.18.tgz#3b4fed5cfb58010e3a2be4b6e74615e4847f1074" + integrity sha512-eKj4f/BsN/qcculZiRSujogjvp5O/k4lOW5m35NopjZM/QwLOR075a8pJW5hD+Rtdm2DaCVPENS6KtSQnUD6BA== + "@types/node@^13.9.0": version "13.13.52" resolved "https://registry.yarnpkg.com/@types/node/-/node-13.13.52.tgz#03c13be70b9031baaed79481c0c0cfb0045e53f7" @@ -3702,16 +3712,6 @@ ajv@^8.0.0, ajv@^8.8.0: require-from-string "^2.0.2" uri-js "^4.2.2" -ajv@^8.10.0, ajv@^8.8.2: - version "8.10.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.10.0.tgz#e573f719bd3af069017e3b66538ab968d040e54d" - integrity sha512-bzqAEZOjkrUMl2afH8dknrq5KEk2SrwdBROR+vH1EKVQTqaUbJVPdc/gEdggTMM0Se+s+Ja4ju4TlNcStKl2Hw== - dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" - ansi-escapes@^4.2.1: version "4.3.2" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" @@ -4263,7 +4263,7 @@ chalk@^2.0.0: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: +chalk@^4.0.0, chalk@^4.1.0: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== @@ -6786,16 +6786,6 @@ jest-jasmine2@^27.5.1: pretty-format "^27.5.1" throat "^6.0.1" -jest-json-schema@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/jest-json-schema/-/jest-json-schema-6.1.0.tgz#68ccc23424a7b20550d59ab9186530f81113e6af" - integrity sha512-LMHuLmKjr/4X+H8v1xF5TEwfYEkzwGeWJ0epYQVQhlVTDDR5FWCdSO8vmsecb5cLf9NeWAqMKn3qhJvP9um0AA== - dependencies: - ajv "^8.8.2" - ajv-formats "^2.1.1" - chalk "^4.1.2" - jest-matcher-utils "^27.3.1" - jest-leak-detector@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8" @@ -6804,7 +6794,7 @@ jest-leak-detector@^27.5.1: jest-get-type "^27.5.1" pretty-format "^27.5.1" -jest-matcher-utils@^27.3.1, jest-matcher-utils@^27.5.1: +jest-matcher-utils@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw== @@ -7353,6 +7343,11 @@ locate-path@^5.0.0: dependencies: p-locate "^4.1.0" +lodash-es@^4.17.21: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee" + integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw== + lodash._reinterpolate@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" @@ -7743,6 +7738,11 @@ mute-stream@0.0.8, mute-stream@~0.0.4: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== +nanoclone@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/nanoclone/-/nanoclone-0.2.1.tgz#dd4090f8f1a110d26bb32c49ed2f5b9235209ed4" + integrity sha512-wynEP02LmIbLpcYw8uBKpcfF6dmg2vcpKqxeH5UcoKEYdExslsdUA4ugFauuaeYdTB76ez6gJW8XAZ6CgkXYxA== + nanoid@^3.1.30: version "3.2.0" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.2.0.tgz#62667522da6673971cca916a6d3eff3f415ff80c" @@ -8528,6 +8528,11 @@ prop-types@^15.5.8, prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: object-assign "^4.1.1" react-is "^16.13.1" +property-expr@^2.0.4: + version "2.0.5" + resolved "https://registry.yarnpkg.com/property-expr/-/property-expr-2.0.5.tgz#278bdb15308ae16af3e3b9640024524f4dc02cb4" + integrity sha512-IJUkICM5dP5znhCckHSv30Q4b5/JA5enCtkRHYaOVOAocnH/1BQEYTC5NMfT3AVl/iXKdr3aqQbQn9DxyWknwA== + proto-list@~1.2.1: version "1.2.4" resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" @@ -9851,6 +9856,11 @@ toggle-selection@^1.0.6: resolved "https://registry.yarnpkg.com/toggle-selection/-/toggle-selection-1.0.6.tgz#6e45b1263f2017fa0acc7d89d78b15b8bf77da32" integrity sha1-bkWxJj8gF/oKzH2J14sVuL932jI= +toposort@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/toposort/-/toposort-2.0.2.tgz#ae21768175d1559d48bef35420b2f4962f09c330" + integrity sha1-riF2gXXRVZ1IvvNUILL0li8JwzA= + tough-cookie@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" @@ -10521,6 +10531,19 @@ yargs@^16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" +yup@^0.32.11: + version "0.32.11" + resolved "https://registry.yarnpkg.com/yup/-/yup-0.32.11.tgz#d67fb83eefa4698607982e63f7ca4c5ed3cf18c5" + integrity sha512-Z2Fe1bn+eLstG8DRR6FTavGD+MeAwyfmouhHsIUgaADz8jvFKbO/fXc2trJKZg+5EBjh4gGm3iU/t3onKlXHIg== + dependencies: + "@babel/runtime" "^7.15.4" + "@types/lodash" "^4.14.175" + lodash "^4.17.21" + lodash-es "^4.17.21" + nanoclone "^0.2.1" + property-expr "^2.0.4" + toposort "^2.0.2" + zustand@^3.6.5: version "3.7.0" resolved "https://registry.yarnpkg.com/zustand/-/zustand-3.7.0.tgz#a5c68fb06bdee9c63ad829de2432635be6d0ce69" From a55bd31ab6848cb2f50c94b37dabcf371b8167fe Mon Sep 17 00:00:00 2001 From: Axel Delamarre <1091900+delaaxe@users.noreply.github.com> Date: Thu, 24 Feb 2022 14:47:08 +0000 Subject: [PATCH 12/86] refactor(background): rename wallet to account --- packages/extension/src/background/index.ts | 48 +++++++++---------- .../src/background/trackTransactions.ts | 22 ++++----- packages/extension/src/inpage/index.ts | 2 +- packages/extension/src/shared/MessageType.ts | 14 +++--- packages/extension/src/shared/networks.ts | 7 ++- .../src/shared/transactions.model.ts | 2 +- packages/extension/src/ui/Account.ts | 2 +- .../src/ui/states/accountTransactions.ts | 2 +- packages/extension/src/ui/utils/accounts.ts | 2 +- packages/extension/src/ui/utils/messaging.ts | 19 ++++---- packages/extension/src/ui/utils/recovery.ts | 8 ++-- 11 files changed, 67 insertions(+), 61 deletions(-) diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index 0092e8d32..52ab65d70 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -42,28 +42,28 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" data: transactions, }) - for (const { hash, status, walletAddress, meta } of transactions) { + for (const { hash, status, accountAddress, meta } of transactions) { if ( (status === "ACCEPTED_ON_L2" || status === "REJECTED") && !(await hasShownNotification(hash)) ) { addToAlreadyShown(hash) sentTransactionNotification(hash, status, meta) - if (walletAddress && status === "ACCEPTED_ON_L2") { + if (accountAddress && status === "ACCEPTED_ON_L2") { sendMessageToUi({ type: "TRANSACTION_SUCCESS", data: { hash, status, - walletAddress, + accountAddress, meta, }, }) } } // on error remove stored (increased) nonce - if (walletAddress && status === "REJECTED") { - resetStoredNonce(walletAddress) + if (accountAddress && status === "REJECTED") { + resetStoredNonce(accountAddress) } } } @@ -142,17 +142,17 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" }) } - case "GET_SELECTED_WALLET": { - const selectedWallet = await wallet.getSelectedAccount() + case "GET_SELECTED_ACCOUNT": { + const selectedAccount = await wallet.getSelectedAccount() return sendToTabAndUi({ - type: "GET_SELECTED_WALLET_RES", - data: selectedWallet, + type: "GET_SELECTED_ACCOUNT_RES", + data: selectedAccount, }) } case "CONNECT": { - const selectedWallet = await wallet.getSelectedAccount() + const selectedAccount = await wallet.getSelectedAccount() const isWhitelisted = await isOnWhitelist(msg.data.host) addTab(sender.tab?.id) @@ -164,14 +164,14 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" }) } - if (isWhitelisted && selectedWallet.address) { - return sendToTabAndUi({ type: "CONNECT_RES", data: selectedWallet }) + if (isWhitelisted && selectedAccount.address) { + return sendToTabAndUi({ type: "CONNECT_RES", data: selectedAccount }) } return openUi() } - case "WALLET_CONNECTED": { + case "CONNECT_ACCOUNT": { return await wallet.selectAccount(msg.data.address) } @@ -184,14 +184,14 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" switch (action.type) { case "CONNECT": { const { host } = action.payload - const selectedWallet = await wallet.getSelectedAccount() + const selectedAccount = await wallet.getSelectedAccount() await addToWhitelist(host) - if (selectedWallet) { + if (selectedAccount) { return sendToTabAndUi({ type: "CONNECT_RES", - data: selectedWallet, + data: selectedAccount, }) } return openUi() @@ -202,7 +202,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" if (!wallet.isSessionOpen()) { throw Error("you need an open session") } - const selectedWallet = await wallet.getSelectedAccount() + const selectedAccount = await wallet.getSelectedAccount() const signer = await wallet.getSelectedAccountSigner() try { @@ -213,7 +213,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" increaseStoredNonce(signer.address) transactionTracker.trackTransaction( tx.transaction_hash, - selectedWallet, + selectedAccount, ) return sendToTabAndUi({ @@ -376,13 +376,13 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" case "IS_INITIALIZED": { return sendToTabAndUi({ type: "IS_INITIALIZED_RES", - data: await wallet.isInitialized(), + data: wallet.isInitialized(), }) } - case "GET_WALLETS": { + case "GET_ACCOUNTS": { return sendToTabAndUi({ - type: "GET_WALLETS_RES", - data: await wallet.getAccounts(), + type: "GET_ACCOUNTS_RES", + data: wallet.getAccounts(), }) } case "NEW_ACCOUNT": { @@ -403,8 +403,8 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" status: "ok", txHash, address: account.address, - wallet: account, - wallets: wallet.getAccounts(), + account: account, + accounts: wallet.getAccounts(), }, }) } catch (e: any) { diff --git a/packages/extension/src/background/trackTransactions.ts b/packages/extension/src/background/trackTransactions.ts index 3aba9be9b..0c9fe3a48 100644 --- a/packages/extension/src/background/trackTransactions.ts +++ b/packages/extension/src/background/trackTransactions.ts @@ -13,7 +13,7 @@ interface TransactionStatusWithProvider extends TransactionStatus { type FetchedTransactionStatus = Omit< TransactionStatus, - "walletAddress" | "meta" + "accountAddress" | "meta" > type Listener = (transactions: TransactionStatus[]) => void @@ -38,17 +38,17 @@ export class TransactionTracker { public async trackTransaction( transactionHash: string, - wallet: WalletAccount, + account: WalletAccount, meta: TransactionMeta = { title: "Contract interaction", }, ): Promise { try { - const provider = getProvider(wallet.network) + const provider = getProvider(account.network) this.transactions.push({ hash: transactionHash, provider, - walletAddress: wallet.address, + accountAddress: account.address, status: "RECEIVED", meta, }) @@ -61,15 +61,15 @@ export class TransactionTracker { } } - public getAllTransactions(byWalletAddress?: string): TransactionStatus[] { + public getAllTransactions(byAccountAddress?: string): TransactionStatus[] { return this.transactions .filter( (transaction) => - !byWalletAddress || transaction.walletAddress === byWalletAddress, + !byAccountAddress || transaction.accountAddress === byAccountAddress, ) - .map(({ hash, walletAddress, meta }) => ({ + .map(({ hash, accountAddress, meta }) => ({ hash, - walletAddress, + accountAddress, status: this.getTransactionStatus(hash)?.status || "NOT_RECEIVED", meta, })) @@ -82,21 +82,21 @@ export class TransactionTracker { private async checkTransactions(): Promise { const transactionStatuses = await Promise.all( this.transactions.map( - async ({ hash, provider, walletAddress, meta, status }) => { + async ({ hash, provider, accountAddress, meta, status }) => { // TODO: We dont need to check for ACCEPTED_ON_L1 currently, as we just handle ACCEPTED_ON_L2 anyways. This may changes in the future. // if (status === "ACCEPTED_ON_L1" || status === "REJECTED") { if (status === "ACCEPTED_ON_L2" || status === "REJECTED") { return Promise.resolve({ hash, provider, - walletAddress, + accountAddress, meta, status, }) } return getTransactionStatus(provider, hash).then((status) => ({ ...status, - walletAddress, + accountAddress, provider, meta, })) diff --git a/packages/extension/src/inpage/index.ts b/packages/extension/src/inpage/index.ts index c373ddde1..059caf684 100644 --- a/packages/extension/src/inpage/index.ts +++ b/packages/extension/src/inpage/index.ts @@ -150,7 +150,7 @@ window.addEventListener( "message", ({ data }: MessageEvent) => { const { starknet } = window - if (starknet && starknet.signer && data.type === "WALLET_CONNECTED") { + if (starknet && starknet.signer && data.type === "CONNECT_ACCOUNT") { const { address, network } = data.data if (address !== starknet.selectedAddress) { starknet.selectedAddress = address diff --git a/packages/extension/src/shared/MessageType.ts b/packages/extension/src/shared/MessageType.ts index a85f6a651..4c3ccc01e 100644 --- a/packages/extension/src/shared/MessageType.ts +++ b/packages/extension/src/shared/MessageType.ts @@ -19,8 +19,8 @@ export type MessageType = type: "GET_ACTIONS_RES" data: ExtActionItem[] } - | { type: "GET_SELECTED_WALLET" } - | { type: "GET_SELECTED_WALLET_RES"; data: WalletAccount } + | { type: "GET_SELECTED_ACCOUNT" } + | { type: "GET_SELECTED_ACCOUNT_RES"; data: WalletAccount } | { type: "CONNECT"; data: { host: string } } | { type: "CONNECT_RES"; data: WalletAccount } | { @@ -47,7 +47,7 @@ export type MessageType = | { type: "IS_WHITELIST"; data: string } | { type: "IS_WHITELIST_RES"; data: boolean } | { type: "RESET_WHITELIST" } - | { type: "WALLET_CONNECTED"; data: WalletAccount } + | { type: "CONNECT_ACCOUNT"; data: WalletAccount } | { type: "RESET_ALL" } | { type: "REQ_PUB" } | { type: "REQ_PUB_RES"; data: JWK } @@ -59,8 +59,8 @@ export type MessageType = status: "ok" txHash: string address: string - wallet: WalletAccount - wallets: WalletAccount[] + account: WalletAccount + accounts: WalletAccount[] } } | { type: "NEW_ACCOUNT_REJ"; data: { status: "ko"; error: string } } @@ -69,8 +69,8 @@ export type MessageType = | { type: "HAS_SESSION_RES"; data: boolean } | { type: "IS_INITIALIZED" } | { type: "IS_INITIALIZED_RES"; data: boolean } - | { type: "GET_WALLETS" } - | { type: "GET_WALLETS_RES"; data: WalletAccount[] } + | { type: "GET_ACCOUNTS" } + | { type: "GET_ACCOUNTS_RES"; data: WalletAccount[] } | { type: "START_SESSION"; data: { secure: true; body: string } } | { type: "START_SESSION_REJ" } | { type: "START_SESSION_RES" } diff --git a/packages/extension/src/shared/networks.ts b/packages/extension/src/shared/networks.ts index 866cf071d..2d214cfc7 100644 --- a/packages/extension/src/shared/networks.ts +++ b/packages/extension/src/shared/networks.ts @@ -33,8 +33,11 @@ export const getNetwork = (networkId: string): Network => { return networks.find(({ id }) => id === networkId) || defaultNetwork } -export const networkWallets = (wallets: WalletAccount[], networkId: string) => - wallets.filter( +export const accountsOnNetwork = ( + accounts: WalletAccount[], + networkId: string, +) => + accounts.filter( ({ network }) => localNetworkId(network) === localNetworkId(networkId), ) diff --git a/packages/extension/src/shared/transactions.model.ts b/packages/extension/src/shared/transactions.model.ts index cc84872b3..fef3633fe 100644 --- a/packages/extension/src/shared/transactions.model.ts +++ b/packages/extension/src/shared/transactions.model.ts @@ -6,7 +6,7 @@ export interface TransactionMeta { export interface TransactionStatus { hash: string - walletAddress?: string + accountAddress?: string status: Status meta?: TransactionMeta } diff --git a/packages/extension/src/ui/Account.ts b/packages/extension/src/ui/Account.ts index a224407c7..c5af7679b 100644 --- a/packages/extension/src/ui/Account.ts +++ b/packages/extension/src/ui/Account.ts @@ -65,7 +65,7 @@ export class Account { return new Account( result.address, networkId, - result.wallet.signer, + result.account.signer, result.txHash, ) } diff --git a/packages/extension/src/ui/states/accountTransactions.ts b/packages/extension/src/ui/states/accountTransactions.ts index b8a9e42d3..f2fac8541 100644 --- a/packages/extension/src/ui/states/accountTransactions.ts +++ b/packages/extension/src/ui/states/accountTransactions.ts @@ -23,7 +23,7 @@ export const useAccountTransactions = (accountAddress: string) => { if (message.type === "TRANSACTION_UPDATES") { useTransactionsStore.setState({ transactions: message.data.filter( - ({ walletAddress: wa }) => wa === accountAddress, + ({ accountAddress: wa }) => wa === accountAddress, ), }) } diff --git a/packages/extension/src/ui/utils/accounts.ts b/packages/extension/src/ui/utils/accounts.ts index 75896c66b..9968b1db3 100644 --- a/packages/extension/src/ui/utils/accounts.ts +++ b/packages/extension/src/ui/utils/accounts.ts @@ -35,7 +35,7 @@ export const connectAccount = async ( localhostPort: number, ) => { sendMessage({ - type: "WALLET_CONNECTED", + type: "CONNECT_ACCOUNT", data: { address: account.address, network: localNetworkUrl(switcherNetworkId, localhostPort), diff --git a/packages/extension/src/ui/utils/messaging.ts b/packages/extension/src/ui/utils/messaging.ts index f92a81889..0ef6d3d2e 100644 --- a/packages/extension/src/ui/utils/messaging.ts +++ b/packages/extension/src/ui/utils/messaging.ts @@ -22,18 +22,21 @@ export const getTransactions = async (address: string) => { sendMessage({ type: "GET_TRANSACTIONS" }) const allTransactions = await waitForMessage("GET_TRANSACTIONS_RES") return allTransactions.filter( - ({ walletAddress }) => walletAddress === address, + ({ accountAddress }) => accountAddress === address, ) } export const getTransactionStatus = async (hash: string, network: string) => { sendMessage({ type: "GET_TRANSACTION", data: { hash, network } }) - return waitForMessage("GET_TRANSACTION_RES", (x) => x.data.hash === hash) + return waitForMessage( + "GET_TRANSACTION_RES", + (status) => status.data.hash === hash, + ) } -export const getLastSelectedWallet = async () => { - sendMessage({ type: "GET_SELECTED_WALLET" }) - return waitForMessage("GET_SELECTED_WALLET_RES") +export const getLastSelectedAccount = async () => { + sendMessage({ type: "GET_SELECTED_ACCOUNT" }) + return waitForMessage("GET_SELECTED_ACCOUNT_RES") } export const getPublicKey = async () => { @@ -59,9 +62,9 @@ export const hasActiveSession = async () => { return waitForMessage("HAS_SESSION_RES") } -export const getWallets = async () => { - sendMessage({ type: "GET_WALLETS" }) - return waitForMessage("GET_WALLETS_RES") +export const getAccounts = async () => { + sendMessage({ type: "GET_ACCOUNTS" }) + return waitForMessage("GET_ACCOUNTS_RES") } export const startSession = async (password: string): Promise => { diff --git a/packages/extension/src/ui/utils/recovery.ts b/packages/extension/src/ui/utils/recovery.ts index ebf6084ae..923f1ae56 100644 --- a/packages/extension/src/ui/utils/recovery.ts +++ b/packages/extension/src/ui/utils/recovery.ts @@ -1,14 +1,14 @@ import { + accountsOnNetwork, defaultNetwork, localNetworkId, - networkWallets, } from "../../shared/networks" import { Account } from "../Account" import { routes } from "../routes" import { useAccount } from "../states/account" import { setDefaultAccountNames } from "../states/accountMetadata" import { useAppState } from "../states/app" -import { getLastSelectedWallet, getWallets } from "./messaging" +import { getAccounts, getLastSelectedAccount } from "./messaging" interface RecoveryOptions { networkId?: string @@ -20,12 +20,12 @@ export const recover = async ({ showAccountList, }: RecoveryOptions = {}) => { try { - const lastSelectedAccount = await getLastSelectedWallet().catch(() => null) + const lastSelectedAccount = await getLastSelectedAccount().catch(() => null) networkId ||= lastSelectedAccount ? localNetworkId(lastSelectedAccount?.network) : defaultNetwork.id - const walletAccounts = networkWallets(await getWallets(), networkId) + const walletAccounts = accountsOnNetwork(await getAccounts(), networkId) const selectedAccount = walletAccounts.find( ({ address }) => address === lastSelectedAccount?.address, From ce876d3ccf379dbbe83163715cdaa4ea57a639ba Mon Sep 17 00:00:00 2001 From: Gerald Date: Thu, 24 Feb 2022 16:26:10 +0100 Subject: [PATCH 13/86] show a screen for users with legacy accounts in their local storage --- packages/extension/src/background/index.ts | 10 +++- packages/extension/src/background/legacy.ts | 18 ++++++ .../src/background/storage/default.ts | 4 ++ packages/extension/src/shared/MessageType.ts | 7 ++- packages/extension/src/ui/App.tsx | 2 + packages/extension/src/ui/hooks/useEntry.tsx | 5 +- packages/extension/src/ui/routes.ts | 1 + .../extension/src/ui/screens/LegacyScreen.tsx | 59 +++++++++++++++++++ 8 files changed, 103 insertions(+), 3 deletions(-) create mode 100644 packages/extension/src/background/legacy.ts create mode 100644 packages/extension/src/ui/screens/LegacyScreen.tsx diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index 0092e8d32..935a7c998 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -16,6 +16,7 @@ import { } from "./activeTabs" import { downloadFile } from "./download" import { getKeyPair } from "./keys/communication" +import { exportLegacyBackup, hasLegacy } from "./legacy" import { getNonce, increaseStoredNonce, resetStoredNonce } from "./nonce" import { addToAlreadyShown, @@ -374,9 +375,11 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" return wallet.lock() } case "IS_INITIALIZED": { + const initialized = await wallet.isInitialized() + const legacy = initialized ? false : await hasLegacy() return sendToTabAndUi({ type: "IS_INITIALIZED_RES", - data: await wallet.isInitialized(), + data: { initialized, hasLegacy: legacy }, }) } case "GET_WALLETS": { @@ -447,6 +450,11 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" return sendToTabAndUi({ type: "DOWNLOAD_BACKUP_FILE_RES" }) } + case "DOWNLOAD_LEGACY_BACKUP_FILE": { + await downloadFile(await exportLegacyBackup()) + return sendToTabAndUi({ type: "DOWNLOAD_LEGACY_BACKUP_FILE_RES" }) + } + case "DELETE_ACCOUNT": { try { await wallet.removeAccount(msg.data) diff --git a/packages/extension/src/background/legacy.ts b/packages/extension/src/background/legacy.ts new file mode 100644 index 000000000..330ceb1fc --- /dev/null +++ b/packages/extension/src/background/legacy.ts @@ -0,0 +1,18 @@ +import { getFromStorage } from "./storage" + +const STORAGE_KEY = "L1:encKeystore" + +export const hasLegacy = async () => { + return Boolean(await getFromStorage(STORAGE_KEY)) +} + +export const exportLegacyBackup = async () => { + const backupString = await getFromStorage(STORAGE_KEY) + + const blob = new Blob([backupString as string], { + type: "application/json", + }) + const url = URL.createObjectURL(blob) + const filename = "starknet-backup.json" + return { url, filename } +} diff --git a/packages/extension/src/background/storage/default.ts b/packages/extension/src/background/storage/default.ts index 1bc08ca1d..27419f834 100644 --- a/packages/extension/src/background/storage/default.ts +++ b/packages/extension/src/background/storage/default.ts @@ -24,6 +24,10 @@ export function clearStorage() { return browser.storage.local.clear() } +export function getAllStorage() { + return browser.storage.local.get() +} + export class Storage implements IStorage { private NS: string public defaults: T diff --git a/packages/extension/src/shared/MessageType.ts b/packages/extension/src/shared/MessageType.ts index a85f6a651..df4877cb0 100644 --- a/packages/extension/src/shared/MessageType.ts +++ b/packages/extension/src/shared/MessageType.ts @@ -68,7 +68,10 @@ export type MessageType = | { type: "HAS_SESSION" } | { type: "HAS_SESSION_RES"; data: boolean } | { type: "IS_INITIALIZED" } - | { type: "IS_INITIALIZED_RES"; data: boolean } + | { + type: "IS_INITIALIZED_RES" + data: { initialized: boolean; hasLegacy: boolean } + } | { type: "GET_WALLETS" } | { type: "GET_WALLETS_RES"; data: WalletAccount[] } | { type: "START_SESSION"; data: { secure: true; body: string } } @@ -92,6 +95,8 @@ export type MessageType = | { type: "SUCCESS_SIGN"; data: { r: string; s: string; actionHash: string } } | { type: "DOWNLOAD_BACKUP_FILE" } | { type: "DOWNLOAD_BACKUP_FILE_RES" } + | { type: "DOWNLOAD_LEGACY_BACKUP_FILE" } + | { type: "DOWNLOAD_LEGACY_BACKUP_FILE_RES" } | { type: "GET_TRANSACTIONS" } | { type: "GET_TRANSACTIONS_RES"; data: TransactionStatus[] } | { type: "DELETE_ACCOUNT"; data: string } diff --git a/packages/extension/src/ui/App.tsx b/packages/extension/src/ui/App.tsx index ca0df7c60..b1f7d8dbb 100644 --- a/packages/extension/src/ui/App.tsx +++ b/packages/extension/src/ui/App.tsx @@ -14,6 +14,7 @@ import { AddTokenScreen } from "./screens/AddTokenScreen" import { BackupDownloadScreen } from "./screens/BackupDownloadScreen" import { DappsScreen } from "./screens/DappsScreen" import { DisclaimerScreen } from "./screens/DisclaimerScreen" +import { LegacyScreen } from "./screens/LegacyScreen" import { ErrorScreen } from "./screens/ErrorScreen" import { HideTokenScreen } from "./screens/HideTokenScreen" import { LoadingScreen } from "./screens/LoadingScreen" @@ -92,6 +93,7 @@ const Screen: FC = () => { } /> } /> } /> + } /> } /> {/* Routes which need an unlocked keystore and therefore can also sign actions */} diff --git a/packages/extension/src/ui/hooks/useEntry.tsx b/packages/extension/src/ui/hooks/useEntry.tsx index e1e1ade40..671329c85 100644 --- a/packages/extension/src/ui/hooks/useEntry.tsx +++ b/packages/extension/src/ui/hooks/useEntry.tsx @@ -30,8 +30,11 @@ const determineEntry = async (isBackupDownloadRequired: boolean) => { return routes.backupDownload() } - const initialized = await isInitialized() + const { initialized, hasLegacy } = await isInitialized() if (!initialized) { + if (hasLegacy) { + return routes.legacy() + } if (!isDisclaimerUnderstood()) { return routes.disclaimer() } diff --git a/packages/extension/src/ui/routes.ts b/packages/extension/src/ui/routes.ts index 0eef5f083..6de3e9159 100644 --- a/packages/extension/src/ui/routes.ts +++ b/packages/extension/src/ui/routes.ts @@ -12,6 +12,7 @@ export const routes = { hideTokenPath: () => "/tokens/:tokenAddress/hide", reset: () => "/reset", disclaimer: () => "/disclaimer", + legacy: () => "/legacy", settings: () => "/settings", backupDownload: (isFromSettings?: boolean) => `/backup-download${isFromSettings ? "?settings" : ""}`, diff --git a/packages/extension/src/ui/screens/LegacyScreen.tsx b/packages/extension/src/ui/screens/LegacyScreen.tsx new file mode 100644 index 000000000..a7a75ca98 --- /dev/null +++ b/packages/extension/src/ui/screens/LegacyScreen.tsx @@ -0,0 +1,59 @@ +import { FC, FormEventHandler } from "react" +import { useNavigate } from "react-router-dom" +import styled from "styled-components" + +import { sendMessage } from "../../shared/messages" +import { Button } from "../components/Button" +import { Header } from "../components/Header" +import { H2, P } from "../components/Typography" +import { routes } from "../routes" +import { useBackupDownload } from "../states/backupDownload" + +const DownloadButton = styled(Button)` + margin-top: 20px; +` + +const ContinueButton = styled(Button)` + margin-top: auto; +` + +const Container = styled.div` + padding: 40px 40px 24px; + display: flex; + flex-direction: column; + height: calc(100vh - 68px); +` + +export const LegacyScreen: FC = () => { + const navigate = useNavigate() + + const handleDownload: FormEventHandler = async () => { + sendMessage({ type: "DOWNLOAD_LEGACY_BACKUP_FILE" }) + } + + return ( + <> + +

Breaking Changes

+

+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. + Pellentesque vitae ex ut ipsum tristique laoreet. +

+

+ Nam facilisis vehicula velit ut sodales. For more info click + + this link + +

+ Download + navigate(routes.welcome())}> + Continue without downloading + +
+ + ) +} From b790f714b644d4447c6fea4d85781fce47cba93d Mon Sep 17 00:00:00 2001 From: Axel Delamarre <1091900+delaaxe@users.noreply.github.com> Date: Fri, 25 Feb 2022 08:16:10 +0000 Subject: [PATCH 14/86] refactor(shared): organize message types --- packages/extension/src/shared/MessageType.ts | 95 +++++++++++--------- 1 file changed, 52 insertions(+), 43 deletions(-) diff --git a/packages/extension/src/shared/MessageType.ts b/packages/extension/src/shared/MessageType.ts index 4c3ccc01e..c8893e06d 100644 --- a/packages/extension/src/shared/MessageType.ts +++ b/packages/extension/src/shared/MessageType.ts @@ -7,22 +7,36 @@ import { TransactionStatus } from "./transactions.model" import { WalletAccount } from "./wallet.model" export type MessageType = - | { type: "OPEN_UI" } + // ***** accounts ***** + | { type: "NEW_ACCOUNT"; data: string } + | { + type: "NEW_ACCOUNT_RES" + data: { + status: "ok" + txHash: string + address: string + account: WalletAccount + accounts: WalletAccount[] + } + } + | { type: "NEW_ACCOUNT_REJ"; data: { status: "ko"; error: string } } + | { type: "GET_ACCOUNTS" } + | { type: "GET_ACCOUNTS_RES"; data: WalletAccount[] } + | { type: "CONNECT_ACCOUNT"; data: WalletAccount } + | { type: "GET_SELECTED_ACCOUNT" } + | { type: "GET_SELECTED_ACCOUNT_RES"; data: WalletAccount } + | { type: "DELETE_ACCOUNT"; data: string } + | { type: "DELETE_ACCOUNT_RES" } + | { type: "DELETE_ACCOUNT_REJ" } + // ***** transactions ***** + | { type: "GET_TRANSACTIONS" } + | { type: "GET_TRANSACTIONS_RES"; data: TransactionStatus[] } | { type: "ADD_TRANSACTION"; data: InvokeFunctionTransaction } | { type: "ADD_TRANSACTION_RES"; data: { actionHash: string } } | { type: "TRANSACTION_UPDATES"; data: TransactionStatus[] } | { type: "TRANSACTION_SUCCESS"; data: TransactionStatus } | { type: "GET_TRANSACTION"; data: { hash: string; network: string } } | { type: "GET_TRANSACTION_RES"; data: TransactionStatus } - | { type: "GET_ACTIONS" } - | { - type: "GET_ACTIONS_RES" - data: ExtActionItem[] - } - | { type: "GET_SELECTED_ACCOUNT" } - | { type: "GET_SELECTED_ACCOUNT_RES"; data: WalletAccount } - | { type: "CONNECT"; data: { host: string } } - | { type: "CONNECT_RES"; data: WalletAccount } | { type: "SUBMITTED_TX" data: { @@ -34,11 +48,16 @@ export type MessageType = type: "FAILED_TX" data: { actionHash: string; error?: string } } + // ***** actions ***** + | { type: "GET_ACTIONS" } + | { + type: "GET_ACTIONS_RES" + data: ExtActionItem[] + } + // ***** pre-authorizations ***** + | { type: "CONNECT"; data: { host: string } } + | { type: "CONNECT_RES"; data: WalletAccount } | { type: "ADD_WHITELIST"; data: string } - | { type: "ADD_TOKEN"; data: AddToken } - | { type: "ADD_TOKEN_RES"; data: { actionHash: string } } - | { type: "REJECT_ADD_TOKEN"; data: { actionHash: string } } - | { type: "APPROVE_ADD_TOKEN"; data: { actionHash: string } } | { type: "APPROVE_WHITELIST"; data: { host: string; actionHash: string } } | { type: "REJECT_WHITELIST"; data: { host: string; actionHash: string } } | { type: "REMOVE_WHITELIST"; data: string } @@ -47,35 +66,27 @@ export type MessageType = | { type: "IS_WHITELIST"; data: string } | { type: "IS_WHITELIST_RES"; data: boolean } | { type: "RESET_WHITELIST" } - | { type: "CONNECT_ACCOUNT"; data: WalletAccount } - | { type: "RESET_ALL" } - | { type: "REQ_PUB" } - | { type: "REQ_PUB_RES"; data: JWK } - | { type: "NEW_ACCOUNT"; data: string } + // ***** tokens ***** + | { type: "ADD_TOKEN"; data: AddToken } + | { type: "ADD_TOKEN_RES"; data: { actionHash: string } } + | { type: "REJECT_ADD_TOKEN"; data: { actionHash: string } } + | { type: "APPROVE_ADD_TOKEN"; data: { actionHash: string } } + // ***** sessions ***** | { type: "STOP_SESSION" } - | { - type: "NEW_ACCOUNT_RES" - data: { - status: "ok" - txHash: string - address: string - account: WalletAccount - accounts: WalletAccount[] - } - } - | { type: "NEW_ACCOUNT_REJ"; data: { status: "ko"; error: string } } | { type: "REPORT_PROGRESS"; data: number } | { type: "HAS_SESSION" } | { type: "HAS_SESSION_RES"; data: boolean } | { type: "IS_INITIALIZED" } | { type: "IS_INITIALIZED_RES"; data: boolean } - | { type: "GET_ACCOUNTS" } - | { type: "GET_ACCOUNTS_RES"; data: WalletAccount[] } | { type: "START_SESSION"; data: { secure: true; body: string } } | { type: "START_SESSION_REJ" } | { type: "START_SESSION_RES" } - | { type: "RECOVER_KEYSTORE"; data: string } - | { type: "RECOVER_KEYSTORE_RES" } + // ***** backup ***** + | { type: "RECOVER_BACKUP"; data: string } + | { type: "RECOVER_BACKUP_RES" } + | { type: "DOWNLOAD_BACKUP_FILE" } + | { type: "DOWNLOAD_BACKUP_FILE_RES" } + // ***** actions ***** | { type: "ADD_SIGN"; data: typedData.TypedData } | { type: "ADD_SIGN_RES"; data: { actionHash: string } } | { type: "APPROVE_ACTION"; data: { actionHash: string } } @@ -90,15 +101,13 @@ export type MessageType = } | { type: "FAILED_SIGN"; data: { actionHash: string } } | { type: "SUCCESS_SIGN"; data: { r: string; s: string; actionHash: string } } - | { type: "DOWNLOAD_BACKUP_FILE" } - | { type: "DOWNLOAD_BACKUP_FILE_RES" } - | { type: "GET_TRANSACTIONS" } - | { type: "GET_TRANSACTIONS_RES"; data: TransactionStatus[] } - | { type: "DELETE_ACCOUNT"; data: string } - | { type: "DELETE_ACCOUNT_RES" } - | { type: "DELETE_ACCOUNT_REJ" } + // ***** misc ***** + | { type: "OPEN_UI" } + | { type: "RESET_ALL" } + | { type: "REQ_PUB" } + | { type: "REQ_PUB_RES"; data: JWK } -export type WindowMessageType = { +export type WindowMessageType = MessageType & { forwarded?: boolean extensionId: string -} & MessageType +} From 893c8e266a40597a0ca1e41c5882af48ccb14a9b Mon Sep 17 00:00:00 2001 From: Axel Delamarre <1091900+delaaxe@users.noreply.github.com> Date: Fri, 25 Feb 2022 08:16:46 +0000 Subject: [PATCH 15/86] refactor(extension): rename keystore to backup --- packages/extension/src/background/index.ts | 4 ++-- .../extension/src/background/schema/backup.schema.ts | 2 +- packages/extension/src/ui/App.tsx | 8 ++++---- ...oadKeystoreScreen.tsx => RecoverBackupScreen.tsx} | 12 ++++++------ packages/extension/src/ui/utils/messaging.ts | 8 ++++---- 5 files changed, 17 insertions(+), 17 deletions(-) rename packages/extension/src/ui/screens/{UploadKeystoreScreen.tsx => RecoverBackupScreen.tsx} (88%) diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index 52ab65d70..ae8c1accb 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -438,9 +438,9 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" }) } - case "RECOVER_KEYSTORE": { + case "RECOVER_BACKUP": { await wallet.importBackup(msg.data) - return sendToTabAndUi({ type: "RECOVER_KEYSTORE_RES" }) + return sendToTabAndUi({ type: "RECOVER_BACKUP_RES" }) } case "DOWNLOAD_BACKUP_FILE": { await downloadFile(wallet.exportBackup()) diff --git a/packages/extension/src/background/schema/backup.schema.ts b/packages/extension/src/background/schema/backup.schema.ts index 2e0cc3aa0..a85ad1cd1 100644 --- a/packages/extension/src/background/schema/backup.schema.ts +++ b/packages/extension/src/background/schema/backup.schema.ts @@ -1,7 +1,7 @@ import { array, number, object, string } from "yup" export default object({ - // standard keystore file + // standard backup/keystore file address: string().required(), version: number().integer().required(), Crypto: object() diff --git a/packages/extension/src/ui/App.tsx b/packages/extension/src/ui/App.tsx index ca0df7c60..0335e8223 100644 --- a/packages/extension/src/ui/App.tsx +++ b/packages/extension/src/ui/App.tsx @@ -19,10 +19,10 @@ import { HideTokenScreen } from "./screens/HideTokenScreen" import { LoadingScreen } from "./screens/LoadingScreen" import { NewWalletScreen } from "./screens/NewWalletScreen" import { PasswordScreen } from "./screens/PasswordScreen" +import { RecoverBackupScreen } from "./screens/RecoverBackupScreen" import { ResetScreen } from "./screens/ResetScreen" import { SettingsScreen } from "./screens/SettingsScreen" import { TokenScreen } from "./screens/TokenScreen" -import { UploadKeystoreScreen } from "./screens/UploadKeystoreScreen" import { WelcomeScreen } from "./screens/WelcomeScreen" import { useActions, useActionsSubscription } from "./states/actions" import { useAppState } from "./states/app" @@ -85,16 +85,16 @@ const Screen: FC = () => { return ( - {/* Routes which need no unlocked keystore */} + {/* Routes which need no unlocked backup */} } /> } /> - } /> + } /> } /> } /> } /> } /> - {/* Routes which need an unlocked keystore and therefore can also sign actions */} + {/* Routes which need an unlocked backup and therefore can also sign actions */} {actions[0] ? ( } /> ) : ( diff --git a/packages/extension/src/ui/screens/UploadKeystoreScreen.tsx b/packages/extension/src/ui/screens/RecoverBackupScreen.tsx similarity index 88% rename from packages/extension/src/ui/screens/UploadKeystoreScreen.tsx rename to packages/extension/src/ui/screens/RecoverBackupScreen.tsx index 75ab3d46e..960f9bc36 100644 --- a/packages/extension/src/ui/screens/UploadKeystoreScreen.tsx +++ b/packages/extension/src/ui/screens/RecoverBackupScreen.tsx @@ -10,9 +10,9 @@ import { H2 } from "../components/Typography" import { routes } from "../routes" import { useAppState } from "../states/app" import { fileToString } from "../utils/files" -import { recoverKeystore } from "../utils/messaging" +import { recoverBackup } from "../utils/messaging" -const UploadKeystoreScreenWrapper = styled.div` +const Wrapper = styled.div` display: flex; flex-direction: column; padding: 48px 32px; @@ -41,7 +41,7 @@ const DropZone = styled.div` } ` -export const UploadKeystoreScreen: FC = () => { +export const RecoverBackupScreen: FC = () => { const navigate = useNavigate() const { acceptedFiles: [acceptedFile], @@ -56,7 +56,7 @@ export const UploadKeystoreScreen: FC = () => { const handleRestoreClick = async () => { try { const data = await fileToString(acceptedFile) - await recoverKeystore(data) + await recoverBackup(data) navigate(routes.password()) } catch (error: any) { useAppState.setState({ error: `${error}` }) @@ -65,7 +65,7 @@ export const UploadKeystoreScreen: FC = () => { } return ( - +

Select backup

@@ -83,6 +83,6 @@ export const UploadKeystoreScreen: FC = () => { -
+ ) } diff --git a/packages/extension/src/ui/utils/messaging.ts b/packages/extension/src/ui/utils/messaging.ts index 0ef6d3d2e..7a300a633 100644 --- a/packages/extension/src/ui/utils/messaging.ts +++ b/packages/extension/src/ui/utils/messaging.ts @@ -44,12 +44,12 @@ export const getPublicKey = async () => { return waitForMessage("REQ_PUB_RES") } -export const recoverKeystore = async (keystore: string) => { +export const recoverBackup = async (backup: string) => { sendMessage({ - type: "RECOVER_KEYSTORE", - data: keystore, + type: "RECOVER_BACKUP", + data: backup, }) - return waitForMessage("RECOVER_KEYSTORE_RES") + return waitForMessage("RECOVER_BACKUP_RES") } export const isInitialized = async () => { From f5a759e3c41788190ffb66bd0c9fe56afd79d844 Mon Sep 17 00:00:00 2001 From: Axel Delamarre <1091900+delaaxe@users.noreply.github.com> Date: Fri, 25 Feb 2022 08:22:48 +0000 Subject: [PATCH 16/86] refactor(extension): harmonize connect to dapp vs. account --- packages/extension/src/background/index.ts | 17 ++++++++++------- packages/extension/src/inpage/index.ts | 7 +++++-- packages/extension/src/shared/MessageType.ts | 4 ++-- packages/extension/src/shared/actionQueue.ts | 2 +- .../extension/src/ui/screens/ActionScreen.tsx | 2 +- 5 files changed, 19 insertions(+), 13 deletions(-) diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index ae8c1accb..5882841ec 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -151,7 +151,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" }) } - case "CONNECT": { + case "CONNECT_DAPP": { const selectedAccount = await wallet.getSelectedAccount() const isWhitelisted = await isOnWhitelist(msg.data.host) @@ -159,13 +159,16 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" if (!isWhitelisted) { await actionQueue.push({ - type: "CONNECT", + type: "CONNECT_DAPP", payload: { host: msg.data.host }, }) } if (isWhitelisted && selectedAccount.address) { - return sendToTabAndUi({ type: "CONNECT_RES", data: selectedAccount }) + return sendToTabAndUi({ + type: "CONNECT_DAPP_RES", + data: selectedAccount, + }) } return openUi() @@ -182,7 +185,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" throw new Error("Action not found") } switch (action.type) { - case "CONNECT": { + case "CONNECT_DAPP": { const { host } = action.payload const selectedAccount = await wallet.getSelectedAccount() @@ -190,7 +193,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" if (selectedAccount) { return sendToTabAndUi({ - type: "CONNECT_RES", + type: "CONNECT_DAPP_RES", data: selectedAccount, }) } @@ -284,7 +287,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" throw new Error("Action not found") } switch (action.type) { - case "CONNECT": { + case "CONNECT_DAPP": { return sendToTabAndUi({ type: "REJECT_WHITELIST", data: { @@ -336,7 +339,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" case "ADD_WHITELIST": { return actionQueue.push({ - type: "CONNECT", + type: "CONNECT_DAPP", payload: { host: msg.data }, }) } diff --git a/packages/extension/src/inpage/index.ts b/packages/extension/src/inpage/index.ts index 059caf684..9629d4d75 100644 --- a/packages/extension/src/inpage/index.ts +++ b/packages/extension/src/inpage/index.ts @@ -108,7 +108,7 @@ const starknetWindowObject: StarknetWindowObject = { return } - if (data.type === "CONNECT_RES" && data.data) { + if (data.type === "CONNECT_DAPP_RES" && data.data) { window.removeEventListener("message", handleMessage) const { address, network } = data.data starknet.provider = getProvider(network) @@ -120,7 +120,10 @@ const starknetWindowObject: StarknetWindowObject = { } window.addEventListener("message", handleMessage) - sendMessage({ type: "CONNECT", data: { host: window.location.host } }) + sendMessage({ + type: "CONNECT_DAPP", + data: { host: window.location.host }, + }) }), isPreauthorized: async () => { sendMessage({ diff --git a/packages/extension/src/shared/MessageType.ts b/packages/extension/src/shared/MessageType.ts index c8893e06d..db4ba3928 100644 --- a/packages/extension/src/shared/MessageType.ts +++ b/packages/extension/src/shared/MessageType.ts @@ -55,8 +55,8 @@ export type MessageType = data: ExtActionItem[] } // ***** pre-authorizations ***** - | { type: "CONNECT"; data: { host: string } } - | { type: "CONNECT_RES"; data: WalletAccount } + | { type: "CONNECT_DAPP"; data: { host: string } } + | { type: "CONNECT_DAPP_RES"; data: WalletAccount } | { type: "ADD_WHITELIST"; data: string } | { type: "APPROVE_WHITELIST"; data: { host: string; actionHash: string } } | { type: "REJECT_WHITELIST"; data: { host: string; actionHash: string } } diff --git a/packages/extension/src/shared/actionQueue.ts b/packages/extension/src/shared/actionQueue.ts index 2a6a747ae..326f4e09a 100644 --- a/packages/extension/src/shared/actionQueue.ts +++ b/packages/extension/src/shared/actionQueue.ts @@ -4,7 +4,7 @@ import type { ExtQueueItem } from "../background/actionQueue" export type ActionItem = | { - type: "CONNECT" + type: "CONNECT_DAPP" payload: { host: string } diff --git a/packages/extension/src/ui/screens/ActionScreen.tsx b/packages/extension/src/ui/screens/ActionScreen.tsx index d054424a4..1a7c5f098 100644 --- a/packages/extension/src/ui/screens/ActionScreen.tsx +++ b/packages/extension/src/ui/screens/ActionScreen.tsx @@ -21,7 +21,7 @@ export const ActionScreen: FC = () => { const [action] = actions const isLastAction = actions.length === 1 switch (action.type) { - case "CONNECT": + case "CONNECT_DAPP": return ( Date: Fri, 25 Feb 2022 08:46:23 +0000 Subject: [PATCH 17/86] refactor(extension): rename whitelist to pre authorization --- packages/extension/src/background/index.ts | 53 +++++++++-------- .../src/background/preAuthorizations.ts | 24 ++++++++ .../extension/src/background/whitelist.ts | 24 -------- packages/extension/src/inpage/index.ts | 22 +++---- packages/extension/src/shared/MessageType.ts | 59 +++++++++---------- .../src/ui/components/Account/DappsList.tsx | 20 +++---- .../extension/src/ui/screens/ActionScreen.tsx | 6 +- .../src/ui/screens/SettingsScreen.tsx | 2 +- packages/extension/src/ui/utils/messaging.ts | 4 +- 9 files changed, 107 insertions(+), 107 deletions(-) create mode 100644 packages/extension/src/background/preAuthorizations.ts delete mode 100644 packages/extension/src/background/whitelist.ts diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index 5882841ec..621af573e 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -23,10 +23,10 @@ import { sentTransactionNotification, } from "./notification" import { openUi } from "./openUi" +import { isPreAuthorized, preAuthorize } from "./preAuthorizations" import { Storage, clearStorage, setToStorage } from "./storage" import { TransactionTracker, getTransactionStatus } from "./trackTransactions" import { Wallet, WalletStorageProps } from "./wallet" -import { addToWhitelist, isOnWhitelist } from "./whitelist" ;(async () => { const { privateKey, publicKeyJwk } = await getKeyPair() @@ -153,18 +153,18 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" case "CONNECT_DAPP": { const selectedAccount = await wallet.getSelectedAccount() - const isWhitelisted = await isOnWhitelist(msg.data.host) + const isAuthorized = await isPreAuthorized(msg.data.host) addTab(sender.tab?.id) - if (!isWhitelisted) { + if (!isAuthorized) { await actionQueue.push({ type: "CONNECT_DAPP", payload: { host: msg.data.host }, }) } - if (isWhitelisted && selectedAccount.address) { + if (isAuthorized && selectedAccount.address) { return sendToTabAndUi({ type: "CONNECT_DAPP_RES", data: selectedAccount, @@ -189,7 +189,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" const { host } = action.payload const selectedAccount = await wallet.getSelectedAccount() - await addToWhitelist(host) + await preAuthorize(host) if (selectedAccount) { return sendToTabAndUi({ @@ -220,7 +220,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" ) return sendToTabAndUi({ - type: "SUBMITTED_TX", + type: "TRANSACTION_SUBMITTED", data: { txHash: tx.transaction_hash, actionHash, @@ -228,7 +228,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" }) } catch (error: any) { return sendToTabAndUi({ - type: "FAILED_TX", + type: "TRANSACTION_FAILED", data: { actionHash, error: `${error}` }, }) } @@ -244,7 +244,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" const [r, s] = await signer.signMessage(typedData) return sendToTabAndUi({ - type: "SUCCESS_SIGN", + type: "SIGNATURE_SUCCESS", data: { r: r.toString(), s: s.toString(), @@ -289,7 +289,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" switch (action.type) { case "CONNECT_DAPP": { return sendToTabAndUi({ - type: "REJECT_WHITELIST", + type: "REJECT_PREAUTHORIZATION", data: { host: action.payload.host, actionHash, @@ -298,7 +298,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" } case "TRANSACTION": { return sendToTabAndUi({ - type: "FAILED_TX", + type: "TRANSACTION_FAILED", data: { actionHash, }, @@ -306,7 +306,7 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" } case "SIGN": { return sendToTabAndUi({ - type: "FAILED_SIGN", + type: "SIGNATURE_FAILURE", data: { actionHash, }, @@ -325,10 +325,10 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" } } - case "FAILED_SIGN": - case "REJECT_WHITELIST": + case "SIGNATURE_FAILURE": + case "REJECT_PREAUTHORIZATION": case "REJECT_ADD_TOKEN": - case "FAILED_TX": { + case "TRANSACTION_FAILED": { return await actionQueue.remove(msg.data.actionHash) } @@ -337,23 +337,26 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" return wallet.lock() } - case "ADD_WHITELIST": { + case "PREAUTHORIZE": { return actionQueue.push({ type: "CONNECT_DAPP", payload: { host: msg.data }, }) } - case "IS_WHITELIST": { - const valid = await isOnWhitelist(msg.data) - return sendToTabAndUi({ type: "IS_WHITELIST_RES", data: valid }) + case "IS_PREAUTHORIZED": { + const valid = await isPreAuthorized(msg.data) + return sendToTabAndUi({ type: "IS_PREAUTHORIZED_RES", data: valid }) } - case "RESET_WHITELIST": { - setToStorage(`WHITELIST:APPROVED`, []) - setToStorage(`WHITELIST:PENDING`, []) + case "RESET_PREAUTHORIZATIONS": { + setToStorage(`PREAUTHORIZATION:APPROVED`, []) + setToStorage(`PREAUTHORIZATION:PENDING`, []) return } - case "REQ_PUB": { - return sendToTabAndUi({ type: "REQ_PUB_RES", data: publicKeyJwk }) + case "GET_PUBLIC_KEY": { + return sendToTabAndUi({ + type: "GET_PUBLIC_KEY_RES", + data: publicKeyJwk, + }) } case "START_SESSION": { const { secure, body } = msg.data @@ -427,14 +430,14 @@ import { addToWhitelist, isOnWhitelist } from "./whitelist" } } - case "ADD_SIGN": { + case "SIGN_MESSAGE": { const { meta } = await actionQueue.push({ type: "SIGN", payload: msg.data, }) return sendToTabAndUi({ - type: "ADD_SIGN_RES", + type: "SIGN_MESSAGE_RES", data: { actionHash: meta.hash, }, diff --git a/packages/extension/src/background/preAuthorizations.ts b/packages/extension/src/background/preAuthorizations.ts new file mode 100644 index 000000000..7248c91d8 --- /dev/null +++ b/packages/extension/src/background/preAuthorizations.ts @@ -0,0 +1,24 @@ +import { getFromStorage, setToStorage } from "./storage" + +export async function preAuthorize(host: string) { + const approved = await getFromStorage(`PREAUTHORIZATION:APPROVED`) + await setToStorage(`PREAUTHORIZATION:APPROVED`, [...(approved || []), host]) +} + +export async function getPreAuthorizations() { + const approved = await getFromStorage(`PREAUTHORIZATION:APPROVED`) + return approved || [] +} + +export async function removePreAuthorization(host: string) { + const approved = await getFromStorage(`PREAUTHORIZATION:APPROVED`) + await setToStorage( + `PREAUTHORIZATION:APPROVED`, + (approved || []).filter((x) => x !== host), + ) +} + +export async function isPreAuthorized(host: string) { + const approved = await getFromStorage(`PREAUTHORIZATION:APPROVED`) + return (approved || []).includes(host) +} diff --git a/packages/extension/src/background/whitelist.ts b/packages/extension/src/background/whitelist.ts deleted file mode 100644 index bfb3bb093..000000000 --- a/packages/extension/src/background/whitelist.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { getFromStorage, setToStorage } from "./storage" - -export async function addToWhitelist(host: string) { - const approved = await getFromStorage(`WHITELIST:APPROVED`) - await setToStorage(`WHITELIST:APPROVED`, [...(approved || []), host]) -} - -export async function getWhitelist() { - const approved = await getFromStorage(`WHITELIST:APPROVED`) - return approved || [] -} - -export async function removeFromWhitelist(host: string) { - const approved = await getFromStorage(`WHITELIST:APPROVED`) - await setToStorage( - `WHITELIST:APPROVED`, - (approved || []).filter((x) => x !== host), - ) -} - -export async function isOnWhitelist(host: string) { - const approved = await getFromStorage(`WHITELIST:APPROVED`) - return (approved || []).includes(host) -} diff --git a/packages/extension/src/inpage/index.ts b/packages/extension/src/inpage/index.ts index 9629d4d75..928071506 100644 --- a/packages/extension/src/inpage/index.ts +++ b/packages/extension/src/inpage/index.ts @@ -84,7 +84,7 @@ const starknetWindowObject: StarknetWindowObject = { ) .then(() => "error" as const) .catch(() => { - sendMessage({ type: "FAILED_TX", data: { actionHash } }) + sendMessage({ type: "TRANSACTION_FAILED", data: { actionHash } }) return "timeout" as const }), ]) @@ -127,10 +127,10 @@ const starknetWindowObject: StarknetWindowObject = { }), isPreauthorized: async () => { sendMessage({ - type: "IS_WHITELIST", + type: "IS_PREAUTHORIZED", data: window.location.host, }) - return waitForMsgOfType("IS_WHITELIST_RES", 1000) + return waitForMsgOfType("IS_PREAUTHORIZED_RES", 1000) }, on: (event, handleEvent) => { if (event !== "accountsChanged") { @@ -194,18 +194,18 @@ export class WalletSigner extends Provider implements SignerInterface { const result = await Promise.race([ waitForMsgOfType( - "SUBMITTED_TX", + "TRANSACTION_SUBMITTED", 11 * 60 * 1000, (x) => x.data.actionHash === actionHash, ), waitForMsgOfType( - "FAILED_TX", + "TRANSACTION_FAILED", 10 * 60 * 1000, (x) => x.data.actionHash === actionHash, ) .then(() => "error" as const) .catch(() => { - sendMessage({ type: "FAILED_TX", data: { actionHash } }) + sendMessage({ type: "TRANSACTION_FAILED", data: { actionHash } }) return "timeout" as const }), ]) @@ -229,24 +229,24 @@ export class WalletSigner extends Provider implements SignerInterface { } public async signMessage(data: typedData.TypedData): Promise { - sendMessage({ type: "ADD_SIGN", data }) - const { actionHash } = await waitForMsgOfType("ADD_SIGN_RES", 1000) + sendMessage({ type: "SIGN_MESSAGE", data }) + const { actionHash } = await waitForMsgOfType("SIGN_MESSAGE_RES", 1000) sendMessage({ type: "OPEN_UI" }) const result = await Promise.race([ waitForMsgOfType( - "SUCCESS_SIGN", + "SIGNATURE_SUCCESS", 11 * 60 * 1000, (x) => x.data.actionHash === actionHash, ), waitForMsgOfType( - "FAILED_SIGN", + "SIGNATURE_FAILURE", 10 * 60 * 1000, (x) => x.data.actionHash === actionHash, ) .then(() => "error" as const) .catch(() => { - sendMessage({ type: "FAILED_SIGN", data: { actionHash } }) + sendMessage({ type: "SIGNATURE_FAILURE", data: { actionHash } }) return "timeout" as const }), ]) diff --git a/packages/extension/src/shared/MessageType.ts b/packages/extension/src/shared/MessageType.ts index db4ba3928..c367362ec 100644 --- a/packages/extension/src/shared/MessageType.ts +++ b/packages/extension/src/shared/MessageType.ts @@ -38,42 +38,30 @@ export type MessageType = | { type: "GET_TRANSACTION"; data: { hash: string; network: string } } | { type: "GET_TRANSACTION_RES"; data: TransactionStatus } | { - type: "SUBMITTED_TX" + type: "TRANSACTION_SUBMITTED" data: { txHash: string actionHash: string } } | { - type: "FAILED_TX" + type: "TRANSACTION_FAILED" data: { actionHash: string; error?: string } } - // ***** actions ***** - | { type: "GET_ACTIONS" } - | { - type: "GET_ACTIONS_RES" - data: ExtActionItem[] - } // ***** pre-authorizations ***** | { type: "CONNECT_DAPP"; data: { host: string } } | { type: "CONNECT_DAPP_RES"; data: WalletAccount } - | { type: "ADD_WHITELIST"; data: string } - | { type: "APPROVE_WHITELIST"; data: { host: string; actionHash: string } } - | { type: "REJECT_WHITELIST"; data: { host: string; actionHash: string } } - | { type: "REMOVE_WHITELIST"; data: string } - | { type: "GET_PENDING_WHITELIST" } - | { type: "GET_PENDING_WHITELIST_RES"; data: string[] } - | { type: "IS_WHITELIST"; data: string } - | { type: "IS_WHITELIST_RES"; data: boolean } - | { type: "RESET_WHITELIST" } - // ***** tokens ***** - | { type: "ADD_TOKEN"; data: AddToken } - | { type: "ADD_TOKEN_RES"; data: { actionHash: string } } - | { type: "REJECT_ADD_TOKEN"; data: { actionHash: string } } - | { type: "APPROVE_ADD_TOKEN"; data: { actionHash: string } } + | { type: "PREAUTHORIZE"; data: string } + | { + type: "REJECT_PREAUTHORIZATION" + data: { host: string; actionHash: string } + } + | { type: "REMOVE_PREAUTHORIZATION"; data: string } + | { type: "IS_PREAUTHORIZED"; data: string } + | { type: "IS_PREAUTHORIZED_RES"; data: boolean } + | { type: "RESET_PREAUTHORIZATIONS" } // ***** sessions ***** | { type: "STOP_SESSION" } - | { type: "REPORT_PROGRESS"; data: number } | { type: "HAS_SESSION" } | { type: "HAS_SESSION_RES"; data: boolean } | { type: "IS_INITIALIZED" } @@ -86,26 +74,35 @@ export type MessageType = | { type: "RECOVER_BACKUP_RES" } | { type: "DOWNLOAD_BACKUP_FILE" } | { type: "DOWNLOAD_BACKUP_FILE_RES" } + // ***** tokens ***** + | { type: "ADD_TOKEN"; data: AddToken } + | { type: "ADD_TOKEN_RES"; data: { actionHash: string } } + | { type: "REJECT_ADD_TOKEN"; data: { actionHash: string } } + | { type: "APPROVE_ADD_TOKEN"; data: { actionHash: string } } // ***** actions ***** - | { type: "ADD_SIGN"; data: typedData.TypedData } - | { type: "ADD_SIGN_RES"; data: { actionHash: string } } + | { type: "GET_ACTIONS" } + | { + type: "GET_ACTIONS_RES" + data: ExtActionItem[] + } | { type: "APPROVE_ACTION"; data: { actionHash: string } } | { type: "REJECT_ACTION"; data: { actionHash: string } } | { type: "ACTIONS_QUEUE_UPDATE" data: { actions: ExtActionItem[] } } + | { type: "SIGN_MESSAGE"; data: typedData.TypedData } + | { type: "SIGN_MESSAGE_RES"; data: { actionHash: string } } + | { type: "SIGNATURE_FAILURE"; data: { actionHash: string } } | { - type: "APPROVE_SIGN" - data: { typedData: typedData.TypedData; actionHash: string } + type: "SIGNATURE_SUCCESS" + data: { r: string; s: string; actionHash: string } } - | { type: "FAILED_SIGN"; data: { actionHash: string } } - | { type: "SUCCESS_SIGN"; data: { r: string; s: string; actionHash: string } } // ***** misc ***** | { type: "OPEN_UI" } | { type: "RESET_ALL" } - | { type: "REQ_PUB" } - | { type: "REQ_PUB_RES"; data: JWK } + | { type: "GET_PUBLIC_KEY" } + | { type: "GET_PUBLIC_KEY_RES"; data: JWK } export type WindowMessageType = MessageType & { forwarded?: boolean diff --git a/packages/extension/src/ui/components/Account/DappsList.tsx b/packages/extension/src/ui/components/Account/DappsList.tsx index 3933611dd..b7132b65c 100644 --- a/packages/extension/src/ui/components/Account/DappsList.tsx +++ b/packages/extension/src/ui/components/Account/DappsList.tsx @@ -1,33 +1,33 @@ import { FC, useCallback, useEffect, useState } from "react" import { - getWhitelist, - removeFromWhitelist, -} from "../../../background/whitelist" + getPreAuthorizations, + removePreAuthorization, +} from "../../../background/preAuthorizations" import { DappListItem } from "./Dapp" import { SectionHeader } from "./SectionHeader" export const DappsList: FC = () => { - const [dappsWhitelist, setDappsWhitelist] = useState([]) + const [preAuthorizations, setPreAuthorizations] = useState([]) - const getWhitelistDapps = useCallback(async () => { - setDappsWhitelist(await getWhitelist()) + const requestPreAuthorizations = useCallback(async () => { + setPreAuthorizations(await getPreAuthorizations()) }, []) useEffect(() => { - getWhitelistDapps() + requestPreAuthorizations() }, []) return ( <> Dapps - {dappsWhitelist.map((dapp) => ( + {preAuthorizations.map((dapp) => ( { - await removeFromWhitelist(dapp) - getWhitelistDapps() + await removePreAuthorization(dapp) + requestPreAuthorizations() }} /> ))} diff --git a/packages/extension/src/ui/screens/ActionScreen.tsx b/packages/extension/src/ui/screens/ActionScreen.tsx index 1a7c5f098..242355b3a 100644 --- a/packages/extension/src/ui/screens/ActionScreen.tsx +++ b/packages/extension/src/ui/screens/ActionScreen.tsx @@ -68,11 +68,11 @@ export const ActionScreen: FC = () => { useAppState.setState({ isLoading: true }) const result = await Promise.race([ waitForMessage( - "SUBMITTED_TX", + "TRANSACTION_SUBMITTED", ({ data }) => data.actionHash === action.meta.hash, ), waitForMessage( - "FAILED_TX", + "TRANSACTION_FAILED", ({ data }) => data.actionHash === action.meta.hash, ), ]) @@ -107,7 +107,7 @@ export const ActionScreen: FC = () => { await approve(action) useAppState.setState({ isLoading: true }) await waitForMessage( - "SUCCESS_SIGN", + "SIGNATURE_SUCCESS", ({ data }) => data.actionHash === action.meta.hash, ) if (isPopup && isLastAction) { diff --git a/packages/extension/src/ui/screens/SettingsScreen.tsx b/packages/extension/src/ui/screens/SettingsScreen.tsx index a6595864b..0668da6bc 100644 --- a/packages/extension/src/ui/screens/SettingsScreen.tsx +++ b/packages/extension/src/ui/screens/SettingsScreen.tsx @@ -57,7 +57,7 @@ export const SettingsScreen: FC = () => {

@@ -221,6 +232,7 @@ export const TokenDapp: FC = () => { {truncateAddress(tokenAddress)} + {errorMessageOfAddERC20Token} {ethAddress && (

@@ -228,7 +240,15 @@ export const TokenDapp: FC = () => { @@ -242,6 +262,7 @@ export const TokenDapp: FC = () => { {truncateAddress(ethAddress)} + {errorMessageOfAddETHToken}

)} diff --git a/packages/dapp/src/styles/globals.css b/packages/dapp/src/styles/globals.css index b88ecc647..4a7390b38 100644 --- a/packages/dapp/src/styles/globals.css +++ b/packages/dapp/src/styles/globals.css @@ -322,6 +322,12 @@ button.flat { padding: 0; } +span.error-message { + color: red; + font-size: 16px; + margin-left: 0.6em; +} + button { font-family: var(--font-family); } From af9f3aae70eda9d54c70f0478c3a79ec4fe1eae9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=91=A8=E5=AE=87=E7=9B=9B=20Yusheng=20Zhou?= Date: Sat, 26 Feb 2022 18:39:49 +0800 Subject: [PATCH 19/86] refactor(ui): reuse ConfirmScreen in HideTokenScreen --- .../src/ui/screens/HideTokenScreen.tsx | 79 +++++++------------ 1 file changed, 30 insertions(+), 49 deletions(-) diff --git a/packages/extension/src/ui/screens/HideTokenScreen.tsx b/packages/extension/src/ui/screens/HideTokenScreen.tsx index 0a2e4ae1e..e36561631 100644 --- a/packages/extension/src/ui/screens/HideTokenScreen.tsx +++ b/packages/extension/src/ui/screens/HideTokenScreen.tsx @@ -1,24 +1,15 @@ import React, { FC, useState } from "react" import { Navigate, useNavigate, useParams } from "react-router-dom" -import { BackButton } from "../components/BackButton" -import { Button, ButtonGroupVertical } from "../components/Button" -import { Header } from "../components/Header" import { TokenIcon } from "../components/TokenIcon" import { P } from "../components/Typography" -import { FormError, H2 } from "../components/Typography" +import { FormError } from "../components/Typography" import { routes } from "../routes" import { removeToken } from "../states/tokens" import { useTokensWithBalance } from "../states/tokens" import { toTokenView } from "../utils/tokens" -import { - BalanceAlert, - TokenName, - TokenScreenWrapper, - TokenTitle, -} from "./TokenScreen" - -const HideTokenScreenWrapper = TokenScreenWrapper +import { ConfirmScreen } from "./ConfirmScreen" +import { BalanceAlert, TokenName, TokenTitle } from "./TokenScreen" export const HideTokenAlert = BalanceAlert @@ -35,43 +26,33 @@ export const HideTokenScreen: FC = () => { const { name } = toTokenView(token) - return ( - <> -
- -
+ const handleSubmit = async () => { + try { + removeToken(token) + navigate(routes.account()) + } catch (e) { + setError("Token not hidden") + } + } - -

Hide token

- - - {name} - -
{ - e.preventDefault() - try { - removeToken(token) - navigate(routes.account()) - } catch (e) { - setError("Token not hidden") - } - }} - > - {error && {error}} - -

- To see this token again, you will need to add the token to your - account. -

-
- - - -
-
- + return ( + + + + {name} + + {error && {error}} + +

+ To see this token again, you will need to add the token to your + account. +

+
+
) } From 84f3b7bcb83fdf5f130983bb60bcec2cc65cca99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=91=A8=E5=AE=87=E7=9B=9B=20Yusheng=20Zhou?= Date: Mon, 28 Feb 2022 22:07:25 +0800 Subject: [PATCH 20/86] rename variable, replace promise with async/await --- packages/dapp/src/components/TokenDapp.tsx | 39 ++++++++++------------ 1 file changed, 18 insertions(+), 21 deletions(-) diff --git a/packages/dapp/src/components/TokenDapp.tsx b/packages/dapp/src/components/TokenDapp.tsx index b7a747ae9..69b9b836a 100644 --- a/packages/dapp/src/components/TokenDapp.tsx +++ b/packages/dapp/src/components/TokenDapp.tsx @@ -25,9 +25,8 @@ export const TokenDapp: FC = () => { const [transactionStatus, setTransactionStatus] = useState< "idle" | "approve" | "pending" | "success" >("idle") - const [errorMessageOfAddERC20Token, setErrorMessageOfAddERC20Token] = - useState("") - const [errorMessageOfAddETHToken, setErrorMessageOfAddETHToken] = useState("") + const [addTokenError, setAddTokenError] = useState("") + const [addETHError, setAddETHError] = useState("") const buttonsDisabled = ["approve", "pending"].includes(transactionStatus) @@ -210,14 +209,13 @@ export const TokenDapp: FC = () => { - + + + ) } diff --git a/packages/extension/src/ui/screens/LegacyScreen.tsx b/packages/extension/src/ui/screens/LegacyScreen.tsx index 3ef3bf0c4..ddb518cef 100644 --- a/packages/extension/src/ui/screens/LegacyScreen.tsx +++ b/packages/extension/src/ui/screens/LegacyScreen.tsx @@ -7,49 +7,60 @@ import { Button } from "../components/Button" import { H2, P } from "../components/Typography" import { routes } from "../routes" -const DownloadButton = styled(Button)` - margin-top: 20px; -` - const ContinueButton = styled(Button)` margin-top: auto; ` const Container = styled.div` - padding: 40px 40px 24px; + padding: 88px 40px 24px 40px; display: flex; flex-direction: column; height: calc(100vh - 68px); + + ${P} { + font-weight: 600; + margin-top: 15px; + } + + a { + color: #ff875b; + text-decoration: none; + } ` export const LegacyScreen: FC = () => { const navigate = useNavigate() - const handleDownload: FormEventHandler = async () => { + const handleDownload: FormEventHandler = async (e) => { + e.preventDefault() sendMessage({ type: "DOWNLOAD_LEGACY_BACKUP_FILE" }) } return ( <> -

Breaking Changes

+

Breaking changes

- Lorem ipsum dolor sit amet, consectetur adipiscing elit. - Pellentesque vitae ex ut ipsum tristique laoreet. + This version of Argent X includes breaking changes. Your old wallet + will no longer work. You will need to create a new wallet with new + accounts.

-

- Nam facilisis vehicula velit ut sodales. For more info click - + If you wish to transfer assets from your existing accounts, please{" "} + + download your old wallet{" "} + + and then follow these{" "} + - this link + instructions

- Download - navigate(routes.welcome())}> - Continue without downloading + navigate(routes.newWallet())}> + Create new wallet diff --git a/packages/extension/src/ui/screens/PasswordScreen.tsx b/packages/extension/src/ui/screens/LockScreen.tsx similarity index 84% rename from packages/extension/src/ui/screens/PasswordScreen.tsx rename to packages/extension/src/ui/screens/LockScreen.tsx index 30fc60ecb..26a0ac717 100644 --- a/packages/extension/src/ui/screens/PasswordScreen.tsx +++ b/packages/extension/src/ui/screens/LockScreen.tsx @@ -15,7 +15,7 @@ import { startSession } from "../utils/messaging" import { recover } from "../utils/recovery" import { isValidPassword } from "./NewWalletScreen" -const PasswordScreenWrapper = styled.div` +const LockScreenWrapper = styled.div` display: flex; flex-direction: column; align-items: center; @@ -49,37 +49,39 @@ export const greetings = [ "hi fren", ] -export const PasswordScreen: FC = () => { +export const LockScreen: FC = () => { const navigate = useNavigate() - const { error } = useAppState() + const { passwordError } = useAppState() const { control, formState: { errors, isDirty }, handleSubmit, setError, } = useForm<{ password: string }>() - useEffect(() => { - setError("password", { message: error }) - }, [error]) + setError("password", { message: passwordError }) + }, [passwordError]) const handleResetClick = () => navigate(routes.reset()) const verifyPassword = async (password: string) => { - useAppState.setState({ error: undefined, isLoading: true }) + useAppState.setState({ passwordError: undefined, isLoading: true }) try { await startSession(password) const target = await recover() - useAppState.setState({ error: undefined, isLoading: false }) + useAppState.setState({ passwordError: undefined, isLoading: false }) navigate(target) } catch { - useAppState.setState({ error: "Wrong password", isLoading: false }) + useAppState.setState({ + passwordError: "Wrong password", + isLoading: false, + }) } } return ( - +

Unlock your wallet to continue.

@@ -114,6 +116,6 @@ export const PasswordScreen: FC = () => { Unlock -
+ ) } diff --git a/packages/extension/src/ui/screens/NewWalletScreen.tsx b/packages/extension/src/ui/screens/NewWalletScreen.tsx index a9da20188..727b16ecc 100644 --- a/packages/extension/src/ui/screens/NewWalletScreen.tsx +++ b/packages/extension/src/ui/screens/NewWalletScreen.tsx @@ -5,6 +5,7 @@ import styled from "styled-components" import { BackButton } from "../components/BackButton" import { Button } from "../components/Button" +import { Header } from "../components/Header" import { InputText } from "../components/InputText" import { StickyArgentFooter } from "../components/StickyArgentFooter" import { FormError, H2, P } from "../components/Typography" @@ -15,7 +16,7 @@ import { useLocalhostPort } from "../states/localhostPort" import { connectAccount, deployAccount } from "../utils/accounts" import { recover } from "../utils/recovery" -const NewWalletScreenWrapper = styled.div` +const Container = styled.div` padding: 48px 40px 24px; display: flex; flex-direction: column; @@ -59,8 +60,7 @@ export const NewWalletScreen: FC = () => { ) addAccount(newAccount) connectAccount(newAccount, switcherNetworkId, localhostPort) - recover() - navigate(routes.backupDownload()) + navigate(await recover()) } catch (error: any) { useAppState.setState({ error }) navigate(routes.error()) @@ -68,53 +68,57 @@ export const NewWalletScreen: FC = () => { } return ( - - -

New password

-

Enter a password to protect your wallet

-
handleDeploy(password))}> - ( - + <> +
+ +
+ +

New wallet

+

Enter a password to protect your wallet

+ handleDeploy(password))}> + ( + + )} + /> + {errors.password?.type === "required" && ( + A new password is required )} - /> - {errors.password?.type === "required" && ( - A new password is required - )} - {errors.password?.type === "validate" && ( - Password is too short - )} - x === password }} - defaultValue="" - render={({ field: { ref, ...field } }) => ( - + {errors.password?.type === "validate" && ( + Password is too short + )} + x === password }} + defaultValue="" + render={({ field: { ref, ...field } }) => ( + + )} + /> + {errors.repeatPassword?.type === "validate" && ( + Passwords do not match )} - /> - {errors.repeatPassword?.type === "validate" && ( - Passwords do not match - )} - - - -
+ + + + + ) } diff --git a/packages/extension/src/ui/screens/ResetScreen.tsx b/packages/extension/src/ui/screens/ResetScreen.tsx index 18b856480..39eb78a98 100644 --- a/packages/extension/src/ui/screens/ResetScreen.tsx +++ b/packages/extension/src/ui/screens/ResetScreen.tsx @@ -5,7 +5,6 @@ import { sendMessage } from "../../shared/messages" import { P } from "../components/Typography" import { routes } from "../routes" import { useAccount } from "../states/account" -import { useAppState } from "../states/app" import { ConfirmScreen } from "./ConfirmScreen" export const ResetScreen: FC = () => { @@ -20,7 +19,6 @@ export const ResetScreen: FC = () => { onSubmit={() => { sendMessage({ type: "RESET_ALL" }) localStorage.clear() - useAppState.setState({ isFirstRender: true }) useAccount.setState({ accounts: {}, selectedAccount: undefined }) navigate(routes.welcome()) }} diff --git a/packages/extension/src/ui/screens/SettingsScreen.tsx b/packages/extension/src/ui/screens/SettingsScreen.tsx index 861cab91c..cf8581746 100644 --- a/packages/extension/src/ui/screens/SettingsScreen.tsx +++ b/packages/extension/src/ui/screens/SettingsScreen.tsx @@ -78,7 +78,7 @@ export const SettingsScreen: FC = () => { const handleLockClick = () => { sendMessage({ type: "STOP_SESSION" }) - navigate(routes.password()) + navigate(routes.lockScreen()) } const handleResetDappConnectionsClick = () => { diff --git a/packages/extension/src/ui/screens/WelcomeScreen.tsx b/packages/extension/src/ui/screens/WelcomeScreen.tsx index ad286bab5..7361cd413 100644 --- a/packages/extension/src/ui/screens/WelcomeScreen.tsx +++ b/packages/extension/src/ui/screens/WelcomeScreen.tsx @@ -7,8 +7,8 @@ import { Button, ButtonGroup } from "../components/Button" import { Greetings, GreetingsWrapper } from "../components/Greetings" import { StickyArgentFooter } from "../components/StickyArgentFooter" import { P } from "../components/Typography" -import { routes } from "../routes" import { useCustomNavigate } from "../hooks/useCustomNavigate" +import { routes } from "../routes" const WelcomeScreenWrapper = styled.div` padding: 70px 40px 24px; @@ -53,7 +53,9 @@ export const WelcomeScreen: FC = () => {

Enjoy the security of Ethereum with the scale of StarkNet

- diff --git a/packages/extension/src/ui/states/app.ts b/packages/extension/src/ui/states/app.ts index ea07048be..e3e9d31e5 100644 --- a/packages/extension/src/ui/states/app.ts +++ b/packages/extension/src/ui/states/app.ts @@ -5,6 +5,7 @@ import { defaultNetwork } from "../../shared/networks" interface State { switcherNetworkId: string error?: string + passwordError?: string isLoading: boolean isFirstRender: boolean } diff --git a/packages/extension/src/ui/states/backupDownload.ts b/packages/extension/src/ui/states/backupDownload.ts index d1872254e..a72cdc6f7 100644 --- a/packages/extension/src/ui/states/backupDownload.ts +++ b/packages/extension/src/ui/states/backupDownload.ts @@ -1,14 +1,16 @@ import create from "zustand" import { persist } from "zustand/middleware" -interface State { +export interface BackupState { isBackupDownloadRequired: boolean + dontRemindUser: boolean } -export const useBackupDownload = create( +export const useBackupDownload = create( persist( (_set, _get) => ({ isBackupDownloadRequired: false, + dontRemindUser: false, }), { name: "backupDownload" }, ), From 6623067a8810114131a960eb0ceb68611f6874d2 Mon Sep 17 00:00:00 2001 From: Axel Delamarre <1091900+delaaxe@users.noreply.github.com> Date: Tue, 8 Mar 2022 17:40:04 +0000 Subject: [PATCH 56/86] fix(background): reset wallet fully --- packages/extension/src/background/index.ts | 2 +- packages/extension/src/background/wallet.ts | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index 759e8280f..72a7e54a6 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -340,7 +340,7 @@ import { Wallet, WalletStorageProps } from "./wallet" case "RESET_ALL": { clearStorage() - return wallet.lock() + return wallet.reset() } case "PREAUTHORIZE": { diff --git a/packages/extension/src/background/wallet.ts b/packages/extension/src/background/wallet.ts index c24e1df21..80466cd99 100644 --- a/packages/extension/src/background/wallet.ts +++ b/packages/extension/src/background/wallet.ts @@ -212,6 +212,12 @@ export class Wallet { this.session = undefined } + public reset() { + this.accounts = [] + this.encryptedBackup = undefined + this.session = undefined + } + public async importBackup(backupString: string) { if (!Wallet.validateBackup(backupString)) { if (Wallet.isLegacyBackup(backupString)) { From 0775b58abcaf797c00596fc09534626daeebe494 Mon Sep 17 00:00:00 2001 From: Gerald Date: Wed, 9 Mar 2022 08:57:07 +0100 Subject: [PATCH 57/86] don't return selected account if session is not open --- packages/extension/src/background/index.ts | 7 +------ packages/extension/src/background/wallet.ts | 2 +- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index 1c567a2b9..a0286dfbe 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -175,11 +175,6 @@ import { Wallet, WalletStorageProps } from "./wallet" type: "CONNECT_DAPP", payload: { host: msg.data.host }, }) - return openUi() - } - - if (!wallet.isSessionOpen()) { - return openUi() } if (isAuthorized && selectedAccount?.address) { @@ -189,7 +184,7 @@ import { Wallet, WalletStorageProps } from "./wallet" }) } - break + return openUi() } case "CONNECT_ACCOUNT": { diff --git a/packages/extension/src/background/wallet.ts b/packages/extension/src/background/wallet.ts index c24e1df21..05888a232 100644 --- a/packages/extension/src/background/wallet.ts +++ b/packages/extension/src/background/wallet.ts @@ -182,7 +182,7 @@ export class Wallet { } public async getSelectedAccount(): Promise { - if (this.accounts.length === 0) { + if (this.accounts.length === 0 || !this.isSessionOpen()) { return } From c74bf6090dca4ef13a742009ff5143f941934398 Mon Sep 17 00:00:00 2001 From: Gerald Date: Wed, 9 Mar 2022 09:10:16 +0100 Subject: [PATCH 58/86] wallet emits event when auto-locking => disconnect dapps --- packages/extension/src/background/index.ts | 4 ++++ packages/extension/src/background/wallet.ts | 6 +++++- packages/extension/src/ui/index.html | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index a0286dfbe..1c7412a80 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -87,6 +87,10 @@ import { Wallet, WalletStorageProps } from "./wallet" sendMessageToActiveTabs(msg) } + wallet.on("autoLock", async () => { + await sendToTabAndUi({ type: "DISCONNECT_ACCOUNT" }) + }) + const actionQueue = await getQueue({ onUpdate: (actions) => { sendToTabAndUi({ diff --git a/packages/extension/src/background/wallet.ts b/packages/extension/src/background/wallet.ts index 05888a232..5c3cfc28b 100644 --- a/packages/extension/src/background/wallet.ts +++ b/packages/extension/src/background/wallet.ts @@ -1,3 +1,5 @@ +import { EventEmitter } from "events" + import { ethers } from "ethers" import { Account, ec, stark } from "starknet" @@ -29,7 +31,7 @@ export interface WalletStorageProps { selected?: string } -export class Wallet { +export class Wallet extends EventEmitter { private accounts: WalletAccount[] = [] private encryptedBackup?: string @@ -39,6 +41,7 @@ export class Wallet { private compiledContract: string constructor(store: IStorage, compiledContract: string) { + super() this.store = store this.compiledContract = compiledContract } @@ -258,6 +261,7 @@ export class Wallet { setTimeout(() => { this.lock() + this.emit("autoLock") }, SESSION_DURATION) } diff --git a/packages/extension/src/ui/index.html b/packages/extension/src/ui/index.html index d384b2fd6..ae82088f1 100644 --- a/packages/extension/src/ui/index.html +++ b/packages/extension/src/ui/index.html @@ -2,7 +2,7 @@ - Extension + ArgentX From 874451fd07a162e14cafe9c89d44f5c79d68a68c Mon Sep 17 00:00:00 2001 From: Gerald Date: Wed, 9 Mar 2022 09:27:40 +0100 Subject: [PATCH 59/86] disconnect account when removing all pre-authorizations --- packages/extension/src/background/index.ts | 8 ++++---- packages/extension/src/background/preAuthorizations.ts | 4 ++++ 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index 1c7412a80..5753fd444 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -30,8 +30,9 @@ import { isPreAuthorized, preAuthorize, removePreAuthorization, + resetPreAuthorizations, } from "./preAuthorizations" -import { Storage, clearStorage, setToStorage } from "./storage" +import { Storage, clearStorage } from "./storage" import { TransactionTracker, getTransactionStatus } from "./trackTransactions" import { Wallet, WalletStorageProps } from "./wallet" @@ -384,9 +385,8 @@ import { Wallet, WalletStorageProps } from "./wallet" break } case "RESET_PREAUTHORIZATIONS": { - setToStorage(`PREAUTHORIZATION:APPROVED`, []) - setToStorage(`PREAUTHORIZATION:PENDING`, []) - return + await resetPreAuthorizations() + return sendToTabAndUi({ type: "DISCONNECT_ACCOUNT" }) } case "GET_PUBLIC_KEY": { return sendToTabAndUi({ diff --git a/packages/extension/src/background/preAuthorizations.ts b/packages/extension/src/background/preAuthorizations.ts index 7248c91d8..cd15f909d 100644 --- a/packages/extension/src/background/preAuthorizations.ts +++ b/packages/extension/src/background/preAuthorizations.ts @@ -22,3 +22,7 @@ export async function isPreAuthorized(host: string) { const approved = await getFromStorage(`PREAUTHORIZATION:APPROVED`) return (approved || []).includes(host) } + +export async function resetPreAuthorizations() { + await setToStorage(`PREAUTHORIZATION:APPROVED`, []) +} From 483d4db95c8ef95271020c93d66bc2af794a6854 Mon Sep 17 00:00:00 2001 From: Gerald Date: Wed, 9 Mar 2022 10:34:44 +0100 Subject: [PATCH 60/86] feat(reset): send disconnect account --- packages/extension/src/background/index.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index 61fa52a3b..ac821e799 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -356,7 +356,8 @@ import { Wallet, WalletStorageProps } from "./wallet" case "RESET_ALL": { clearStorage() - return wallet.reset() + wallet.reset() + return sendToTabAndUi({ type: "DISCONNECT_ACCOUNT" }) } case "PREAUTHORIZE": { From f4af7d26c373bfb5255d729cb35e91d1a45b94b9 Mon Sep 17 00:00:00 2001 From: Gerald Date: Wed, 9 Mar 2022 10:43:31 +0100 Subject: [PATCH 61/86] Apply suggestions from code review Co-authored-by: delaaxe <1091900+delaaxe@users.noreply.github.com> --- packages/extension/src/background/activeTabs.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/extension/src/background/activeTabs.ts b/packages/extension/src/background/activeTabs.ts index 3409b894a..68813bf04 100644 --- a/packages/extension/src/background/activeTabs.ts +++ b/packages/extension/src/background/activeTabs.ts @@ -3,7 +3,10 @@ import browser from "webextension-polyfill" import { sendMessage } from "../shared/messages" import { MessageType } from "../shared/MessageType" -type Tab = { id: number; host: string } +interface Tab { + id: number + host: string +} const activeTabs: Tab[] = [] export function addTab(tab: Tab) { @@ -28,7 +31,7 @@ export function hasTab(tabId?: number) { return activeTabs.some((tab) => tab.id === tabId) } -browser.tabs.onRemoved.addListener((tabId) => { +browser.tabs.onRemoved.addListener(removeTab) removeTab(tabId) }) From ef5470fe25e5b534fff2b6570d265cf039eee67c Mon Sep 17 00:00:00 2001 From: Gerald Date: Wed, 9 Mar 2022 11:02:00 +0100 Subject: [PATCH 62/86] fix autocommit code review changes --- packages/extension/src/background/activeTabs.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/extension/src/background/activeTabs.ts b/packages/extension/src/background/activeTabs.ts index 68813bf04..5228984df 100644 --- a/packages/extension/src/background/activeTabs.ts +++ b/packages/extension/src/background/activeTabs.ts @@ -32,8 +32,6 @@ export function hasTab(tabId?: number) { } browser.tabs.onRemoved.addListener(removeTab) - removeTab(tabId) -}) export function getTabIdsOfHost(host: string) { return activeTabs.filter((tab) => tab.host === host).map((tab) => tab.id) From 2a4ac432272317e71ffcc247e85339f3f75fa51c Mon Sep 17 00:00:00 2001 From: Gerald Date: Wed, 9 Mar 2022 16:17:14 +0100 Subject: [PATCH 63/86] code review changes --- packages/extension/src/background/wallet.ts | 38 ++++++++++----------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/packages/extension/src/background/wallet.ts b/packages/extension/src/background/wallet.ts index cc97dbd33..baf89c5c0 100644 --- a/packages/extension/src/background/wallet.ts +++ b/packages/extension/src/background/wallet.ts @@ -123,7 +123,7 @@ export class Wallet { const deployImplementationTransaction = await provider.deployContract({ contract: this.argentAccountCompiledContract, }) - this.assertTransactionReceived(deployImplementationTransaction, true) + assertTransactionReceived(deployImplementationTransaction, true) implementation = deployImplementationTransaction.address as string } @@ -133,7 +133,7 @@ export class Wallet { addressSalt: seed, }) - this.assertTransactionReceived(deployTransaction, true) + assertTransactionReceived(deployTransaction, true) const proxyAddress = deployTransaction.address as string const initTransaction = await provider.invokeFunction({ @@ -142,7 +142,7 @@ export class Wallet { calldata: stark.compileCalldata({ signer: starkPub, guardian: "0" }), }) - this.assertTransactionReceived(initTransaction) + assertTransactionReceived(initTransaction) const account = { network: networkId, @@ -161,22 +161,6 @@ export class Wallet { return { account, txHash: initTransaction.transaction_hash } } - private assertTransactionReceived( - transactionResponse: AddTransactionResponse, - deployContract = false, - ) { - if (transactionResponse.code !== "TRANSACTION_RECEIVED") { - throw new Error( - `Transaction not received: ${transactionResponse.transaction_hash}`, - ) - } - if (deployContract && !transactionResponse.address) { - throw new Error( - `Contract not deployed: ${transactionResponse.transaction_hash}`, - ) - } - } - public getAccounts(): WalletAccount[] { return this.accounts } @@ -315,3 +299,19 @@ export class Wallet { this.encryptedBackup = backupString } } + +const assertTransactionReceived = ( + transactionResponse: AddTransactionResponse, + deployContract = false, +) => { + if (transactionResponse.code !== "TRANSACTION_RECEIVED") { + throw new Error( + `Transaction not received: ${transactionResponse.transaction_hash}`, + ) + } + if (deployContract && !transactionResponse.address) { + throw new Error( + `Contract not deployed: ${transactionResponse.transaction_hash}`, + ) + } +} From b7aae95728f76b3f3f4fec2d20bb88a38377ac82 Mon Sep 17 00:00:00 2001 From: Janek Rahrt Date: Wed, 9 Mar 2022 16:29:52 +0100 Subject: [PATCH 64/86] feat(background): add local nonce copy back This allows transaction queuing --- packages/extension/src/background/index.ts | 17 ++++++++++++++--- .../src/background/keys/keyDerivation.ts | 13 +++++++------ 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index ac821e799..119218531 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -1,6 +1,6 @@ import ProxyCompiledContract from "!!raw-loader!../contracts/Proxy.txt" import { compactDecrypt } from "jose" -import { encode } from "starknet" +import { encode, number } from "starknet" import { ActionItem } from "../shared/actionQueue" import { messageStream } from "../shared/messages" @@ -19,7 +19,7 @@ import { import { downloadFile } from "./download" import { getKeyPair } from "./keys/communication" import { exportLegacyBackup, hasLegacy } from "./legacy" -import { resetStoredNonce } from "./nonce" +import { getNonce, increaseStoredNonce, resetStoredNonce } from "./nonce" import { addToAlreadyShown, hasShownNotification, @@ -230,10 +230,17 @@ import { Wallet, WalletStorageProps } from "./wallet" throw Error("no accounts") } + // if nonce doesnt get provided by the UI, we can use the stored nonce to allow transaction queueing + const nonceWasProvidedByUI = + transactionsDetail?.nonce !== undefined // nonce can be a number of 0 therefore we need to check for undefined + const nonce = nonceWasProvidedByUI + ? number.toHex(number.toBN(transactionsDetail?.nonce)) + : await getNonce(starknetAccount) + const transaction = await starknetAccount.execute( transactions, abis, - transactionsDetail, + { ...transactionsDetail, nonce }, ) transactionTracker.trackTransaction( @@ -241,6 +248,10 @@ import { Wallet, WalletStorageProps } from "./wallet" selectedAccount, ) + if (!nonceWasProvidedByUI) { + increaseStoredNonce(selectedAccount.address) + } + return sendToTabAndUi({ type: "TRANSACTION_SUBMITTED", data: { diff --git a/packages/extension/src/background/keys/keyDerivation.ts b/packages/extension/src/background/keys/keyDerivation.ts index 92fc6e46e..cbd6c9cfa 100644 --- a/packages/extension/src/background/keys/keyDerivation.ts +++ b/packages/extension/src/background/keys/keyDerivation.ts @@ -1,5 +1,5 @@ import { BigNumber, BigNumberish, utils } from "ethers" -import { ec, number } from "starknet" +import { KeyPair, ec, number } from "starknet" // from https://github.com/ethereum/EIPs/blob/master/EIPS/eip-2645.md // m / purpose' / layer' / application' / eth_address_1' / eth_address_2' / index @@ -11,7 +11,7 @@ const BASE_PATH = "m/2645'/1195502025'/1148870696'/0'/0'" export function getStarkPair( indexOrPath: number | string, secret: BigNumberish, -) { +): KeyPair { const masterNode = utils.HDNode.fromSeed(BigNumber.from(secret).toHexString()) const path = @@ -22,11 +22,11 @@ export function getStarkPair( return starkPair } -export function getPathForIndex(index: number) { +export function getPathForIndex(index: number): string { return `${BASE_PATH}/${index}` } -export function getNextPathIndex(paths: string[]) { +export function getNextPathIndex(paths: string[]): number { return ( paths.reduce((prev, path) => { if (!path.startsWith(BASE_PATH)) { @@ -42,7 +42,8 @@ export function getNextPathIndex(paths: string[]) { ) } -export function grindKey(keySeed: string) { +// inspired/copied from https://github.com/authereum/starkware-monorepo/blob/51c5df19e7f98399a2f7e63d564210d761d138d1/packages/starkware-crypto/src/keyDerivation.ts#L85 +export function grindKey(keySeed: string): string { const keyValueLimit = ec.ec.n if (!keyValueLimit) { return keySeed @@ -73,7 +74,7 @@ function hashKeyWithIndex(key: string, index: number) { return number.toBN(hash) } -export function pathHash(name: string) { +export function pathHash(name: string): number { return number .toBN(utils.sha256(utils.toUtf8Bytes(name))) .maskn(31) From bbae5024f239f8ce04bcb78c54d6073fc18e3ace Mon Sep 17 00:00:00 2001 From: Janek Rahrt Date: Wed, 9 Mar 2022 18:06:45 +0100 Subject: [PATCH 65/86] fix: token balance fetching --- packages/extension/src/ui/utils/tokens.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/extension/src/ui/utils/tokens.ts b/packages/extension/src/ui/utils/tokens.ts index 0fb2ae5dc..ad9bff45c 100644 --- a/packages/extension/src/ui/utils/tokens.ts +++ b/packages/extension/src/ui/utils/tokens.ts @@ -56,7 +56,7 @@ export const fetchTokenDetails = async ( ) .catch(() => ""), tokenContract - .call("balanceOf", { user: accountAddress }) + .call("balanceOf", { account: accountAddress }) .then((x) => BigNumber.from(uint256.uint256ToBN(x.balance as any).toString()), ) @@ -87,7 +87,7 @@ export const fetchTokenBalance = async ( const provider = getProvider(networkId) const tokenContract = new Contract(parsedErc20Abi as Abi, address, provider) const result = await tokenContract.call("balanceOf", { - user: accountAddress, + account: accountAddress, }) return BigNumber.from(uint256.uint256ToBN(result.balance as any).toString()) } From d6c4ea204a7f30c5cc251fcb30c44c3de36b7095 Mon Sep 17 00:00:00 2001 From: Axel Delamarre <1091900+delaaxe@users.noreply.github.com> Date: Tue, 8 Mar 2022 10:51:44 +0000 Subject: [PATCH 66/86] feat(extension): support legacy transactions --- packages/dapp/package.json | 2 +- packages/extension/package.json | 2 +- packages/extension/src/background/index.ts | 54 ++++- packages/extension/src/inpage/index.ts | 2 + packages/extension/src/inpage/legacy.ts | 186 ++++++++++++++++++ packages/extension/src/inpage/model.ts | 7 +- packages/extension/src/shared/MessageType.ts | 13 +- packages/extension/src/shared/actionQueue.ts | 12 +- .../extension/src/ui/screens/ActionScreen.tsx | 41 ++++ .../ui/screens/ApproveTransactionScreen.tsx | 6 +- packages/get-starknet/package.json | 4 +- packages/get-starknet/src/extension.model.ts | 7 +- yarn.lock | 8 +- 13 files changed, 328 insertions(+), 16 deletions(-) create mode 100644 packages/extension/src/inpage/legacy.ts diff --git a/packages/dapp/package.json b/packages/dapp/package.json index e1ccdc0db..29215f92c 100644 --- a/packages/dapp/package.json +++ b/packages/dapp/package.json @@ -15,7 +15,7 @@ "next": "12.1.0", "react": "17.0.2", "react-dom": "17.0.2", - "starknet": "next" + "starknet": "3.3.0" }, "devDependencies": { "@types/node": "17.0.21", diff --git a/packages/extension/package.json b/packages/extension/package.json index c9a54dd27..cda1ef5c1 100644 --- a/packages/extension/package.json +++ b/packages/extension/package.json @@ -54,7 +54,7 @@ "react-hook-form": "^7.19.4", "react-promise-suspense": "^0.3.3", "react-router-dom": "^6.0.1", - "starknet": "next", + "starknet": "3.3.0", "styled-components": "^5.3.3", "styled-normalize": "^8.0.7", "swr": "^1.1.0", diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index 3ab218a4d..e160ce573 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -1,7 +1,7 @@ import ArgentAccountCompiledContract from "!!raw-loader!../contracts/ArgentAccount.txt" import ProxyCompiledContract from "!!raw-loader!../contracts/Proxy.txt" import { compactDecrypt } from "jose" -import { encode, number } from "starknet" +import { InvokeFunctionTransaction, encode, number } from "starknet" import { ActionItem } from "../shared/actionQueue" import { messageStream } from "../shared/messages" @@ -153,6 +153,19 @@ import { Wallet, WalletStorageProps } from "./wallet" }) } + case "EXECUTE_TRANSACTION_LEGACY": { + const { meta } = await actionQueue.push({ + type: "TRANSACTION_LEGACY", + payload: msg.data, + }) + return sendToTabAndUi({ + type: "EXECUTE_TRANSACTION_LEGACY_RES", + data: { + actionHash: meta.hash, + }, + }) + } + case "GET_ACTIONS": { const actions = await actionQueue.getAll() return sendToTabAndUi({ @@ -272,6 +285,45 @@ import { Wallet, WalletStorageProps } from "./wallet" } } + case "TRANSACTION_LEGACY": { + try { + if (!wallet.isSessionOpen()) { + throw Error("you need an open session") + } + const selectedAccount = await wallet.getSelectedAccount() + const starknetAccount = await wallet.getSelectedStarknetAccount() + if (!selectedAccount) { + throw Error("no accounts") + } + + const invocation: InvokeFunctionTransaction = action.payload + const transaction = await starknetAccount.LEGACY_invokeFunction( + invocation.contract_address, + invocation.entry_point_selector, + invocation.calldata, + invocation.signature, + ) + + transactionTracker.trackTransaction( + transaction.transaction_hash, + selectedAccount, + ) + + return sendToTabAndUi({ + type: "TRANSACTION_SUBMITTED", + data: { + txHash: transaction.transaction_hash, + actionHash, + }, + }) + } catch (error: any) { + return sendToTabAndUi({ + type: "TRANSACTION_FAILED", + data: { actionHash, error: `${error}` }, + }) + } + } + case "SIGN": { const typedData = action.payload if (!wallet.isSessionOpen()) { diff --git a/packages/extension/src/inpage/index.ts b/packages/extension/src/inpage/index.ts index 14acd330a..03b416381 100644 --- a/packages/extension/src/inpage/index.ts +++ b/packages/extension/src/inpage/index.ts @@ -13,6 +13,7 @@ import { import { MessageType, WindowMessageType } from "../shared/MessageType" import { getProvider } from "../shared/networks" +import { LEGACY_WalletSigner } from "./legacy" import { EventHandler, StarknetWindowObject } from "./model" const VERSION = `${process.env.VERSION}` @@ -119,6 +120,7 @@ const starknetWindowObject: StarknetWindowObject = { const { address, network } = data.data starknet.provider = getProvider(network) starknet.account = new ArgentXAccount(address, starknet.provider) + starknet.signer = new LEGACY_WalletSigner(address, starknet.provider) starknet.selectedAddress = address starknet.isConnected = true resolve([address]) diff --git a/packages/extension/src/inpage/legacy.ts b/packages/extension/src/inpage/legacy.ts new file mode 100644 index 000000000..57d8427be --- /dev/null +++ b/packages/extension/src/inpage/legacy.ts @@ -0,0 +1,186 @@ +import { + Abi, + AddTransactionResponse, + Invocation, + InvocationsSignerDetails, + Provider, + Signature, + Transaction, + defaultProvider, + typedData, +} from "starknet" + +import { MessageType, WindowMessageType } from "../shared/MessageType" + +const extId = document + .getElementById("argent-x-extension") + ?.getAttribute("data-extension-id") + +function sendMessage(msg: MessageType): void { + return window.postMessage( + { ...msg, extensionId: extId }, + window.location.origin, + ) +} + +function waitForMsgOfType< + K extends MessageType["type"], + T extends { type: K } & MessageType, +>( + type: K, + timeout: number, + predicate: (x: T) => boolean = () => true, +): Promise { + return new Promise((resolve, reject) => { + const pid = setTimeout(() => reject(new Error("Timeout")), timeout) + const handler = (event: MessageEvent) => { + if (event.data.type === type && predicate(event.data as any)) { + clearTimeout(pid) + window.removeEventListener("message", handler) + return resolve( + ("data" in event.data ? event.data.data : undefined) as any, + ) + } + } + window.addEventListener("message", handler) + }) +} + +export class LEGACY_WalletSigner extends Provider { + public address: string + + constructor(address: string, provider?: Provider) { + super(provider || defaultProvider) + this.address = address + } + + public async addTransaction( + transaction: Transaction, + ): Promise { + console.warn( + "!!! THIS METHOD (window.starknet.signer.addTransaction) IS DEPRECATED AND WILL BE REMOVED IN THE NEXT RELEASE !!!\nUse the window.starknet.account API instead.", + ) + if (transaction.type === "DEPLOY") { + throw Error("Deploy transactions are not supported.") + } + + if (transaction.signature?.length) { + throw Error( + "Adding signatures to a signer transaction currently isn't supported", + ) + } + + sendMessage({ type: "EXECUTE_TRANSACTION_LEGACY", data: transaction }) + const { actionHash } = await waitForMsgOfType( + "EXECUTE_TRANSACTION_LEGACY_RES", + 1000, + ) + sendMessage({ type: "OPEN_UI" }) + + const result = await Promise.race([ + waitForMsgOfType( + "TRANSACTION_SUBMITTED", + 11 * 60 * 1000, + (x) => x.data.actionHash === actionHash, + ), + waitForMsgOfType( + "TRANSACTION_FAILED", + 10 * 60 * 1000, + (x) => x.data.actionHash === actionHash, + ) + .then(() => "error" as const) + .catch(() => { + sendMessage({ type: "TRANSACTION_FAILED", data: { actionHash } }) + return "timeout" as const + }), + ]) + + if (result === "error") { + throw Error("User abort") + } + if (result === "timeout") { + throw Error("User action timed out") + } + + return { + code: "TRANSACTION_RECEIVED", + address: this.address, + transaction_hash: result.txHash, + } + } + + public async hashMessage(data: typedData.TypedData): Promise { + console.warn( + "!!! THIS METHOD (window.starknet.signer.hashMessage) IS DEPRECATED AND WILL BE REMOVED IN THE NEXT RELEASE !!!\nUse the window.starknet.account API instead.", + ) + return typedData.getMessageHash(data, this.address) + } + + public async signMessage(data: typedData.TypedData): Promise { + console.warn( + "!!! THIS METHOD (window.starknet.signer.signMessage) IS DEPRECATED AND WILL BE REMOVED IN THE NEXT RELEASE !!!\nUse the window.starknet.account API instead.", + ) + sendMessage({ type: "SIGN_MESSAGE", data }) + const { actionHash } = await waitForMsgOfType("SIGN_MESSAGE_RES", 1000) + sendMessage({ type: "OPEN_UI" }) + + const result = await Promise.race([ + waitForMsgOfType( + "SIGNATURE_SUCCESS", + 11 * 60 * 1000, + (x) => x.data.actionHash === actionHash, + ), + waitForMsgOfType( + "SIGNATURE_FAILURE", + 10 * 60 * 1000, + (x) => x.data.actionHash === actionHash, + ) + .then(() => "error" as const) + .catch(() => { + sendMessage({ type: "SIGNATURE_FAILURE", data: { actionHash } }) + return "timeout" as const + }), + ]) + + if (result === "error") { + throw Error("User abort") + } + if (result === "timeout") { + throw Error("User action timed out") + } + + return [result.r, result.s] + } + + getPubKey(): Promise { + throw new Error("Deprecated method not supported anymore.") + } + + signTransaction( + _transactions: Invocation[], + _transactionsDetail: InvocationsSignerDetails, + _abis?: Abi[], + ): Promise { + throw new Error("Deprecated method not supported anymore.") + } + + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + invokeFunction( + contractAddress: string, + entrypointSelector: string, + calldata?: string[], + signature?: Signature, + ): Promise { + console.warn( + "!!! THIS METHOD (window.starknet.signer.invokeFunction) IS DEPRECATED AND WILL BE REMOVED IN THE NEXT RELEASE !!!\nUSE THE window.starknet.account API INSTEAD.", + ) + return this.addTransaction({ + type: "INVOKE_FUNCTION", + contract_address: contractAddress, + entry_point_selector: entrypointSelector, + calldata, + signature, + }) + } +} diff --git a/packages/extension/src/inpage/model.ts b/packages/extension/src/inpage/model.ts index 122ab9c5e..19de7402b 100644 --- a/packages/extension/src/inpage/model.ts +++ b/packages/extension/src/inpage/model.ts @@ -1,4 +1,4 @@ -import type { AccountInterface, Provider } from "starknet" +import type { AccountInterface, Provider, SignerInterface } from "starknet" export type EventHandler = (accounts: string[]) => void @@ -26,6 +26,10 @@ interface IStarketWindowObject { isPreauthorized: () => Promise on: (event: "accountsChanged", handleEvent: EventHandler) => void off: (event: "accountsChanged", handleEvent: EventHandler) => void + /** + * @deprecated use `account` instead + */ + signer?: SignerInterface account?: AccountInterface provider: Provider selectedAddress?: string @@ -34,6 +38,7 @@ interface IStarketWindowObject { interface ConnectedStarketWindowObject extends IStarketWindowObject { isConnected: true + signer: SignerInterface account: AccountInterface selectedAddress: string } diff --git a/packages/extension/src/shared/MessageType.ts b/packages/extension/src/shared/MessageType.ts index 11c7a8117..265f23a0a 100644 --- a/packages/extension/src/shared/MessageType.ts +++ b/packages/extension/src/shared/MessageType.ts @@ -1,5 +1,11 @@ import type { JWK } from "jose" -import type { Abi, Call, InvocationsDetails, typedData } from "starknet" +import type { + Abi, + Call, + InvocationsDetails, + InvokeFunctionTransaction, + typedData, +} from "starknet" import { ExtActionItem } from "./actionQueue" import { AddToken } from "./token.model" @@ -41,6 +47,11 @@ export type MessageType = } } | { type: "EXECUTE_TRANSACTION_RES"; data: { actionHash: string } } + | { + type: "EXECUTE_TRANSACTION_LEGACY" + data: InvokeFunctionTransaction + } + | { type: "EXECUTE_TRANSACTION_LEGACY_RES"; data: { actionHash: string } } | { type: "TRANSACTION_UPDATES"; data: TransactionStatus[] } | { type: "TRANSACTION_SUCCESS"; data: TransactionStatus } | { type: "TRANSACTION_FAILURE"; data: TransactionStatus } diff --git a/packages/extension/src/shared/actionQueue.ts b/packages/extension/src/shared/actionQueue.ts index 3413c1b1d..cee727921 100644 --- a/packages/extension/src/shared/actionQueue.ts +++ b/packages/extension/src/shared/actionQueue.ts @@ -1,4 +1,10 @@ -import type { Abi, Call, InvocationsDetails, typedData } from "starknet" +import type { + Abi, + Call, + InvocationsDetails, + InvokeFunctionTransaction, + typedData, +} from "starknet" import type { ExtQueueItem } from "../background/actionQueue" @@ -17,6 +23,10 @@ export type ActionItem = transactionsDetail?: InvocationsDetails } } + | { + type: "TRANSACTION_LEGACY" + payload: InvokeFunctionTransaction + } | { type: "SIGN" payload: typedData.TypedData diff --git a/packages/extension/src/ui/screens/ActionScreen.tsx b/packages/extension/src/ui/screens/ActionScreen.tsx index 425e3801f..689e5d8f4 100644 --- a/packages/extension/src/ui/screens/ActionScreen.tsx +++ b/packages/extension/src/ui/screens/ActionScreen.tsx @@ -39,6 +39,7 @@ export const ActionScreen: FC = () => { }} /> ) + case "ADD_TOKEN": return ( { ({ data }) => data.actionHash === action.meta.hash, ), ]) + if ("error" in result) { + useAppState.setState({ + error: `Sending transaction failed: ${result.error}`, + isLoading: false, + }) + navigate(routes.error()) + } else { + if (isPopup && isLastAction) { + window.close() + } + useAppState.setState({ isLoading: false }) + } + }} + onReject={async () => { + await reject(action) + if (isPopup && isLastAction) { + window.close() + } + }} + selectedAccount={account} + /> + ) + case "TRANSACTION_LEGACY": + return ( + { + await approve(action) + useAppState.setState({ isLoading: true }) + const result = await Promise.race([ + waitForMessage( + "TRANSACTION_SUBMITTED", + ({ data }) => data.actionHash === action.meta.hash, + ), + waitForMessage( + "TRANSACTION_FAILED", + ({ data }) => data.actionHash === action.meta.hash, + ), + ]) if ("error" in result) { useAppState.setState({ error: `Sending transaction failed: ${result.error}`, @@ -99,6 +139,7 @@ export const ActionScreen: FC = () => { selectedAccount={account} /> ) + case "SIGN": return ( { - transactions: Call | Call[] - onSubmit: (transactions: Call | Call[]) => void + transactions: Call | Call[] | InvokeFunctionTransaction // TODO: remove InvokeFunctionTransaction when removing legacy transaction support + onSubmit: (transactions: Call | Call[] | InvokeFunctionTransaction) => void } const Pre = styled.pre` diff --git a/packages/get-starknet/package.json b/packages/get-starknet/package.json index 03f3a100e..16b4da813 100644 --- a/packages/get-starknet/package.json +++ b/packages/get-starknet/package.json @@ -25,7 +25,7 @@ "rollup-plugin-svelte": "^7.0.0", "rollup-plugin-svelte-svg": "^1.0.0-beta.5", "rollup-plugin-terser": "^7.0.0", - "starknet": "next", + "starknet": "3.3.0", "svelte": "^3.0.0", "svelte-check": "^2.0.0", "svelte-preprocess": "^4.0.0", @@ -33,6 +33,6 @@ "typescript": "^4.0.0" }, "peerDependencies": { - "starknet": "next" + "starknet": "3.3.0" } } diff --git a/packages/get-starknet/src/extension.model.ts b/packages/get-starknet/src/extension.model.ts index 122ab9c5e..19de7402b 100644 --- a/packages/get-starknet/src/extension.model.ts +++ b/packages/get-starknet/src/extension.model.ts @@ -1,4 +1,4 @@ -import type { AccountInterface, Provider } from "starknet" +import type { AccountInterface, Provider, SignerInterface } from "starknet" export type EventHandler = (accounts: string[]) => void @@ -26,6 +26,10 @@ interface IStarketWindowObject { isPreauthorized: () => Promise on: (event: "accountsChanged", handleEvent: EventHandler) => void off: (event: "accountsChanged", handleEvent: EventHandler) => void + /** + * @deprecated use `account` instead + */ + signer?: SignerInterface account?: AccountInterface provider: Provider selectedAddress?: string @@ -34,6 +38,7 @@ interface IStarketWindowObject { interface ConnectedStarketWindowObject extends IStarketWindowObject { isConnected: true + signer: SignerInterface account: AccountInterface selectedAddress: string } diff --git a/yarn.lock b/yarn.lock index 57c22b951..8fdabb87e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9431,10 +9431,10 @@ stack-utils@^2.0.3: dependencies: escape-string-regexp "^2.0.0" -starknet@next: - version "3.2.0" - resolved "https://registry.yarnpkg.com/starknet/-/starknet-3.2.0.tgz#fa6a3ad09bb720680a24ad45e1a6fa57ca6e22e5" - integrity sha512-U1nWdU0Ebka5WrZeHnh1E8Yr1Cj2UjSyJMmBW1F3qzNSBDjFM3hfKrpq6ra7NtoRJCfN68dLJ0dvWDrDdgEKQg== +starknet@3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/starknet/-/starknet-3.3.0.tgz#843927f863ba0257fca29d80aa71bdf76ffce51c" + integrity sha512-PsdrnD1dNIbMAePRU3yeDsY1d9m7CaZI6VYKxpgZX+tlb45Zntz4F98bMFo/vvoLCfuubkLmHbNZfc76bcgcRQ== dependencies: axios "^0.23.0" bn.js "^5.2.0" From e7898c56f24d4dbb4058ff580377be2688747436 Mon Sep 17 00:00:00 2001 From: Axel Delamarre <1091900+delaaxe@users.noreply.github.com> Date: Thu, 10 Mar 2022 07:48:08 +0000 Subject: [PATCH 67/86] feat(inpage): update signer state on connection events --- packages/extension/src/background/index.ts | 2 +- packages/extension/src/inpage/index.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index e160ce573..520ff74b9 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -487,7 +487,7 @@ import { Wallet, WalletStorageProps } from "./wallet" return sendToTabAndUi({ type: "DISCONNECT_ACCOUNT" }) } case "IS_INITIALIZED": { - const initialized = await wallet.isInitialized() + const initialized = wallet.isInitialized() const legacy = initialized ? false : await hasLegacy() return sendToTabAndUi({ type: "IS_INITIALIZED_RES", diff --git a/packages/extension/src/inpage/index.ts b/packages/extension/src/inpage/index.ts index 03b416381..36cc512df 100644 --- a/packages/extension/src/inpage/index.ts +++ b/packages/extension/src/inpage/index.ts @@ -167,6 +167,7 @@ window.addEventListener( starknet.selectedAddress = address starknet.provider = getProvider(network) starknet.account = new ArgentXAccount(address, starknet.provider) + starknet.signer = new LEGACY_WalletSigner(address, starknet.provider) for (const handleEvent of userEventHandlers) { handleEvent([address]) } @@ -177,6 +178,7 @@ window.addEventListener( } starknet.selectedAddress = undefined starknet.account = undefined + starknet.signer = undefined starknet.isConnected = false for (const handleEvent of userEventHandlers) { handleEvent([]) From 1b450b8d7ca68f2b90ff24b1a89e6a0e121f60bb Mon Sep 17 00:00:00 2001 From: Julien Niset Date: Thu, 10 Mar 2022 09:40:12 +0100 Subject: [PATCH 68/86] adding deployment address of ArgentAccount on mainnet --- packages/extension/src/shared/networks.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/extension/src/shared/networks.ts b/packages/extension/src/shared/networks.ts index 962b98a8e..2b488981d 100644 --- a/packages/extension/src/shared/networks.ts +++ b/packages/extension/src/shared/networks.ts @@ -15,6 +15,8 @@ export const networks: Network[] = [ id: "mainnet-alpha", name: "Ethereum Mainnet", explorerUrl: "https://voyager.online", + accountImplementation: + "0x05f28c66afd8a6799ddbe1933bce2c144625031aafa881fa38fa830790eff204", }, { id: "goerli-alpha", From 670a8f983af78b3de5f21d2f767744d2bba99304 Mon Sep 17 00:00:00 2001 From: Axel Delamarre <1091900+delaaxe@users.noreply.github.com> Date: Thu, 10 Mar 2022 11:34:25 +0000 Subject: [PATCH 69/86] feat(background): use `LEGACY_addTransaction` --- packages/extension/src/background/index.ts | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/packages/extension/src/background/index.ts b/packages/extension/src/background/index.ts index 520ff74b9..5c9ddeefe 100644 --- a/packages/extension/src/background/index.ts +++ b/packages/extension/src/background/index.ts @@ -1,7 +1,7 @@ import ArgentAccountCompiledContract from "!!raw-loader!../contracts/ArgentAccount.txt" import ProxyCompiledContract from "!!raw-loader!../contracts/Proxy.txt" import { compactDecrypt } from "jose" -import { InvokeFunctionTransaction, encode, number } from "starknet" +import { encode, number } from "starknet" import { ActionItem } from "../shared/actionQueue" import { messageStream } from "../shared/messages" @@ -252,7 +252,7 @@ import { Wallet, WalletStorageProps } from "./wallet" const nonceWasProvidedByUI = transactionsDetail?.nonce !== undefined // nonce can be a number of 0 therefore we need to check for undefined const nonce = nonceWasProvidedByUI - ? number.toHex(number.toBN(transactionsDetail?.nonce)) + ? number.toHex(number.toBN(transactionsDetail?.nonce || 0)) : await getNonce(starknetAccount) const transaction = await starknetAccount.execute( @@ -296,12 +296,8 @@ import { Wallet, WalletStorageProps } from "./wallet" throw Error("no accounts") } - const invocation: InvokeFunctionTransaction = action.payload - const transaction = await starknetAccount.LEGACY_invokeFunction( - invocation.contract_address, - invocation.entry_point_selector, - invocation.calldata, - invocation.signature, + const transaction = await starknetAccount.LEGACY_addTransaction( + action.payload, ) transactionTracker.trackTransaction( From d9a57a6014a6e781d0b9ad676d510b287d486976 Mon Sep 17 00:00:00 2001 From: Axel Delamarre <1091900+delaaxe@users.noreply.github.com> Date: Thu, 10 Mar 2022 12:04:55 +0000 Subject: [PATCH 70/86] chore: bump starknet.js version --- packages/dapp/package.json | 2 +- packages/extension/package.json | 2 +- packages/get-starknet/package.json | 4 ++-- yarn.lock | 8 ++++---- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/dapp/package.json b/packages/dapp/package.json index 29215f92c..e9b75dd79 100644 --- a/packages/dapp/package.json +++ b/packages/dapp/package.json @@ -15,7 +15,7 @@ "next": "12.1.0", "react": "17.0.2", "react-dom": "17.0.2", - "starknet": "3.3.0" + "starknet": "3.4.0" }, "devDependencies": { "@types/node": "17.0.21", diff --git a/packages/extension/package.json b/packages/extension/package.json index cda1ef5c1..5b1c23d97 100644 --- a/packages/extension/package.json +++ b/packages/extension/package.json @@ -54,7 +54,7 @@ "react-hook-form": "^7.19.4", "react-promise-suspense": "^0.3.3", "react-router-dom": "^6.0.1", - "starknet": "3.3.0", + "starknet": "3.4.0", "styled-components": "^5.3.3", "styled-normalize": "^8.0.7", "swr": "^1.1.0", diff --git a/packages/get-starknet/package.json b/packages/get-starknet/package.json index 16b4da813..bb093a5b3 100644 --- a/packages/get-starknet/package.json +++ b/packages/get-starknet/package.json @@ -25,7 +25,7 @@ "rollup-plugin-svelte": "^7.0.0", "rollup-plugin-svelte-svg": "^1.0.0-beta.5", "rollup-plugin-terser": "^7.0.0", - "starknet": "3.3.0", + "starknet": "3.4.0", "svelte": "^3.0.0", "svelte-check": "^2.0.0", "svelte-preprocess": "^4.0.0", @@ -33,6 +33,6 @@ "typescript": "^4.0.0" }, "peerDependencies": { - "starknet": "3.3.0" + "starknet": "3.4.0" } } diff --git a/yarn.lock b/yarn.lock index 8fdabb87e..4749c8fb6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9431,10 +9431,10 @@ stack-utils@^2.0.3: dependencies: escape-string-regexp "^2.0.0" -starknet@3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/starknet/-/starknet-3.3.0.tgz#843927f863ba0257fca29d80aa71bdf76ffce51c" - integrity sha512-PsdrnD1dNIbMAePRU3yeDsY1d9m7CaZI6VYKxpgZX+tlb45Zntz4F98bMFo/vvoLCfuubkLmHbNZfc76bcgcRQ== +starknet@3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/starknet/-/starknet-3.4.0.tgz#847c409d36338da9439b66ae6808ac5381ead217" + integrity sha512-M/BpD5DrZd6tIY7K6Cd2JTaGUMdqIhlMCjiol8MGCYQqEypgEruacjYEmGfXGqCPD0vGTjypLk85enzLzGg2qA== dependencies: axios "^0.23.0" bn.js "^5.2.0" From 2a77c0b0651add53a4a2075777ae31d5d0bdf8ef Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 10 Mar 2022 13:12:42 +0100 Subject: [PATCH 71/86] chore(deps-dev): bump @types/react in /packages/dapp (#385) Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 17.0.39 to 17.0.40. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/dapp/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/dapp/package.json b/packages/dapp/package.json index e9b75dd79..43ab0440e 100644 --- a/packages/dapp/package.json +++ b/packages/dapp/package.json @@ -19,7 +19,7 @@ }, "devDependencies": { "@types/node": "17.0.21", - "@types/react": "17.0.39", + "@types/react": "17.0.40", "@types/react-dom": "^17.0.11", "eslint": "8", "eslint-config-next": "12.1.0", From 6255576ddfda3ce2e9651c4319fef83b660a7faa Mon Sep 17 00:00:00 2001 From: Axel Delamarre <1091900+delaaxe@users.noreply.github.com> Date: Thu, 10 Mar 2022 13:17:00 +0000 Subject: [PATCH 72/86] feat(ui): add edit icon next to account title --- .../src/ui/components/Account/AccountName.tsx | 72 +++++++++++++++++++ .../components/Account/AccountSubheader.tsx | 16 +---- .../src/ui/components/EditableHeader.tsx | 27 ------- .../src/ui/states/accountMetadata.ts | 4 +- 4 files changed, 77 insertions(+), 42 deletions(-) create mode 100644 packages/extension/src/ui/components/Account/AccountName.tsx delete mode 100644 packages/extension/src/ui/components/EditableHeader.tsx diff --git a/packages/extension/src/ui/components/Account/AccountName.tsx b/packages/extension/src/ui/components/Account/AccountName.tsx new file mode 100644 index 000000000..c89fc8436 --- /dev/null +++ b/packages/extension/src/ui/components/Account/AccountName.tsx @@ -0,0 +1,72 @@ +import EditIcon from "@mui/icons-material/Edit" +import { FC, InputHTMLAttributes, useState } from "react" +import styled from "styled-components" + +import { defaultAccountName } from "../../states/accountMetadata" +import { InputText } from "../InputText" + +const Form = styled.form` + display: flex; + align-items: center; + + svg { + visibility: hidden; + } + + &:hover svg { + visibility: visible; + } +` + +const InputHeader = styled(InputText)` + font-weight: 600; + font-size: 32px; + line-height: 38.4px; + margin: 0; + + input { + text-align: center; + font-weight: 600; + font-size: 32px; + line-height: 38.4px; + + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; + + // allocates space for when bottom-border is shown on focus + border-bottom: 1px solid transparent; + outline: 0; + + cursor: pointer; + &:focus { + cursor: text; + } + } +` + +export const AccountName: FC> = ({ + value, + ...props +}) => { + const [isFocused, setIsFocused] = useState(false) + if (isFocused && value === defaultAccountName) { + value = "" + } + const handleSubmit = (e: React.FormEvent) => { + e.preventDefault() + ;(document.activeElement as any)?.blur() + } + return ( +
+ setIsFocused(true)} + onBlur={() => setIsFocused(false)} + {...props} + /> + + + ) +} diff --git a/packages/extension/src/ui/components/Account/AccountSubheader.tsx b/packages/extension/src/ui/components/Account/AccountSubheader.tsx index c3fe8e850..869296996 100644 --- a/packages/extension/src/ui/components/Account/AccountSubheader.tsx +++ b/packages/extension/src/ui/components/Account/AccountSubheader.tsx @@ -7,7 +7,7 @@ import { getNetwork } from "../../../shared/networks" import { AccountStatus } from "../../utils/accounts" import { formatAddress, truncateAddress } from "../../utils/addresses" import { CopyTooltip } from "../CopyTooltip" -import { EditableHeader } from "../EditableHeader" +import { AccountName } from "./AccountName" import { AccountAddressIconsWrapper, AccountAddressLink, @@ -23,13 +23,6 @@ const AccountStatusText = styled.p<{ color?: string }>` color: ${({ color }) => color}; ` -const AccountName = styled(EditableHeader)` - font-weight: 600; - font-size: 32px; - line-height: 38.4px; - margin: 0; -` - interface AccountSubheaderProps { networkId: string status: AccountStatus @@ -47,12 +40,7 @@ export const AccountSubHeader: FC = ({ }) => ( <>
-
+
) => diff --git a/packages/extension/src/ui/components/EditableHeader.tsx b/packages/extension/src/ui/components/EditableHeader.tsx deleted file mode 100644 index 3767c629c..000000000 --- a/packages/extension/src/ui/components/EditableHeader.tsx +++ /dev/null @@ -1,27 +0,0 @@ -import styled from "styled-components" - -import { Container, InputText } from "./InputText" - -const InputHeader = styled(InputText)` - input { - text-align: center; - font-weight: 600; - font-size: 32px; - line-height: 38.4px; - - // allocates space for when bottom-border is shown on focus - border-bottom: 1px solid transparent; - outline: 0; - - &:hover { - outline: 0; - } - } -` -export const EditableHeader = styled(({ className, style, ...props }) => { - return ( - - - - ) -})`` diff --git a/packages/extension/src/ui/states/accountMetadata.ts b/packages/extension/src/ui/states/accountMetadata.ts index a005040af..2c4fe707d 100644 --- a/packages/extension/src/ui/states/accountMetadata.ts +++ b/packages/extension/src/ui/states/accountMetadata.ts @@ -3,6 +3,8 @@ import { persist } from "zustand/middleware" import type { Account } from "../Account" +export const defaultAccountName = "Unnamed account" + // account information that's not saved in the backup file, but persisted in the extension's localstorage interface State { accountNames: Record> @@ -31,7 +33,7 @@ export const useAccountMetadata = create( export const getAccountName = ( { address, networkId }: Account, accountNames: Record>, -): string => accountNames[networkId]?.[address] || "Unnamed account" +): string => accountNames[networkId]?.[address] || defaultAccountName export const setDefaultAccountNames = (accounts: Record) => { const { accountNames } = useAccountMetadata.getState() From dc48d8ef70b0b0e0f92584024a62680c9894910c Mon Sep 17 00:00:00 2001 From: Axel Delamarre <1091900+delaaxe@users.noreply.github.com> Date: Thu, 10 Mar 2022 13:39:42 +0000 Subject: [PATCH 73/86] feat(ui): improve backup download flow --- packages/extension/src/ui/App.tsx | 4 +- .../src/ui/screens/BackupDownloadScreen.tsx | 45 ++----------------- .../extension/src/ui/states/backupDownload.ts | 2 - 3 files changed, 5 insertions(+), 46 deletions(-) diff --git a/packages/extension/src/ui/App.tsx b/packages/extension/src/ui/App.tsx index ab69d6a10..00daa68de 100644 --- a/packages/extension/src/ui/App.tsx +++ b/packages/extension/src/ui/App.tsx @@ -82,12 +82,12 @@ const Screen: FC = () => { const { isLoading } = useAppState() const { actions } = useActions() - const { isBackupDownloadRequired, dontRemindUser } = useBackupDownload() + const { isBackupDownloadRequired } = useBackupDownload() if (isLoading) { return } - if (isBackupDownloadRequired && !dontRemindUser) { + if (isBackupDownloadRequired) { return } diff --git a/packages/extension/src/ui/screens/BackupDownloadScreen.tsx b/packages/extension/src/ui/screens/BackupDownloadScreen.tsx index 3129f45a6..a3e8dd240 100644 --- a/packages/extension/src/ui/screens/BackupDownloadScreen.tsx +++ b/packages/extension/src/ui/screens/BackupDownloadScreen.tsx @@ -1,4 +1,4 @@ -import { FC, FormEventHandler, useState } from "react" +import { FC, FormEventHandler } from "react" import { useLocation, useNavigate } from "react-router-dom" import styled from "styled-components" @@ -11,10 +11,6 @@ import { routes } from "../routes" import { useBackupDownload } from "../states/backupDownload" const DownloadButton = styled(Button)` - margin-top: 20px; -` - -const ContinueButton = styled(Button)` margin-top: auto; ` @@ -25,41 +21,16 @@ const Container = styled.div` height: calc(100vh - 68px); ` -const Notice = styled.div` - padding-top: 20px; - display: flex; - margin: 0 auto; - font-size: 12px; - cursor: pointer; - - &:hover { - text-decoration: underline; - } -` - export const BackupDownloadScreen: FC = () => { const navigate = useNavigate() const { search } = useLocation() - const [isDownloaded, setIsDownloaded] = useState(false) const isSettings = new URLSearchParams(search).has("settings") const handleDownloadClick: FormEventHandler = async () => { sendMessage({ type: "DOWNLOAD_BACKUP_FILE" }) - setIsDownloaded(true) - } - - const handleContinueClick: FormEventHandler = async () => { useBackupDownload.setState({ isBackupDownloadRequired: false }) - navigate(routes.account()) - } - - const handleDontShowClick: FormEventHandler = async () => { - useBackupDownload.setState({ - isBackupDownloadRequired: false, - dontRemindUser: true, - }) - navigate(routes.account()) + navigate(isSettings ? routes.settings() : routes.account()) } return ( @@ -72,23 +43,13 @@ export const BackupDownloadScreen: FC = () => {

Download your backup

This is encrypted by your password and required if you need to restore - your account. + your accounts.

Each time you add a new account, you'll be prompted to download an updated backup file for all your accounts.

Download - {isDownloaded && !isSettings && ( - <> - - Continue - - - Don't show this message again - - - )} ) diff --git a/packages/extension/src/ui/states/backupDownload.ts b/packages/extension/src/ui/states/backupDownload.ts index a72cdc6f7..91cd952ac 100644 --- a/packages/extension/src/ui/states/backupDownload.ts +++ b/packages/extension/src/ui/states/backupDownload.ts @@ -3,14 +3,12 @@ import { persist } from "zustand/middleware" export interface BackupState { isBackupDownloadRequired: boolean - dontRemindUser: boolean } export const useBackupDownload = create( persist( (_set, _get) => ({ isBackupDownloadRequired: false, - dontRemindUser: false, }), { name: "backupDownload" }, ), From 6a42e8075406017c157c649c88d26de165bdd7d3 Mon Sep 17 00:00:00 2001 From: Axel Delamarre <1091900+delaaxe@users.noreply.github.com> Date: Thu, 10 Mar 2022 14:39:42 +0000 Subject: [PATCH 74/86] feat(ui): make token list prettier --- .../src/ui/components/Account/AccountSubheader.tsx | 2 +- packages/extension/src/ui/components/Account/TokenList.tsx | 2 -- packages/extension/src/ui/components/Token.tsx | 7 +++---- packages/extension/src/ui/screens/AccountScreen.tsx | 3 +-- packages/extension/src/ui/screens/BackupRecoveryScreen.tsx | 2 +- packages/extension/src/ui/screens/LockScreen.tsx | 2 +- 6 files changed, 7 insertions(+), 11 deletions(-) diff --git a/packages/extension/src/ui/components/Account/AccountSubheader.tsx b/packages/extension/src/ui/components/Account/AccountSubheader.tsx index 869296996..9df2dedb0 100644 --- a/packages/extension/src/ui/components/Account/AccountSubheader.tsx +++ b/packages/extension/src/ui/components/Account/AccountSubheader.tsx @@ -54,7 +54,7 @@ export const AccountSubHeader: FC = ({ )}
- + = ({ mintableAddress={testDappToken(switcherNetworkId)?.address} /> )} - Coins {tokenDetails.map((token) => ( isLoading && css` - animation: ${PulseAnimation} 1.5s ease-in-out infinite; + animation: ${PulseAnimation} 1s ease-in-out infinite; `} ` diff --git a/packages/extension/src/ui/screens/AccountScreen.tsx b/packages/extension/src/ui/screens/AccountScreen.tsx index 3ec77e381..2a5981976 100644 --- a/packages/extension/src/ui/screens/AccountScreen.tsx +++ b/packages/extension/src/ui/screens/AccountScreen.tsx @@ -35,8 +35,7 @@ import { connectAccount, getAccountImageUrl } from "../utils/accounts" const AccountContent = styled.div` display: flex; flex-direction: column; - gap: 16px; - padding: 16px; + padding-top: 16px; ` export const AccountScreen: FC = () => { diff --git a/packages/extension/src/ui/screens/BackupRecoveryScreen.tsx b/packages/extension/src/ui/screens/BackupRecoveryScreen.tsx index 8e1825755..f05a87572 100644 --- a/packages/extension/src/ui/screens/BackupRecoveryScreen.tsx +++ b/packages/extension/src/ui/screens/BackupRecoveryScreen.tsx @@ -91,7 +91,7 @@ export const BackupRecoveryScreen: FC = () => { diff --git a/packages/extension/src/ui/screens/LockScreen.tsx b/packages/extension/src/ui/screens/LockScreen.tsx index 26a0ac717..b52c3a4aa 100644 --- a/packages/extension/src/ui/screens/LockScreen.tsx +++ b/packages/extension/src/ui/screens/LockScreen.tsx @@ -111,7 +111,7 @@ export const LockScreen: FC = () => { {errors.password.message} )} - reset or import backup + reset or restore backup From 8cdc261725941dffbebf80eb891a30ca1b81fa77 Mon Sep 17 00:00:00 2001 From: Axel Delamarre <1091900+delaaxe@users.noreply.github.com> Date: Thu, 10 Mar 2022 15:14:52 +0000 Subject: [PATCH 75/86] feaft(ui): make pending transactions prettier --- .../extension/src/ui/components/Account/SectionHeader.tsx | 2 +- .../extension/src/ui/components/Account/TokenList.tsx | 4 ++++ .../extension/src/ui/components/Account/Transactions.tsx | 8 +++----- packages/extension/src/ui/screens/AccountScreen.tsx | 1 + 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/packages/extension/src/ui/components/Account/SectionHeader.tsx b/packages/extension/src/ui/components/Account/SectionHeader.tsx index eb986090c..b5a377cbe 100644 --- a/packages/extension/src/ui/components/Account/SectionHeader.tsx +++ b/packages/extension/src/ui/components/Account/SectionHeader.tsx @@ -4,5 +4,5 @@ export const SectionHeader = styled.h3` font-weight: 600; font-size: 15px; line-height: 20px; - margin: 0; + margin: 10px 16px; ` diff --git a/packages/extension/src/ui/components/Account/TokenList.tsx b/packages/extension/src/ui/components/Account/TokenList.tsx index e9baf6d32..f73fb3a30 100644 --- a/packages/extension/src/ui/components/Account/TokenList.tsx +++ b/packages/extension/src/ui/components/Account/TokenList.tsx @@ -7,13 +7,16 @@ import { useTokensWithBalance } from "../../states/tokens" import { testDappToken } from "../../utils/tokens" import { TokenListItem } from "../Token" import { EmptyAccountAlert } from "./EmptyAccountAlert" +import { SectionHeader } from "./SectionHeader" interface TokenListProps { + showTitle: boolean accountAddress: string canShowEmptyAccountAlert?: boolean } export const TokenList: FC = ({ + showTitle, accountAddress, canShowEmptyAccountAlert = true, }) => { @@ -33,6 +36,7 @@ export const TokenList: FC = ({ mintableAddress={testDappToken(switcherNetworkId)?.address} /> )} + {showTitle && Assets} {tokenDetails.map((token) => ( = ({ account }) => { )} }> From 8418723d83d468d12752cb215706043d60319f67 Mon Sep 17 00:00:00 2001 From: Janek Rahrt Date: Thu, 10 Mar 2022 16:20:54 +0100 Subject: [PATCH 76/86] fix: token details fetch --- .../src/ui/screens/AddTokenScreen.tsx | 4 +-- packages/extension/src/ui/utils/tokens.ts | 28 ++++++------------- 2 files changed, 10 insertions(+), 22 deletions(-) diff --git a/packages/extension/src/ui/screens/AddTokenScreen.tsx b/packages/extension/src/ui/screens/AddTokenScreen.tsx index 578dd110f..0ffc46a77 100644 --- a/packages/extension/src/ui/screens/AddTokenScreen.tsx +++ b/packages/extension/src/ui/screens/AddTokenScreen.tsx @@ -95,7 +95,7 @@ export const AddTokenScreen: FC = ({ useEffect(() => { if (loading && selectedAccount) { - fetchTokenDetails(tokenAddress, selectedAccount, switcherNetworkId) + fetchTokenDetails(tokenAddress, switcherNetworkId) .then((details) => { setTokenDetails(details) }) @@ -132,7 +132,7 @@ export const AddTokenScreen: FC = ({ -

Add token

+

Add tokens

{ diff --git a/packages/extension/src/ui/utils/tokens.ts b/packages/extension/src/ui/utils/tokens.ts index ad9bff45c..1f02bde4a 100644 --- a/packages/extension/src/ui/utils/tokens.ts +++ b/packages/extension/src/ui/utils/tokens.ts @@ -1,11 +1,11 @@ import { BigNumber } from "@ethersproject/bignumber" import { ethers } from "ethers" -import { Abi, Contract, encode, shortString, uint256 } from "starknet" +import { Abi, Contract, number, shortString, uint256 } from "starknet" import parsedErc20Abi from "../../abi/ERC20.json" import defaultTokens from "../../assets/default-tokens.json" import { getProvider } from "../../shared/networks" -import { TokenDetailsWithBalance } from "../states/tokens" +import { TokenDetails, TokenDetailsWithBalance } from "../states/tokens" export const testDappToken = (networkId: string) => defaultTokens.find( @@ -39,33 +39,22 @@ export const toTokenView = ({ export const fetchTokenDetails = async ( address: string, - accountAddress: string, networkId: string, -): Promise => { +): Promise => { const provider = getProvider(networkId) const tokenContract = new Contract(parsedErc20Abi as Abi, address, provider) - const [decimals, name, balance, symbol] = await Promise.all([ + const [decimals, name, symbol] = await Promise.all([ tokenContract .call("decimals") - .then((x) => x.decimals as string) + .then((x) => number.toHex(x.decimals)) .catch(() => ""), tokenContract .call("name") - .then((x) => - shortString.decodeShortString(encode.addHexPrefix(x.name as string)), - ) + .then((x) => shortString.decodeShortString(number.toHex(x.name))) .catch(() => ""), - tokenContract - .call("balanceOf", { account: accountAddress }) - .then((x) => - BigNumber.from(uint256.uint256ToBN(x.balance as any).toString()), - ) - .catch(() => undefined), tokenContract .call("symbol") - .then((x) => - shortString.decodeShortString(encode.addHexPrefix(x.symbol as string)), - ) + .then((x) => shortString.decodeShortString(number.toHex(x.symbol))) .catch(() => ""), ]) const decimalsBigNumber = BigNumber.from(decimals || 0) @@ -73,7 +62,6 @@ export const fetchTokenDetails = async ( address, name, symbol, - balance, networkId, decimals: decimalsBigNumber.isZero() ? undefined : decimalsBigNumber, } @@ -89,5 +77,5 @@ export const fetchTokenBalance = async ( const result = await tokenContract.call("balanceOf", { account: accountAddress, }) - return BigNumber.from(uint256.uint256ToBN(result.balance as any).toString()) + return BigNumber.from(uint256.uint256ToBN(result.balance).toString()) } From d5d6d0cc9045faee6258bfc2430f10970604604c Mon Sep 17 00:00:00 2001 From: Janek Rahrt Date: Thu, 10 Mar 2022 22:10:36 +0100 Subject: [PATCH 77/86] fix: use new contract interface --- packages/extension/src/ui/utils/tokens.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/packages/extension/src/ui/utils/tokens.ts b/packages/extension/src/ui/utils/tokens.ts index 1f02bde4a..7a277dcbe 100644 --- a/packages/extension/src/ui/utils/tokens.ts +++ b/packages/extension/src/ui/utils/tokens.ts @@ -74,8 +74,6 @@ export const fetchTokenBalance = async ( ): Promise => { const provider = getProvider(networkId) const tokenContract = new Contract(parsedErc20Abi as Abi, address, provider) - const result = await tokenContract.call("balanceOf", { - account: accountAddress, - }) + const result = await tokenContract.balanceOf(accountAddress) return BigNumber.from(uint256.uint256ToBN(result.balance).toString()) } From cd8b0e92dbba47c6691dbe742e75ff9737e353b9 Mon Sep 17 00:00:00 2001 From: Janek Rahrt Date: Fri, 11 Mar 2022 08:28:22 +0100 Subject: [PATCH 78/86] chore: update starknet.js version --- packages/dapp/package.json | 2 +- packages/extension/package.json | 2 +- packages/get-starknet/package.json | 4 +- yarn.lock | 4916 +++++++++++++--------------- 4 files changed, 2359 insertions(+), 2565 deletions(-) diff --git a/packages/dapp/package.json b/packages/dapp/package.json index 43ab0440e..a6bcd618e 100644 --- a/packages/dapp/package.json +++ b/packages/dapp/package.json @@ -15,7 +15,7 @@ "next": "12.1.0", "react": "17.0.2", "react-dom": "17.0.2", - "starknet": "3.4.0" + "starknet": "^3.5.0" }, "devDependencies": { "@types/node": "17.0.21", diff --git a/packages/extension/package.json b/packages/extension/package.json index 5b1c23d97..51bdb4b8e 100644 --- a/packages/extension/package.json +++ b/packages/extension/package.json @@ -54,7 +54,7 @@ "react-hook-form": "^7.19.4", "react-promise-suspense": "^0.3.3", "react-router-dom": "^6.0.1", - "starknet": "3.4.0", + "starknet": "^3.5.0", "styled-components": "^5.3.3", "styled-normalize": "^8.0.7", "swr": "^1.1.0", diff --git a/packages/get-starknet/package.json b/packages/get-starknet/package.json index bb093a5b3..dc6eff7ff 100644 --- a/packages/get-starknet/package.json +++ b/packages/get-starknet/package.json @@ -25,7 +25,7 @@ "rollup-plugin-svelte": "^7.0.0", "rollup-plugin-svelte-svg": "^1.0.0-beta.5", "rollup-plugin-terser": "^7.0.0", - "starknet": "3.4.0", + "starknet": "^3.5.0", "svelte": "^3.0.0", "svelte-check": "^2.0.0", "svelte-preprocess": "^4.0.0", @@ -33,6 +33,6 @@ "typescript": "^4.0.0" }, "peerDependencies": { - "starknet": "3.4.0" + "starknet": "^3.5.0" } } diff --git a/yarn.lock b/yarn.lock index 4749c8fb6..60d6f71a4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4,34 +4,27 @@ "@ampproject/remapping@^2.1.0": version "2.1.2" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.1.2.tgz#4edca94973ded9630d20101cd8559cedb8d8bd34" + resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz#4edca94973ded9630d20101cd8559cedb8d8bd34" integrity sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg== dependencies: "@jridgewell/trace-mapping" "^0.3.0" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.0.tgz#0dfc80309beec8411e65e706461c408b0bb9b431" - integrity sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA== - dependencies: - "@babel/highlight" "^7.16.0" - -"@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7": version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.7.tgz#44416b6bd7624b998f5b1af5d470856c40138789" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz#44416b6bd7624b998f5b1af5d470856c40138789" integrity sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg== dependencies: "@babel/highlight" "^7.16.7" -"@babel/compat-data@^7.13.11", "@babel/compat-data@^7.16.0", "@babel/compat-data@^7.16.4": - version "7.16.4" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.16.4.tgz#081d6bbc336ec5c2435c6346b2ae1fb98b5ac68e" - integrity sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q== +"@babel/compat-data@^7.13.11", "@babel/compat-data@^7.16.4", "@babel/compat-data@^7.16.8", "@babel/compat-data@^7.17.0": + version "7.17.0" + resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.0.tgz#86850b8597ea6962089770952075dcaabb8dba34" + integrity sha512-392byTlpGWXMv4FbyWw3sAZ/FrW/DrwqLGXpy0mbyNe9Taqv1mg9yON5/o0cnr8XYCkFTZbC1eV+c+LAROgrng== -"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.2", "@babel/core@^7.8.0": - version "7.17.4" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.17.4.tgz#a22f1ae8999122873b3d18865e98c7a3936b8c8b" - integrity sha512-R9x5r4t4+hBqZTmioSnkrW+I6NmbojwjGT8p4G2Gw1thWbXIHGDnmGdLdFw0/7ljucdIrNRp7Npgb4CyBYzzJg== +"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.15.5", "@babel/core@^7.2.2", "@babel/core@^7.7.2", "@babel/core@^7.8.0": + version "7.17.5" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.17.5.tgz#6cd2e836058c28f06a4ca8ee7ed955bbf37c8225" + integrity sha512-/BBMw4EvjmyquN5O+t5eh0+YqB3XXJkYD2cjKpYtWOfFy4lQ4UozNSmxAcWT8r2XtZs0ewG+zrfsqeR15i1ajA== dependencies: "@ampproject/remapping" "^2.1.0" "@babel/code-frame" "^7.16.7" @@ -49,73 +42,33 @@ json5 "^2.1.2" semver "^6.3.0" -"@babel/core@^7.15.5", "@babel/core@^7.2.2": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.16.0.tgz#c4ff44046f5fe310525cc9eb4ef5147f0c5374d4" - integrity sha512-mYZEvshBRHGsIAiyH5PzCFTCfbWfoYbO/jcSdXQSUQu1/pW0xDZAUP7KEc32heqWTAfAHhV9j1vH8Sav7l+JNQ== - dependencies: - "@babel/code-frame" "^7.16.0" - "@babel/generator" "^7.16.0" - "@babel/helper-compilation-targets" "^7.16.0" - "@babel/helper-module-transforms" "^7.16.0" - "@babel/helpers" "^7.16.0" - "@babel/parser" "^7.16.0" - "@babel/template" "^7.16.0" - "@babel/traverse" "^7.16.0" - "@babel/types" "^7.16.0" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.1.2" - semver "^6.3.0" - source-map "^0.5.0" - -"@babel/generator@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.16.0.tgz#d40f3d1d5075e62d3500bccb67f3daa8a95265b2" - integrity sha512-RR8hUCfRQn9j9RPKEVXo9LiwoxLPYn6hNZlvUOR8tSnaxlD0p0+la00ZP9/SnRt6HchKr+X0fO2r8vrETiJGew== - dependencies: - "@babel/types" "^7.16.0" - jsesc "^2.5.1" - source-map "^0.5.0" - "@babel/generator@^7.17.3", "@babel/generator@^7.7.2": version "7.17.3" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.17.3.tgz#a2c30b0c4f89858cb87050c3ffdfd36bdf443200" + resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.17.3.tgz#a2c30b0c4f89858cb87050c3ffdfd36bdf443200" integrity sha512-+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg== dependencies: "@babel/types" "^7.17.0" jsesc "^2.5.1" source-map "^0.5.0" -"@babel/helper-annotate-as-pure@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz#9a1f0ebcda53d9a2d00108c4ceace6a5d5f1f08d" - integrity sha512-ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg== - dependencies: - "@babel/types" "^7.16.0" - -"@babel/helper-builder-binary-assignment-operator-visitor@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.0.tgz#f1a686b92da794020c26582eb852e9accd0d7882" - integrity sha512-9KuleLT0e77wFUku6TUkqZzCEymBdtuQQ27MhEKzf9UOOJu3cYj98kyaDAzxpC7lV6DGiZFuC8XqDsq8/Kl6aQ== +"@babel/helper-annotate-as-pure@^7.16.0", "@babel/helper-annotate-as-pure@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz#bb2339a7534a9c128e3102024c60760a3a7f3862" + integrity sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw== dependencies: - "@babel/helper-explode-assignable-expression" "^7.16.0" - "@babel/types" "^7.16.0" + "@babel/types" "^7.16.7" -"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.16.0", "@babel/helper-compilation-targets@^7.16.3": - version "7.16.3" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.3.tgz#5b480cd13f68363df6ec4dc8ac8e2da11363cbf0" - integrity sha512-vKsoSQAyBmxS35JUOOt+07cLc6Nk/2ljLIHwmq2/NM6hdioUaqEXq/S+nXvbvXbZkNDlWOymPanJGOc4CBjSJA== +"@babel/helper-builder-binary-assignment-operator-visitor@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz#38d138561ea207f0f69eb1626a418e4f7e6a580b" + integrity sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA== dependencies: - "@babel/compat-data" "^7.16.0" - "@babel/helper-validator-option" "^7.14.5" - browserslist "^4.17.5" - semver "^6.3.0" + "@babel/helper-explode-assignable-expression" "^7.16.7" + "@babel/types" "^7.16.7" -"@babel/helper-compilation-targets@^7.16.7": +"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.16.7": version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz#06e66c5f299601e6c7da350049315e83209d551b" + resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz#06e66c5f299601e6c7da350049315e83209d551b" integrity sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA== dependencies: "@babel/compat-data" "^7.16.4" @@ -123,30 +76,31 @@ browserslist "^4.17.5" semver "^6.3.0" -"@babel/helper-create-class-features-plugin@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.16.0.tgz#090d4d166b342a03a9fec37ef4fd5aeb9c7c6a4b" - integrity sha512-XLwWvqEaq19zFlF5PTgOod4bUA+XbkR4WLQBct1bkzmxJGB0ZEJaoKF4c8cgH9oBtCDuYJ8BP5NB9uFiEgO5QA== +"@babel/helper-create-class-features-plugin@^7.16.10", "@babel/helper-create-class-features-plugin@^7.16.7", "@babel/helper-create-class-features-plugin@^7.17.6": + version "7.17.6" + resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.17.6.tgz#3778c1ed09a7f3e65e6d6e0f6fbfcc53809d92c9" + integrity sha512-SogLLSxXm2OkBbSsHZMM4tUi8fUzjs63AT/d0YQIzr6GSd8Hxsbk2KYDX0k0DweAzGMj/YWeiCsorIdtdcW8Eg== dependencies: - "@babel/helper-annotate-as-pure" "^7.16.0" - "@babel/helper-function-name" "^7.16.0" - "@babel/helper-member-expression-to-functions" "^7.16.0" - "@babel/helper-optimise-call-expression" "^7.16.0" - "@babel/helper-replace-supers" "^7.16.0" - "@babel/helper-split-export-declaration" "^7.16.0" + "@babel/helper-annotate-as-pure" "^7.16.7" + "@babel/helper-environment-visitor" "^7.16.7" + "@babel/helper-function-name" "^7.16.7" + "@babel/helper-member-expression-to-functions" "^7.16.7" + "@babel/helper-optimise-call-expression" "^7.16.7" + "@babel/helper-replace-supers" "^7.16.7" + "@babel/helper-split-export-declaration" "^7.16.7" -"@babel/helper-create-regexp-features-plugin@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.16.0.tgz#06b2348ce37fccc4f5e18dcd8d75053f2a7c44ff" - integrity sha512-3DyG0zAFAZKcOp7aVr33ddwkxJ0Z0Jr5V99y3I690eYLpukJsJvAbzTy1ewoCqsML8SbIrjH14Jc/nSQ4TvNPA== +"@babel/helper-create-regexp-features-plugin@^7.16.7": + version "7.17.0" + resolved "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.0.tgz#1dcc7d40ba0c6b6b25618997c5dbfd310f186fe1" + integrity sha512-awO2So99wG6KnlE+TPs6rn83gCz5WlEePJDTnLEqbchMVrBeAujURVphRdigsk094VhvZehFoNOihSlcBjwsXA== dependencies: - "@babel/helper-annotate-as-pure" "^7.16.0" - regexpu-core "^4.7.1" + "@babel/helper-annotate-as-pure" "^7.16.7" + regexpu-core "^5.0.1" -"@babel/helper-define-polyfill-provider@^0.3.0": - version "0.3.0" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.0.tgz#c5b10cf4b324ff840140bb07e05b8564af2ae971" - integrity sha512-7hfT8lUljl/tM3h+izTX/pO3W3frz2ok6Pk+gzys8iJqDfZrZy2pXjRTZAvG2YmfHun1X4q8/UZRLatMfqc5Tg== +"@babel/helper-define-polyfill-provider@^0.3.1": + version "0.3.1" + resolved "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz#52411b445bdb2e676869e5a74960d2d3826d2665" + integrity sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA== dependencies: "@babel/helper-compilation-targets" "^7.13.0" "@babel/helper-module-imports" "^7.12.13" @@ -159,103 +113,59 @@ "@babel/helper-environment-visitor@^7.16.7": version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz#ff484094a839bde9d89cd63cba017d7aae80ecd7" + resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz#ff484094a839bde9d89cd63cba017d7aae80ecd7" integrity sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag== dependencies: "@babel/types" "^7.16.7" -"@babel/helper-explode-assignable-expression@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.0.tgz#753017337a15f46f9c09f674cff10cee9b9d7778" - integrity sha512-Hk2SLxC9ZbcOhLpg/yMznzJ11W++lg5GMbxt1ev6TXUiJB0N42KPC+7w8a+eWGuqDnUYuwStJoZHM7RgmIOaGQ== - dependencies: - "@babel/types" "^7.16.0" - -"@babel/helper-function-name@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.0.tgz#b7dd0797d00bbfee4f07e9c4ea5b0e30c8bb1481" - integrity sha512-BZh4mEk1xi2h4HFjWUXRQX5AEx4rvaZxHgax9gcjdLWdkjsY7MKt5p0otjsg5noXw+pB+clMCjw+aEVYADMjog== +"@babel/helper-explode-assignable-expression@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz#12a6d8522fdd834f194e868af6354e8650242b7a" + integrity sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ== dependencies: - "@babel/helper-get-function-arity" "^7.16.0" - "@babel/template" "^7.16.0" - "@babel/types" "^7.16.0" + "@babel/types" "^7.16.7" "@babel/helper-function-name@^7.16.7": version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz#f1ec51551fb1c8956bc8dd95f38523b6cf375f8f" + resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz#f1ec51551fb1c8956bc8dd95f38523b6cf375f8f" integrity sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA== dependencies: "@babel/helper-get-function-arity" "^7.16.7" "@babel/template" "^7.16.7" "@babel/types" "^7.16.7" -"@babel/helper-get-function-arity@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.0.tgz#0088c7486b29a9cb5d948b1a1de46db66e089cfa" - integrity sha512-ASCquNcywC1NkYh/z7Cgp3w31YW8aojjYIlNg4VeJiHkqyP4AzIvr4qx7pYDb4/s8YcsZWqqOSxgkvjUz1kpDQ== - dependencies: - "@babel/types" "^7.16.0" - "@babel/helper-get-function-arity@^7.16.7": version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz#ea08ac753117a669f1508ba06ebcc49156387419" + resolved "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz#ea08ac753117a669f1508ba06ebcc49156387419" integrity sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw== dependencies: "@babel/types" "^7.16.7" -"@babel/helper-hoist-variables@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.0.tgz#4c9023c2f1def7e28ff46fc1dbcd36a39beaa81a" - integrity sha512-1AZlpazjUR0EQZQv3sgRNfM9mEVWPK3M6vlalczA+EECcPz3XPh6VplbErL5UoMpChhSck5wAJHthlj1bYpcmg== - dependencies: - "@babel/types" "^7.16.0" - "@babel/helper-hoist-variables@^7.16.7": version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz#86bcb19a77a509c7b77d0e22323ef588fa58c246" + resolved "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz#86bcb19a77a509c7b77d0e22323ef588fa58c246" integrity sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg== dependencies: "@babel/types" "^7.16.7" -"@babel/helper-member-expression-to-functions@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.0.tgz#29287040efd197c77636ef75188e81da8bccd5a4" - integrity sha512-bsjlBFPuWT6IWhl28EdrQ+gTvSvj5tqVP5Xeftp07SEuz5pLnsXZuDkDD3Rfcxy0IsHmbZ+7B2/9SHzxO0T+sQ== - dependencies: - "@babel/types" "^7.16.0" - -"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.0.tgz#90538e60b672ecf1b448f5f4f5433d37e79a3ec3" - integrity sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg== +"@babel/helper-member-expression-to-functions@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.7.tgz#42b9ca4b2b200123c3b7e726b0ae5153924905b0" + integrity sha512-VtJ/65tYiU/6AbMTDwyoXGPKHgTsfRarivm+YbB5uAzKUyuPjgZSgAFeG87FCigc7KNHu2Pegh1XIT3lXjvz3Q== dependencies: - "@babel/types" "^7.16.0" + "@babel/types" "^7.16.7" -"@babel/helper-module-imports@^7.16.7": +"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.16.0", "@babel/helper-module-imports@^7.16.7": version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz#25612a8091a999704461c8a222d0efec5d091437" + resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz#25612a8091a999704461c8a222d0efec5d091437" integrity sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg== dependencies: "@babel/types" "^7.16.7" -"@babel/helper-module-transforms@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.16.0.tgz#1c82a8dd4cb34577502ebd2909699b194c3e9bb5" - integrity sha512-My4cr9ATcaBbmaEa8M0dZNA74cfI6gitvUAskgDtAFmAqyFKDSHQo5YstxPbN+lzHl2D9l/YOEFqb2mtUh4gfA== - dependencies: - "@babel/helper-module-imports" "^7.16.0" - "@babel/helper-replace-supers" "^7.16.0" - "@babel/helper-simple-access" "^7.16.0" - "@babel/helper-split-export-declaration" "^7.16.0" - "@babel/helper-validator-identifier" "^7.15.7" - "@babel/template" "^7.16.0" - "@babel/traverse" "^7.16.0" - "@babel/types" "^7.16.0" - "@babel/helper-module-transforms@^7.16.7": - version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.16.7.tgz#7665faeb721a01ca5327ddc6bba15a5cb34b6a41" - integrity sha512-gaqtLDxJEFCeQbYp9aLAefjhkKdjKcdh6DB7jniIGU3Pz52WAmP268zK0VgPz9hUNkMSYeH976K2/Y6yPadpng== + version "7.17.6" + resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.6.tgz#3c3b03cc6617e33d68ef5a27a67419ac5199ccd0" + integrity sha512-2ULmRdqoOMpdvkbT8jONrZML/XALfzxlb052bldftkicAUy8AxSCkD5trDPQcwHNmolcl7wP6ehNqMlyUw6AaA== dependencies: "@babel/helper-environment-visitor" "^7.16.7" "@babel/helper-module-imports" "^7.16.7" @@ -263,756 +173,700 @@ "@babel/helper-split-export-declaration" "^7.16.7" "@babel/helper-validator-identifier" "^7.16.7" "@babel/template" "^7.16.7" - "@babel/traverse" "^7.16.7" - "@babel/types" "^7.16.7" + "@babel/traverse" "^7.17.3" + "@babel/types" "^7.17.0" -"@babel/helper-optimise-call-expression@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.0.tgz#cecdb145d70c54096b1564f8e9f10cd7d193b338" - integrity sha512-SuI467Gi2V8fkofm2JPnZzB/SUuXoJA5zXe/xzyPP2M04686RzFKFHPK6HDVN6JvWBIEW8tt9hPR7fXdn2Lgpw== +"@babel/helper-optimise-call-expression@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz#a34e3560605abbd31a18546bd2aad3e6d9a174f2" + integrity sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w== dependencies: - "@babel/types" "^7.16.0" - -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.13.0", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz#5ac822ce97eec46741ab70a517971e443a70c5a9" - integrity sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ== + "@babel/types" "^7.16.7" -"@babel/helper-plugin-utils@^7.16.7": +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.13.0", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz#aa3a8ab4c3cceff8e65eb9e73d87dc4ff320b2f5" + resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz#aa3a8ab4c3cceff8e65eb9e73d87dc4ff320b2f5" integrity sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA== -"@babel/helper-remap-async-to-generator@^7.16.0", "@babel/helper-remap-async-to-generator@^7.16.4": - version "7.16.4" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.4.tgz#5d7902f61349ff6b963e07f06a389ce139fbfe6e" - integrity sha512-vGERmmhR+s7eH5Y/cp8PCVzj4XEjerq8jooMfxFdA5xVtAk9Sh4AQsrWgiErUEBjtGrBtOFKDUcWQFW4/dFwMA== +"@babel/helper-remap-async-to-generator@^7.16.8": + version "7.16.8" + resolved "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz#29ffaade68a367e2ed09c90901986918d25e57e3" + integrity sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw== dependencies: - "@babel/helper-annotate-as-pure" "^7.16.0" - "@babel/helper-wrap-function" "^7.16.0" - "@babel/types" "^7.16.0" + "@babel/helper-annotate-as-pure" "^7.16.7" + "@babel/helper-wrap-function" "^7.16.8" + "@babel/types" "^7.16.8" -"@babel/helper-replace-supers@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.16.0.tgz#73055e8d3cf9bcba8ddb55cad93fedc860f68f17" - integrity sha512-TQxuQfSCdoha7cpRNJvfaYxxxzmbxXw/+6cS7V02eeDYyhxderSoMVALvwupA54/pZcOTtVeJ0xccp1nGWladA== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.16.0" - "@babel/helper-optimise-call-expression" "^7.16.0" - "@babel/traverse" "^7.16.0" - "@babel/types" "^7.16.0" - -"@babel/helper-simple-access@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.16.0.tgz#21d6a27620e383e37534cf6c10bba019a6f90517" - integrity sha512-o1rjBT/gppAqKsYfUdfHq5Rk03lMQrkPHG1OWzHWpLgVXRH4HnMM9Et9CVdIqwkCQlobnGHEJMsgWP/jE1zUiw== +"@babel/helper-replace-supers@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.7.tgz#e9f5f5f32ac90429c1a4bdec0f231ef0c2838ab1" + integrity sha512-y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw== dependencies: - "@babel/types" "^7.16.0" + "@babel/helper-environment-visitor" "^7.16.7" + "@babel/helper-member-expression-to-functions" "^7.16.7" + "@babel/helper-optimise-call-expression" "^7.16.7" + "@babel/traverse" "^7.16.7" + "@babel/types" "^7.16.7" "@babel/helper-simple-access@^7.16.7": version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz#d656654b9ea08dbb9659b69d61063ccd343ff0f7" + resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz#d656654b9ea08dbb9659b69d61063ccd343ff0f7" integrity sha512-ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g== dependencies: "@babel/types" "^7.16.7" "@babel/helper-skip-transparent-expression-wrappers@^7.16.0": version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz#0ee3388070147c3ae051e487eca3ebb0e2e8bb09" + resolved "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz#0ee3388070147c3ae051e487eca3ebb0e2e8bb09" integrity sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw== dependencies: "@babel/types" "^7.16.0" -"@babel/helper-split-export-declaration@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.0.tgz#29672f43663e936df370aaeb22beddb3baec7438" - integrity sha512-0YMMRpuDFNGTHNRiiqJX19GjNXA4H0E8jZ2ibccfSxaCogbm3am5WN/2nQNj0YnQwGWM1J06GOcQ2qnh3+0paw== - dependencies: - "@babel/types" "^7.16.0" - "@babel/helper-split-export-declaration@^7.16.7": version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz#0b648c0c42da9d3920d85ad585f2778620b8726b" + resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz#0b648c0c42da9d3920d85ad585f2778620b8726b" integrity sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw== dependencies: "@babel/types" "^7.16.7" -"@babel/helper-validator-identifier@^7.15.7": - version "7.15.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389" - integrity sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w== - "@babel/helper-validator-identifier@^7.16.7": version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz#e8c602438c4a8195751243da9031d1607d247cad" + resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz#e8c602438c4a8195751243da9031d1607d247cad" integrity sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw== -"@babel/helper-validator-option@^7.14.5": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz#6e72a1fff18d5dfcb878e1e62f1a021c4b72d5a3" - integrity sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow== - "@babel/helper-validator-option@^7.16.7": version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz#b203ce62ce5fe153899b617c08957de860de4d23" + resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz#b203ce62ce5fe153899b617c08957de860de4d23" integrity sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ== -"@babel/helper-wrap-function@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.16.0.tgz#b3cf318afce774dfe75b86767cd6d68f3482e57c" - integrity sha512-VVMGzYY3vkWgCJML+qVLvGIam902mJW0FvT7Avj1zEe0Gn7D93aWdLblYARTxEw+6DhZmtzhBM2zv0ekE5zg1g== - dependencies: - "@babel/helper-function-name" "^7.16.0" - "@babel/template" "^7.16.0" - "@babel/traverse" "^7.16.0" - "@babel/types" "^7.16.0" - -"@babel/helpers@^7.16.0": - version "7.16.3" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.16.3.tgz#27fc64f40b996e7074dc73128c3e5c3e7f55c43c" - integrity sha512-Xn8IhDlBPhvYTvgewPKawhADichOsbkZuzN7qz2BusOM0brChsyXMDJvldWaYMMUNiCQdQzNEioXTp3sC8Nt8w== +"@babel/helper-wrap-function@^7.16.8": + version "7.16.8" + resolved "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz#58afda087c4cd235de92f7ceedebca2c41274200" + integrity sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw== dependencies: - "@babel/template" "^7.16.0" - "@babel/traverse" "^7.16.3" - "@babel/types" "^7.16.0" + "@babel/helper-function-name" "^7.16.7" + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.16.8" + "@babel/types" "^7.16.8" "@babel/helpers@^7.17.2": version "7.17.2" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.17.2.tgz#23f0a0746c8e287773ccd27c14be428891f63417" + resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.2.tgz#23f0a0746c8e287773ccd27c14be428891f63417" integrity sha512-0Qu7RLR1dILozr/6M0xgj+DFPmi6Bnulgm9M8BVa9ZCWxDqlSnqt3cf8IDPB5m45sVXUZ0kuQAgUrdSFFH79fQ== dependencies: "@babel/template" "^7.16.7" "@babel/traverse" "^7.17.0" "@babel/types" "^7.17.0" -"@babel/highlight@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.0.tgz#6ceb32b2ca4b8f5f361fb7fd821e3fddf4a1725a" - integrity sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g== - dependencies: - "@babel/helper-validator-identifier" "^7.15.7" - chalk "^2.0.0" - js-tokens "^4.0.0" - "@babel/highlight@^7.16.7": version "7.16.10" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88" + resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88" integrity sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw== dependencies: "@babel/helper-validator-identifier" "^7.16.7" chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.0.0-beta.54", "@babel/parser@^7.16.0", "@babel/parser@^7.16.3": - version "7.16.4" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.16.4.tgz#d5f92f57cf2c74ffe9b37981c0e72fee7311372e" - integrity sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng== - -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.16.7", "@babel/parser@^7.17.3": +"@babel/parser@^7.0.0-beta.54", "@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.16.7", "@babel/parser@^7.17.3": version "7.17.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.17.3.tgz#b07702b982990bf6fdc1da5049a23fece4c5c3d0" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz#b07702b982990bf6fdc1da5049a23fece4c5c3d0" integrity sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA== -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.2": - version "7.16.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.2.tgz#2977fca9b212db153c195674e57cfab807733183" - integrity sha512-h37CvpLSf8gb2lIJ2CgC3t+EjFbi0t8qS7LCS1xcJIlEXE4czlofwaW7W1HA8zpgOCzI9C1nmoqNR1zWkk0pQg== +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7.tgz#4eda6d6c2a0aa79c70fa7b6da67763dfe2141050" + integrity sha512-anv/DObl7waiGEnC24O9zqL0pSuI9hljihqiDuFHC8d7/bjr/4RLGPWuc8rYOff/QPzbEPSkzG8wGG9aDuhHRg== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.0.tgz#358972eaab006f5eb0826183b0c93cbcaf13e1e2" - integrity sha512-4tcFwwicpWTrpl9qjf7UsoosaArgImF85AxqCRZlgc3IQDvkUHjJpruXAL58Wmj+T6fypWTC/BakfEkwIL/pwA== +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7.tgz#cc001234dfc139ac45f6bcf801866198c8c72ff9" + integrity sha512-di8vUHRdf+4aJ7ltXhaDbPoszdkh59AQtJM5soLsuHpQJdFQZOA4uGj0V2u/CZ8bJ/u8ULDL5yq6FO/bCXnKHw== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" - "@babel/plugin-proposal-optional-chaining" "^7.16.0" + "@babel/plugin-proposal-optional-chaining" "^7.16.7" -"@babel/plugin-proposal-async-generator-functions@^7.16.4": - version "7.16.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.4.tgz#e606eb6015fec6fa5978c940f315eae4e300b081" - integrity sha512-/CUekqaAaZCQHleSK/9HajvcD/zdnJiKRiuUFq8ITE+0HsPzquf53cpFiqAwl/UfmJbR6n5uGPQSPdrmKOvHHg== +"@babel/plugin-proposal-async-generator-functions@^7.16.8": + version "7.16.8" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.8.tgz#3bdd1ebbe620804ea9416706cd67d60787504bc8" + integrity sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - "@babel/helper-remap-async-to-generator" "^7.16.4" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-remap-async-to-generator" "^7.16.8" "@babel/plugin-syntax-async-generators" "^7.8.4" -"@babel/plugin-proposal-class-properties@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.0.tgz#c029618267ddebc7280fa286e0f8ca2a278a2d1a" - integrity sha512-mCF3HcuZSY9Fcx56Lbn+CGdT44ioBMMvjNVldpKtj8tpniETdLjnxdHI1+sDWXIM1nNt+EanJOZ3IG9lzVjs7A== +"@babel/plugin-proposal-class-properties@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.7.tgz#925cad7b3b1a2fcea7e59ecc8eb5954f961f91b0" + integrity sha512-IobU0Xme31ewjYOShSIqd/ZGM/r/cuOz2z0MDbNrhF5FW+ZVgi0f2lyeoj9KFPDOAqsYxmLWZte1WOwlvY9aww== dependencies: - "@babel/helper-create-class-features-plugin" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-create-class-features-plugin" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-proposal-class-static-block@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.16.0.tgz#5296942c564d8144c83eea347d0aa8a0b89170e7" - integrity sha512-mAy3sdcY9sKAkf3lQbDiv3olOfiLqI51c9DR9b19uMoR2Z6r5pmGl7dfNFqEvqOyqbf1ta4lknK4gc5PJn3mfA== +"@babel/plugin-proposal-class-static-block@^7.16.7": + version "7.17.6" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.17.6.tgz#164e8fd25f0d80fa48c5a4d1438a6629325ad83c" + integrity sha512-X/tididvL2zbs7jZCeeRJ8167U/+Ac135AM6jCAx6gYXDUviZV5Ku9UDvWS2NCuWlFjIRXklYhwo6HhAC7ETnA== dependencies: - "@babel/helper-create-class-features-plugin" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-create-class-features-plugin" "^7.17.6" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-class-static-block" "^7.14.5" -"@babel/plugin-proposal-dynamic-import@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.0.tgz#783eca61d50526202f9b296095453977e88659f1" - integrity sha512-QGSA6ExWk95jFQgwz5GQ2Dr95cf7eI7TKutIXXTb7B1gCLTCz5hTjFTQGfLFBBiC5WSNi7udNwWsqbbMh1c4yQ== +"@babel/plugin-proposal-dynamic-import@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz#c19c897eaa46b27634a00fee9fb7d829158704b2" + integrity sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-dynamic-import" "^7.8.3" -"@babel/plugin-proposal-export-namespace-from@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.0.tgz#9c01dee40b9d6b847b656aaf4a3976a71740f222" - integrity sha512-CjI4nxM/D+5wCnhD11MHB1AwRSAYeDT+h8gCdcVJZ/OK7+wRzFsf7PFPWVpVpNRkHMmMkQWAHpTq+15IXQ1diA== +"@babel/plugin-proposal-export-namespace-from@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.7.tgz#09de09df18445a5786a305681423ae63507a6163" + integrity sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" -"@babel/plugin-proposal-json-strings@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.0.tgz#cae35a95ed1d2a7fa29c4dc41540b84a72e9ab25" - integrity sha512-kouIPuiv8mSi5JkEhzApg5Gn6hFyKPnlkO0a9YSzqRurH8wYzSlf6RJdzluAsbqecdW5pBvDJDfyDIUR/vLxvg== +"@babel/plugin-proposal-json-strings@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.7.tgz#9732cb1d17d9a2626a08c5be25186c195b6fa6e8" + integrity sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-json-strings" "^7.8.3" -"@babel/plugin-proposal-logical-assignment-operators@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.0.tgz#a711b8ceb3ffddd3ef88d3a49e86dbd3cc7db3fd" - integrity sha512-pbW0fE30sVTYXXm9lpVQQ/Vc+iTeQKiXlaNRZPPN2A2VdlWyAtsUrsQ3xydSlDW00TFMK7a8m3cDTkBF5WnV3Q== +"@babel/plugin-proposal-logical-assignment-operators@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.7.tgz#be23c0ba74deec1922e639832904be0bea73cdea" + integrity sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" -"@babel/plugin-proposal-nullish-coalescing-operator@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.0.tgz#44e1cce08fe2427482cf446a91bb451528ed0596" - integrity sha512-3bnHA8CAFm7cG93v8loghDYyQ8r97Qydf63BeYiGgYbjKKB/XP53W15wfRC7dvKfoiJ34f6Rbyyx2btExc8XsQ== +"@babel/plugin-proposal-nullish-coalescing-operator@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.7.tgz#141fc20b6857e59459d430c850a0011e36561d99" + integrity sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" -"@babel/plugin-proposal-numeric-separator@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.0.tgz#5d418e4fbbf8b9b7d03125d3a52730433a373734" - integrity sha512-FAhE2I6mjispy+vwwd6xWPyEx3NYFS13pikDBWUAFGZvq6POGs5eNchw8+1CYoEgBl9n11I3NkzD7ghn25PQ9Q== +"@babel/plugin-proposal-numeric-separator@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz#d6b69f4af63fb38b6ca2558442a7fb191236eba9" + integrity sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-proposal-object-rest-spread@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.16.0.tgz#5fb32f6d924d6e6712810362a60e12a2609872e6" - integrity sha512-LU/+jp89efe5HuWJLmMmFG0+xbz+I2rSI7iLc1AlaeSMDMOGzWlc5yJrMN1d04osXN4sSfpo4O+azkBNBes0jg== +"@babel/plugin-proposal-object-rest-spread@^7.16.7": + version "7.17.3" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.17.3.tgz#d9eb649a54628a51701aef7e0ea3d17e2b9dd390" + integrity sha512-yuL5iQA/TbZn+RGAfxQXfi7CNLmKi1f8zInn4IgobuCWcAb7i+zj4TYzQ9l8cEzVyJ89PDGuqxK1xZpUDISesw== dependencies: - "@babel/compat-data" "^7.16.0" - "@babel/helper-compilation-targets" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/compat-data" "^7.17.0" + "@babel/helper-compilation-targets" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.16.0" + "@babel/plugin-transform-parameters" "^7.16.7" -"@babel/plugin-proposal-optional-catch-binding@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.0.tgz#5910085811ab4c28b00d6ebffa4ab0274d1e5f16" - integrity sha512-kicDo0A/5J0nrsCPbn89mTG3Bm4XgYi0CZtvex9Oyw7gGZE3HXGD0zpQNH+mo+tEfbo8wbmMvJftOwpmPy7aVw== +"@babel/plugin-proposal-optional-catch-binding@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz#c623a430674ffc4ab732fd0a0ae7722b67cb74cf" + integrity sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" -"@babel/plugin-proposal-optional-chaining@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.0.tgz#56dbc3970825683608e9efb55ea82c2a2d6c8dc0" - integrity sha512-Y4rFpkZODfHrVo70Uaj6cC1JJOt3Pp0MdWSwIKtb8z1/lsjl9AmnB7ErRFV+QNGIfcY1Eruc2UMx5KaRnXjMyg== +"@babel/plugin-proposal-optional-chaining@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.7.tgz#7cd629564724816c0e8a969535551f943c64c39a" + integrity sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -"@babel/plugin-proposal-private-methods@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.0.tgz#b4dafb9c717e4301c5776b30d080d6383c89aff6" - integrity sha512-IvHmcTHDFztQGnn6aWq4t12QaBXTKr1whF/dgp9kz84X6GUcwq9utj7z2wFCUfeOup/QKnOlt2k0zxkGFx9ubg== +"@babel/plugin-proposal-private-methods@^7.16.11": + version "7.16.11" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.11.tgz#e8df108288555ff259f4527dbe84813aac3a1c50" + integrity sha512-F/2uAkPlXDr8+BHpZvo19w3hLFKge+k75XUprE6jaqKxjGkSYcK+4c+bup5PdW/7W/Rpjwql7FTVEDW+fRAQsw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-create-class-features-plugin" "^7.16.10" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-proposal-private-property-in-object@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.0.tgz#69e935b2c5c79d2488112d886f0c4e2790fee76f" - integrity sha512-3jQUr/HBbMVZmi72LpjQwlZ55i1queL8KcDTQEkAHihttJnAPrcvG9ZNXIfsd2ugpizZo595egYV6xy+pv4Ofw== +"@babel/plugin-proposal-private-property-in-object@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.7.tgz#b0b8cef543c2c3d57e59e2c611994861d46a3fce" + integrity sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.16.0" - "@babel/helper-create-class-features-plugin" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-annotate-as-pure" "^7.16.7" + "@babel/helper-create-class-features-plugin" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" -"@babel/plugin-proposal-unicode-property-regex@^7.16.0", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.0.tgz#890482dfc5ea378e42e19a71e709728cabf18612" - integrity sha512-ti7IdM54NXv29cA4+bNNKEMS4jLMCbJgl+Drv+FgYy0erJLAxNAIXcNjNjrRZEcWq0xJHsNVwQezskMFpF8N9g== +"@babel/plugin-proposal-unicode-property-regex@^7.16.7", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.7.tgz#635d18eb10c6214210ffc5ff4932552de08188a2" + integrity sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-create-regexp-features-plugin" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-bigint@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== dependencies: "@babel/helper-plugin-utils" "^7.12.13" "@babel/plugin-syntax-class-static-block@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406" integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-dynamic-import@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-export-namespace-from@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q== dependencies: "@babel/helper-plugin-utils" "^7.8.3" "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-json-strings@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.16.0.tgz#f9624394317365a9a88c82358d3f8471154698f1" - integrity sha512-8zv2+xiPHwly31RK4RmnEYY5zziuF3O7W2kIDW+07ewWDh6Oi0dRq8kwvulRkFgt6DB97RlKs5c1y068iPlCUg== +"@babel/plugin-syntax-jsx@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.16.7.tgz#50b6571d13f764266a113d77c82b4a6508bbe665" + integrity sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-object-rest-spread@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-optional-catch-binding@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-optional-chaining@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-private-property-in-object@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad" integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg== dependencies: "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-top-level-await@^7.14.5", "@babel/plugin-syntax-top-level-await@^7.8.3": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.0.tgz#2feeb13d9334cc582ea9111d3506f773174179bb" - integrity sha512-Xv6mEXqVdaqCBfJFyeab0fH2DnUoMsDmhamxsSi4j8nLd4Vtw213WMJr55xxqipC/YVWyPY3K0blJncPYji+dQ== - dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - -"@babel/plugin-syntax-typescript@^7.7.2": +"@babel/plugin-syntax-typescript@^7.16.7", "@babel/plugin-syntax-typescript@^7.7.2": version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.7.tgz#39c9b55ee153151990fb038651d58d3fd03f98f8" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.7.tgz#39c9b55ee153151990fb038651d58d3fd03f98f8" integrity sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A== dependencies: "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-arrow-functions@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.0.tgz#951706f8b449c834ed07bd474c0924c944b95a8e" - integrity sha512-vIFb5250Rbh7roWARvCLvIJ/PtAU5Lhv7BtZ1u24COwpI9Ypjsh+bZcKk6rlIyalK+r0jOc1XQ8I4ovNxNrWrA== +"@babel/plugin-transform-arrow-functions@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.7.tgz#44125e653d94b98db76369de9c396dc14bef4154" + integrity sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-async-to-generator@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.0.tgz#df12637f9630ddfa0ef9d7a11bc414d629d38604" - integrity sha512-PbIr7G9kR8tdH6g8Wouir5uVjklETk91GMVSUq+VaOgiinbCkBP6Q7NN/suM/QutZkMJMvcyAriogcYAdhg8Gw== +"@babel/plugin-transform-async-to-generator@^7.16.8": + version "7.16.8" + resolved "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.8.tgz#b83dff4b970cf41f1b819f8b49cc0cfbaa53a808" + integrity sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg== dependencies: - "@babel/helper-module-imports" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" - "@babel/helper-remap-async-to-generator" "^7.16.0" + "@babel/helper-module-imports" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-remap-async-to-generator" "^7.16.8" -"@babel/plugin-transform-block-scoped-functions@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.0.tgz#c618763233ad02847805abcac4c345ce9de7145d" - integrity sha512-V14As3haUOP4ZWrLJ3VVx5rCnrYhMSHN/jX7z6FAt5hjRkLsb0snPCmJwSOML5oxkKO4FNoNv7V5hw/y2bjuvg== +"@babel/plugin-transform-block-scoped-functions@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz#4d0d57d9632ef6062cdf354bb717102ee042a620" + integrity sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-block-scoping@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.0.tgz#bcf433fb482fe8c3d3b4e8a66b1c4a8e77d37c16" - integrity sha512-27n3l67/R3UrXfizlvHGuTwsRIFyce3D/6a37GRxn28iyTPvNXaW4XvznexRh1zUNLPjbLL22Id0XQElV94ruw== +"@babel/plugin-transform-block-scoping@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.7.tgz#f50664ab99ddeaee5bc681b8f3a6ea9d72ab4f87" + integrity sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-classes@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.0.tgz#54cf5ff0b2242c6573d753cd4bfc7077a8b282f5" - integrity sha512-HUxMvy6GtAdd+GKBNYDWCIA776byUQH8zjnfjxwT1P1ARv/wFu8eBDpmXQcLS/IwRtrxIReGiplOwMeyO7nsDQ== +"@babel/plugin-transform-classes@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.7.tgz#8f4b9562850cd973de3b498f1218796eb181ce00" + integrity sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.16.0" - "@babel/helper-function-name" "^7.16.0" - "@babel/helper-optimise-call-expression" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" - "@babel/helper-replace-supers" "^7.16.0" - "@babel/helper-split-export-declaration" "^7.16.0" + "@babel/helper-annotate-as-pure" "^7.16.7" + "@babel/helper-environment-visitor" "^7.16.7" + "@babel/helper-function-name" "^7.16.7" + "@babel/helper-optimise-call-expression" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-replace-supers" "^7.16.7" + "@babel/helper-split-export-declaration" "^7.16.7" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.0.tgz#e0c385507d21e1b0b076d66bed6d5231b85110b7" - integrity sha512-63l1dRXday6S8V3WFY5mXJwcRAnPYxvFfTlt67bwV1rTyVTM5zrp0DBBb13Kl7+ehkCVwIZPumPpFP/4u70+Tw== +"@babel/plugin-transform-computed-properties@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.7.tgz#66dee12e46f61d2aae7a73710f591eb3df616470" + integrity sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-destructuring@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.16.0.tgz#ad3d7e74584ad5ea4eadb1e6642146c590dee33c" - integrity sha512-Q7tBUwjxLTsHEoqktemHBMtb3NYwyJPTJdM+wDwb0g8PZ3kQUIzNvwD5lPaqW/p54TXBc/MXZu9Jr7tbUEUM8Q== +"@babel/plugin-transform-destructuring@^7.16.7": + version "7.17.3" + resolved "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.17.3.tgz#c445f75819641788a27a0a3a759d9df911df6abc" + integrity sha512-dDFzegDYKlPqa72xIlbmSkly5MluLoaC1JswABGktyt6NTXSBcUuse/kWE/wvKFWJHPETpi158qJZFS3JmykJg== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-dotall-regex@^7.16.0", "@babel/plugin-transform-dotall-regex@^7.4.4": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.0.tgz#50bab00c1084b6162d0a58a818031cf57798e06f" - integrity sha512-FXlDZfQeLILfJlC6I1qyEwcHK5UpRCFkaoVyA1nk9A1L1Yu583YO4un2KsLBsu3IJb4CUbctZks8tD9xPQubLw== +"@babel/plugin-transform-dotall-regex@^7.16.7", "@babel/plugin-transform-dotall-regex@^7.4.4": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz#6b2d67686fab15fb6a7fd4bd895d5982cfc81241" + integrity sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-create-regexp-features-plugin" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-duplicate-keys@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.0.tgz#8bc2e21813e3e89e5e5bf3b60aa5fc458575a176" - integrity sha512-LIe2kcHKAZOJDNxujvmp6z3mfN6V9lJxubU4fJIGoQCkKe3Ec2OcbdlYP+vW++4MpxwG0d1wSDOJtQW5kLnkZQ== +"@babel/plugin-transform-duplicate-keys@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.7.tgz#2207e9ca8f82a0d36a5a67b6536e7ef8b08823c9" + integrity sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-exponentiation-operator@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.0.tgz#a180cd2881e3533cef9d3901e48dad0fbeff4be4" - integrity sha512-OwYEvzFI38hXklsrbNivzpO3fh87skzx8Pnqi4LoSYeav0xHlueSoCJrSgTPfnbyzopo5b3YVAJkFIcUpK2wsw== +"@babel/plugin-transform-exponentiation-operator@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz#efa9862ef97e9e9e5f653f6ddc7b665e8536fe9b" + integrity sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA== dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-for-of@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.0.tgz#f7abaced155260e2461359bbc7c7248aca5e6bd2" - integrity sha512-5QKUw2kO+GVmKr2wMYSATCTTnHyscl6sxFRAY+rvN7h7WB0lcG0o4NoV6ZQU32OZGVsYUsfLGgPQpDFdkfjlJQ== +"@babel/plugin-transform-for-of@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.7.tgz#649d639d4617dff502a9a158c479b3b556728d8c" + integrity sha512-/QZm9W92Ptpw7sjI9Nx1mbcsWz33+l8kuMIQnDwgQBG5s3fAfQvkRjQ7NqXhtNcKOnPkdICmUHyCaWW06HCsqg== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-function-name@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.0.tgz#02e3699c284c6262236599f751065c5d5f1f400e" - integrity sha512-lBzMle9jcOXtSOXUpc7tvvTpENu/NuekNJVova5lCCWCV9/U1ho2HH2y0p6mBg8fPm/syEAbfaaemYGOHCY3mg== +"@babel/plugin-transform-function-name@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz#5ab34375c64d61d083d7d2f05c38d90b97ec65cf" + integrity sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA== dependencies: - "@babel/helper-function-name" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-compilation-targets" "^7.16.7" + "@babel/helper-function-name" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-literals@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.0.tgz#79711e670ffceb31bd298229d50f3621f7980cac" - integrity sha512-gQDlsSF1iv9RU04clgXqRjrPyyoJMTclFt3K1cjLmTKikc0s/6vE3hlDeEVC71wLTRu72Fq7650kABrdTc2wMQ== +"@babel/plugin-transform-literals@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.7.tgz#254c9618c5ff749e87cb0c0cef1a0a050c0bdab1" + integrity sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-member-expression-literals@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.0.tgz#5251b4cce01eaf8314403d21aedb269d79f5e64b" - integrity sha512-WRpw5HL4Jhnxw8QARzRvwojp9MIE7Tdk3ez6vRyUk1MwgjJN0aNpRoXainLR5SgxmoXx/vsXGZ6OthP6t/RbUg== +"@babel/plugin-transform-member-expression-literals@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz#6e5dcf906ef8a098e630149d14c867dd28f92384" + integrity sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-modules-amd@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.0.tgz#09abd41e18dcf4fd479c598c1cef7bd39eb1337e" - integrity sha512-rWFhWbCJ9Wdmzln1NmSCqn7P0RAD+ogXG/bd9Kg5c7PKWkJtkiXmYsMBeXjDlzHpVTJ4I/hnjs45zX4dEv81xw== +"@babel/plugin-transform-modules-amd@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.7.tgz#b28d323016a7daaae8609781d1f8c9da42b13186" + integrity sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g== dependencies: - "@babel/helper-module-transforms" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-module-transforms" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-commonjs@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.16.0.tgz#add58e638c8ddc4875bd9a9ecb5c594613f6c922" - integrity sha512-Dzi+NWqyEotgzk/sb7kgQPJQf7AJkQBWsVp1N6JWc1lBVo0vkElUnGdr1PzUBmfsCCN5OOFya3RtpeHk15oLKQ== +"@babel/plugin-transform-modules-commonjs@^7.16.8": + version "7.16.8" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.16.8.tgz#cdee19aae887b16b9d331009aa9a219af7c86afe" + integrity sha512-oflKPvsLT2+uKQopesJt3ApiaIS2HW+hzHFcwRNtyDGieAeC/dIHZX8buJQ2J2X1rxGPy4eRcUijm3qcSPjYcA== dependencies: - "@babel/helper-module-transforms" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" - "@babel/helper-simple-access" "^7.16.0" + "@babel/helper-module-transforms" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-simple-access" "^7.16.7" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-systemjs@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.0.tgz#a92cf240afeb605f4ca16670453024425e421ea4" - integrity sha512-yuGBaHS3lF1m/5R+6fjIke64ii5luRUg97N2wr+z1sF0V+sNSXPxXDdEEL/iYLszsN5VKxVB1IPfEqhzVpiqvg== +"@babel/plugin-transform-modules-systemjs@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.7.tgz#887cefaef88e684d29558c2b13ee0563e287c2d7" + integrity sha512-DuK5E3k+QQmnOqBR9UkusByy5WZWGRxfzV529s9nPra1GE7olmxfqO2FHobEOYSPIjPBTr4p66YDcjQnt8cBmw== dependencies: - "@babel/helper-hoist-variables" "^7.16.0" - "@babel/helper-module-transforms" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" - "@babel/helper-validator-identifier" "^7.15.7" + "@babel/helper-hoist-variables" "^7.16.7" + "@babel/helper-module-transforms" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-validator-identifier" "^7.16.7" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-umd@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.0.tgz#195f26c2ad6d6a391b70880effce18ce625e06a7" - integrity sha512-nx4f6no57himWiHhxDM5pjwhae5vLpTK2zCnDH8+wNLJy0TVER/LJRHl2bkt6w9Aad2sPD5iNNoUpY3X9sTGDg== +"@babel/plugin-transform-modules-umd@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.7.tgz#23dad479fa585283dbd22215bff12719171e7618" + integrity sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ== dependencies: - "@babel/helper-module-transforms" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-module-transforms" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-named-capturing-groups-regex@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.0.tgz#d3db61cc5d5b97986559967cd5ea83e5c32096ca" - integrity sha512-LogN88uO+7EhxWc8WZuQ8vxdSyVGxhkh8WTC3tzlT8LccMuQdA81e9SGV6zY7kY2LjDhhDOFdQVxdGwPyBCnvg== +"@babel/plugin-transform-named-capturing-groups-regex@^7.16.8": + version "7.16.8" + resolved "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.8.tgz#7f860e0e40d844a02c9dcf9d84965e7dfd666252" + integrity sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.16.0" + "@babel/helper-create-regexp-features-plugin" "^7.16.7" -"@babel/plugin-transform-new-target@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.0.tgz#af823ab576f752215a49937779a41ca65825ab35" - integrity sha512-fhjrDEYv2DBsGN/P6rlqakwRwIp7rBGLPbrKxwh7oVt5NNkIhZVOY2GRV+ULLsQri1bDqwDWnU3vhlmx5B2aCw== +"@babel/plugin-transform-new-target@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.7.tgz#9967d89a5c243818e0800fdad89db22c5f514244" + integrity sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-object-super@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.0.tgz#fb20d5806dc6491a06296ac14ea8e8d6fedda72b" - integrity sha512-fds+puedQHn4cPLshoHcR1DTMN0q1V9ou0mUjm8whx9pGcNvDrVVrgw+KJzzCaiTdaYhldtrUps8DWVMgrSEyg== +"@babel/plugin-transform-object-super@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz#ac359cf8d32cf4354d27a46867999490b6c32a94" + integrity sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - "@babel/helper-replace-supers" "^7.16.0" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-replace-supers" "^7.16.7" -"@babel/plugin-transform-parameters@^7.16.0", "@babel/plugin-transform-parameters@^7.16.3": - version "7.16.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.3.tgz#fa9e4c874ee5223f891ee6fa8d737f4766d31d15" - integrity sha512-3MaDpJrOXT1MZ/WCmkOFo7EtmVVC8H4EUZVrHvFOsmwkk4lOjQj8rzv8JKUZV4YoQKeoIgk07GO+acPU9IMu/w== +"@babel/plugin-transform-parameters@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.7.tgz#a1721f55b99b736511cb7e0152f61f17688f331f" + integrity sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-property-literals@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.0.tgz#a95c552189a96a00059f6776dc4e00e3690c78d1" - integrity sha512-XLldD4V8+pOqX2hwfWhgwXzGdnDOThxaNTgqagOcpBgIxbUvpgU2FMvo5E1RyHbk756WYgdbS0T8y0Cj9FKkWQ== +"@babel/plugin-transform-property-literals@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz#2dadac85155436f22c696c4827730e0fe1057a55" + integrity sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-transform-react-constant-elements@^7.14.5": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.16.0.tgz#1483b894b8e6ef0709d260532fbd4db9fc27a0e6" - integrity sha512-OgtklS+p9t1X37eWA4XdvvbZG/3gqzX569gqmo3q4/Ui6qjfTQmOs5UTSrfdD9nVByHhX6Gbm/Pyc4KbwUXGWA== + version "7.17.6" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.17.6.tgz#6cc273c2f612a6a50cb657e63ee1303e5e68d10a" + integrity sha512-OBv9VkyyKtsHZiHLoSfCn+h6yU7YKX8nrs32xUmOa1SRSk+t03FosB6fBZ0Yz4BpD1WV7l73Nsad+2Tz7APpqw== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-react-display-name@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.16.0.tgz#9a0ad8aa8e8790883a7bd2736f66229a58125676" - integrity sha512-FJFdJAqaCpndL+pIf0aeD/qlQwT7QXOvR6Cc8JPvNhKJBi2zc/DPc4g05Y3fbD/0iWAMQFGij4+Xw+4L/BMpTg== +"@babel/plugin-transform-react-display-name@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.16.7.tgz#7b6d40d232f4c0f550ea348593db3b21e2404340" + integrity sha512-qgIg8BcZgd0G/Cz916D5+9kqX0c7nPZyXaP8R2tLNN5tkyIZdG5fEwBrxwplzSnjC1jvQmyMNVwUCZPcbGY7Pg== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-react-jsx-development@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.16.0.tgz#1cb52874678d23ab11d0d16488d54730807303ef" - integrity sha512-qq65iSqBRq0Hr3wq57YG2AmW0H6wgTnIzpffTphrUWUgLCOK+zf1f7G0vuOiXrp7dU1qq+fQBoqZ3wCDAkhFzw== +"@babel/plugin-transform-react-jsx-development@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.16.7.tgz#43a00724a3ed2557ed3f276a01a929e6686ac7b8" + integrity sha512-RMvQWvpla+xy6MlBpPlrKZCMRs2AGiHOGHY3xRwl0pEeim348dDyxeH4xBsMPbIMhujeq7ihE702eM2Ew0Wo+A== dependencies: - "@babel/plugin-transform-react-jsx" "^7.16.0" + "@babel/plugin-transform-react-jsx" "^7.16.7" -"@babel/plugin-transform-react-jsx@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.16.0.tgz#55b797d4960c3de04e07ad1c0476e2bc6a4889f1" - integrity sha512-rqDgIbukZ44pqq7NIRPGPGNklshPkvlmvqjdx3OZcGPk4zGIenYkxDTvl3LsSL8gqcc3ZzGmXPE6hR/u/voNOw== +"@babel/plugin-transform-react-jsx@^7.16.7": + version "7.17.3" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.17.3.tgz#eac1565da176ccb1a715dae0b4609858808008c1" + integrity sha512-9tjBm4O07f7mzKSIlEmPdiE6ub7kfIe6Cd+w+oQebpATfTQMAgW+YOuWxogbKVTulA+MEO7byMeIUtQ1z+z+ZQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.16.0" - "@babel/helper-module-imports" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" - "@babel/plugin-syntax-jsx" "^7.16.0" - "@babel/types" "^7.16.0" + "@babel/helper-annotate-as-pure" "^7.16.7" + "@babel/helper-module-imports" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-syntax-jsx" "^7.16.7" + "@babel/types" "^7.17.0" -"@babel/plugin-transform-react-pure-annotations@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.16.0.tgz#23db6ddf558d8abde41b8ad9d59f48ad5532ccab" - integrity sha512-NC/Bj2MG+t8Ef5Pdpo34Ay74X4Rt804h5y81PwOpfPtmAK3i6CizmQqwyBQzIepz1Yt8wNr2Z2L7Lu3qBMfZMA== +"@babel/plugin-transform-react-pure-annotations@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.16.7.tgz#232bfd2f12eb551d6d7d01d13fe3f86b45eb9c67" + integrity sha512-hs71ToC97k3QWxswh2ElzMFABXHvGiJ01IB1TbYQDGeWRKWz/MPUTh5jGExdHvosYKpnJW5Pm3S4+TA3FyX+GA== dependencies: - "@babel/helper-annotate-as-pure" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-annotate-as-pure" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-regenerator@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.0.tgz#eaee422c84b0232d03aea7db99c97deeaf6125a4" - integrity sha512-JAvGxgKuwS2PihiSFaDrp94XOzzTUeDeOQlcKzVAyaPap7BnZXK/lvMDiubkPTdotPKOIZq9xWXWnggUMYiExg== +"@babel/plugin-transform-regenerator@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.7.tgz#9e7576dc476cb89ccc5096fff7af659243b4adeb" + integrity sha512-mF7jOgGYCkSJagJ6XCujSQg+6xC1M77/03K2oBmVJWoFGNUtnVJO4WHKJk3dnPC8HCcj4xBQP1Egm8DWh3Pb3Q== dependencies: regenerator-transform "^0.14.2" -"@babel/plugin-transform-reserved-words@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.0.tgz#fff4b9dcb19e12619394bda172d14f2d04c0379c" - integrity sha512-Dgs8NNCehHSvXdhEhln8u/TtJxfVwGYCgP2OOr5Z3Ar+B+zXicEOKNTyc+eca2cuEOMtjW6m9P9ijOt8QdqWkg== +"@babel/plugin-transform-reserved-words@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.7.tgz#1d798e078f7c5958eec952059c460b220a63f586" + integrity sha512-KQzzDnZ9hWQBjwi5lpY5v9shmm6IVG0U9pB18zvMu2i4H90xpT4gmqwPYsn8rObiadYe2M0gmgsiOIF5A/2rtg== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-shorthand-properties@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.0.tgz#090372e3141f7cc324ed70b3daf5379df2fa384d" - integrity sha512-iVb1mTcD8fuhSv3k99+5tlXu5N0v8/DPm2mO3WACLG6al1CGZH7v09HJyUb1TtYl/Z+KrM6pHSIJdZxP5A+xow== +"@babel/plugin-transform-shorthand-properties@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz#e8549ae4afcf8382f711794c0c7b6b934c5fbd2a" + integrity sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-spread@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.0.tgz#d21ca099bbd53ab307a8621e019a7bd0f40cdcfb" - integrity sha512-Ao4MSYRaLAQczZVp9/7E7QHsCuK92yHRrmVNRe/SlEJjhzivq0BSn8mEraimL8wizHZ3fuaHxKH0iwzI13GyGg== +"@babel/plugin-transform-spread@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.7.tgz#a303e2122f9f12e0105daeedd0f30fb197d8ff44" + integrity sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" -"@babel/plugin-transform-sticky-regex@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.0.tgz#c35ea31a02d86be485f6aa510184b677a91738fd" - integrity sha512-/ntT2NljR9foobKk4E/YyOSwcGUXtYWv5tinMK/3RkypyNBNdhHUaq6Orw5DWq9ZcNlS03BIlEALFeQgeVAo4Q== +"@babel/plugin-transform-sticky-regex@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz#c84741d4f4a38072b9a1e2e3fd56d359552e8660" + integrity sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-template-literals@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.0.tgz#a8eced3a8e7b8e2d40ec4ec4548a45912630d302" - integrity sha512-Rd4Ic89hA/f7xUSJQk5PnC+4so50vBoBfxjdQAdvngwidM8jYIBVxBZ/sARxD4e0yMXRbJVDrYf7dyRtIIKT6Q== +"@babel/plugin-transform-template-literals@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.7.tgz#f3d1c45d28967c8e80f53666fc9c3e50618217ab" + integrity sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-typeof-symbol@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.0.tgz#8b19a244c6f8c9d668dca6a6f754ad6ead1128f2" - integrity sha512-++V2L8Bdf4vcaHi2raILnptTBjGEFxn5315YU+e8+EqXIucA+q349qWngCLpUYqqv233suJ6NOienIVUpS9cqg== +"@babel/plugin-transform-typeof-symbol@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.7.tgz#9cdbe622582c21368bd482b660ba87d5545d4f7e" + integrity sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-typescript@^7.16.0": - version "7.16.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.16.1.tgz#cc0670b2822b0338355bc1b3d2246a42b8166409" - integrity sha512-NO4XoryBng06jjw/qWEU2LhcLJr1tWkhpMam/H4eas/CDKMX/b2/Ylb6EI256Y7+FVPCawwSM1rrJNOpDiz+Lg== +"@babel/plugin-transform-typescript@^7.16.7": + version "7.16.8" + resolved "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.16.8.tgz#591ce9b6b83504903fa9dd3652c357c2ba7a1ee0" + integrity sha512-bHdQ9k7YpBDO2d0NVfkj51DpQcvwIzIusJ7mEUaMlbZq3Kt/U47j24inXZHQ5MDiYpCs+oZiwnXyKedE8+q7AQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" - "@babel/plugin-syntax-typescript" "^7.16.0" + "@babel/helper-create-class-features-plugin" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-syntax-typescript" "^7.16.7" -"@babel/plugin-transform-unicode-escapes@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.0.tgz#1a354064b4c45663a32334f46fa0cf6100b5b1f3" - integrity sha512-VFi4dhgJM7Bpk8lRc5CMaRGlKZ29W9C3geZjt9beuzSUrlJxsNwX7ReLwaL6WEvsOf2EQkyIJEPtF8EXjB/g2A== +"@babel/plugin-transform-unicode-escapes@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz#da8717de7b3287a2c6d659750c964f302b31ece3" + integrity sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-unicode-regex@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.0.tgz#293b80950177c8c85aede87cef280259fb995402" - integrity sha512-jHLK4LxhHjvCeZDWyA9c+P9XH1sOxRd1RO9xMtDVRAOND/PczPqizEtVdx4TQF/wyPaewqpT+tgQFYMnN/P94A== +"@babel/plugin-transform-unicode-regex@^7.16.7": + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz#0f7aa4a501198976e25e82702574c34cfebe9ef2" + integrity sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.16.0" - "@babel/helper-plugin-utils" "^7.14.5" + "@babel/helper-create-regexp-features-plugin" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/preset-env@^7.15.6": - version "7.16.4" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.16.4.tgz#4f6ec33b2a3fe72d6bfdcdf3859500232563a2e3" - integrity sha512-v0QtNd81v/xKj4gNKeuAerQ/azeNn/G1B1qMLeXOcV8+4TWlD2j3NV1u8q29SDFBXx/NBq5kyEAO+0mpRgacjA== + version "7.16.11" + resolved "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.16.11.tgz#5dd88fd885fae36f88fd7c8342475c9f0abe2982" + integrity sha512-qcmWG8R7ZW6WBRPZK//y+E3Cli151B20W1Rv7ln27vuPaXU/8TKms6jFdiJtF7UDTxcrb7mZd88tAeK9LjdT8g== dependencies: - "@babel/compat-data" "^7.16.4" - "@babel/helper-compilation-targets" "^7.16.3" - "@babel/helper-plugin-utils" "^7.14.5" - "@babel/helper-validator-option" "^7.14.5" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.16.2" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.16.0" - "@babel/plugin-proposal-async-generator-functions" "^7.16.4" - "@babel/plugin-proposal-class-properties" "^7.16.0" - "@babel/plugin-proposal-class-static-block" "^7.16.0" - "@babel/plugin-proposal-dynamic-import" "^7.16.0" - "@babel/plugin-proposal-export-namespace-from" "^7.16.0" - "@babel/plugin-proposal-json-strings" "^7.16.0" - "@babel/plugin-proposal-logical-assignment-operators" "^7.16.0" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.16.0" - "@babel/plugin-proposal-numeric-separator" "^7.16.0" - "@babel/plugin-proposal-object-rest-spread" "^7.16.0" - "@babel/plugin-proposal-optional-catch-binding" "^7.16.0" - "@babel/plugin-proposal-optional-chaining" "^7.16.0" - "@babel/plugin-proposal-private-methods" "^7.16.0" - "@babel/plugin-proposal-private-property-in-object" "^7.16.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.16.0" + "@babel/compat-data" "^7.16.8" + "@babel/helper-compilation-targets" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-validator-option" "^7.16.7" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.16.7" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.16.7" + "@babel/plugin-proposal-async-generator-functions" "^7.16.8" + "@babel/plugin-proposal-class-properties" "^7.16.7" + "@babel/plugin-proposal-class-static-block" "^7.16.7" + "@babel/plugin-proposal-dynamic-import" "^7.16.7" + "@babel/plugin-proposal-export-namespace-from" "^7.16.7" + "@babel/plugin-proposal-json-strings" "^7.16.7" + "@babel/plugin-proposal-logical-assignment-operators" "^7.16.7" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.16.7" + "@babel/plugin-proposal-numeric-separator" "^7.16.7" + "@babel/plugin-proposal-object-rest-spread" "^7.16.7" + "@babel/plugin-proposal-optional-catch-binding" "^7.16.7" + "@babel/plugin-proposal-optional-chaining" "^7.16.7" + "@babel/plugin-proposal-private-methods" "^7.16.11" + "@babel/plugin-proposal-private-property-in-object" "^7.16.7" + "@babel/plugin-proposal-unicode-property-regex" "^7.16.7" "@babel/plugin-syntax-async-generators" "^7.8.4" "@babel/plugin-syntax-class-properties" "^7.12.13" "@babel/plugin-syntax-class-static-block" "^7.14.5" @@ -1027,49 +881,49 @@ "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" "@babel/plugin-syntax-top-level-await" "^7.14.5" - "@babel/plugin-transform-arrow-functions" "^7.16.0" - "@babel/plugin-transform-async-to-generator" "^7.16.0" - "@babel/plugin-transform-block-scoped-functions" "^7.16.0" - "@babel/plugin-transform-block-scoping" "^7.16.0" - "@babel/plugin-transform-classes" "^7.16.0" - "@babel/plugin-transform-computed-properties" "^7.16.0" - "@babel/plugin-transform-destructuring" "^7.16.0" - "@babel/plugin-transform-dotall-regex" "^7.16.0" - "@babel/plugin-transform-duplicate-keys" "^7.16.0" - "@babel/plugin-transform-exponentiation-operator" "^7.16.0" - "@babel/plugin-transform-for-of" "^7.16.0" - "@babel/plugin-transform-function-name" "^7.16.0" - "@babel/plugin-transform-literals" "^7.16.0" - "@babel/plugin-transform-member-expression-literals" "^7.16.0" - "@babel/plugin-transform-modules-amd" "^7.16.0" - "@babel/plugin-transform-modules-commonjs" "^7.16.0" - "@babel/plugin-transform-modules-systemjs" "^7.16.0" - "@babel/plugin-transform-modules-umd" "^7.16.0" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.16.0" - "@babel/plugin-transform-new-target" "^7.16.0" - "@babel/plugin-transform-object-super" "^7.16.0" - "@babel/plugin-transform-parameters" "^7.16.3" - "@babel/plugin-transform-property-literals" "^7.16.0" - "@babel/plugin-transform-regenerator" "^7.16.0" - "@babel/plugin-transform-reserved-words" "^7.16.0" - "@babel/plugin-transform-shorthand-properties" "^7.16.0" - "@babel/plugin-transform-spread" "^7.16.0" - "@babel/plugin-transform-sticky-regex" "^7.16.0" - "@babel/plugin-transform-template-literals" "^7.16.0" - "@babel/plugin-transform-typeof-symbol" "^7.16.0" - "@babel/plugin-transform-unicode-escapes" "^7.16.0" - "@babel/plugin-transform-unicode-regex" "^7.16.0" + "@babel/plugin-transform-arrow-functions" "^7.16.7" + "@babel/plugin-transform-async-to-generator" "^7.16.8" + "@babel/plugin-transform-block-scoped-functions" "^7.16.7" + "@babel/plugin-transform-block-scoping" "^7.16.7" + "@babel/plugin-transform-classes" "^7.16.7" + "@babel/plugin-transform-computed-properties" "^7.16.7" + "@babel/plugin-transform-destructuring" "^7.16.7" + "@babel/plugin-transform-dotall-regex" "^7.16.7" + "@babel/plugin-transform-duplicate-keys" "^7.16.7" + "@babel/plugin-transform-exponentiation-operator" "^7.16.7" + "@babel/plugin-transform-for-of" "^7.16.7" + "@babel/plugin-transform-function-name" "^7.16.7" + "@babel/plugin-transform-literals" "^7.16.7" + "@babel/plugin-transform-member-expression-literals" "^7.16.7" + "@babel/plugin-transform-modules-amd" "^7.16.7" + "@babel/plugin-transform-modules-commonjs" "^7.16.8" + "@babel/plugin-transform-modules-systemjs" "^7.16.7" + "@babel/plugin-transform-modules-umd" "^7.16.7" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.16.8" + "@babel/plugin-transform-new-target" "^7.16.7" + "@babel/plugin-transform-object-super" "^7.16.7" + "@babel/plugin-transform-parameters" "^7.16.7" + "@babel/plugin-transform-property-literals" "^7.16.7" + "@babel/plugin-transform-regenerator" "^7.16.7" + "@babel/plugin-transform-reserved-words" "^7.16.7" + "@babel/plugin-transform-shorthand-properties" "^7.16.7" + "@babel/plugin-transform-spread" "^7.16.7" + "@babel/plugin-transform-sticky-regex" "^7.16.7" + "@babel/plugin-transform-template-literals" "^7.16.7" + "@babel/plugin-transform-typeof-symbol" "^7.16.7" + "@babel/plugin-transform-unicode-escapes" "^7.16.7" + "@babel/plugin-transform-unicode-regex" "^7.16.7" "@babel/preset-modules" "^0.1.5" - "@babel/types" "^7.16.0" + "@babel/types" "^7.16.8" babel-plugin-polyfill-corejs2 "^0.3.0" - babel-plugin-polyfill-corejs3 "^0.4.0" + babel-plugin-polyfill-corejs3 "^0.5.0" babel-plugin-polyfill-regenerator "^0.3.0" - core-js-compat "^3.19.1" + core-js-compat "^3.20.2" semver "^6.3.0" "@babel/preset-modules@^0.1.5": version "0.1.5" - resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.5.tgz#ef939d6e7f268827e1841638dc6ff95515e115d9" + resolved "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz#ef939d6e7f268827e1841638dc6ff95515e115d9" integrity sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -1079,77 +933,53 @@ esutils "^2.0.2" "@babel/preset-react@^7.14.5": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.16.0.tgz#f71d3e8dff5218478011df037fad52660ee6d82a" - integrity sha512-d31IFW2bLRB28uL1WoElyro8RH5l6531XfxMtCeCmp6RVAF1uTfxxUA0LH1tXl+psZdwfmIbwoG4U5VwgbhtLw== + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.16.7.tgz#4c18150491edc69c183ff818f9f2aecbe5d93852" + integrity sha512-fWpyI8UM/HE6DfPBzD8LnhQ/OcH8AgTaqcqP2nGOXEUV+VKBR5JRN9hCk9ai+zQQ57vtm9oWeXguBCPNUjytgA== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - "@babel/helper-validator-option" "^7.14.5" - "@babel/plugin-transform-react-display-name" "^7.16.0" - "@babel/plugin-transform-react-jsx" "^7.16.0" - "@babel/plugin-transform-react-jsx-development" "^7.16.0" - "@babel/plugin-transform-react-pure-annotations" "^7.16.0" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-validator-option" "^7.16.7" + "@babel/plugin-transform-react-display-name" "^7.16.7" + "@babel/plugin-transform-react-jsx" "^7.16.7" + "@babel/plugin-transform-react-jsx-development" "^7.16.7" + "@babel/plugin-transform-react-pure-annotations" "^7.16.7" "@babel/preset-typescript@^7.15.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.16.0.tgz#b0b4f105b855fb3d631ec036cdc9d1ffd1fa5eac" - integrity sha512-txegdrZYgO9DlPbv+9QOVpMnKbOtezsLHWsnsRF4AjbSIsVaujrq1qg8HK0mxQpWv0jnejt0yEoW1uWpvbrDTg== + version "7.16.7" + resolved "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.16.7.tgz#ab114d68bb2020afc069cd51b37ff98a046a70b9" + integrity sha512-WbVEmgXdIyvzB77AQjGBEyYPZx+8tTsO50XtfozQrkW8QB2rLJpH2lgx0TRw5EJrBxOZQ+wCcyPVQvS8tjEHpQ== dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - "@babel/helper-validator-option" "^7.14.5" - "@babel/plugin-transform-typescript" "^7.16.0" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-validator-option" "^7.16.7" + "@babel/plugin-transform-typescript" "^7.16.7" "@babel/runtime-corejs3@^7.10.2": - version "7.16.3" - resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.16.3.tgz#1e25de4fa994c57c18e5fdda6cc810dac70f5590" - integrity sha512-IAdDC7T0+wEB4y2gbIL0uOXEYpiZEeuFUTVbdGq+UwCcF35T/tS8KrmMomEwEc5wBbyfH3PJVpTSUqrhPDXFcQ== + version "7.17.2" + resolved "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.17.2.tgz#fdca2cd05fba63388babe85d349b6801b008fd13" + integrity sha512-NcKtr2epxfIrNM4VOmPKO46TvDMCBhgi2CrSHaEarrz+Plk2K5r9QemmOFTGpZaoKnWoGH5MO+CzeRsih/Fcgg== dependencies: - core-js-pure "^3.19.0" + core-js-pure "^3.20.2" regenerator-runtime "^0.13.4" "@babel/runtime@^7.10.2", "@babel/runtime@^7.15.4", "@babel/runtime@^7.16.3", "@babel/runtime@^7.17.2", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7": version "7.17.2" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.17.2.tgz#66f68591605e59da47523c631416b18508779941" + resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.2.tgz#66f68591605e59da47523c631416b18508779941" integrity sha512-hzeyJyMA1YGdJTuWU0e/j4wKXrU4OMFvY2MSlaI9B7VQb0r5cxTE3EAIS2Q7Tn2RIcDkRvTA/v2JsAEhxe99uw== dependencies: regenerator-runtime "^0.13.4" -"@babel/template@^7.16.0": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.0.tgz#d16a35ebf4cd74e202083356fab21dd89363ddd6" - integrity sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A== - dependencies: - "@babel/code-frame" "^7.16.0" - "@babel/parser" "^7.16.0" - "@babel/types" "^7.16.0" - "@babel/template@^7.16.7", "@babel/template@^7.3.3": version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.7.tgz#8d126c8701fde4d66b264b3eba3d96f07666d155" + resolved "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz#8d126c8701fde4d66b264b3eba3d96f07666d155" integrity sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w== dependencies: "@babel/code-frame" "^7.16.7" "@babel/parser" "^7.16.7" "@babel/types" "^7.16.7" -"@babel/traverse@^7.0.0-beta.54", "@babel/traverse@^7.13.0", "@babel/traverse@^7.16.0", "@babel/traverse@^7.16.3", "@babel/traverse@^7.4.5": - version "7.16.3" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.16.3.tgz#f63e8a938cc1b780f66d9ed3c54f532ca2d14787" - integrity sha512-eolumr1vVMjqevCpwVO99yN/LoGL0EyHiLO5I043aYQvwOJ9eR5UsZSClHVCzfhBduMAsSzgA/6AyqPjNayJag== - dependencies: - "@babel/code-frame" "^7.16.0" - "@babel/generator" "^7.16.0" - "@babel/helper-function-name" "^7.16.0" - "@babel/helper-hoist-variables" "^7.16.0" - "@babel/helper-split-export-declaration" "^7.16.0" - "@babel/parser" "^7.16.3" - "@babel/types" "^7.16.0" - debug "^4.1.0" - globals "^11.1.0" - -"@babel/traverse@^7.16.7", "@babel/traverse@^7.17.0", "@babel/traverse@^7.17.3", "@babel/traverse@^7.7.2": +"@babel/traverse@^7.0.0-beta.54", "@babel/traverse@^7.13.0", "@babel/traverse@^7.16.7", "@babel/traverse@^7.16.8", "@babel/traverse@^7.17.0", "@babel/traverse@^7.17.3", "@babel/traverse@^7.4.5", "@babel/traverse@^7.7.2": version "7.17.3" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.17.3.tgz#0ae0f15b27d9a92ba1f2263358ea7c4e7db47b57" + resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz#0ae0f15b27d9a92ba1f2263358ea7c4e7db47b57" integrity sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw== dependencies: "@babel/code-frame" "^7.16.7" @@ -1163,35 +993,27 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.16.7", "@babel/types@^7.17.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3": +"@babel/types@^7.0.0", "@babel/types@^7.0.0-beta.54", "@babel/types@^7.15.6", "@babel/types@^7.16.0", "@babel/types@^7.16.7", "@babel/types@^7.16.8", "@babel/types@^7.17.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.17.0" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.17.0.tgz#a826e368bccb6b3d84acd76acad5c0d87342390b" + resolved "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz#a826e368bccb6b3d84acd76acad5c0d87342390b" integrity sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw== dependencies: "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" -"@babel/types@^7.0.0-beta.54", "@babel/types@^7.15.6", "@babel/types@^7.16.0", "@babel/types@^7.4.4": - version "7.16.0" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.16.0.tgz#db3b313804f96aadd0b776c4823e127ad67289ba" - integrity sha512-PJgg/k3SdLsGb3hhisFvtLOw5ts113klrpLuIPtCJIU+BB24fqq6lf8RWqKJEjzqXR9AEH1rIb5XTqwBHB+kQg== - dependencies: - "@babel/helper-validator-identifier" "^7.15.7" - to-fast-properties "^2.0.0" - "@bcoe/v8-coverage@^0.2.3": version "0.2.3" - resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== "@discoveryjs/json-ext@^0.5.0": - version "0.5.5" - resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.5.tgz#9283c9ce5b289a3c4f61c12757469e59377f81f3" - integrity sha512-6nFkfkmSeV/rqSaS4oWHgmpnYw194f6hmWF5is6b0J1naJZoiD0NTc9AiUwPHvWsowkjuHErCZT1wa0jg+BLIA== + version "0.5.7" + resolved "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70" + integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw== "@emotion/cache@^11.7.1": version "11.7.1" - resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.7.1.tgz#08d080e396a42e0037848214e8aa7bf879065539" + resolved "https://registry.npmjs.org/@emotion/cache/-/cache-11.7.1.tgz#08d080e396a42e0037848214e8aa7bf879065539" integrity sha512-r65Zy4Iljb8oyjtLeCuBH8Qjiy107dOYC6SJq7g7GV5UCQWMObY4SJDPGFjiiVpPrOJ2hmJOoBiYTC7hwx9E2A== dependencies: "@emotion/memoize" "^0.7.4" @@ -1202,56 +1024,56 @@ "@emotion/is-prop-valid@^0.8.8": version "0.8.8" - resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz#db28b1c4368a259b60a97311d6a952d4fd01ac1a" + resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz#db28b1c4368a259b60a97311d6a952d4fd01ac1a" integrity sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA== dependencies: "@emotion/memoize" "0.7.4" "@emotion/is-prop-valid@^1.1.2": version "1.1.2" - resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-1.1.2.tgz#34ad6e98e871aa6f7a20469b602911b8b11b3a95" + resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.1.2.tgz#34ad6e98e871aa6f7a20469b602911b8b11b3a95" integrity sha512-3QnhqeL+WW88YjYbQL5gUIkthuMw7a0NGbZ7wfFVk2kg/CK5w8w5FFa0RzWjyY1+sujN0NWbtSHH6OJmWHtJpQ== dependencies: "@emotion/memoize" "^0.7.4" "@emotion/memoize@0.7.4": version "0.7.4" - resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.4.tgz#19bf0f5af19149111c40d98bb0cf82119f5d9eeb" + resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz#19bf0f5af19149111c40d98bb0cf82119f5d9eeb" integrity sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw== "@emotion/memoize@^0.7.4": version "0.7.5" - resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.5.tgz#2c40f81449a4e554e9fc6396910ed4843ec2be50" + resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.5.tgz#2c40f81449a4e554e9fc6396910ed4843ec2be50" integrity sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ== "@emotion/sheet@^1.1.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.1.0.tgz#56d99c41f0a1cda2726a05aa6a20afd4c63e58d2" + resolved "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.1.0.tgz#56d99c41f0a1cda2726a05aa6a20afd4c63e58d2" integrity sha512-u0AX4aSo25sMAygCuQTzS+HsImZFuS8llY8O7b9MDRzbJM0kVJlAz6KNDqcG7pOuQZJmj/8X/rAW+66kMnMW+g== "@emotion/stylis@^0.8.4": version "0.8.5" - resolved "https://registry.yarnpkg.com/@emotion/stylis/-/stylis-0.8.5.tgz#deacb389bd6ee77d1e7fcaccce9e16c5c7e78e04" + resolved "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz#deacb389bd6ee77d1e7fcaccce9e16c5c7e78e04" integrity sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ== "@emotion/unitless@^0.7.4": version "0.7.5" - resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed" + resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed" integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg== "@emotion/utils@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.0.0.tgz#abe06a83160b10570816c913990245813a2fd6af" - integrity sha512-mQC2b3XLDs6QCW+pDQDiyO/EdGZYOygE8s5N5rrzjSI4M3IejPE/JPndCBwRT9z982aqQNi6beWs1UeayrQxxA== + version "1.1.0" + resolved "https://registry.npmjs.org/@emotion/utils/-/utils-1.1.0.tgz#86b0b297f3f1a0f2bdb08eeac9a2f49afd40d0cf" + integrity sha512-iRLa/Y4Rs5H/f2nimczYmS5kFJEbpiVvgN3XVfZ022IYhuNA1IRSHEizcof88LtCTXtl9S2Cxt32KgaXEu72JQ== "@emotion/weak-memoize@^0.2.5": version "0.2.5" - resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz#8eed982e2ee6f7f4e44c253e12962980791efd46" + resolved "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz#8eed982e2ee6f7f4e44c253e12962980791efd46" integrity sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA== "@eslint/eslintrc@^1.2.0": version "1.2.0" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.2.0.tgz#7ce1547a5c46dfe56e1e45c3c9ed18038c721c6a" + resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.0.tgz#7ce1547a5c46dfe56e1e45c3c9ed18038c721c6a" integrity sha512-igm9SjJHNEJRiUnecP/1R5T3wKLEJ7pL6e2P+GUSfCd0dGjPYYZve08uzw8L2J8foVHFz+NGu12JxRcU2gGo6w== dependencies: ajv "^6.12.4" @@ -1264,349 +1086,349 @@ minimatch "^3.0.4" strip-json-comments "^3.1.1" -"@ethersproject/abi@5.5.0", "@ethersproject/abi@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.5.0.tgz#fb52820e22e50b854ff15ce1647cc508d6660613" - integrity sha512-loW7I4AohP5KycATvc0MgujU6JyCHPqHdeoo9z3Nr9xEiNioxa65ccdm1+fsoJhkuhdRtfcL8cfyGamz2AxZ5w== - dependencies: - "@ethersproject/address" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/constants" "^5.5.0" - "@ethersproject/hash" "^5.5.0" - "@ethersproject/keccak256" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - -"@ethersproject/abstract-provider@5.5.1", "@ethersproject/abstract-provider@^5.5.0": - version "5.5.1" - resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.5.1.tgz#2f1f6e8a3ab7d378d8ad0b5718460f85649710c5" - integrity sha512-m+MA/ful6eKbxpr99xUYeRvLkfnlqzrF8SZ46d/xFB1A7ZVknYc/sXJG0RcufF52Qn2jeFj1hhcoQ7IXjNKUqg== - dependencies: - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/networks" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/transactions" "^5.5.0" - "@ethersproject/web" "^5.5.0" - -"@ethersproject/abstract-signer@5.5.0", "@ethersproject/abstract-signer@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.5.0.tgz#590ff6693370c60ae376bf1c7ada59eb2a8dd08d" - integrity sha512-lj//7r250MXVLKI7sVarXAbZXbv9P50lgmJQGr2/is82EwEb8r7HrxsmMqAjTsztMYy7ohrIhGMIml+Gx4D3mA== - dependencies: - "@ethersproject/abstract-provider" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - -"@ethersproject/address@5.5.0", "@ethersproject/address@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.5.0.tgz#bcc6f576a553f21f3dd7ba17248f81b473c9c78f" - integrity sha512-l4Nj0eWlTUh6ro5IbPTgbpT4wRbdH5l8CQf7icF7sb/SI3Nhd9Y9HzhonTSTi6CefI0necIw7LJqQPopPLZyWw== - dependencies: - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/keccak256" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/rlp" "^5.5.0" - -"@ethersproject/base64@5.5.0", "@ethersproject/base64@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.5.0.tgz#881e8544e47ed976930836986e5eb8fab259c090" - integrity sha512-tdayUKhU1ljrlHzEWbStXazDpsx4eg1dBXUSI6+mHlYklOXoXF6lZvw8tnD6oVaWfnMxAgRSKROg3cVKtCcppA== - dependencies: - "@ethersproject/bytes" "^5.5.0" - -"@ethersproject/basex@5.5.0", "@ethersproject/basex@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.5.0.tgz#e40a53ae6d6b09ab4d977bd037010d4bed21b4d3" - integrity sha512-ZIodwhHpVJ0Y3hUCfUucmxKsWQA5TMnavp5j/UOuDdzZWzJlRmuOjcTMIGgHCYuZmHt36BfiSyQPSRskPxbfaQ== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - -"@ethersproject/bignumber@5.5.0", "@ethersproject/bignumber@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.5.0.tgz#875b143f04a216f4f8b96245bde942d42d279527" - integrity sha512-6Xytlwvy6Rn3U3gKEc1vP7nR92frHkv6wtVr95LFR3jREXiCPzdWxKQ1cx4JGQBXxcguAwjA8murlYN2TSiEbg== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" +"@ethersproject/abi@5.6.0", "@ethersproject/abi@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.6.0.tgz#ea07cbc1eec2374d32485679c12408005895e9f3" + integrity sha512-AhVByTwdXCc2YQ20v300w6KVHle9g2OFc28ZAFCPnJyEpkv1xKXjZcSTgWOlv1i+0dqlgF8RCF2Rn2KC1t+1Vg== + dependencies: + "@ethersproject/address" "^5.6.0" + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/constants" "^5.6.0" + "@ethersproject/hash" "^5.6.0" + "@ethersproject/keccak256" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.0" + +"@ethersproject/abstract-provider@5.6.0", "@ethersproject/abstract-provider@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.6.0.tgz#0c4ac7054650dbd9c476cf5907f588bbb6ef3061" + integrity sha512-oPMFlKLN+g+y7a79cLK3WiLcjWFnZQtXWgnLAbHZcN3s7L4v90UHpTOrLk+m3yr0gt+/h9STTM6zrr7PM8uoRw== + dependencies: + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/networks" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/transactions" "^5.6.0" + "@ethersproject/web" "^5.6.0" + +"@ethersproject/abstract-signer@5.6.0", "@ethersproject/abstract-signer@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.6.0.tgz#9cd7ae9211c2b123a3b29bf47aab17d4d016e3e7" + integrity sha512-WOqnG0NJKtI8n0wWZPReHtaLkDByPL67tn4nBaDAhmVq8sjHTPbCdz4DRhVu/cfTOvfy9w3iq5QZ7BX7zw56BQ== + dependencies: + "@ethersproject/abstract-provider" "^5.6.0" + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + +"@ethersproject/address@5.6.0", "@ethersproject/address@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/address/-/address-5.6.0.tgz#13c49836d73e7885fc148ad633afad729da25012" + integrity sha512-6nvhYXjbXsHPS+30sHZ+U4VMagFC/9zAk6Gd/h3S21YW4+yfb0WfRtaAIZ4kfM4rrVwqiy284LP0GtL5HXGLxQ== + dependencies: + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/keccak256" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/rlp" "^5.6.0" + +"@ethersproject/base64@5.6.0", "@ethersproject/base64@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.6.0.tgz#a12c4da2a6fb86d88563216b0282308fc15907c9" + integrity sha512-2Neq8wxJ9xHxCF9TUgmKeSh9BXJ6OAxWfeGWvbauPh8FuHEjamgHilllx8KkSd5ErxyHIX7Xv3Fkcud2kY9ezw== + dependencies: + "@ethersproject/bytes" "^5.6.0" + +"@ethersproject/basex@5.6.0", "@ethersproject/basex@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.6.0.tgz#9ea7209bf0a1c3ddc2a90f180c3a7f0d7d2e8a69" + integrity sha512-qN4T+hQd/Md32MoJpc69rOwLYRUXwjTlhHDIeUkUmiN/JyWkkLLMoG0TqvSQKNqZOMgN5stbUYN6ILC+eD7MEQ== + dependencies: + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + +"@ethersproject/bignumber@5.6.0", "@ethersproject/bignumber@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.6.0.tgz#116c81b075c57fa765a8f3822648cf718a8a0e26" + integrity sha512-VziMaXIUHQlHJmkv1dlcd6GY2PmT0khtAqaMctCIDogxkrarMzA9L94KN1NeXqqOfFD6r0sJT3vCTOFSmZ07DA== + dependencies: + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" bn.js "^4.11.9" -"@ethersproject/bytes@5.5.0", "@ethersproject/bytes@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.5.0.tgz#cb11c526de657e7b45d2e0f0246fb3b9d29a601c" - integrity sha512-ABvc7BHWhZU9PNM/tANm/Qx4ostPGadAuQzWTr3doklZOhDlmcBqclrQe/ZXUIj3K8wC28oYeuRa+A37tX9kog== - dependencies: - "@ethersproject/logger" "^5.5.0" - -"@ethersproject/constants@5.5.0", "@ethersproject/constants@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.5.0.tgz#d2a2cd7d94bd1d58377d1d66c4f53c9be4d0a45e" - integrity sha512-2MsRRVChkvMWR+GyMGY4N1sAX9Mt3J9KykCsgUFd/1mwS0UH1qw+Bv9k1UJb3X3YJYFco9H20pjSlOIfCG5HYQ== - dependencies: - "@ethersproject/bignumber" "^5.5.0" - -"@ethersproject/contracts@5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.5.0.tgz#b735260d4bd61283a670a82d5275e2a38892c197" - integrity sha512-2viY7NzyvJkh+Ug17v7g3/IJC8HqZBDcOjYARZLdzRxrfGlRgmYgl6xPRKVbEzy1dWKw/iv7chDcS83pg6cLxg== - dependencies: - "@ethersproject/abi" "^5.5.0" - "@ethersproject/abstract-provider" "^5.5.0" - "@ethersproject/abstract-signer" "^5.5.0" - "@ethersproject/address" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/constants" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/transactions" "^5.5.0" - -"@ethersproject/hash@5.5.0", "@ethersproject/hash@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.5.0.tgz#7cee76d08f88d1873574c849e0207dcb32380cc9" - integrity sha512-dnGVpK1WtBjmnp3mUT0PlU2MpapnwWI0PibldQEq1408tQBAbZpPidkWoVVuNMOl/lISO3+4hXZWCL3YV7qzfg== - dependencies: - "@ethersproject/abstract-signer" "^5.5.0" - "@ethersproject/address" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/keccak256" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - -"@ethersproject/hdnode@5.5.0", "@ethersproject/hdnode@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.5.0.tgz#4a04e28f41c546f7c978528ea1575206a200ddf6" - integrity sha512-mcSOo9zeUg1L0CoJH7zmxwUG5ggQHU1UrRf8jyTYy6HxdZV+r0PBoL1bxr+JHIPXRzS6u/UW4mEn43y0tmyF8Q== - dependencies: - "@ethersproject/abstract-signer" "^5.5.0" - "@ethersproject/basex" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/pbkdf2" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/sha2" "^5.5.0" - "@ethersproject/signing-key" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - "@ethersproject/transactions" "^5.5.0" - "@ethersproject/wordlists" "^5.5.0" - -"@ethersproject/json-wallets@5.5.0", "@ethersproject/json-wallets@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.5.0.tgz#dd522d4297e15bccc8e1427d247ec8376b60e325" - integrity sha512-9lA21XQnCdcS72xlBn1jfQdj2A1VUxZzOzi9UkNdnokNKke/9Ya2xA9aIK1SC3PQyBDLt4C+dfps7ULpkvKikQ== - dependencies: - "@ethersproject/abstract-signer" "^5.5.0" - "@ethersproject/address" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/hdnode" "^5.5.0" - "@ethersproject/keccak256" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/pbkdf2" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/random" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - "@ethersproject/transactions" "^5.5.0" +"@ethersproject/bytes@5.6.0", "@ethersproject/bytes@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.0.tgz#81652f2a0e04533575befadce555213c11d8aa20" + integrity sha512-3hJPlYemb9V4VLfJF5BfN0+55vltPZSHU3QKUyP9M3Y2TcajbiRrz65UG+xVHOzBereB1b9mn7r12o177xgN7w== + dependencies: + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/constants@5.6.0", "@ethersproject/constants@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.6.0.tgz#55e3eb0918584d3acc0688e9958b0cedef297088" + integrity sha512-SrdaJx2bK0WQl23nSpV/b1aq293Lh0sUaZT/yYKPDKn4tlAbkH96SPJwIhwSwTsoQQZxuh1jnqsKwyymoiBdWA== + dependencies: + "@ethersproject/bignumber" "^5.6.0" + +"@ethersproject/contracts@5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.6.0.tgz#60f2cfc7addd99a865c6c8cfbbcec76297386067" + integrity sha512-74Ge7iqTDom0NX+mux8KbRUeJgu1eHZ3iv6utv++sLJG80FVuU9HnHeKVPfjd9s3woFhaFoQGf3B3iH/FrQmgw== + dependencies: + "@ethersproject/abi" "^5.6.0" + "@ethersproject/abstract-provider" "^5.6.0" + "@ethersproject/abstract-signer" "^5.6.0" + "@ethersproject/address" "^5.6.0" + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/constants" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/transactions" "^5.6.0" + +"@ethersproject/hash@5.6.0", "@ethersproject/hash@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.6.0.tgz#d24446a5263e02492f9808baa99b6e2b4c3429a2" + integrity sha512-fFd+k9gtczqlr0/BruWLAu7UAOas1uRRJvOR84uDf4lNZ+bTkGl366qvniUZHKtlqxBRU65MkOobkmvmpHU+jA== + dependencies: + "@ethersproject/abstract-signer" "^5.6.0" + "@ethersproject/address" "^5.6.0" + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/keccak256" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.0" + +"@ethersproject/hdnode@5.6.0", "@ethersproject/hdnode@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.6.0.tgz#9dcbe8d629bbbcf144f2cae476337fe92d320998" + integrity sha512-61g3Jp3nwDqJcL/p4nugSyLrpl/+ChXIOtCEM8UDmWeB3JCAt5FoLdOMXQc3WWkc0oM2C0aAn6GFqqMcS/mHTw== + dependencies: + "@ethersproject/abstract-signer" "^5.6.0" + "@ethersproject/basex" "^5.6.0" + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/pbkdf2" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/sha2" "^5.6.0" + "@ethersproject/signing-key" "^5.6.0" + "@ethersproject/strings" "^5.6.0" + "@ethersproject/transactions" "^5.6.0" + "@ethersproject/wordlists" "^5.6.0" + +"@ethersproject/json-wallets@5.6.0", "@ethersproject/json-wallets@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.6.0.tgz#4c2fc27f17e36c583e7a252fb938bc46f98891e5" + integrity sha512-fmh86jViB9r0ibWXTQipxpAGMiuxoqUf78oqJDlCAJXgnJF024hOOX7qVgqsjtbeoxmcLwpPsXNU0WEe/16qPQ== + dependencies: + "@ethersproject/abstract-signer" "^5.6.0" + "@ethersproject/address" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/hdnode" "^5.6.0" + "@ethersproject/keccak256" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/pbkdf2" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.0" + "@ethersproject/strings" "^5.6.0" + "@ethersproject/transactions" "^5.6.0" aes-js "3.0.0" scrypt-js "3.0.1" -"@ethersproject/keccak256@5.5.0", "@ethersproject/keccak256@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.5.0.tgz#e4b1f9d7701da87c564ffe336f86dcee82983492" - integrity sha512-5VoFCTjo2rYbBe1l2f4mccaRFN/4VQEYFwwn04aJV2h7qf4ZvI2wFxUE1XOX+snbwCLRzIeikOqtAoPwMza9kg== +"@ethersproject/keccak256@5.6.0", "@ethersproject/keccak256@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz#fea4bb47dbf8f131c2e1774a1cecbfeb9d606459" + integrity sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w== dependencies: - "@ethersproject/bytes" "^5.5.0" + "@ethersproject/bytes" "^5.6.0" js-sha3 "0.8.0" -"@ethersproject/logger@5.5.0", "@ethersproject/logger@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.5.0.tgz#0c2caebeff98e10aefa5aef27d7441c7fd18cf5d" - integrity sha512-rIY/6WPm7T8n3qS2vuHTUBPdXHl+rGxWxW5okDfo9J4Z0+gRRZT0msvUdIJkE4/HS29GUMziwGaaKO2bWONBrg== - -"@ethersproject/networks@5.5.2", "@ethersproject/networks@^5.5.0": - version "5.5.2" - resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.5.2.tgz#784c8b1283cd2a931114ab428dae1bd00c07630b" - integrity sha512-NEqPxbGBfy6O3x4ZTISb90SjEDkWYDUbEeIFhJly0F7sZjoQMnj5KYzMSkMkLKZ+1fGpx00EDpHQCy6PrDupkQ== - dependencies: - "@ethersproject/logger" "^5.5.0" - -"@ethersproject/pbkdf2@5.5.0", "@ethersproject/pbkdf2@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.5.0.tgz#e25032cdf02f31505d47afbf9c3e000d95c4a050" - integrity sha512-SaDvQFvXPnz1QGpzr6/HToLifftSXGoXrbpZ6BvoZhmx4bNLHrxDe8MZisuecyOziP1aVEwzC2Hasj+86TgWVg== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/sha2" "^5.5.0" - -"@ethersproject/properties@5.5.0", "@ethersproject/properties@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.5.0.tgz#61f00f2bb83376d2071baab02245f92070c59995" - integrity sha512-l3zRQg3JkD8EL3CPjNK5g7kMx4qSwiR60/uk5IVjd3oq1MZR5qUg40CNOoEJoX5wc3DyY5bt9EbMk86C7x0DNA== - dependencies: - "@ethersproject/logger" "^5.5.0" - -"@ethersproject/providers@5.5.3": - version "5.5.3" - resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.5.3.tgz#56c2b070542ac44eb5de2ed3cf6784acd60a3130" - integrity sha512-ZHXxXXXWHuwCQKrgdpIkbzMNJMvs+9YWemanwp1fA7XZEv7QlilseysPvQe0D7Q7DlkJX/w/bGA1MdgK2TbGvA== - dependencies: - "@ethersproject/abstract-provider" "^5.5.0" - "@ethersproject/abstract-signer" "^5.5.0" - "@ethersproject/address" "^5.5.0" - "@ethersproject/basex" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/constants" "^5.5.0" - "@ethersproject/hash" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/networks" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/random" "^5.5.0" - "@ethersproject/rlp" "^5.5.0" - "@ethersproject/sha2" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - "@ethersproject/transactions" "^5.5.0" - "@ethersproject/web" "^5.5.0" +"@ethersproject/logger@5.6.0", "@ethersproject/logger@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz#d7db1bfcc22fd2e4ab574cba0bb6ad779a9a3e7a" + integrity sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg== + +"@ethersproject/networks@5.6.0", "@ethersproject/networks@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.6.0.tgz#486d03fff29b4b6b5414d47a232ded09fe10de5e" + integrity sha512-DaVzgyThzHgSDLuURhvkp4oviGoGe9iTZW4jMEORHDRCgSZ9K9THGFKqL+qGXqPAYLEgZTf5z2w56mRrPR1MjQ== + dependencies: + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/pbkdf2@5.6.0", "@ethersproject/pbkdf2@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.6.0.tgz#04fcc2d7c6bff88393f5b4237d906a192426685a" + integrity sha512-Wu1AxTgJo3T3H6MIu/eejLFok9TYoSdgwRr5oGY1LTLfmGesDoSx05pemsbrPT2gG4cQME+baTSCp5sEo2erZQ== + dependencies: + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/sha2" "^5.6.0" + +"@ethersproject/properties@5.6.0", "@ethersproject/properties@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.6.0.tgz#38904651713bc6bdd5bdd1b0a4287ecda920fa04" + integrity sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg== + dependencies: + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/providers@5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.6.0.tgz#08ec8e2666771e3a347e66c8f664a2af97366534" + integrity sha512-6+5PKXTWAttJWFWF8+xCDTCa2/dtq9BNrdKQHGl0IyIOwj99vM6OeThmIRcsIAzIOb8m0XS6w+1KFZwrf3j9nw== + dependencies: + "@ethersproject/abstract-provider" "^5.6.0" + "@ethersproject/abstract-signer" "^5.6.0" + "@ethersproject/address" "^5.6.0" + "@ethersproject/basex" "^5.6.0" + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/constants" "^5.6.0" + "@ethersproject/hash" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/networks" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.0" + "@ethersproject/rlp" "^5.6.0" + "@ethersproject/sha2" "^5.6.0" + "@ethersproject/strings" "^5.6.0" + "@ethersproject/transactions" "^5.6.0" + "@ethersproject/web" "^5.6.0" bech32 "1.1.4" ws "7.4.6" -"@ethersproject/random@5.5.1", "@ethersproject/random@^5.5.0": - version "5.5.1" - resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.5.1.tgz#7cdf38ea93dc0b1ed1d8e480ccdaf3535c555415" - integrity sha512-YaU2dQ7DuhL5Au7KbcQLHxcRHfgyNgvFV4sQOo0HrtW3Zkrc9ctWNz8wXQ4uCSfSDsqX2vcjhroxU5RQRV0nqA== +"@ethersproject/random@5.6.0", "@ethersproject/random@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/random/-/random-5.6.0.tgz#1505d1ab6a250e0ee92f436850fa3314b2cb5ae6" + integrity sha512-si0PLcLjq+NG/XHSZz90asNf+YfKEqJGVdxoEkSukzbnBgC8rydbgbUgBbBGLeHN4kAJwUFEKsu3sCXT93YMsw== dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" -"@ethersproject/rlp@5.5.0", "@ethersproject/rlp@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.5.0.tgz#530f4f608f9ca9d4f89c24ab95db58ab56ab99a0" - integrity sha512-hLv8XaQ8PTI9g2RHoQGf/WSxBfTB/NudRacbzdxmst5VHAqd1sMibWG7SENzT5Dj3yZ3kJYx+WiRYEcQTAkcYA== +"@ethersproject/rlp@5.6.0", "@ethersproject/rlp@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.6.0.tgz#55a7be01c6f5e64d6e6e7edb6061aa120962a717" + integrity sha512-dz9WR1xpcTL+9DtOT/aDO+YyxSSdO8YIS0jyZwHHSlAmnxA6cKU3TrTd4Xc/bHayctxTgGLYNuVVoiXE4tTq1g== dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" -"@ethersproject/sha2@5.5.0", "@ethersproject/sha2@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.5.0.tgz#a40a054c61f98fd9eee99af2c3cc6ff57ec24db7" - integrity sha512-B5UBoglbCiHamRVPLA110J+2uqsifpZaTmid2/7W5rbtYVz6gus6/hSDieIU/6gaKIDcOj12WnOdiymEUHIAOA== +"@ethersproject/sha2@5.6.0", "@ethersproject/sha2@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.6.0.tgz#364c4c11cc753bda36f31f001628706ebadb64d9" + integrity sha512-1tNWCPFLu1n3JM9t4/kytz35DkuF9MxqkGGEHNauEbaARdm2fafnOyw1s0tIQDPKF/7bkP1u3dbrmjpn5CelyA== dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" hash.js "1.1.7" -"@ethersproject/signing-key@5.5.0", "@ethersproject/signing-key@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.5.0.tgz#2aa37169ce7e01e3e80f2c14325f624c29cedbe0" - integrity sha512-5VmseH7qjtNmDdZBswavhotYbWB0bOwKIlOTSlX14rKn5c11QmJwGt4GHeo7NrL/Ycl7uo9AHvEqs5xZgFBTng== +"@ethersproject/signing-key@5.6.0", "@ethersproject/signing-key@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.6.0.tgz#4f02e3fb09e22b71e2e1d6dc4bcb5dafa69ce042" + integrity sha512-S+njkhowmLeUu/r7ir8n78OUKx63kBdMCPssePS89So1TH4hZqnWFsThEd/GiXYp9qMxVrydf7KdM9MTGPFukA== dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" bn.js "^4.11.9" elliptic "6.5.4" hash.js "1.1.7" -"@ethersproject/solidity@5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.5.0.tgz#2662eb3e5da471b85a20531e420054278362f93f" - integrity sha512-9NgZs9LhGMj6aCtHXhtmFQ4AN4sth5HuFXVvAQtzmm0jpSCNOTGtrHZJAeYTh7MBjRR8brylWZxBZR9zDStXbw== - dependencies: - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/keccak256" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/sha2" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - -"@ethersproject/strings@5.5.0", "@ethersproject/strings@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.5.0.tgz#e6784d00ec6c57710755699003bc747e98c5d549" - integrity sha512-9fy3TtF5LrX/wTrBaT8FGE6TDJyVjOvXynXJz5MT5azq+E6D92zuKNx7i29sWW2FjVOaWjAsiZ1ZWznuduTIIQ== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/constants" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - -"@ethersproject/transactions@5.5.0", "@ethersproject/transactions@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.5.0.tgz#7e9bf72e97bcdf69db34fe0d59e2f4203c7a2908" - integrity sha512-9RZYSKX26KfzEd/1eqvv8pLauCKzDTub0Ko4LfIgaERvRuwyaNV78mJs7cpIgZaDl6RJui4o49lHwwCM0526zA== - dependencies: - "@ethersproject/address" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/constants" "^5.5.0" - "@ethersproject/keccak256" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/rlp" "^5.5.0" - "@ethersproject/signing-key" "^5.5.0" - -"@ethersproject/units@5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.5.0.tgz#104d02db5b5dc42cc672cc4587bafb87a95ee45e" - integrity sha512-7+DpjiZk4v6wrikj+TCyWWa9dXLNU73tSTa7n0TSJDxkYbV3Yf1eRh9ToMLlZtuctNYu9RDNNy2USq3AdqSbag== - dependencies: - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/constants" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - -"@ethersproject/wallet@5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.5.0.tgz#322a10527a440ece593980dca6182f17d54eae75" - integrity sha512-Mlu13hIctSYaZmUOo7r2PhNSd8eaMPVXe1wxrz4w4FCE4tDYBywDH+bAR1Xz2ADyXGwqYMwstzTrtUVIsKDO0Q== - dependencies: - "@ethersproject/abstract-provider" "^5.5.0" - "@ethersproject/abstract-signer" "^5.5.0" - "@ethersproject/address" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/hash" "^5.5.0" - "@ethersproject/hdnode" "^5.5.0" - "@ethersproject/json-wallets" "^5.5.0" - "@ethersproject/keccak256" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/random" "^5.5.0" - "@ethersproject/signing-key" "^5.5.0" - "@ethersproject/transactions" "^5.5.0" - "@ethersproject/wordlists" "^5.5.0" - -"@ethersproject/web@5.5.1", "@ethersproject/web@^5.5.0": - version "5.5.1" - resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.5.1.tgz#cfcc4a074a6936c657878ac58917a61341681316" - integrity sha512-olvLvc1CB12sREc1ROPSHTdFCdvMh0J5GSJYiQg2D0hdD4QmJDy8QYDb1CvoqD/bF1c++aeKv2sR5uduuG9dQg== - dependencies: - "@ethersproject/base64" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - -"@ethersproject/wordlists@5.5.0", "@ethersproject/wordlists@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.5.0.tgz#aac74963aa43e643638e5172353d931b347d584f" - integrity sha512-bL0UTReWDiaQJJYOC9sh/XcRu/9i2jMrzf8VLRmPKx58ckSlOJiohODkECCO50dtLZHcGU6MLXQ4OOrgBwP77Q== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/hash" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/strings" "^5.5.0" +"@ethersproject/solidity@5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.6.0.tgz#64657362a596bf7f5630bdc921c07dd78df06dc3" + integrity sha512-YwF52vTNd50kjDzqKaoNNbC/r9kMDPq3YzDWmsjFTRBcIF1y4JCQJ8gB30wsTfHbaxgxelI5BfxQSxD/PbJOww== + dependencies: + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/keccak256" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/sha2" "^5.6.0" + "@ethersproject/strings" "^5.6.0" + +"@ethersproject/strings@5.6.0", "@ethersproject/strings@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.6.0.tgz#9891b26709153d996bf1303d39a7f4bc047878fd" + integrity sha512-uv10vTtLTZqrJuqBZR862ZQjTIa724wGPWQqZrofaPI/kUsf53TBG0I0D+hQ1qyNtllbNzaW+PDPHHUI6/65Mg== + dependencies: + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/constants" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/transactions@5.6.0", "@ethersproject/transactions@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.6.0.tgz#4b594d73a868ef6e1529a2f8f94a785e6791ae4e" + integrity sha512-4HX+VOhNjXHZyGzER6E/LVI2i6lf9ejYeWD6l4g50AdmimyuStKc39kvKf1bXWQMg7QNVh+uC7dYwtaZ02IXeg== + dependencies: + "@ethersproject/address" "^5.6.0" + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/constants" "^5.6.0" + "@ethersproject/keccak256" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/rlp" "^5.6.0" + "@ethersproject/signing-key" "^5.6.0" + +"@ethersproject/units@5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/units/-/units-5.6.0.tgz#e5cbb1906988f5740254a21b9ded6bd51e826d9c" + integrity sha512-tig9x0Qmh8qbo1w8/6tmtyrm/QQRviBh389EQ+d8fP4wDsBrJBf08oZfoiz1/uenKK9M78yAP4PoR7SsVoTjsw== + dependencies: + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/constants" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/wallet@5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.6.0.tgz#33d11a806d783864208f348709a5a3badac8e22a" + integrity sha512-qMlSdOSTyp0MBeE+r7SUhr1jjDlC1zAXB8VD84hCnpijPQiSNbxr6GdiLXxpUs8UKzkDiNYYC5DRI3MZr+n+tg== + dependencies: + "@ethersproject/abstract-provider" "^5.6.0" + "@ethersproject/abstract-signer" "^5.6.0" + "@ethersproject/address" "^5.6.0" + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/hash" "^5.6.0" + "@ethersproject/hdnode" "^5.6.0" + "@ethersproject/json-wallets" "^5.6.0" + "@ethersproject/keccak256" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.0" + "@ethersproject/signing-key" "^5.6.0" + "@ethersproject/transactions" "^5.6.0" + "@ethersproject/wordlists" "^5.6.0" + +"@ethersproject/web@5.6.0", "@ethersproject/web@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/web/-/web-5.6.0.tgz#4bf8b3cbc17055027e1a5dd3c357e37474eaaeb8" + integrity sha512-G/XHj0hV1FxI2teHRfCGvfBUHFmU+YOSbCxlAMqJklxSa7QMiHFQfAxvwY2PFqgvdkxEKwRNr/eCjfAPEm2Ctg== + dependencies: + "@ethersproject/base64" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.0" + +"@ethersproject/wordlists@5.6.0", "@ethersproject/wordlists@^5.6.0": + version "5.6.0" + resolved "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.6.0.tgz#79e62c5276e091d8575f6930ba01a29218ded032" + integrity sha512-q0bxNBfIX3fUuAo9OmjlEYxP40IB8ABgb7HjEZCL5IKubzV3j30CWi2rqQbjTS2HfoyQbfINoKcTVWP4ejwR7Q== + dependencies: + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/hash" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.0" "@extend-chrome/messages@^1.2.2": version "1.2.2" - resolved "https://registry.yarnpkg.com/@extend-chrome/messages/-/messages-1.2.2.tgz#7d4eb446a6527ee922692fbaada90b28e03e3e7a" + resolved "https://registry.npmjs.org/@extend-chrome/messages/-/messages-1.2.2.tgz#7d4eb446a6527ee922692fbaada90b28e03e3e7a" integrity sha512-1VyUCT+1jewkm7cVBE5fMrrazxuL5QrmCOg2azmItBpiTqwmV/XxhGDQAtfsT4i24xB4gwL0s7+6PpEPec+1mw== dependencies: "@types/chrome" "0.0.99" @@ -1614,14 +1436,14 @@ rxjs "^6.5.4 || ^7.1.0" "@gar/promisify@^1.0.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.2.tgz#30aa825f11d438671d585bd44e7fd564535fc210" - integrity sha512-82cpyJyKRoQoRi+14ibCeGPu0CwypgtBAdBhq1WfvagpCZNKqwXbKwXllYSMG91DhmG4jt9gN8eP6lGOtozuaw== + version "1.1.3" + resolved "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" + integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== "@humanwhocodes/config-array@^0.9.2": - version "0.9.2" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.9.2.tgz#68be55c737023009dfc5fe245d51181bb6476914" - integrity sha512-UXOuFCGcwciWckOpmfKDq/GyhlTf9pN/BzG//x8p8zTOFEcGuA68ANXheFS0AGvy3qgZqLBUkMs7hqzqCKOVwA== + version "0.9.5" + resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz#2cbaf9a89460da24b5ca6531b8bbfc23e1df50c7" + integrity sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw== dependencies: "@humanwhocodes/object-schema" "^1.2.1" debug "^4.1.1" @@ -1629,17 +1451,17 @@ "@humanwhocodes/object-schema@^1.2.1": version "1.2.1" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" + resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== "@hutson/parse-repository-url@^3.0.0": version "3.0.2" - resolved "https://registry.yarnpkg.com/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz#98c23c950a3d9b6c8f0daed06da6c3af06981340" + resolved "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz#98c23c950a3d9b6c8f0daed06da6c3af06981340" integrity sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q== "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + resolved "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== dependencies: camelcase "^5.3.1" @@ -1650,12 +1472,12 @@ "@istanbuljs/schema@^0.1.2": version "0.1.3" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== "@jest/console@^27.5.1": version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.5.1.tgz#260fe7239602fe5130a94f1aa386eff54b014bba" + resolved "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz#260fe7239602fe5130a94f1aa386eff54b014bba" integrity sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg== dependencies: "@jest/types" "^27.5.1" @@ -1667,7 +1489,7 @@ "@jest/core@^27.5.1": version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.5.1.tgz#267ac5f704e09dc52de2922cbf3af9edcd64b626" + resolved "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz#267ac5f704e09dc52de2922cbf3af9edcd64b626" integrity sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ== dependencies: "@jest/console" "^27.5.1" @@ -1701,7 +1523,7 @@ "@jest/environment@^27.5.1": version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.5.1.tgz#d7425820511fe7158abbecc010140c3fd3be9c74" + resolved "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz#d7425820511fe7158abbecc010140c3fd3be9c74" integrity sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA== dependencies: "@jest/fake-timers" "^27.5.1" @@ -1711,7 +1533,7 @@ "@jest/fake-timers@^27.5.1": version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.5.1.tgz#76979745ce0579c8a94a4678af7a748eda8ada74" + resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz#76979745ce0579c8a94a4678af7a748eda8ada74" integrity sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ== dependencies: "@jest/types" "^27.5.1" @@ -1723,7 +1545,7 @@ "@jest/globals@^27.5.1": version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.5.1.tgz#7ac06ce57ab966566c7963431cef458434601b2b" + resolved "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz#7ac06ce57ab966566c7963431cef458434601b2b" integrity sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q== dependencies: "@jest/environment" "^27.5.1" @@ -1732,7 +1554,7 @@ "@jest/reporters@^27.5.1": version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.5.1.tgz#ceda7be96170b03c923c37987b64015812ffec04" + resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz#ceda7be96170b03c923c37987b64015812ffec04" integrity sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw== dependencies: "@bcoe/v8-coverage" "^0.2.3" @@ -1763,7 +1585,7 @@ "@jest/source-map@^27.5.1": version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.5.1.tgz#6608391e465add4205eae073b55e7f279e04e8cf" + resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz#6608391e465add4205eae073b55e7f279e04e8cf" integrity sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg== dependencies: callsites "^3.0.0" @@ -1772,7 +1594,7 @@ "@jest/test-result@^27.5.1": version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.5.1.tgz#56a6585fa80f7cdab72b8c5fc2e871d03832f5bb" + resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz#56a6585fa80f7cdab72b8c5fc2e871d03832f5bb" integrity sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag== dependencies: "@jest/console" "^27.5.1" @@ -1782,7 +1604,7 @@ "@jest/test-sequencer@^27.5.1": version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz#4057e0e9cea4439e544c6353c6affe58d095745b" + resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz#4057e0e9cea4439e544c6353c6affe58d095745b" integrity sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ== dependencies: "@jest/test-result" "^27.5.1" @@ -1792,7 +1614,7 @@ "@jest/transform@^27.5.1": version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.5.1.tgz#6c3501dcc00c4c08915f292a600ece5ecfe1f409" + resolved "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz#6c3501dcc00c4c08915f292a600ece5ecfe1f409" integrity sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw== dependencies: "@babel/core" "^7.1.0" @@ -1813,7 +1635,7 @@ "@jest/types@^27.5.1": version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" + resolved "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" integrity sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" @@ -1824,17 +1646,17 @@ "@jridgewell/resolve-uri@^3.0.3": version "3.0.5" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz#68eb521368db76d040a6315cdb24bf2483037b9c" + resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz#68eb521368db76d040a6315cdb24bf2483037b9c" integrity sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew== "@jridgewell/sourcemap-codec@^1.4.10": version "1.4.11" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz#771a1d8d744eeb71b6adb35808e1a6c7b9b8c8ec" + resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz#771a1d8d744eeb71b6adb35808e1a6c7b9b8c8ec" integrity sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg== "@jridgewell/trace-mapping@^0.3.0": version "0.3.4" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz#f6a0832dffd5b8a6aaa633b7d9f8e8e94c83a0c3" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz#f6a0832dffd5b8a6aaa633b7d9f8e8e94c83a0c3" integrity sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ== dependencies: "@jridgewell/resolve-uri" "^3.0.3" @@ -1842,7 +1664,7 @@ "@lerna/add@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/add/-/add-4.0.0.tgz#c36f57d132502a57b9e7058d1548b7a565ef183f" + resolved "https://registry.npmjs.org/@lerna/add/-/add-4.0.0.tgz#c36f57d132502a57b9e7058d1548b7a565ef183f" integrity sha512-cpmAH1iS3k8JBxNvnMqrGTTjbY/ZAiKa1ChJzFevMYY3eeqbvhsBKnBcxjRXtdrJ6bd3dCQM+ZtK+0i682Fhng== dependencies: "@lerna/bootstrap" "4.0.0" @@ -1858,7 +1680,7 @@ "@lerna/bootstrap@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/bootstrap/-/bootstrap-4.0.0.tgz#5f5c5e2c6cfc8fcec50cb2fbe569a8c607101891" + resolved "https://registry.npmjs.org/@lerna/bootstrap/-/bootstrap-4.0.0.tgz#5f5c5e2c6cfc8fcec50cb2fbe569a8c607101891" integrity sha512-RkS7UbeM2vu+kJnHzxNRCLvoOP9yGNgkzRdy4UV2hNalD7EP41bLvRVOwRYQ7fhc2QcbhnKNdOBihYRL0LcKtw== dependencies: "@lerna/command" "4.0.0" @@ -1886,7 +1708,7 @@ "@lerna/changed@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/changed/-/changed-4.0.0.tgz#b9fc76cea39b9292a6cd263f03eb57af85c9270b" + resolved "https://registry.npmjs.org/@lerna/changed/-/changed-4.0.0.tgz#b9fc76cea39b9292a6cd263f03eb57af85c9270b" integrity sha512-cD+KuPRp6qiPOD+BO6S6SN5cARspIaWSOqGBpGnYzLb4uWT8Vk4JzKyYtc8ym1DIwyoFXHosXt8+GDAgR8QrgQ== dependencies: "@lerna/collect-updates" "4.0.0" @@ -1896,7 +1718,7 @@ "@lerna/check-working-tree@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/check-working-tree/-/check-working-tree-4.0.0.tgz#257e36a602c00142e76082a19358e3e1ae8dbd58" + resolved "https://registry.npmjs.org/@lerna/check-working-tree/-/check-working-tree-4.0.0.tgz#257e36a602c00142e76082a19358e3e1ae8dbd58" integrity sha512-/++bxM43jYJCshBiKP5cRlCTwSJdRSxVmcDAXM+1oUewlZJVSVlnks5eO0uLxokVFvLhHlC5kHMc7gbVFPHv6Q== dependencies: "@lerna/collect-uncommitted" "4.0.0" @@ -1905,7 +1727,7 @@ "@lerna/child-process@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/child-process/-/child-process-4.0.0.tgz#341b96a57dffbd9705646d316e231df6fa4df6e1" + resolved "https://registry.npmjs.org/@lerna/child-process/-/child-process-4.0.0.tgz#341b96a57dffbd9705646d316e231df6fa4df6e1" integrity sha512-XtCnmCT9eyVsUUHx6y/CTBYdV9g2Cr/VxyseTWBgfIur92/YKClfEtJTbOh94jRT62hlKLqSvux/UhxXVh613Q== dependencies: chalk "^4.1.0" @@ -1914,7 +1736,7 @@ "@lerna/clean@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/clean/-/clean-4.0.0.tgz#8f778b6f2617aa2a936a6b5e085ae62498e57dc5" + resolved "https://registry.npmjs.org/@lerna/clean/-/clean-4.0.0.tgz#8f778b6f2617aa2a936a6b5e085ae62498e57dc5" integrity sha512-uugG2iN9k45ITx2jtd8nEOoAtca8hNlDCUM0N3lFgU/b1mEQYAPRkqr1qs4FLRl/Y50ZJ41wUz1eazS+d/0osA== dependencies: "@lerna/command" "4.0.0" @@ -1928,7 +1750,7 @@ "@lerna/cli@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/cli/-/cli-4.0.0.tgz#8eabd334558836c1664df23f19acb95e98b5bbf3" + resolved "https://registry.npmjs.org/@lerna/cli/-/cli-4.0.0.tgz#8eabd334558836c1664df23f19acb95e98b5bbf3" integrity sha512-Neaw3GzFrwZiRZv2g7g6NwFjs3er1vhraIniEs0jjVLPMNC4eata0na3GfE5yibkM/9d3gZdmihhZdZ3EBdvYA== dependencies: "@lerna/global-options" "4.0.0" @@ -1938,7 +1760,7 @@ "@lerna/collect-uncommitted@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/collect-uncommitted/-/collect-uncommitted-4.0.0.tgz#855cd64612969371cfc2453b90593053ff1ba779" + resolved "https://registry.npmjs.org/@lerna/collect-uncommitted/-/collect-uncommitted-4.0.0.tgz#855cd64612969371cfc2453b90593053ff1ba779" integrity sha512-ufSTfHZzbx69YNj7KXQ3o66V4RC76ffOjwLX0q/ab//61bObJ41n03SiQEhSlmpP+gmFbTJ3/7pTe04AHX9m/g== dependencies: "@lerna/child-process" "4.0.0" @@ -1947,7 +1769,7 @@ "@lerna/collect-updates@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/collect-updates/-/collect-updates-4.0.0.tgz#8e208b1bafd98a372ff1177f7a5e288f6bea8041" + resolved "https://registry.npmjs.org/@lerna/collect-updates/-/collect-updates-4.0.0.tgz#8e208b1bafd98a372ff1177f7a5e288f6bea8041" integrity sha512-bnNGpaj4zuxsEkyaCZLka9s7nMs58uZoxrRIPJ+nrmrZYp1V5rrd+7/NYTuunOhY2ug1sTBvTAxj3NZQ+JKnOw== dependencies: "@lerna/child-process" "4.0.0" @@ -1958,7 +1780,7 @@ "@lerna/command@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/command/-/command-4.0.0.tgz#991c7971df8f5bf6ae6e42c808869a55361c1b98" + resolved "https://registry.npmjs.org/@lerna/command/-/command-4.0.0.tgz#991c7971df8f5bf6ae6e42c808869a55361c1b98" integrity sha512-LM9g3rt5FsPNFqIHUeRwWXLNHJ5NKzOwmVKZ8anSp4e1SPrv2HNc1V02/9QyDDZK/w+5POXH5lxZUI1CHaOK/A== dependencies: "@lerna/child-process" "4.0.0" @@ -1974,7 +1796,7 @@ "@lerna/conventional-commits@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/conventional-commits/-/conventional-commits-4.0.0.tgz#660fb2c7b718cb942ead70110df61f18c6f99750" + resolved "https://registry.npmjs.org/@lerna/conventional-commits/-/conventional-commits-4.0.0.tgz#660fb2c7b718cb942ead70110df61f18c6f99750" integrity sha512-CSUQRjJHFrH8eBn7+wegZLV3OrNc0Y1FehYfYGhjLE2SIfpCL4bmfu/ViYuHh9YjwHaA+4SX6d3hR+xkeseKmw== dependencies: "@lerna/validation-error" "4.0.0" @@ -1991,7 +1813,7 @@ "@lerna/create-symlink@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/create-symlink/-/create-symlink-4.0.0.tgz#8c5317ce5ae89f67825443bd7651bf4121786228" + resolved "https://registry.npmjs.org/@lerna/create-symlink/-/create-symlink-4.0.0.tgz#8c5317ce5ae89f67825443bd7651bf4121786228" integrity sha512-I0phtKJJdafUiDwm7BBlEUOtogmu8+taxq6PtIrxZbllV9hWg59qkpuIsiFp+no7nfRVuaasNYHwNUhDAVQBig== dependencies: cmd-shim "^4.1.0" @@ -2000,7 +1822,7 @@ "@lerna/create@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/create/-/create-4.0.0.tgz#b6947e9b5dfb6530321952998948c3e63d64d730" + resolved "https://registry.npmjs.org/@lerna/create/-/create-4.0.0.tgz#b6947e9b5dfb6530321952998948c3e63d64d730" integrity sha512-mVOB1niKByEUfxlbKTM1UNECWAjwUdiioIbRQZEeEabtjCL69r9rscIsjlGyhGWCfsdAG5wfq4t47nlDXdLLag== dependencies: "@lerna/child-process" "4.0.0" @@ -2024,7 +1846,7 @@ "@lerna/describe-ref@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/describe-ref/-/describe-ref-4.0.0.tgz#53c53b4ea65fdceffa072a62bfebe6772c45d9ec" + resolved "https://registry.npmjs.org/@lerna/describe-ref/-/describe-ref-4.0.0.tgz#53c53b4ea65fdceffa072a62bfebe6772c45d9ec" integrity sha512-eTU5+xC4C5Gcgz+Ey4Qiw9nV2B4JJbMulsYJMW8QjGcGh8zudib7Sduj6urgZXUYNyhYpRs+teci9M2J8u+UvQ== dependencies: "@lerna/child-process" "4.0.0" @@ -2032,7 +1854,7 @@ "@lerna/diff@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/diff/-/diff-4.0.0.tgz#6d3071817aaa4205a07bf77cfc6e932796d48b92" + resolved "https://registry.npmjs.org/@lerna/diff/-/diff-4.0.0.tgz#6d3071817aaa4205a07bf77cfc6e932796d48b92" integrity sha512-jYPKprQVg41+MUMxx6cwtqsNm0Yxx9GDEwdiPLwcUTFx+/qKCEwifKNJ1oGIPBxyEHX2PFCOjkK39lHoj2qiag== dependencies: "@lerna/child-process" "4.0.0" @@ -2042,7 +1864,7 @@ "@lerna/exec@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/exec/-/exec-4.0.0.tgz#eb6cb95cb92d42590e9e2d628fcaf4719d4a8be6" + resolved "https://registry.npmjs.org/@lerna/exec/-/exec-4.0.0.tgz#eb6cb95cb92d42590e9e2d628fcaf4719d4a8be6" integrity sha512-VGXtL/b/JfY84NB98VWZpIExfhLOzy0ozm/0XaS4a2SmkAJc5CeUfrhvHxxkxiTBLkU+iVQUyYEoAT0ulQ8PCw== dependencies: "@lerna/child-process" "4.0.0" @@ -2055,7 +1877,7 @@ "@lerna/filter-options@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/filter-options/-/filter-options-4.0.0.tgz#ac94cc515d7fa3b47e2f7d74deddeabb1de5e9e6" + resolved "https://registry.npmjs.org/@lerna/filter-options/-/filter-options-4.0.0.tgz#ac94cc515d7fa3b47e2f7d74deddeabb1de5e9e6" integrity sha512-vV2ANOeZhOqM0rzXnYcFFCJ/kBWy/3OA58irXih9AMTAlQLymWAK0akWybl++sUJ4HB9Hx12TOqaXbYS2NM5uw== dependencies: "@lerna/collect-updates" "4.0.0" @@ -2065,7 +1887,7 @@ "@lerna/filter-packages@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/filter-packages/-/filter-packages-4.0.0.tgz#b1f70d70e1de9cdd36a4e50caa0ac501f8d012f2" + resolved "https://registry.npmjs.org/@lerna/filter-packages/-/filter-packages-4.0.0.tgz#b1f70d70e1de9cdd36a4e50caa0ac501f8d012f2" integrity sha512-+4AJIkK7iIiOaqCiVTYJxh/I9qikk4XjNQLhE3kixaqgMuHl1NQ99qXRR0OZqAWB9mh8Z1HA9bM5K1HZLBTOqA== dependencies: "@lerna/validation-error" "4.0.0" @@ -2074,14 +1896,14 @@ "@lerna/get-npm-exec-opts@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-4.0.0.tgz#dc955be94a4ae75c374ef9bce91320887d34608f" + resolved "https://registry.npmjs.org/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-4.0.0.tgz#dc955be94a4ae75c374ef9bce91320887d34608f" integrity sha512-yvmkerU31CTWS2c7DvmAWmZVeclPBqI7gPVr5VATUKNWJ/zmVcU4PqbYoLu92I9Qc4gY1TuUplMNdNuZTSL7IQ== dependencies: npmlog "^4.1.2" "@lerna/get-packed@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/get-packed/-/get-packed-4.0.0.tgz#0989d61624ac1f97e393bdad2137c49cd7a37823" + resolved "https://registry.npmjs.org/@lerna/get-packed/-/get-packed-4.0.0.tgz#0989d61624ac1f97e393bdad2137c49cd7a37823" integrity sha512-rfWONRsEIGyPJTxFzC8ECb3ZbsDXJbfqWYyeeQQDrJRPnEJErlltRLPLgC2QWbxFgFPsoDLeQmFHJnf0iDfd8w== dependencies: fs-extra "^9.1.0" @@ -2090,7 +1912,7 @@ "@lerna/github-client@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/github-client/-/github-client-4.0.0.tgz#2ced67721363ef70f8e12ffafce4410918f4a8a4" + resolved "https://registry.npmjs.org/@lerna/github-client/-/github-client-4.0.0.tgz#2ced67721363ef70f8e12ffafce4410918f4a8a4" integrity sha512-2jhsldZtTKXYUBnOm23Lb0Fx8G4qfSXF9y7UpyUgWUj+YZYd+cFxSuorwQIgk5P4XXrtVhsUesIsli+BYSThiw== dependencies: "@lerna/child-process" "4.0.0" @@ -2101,7 +1923,7 @@ "@lerna/gitlab-client@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/gitlab-client/-/gitlab-client-4.0.0.tgz#00dad73379c7b38951d4b4ded043504c14e2b67d" + resolved "https://registry.npmjs.org/@lerna/gitlab-client/-/gitlab-client-4.0.0.tgz#00dad73379c7b38951d4b4ded043504c14e2b67d" integrity sha512-OMUpGSkeDWFf7BxGHlkbb35T7YHqVFCwBPSIR6wRsszY8PAzCYahtH3IaJzEJyUg6vmZsNl0FSr3pdA2skhxqA== dependencies: node-fetch "^2.6.1" @@ -2110,12 +1932,12 @@ "@lerna/global-options@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/global-options/-/global-options-4.0.0.tgz#c7d8b0de6a01d8a845e2621ea89e7f60f18c6a5f" + resolved "https://registry.npmjs.org/@lerna/global-options/-/global-options-4.0.0.tgz#c7d8b0de6a01d8a845e2621ea89e7f60f18c6a5f" integrity sha512-TRMR8afAHxuYBHK7F++Ogop2a82xQjoGna1dvPOY6ltj/pEx59pdgcJfYcynYqMkFIk8bhLJJN9/ndIfX29FTQ== "@lerna/has-npm-version@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/has-npm-version/-/has-npm-version-4.0.0.tgz#d3fc3292c545eb28bd493b36e6237cf0279f631c" + resolved "https://registry.npmjs.org/@lerna/has-npm-version/-/has-npm-version-4.0.0.tgz#d3fc3292c545eb28bd493b36e6237cf0279f631c" integrity sha512-LQ3U6XFH8ZmLCsvsgq1zNDqka0Xzjq5ibVN+igAI5ccRWNaUsE/OcmsyMr50xAtNQMYMzmpw5GVLAivT2/YzCg== dependencies: "@lerna/child-process" "4.0.0" @@ -2123,7 +1945,7 @@ "@lerna/import@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/import/-/import-4.0.0.tgz#bde656c4a451fa87ae41733ff8a8da60547c5465" + resolved "https://registry.npmjs.org/@lerna/import/-/import-4.0.0.tgz#bde656c4a451fa87ae41733ff8a8da60547c5465" integrity sha512-FaIhd+4aiBousKNqC7TX1Uhe97eNKf5/SC7c5WZANVWtC7aBWdmswwDt3usrzCNpj6/Wwr9EtEbYROzxKH8ffg== dependencies: "@lerna/child-process" "4.0.0" @@ -2137,7 +1959,7 @@ "@lerna/info@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/info/-/info-4.0.0.tgz#b9fb0e479d60efe1623603958a831a88b1d7f1fc" + resolved "https://registry.npmjs.org/@lerna/info/-/info-4.0.0.tgz#b9fb0e479d60efe1623603958a831a88b1d7f1fc" integrity sha512-8Uboa12kaCSZEn4XRfPz5KU9XXoexSPS4oeYGj76s2UQb1O1GdnEyfjyNWoUl1KlJ2i/8nxUskpXIftoFYH0/Q== dependencies: "@lerna/command" "4.0.0" @@ -2146,7 +1968,7 @@ "@lerna/init@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/init/-/init-4.0.0.tgz#dadff67e6dfb981e8ccbe0e6a310e837962f6c7a" + resolved "https://registry.npmjs.org/@lerna/init/-/init-4.0.0.tgz#dadff67e6dfb981e8ccbe0e6a310e837962f6c7a" integrity sha512-wY6kygop0BCXupzWj5eLvTUqdR7vIAm0OgyV9WHpMYQGfs1V22jhztt8mtjCloD/O0nEe4tJhdG62XU5aYmPNQ== dependencies: "@lerna/child-process" "4.0.0" @@ -2157,7 +1979,7 @@ "@lerna/link@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/link/-/link-4.0.0.tgz#c3a38aabd44279d714e90f2451e31b63f0fb65ba" + resolved "https://registry.npmjs.org/@lerna/link/-/link-4.0.0.tgz#c3a38aabd44279d714e90f2451e31b63f0fb65ba" integrity sha512-KlvPi7XTAcVOByfaLlOeYOfkkDcd+bejpHMCd1KcArcFTwijOwXOVi24DYomIeHvy6HsX/IUquJ4PPUJIeB4+w== dependencies: "@lerna/command" "4.0.0" @@ -2168,7 +1990,7 @@ "@lerna/list@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/list/-/list-4.0.0.tgz#24b4e6995bd73f81c556793fe502b847efd9d1d7" + resolved "https://registry.npmjs.org/@lerna/list/-/list-4.0.0.tgz#24b4e6995bd73f81c556793fe502b847efd9d1d7" integrity sha512-L2B5m3P+U4Bif5PultR4TI+KtW+SArwq1i75QZ78mRYxPc0U/piau1DbLOmwrdqr99wzM49t0Dlvl6twd7GHFg== dependencies: "@lerna/command" "4.0.0" @@ -2178,7 +2000,7 @@ "@lerna/listable@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/listable/-/listable-4.0.0.tgz#d00d6cb4809b403f2b0374fc521a78e318b01214" + resolved "https://registry.npmjs.org/@lerna/listable/-/listable-4.0.0.tgz#d00d6cb4809b403f2b0374fc521a78e318b01214" integrity sha512-/rPOSDKsOHs5/PBLINZOkRIX1joOXUXEtyUs5DHLM8q6/RP668x/1lFhw6Dx7/U+L0+tbkpGtZ1Yt0LewCLgeQ== dependencies: "@lerna/query-graph" "4.0.0" @@ -2187,7 +2009,7 @@ "@lerna/log-packed@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/log-packed/-/log-packed-4.0.0.tgz#95168fe2e26ac6a71e42f4be857519b77e57a09f" + resolved "https://registry.npmjs.org/@lerna/log-packed/-/log-packed-4.0.0.tgz#95168fe2e26ac6a71e42f4be857519b77e57a09f" integrity sha512-+dpCiWbdzgMAtpajLToy9PO713IHoE6GV/aizXycAyA07QlqnkpaBNZ8DW84gHdM1j79TWockGJo9PybVhrrZQ== dependencies: byte-size "^7.0.0" @@ -2197,7 +2019,7 @@ "@lerna/npm-conf@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-conf/-/npm-conf-4.0.0.tgz#b259fd1e1cee2bf5402b236e770140ff9ade7fd2" + resolved "https://registry.npmjs.org/@lerna/npm-conf/-/npm-conf-4.0.0.tgz#b259fd1e1cee2bf5402b236e770140ff9ade7fd2" integrity sha512-uS7H02yQNq3oejgjxAxqq/jhwGEE0W0ntr8vM3EfpCW1F/wZruwQw+7bleJQ9vUBjmdXST//tk8mXzr5+JXCfw== dependencies: config-chain "^1.1.12" @@ -2205,7 +2027,7 @@ "@lerna/npm-dist-tag@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-dist-tag/-/npm-dist-tag-4.0.0.tgz#d1e99b4eccd3414142f0548ad331bf2d53f3257a" + resolved "https://registry.npmjs.org/@lerna/npm-dist-tag/-/npm-dist-tag-4.0.0.tgz#d1e99b4eccd3414142f0548ad331bf2d53f3257a" integrity sha512-F20sg28FMYTgXqEQihgoqSfwmq+Id3zT23CnOwD+XQMPSy9IzyLf1fFVH319vXIw6NF6Pgs4JZN2Qty6/CQXGw== dependencies: "@lerna/otplease" "4.0.0" @@ -2215,7 +2037,7 @@ "@lerna/npm-install@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-install/-/npm-install-4.0.0.tgz#31180be3ab3b7d1818a1a0c206aec156b7094c78" + resolved "https://registry.npmjs.org/@lerna/npm-install/-/npm-install-4.0.0.tgz#31180be3ab3b7d1818a1a0c206aec156b7094c78" integrity sha512-aKNxq2j3bCH3eXl3Fmu4D54s/YLL9WSwV8W7X2O25r98wzrO38AUN6AB9EtmAx+LV/SP15et7Yueg9vSaanRWg== dependencies: "@lerna/child-process" "4.0.0" @@ -2228,7 +2050,7 @@ "@lerna/npm-publish@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-publish/-/npm-publish-4.0.0.tgz#84eb62e876fe949ae1fd62c60804423dbc2c4472" + resolved "https://registry.npmjs.org/@lerna/npm-publish/-/npm-publish-4.0.0.tgz#84eb62e876fe949ae1fd62c60804423dbc2c4472" integrity sha512-vQb7yAPRo5G5r77DRjHITc9piR9gvEKWrmfCH7wkfBnGWEqu7n8/4bFQ7lhnkujvc8RXOsYpvbMQkNfkYibD/w== dependencies: "@lerna/otplease" "4.0.0" @@ -2242,7 +2064,7 @@ "@lerna/npm-run-script@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-run-script/-/npm-run-script-4.0.0.tgz#dfebf4f4601442e7c0b5214f9fb0d96c9350743b" + resolved "https://registry.npmjs.org/@lerna/npm-run-script/-/npm-run-script-4.0.0.tgz#dfebf4f4601442e7c0b5214f9fb0d96c9350743b" integrity sha512-Jmyh9/IwXJjOXqKfIgtxi0bxi1pUeKe5bD3S81tkcy+kyng/GNj9WSqD5ZggoNP2NP//s4CLDAtUYLdP7CU9rA== dependencies: "@lerna/child-process" "4.0.0" @@ -2251,21 +2073,21 @@ "@lerna/otplease@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/otplease/-/otplease-4.0.0.tgz#84972eb43448f8a1077435ba1c5e59233b725850" + resolved "https://registry.npmjs.org/@lerna/otplease/-/otplease-4.0.0.tgz#84972eb43448f8a1077435ba1c5e59233b725850" integrity sha512-Sgzbqdk1GH4psNiT6hk+BhjOfIr/5KhGBk86CEfHNJTk9BK4aZYyJD4lpDbDdMjIV4g03G7pYoqHzH765T4fxw== dependencies: "@lerna/prompt" "4.0.0" "@lerna/output@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/output/-/output-4.0.0.tgz#b1d72215c0e35483e4f3e9994debc82c621851f2" + resolved "https://registry.npmjs.org/@lerna/output/-/output-4.0.0.tgz#b1d72215c0e35483e4f3e9994debc82c621851f2" integrity sha512-Un1sHtO1AD7buDQrpnaYTi2EG6sLF+KOPEAMxeUYG5qG3khTs2Zgzq5WE3dt2N/bKh7naESt20JjIW6tBELP0w== dependencies: npmlog "^4.1.2" "@lerna/pack-directory@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/pack-directory/-/pack-directory-4.0.0.tgz#8b617db95d20792f043aaaa13a9ccc0e04cb4c74" + resolved "https://registry.npmjs.org/@lerna/pack-directory/-/pack-directory-4.0.0.tgz#8b617db95d20792f043aaaa13a9ccc0e04cb4c74" integrity sha512-NJrmZNmBHS+5aM+T8N6FVbaKFScVqKlQFJNY2k7nsJ/uklNKsLLl6VhTQBPwMTbf6Tf7l6bcKzpy7aePuq9UiQ== dependencies: "@lerna/get-packed" "4.0.0" @@ -2278,7 +2100,7 @@ "@lerna/package-graph@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/package-graph/-/package-graph-4.0.0.tgz#16a00253a8ac810f72041481cb46bcee8d8123dd" + resolved "https://registry.npmjs.org/@lerna/package-graph/-/package-graph-4.0.0.tgz#16a00253a8ac810f72041481cb46bcee8d8123dd" integrity sha512-QED2ZCTkfXMKFoTGoccwUzjHtZMSf3UKX14A4/kYyBms9xfFsesCZ6SLI5YeySEgcul8iuIWfQFZqRw+Qrjraw== dependencies: "@lerna/prerelease-id-from-version" "4.0.0" @@ -2289,7 +2111,7 @@ "@lerna/package@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/package/-/package-4.0.0.tgz#1b4c259c4bcff45c876ee1d591a043aacbc0d6b7" + resolved "https://registry.npmjs.org/@lerna/package/-/package-4.0.0.tgz#1b4c259c4bcff45c876ee1d591a043aacbc0d6b7" integrity sha512-l0M/izok6FlyyitxiQKr+gZLVFnvxRQdNhzmQ6nRnN9dvBJWn+IxxpM+cLqGACatTnyo9LDzNTOj2Db3+s0s8Q== dependencies: load-json-file "^6.2.0" @@ -2298,14 +2120,14 @@ "@lerna/prerelease-id-from-version@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-4.0.0.tgz#c7e0676fcee1950d85630e108eddecdd5b48c916" + resolved "https://registry.npmjs.org/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-4.0.0.tgz#c7e0676fcee1950d85630e108eddecdd5b48c916" integrity sha512-GQqguzETdsYRxOSmdFZ6zDBXDErIETWOqomLERRY54f4p+tk4aJjoVdd9xKwehC9TBfIFvlRbL1V9uQGHh1opg== dependencies: semver "^7.3.4" "@lerna/profiler@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/profiler/-/profiler-4.0.0.tgz#8a53ab874522eae15d178402bff90a14071908e9" + resolved "https://registry.npmjs.org/@lerna/profiler/-/profiler-4.0.0.tgz#8a53ab874522eae15d178402bff90a14071908e9" integrity sha512-/BaEbqnVh1LgW/+qz8wCuI+obzi5/vRE8nlhjPzdEzdmWmZXuCKyWSEzAyHOJWw1ntwMiww5dZHhFQABuoFz9Q== dependencies: fs-extra "^9.1.0" @@ -2314,7 +2136,7 @@ "@lerna/project@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/project/-/project-4.0.0.tgz#ff84893935833533a74deff30c0e64ddb7f0ba6b" + resolved "https://registry.npmjs.org/@lerna/project/-/project-4.0.0.tgz#ff84893935833533a74deff30c0e64ddb7f0ba6b" integrity sha512-o0MlVbDkD5qRPkFKlBZsXZjoNTWPyuL58564nSfZJ6JYNmgAptnWPB2dQlAc7HWRZkmnC2fCkEdoU+jioPavbg== dependencies: "@lerna/package" "4.0.0" @@ -2332,7 +2154,7 @@ "@lerna/prompt@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/prompt/-/prompt-4.0.0.tgz#5ec69a803f3f0db0ad9f221dad64664d3daca41b" + resolved "https://registry.npmjs.org/@lerna/prompt/-/prompt-4.0.0.tgz#5ec69a803f3f0db0ad9f221dad64664d3daca41b" integrity sha512-4Ig46oCH1TH5M7YyTt53fT6TuaKMgqUUaqdgxvp6HP6jtdak6+amcsqB8YGz2eQnw/sdxunx84DfI9XpoLj4bQ== dependencies: inquirer "^7.3.3" @@ -2340,7 +2162,7 @@ "@lerna/publish@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/publish/-/publish-4.0.0.tgz#f67011305adeba120066a3b6d984a5bb5fceef65" + resolved "https://registry.npmjs.org/@lerna/publish/-/publish-4.0.0.tgz#f67011305adeba120066a3b6d984a5bb5fceef65" integrity sha512-K8jpqjHrChH22qtkytA5GRKIVFEtqBF6JWj1I8dWZtHs4Jywn8yB1jQ3BAMLhqmDJjWJtRck0KXhQQKzDK2UPg== dependencies: "@lerna/check-working-tree" "4.0.0" @@ -2374,21 +2196,21 @@ "@lerna/pulse-till-done@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/pulse-till-done/-/pulse-till-done-4.0.0.tgz#04bace7d483a8205c187b806bcd8be23d7bb80a3" + resolved "https://registry.npmjs.org/@lerna/pulse-till-done/-/pulse-till-done-4.0.0.tgz#04bace7d483a8205c187b806bcd8be23d7bb80a3" integrity sha512-Frb4F7QGckaybRhbF7aosLsJ5e9WuH7h0KUkjlzSByVycxY91UZgaEIVjS2oN9wQLrheLMHl6SiFY0/Pvo0Cxg== dependencies: npmlog "^4.1.2" "@lerna/query-graph@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/query-graph/-/query-graph-4.0.0.tgz#09dd1c819ac5ee3f38db23931143701f8a6eef63" + resolved "https://registry.npmjs.org/@lerna/query-graph/-/query-graph-4.0.0.tgz#09dd1c819ac5ee3f38db23931143701f8a6eef63" integrity sha512-YlP6yI3tM4WbBmL9GCmNDoeQyzcyg1e4W96y/PKMZa5GbyUvkS2+Jc2kwPD+5KcXou3wQZxSPzR3Te5OenaDdg== dependencies: "@lerna/package-graph" "4.0.0" "@lerna/resolve-symlink@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/resolve-symlink/-/resolve-symlink-4.0.0.tgz#6d006628a210c9b821964657a9e20a8c9a115e14" + resolved "https://registry.npmjs.org/@lerna/resolve-symlink/-/resolve-symlink-4.0.0.tgz#6d006628a210c9b821964657a9e20a8c9a115e14" integrity sha512-RtX8VEUzqT+uLSCohx8zgmjc6zjyRlh6i/helxtZTMmc4+6O4FS9q5LJas2uGO2wKvBlhcD6siibGt7dIC3xZA== dependencies: fs-extra "^9.1.0" @@ -2397,7 +2219,7 @@ "@lerna/rimraf-dir@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/rimraf-dir/-/rimraf-dir-4.0.0.tgz#2edf3b62d4eb0ef4e44e430f5844667d551ec25a" + resolved "https://registry.npmjs.org/@lerna/rimraf-dir/-/rimraf-dir-4.0.0.tgz#2edf3b62d4eb0ef4e44e430f5844667d551ec25a" integrity sha512-QNH9ABWk9mcMJh2/muD9iYWBk1oQd40y6oH+f3wwmVGKYU5YJD//+zMiBI13jxZRtwBx0vmBZzkBkK1dR11cBg== dependencies: "@lerna/child-process" "4.0.0" @@ -2407,7 +2229,7 @@ "@lerna/run-lifecycle@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/run-lifecycle/-/run-lifecycle-4.0.0.tgz#e648a46f9210a9bcd7c391df6844498cb5079334" + resolved "https://registry.npmjs.org/@lerna/run-lifecycle/-/run-lifecycle-4.0.0.tgz#e648a46f9210a9bcd7c391df6844498cb5079334" integrity sha512-IwxxsajjCQQEJAeAaxF8QdEixfI7eLKNm4GHhXHrgBu185JcwScFZrj9Bs+PFKxwb+gNLR4iI5rpUdY8Y0UdGQ== dependencies: "@lerna/npm-conf" "4.0.0" @@ -2416,7 +2238,7 @@ "@lerna/run-topologically@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/run-topologically/-/run-topologically-4.0.0.tgz#af846eeee1a09b0c2be0d1bfb5ef0f7b04bb1827" + resolved "https://registry.npmjs.org/@lerna/run-topologically/-/run-topologically-4.0.0.tgz#af846eeee1a09b0c2be0d1bfb5ef0f7b04bb1827" integrity sha512-EVZw9hGwo+5yp+VL94+NXRYisqgAlj0jWKWtAIynDCpghRxCE5GMO3xrQLmQgqkpUl9ZxQFpICgYv5DW4DksQA== dependencies: "@lerna/query-graph" "4.0.0" @@ -2424,7 +2246,7 @@ "@lerna/run@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/run/-/run-4.0.0.tgz#4bc7fda055a729487897c23579694f6183c91262" + resolved "https://registry.npmjs.org/@lerna/run/-/run-4.0.0.tgz#4bc7fda055a729487897c23579694f6183c91262" integrity sha512-9giulCOzlMPzcZS/6Eov6pxE9gNTyaXk0Man+iCIdGJNMrCnW7Dme0Z229WWP/UoxDKg71F2tMsVVGDiRd8fFQ== dependencies: "@lerna/command" "4.0.0" @@ -2439,7 +2261,7 @@ "@lerna/symlink-binary@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/symlink-binary/-/symlink-binary-4.0.0.tgz#21009f62d53a425f136cb4c1a32c6b2a0cc02d47" + resolved "https://registry.npmjs.org/@lerna/symlink-binary/-/symlink-binary-4.0.0.tgz#21009f62d53a425f136cb4c1a32c6b2a0cc02d47" integrity sha512-zualodWC4q1QQc1pkz969hcFeWXOsVYZC5AWVtAPTDfLl+TwM7eG/O6oP+Rr3fFowspxo6b1TQ6sYfDV6HXNWA== dependencies: "@lerna/create-symlink" "4.0.0" @@ -2449,7 +2271,7 @@ "@lerna/symlink-dependencies@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/symlink-dependencies/-/symlink-dependencies-4.0.0.tgz#8910eca084ae062642d0490d8972cf2d98e9ebbd" + resolved "https://registry.npmjs.org/@lerna/symlink-dependencies/-/symlink-dependencies-4.0.0.tgz#8910eca084ae062642d0490d8972cf2d98e9ebbd" integrity sha512-BABo0MjeUHNAe2FNGty1eantWp8u83BHSeIMPDxNq0MuW2K3CiQRaeWT3EGPAzXpGt0+hVzBrA6+OT0GPn7Yuw== dependencies: "@lerna/create-symlink" "4.0.0" @@ -2461,19 +2283,19 @@ "@lerna/timer@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/timer/-/timer-4.0.0.tgz#a52e51bfcd39bfd768988049ace7b15c1fd7a6da" + resolved "https://registry.npmjs.org/@lerna/timer/-/timer-4.0.0.tgz#a52e51bfcd39bfd768988049ace7b15c1fd7a6da" integrity sha512-WFsnlaE7SdOvjuyd05oKt8Leg3ENHICnvX3uYKKdByA+S3g+TCz38JsNs7OUZVt+ba63nC2nbXDlUnuT2Xbsfg== "@lerna/validation-error@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/validation-error/-/validation-error-4.0.0.tgz#af9d62fe8304eaa2eb9a6ba1394f9aa807026d35" + resolved "https://registry.npmjs.org/@lerna/validation-error/-/validation-error-4.0.0.tgz#af9d62fe8304eaa2eb9a6ba1394f9aa807026d35" integrity sha512-1rBOM5/koiVWlRi3V6dB863E1YzJS8v41UtsHgMr6gB2ncJ2LsQtMKlJpi3voqcgh41H8UsPXR58RrrpPpufyw== dependencies: npmlog "^4.1.2" "@lerna/version@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/version/-/version-4.0.0.tgz#532659ec6154d8a8789c5ab53878663e244e3228" + resolved "https://registry.npmjs.org/@lerna/version/-/version-4.0.0.tgz#532659ec6154d8a8789c5ab53878663e244e3228" integrity sha512-otUgiqs5W9zGWJZSCCMRV/2Zm2A9q9JwSDS7s/tlKq4mWCYriWo7+wsHEA/nPTMDyYyBO5oyZDj+3X50KDUzeA== dependencies: "@lerna/check-working-tree" "4.0.0" @@ -2505,45 +2327,45 @@ "@lerna/write-log-file@4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/write-log-file/-/write-log-file-4.0.0.tgz#18221a38a6a307d6b0a5844dd592ad53fa27091e" + resolved "https://registry.npmjs.org/@lerna/write-log-file/-/write-log-file-4.0.0.tgz#18221a38a6a307d6b0a5844dd592ad53fa27091e" integrity sha512-XRG5BloiArpXRakcnPHmEHJp+4AtnhRtpDIHSghmXD5EichI1uD73J7FgPp30mm2pDRq3FdqB0NbwSEsJ9xFQg== dependencies: npmlog "^4.1.2" write-file-atomic "^3.0.3" -"@mui/base@5.0.0-alpha.70": - version "5.0.0-alpha.70" - resolved "https://registry.yarnpkg.com/@mui/base/-/base-5.0.0-alpha.70.tgz#e280ee3b69d86034f2cff445161747940129d576" - integrity sha512-8UZWhz1JYuQnPkAbC37cl4aL1JyNWZ08wDXlp57W7fYQp5xFpBP/7p56AcWg2qG9CNJP0IlFg2Wp4md1v2l4iA== +"@mui/base@5.0.0-alpha.71": + version "5.0.0-alpha.71" + resolved "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.71.tgz#628f5ae10a8c015d61d3d1e6f04d66afc7500b90" + integrity sha512-LinacyjmZOS+roUqCyhrcbNIW7TlRf1U+15ETGwMn6biNXI9YEVgcc1Kak08CRtjM0yczxxzLWetiAjHMCVSjQ== dependencies: "@babel/runtime" "^7.17.2" "@emotion/is-prop-valid" "^1.1.2" "@mui/utils" "^5.4.4" - "@popperjs/core" "^2.4.4" + "@popperjs/core" "^2.11.2" clsx "^1.1.1" prop-types "^15.7.2" react-is "^17.0.2" "@mui/icons-material@^5.3.1": - version "5.4.4" - resolved "https://registry.yarnpkg.com/@mui/icons-material/-/icons-material-5.4.4.tgz#0dc7b4e68cbbdfc675f09f0763be1100aad910af" - integrity sha512-7zoRpjO8vsd+bPvXq6rtXu0V8Saj70X09dtTQogZmxQKabrYW3g7+Yym7SCRA7IYVF3ysz2AvdQrGD1P/sGepg== + version "5.5.0" + resolved "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.5.0.tgz#23d5f13c62c19a75b184374a6ea6ed0f8019531d" + integrity sha512-rMs5flT3INyd/m1A/x8DDlNTfHmCartX8stCuSDDMmaMV123oSwg8werJ/Hg4j1FWuVk5rE5HRY45gBf12BCGw== dependencies: "@babel/runtime" "^7.17.2" "@mui/material@^5.1.0": - version "5.4.4" - resolved "https://registry.yarnpkg.com/@mui/material/-/material-5.4.4.tgz#2652a07085bf107da590007286336640f605055e" - integrity sha512-VDJC7GzO1HTFqfMe2zwvaW/sRhABBJXFkKEv5gO3uXx7x9fdwJHQr4udU7NWZCUdOcx9Y0h3BsAILLefYq+WPw== + version "5.5.0" + resolved "https://registry.npmjs.org/@mui/material/-/material-5.5.0.tgz#e1a531cdde71019b4375e086c9ce82ca49b389c4" + integrity sha512-E12rxqLaWBrebJCxKxBtyRrzJgpPIQSCt4MUHns2Yl9gxOx4c7vDDKuks7Qc6S36wTQf+FP4aiey72Z2WKdYgQ== dependencies: "@babel/runtime" "^7.17.2" - "@mui/base" "5.0.0-alpha.70" - "@mui/system" "^5.4.4" + "@mui/base" "5.0.0-alpha.71" + "@mui/system" "^5.5.0" "@mui/types" "^7.1.2" "@mui/utils" "^5.4.4" "@types/react-transition-group" "^4.4.4" clsx "^1.1.1" - csstype "^3.0.10" + csstype "^3.0.11" hoist-non-react-statics "^3.3.2" prop-types "^15.7.2" react-is "^17.0.2" @@ -2551,7 +2373,7 @@ "@mui/private-theming@^5.4.4": version "5.4.4" - resolved "https://registry.yarnpkg.com/@mui/private-theming/-/private-theming-5.4.4.tgz#cc2b2d897888ce5d1c319adfa2c50c0063a649ab" + resolved "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.4.4.tgz#cc2b2d897888ce5d1c319adfa2c50c0063a649ab" integrity sha512-V/gxttr6736yJoU9q+4xxXsa0K/w9Hn9pg99zsOHt7i/O904w2CX5NHh5WqDXtoUzVcayLF0RB17yr6l79CE+A== dependencies: "@babel/runtime" "^7.17.2" @@ -2560,24 +2382,24 @@ "@mui/styled-engine-sc@^5.1.0": version "5.4.2" - resolved "https://registry.yarnpkg.com/@mui/styled-engine-sc/-/styled-engine-sc-5.4.2.tgz#2683a960622f3616fa1a7d58e271d16311b374b8" + resolved "https://registry.npmjs.org/@mui/styled-engine-sc/-/styled-engine-sc-5.4.2.tgz#2683a960622f3616fa1a7d58e271d16311b374b8" integrity sha512-t8h5AtHn899WzHkJXWjWcPkEG2NCmX0UZMIBEPv58rMHyJiByoYzFnA/kGVS1/oCSlDYbBlvFmfMaNalOLPp8g== dependencies: prop-types "^15.7.2" "@mui/styled-engine@^5.4.4": version "5.4.4" - resolved "https://registry.yarnpkg.com/@mui/styled-engine/-/styled-engine-5.4.4.tgz#8991b2e2dd47ae60071e7f042a5fab8e6e092e82" + resolved "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.4.4.tgz#8991b2e2dd47ae60071e7f042a5fab8e6e092e82" integrity sha512-AKx3rSgB6dmt5f7iP4K18mLFlE5/9EfJe/5EH9Pyqez8J/CPkTgYhJ/Va6qtlrcunzpui+uG/vfuf04yAZekSg== dependencies: "@babel/runtime" "^7.17.2" "@emotion/cache" "^11.7.1" prop-types "^15.7.2" -"@mui/system@^5.4.4": - version "5.4.4" - resolved "https://registry.yarnpkg.com/@mui/system/-/system-5.4.4.tgz#cd5d3d35c75594abd88708e715b5e39a8874ff51" - integrity sha512-Zjbztq2o/VRuRRCWjG44juRrPKYLQMqtQpMHmMttGu5BnvK6PAPW3WOY0r1JCAwLhbd8Kug9nyhGQYKETjo+tQ== +"@mui/system@^5.5.0": + version "5.5.0" + resolved "https://registry.npmjs.org/@mui/system/-/system-5.5.0.tgz#df7e540b12218db21a5edb16a6fa1d571d26455b" + integrity sha512-zFOfERv3Y4m5ehwTRR9cGaPuMvlD2qVXmFKC60P0Gte3aD6vYObyNriZv+mDVGlhDxZTZhxBrNPH3ns25xSFtQ== dependencies: "@babel/runtime" "^7.17.2" "@mui/private-theming" "^5.4.4" @@ -2585,17 +2407,17 @@ "@mui/types" "^7.1.2" "@mui/utils" "^5.4.4" clsx "^1.1.1" - csstype "^3.0.10" + csstype "^3.0.11" prop-types "^15.7.2" "@mui/types@^7.1.2": version "7.1.2" - resolved "https://registry.yarnpkg.com/@mui/types/-/types-7.1.2.tgz#4f3678ae77a7a3efab73b6e040469cc6df2144ac" + resolved "https://registry.npmjs.org/@mui/types/-/types-7.1.2.tgz#4f3678ae77a7a3efab73b6e040469cc6df2144ac" integrity sha512-SD7O1nVzqG+ckQpFjDhXPZjRceB8HQFHEvdLLrPhlJy4lLbwEBbxK74Tj4t6Jgk0fTvLJisuwOutrtYe9P/xBQ== "@mui/utils@^5.4.4": version "5.4.4" - resolved "https://registry.yarnpkg.com/@mui/utils/-/utils-5.4.4.tgz#bd7dde4f48f60c02b6debf976bd74f3505b188fe" + resolved "https://registry.npmjs.org/@mui/utils/-/utils-5.4.4.tgz#bd7dde4f48f60c02b6debf976bd74f3505b188fe" integrity sha512-hfYIXEuhc2mXMGN5nUPis8beH6uE/zl3uMWJcyHX0/LN/+QxO9zhYuV6l8AsAaphHFyS/fBv0SW3Nid7jw5hKQ== dependencies: "@babel/runtime" "^7.17.2" @@ -2606,74 +2428,84 @@ "@next/env@12.1.0": version "12.1.0" - resolved "https://registry.yarnpkg.com/@next/env/-/env-12.1.0.tgz#73713399399b34aa5a01771fb73272b55b22c314" + resolved "https://registry.npmjs.org/@next/env/-/env-12.1.0.tgz#73713399399b34aa5a01771fb73272b55b22c314" integrity sha512-nrIgY6t17FQ9xxwH3jj0a6EOiQ/WDHUos35Hghtr+SWN/ntHIQ7UpuvSi0vaLzZVHQWaDupKI+liO5vANcDeTQ== "@next/eslint-plugin-next@12.1.0": version "12.1.0" - resolved "https://registry.yarnpkg.com/@next/eslint-plugin-next/-/eslint-plugin-next-12.1.0.tgz#32586a11378b3ffa5a93ac40a3c44ad99d70e95a" + resolved "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-12.1.0.tgz#32586a11378b3ffa5a93ac40a3c44ad99d70e95a" integrity sha512-WFiyvSM2G5cQmh32t/SiQuJ+I2O+FHVlK/RFw5b1565O2kEM/36EXncjt88Pa+X5oSc+1SS+tWxowWJd1lqI+g== dependencies: glob "7.1.7" "@next/swc-android-arm64@12.1.0": version "12.1.0" - resolved "https://registry.yarnpkg.com/@next/swc-android-arm64/-/swc-android-arm64-12.1.0.tgz#865ba3a9afc204ff2bdeea49dd64d58705007a39" + resolved "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-12.1.0.tgz#865ba3a9afc204ff2bdeea49dd64d58705007a39" integrity sha512-/280MLdZe0W03stA69iL+v6I+J1ascrQ6FrXBlXGCsGzrfMaGr7fskMa0T5AhQIVQD4nA/46QQWxG//DYuFBcA== "@next/swc-darwin-arm64@12.1.0": version "12.1.0" - resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.1.0.tgz#08e8b411b8accd095009ed12efbc2f1d4d547135" + resolved "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.1.0.tgz#08e8b411b8accd095009ed12efbc2f1d4d547135" integrity sha512-R8vcXE2/iONJ1Unf5Ptqjk6LRW3bggH+8drNkkzH4FLEQkHtELhvcmJwkXcuipyQCsIakldAXhRbZmm3YN1vXg== "@next/swc-darwin-x64@12.1.0": version "12.1.0" - resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-12.1.0.tgz#fcd684497a76e8feaca88db3c394480ff0b007cd" + resolved "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-12.1.0.tgz#fcd684497a76e8feaca88db3c394480ff0b007cd" integrity sha512-ieAz0/J0PhmbZBB8+EA/JGdhRHBogF8BWaeqR7hwveb6SYEIJaDNQy0I+ZN8gF8hLj63bEDxJAs/cEhdnTq+ug== "@next/swc-linux-arm-gnueabihf@12.1.0": version "12.1.0" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.1.0.tgz#9ec6380a27938a5799aaa6035c205b3c478468a7" + resolved "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.1.0.tgz#9ec6380a27938a5799aaa6035c205b3c478468a7" integrity sha512-njUd9hpl6o6A5d08dC0cKAgXKCzm5fFtgGe6i0eko8IAdtAPbtHxtpre3VeSxdZvuGFh+hb0REySQP9T1ttkog== "@next/swc-linux-arm64-gnu@12.1.0": version "12.1.0" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.1.0.tgz#7f4196dff1049cea479607c75b81033ae2dbd093" + resolved "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.1.0.tgz#7f4196dff1049cea479607c75b81033ae2dbd093" integrity sha512-OqangJLkRxVxMhDtcb7Qn1xjzFA3s50EIxY7mljbSCLybU+sByPaWAHY4px97ieOlr2y4S0xdPKkQ3BCAwyo6Q== "@next/swc-linux-arm64-musl@12.1.0": version "12.1.0" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.1.0.tgz#b445f767569cdc2dddee785ca495e1a88c025566" + resolved "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.1.0.tgz#b445f767569cdc2dddee785ca495e1a88c025566" integrity sha512-hB8cLSt4GdmOpcwRe2UzI5UWn6HHO/vLkr5OTuNvCJ5xGDwpPXelVkYW/0+C3g5axbDW2Tym4S+MQCkkH9QfWA== "@next/swc-linux-x64-gnu@12.1.0": version "12.1.0" - resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.1.0.tgz#67610e9be4fbc987de7535f1bcb17e45fe12f90e" + resolved "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.1.0.tgz#67610e9be4fbc987de7535f1bcb17e45fe12f90e" integrity sha512-OKO4R/digvrVuweSw/uBM4nSdyzsBV5EwkUeeG4KVpkIZEe64ZwRpnFB65bC6hGwxIBnTv5NMSnJ+0K/WmG78A== "@next/swc-linux-x64-musl@12.1.0": version "12.1.0" - resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.1.0.tgz#ea19a23db08a9f2e34ac30401f774cf7d1669d31" + resolved "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.1.0.tgz#ea19a23db08a9f2e34ac30401f774cf7d1669d31" integrity sha512-JohhgAHZvOD3rQY7tlp7NlmvtvYHBYgY0x5ZCecUT6eCCcl9lv6iV3nfu82ErkxNk1H893fqH0FUpznZ/H3pSw== "@next/swc-win32-arm64-msvc@12.1.0": version "12.1.0" - resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.1.0.tgz#eadf054fc412085659b98e145435bbba200b5283" + resolved "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.1.0.tgz#eadf054fc412085659b98e145435bbba200b5283" integrity sha512-T/3gIE6QEfKIJ4dmJk75v9hhNiYZhQYAoYm4iVo1TgcsuaKLFa+zMPh4056AHiG6n9tn2UQ1CFE8EoybEsqsSw== "@next/swc-win32-ia32-msvc@12.1.0": version "12.1.0" - resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.1.0.tgz#68faeae10c89f698bf9d28759172b74c9c21bda1" + resolved "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.1.0.tgz#68faeae10c89f698bf9d28759172b74c9c21bda1" integrity sha512-iwnKgHJdqhIW19H9PRPM9j55V6RdcOo6rX+5imx832BCWzkDbyomWnlzBfr6ByUYfhohb8QuH4hSGEikpPqI0Q== "@next/swc-win32-x64-msvc@12.1.0": version "12.1.0" - resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.1.0.tgz#d27e7e76c87a460a4da99c5bfdb1618dcd6cd064" + resolved "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.1.0.tgz#d27e7e76c87a460a4da99c5bfdb1618dcd6cd064" integrity sha512-aBvcbMwuanDH4EMrL2TthNJy+4nP59Bimn8egqv6GHMVj0a44cU6Au4PjOhLNqEh9l+IpRGBqMTzec94UdC5xg== +"@noble/hashes@^0.5.7": + version "0.5.9" + resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-0.5.9.tgz#9f3051a4cc6f7c168022b3b7fbbe9fe2a35cccf0" + integrity sha512-7lN1Qh6d8DUGmfN36XRsbN/WcGIPNtTGhkw26vWId/DlCIGsYJJootTtPGghTLcn/AaXPx2Q0b3cacrwXa7OVw== + +"@noble/secp256k1@^1.4.0": + version "1.5.5" + resolved "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.5.5.tgz#315ab5745509d1a8c8e90d0bdf59823ccf9bcfc3" + integrity sha512-sZ1W6gQzYnu45wPrWx8D3kwI2/U29VYTx9OjbDAd7jwRItJ0cSTMPRL/C8AWZFn9kWFLQGqEXVEE86w4Z8LpIQ== + "@nodelib/fs.scandir@2.1.5": version "2.1.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== dependencies: "@nodelib/fs.stat" "2.0.5" @@ -2681,12 +2513,12 @@ "@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": version "2.0.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== "@nodelib/fs.walk@^1.2.3": version "1.2.8" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== dependencies: "@nodelib/fs.scandir" "2.1.5" @@ -2694,20 +2526,20 @@ "@npmcli/ci-detect@^1.0.0": version "1.4.0" - resolved "https://registry.yarnpkg.com/@npmcli/ci-detect/-/ci-detect-1.4.0.tgz#18478bbaa900c37bfbd8a2006a6262c62e8b0fe1" + resolved "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-1.4.0.tgz#18478bbaa900c37bfbd8a2006a6262c62e8b0fe1" integrity sha512-3BGrt6FLjqM6br5AhWRKTr3u5GIVkjRYeAFrMp3HjnfICrg4xOrVRwFavKT6tsp++bq5dluL5t8ME/Nha/6c1Q== "@npmcli/fs@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.0.0.tgz#589612cfad3a6ea0feafcb901d29c63fd52db09f" - integrity sha512-8ltnOpRR/oJbOp8vaGUnipOi3bqkcW+sLHFlyXIr08OGHmVJLB1Hn7QtGXbYcpVtH1gAYZTlmDXtE4YV0+AMMQ== + version "1.1.1" + resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" + integrity sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ== dependencies: "@gar/promisify" "^1.0.1" semver "^7.3.5" "@npmcli/git@^2.1.0": version "2.1.0" - resolved "https://registry.yarnpkg.com/@npmcli/git/-/git-2.1.0.tgz#2fbd77e147530247d37f325930d457b3ebe894f6" + resolved "https://registry.npmjs.org/@npmcli/git/-/git-2.1.0.tgz#2fbd77e147530247d37f325930d457b3ebe894f6" integrity sha512-/hBFX/QG1b+N7PZBFs0bi+evgRZcK9nWBxQKZkGoXUT5hJSwl5c4d7y8/hm+NQZRPhQ67RzFaj5UM9YeyKoryw== dependencies: "@npmcli/promise-spawn" "^1.3.2" @@ -2721,7 +2553,7 @@ "@npmcli/installed-package-contents@^1.0.6": version "1.0.7" - resolved "https://registry.yarnpkg.com/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz#ab7408c6147911b970a8abe261ce512232a3f4fa" + resolved "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz#ab7408c6147911b970a8abe261ce512232a3f4fa" integrity sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw== dependencies: npm-bundled "^1.1.1" @@ -2729,7 +2561,7 @@ "@npmcli/move-file@^1.0.1": version "1.1.2" - resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" + resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== dependencies: mkdirp "^1.0.4" @@ -2737,19 +2569,19 @@ "@npmcli/node-gyp@^1.0.2": version "1.0.3" - resolved "https://registry.yarnpkg.com/@npmcli/node-gyp/-/node-gyp-1.0.3.tgz#a912e637418ffc5f2db375e93b85837691a43a33" + resolved "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-1.0.3.tgz#a912e637418ffc5f2db375e93b85837691a43a33" integrity sha512-fnkhw+fmX65kiLqk6E3BFLXNC26rUhK90zVwe2yncPliVT/Qos3xjhTLE59Df8KnPlcwIERXKVlU1bXoUQ+liA== "@npmcli/promise-spawn@^1.2.0", "@npmcli/promise-spawn@^1.3.2": version "1.3.2" - resolved "https://registry.yarnpkg.com/@npmcli/promise-spawn/-/promise-spawn-1.3.2.tgz#42d4e56a8e9274fba180dabc0aea6e38f29274f5" + resolved "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-1.3.2.tgz#42d4e56a8e9274fba180dabc0aea6e38f29274f5" integrity sha512-QyAGYo/Fbj4MXeGdJcFzZ+FkDkomfRBrPM+9QYJSg+PxgAUL+LU3FneQk37rKR2/zjqkCV1BLHccX98wRXG3Sg== dependencies: infer-owner "^1.0.4" "@npmcli/run-script@^1.8.2": version "1.8.6" - resolved "https://registry.yarnpkg.com/@npmcli/run-script/-/run-script-1.8.6.tgz#18314802a6660b0d4baa4c3afe7f1ad39d8c28b7" + resolved "https://registry.npmjs.org/@npmcli/run-script/-/run-script-1.8.6.tgz#18314802a6660b0d4baa4c3afe7f1ad39d8c28b7" integrity sha512-e42bVZnC6VluBZBAFEr3YrdqSspG3bgilyg4nSLBJ7TRGNCzxHa92XAHxQBLYg0BmgwO4b2mf3h/l5EkEWRn3g== dependencies: "@npmcli/node-gyp" "^1.0.2" @@ -2759,14 +2591,14 @@ "@octokit/auth-token@^2.4.4": version "2.5.0" - resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-2.5.0.tgz#27c37ea26c205f28443402477ffd261311f21e36" + resolved "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz#27c37ea26c205f28443402477ffd261311f21e36" integrity sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g== dependencies: "@octokit/types" "^6.0.3" "@octokit/core@^3.5.1": version "3.5.1" - resolved "https://registry.yarnpkg.com/@octokit/core/-/core-3.5.1.tgz#8601ceeb1ec0e1b1b8217b960a413ed8e947809b" + resolved "https://registry.npmjs.org/@octokit/core/-/core-3.5.1.tgz#8601ceeb1ec0e1b1b8217b960a413ed8e947809b" integrity sha512-omncwpLVxMP+GLpLPgeGJBF6IWJFjXDS5flY5VbppePYX9XehevbDykRH9PdCdvqt9TS5AOTiDide7h0qrkHjw== dependencies: "@octokit/auth-token" "^2.4.4" @@ -2779,7 +2611,7 @@ "@octokit/endpoint@^6.0.1": version "6.0.12" - resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658" + resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658" integrity sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA== dependencies: "@octokit/types" "^6.0.3" @@ -2788,7 +2620,7 @@ "@octokit/graphql@^4.5.8": version "4.8.0" - resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-4.8.0.tgz#664d9b11c0e12112cbf78e10f49a05959aa22cc3" + resolved "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz#664d9b11c0e12112cbf78e10f49a05959aa22cc3" integrity sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg== dependencies: "@octokit/request" "^5.6.0" @@ -2797,29 +2629,29 @@ "@octokit/openapi-types@^11.2.0": version "11.2.0" - resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-11.2.0.tgz#b38d7fc3736d52a1e96b230c1ccd4a58a2f400a6" + resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-11.2.0.tgz#b38d7fc3736d52a1e96b230c1ccd4a58a2f400a6" integrity sha512-PBsVO+15KSlGmiI8QAzaqvsNlZlrDlyAJYcrXBCvVUxCp7VnXjkwPoFHgjEJXx3WF9BAwkA6nfCUA7i9sODzKA== "@octokit/plugin-enterprise-rest@^6.0.1": version "6.0.1" - resolved "https://registry.yarnpkg.com/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437" + resolved "https://registry.npmjs.org/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437" integrity sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw== "@octokit/plugin-paginate-rest@^2.16.8": version "2.17.0" - resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.17.0.tgz#32e9c7cab2a374421d3d0de239102287d791bce7" + resolved "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.17.0.tgz#32e9c7cab2a374421d3d0de239102287d791bce7" integrity sha512-tzMbrbnam2Mt4AhuyCHvpRkS0oZ5MvwwcQPYGtMv4tUa5kkzG58SVB0fcsLulOZQeRnOgdkZWkRUiyBlh0Bkyw== dependencies: "@octokit/types" "^6.34.0" "@octokit/plugin-request-log@^1.0.4": version "1.0.4" - resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85" + resolved "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85" integrity sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA== "@octokit/plugin-rest-endpoint-methods@^5.12.0": version "5.13.0" - resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.13.0.tgz#8c46109021a3412233f6f50d28786f8e552427ba" + resolved "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.13.0.tgz#8c46109021a3412233f6f50d28786f8e552427ba" integrity sha512-uJjMTkN1KaOIgNtUPMtIXDOjx6dGYysdIFhgA52x4xSadQCz3b/zJexvITDVpANnfKPW/+E0xkOvLntqMYpviA== dependencies: "@octokit/types" "^6.34.0" @@ -2827,7 +2659,7 @@ "@octokit/request-error@^2.0.5", "@octokit/request-error@^2.1.0": version "2.1.0" - resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-2.1.0.tgz#9e150357831bfc788d13a4fd4b1913d60c74d677" + resolved "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz#9e150357831bfc788d13a4fd4b1913d60c74d677" integrity sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg== dependencies: "@octokit/types" "^6.0.3" @@ -2835,20 +2667,20 @@ once "^1.4.0" "@octokit/request@^5.6.0": - version "5.6.2" - resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.6.2.tgz#1aa74d5da7b9e04ac60ef232edd9a7438dcf32d8" - integrity sha512-je66CvSEVf0jCpRISxkUcCa0UkxmFs6eGDRSbfJtAVwbLH5ceqF+YEyC8lj8ystKyZTy8adWr0qmkY52EfOeLA== + version "5.6.3" + resolved "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz#19a022515a5bba965ac06c9d1334514eb50c48b0" + integrity sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A== dependencies: "@octokit/endpoint" "^6.0.1" "@octokit/request-error" "^2.1.0" "@octokit/types" "^6.16.1" is-plain-object "^5.0.0" - node-fetch "^2.6.1" + node-fetch "^2.6.7" universal-user-agent "^6.0.0" "@octokit/rest@^18.1.0": version "18.12.0" - resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-18.12.0.tgz#f06bc4952fc87130308d810ca9d00e79f6988881" + resolved "https://registry.npmjs.org/@octokit/rest/-/rest-18.12.0.tgz#f06bc4952fc87130308d810ca9d00e79f6988881" integrity sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q== dependencies: "@octokit/core" "^3.5.1" @@ -2858,19 +2690,19 @@ "@octokit/types@^6.0.3", "@octokit/types@^6.16.1", "@octokit/types@^6.34.0": version "6.34.0" - resolved "https://registry.yarnpkg.com/@octokit/types/-/types-6.34.0.tgz#c6021333334d1ecfb5d370a8798162ddf1ae8218" + resolved "https://registry.npmjs.org/@octokit/types/-/types-6.34.0.tgz#c6021333334d1ecfb5d370a8798162ddf1ae8218" integrity sha512-s1zLBjWhdEI2zwaoSgyOFoKSl109CUcVBCc7biPJ3aAf6LGLU6szDvi31JPU7bxfla2lqfhjbbg/5DdFNxOwHw== dependencies: "@octokit/openapi-types" "^11.2.0" -"@popperjs/core@^2.4.4", "@popperjs/core@^2.9.0": - version "2.11.0" - resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.0.tgz#6734f8ebc106a0860dff7f92bf90df193f0935d7" - integrity sha512-zrsUxjLOKAzdewIDRWy9nsV1GQsKBCWaGwsZQlCgr6/q+vjyZhFgqedLfFBuI9anTPEUT4APq9Mu0SZBTzIcGQ== +"@popperjs/core@^2.11.2", "@popperjs/core@^2.9.0": + version "2.11.2" + resolved "https://registry.npmjs.org/@popperjs/core/-/core-2.11.2.tgz#830beaec4b4091a9e9398ac50f865ddea52186b9" + integrity sha512-92FRmppjjqz29VMJ2dn+xdyXZBrMlE42AV6Kq6BwjWV7CNUW1hs2FtxSNLQE+gJhaZ6AAmYuO9y8dshhcBl7vA== "@rollup/plugin-commonjs@^21.0.1": version "21.0.2" - resolved "https://registry.yarnpkg.com/@rollup/plugin-commonjs/-/plugin-commonjs-21.0.2.tgz#0b9c539aa1837c94abfaf87945838b0fc8564891" + resolved "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-21.0.2.tgz#0b9c539aa1837c94abfaf87945838b0fc8564891" integrity sha512-d/OmjaLVO4j/aQX69bwpWPpbvI3TJkQuxoAk7BH8ew1PyoMBLTOuvJTjzG8oEoW7drIIqB0KCJtfFLu/2GClWg== dependencies: "@rollup/pluginutils" "^3.1.0" @@ -2883,14 +2715,14 @@ "@rollup/plugin-json@^4.1.0": version "4.1.0" - resolved "https://registry.yarnpkg.com/@rollup/plugin-json/-/plugin-json-4.1.0.tgz#54e09867ae6963c593844d8bd7a9c718294496f3" + resolved "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-4.1.0.tgz#54e09867ae6963c593844d8bd7a9c718294496f3" integrity sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw== dependencies: "@rollup/pluginutils" "^3.0.8" "@rollup/plugin-node-resolve@^13.0.6": version "13.1.3" - resolved "https://registry.yarnpkg.com/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.1.3.tgz#2ed277fb3ad98745424c1d2ba152484508a92d79" + resolved "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.1.3.tgz#2ed277fb3ad98745424c1d2ba152484508a92d79" integrity sha512-BdxNk+LtmElRo5d06MGY4zoepyrXX1tkzX2hrnPEZ53k78GuOMWLqmJDGIIOPwVRIFZrLQOo+Yr6KtCuLIA0AQ== dependencies: "@rollup/pluginutils" "^3.1.0" @@ -2902,7 +2734,7 @@ "@rollup/plugin-typescript@^8.0.0": version "8.3.1" - resolved "https://registry.yarnpkg.com/@rollup/plugin-typescript/-/plugin-typescript-8.3.1.tgz#b7dc75ed6b4876e260b9e80624fab23bc98e4ac1" + resolved "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-8.3.1.tgz#b7dc75ed6b4876e260b9e80624fab23bc98e4ac1" integrity sha512-84rExe3ICUBXzqNX48WZV2Jp3OddjTMX97O2Py6D1KJaGSwWp0mDHXj+bCGNJqWHIEKDIT2U0sDjhP4czKi6cA== dependencies: "@rollup/pluginutils" "^3.1.0" @@ -2910,7 +2742,7 @@ "@rollup/pluginutils@^3.0.8", "@rollup/pluginutils@^3.1.0": version "3.1.0" - resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" + resolved "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" integrity sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg== dependencies: "@types/estree" "0.0.39" @@ -2919,66 +2751,66 @@ "@rushstack/eslint-patch@^1.0.8": version "1.1.0" - resolved "https://registry.yarnpkg.com/@rushstack/eslint-patch/-/eslint-patch-1.1.0.tgz#7f698254aadf921e48dda8c0a6b304026b8a9323" + resolved "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.1.0.tgz#7f698254aadf921e48dda8c0a6b304026b8a9323" integrity sha512-JLo+Y592QzIE+q7Dl2pMUtt4q8SKYI5jDrZxrozEQxnGVOyYE+GWK9eLkwTaeN9DDctlaRAQ3TBmzZ1qdLE30A== "@sinonjs/commons@^1.7.0": version "1.8.3" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d" + resolved "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d" integrity sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ== dependencies: type-detect "4.0.8" "@sinonjs/fake-timers@^8.0.1": version "8.1.0" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7" + resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7" integrity sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg== dependencies: "@sinonjs/commons" "^1.7.0" "@svgr/babel-plugin-add-jsx-attribute@^6.0.0": version "6.0.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.0.0.tgz#bd6d1ff32a31b82b601e73672a789cc41e84fe18" + resolved "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.0.0.tgz#bd6d1ff32a31b82b601e73672a789cc41e84fe18" integrity sha512-MdPdhdWLtQsjd29Wa4pABdhWbaRMACdM1h31BY+c6FghTZqNGT7pEYdBoaGeKtdTOBC/XNFQaKVj+r/Ei2ryWA== "@svgr/babel-plugin-remove-jsx-attribute@^6.0.0": version "6.0.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.0.0.tgz#58654908beebfa069681a83332544b17e5237e89" + resolved "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.0.0.tgz#58654908beebfa069681a83332544b17e5237e89" integrity sha512-aVdtfx9jlaaxc3unA6l+M9YRnKIZjOhQPthLKqmTXC8UVkBLDRGwPKo+r8n3VZN8B34+yVajzPTZ+ptTSuZZCw== "@svgr/babel-plugin-remove-jsx-empty-expression@^6.0.0": version "6.0.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.0.0.tgz#d06dd6e8a8f603f92f9979bb9990a1f85a4f57ba" + resolved "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.0.0.tgz#d06dd6e8a8f603f92f9979bb9990a1f85a4f57ba" integrity sha512-Ccj42ApsePD451AZJJf1QzTD1B/BOU392URJTeXFxSK709i0KUsGtbwyiqsKu7vsYxpTM0IA5clAKDyf9RCZyA== "@svgr/babel-plugin-replace-jsx-attribute-value@^6.0.0": version "6.0.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.0.0.tgz#0b85837577b02c31c09c758a12932820f5245cee" + resolved "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.0.0.tgz#0b85837577b02c31c09c758a12932820f5245cee" integrity sha512-88V26WGyt1Sfd1emBYmBJRWMmgarrExpKNVmI9vVozha4kqs6FzQJ/Kp5+EYli1apgX44518/0+t9+NU36lThQ== "@svgr/babel-plugin-svg-dynamic-title@^6.0.0": version "6.0.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.0.0.tgz#28236ec26f7ab9d486a487d36ae52d58ba15676f" + resolved "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.0.0.tgz#28236ec26f7ab9d486a487d36ae52d58ba15676f" integrity sha512-F7YXNLfGze+xv0KMQxrl2vkNbI9kzT9oDK55/kUuymh1ACyXkMV+VZWX1zEhSTfEKh7VkHVZGmVtHg8eTZ6PRg== "@svgr/babel-plugin-svg-em-dimensions@^6.0.0": version "6.0.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.0.0.tgz#40267c5dea1b43c4f83a0eb6169e08b43d8bafce" + resolved "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.0.0.tgz#40267c5dea1b43c4f83a0eb6169e08b43d8bafce" integrity sha512-+rghFXxdIqJNLQK08kwPBD3Z22/0b2tEZ9lKiL/yTfuyj1wW8HUXu4bo/XkogATIYuXSghVQOOCwURXzHGKyZA== "@svgr/babel-plugin-transform-react-native-svg@^6.0.0": version "6.0.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.0.0.tgz#eb688d0a5f539e34d268d8a516e81f5d7fede7c9" + resolved "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.0.0.tgz#eb688d0a5f539e34d268d8a516e81f5d7fede7c9" integrity sha512-VaphyHZ+xIKv5v0K0HCzyfAaLhPGJXSk2HkpYfXIOKb7DjLBv0soHDxNv6X0vr2titsxE7klb++u7iOf7TSrFQ== "@svgr/babel-plugin-transform-svg-component@^6.2.0": version "6.2.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.2.0.tgz#7ba61d9fc1fb42b0ba1a04e4630019fa7e993c4f" + resolved "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.2.0.tgz#7ba61d9fc1fb42b0ba1a04e4630019fa7e993c4f" integrity sha512-bhYIpsORb++wpsp91fymbFkf09Z/YEKR0DnFjxvN+8JHeCUD2unnh18jIMKnDJTWtvpTaGYPXELVe4OOzFI0xg== "@svgr/babel-preset@^6.2.0": version "6.2.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-preset/-/babel-preset-6.2.0.tgz#1d3ad8c7664253a4be8e4a0f0e6872f30d8af627" + resolved "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.2.0.tgz#1d3ad8c7664253a4be8e4a0f0e6872f30d8af627" integrity sha512-4WQNY0J71JIaL03DRn0vLiz87JXx0b9dYm2aA8XHlQJQoixMl4r/soYHm8dsaJZ3jWtkCiOYy48dp9izvXhDkQ== dependencies: "@svgr/babel-plugin-add-jsx-attribute" "^6.0.0" @@ -2992,7 +2824,7 @@ "@svgr/core@^6.2.1": version "6.2.1" - resolved "https://registry.yarnpkg.com/@svgr/core/-/core-6.2.1.tgz#195de807a9f27f9e0e0d678e01084b05c54fdf61" + resolved "https://registry.npmjs.org/@svgr/core/-/core-6.2.1.tgz#195de807a9f27f9e0e0d678e01084b05c54fdf61" integrity sha512-NWufjGI2WUyrg46mKuySfviEJ6IxHUOm/8a3Ph38VCWSp+83HBraCQrpEM3F3dB6LBs5x8OElS8h3C0oOJaJAA== dependencies: "@svgr/plugin-jsx" "^6.2.1" @@ -3001,7 +2833,7 @@ "@svgr/hast-util-to-babel-ast@^6.2.1": version "6.2.1" - resolved "https://registry.yarnpkg.com/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.2.1.tgz#ae065567b74cbe745afae617053adf9a764bea25" + resolved "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.2.1.tgz#ae065567b74cbe745afae617053adf9a764bea25" integrity sha512-pt7MMkQFDlWJVy9ULJ1h+hZBDGFfSCwlBNW1HkLnVi7jUhyEXUaGYWi1x6bM2IXuAR9l265khBT4Av4lPmaNLQ== dependencies: "@babel/types" "^7.15.6" @@ -3009,7 +2841,7 @@ "@svgr/plugin-jsx@^6.2.1": version "6.2.1" - resolved "https://registry.yarnpkg.com/@svgr/plugin-jsx/-/plugin-jsx-6.2.1.tgz#5668f1d2aa18c2f1bb7a1fc9f682d3f9aed263bd" + resolved "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.2.1.tgz#5668f1d2aa18c2f1bb7a1fc9f682d3f9aed263bd" integrity sha512-u+MpjTsLaKo6r3pHeeSVsh9hmGRag2L7VzApWIaS8imNguqoUwDq/u6U/NDmYs/KAsrmtBjOEaAAPbwNGXXp1g== dependencies: "@babel/core" "^7.15.5" @@ -3019,7 +2851,7 @@ "@svgr/plugin-svgo@^6.2.0": version "6.2.0" - resolved "https://registry.yarnpkg.com/@svgr/plugin-svgo/-/plugin-svgo-6.2.0.tgz#4cbe6a33ccccdcae4e3b63ded64cc1cbe1faf48c" + resolved "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.2.0.tgz#4cbe6a33ccccdcae4e3b63ded64cc1cbe1faf48c" integrity sha512-oDdMQONKOJEbuKwuy4Np6VdV6qoaLLvoY86hjvQEgU82Vx1MSWRyYms6Sl0f+NtqxLI/rDVufATbP/ev996k3Q== dependencies: cosmiconfig "^7.0.1" @@ -3028,7 +2860,7 @@ "@svgr/webpack@^6.0.0": version "6.2.1" - resolved "https://registry.yarnpkg.com/@svgr/webpack/-/webpack-6.2.1.tgz#ef5d51c1b6be4e7537fb9f76b3f2b2e22b63c58d" + resolved "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.2.1.tgz#ef5d51c1b6be4e7537fb9f76b3f2b2e22b63c58d" integrity sha512-h09ngMNd13hnePwgXa+Y5CgOjzlCvfWLHg+MBnydEedAnuLRzUHUJmGS3o2OsrhxTOOqEsPOFt5v/f6C5Qulcw== dependencies: "@babel/core" "^7.15.5" @@ -3042,29 +2874,29 @@ "@tippyjs/react@^4.2.6": version "4.2.6" - resolved "https://registry.yarnpkg.com/@tippyjs/react/-/react-4.2.6.tgz#971677a599bf663f20bb1c60a62b9555b749cc71" + resolved "https://registry.npmjs.org/@tippyjs/react/-/react-4.2.6.tgz#971677a599bf663f20bb1c60a62b9555b749cc71" integrity sha512-91RicDR+H7oDSyPycI13q3b7o4O60wa2oRbjlz2fyRLmHImc4vyDwuUP8NtZaN0VARJY5hybvDYrFzhY9+Lbyw== dependencies: tippy.js "^6.3.1" "@tootallnate/once@1": version "1.1.2" - resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" + resolved "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== "@trysound/sax@0.2.0": version "0.2.0" - resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" + resolved "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== "@tsconfig/svelte@^3.0.0": version "3.0.0" - resolved "https://registry.yarnpkg.com/@tsconfig/svelte/-/svelte-3.0.0.tgz#b06e059209f04c414de0069f2f0e2796d979fc6f" + resolved "https://registry.npmjs.org/@tsconfig/svelte/-/svelte-3.0.0.tgz#b06e059209f04c414de0069f2f0e2796d979fc6f" integrity sha512-pYrtLtOwku/7r1i9AMONsJMVYAtk3hzOfiGNekhtq5tYBGA7unMve8RvUclKLMT3PrihvJqUmzsRGh0RP84hKg== "@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": version "7.1.18" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.18.tgz#1a29abcc411a9c05e2094c98f9a1b7da6cdf49f8" + resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.18.tgz#1a29abcc411a9c05e2094c98f9a1b7da6cdf49f8" integrity sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ== dependencies: "@babel/parser" "^7.1.0" @@ -3075,14 +2907,14 @@ "@types/babel__generator@*": version "7.6.4" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7" + resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7" integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg== dependencies: "@babel/types" "^7.0.0" "@types/babel__template@*": version "7.4.1" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" + resolved "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== dependencies: "@babel/parser" "^7.1.0" @@ -3090,37 +2922,37 @@ "@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": version "7.14.2" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.14.2.tgz#ffcd470bbb3f8bf30481678fb5502278ca833a43" + resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.14.2.tgz#ffcd470bbb3f8bf30481678fb5502278ca833a43" integrity sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA== dependencies: "@babel/types" "^7.3.0" "@types/chrome@0.0.99": version "0.0.99" - resolved "https://registry.yarnpkg.com/@types/chrome/-/chrome-0.0.99.tgz#9453a5082a5291e78a0d24604b69796b16e9342c" + resolved "https://registry.npmjs.org/@types/chrome/-/chrome-0.0.99.tgz#9453a5082a5291e78a0d24604b69796b16e9342c" integrity sha512-la87+bjtZ6XstGqUdaLT5YfECSPw9Ex9iYQUOMGlBtgqI6FLGewGZtkByX5TcPBHM6XKp6RnR50Ytd+tI2m/6Q== dependencies: "@types/filesystem" "*" "@types/eslint-scope@^3.7.3": version "3.7.3" - resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.3.tgz#125b88504b61e3c8bc6f870882003253005c3224" + resolved "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.3.tgz#125b88504b61e3c8bc6f870882003253005c3224" integrity sha512-PB3ldyrcnAicT35TWPs5IcwKD8S333HMaa2VVv4+wdvebJkjWuW/xESoB8IwRcog8HYVYamb1g/R31Qv5Bx03g== dependencies: "@types/eslint" "*" "@types/estree" "*" "@types/eslint@*": - version "8.2.0" - resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.2.0.tgz#afd0519223c29c347087542cbaee2fedc0873b16" - integrity sha512-74hbvsnc+7TEDa1z5YLSe4/q8hGYB3USNvCuzHUJrjPV6hXaq8IXcngCrHkuvFt0+8rFz7xYXrHgNayIX0UZvQ== + version "8.4.1" + resolved "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.1.tgz#c48251553e8759db9e656de3efc846954ac32304" + integrity sha512-GE44+DNEyxxh2Kc6ro/VkIj+9ma0pO0bwv9+uHSyBrikYOHr8zYcdPvnBOp1aw8s+CjRvuSx7CyWqRrNFQ59mA== dependencies: "@types/estree" "*" "@types/json-schema" "*" "@types/eslint@^7.28.2": version "7.29.0" - resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-7.29.0.tgz#e56ddc8e542815272720bb0b4ccc2aff9c3e1c78" + resolved "https://registry.npmjs.org/@types/eslint/-/eslint-7.29.0.tgz#e56ddc8e542815272720bb0b4ccc2aff9c3e1c78" integrity sha512-VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng== dependencies: "@types/estree" "*" @@ -3128,36 +2960,36 @@ "@types/estree@*", "@types/estree@^0.0.51": version "0.0.51" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40" + resolved "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40" integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ== "@types/estree@0.0.39": version "0.0.39" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" + resolved "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw== "@types/filesystem@*": version "0.0.32" - resolved "https://registry.yarnpkg.com/@types/filesystem/-/filesystem-0.0.32.tgz#307df7cc084a2293c3c1a31151b178063e0a8edf" + resolved "https://registry.npmjs.org/@types/filesystem/-/filesystem-0.0.32.tgz#307df7cc084a2293c3c1a31151b178063e0a8edf" integrity sha512-Yuf4jR5YYMR2DVgwuCiP11s0xuVRyPKmz8vo6HBY3CGdeMj8af93CFZX+T82+VD1+UqHOxTq31lO7MI7lepBtQ== dependencies: "@types/filewriter" "*" "@types/filewriter@*": version "0.0.29" - resolved "https://registry.yarnpkg.com/@types/filewriter/-/filewriter-0.0.29.tgz#a48795ecadf957f6c0d10e0c34af86c098fa5bee" + resolved "https://registry.npmjs.org/@types/filewriter/-/filewriter-0.0.29.tgz#a48795ecadf957f6c0d10e0c34af86c098fa5bee" integrity sha512-BsPXH/irW0ht0Ji6iw/jJaK8Lj3FJemon2gvEqHKpCdDCeemHa+rI3WBGq5z7cDMZgoLjY40oninGxqk+8NzNQ== "@types/graceful-fs@^4.1.2": version "4.1.5" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" + resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw== dependencies: "@types/node" "*" "@types/hoist-non-react-statics@*": version "3.3.1" - resolved "https://registry.yarnpkg.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz#1124aafe5118cb591977aeb1ceaaed1070eb039f" + resolved "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz#1124aafe5118cb591977aeb1ceaaed1070eb039f" integrity sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA== dependencies: "@types/react" "*" @@ -3165,31 +2997,31 @@ "@types/html-minifier-terser@^6.0.0": version "6.1.0" - resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#4fc33a00c1d0c16987b1a20cf92d20614c55ac35" + resolved "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#4fc33a00c1d0c16987b1a20cf92d20614c55ac35" integrity sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg== "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.4" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" + resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== "@types/istanbul-lib-report@*": version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" + resolved "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== dependencies: "@types/istanbul-lib-coverage" "*" "@types/istanbul-reports@^3.0.0": version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" + resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== dependencies: "@types/istanbul-lib-report" "*" "@types/jest-json-schema@^6.1.0": version "6.1.0" - resolved "https://registry.yarnpkg.com/@types/jest-json-schema/-/jest-json-schema-6.1.0.tgz#99ee02d022d62dc94a2a5ace34e94841cffb6eb1" + resolved "https://registry.npmjs.org/@types/jest-json-schema/-/jest-json-schema-6.1.0.tgz#99ee02d022d62dc94a2a5ace34e94841cffb6eb1" integrity sha512-8e9qbbrXbDCxLQTLca84AF2oWTxa/Vd3tiOLq7cblsY6zgtk7JgZ7nsfYxqLQEWjXF3IC4sqOHsA84R/hr555Q== dependencies: "@types/jest" "*" @@ -3197,7 +3029,7 @@ "@types/jest@*", "@types/jest@^27.4.0": version "27.4.1" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.4.1.tgz#185cbe2926eaaf9662d340cc02e548ce9e11ab6d" + resolved "https://registry.npmjs.org/@types/jest/-/jest-27.4.1.tgz#185cbe2926eaaf9662d340cc02e548ce9e11ab6d" integrity sha512-23iPJADSmicDVrWk+HT58LMJtzLAnB2AgIzplQuq/bSrGaxCrlvRFjGbXmamnnk/mAmCdLStiGqggu28ocUyiw== dependencies: jest-matcher-utils "^27.0.0" @@ -3205,101 +3037,101 @@ "@types/json-schema@*", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.9" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" + resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ== "@types/json5@^0.0.29": version "0.0.29" - resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" + resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= "@types/lodash@^4.14.175": - version "4.14.178" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.178.tgz#341f6d2247db528d4a13ddbb374bcdc80406f4f8" - integrity sha512-0d5Wd09ItQWH1qFbEyQ7oTQ3GZrMfth5JkbN3EvTKLXcHLRDSXeLnlvlOn0wvxVIwK5o2M8JzP/OWz7T3NRsbw== + version "4.14.179" + resolved "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.179.tgz#490ec3288088c91295780237d2497a3aa9dfb5c5" + integrity sha512-uwc1x90yCKqGcIOAT6DwOSuxnrAbpkdPsUOZtwrXb4D/6wZs+6qG7QnIawDuZWg0sWpxl+ltIKCaLoMlna678w== "@types/minimatch@^3.0.3": version "3.0.5" - resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" + resolved "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ== "@types/minimist@^1.2.0": version "1.2.2" - resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" + resolved "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== "@types/node@*", "@types/node@17.0.21": version "17.0.21" - resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.21.tgz#864b987c0c68d07b4345845c3e63b75edd143644" + resolved "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz#864b987c0c68d07b4345845c3e63b75edd143644" integrity sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ== "@types/node@^13.9.0": version "13.13.52" - resolved "https://registry.yarnpkg.com/@types/node/-/node-13.13.52.tgz#03c13be70b9031baaed79481c0c0cfb0045e53f7" + resolved "https://registry.npmjs.org/@types/node/-/node-13.13.52.tgz#03c13be70b9031baaed79481c0c0cfb0045e53f7" integrity sha512-s3nugnZumCC//n4moGGe6tkNMyYEdaDBitVjwPxXmR5lnMG5dHePinH2EdxkG3Rh1ghFHHixAG4NJhpJW1rthQ== "@types/normalize-package-data@^2.4.0": version "2.4.1" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" + resolved "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== "@types/object-hash@^2.2.1": version "2.2.1" - resolved "https://registry.yarnpkg.com/@types/object-hash/-/object-hash-2.2.1.tgz#67c169f8f033e0b62abbf81df2d00f4598d540b9" + resolved "https://registry.npmjs.org/@types/object-hash/-/object-hash-2.2.1.tgz#67c169f8f033e0b62abbf81df2d00f4598d540b9" integrity sha512-i/rtaJFCsPljrZvP/akBqEwUP2y5cZLOmvO+JaYnz01aPknrQ+hB5MRcO7iqCUsFaYfTG8kGfKUyboA07xeDHQ== "@types/parse-json@^4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" + resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== "@types/prettier@^2.1.5": version "2.4.4" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.4.tgz#5d9b63132df54d8909fce1c3f8ca260fdd693e17" + resolved "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.4.tgz#5d9b63132df54d8909fce1c3f8ca260fdd693e17" integrity sha512-ReVR2rLTV1kvtlWFyuot+d1pkpG2Fw/XKE3PDAdj57rbM97ttSp9JZ2UsP+2EHTylra9cUf6JA7tGwW1INzUrA== "@types/prop-types@*", "@types/prop-types@^15.7.4": version "15.7.4" - resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.4.tgz#fcf7205c25dff795ee79af1e30da2c9790808f11" + resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.4.tgz#fcf7205c25dff795ee79af1e30da2c9790808f11" integrity sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ== "@types/pug@^2.0.4": - version "2.0.5" - resolved "https://registry.yarnpkg.com/@types/pug/-/pug-2.0.5.tgz#69bc700934dd473c7ab97270bd2dbacefe562231" - integrity sha512-LOnASQoeNZMkzexRuyqcBBDZ6rS+rQxUMkmj5A0PkhhiSZivLIuz6Hxyr1mkGoEZEkk66faROmpMi4fFkrKsBA== + version "2.0.6" + resolved "https://registry.npmjs.org/@types/pug/-/pug-2.0.6.tgz#f830323c88172e66826d0bde413498b61054b5a6" + integrity sha512-SnHmG9wN1UVmagJOnyo/qkk0Z7gejYxOYYmaAwr5u2yFYfsupN3sg10kyzN8Hep/2zbHxCnsumxOoRIRMBwKCg== "@types/react-copy-to-clipboard@^5.0.2": version "5.0.2" - resolved "https://registry.yarnpkg.com/@types/react-copy-to-clipboard/-/react-copy-to-clipboard-5.0.2.tgz#c29690b472a54edff35916f0d1c6c797ad0fd34b" + resolved "https://registry.npmjs.org/@types/react-copy-to-clipboard/-/react-copy-to-clipboard-5.0.2.tgz#c29690b472a54edff35916f0d1c6c797ad0fd34b" integrity sha512-O29AThfxrkUFRsZXjfSWR2yaWo0ppB1yLEnHA+Oh24oNetjBAwTDu1PmolIqdJKzsZiO4J1jn6R6TmO96uBvGg== dependencies: "@types/react" "*" "@types/react-dom@^17.0.11": version "17.0.13" - resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-17.0.13.tgz#a3323b974ee4280070982b3112351bb1952a7809" + resolved "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.13.tgz#a3323b974ee4280070982b3112351bb1952a7809" integrity sha512-wEP+B8hzvy6ORDv1QBhcQia4j6ea4SFIBttHYpXKPFZRviBvknq0FRh3VrIxeXUmsPkwuXVZrVGG7KUVONmXCQ== dependencies: "@types/react" "*" "@types/react-is@^16.7.1 || ^17.0.0": version "17.0.3" - resolved "https://registry.yarnpkg.com/@types/react-is/-/react-is-17.0.3.tgz#2d855ba575f2fc8d17ef9861f084acc4b90a137a" + resolved "https://registry.npmjs.org/@types/react-is/-/react-is-17.0.3.tgz#2d855ba575f2fc8d17ef9861f084acc4b90a137a" integrity sha512-aBTIWg1emtu95bLTLx0cpkxwGW3ueZv71nE2YFBpL8k/z5czEW8yYpOo8Dp+UUAFAtKwNaOsh/ioSeQnWlZcfw== dependencies: "@types/react" "*" "@types/react-transition-group@^4.4.4": version "4.4.4" - resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.4.tgz#acd4cceaa2be6b757db61ed7b432e103242d163e" + resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.4.tgz#acd4cceaa2be6b757db61ed7b432e103242d163e" integrity sha512-7gAPz7anVK5xzbeQW9wFBDg7G++aPLAFY0QaSMOou9rJZpbuI58WAuJrgu+qR92l61grlnCUe7AFX8KGahAgug== dependencies: "@types/react" "*" -"@types/react@*", "@types/react@17.0.39", "@types/react@^17.0.34": - version "17.0.39" - resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.39.tgz#d0f4cde092502a6db00a1cded6e6bf2abb7633ce" - integrity sha512-UVavlfAxDd/AgAacMa60Azl7ygyQNRwC/DsHZmKgNvPmRR5p70AJ5Q9EAmL2NWOJmeV+vVUI4IAP7GZrN8h8Ug== +"@types/react@*", "@types/react@17.0.40", "@types/react@^17.0.34": + version "17.0.40" + resolved "https://registry.npmjs.org/@types/react/-/react-17.0.40.tgz#dc010cee6254d5239a138083f3799a16638e6bad" + integrity sha512-UrXhD/JyLH+W70nNSufXqMZNuUD2cXHu6UjCllC6pmOQgBX4SGXOH8fjRka0O0Ee0HrFxapDD8Bwn81Kmiz6jQ== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" @@ -3307,31 +3139,31 @@ "@types/resolve@1.17.1": version "1.17.1" - resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-1.17.1.tgz#3afd6ad8967c77e4376c598a82ddd58f46ec45d6" + resolved "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz#3afd6ad8967c77e4376c598a82ddd58f46ec45d6" integrity sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw== dependencies: "@types/node" "*" "@types/sass@^1.16.0": version "1.43.1" - resolved "https://registry.yarnpkg.com/@types/sass/-/sass-1.43.1.tgz#86bb0168e9e881d7dade6eba16c9ed6d25dc2f68" + resolved "https://registry.npmjs.org/@types/sass/-/sass-1.43.1.tgz#86bb0168e9e881d7dade6eba16c9ed6d25dc2f68" integrity sha512-BPdoIt1lfJ6B7rw35ncdwBZrAssjcwzI5LByIrYs+tpXlj/CAkuVdRsgZDdP4lq5EjyWzwxZCqAoFyHKFwp32g== dependencies: "@types/node" "*" "@types/scheduler@*": version "0.16.2" - resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" + resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== "@types/stack-utils@^2.0.0": version "2.0.1" - resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" + resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== "@types/styled-components@^5.1.15": version "5.1.24" - resolved "https://registry.yarnpkg.com/@types/styled-components/-/styled-components-5.1.24.tgz#b52ae677f03ea8a6018aa34c6c96b7018b7a3571" + resolved "https://registry.npmjs.org/@types/styled-components/-/styled-components-5.1.24.tgz#b52ae677f03ea8a6018aa34c6c96b7018b7a3571" integrity sha512-mz0fzq2nez+Lq5IuYammYwWgyLUE6OMAJTQL9D8hFLP4Pkh7gVYJii/VQWxq8/TK34g/OrkehXaFNdcEKcItug== dependencies: "@types/hoist-non-react-statics" "*" @@ -3340,29 +3172,29 @@ "@types/webextension-polyfill@^0.8.1": version "0.8.2" - resolved "https://registry.yarnpkg.com/@types/webextension-polyfill/-/webextension-polyfill-0.8.2.tgz#d909371d332ce3e1a94684624deb0a8693eee900" + resolved "https://registry.npmjs.org/@types/webextension-polyfill/-/webextension-polyfill-0.8.2.tgz#d909371d332ce3e1a94684624deb0a8693eee900" integrity sha512-Pd+p5AQx6s78jr4gDC2p3vbw+uxP2DLLqE9iAJJpZ+OUqDm3txr6uN2wUBEwjVgZTNdBHPsxawGvPCTipF2s6w== "@types/yargs-parser@*": - version "20.2.1" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.1.tgz#3b9ce2489919d9e4fea439b76916abc34b2df129" - integrity sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw== + version "21.0.0" + resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" + integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== "@types/yargs@^16.0.0": version "16.0.4" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.4.tgz#26aad98dd2c2a38e421086ea9ad42b9e51642977" + resolved "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz#26aad98dd2c2a38e421086ea9ad42b9e51642977" integrity sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw== dependencies: "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^5.10.1": - version "5.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.13.0.tgz#2809052b85911ced9c54a60dac10e515e9114497" - integrity sha512-vLktb2Uec81fxm/cfz2Hd6QaWOs8qdmVAZXLdOBX6JFJDhf6oDZpMzZ4/LZ6SFM/5DgDcxIMIvy3F+O9yZBuiQ== + version "5.14.0" + resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.14.0.tgz#5119b67152356231a0e24b998035288a9cd21335" + integrity sha512-ir0wYI4FfFUDfLcuwKzIH7sMVA+db7WYen47iRSaCGl+HMAZI9fpBwfDo45ZALD3A45ZGyHWDNLhbg8tZrMX4w== dependencies: - "@typescript-eslint/scope-manager" "5.13.0" - "@typescript-eslint/type-utils" "5.13.0" - "@typescript-eslint/utils" "5.13.0" + "@typescript-eslint/scope-manager" "5.14.0" + "@typescript-eslint/type-utils" "5.14.0" + "@typescript-eslint/utils" "5.14.0" debug "^4.3.2" functional-red-black-tree "^1.0.1" ignore "^5.1.8" @@ -3371,73 +3203,73 @@ tsutils "^3.21.0" "@typescript-eslint/parser@^5.0.0", "@typescript-eslint/parser@^5.10.1": - version "5.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.13.0.tgz#0394ed8f2f849273c0bf4b811994d177112ced5c" - integrity sha512-GdrU4GvBE29tm2RqWOM0P5QfCtgCyN4hXICj/X9ibKED16136l9ZpoJvCL5pSKtmJzA+NRDzQ312wWMejCVVfg== + version "5.14.0" + resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.14.0.tgz#7c79f898aa3cff0ceee6f1d34eeed0f034fb9ef3" + integrity sha512-aHJN8/FuIy1Zvqk4U/gcO/fxeMKyoSv/rS46UXMXOJKVsLQ+iYPuXNbpbH7cBLcpSbmyyFbwrniLx5+kutu1pw== dependencies: - "@typescript-eslint/scope-manager" "5.13.0" - "@typescript-eslint/types" "5.13.0" - "@typescript-eslint/typescript-estree" "5.13.0" + "@typescript-eslint/scope-manager" "5.14.0" + "@typescript-eslint/types" "5.14.0" + "@typescript-eslint/typescript-estree" "5.14.0" debug "^4.3.2" -"@typescript-eslint/scope-manager@5.13.0": - version "5.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.13.0.tgz#cf6aff61ca497cb19f0397eea8444a58f46156b6" - integrity sha512-T4N8UvKYDSfVYdmJq7g2IPJYCRzwtp74KyDZytkR4OL3NRupvswvmJQJ4CX5tDSurW2cvCc1Ia1qM7d0jpa7IA== +"@typescript-eslint/scope-manager@5.14.0": + version "5.14.0" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.14.0.tgz#ea518962b42db8ed0a55152ea959c218cb53ca7b" + integrity sha512-LazdcMlGnv+xUc5R4qIlqH0OWARyl2kaP8pVCS39qSL3Pd1F7mI10DbdXeARcE62sVQE4fHNvEqMWsypWO+yEw== dependencies: - "@typescript-eslint/types" "5.13.0" - "@typescript-eslint/visitor-keys" "5.13.0" + "@typescript-eslint/types" "5.14.0" + "@typescript-eslint/visitor-keys" "5.14.0" -"@typescript-eslint/type-utils@5.13.0": - version "5.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.13.0.tgz#b0efd45c85b7bab1125c97b752cab3a86c7b615d" - integrity sha512-/nz7qFizaBM1SuqAKb7GLkcNn2buRdDgZraXlkhz+vUGiN1NZ9LzkA595tHHeduAiS2MsHqMNhE2zNzGdw43Yg== +"@typescript-eslint/type-utils@5.14.0": + version "5.14.0" + resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.14.0.tgz#711f08105860b12988454e91df433567205a8f0b" + integrity sha512-d4PTJxsqaUpv8iERTDSQBKUCV7Q5yyXjqXUl3XF7Sd9ogNLuKLkxz82qxokqQ4jXdTPZudWpmNtr/JjbbvUixw== dependencies: - "@typescript-eslint/utils" "5.13.0" + "@typescript-eslint/utils" "5.14.0" debug "^4.3.2" tsutils "^3.21.0" -"@typescript-eslint/types@5.13.0": - version "5.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.13.0.tgz#da1de4ae905b1b9ff682cab0bed6b2e3be9c04e5" - integrity sha512-LmE/KO6DUy0nFY/OoQU0XelnmDt+V8lPQhh8MOVa7Y5k2gGRd6U9Kp3wAjhB4OHg57tUO0nOnwYQhRRyEAyOyg== +"@typescript-eslint/types@5.14.0": + version "5.14.0" + resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.14.0.tgz#96317cf116cea4befabc0defef371a1013f8ab11" + integrity sha512-BR6Y9eE9360LNnW3eEUqAg6HxS9Q35kSIs4rp4vNHRdfg0s+/PgHgskvu5DFTM7G5VKAVjuyaN476LCPrdA7Mw== -"@typescript-eslint/typescript-estree@5.13.0": - version "5.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.13.0.tgz#b37c07b748ff030a3e93d87c842714e020b78141" - integrity sha512-Q9cQow0DeLjnp5DuEDjLZ6JIkwGx3oYZe+BfcNuw/POhtpcxMTy18Icl6BJqTSd+3ftsrfuVb7mNHRZf7xiaNA== +"@typescript-eslint/typescript-estree@5.14.0": + version "5.14.0" + resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.14.0.tgz#78b7f7385d5b6f2748aacea5c9b7f6ae62058314" + integrity sha512-QGnxvROrCVtLQ1724GLTHBTR0lZVu13izOp9njRvMkCBgWX26PKvmMP8k82nmXBRD3DQcFFq2oj3cKDwr0FaUA== dependencies: - "@typescript-eslint/types" "5.13.0" - "@typescript-eslint/visitor-keys" "5.13.0" + "@typescript-eslint/types" "5.14.0" + "@typescript-eslint/visitor-keys" "5.14.0" debug "^4.3.2" globby "^11.0.4" is-glob "^4.0.3" semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/utils@5.13.0": - version "5.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.13.0.tgz#2328feca700eb02837298339a2e49c46b41bd0af" - integrity sha512-+9oHlPWYNl6AwwoEt5TQryEHwiKRVjz7Vk6kaBeD3/kwHE5YqTGHtm/JZY8Bo9ITOeKutFaXnBlMgSATMJALUQ== +"@typescript-eslint/utils@5.14.0": + version "5.14.0" + resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.14.0.tgz#6c8bc4f384298cbbb32b3629ba7415f9f80dc8c4" + integrity sha512-EHwlII5mvUA0UsKYnVzySb/5EE/t03duUTweVy8Zqt3UQXBrpEVY144OTceFKaOe4xQXZJrkptCf7PjEBeGK4w== dependencies: "@types/json-schema" "^7.0.9" - "@typescript-eslint/scope-manager" "5.13.0" - "@typescript-eslint/types" "5.13.0" - "@typescript-eslint/typescript-estree" "5.13.0" + "@typescript-eslint/scope-manager" "5.14.0" + "@typescript-eslint/types" "5.14.0" + "@typescript-eslint/typescript-estree" "5.14.0" eslint-scope "^5.1.1" eslint-utils "^3.0.0" -"@typescript-eslint/visitor-keys@5.13.0": - version "5.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.13.0.tgz#f45ff55bcce16403b221ac9240fbeeae4764f0fd" - integrity sha512-HLKEAS/qA1V7d9EzcpLFykTePmOQqOFim8oCvhY3pZgQ8Hi38hYpHd9e5GN6nQBFQNecNhws5wkS9Y5XIO0s/g== +"@typescript-eslint/visitor-keys@5.14.0": + version "5.14.0" + resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.14.0.tgz#1927005b3434ccd0d3ae1b2ecf60e65943c36986" + integrity sha512-yL0XxfzR94UEkjBqyymMLgCBdojzEuy/eim7N9/RIcTNxpJudAcqsU8eRyfzBbcEzGoPWfdM3AGak3cN08WOIw== dependencies: - "@typescript-eslint/types" "5.13.0" + "@typescript-eslint/types" "5.14.0" eslint-visitor-keys "^3.0.0" "@webassemblyjs/ast@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7" + resolved "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7" integrity sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw== dependencies: "@webassemblyjs/helper-numbers" "1.11.1" @@ -3445,22 +3277,22 @@ "@webassemblyjs/floating-point-hex-parser@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz#f6c61a705f0fd7a6aecaa4e8198f23d9dc179e4f" + resolved "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz#f6c61a705f0fd7a6aecaa4e8198f23d9dc179e4f" integrity sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ== "@webassemblyjs/helper-api-error@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz#1a63192d8788e5c012800ba6a7a46c705288fd16" + resolved "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz#1a63192d8788e5c012800ba6a7a46c705288fd16" integrity sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg== "@webassemblyjs/helper-buffer@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz#832a900eb444884cde9a7cad467f81500f5e5ab5" + resolved "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz#832a900eb444884cde9a7cad467f81500f5e5ab5" integrity sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA== "@webassemblyjs/helper-numbers@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz#64d81da219fbbba1e3bd1bfc74f6e8c4e10a62ae" + resolved "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz#64d81da219fbbba1e3bd1bfc74f6e8c4e10a62ae" integrity sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ== dependencies: "@webassemblyjs/floating-point-hex-parser" "1.11.1" @@ -3469,12 +3301,12 @@ "@webassemblyjs/helper-wasm-bytecode@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz#f328241e41e7b199d0b20c18e88429c4433295e1" + resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz#f328241e41e7b199d0b20c18e88429c4433295e1" integrity sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q== "@webassemblyjs/helper-wasm-section@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz#21ee065a7b635f319e738f0dd73bfbda281c097a" + resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz#21ee065a7b635f319e738f0dd73bfbda281c097a" integrity sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg== dependencies: "@webassemblyjs/ast" "1.11.1" @@ -3484,26 +3316,26 @@ "@webassemblyjs/ieee754@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz#963929e9bbd05709e7e12243a099180812992614" + resolved "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz#963929e9bbd05709e7e12243a099180812992614" integrity sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ== dependencies: "@xtuc/ieee754" "^1.2.0" "@webassemblyjs/leb128@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.1.tgz#ce814b45574e93d76bae1fb2644ab9cdd9527aa5" + resolved "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz#ce814b45574e93d76bae1fb2644ab9cdd9527aa5" integrity sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw== dependencies: "@xtuc/long" "4.2.2" "@webassemblyjs/utf8@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.1.tgz#d1f8b764369e7c6e6bae350e854dec9a59f0a3ff" + resolved "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz#d1f8b764369e7c6e6bae350e854dec9a59f0a3ff" integrity sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ== "@webassemblyjs/wasm-edit@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz#ad206ebf4bf95a058ce9880a8c092c5dec8193d6" + resolved "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz#ad206ebf4bf95a058ce9880a8c092c5dec8193d6" integrity sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA== dependencies: "@webassemblyjs/ast" "1.11.1" @@ -3517,7 +3349,7 @@ "@webassemblyjs/wasm-gen@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz#86c5ea304849759b7d88c47a32f4f039ae3c8f76" + resolved "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz#86c5ea304849759b7d88c47a32f4f039ae3c8f76" integrity sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA== dependencies: "@webassemblyjs/ast" "1.11.1" @@ -3528,7 +3360,7 @@ "@webassemblyjs/wasm-opt@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz#657b4c2202f4cf3b345f8a4c6461c8c2418985f2" + resolved "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz#657b4c2202f4cf3b345f8a4c6461c8c2418985f2" integrity sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw== dependencies: "@webassemblyjs/ast" "1.11.1" @@ -3538,7 +3370,7 @@ "@webassemblyjs/wasm-parser@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz#86ca734534f417e9bd3c67c7a1c75d8be41fb199" + resolved "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz#86ca734534f417e9bd3c67c7a1c75d8be41fb199" integrity sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA== dependencies: "@webassemblyjs/ast" "1.11.1" @@ -3550,7 +3382,7 @@ "@webassemblyjs/wast-printer@1.11.1": version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz#d0c73beda8eec5426f10ae8ef55cee5e7084c2f0" + resolved "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz#d0c73beda8eec5426f10ae8ef55cee5e7084c2f0" integrity sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg== dependencies: "@webassemblyjs/ast" "1.11.1" @@ -3558,34 +3390,34 @@ "@webpack-cli/configtest@^1.1.1": version "1.1.1" - resolved "https://registry.yarnpkg.com/@webpack-cli/configtest/-/configtest-1.1.1.tgz#9f53b1b7946a6efc2a749095a4f450e2932e8356" + resolved "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.1.1.tgz#9f53b1b7946a6efc2a749095a4f450e2932e8356" integrity sha512-1FBc1f9G4P/AxMqIgfZgeOTuRnwZMten8E7zap5zgpPInnCrP8D4Q81+4CWIch8i/Nf7nXjP0v6CjjbHOrXhKg== "@webpack-cli/info@^1.4.1": version "1.4.1" - resolved "https://registry.yarnpkg.com/@webpack-cli/info/-/info-1.4.1.tgz#2360ea1710cbbb97ff156a3f0f24556e0fc1ebea" + resolved "https://registry.npmjs.org/@webpack-cli/info/-/info-1.4.1.tgz#2360ea1710cbbb97ff156a3f0f24556e0fc1ebea" integrity sha512-PKVGmazEq3oAo46Q63tpMr4HipI3OPfP7LiNOEJg963RMgT0rqheag28NCML0o3GIzA3DmxP1ZIAv9oTX1CUIA== dependencies: envinfo "^7.7.3" "@webpack-cli/serve@^1.6.1": version "1.6.1" - resolved "https://registry.yarnpkg.com/@webpack-cli/serve/-/serve-1.6.1.tgz#0de2875ac31b46b6c5bb1ae0a7d7f0ba5678dffe" + resolved "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.6.1.tgz#0de2875ac31b46b6c5bb1ae0a7d7f0ba5678dffe" integrity sha512-gNGTiTrjEVQ0OcVnzsRSqTxaBSr+dmTfm+qJsCDluky8uhdLWep7Gcr62QsAKHTMxjCS/8nEITsmFAhfIx+QSw== "@xtuc/ieee754@^1.2.0": version "1.2.0" - resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" + resolved "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== "@xtuc/long@4.2.2": version "4.2.2" - resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" + resolved "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== JSONStream@^1.0.4: version "1.3.5" - resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" + resolved "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ== dependencies: jsonparse "^1.2.0" @@ -3593,17 +3425,17 @@ JSONStream@^1.0.4: abab@^2.0.3, abab@^2.0.5: version "2.0.5" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" + resolved "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== abbrev@1: version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + resolved "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== acorn-globals@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" + resolved "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== dependencies: acorn "^7.1.1" @@ -3611,50 +3443,50 @@ acorn-globals@^6.0.0: acorn-import-assertions@^1.7.6: version "1.8.0" - resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" + resolved "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" integrity sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw== acorn-jsx@^5.3.1: version "5.3.2" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== acorn-walk@^7.1.1: version "7.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" + resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== acorn@^7.1.1: version "7.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.2.4, acorn@^8.4.1, acorn@^8.7.0: +acorn@^8.2.4, acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.0: version "8.7.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf" integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ== add-stream@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa" + resolved "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa" integrity sha1-anmQQ3ynNtXhKI25K9MmbV9csqo= aes-js@3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" + resolved "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" integrity sha1-4h3xCtbCBTKVvLuNq0Cwnb6ofk0= agent-base@6, agent-base@^6.0.2: version "6.0.2" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + resolved "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== dependencies: debug "4" agentkeepalive@^4.1.3: - version "4.1.4" - resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.1.4.tgz#d928028a4862cb11718e55227872e842a44c945b" - integrity sha512-+V/rGa3EuU74H6wR04plBb7Ks10FbtUQgRj/FQOG7uUIEuaINI+AiqJR1k6t3SVNs7o7ZjIdus6706qqzVq8jQ== + version "4.2.1" + resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz#a7975cbb9f83b367f06c90cc51ff28fe7d499717" + integrity sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA== dependencies: debug "^4.1.0" depd "^1.1.2" @@ -3662,7 +3494,7 @@ agentkeepalive@^4.1.3: aggregate-error@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + resolved "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== dependencies: clean-stack "^2.0.0" @@ -3670,26 +3502,26 @@ aggregate-error@^3.0.0: ajv-formats@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" + resolved "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA== dependencies: ajv "^8.0.0" ajv-keywords@^3.5.2: version "3.5.2" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" + resolved "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== ajv-keywords@^5.0.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz#69d4d385a4733cdbeab44964a1170a88f87f0e16" + resolved "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz#69d4d385a4733cdbeab44964a1170a88f87f0e16" integrity sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw== dependencies: fast-deep-equal "^3.1.3" ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: version "6.12.6" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== dependencies: fast-deep-equal "^3.1.1" @@ -3698,9 +3530,9 @@ ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: uri-js "^4.2.2" ajv@^8.0.0, ajv@^8.8.0: - version "8.8.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.8.2.tgz#01b4fef2007a28bf75f0b7fc009f62679de4abbb" - integrity sha512-x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw== + version "8.10.0" + resolved "https://registry.npmjs.org/ajv/-/ajv-8.10.0.tgz#e573f719bd3af069017e3b66538ab968d040e54d" + integrity sha512-bzqAEZOjkrUMl2afH8dknrq5KEk2SrwdBROR+vH1EKVQTqaUbJVPdc/gEdggTMM0Se+s+Ja4ju4TlNcStKl2Hw== dependencies: fast-deep-equal "^3.1.1" json-schema-traverse "^1.0.0" @@ -3709,43 +3541,43 @@ ajv@^8.0.0, ajv@^8.8.0: ansi-escapes@^4.2.1: version "4.3.2" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== dependencies: type-fest "^0.21.3" ansi-regex@^2.0.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= ansi-regex@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-styles@^3.2.1: version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" ansi-styles@^4.0.0, ansi-styles@^4.1.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: color-convert "^2.0.1" ansi-styles@^5.0.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== anymatch@^3.0.3, anymatch@~3.1.2: version "3.1.2" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== dependencies: normalize-path "^3.0.0" @@ -3753,17 +3585,17 @@ anymatch@^3.0.3, anymatch@~3.1.2: aproba@^1.0.3: version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + resolved "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== aproba@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" + resolved "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== are-we-there-yet@~1.1.2: version "1.1.7" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146" + resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146" integrity sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g== dependencies: delegates "^1.0.0" @@ -3771,19 +3603,19 @@ are-we-there-yet@~1.1.2: argparse@^1.0.7: version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== dependencies: sprintf-js "~1.0.2" argparse@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== aria-query@^4.2.2: version "4.2.2" - resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-4.2.2.tgz#0d2ca6c9aceb56b8977e9fed6aed7e15bbd2f83b" + resolved "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz#0d2ca6c9aceb56b8977e9fed6aed7e15bbd2f83b" integrity sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA== dependencies: "@babel/runtime" "^7.10.2" @@ -3791,17 +3623,17 @@ aria-query@^4.2.2: array-differ@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-3.0.0.tgz#3cbb3d0f316810eafcc47624734237d6aee4ae6b" + resolved "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz#3cbb3d0f316810eafcc47624734237d6aee4ae6b" integrity sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg== array-ify@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" + resolved "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" integrity sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4= array-includes@^3.1.3, array-includes@^3.1.4: version "3.1.4" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.4.tgz#f5b493162c760f3539631f005ba2bb46acb45ba9" + resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz#f5b493162c760f3539631f005ba2bb46acb45ba9" integrity sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw== dependencies: call-bind "^1.0.2" @@ -3812,17 +3644,17 @@ array-includes@^3.1.3, array-includes@^3.1.4: array-union@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== array-union@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-3.0.1.tgz#da52630d327f8b88cfbfb57728e2af5cd9b6b975" + resolved "https://registry.npmjs.org/array-union/-/array-union-3.0.1.tgz#da52630d327f8b88cfbfb57728e2af5cd9b6b975" integrity sha512-1OvF9IbWwaeiM9VhzYXVQacMibxpXOMYVNIvMtKRyX9SImBXpKcFr8XvFDeEslCyuH/t6KRt7HEO94AlP8Iatw== array.prototype.flat@^1.2.5: version "1.2.5" - resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz#07e0975d84bbc7c48cd1879d609e682598d33e13" + resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz#07e0975d84bbc7c48cd1879d609e682598d33e13" integrity sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg== dependencies: call-bind "^1.0.2" @@ -3831,7 +3663,7 @@ array.prototype.flat@^1.2.5: array.prototype.flatmap@^1.2.5: version "1.2.5" - resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.5.tgz#908dc82d8a406930fdf38598d51e7411d18d4446" + resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.5.tgz#908dc82d8a406930fdf38598d51e7411d18d4446" integrity sha512-08u6rVyi1Lj7oqWbS9nUxliETrtIROT4XGTA4D/LWGten6E3ocm7cy9SIrmNHOL5XVbVuckUp3X6Xyg8/zpvHA== dependencies: call-bind "^1.0.0" @@ -3840,81 +3672,81 @@ array.prototype.flatmap@^1.2.5: arrify@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + resolved "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= arrify@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" + resolved "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== asap@^2.0.0: version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" + resolved "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= asn1@~0.2.3: version "0.2.6" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" + resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ== dependencies: safer-buffer "~2.1.0" assert-plus@1.0.0, assert-plus@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + resolved "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= ast-types-flow@^0.0.7: version "0.0.7" - resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad" + resolved "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad" integrity sha1-9wtzXGvKGlycItmCw+Oef+ujva0= asynckit@^0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= at-least-node@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" + resolved "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== attr-accept@^2.2.2: version "2.2.2" - resolved "https://registry.yarnpkg.com/attr-accept/-/attr-accept-2.2.2.tgz#646613809660110749e92f2c10833b70968d929b" + resolved "https://registry.npmjs.org/attr-accept/-/attr-accept-2.2.2.tgz#646613809660110749e92f2c10833b70968d929b" integrity sha512-7prDjvt9HmqiZ0cl5CRjtS84sEyhsHP2coDkaZKRKVfCDo9s7iw7ChVmar78Gu9pC4SoR/28wFu/G5JJhTnqEg== aws-sign2@~0.7.0: version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + resolved "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= aws4@^1.8.0: version "1.11.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" + resolved "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== axe-core@^4.3.5: - version "4.3.5" - resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.3.5.tgz#78d6911ba317a8262bfee292aeafcc1e04b49cc5" - integrity sha512-WKTW1+xAzhMS5dJsxWkliixlO/PqC4VhmO9T4juNYcaTg9jzWiJsou6m5pxWYGfigWbwzJWeFY6z47a+4neRXA== + version "4.4.1" + resolved "https://registry.npmjs.org/axe-core/-/axe-core-4.4.1.tgz#7dbdc25989298f9ad006645cd396782443757413" + integrity sha512-gd1kmb21kwNuWr6BQz8fv6GNECPBnUasepcoLbekws23NVBLODdsClRZ+bQ8+9Uomf3Sm3+Vwn0oYG9NvwnJCw== axios@^0.23.0: version "0.23.0" - resolved "https://registry.yarnpkg.com/axios/-/axios-0.23.0.tgz#b0fa5d0948a8d1d75e3d5635238b6c4625b05149" + resolved "https://registry.npmjs.org/axios/-/axios-0.23.0.tgz#b0fa5d0948a8d1d75e3d5635238b6c4625b05149" integrity sha512-NmvAE4i0YAv5cKq8zlDoPd1VLKAqX5oLuZKs8xkJa4qi6RGn0uhCYFjWtHHC9EM/MwOwYWOs53W+V0aqEXq1sg== dependencies: follow-redirects "^1.14.4" axobject-query@^2.2.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.2.0.tgz#943d47e10c0b704aa42275e20edf3722648989be" + resolved "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz#943d47e10c0b704aa42275e20edf3722648989be" integrity sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA== babel-jest@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.5.1.tgz#a1bf8d61928edfefd21da27eb86a695bfd691444" + resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz#a1bf8d61928edfefd21da27eb86a695bfd691444" integrity sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg== dependencies: "@jest/transform" "^27.5.1" @@ -3928,14 +3760,14 @@ babel-jest@^27.5.1: babel-plugin-dynamic-import-node@^2.3.3: version "2.3.3" - resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3" + resolved "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3" integrity sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ== dependencies: object.assign "^4.1.0" babel-plugin-istanbul@^6.1.1: version "6.1.1" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" + resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -3946,7 +3778,7 @@ babel-plugin-istanbul@^6.1.1: babel-plugin-jest-hoist@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz#9be98ecf28c331eb9f5df9c72d6f89deb8181c2e" + resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz#9be98ecf28c331eb9f5df9c72d6f89deb8181c2e" integrity sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ== dependencies: "@babel/template" "^7.3.3" @@ -3955,47 +3787,48 @@ babel-plugin-jest-hoist@^27.5.1: "@types/babel__traverse" "^7.0.6" babel-plugin-polyfill-corejs2@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.0.tgz#407082d0d355ba565af24126fb6cb8e9115251fd" - integrity sha512-wMDoBJ6uG4u4PNFh72Ty6t3EgfA91puCuAwKIazbQlci+ENb/UU9A3xG5lutjUIiXCIn1CY5L15r9LimiJyrSA== + version "0.3.1" + resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz#440f1b70ccfaabc6b676d196239b138f8a2cfba5" + integrity sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w== dependencies: "@babel/compat-data" "^7.13.11" - "@babel/helper-define-polyfill-provider" "^0.3.0" + "@babel/helper-define-polyfill-provider" "^0.3.1" semver "^6.1.1" -babel-plugin-polyfill-corejs3@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.4.0.tgz#0b571f4cf3d67f911512f5c04842a7b8e8263087" - integrity sha512-YxFreYwUfglYKdLUGvIF2nJEsGwj+RhWSX/ije3D2vQPOXuyMLMtg/cCGMDpOA7Nd+MwlNdnGODbd2EwUZPlsw== +babel-plugin-polyfill-corejs3@^0.5.0: + version "0.5.2" + resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz#aabe4b2fa04a6e038b688c5e55d44e78cd3a5f72" + integrity sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ== dependencies: - "@babel/helper-define-polyfill-provider" "^0.3.0" - core-js-compat "^3.18.0" + "@babel/helper-define-polyfill-provider" "^0.3.1" + core-js-compat "^3.21.0" babel-plugin-polyfill-regenerator@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.0.tgz#9ebbcd7186e1a33e21c5e20cae4e7983949533be" - integrity sha512-dhAPTDLGoMW5/84wkgwiLRwMnio2i1fUe53EuvtKMv0pn2p3S8OCoV1xAzfJPl0KOX7IB89s2ib85vbYiea3jg== + version "0.3.1" + resolved "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz#2c0678ea47c75c8cc2fbb1852278d8fb68233990" + integrity sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A== dependencies: - "@babel/helper-define-polyfill-provider" "^0.3.0" + "@babel/helper-define-polyfill-provider" "^0.3.1" "babel-plugin-styled-components@>= 1.12.0": - version "2.0.2" - resolved "https://registry.yarnpkg.com/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.2.tgz#0fac11402dc9db73698b55847ab1dc73f5197c54" - integrity sha512-7eG5NE8rChnNTDxa6LQfynwgHTVOYYaHJbUYSlOhk8QBXIQiMBKq4gyfHBBKPrxUcVBXVJL61ihduCpCQbuNbw== + version "2.0.6" + resolved "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.6.tgz#6f76c7f7224b7af7edc24a4910351948c691fc90" + integrity sha512-Sk+7o/oa2HfHv3Eh8sxoz75/fFvEdHsXV4grdeHufX0nauCmymlnN0rGhIvfpMQSJMvGutJ85gvCGea4iqmDpg== dependencies: "@babel/helper-annotate-as-pure" "^7.16.0" "@babel/helper-module-imports" "^7.16.0" babel-plugin-syntax-jsx "^6.18.0" lodash "^4.17.11" + picomatch "^2.3.0" babel-plugin-syntax-jsx@^6.18.0: version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" + resolved "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" integrity sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY= babel-preset-current-node-syntax@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" + resolved "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== dependencies: "@babel/plugin-syntax-async-generators" "^7.8.4" @@ -4013,7 +3846,7 @@ babel-preset-current-node-syntax@^1.0.0: babel-preset-jest@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz#91f10f58034cb7989cb4f962b69fa6eef6a6bc81" + resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz#91f10f58034cb7989cb4f962b69fa6eef6a6bc81" integrity sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag== dependencies: babel-plugin-jest-hoist "^27.5.1" @@ -4021,59 +3854,59 @@ babel-preset-jest@^27.5.1: balanced-match@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== bcrypt-pbkdf@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" + resolved "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= dependencies: tweetnacl "^0.14.3" bech32@1.1.4: version "1.1.4" - resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" + resolved "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== before-after-hook@^2.2.0: version "2.2.2" - resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.2.tgz#a6e8ca41028d90ee2c24222f201c90956091613e" + resolved "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.2.tgz#a6e8ca41028d90ee2c24222f201c90956091613e" integrity sha512-3pZEU3NT5BFUo/AD5ERPWOgQOCZITni6iavr5AUw5AUwQjMlI0kzu5btnyD39AF0gUEsDPwJT+oY1ORBJijPjQ== big.js@^5.2.2: version "5.2.2" - resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" + resolved "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== bignumber.js@^9.0.0: - version "9.0.1" - resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.0.1.tgz#8d7ba124c882bfd8e43260c67475518d0689e4e5" - integrity sha512-IdZR9mh6ahOBv/hYGiXyVuyCetmGJhtYkqLBpTStdhEGjegpPlUawydyaF3pbIOFynJTpllEs+NP+CS9jKFLjA== + version "9.0.2" + resolved "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz#71c6c6bed38de64e24a65ebe16cfcf23ae693673" + integrity sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw== binary-extensions@^2.0.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== bn.js@^4.11.9: version "4.12.0" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" + resolved "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== bn.js@^5.2.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002" + resolved "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002" integrity sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw== boolbase@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= brace-expansion@^1.1.7: version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: balanced-match "^1.0.0" @@ -4081,79 +3914,79 @@ brace-expansion@^1.1.7: braces@^3.0.1, braces@~3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== dependencies: fill-range "^7.0.1" brorand@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + resolved "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= browser-process-hrtime@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" + resolved "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browserslist@^4.14.5, browserslist@^4.17.5, browserslist@^4.17.6: - version "4.18.1" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.18.1.tgz#60d3920f25b6860eb917c6c7b185576f4d8b017f" - integrity sha512-8ScCzdpPwR2wQh8IT82CA2VgDwjHyqMovPBZSNH54+tm4Jk2pCuv90gmAdH6J84OCRWi0b4gMe6O6XPXuJnjgQ== +browserslist@^4.14.5, browserslist@^4.17.5, browserslist@^4.19.1: + version "4.20.0" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.20.0.tgz#35951e3541078c125d36df76056e94738a52ebe9" + integrity sha512-bnpOoa+DownbciXj0jVGENf8VYQnE2LNWomhYuCsMmmx9Jd9lwq0WXODuwpSsp8AVdKM2/HorrzxAfbKvWTByQ== dependencies: - caniuse-lite "^1.0.30001280" - electron-to-chromium "^1.3.896" + caniuse-lite "^1.0.30001313" + electron-to-chromium "^1.4.76" escalade "^3.1.1" - node-releases "^2.0.1" + node-releases "^2.0.2" picocolors "^1.0.0" bs-logger@0.x: version "0.2.6" - resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + resolved "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== dependencies: fast-json-stable-stringify "2.x" bser@2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" + resolved "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== dependencies: node-int64 "^0.4.0" buffer-crc32@^0.2.5: version "0.2.13" - resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + resolved "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI= buffer-from@^1.0.0: version "1.1.2" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== builtin-modules@^3.0.0, builtin-modules@^3.1.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.2.0.tgz#45d5db99e7ee5e6bc4f362e008bf917ab5049887" + resolved "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz#45d5db99e7ee5e6bc4f362e008bf917ab5049887" integrity sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA== builtins@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" + resolved "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" integrity sha1-y5T662HIaWRR2zZTThQi+U8K7og= byline@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" + resolved "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" integrity sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE= byte-size@^7.0.0: version "7.0.1" - resolved "https://registry.yarnpkg.com/byte-size/-/byte-size-7.0.1.tgz#b1daf3386de7ab9d706b941a748dbfc71130dee3" + resolved "https://registry.npmjs.org/byte-size/-/byte-size-7.0.1.tgz#b1daf3386de7ab9d706b941a748dbfc71130dee3" integrity sha512-crQdqyCwhokxwV1UyDzLZanhkugAgft7vt0qbbdt60C6Zf3CAiGmtUCylbtYwrU6loOUw3euGrNtW1J651ot1A== cacache@^15.0.5, cacache@^15.2.0: version "15.3.0" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" + resolved "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== dependencies: "@npmcli/fs" "^1.0.0" @@ -4177,7 +4010,7 @@ cacache@^15.0.5, cacache@^15.2.0: call-bind@^1.0.0, call-bind@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== dependencies: function-bind "^1.1.1" @@ -4185,31 +4018,31 @@ call-bind@^1.0.0, call-bind@^1.0.2: caller-callsite@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" + resolved "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= dependencies: callsites "^2.0.0" caller-path@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" + resolved "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= dependencies: caller-callsite "^2.0.0" callsites@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" + resolved "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= callsites@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== camel-case@^4.1.2: version "4.1.2" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" + resolved "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== dependencies: pascal-case "^3.1.2" @@ -4217,7 +4050,7 @@ camel-case@^4.1.2: camelcase-keys@^6.2.2: version "6.2.2" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" + resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" integrity sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg== dependencies: camelcase "^5.3.1" @@ -4226,32 +4059,32 @@ camelcase-keys@^6.2.2: camelcase@^5.3.1: version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== camelcase@^6.2.0: - version "6.2.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.1.tgz#250fd350cfd555d0d2160b1d51510eaf8326e86e" - integrity sha512-tVI4q5jjFV5CavAU8DXfza/TJcZutVKo/5Foskmsqcm0MsL91moHvwiGNnqaa2o6PF/7yT5ikDRcVcl8Rj6LCA== + version "6.3.0" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== camelize@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/camelize/-/camelize-1.0.0.tgz#164a5483e630fa4321e5af07020e531831b2609b" + resolved "https://registry.npmjs.org/camelize/-/camelize-1.0.0.tgz#164a5483e630fa4321e5af07020e531831b2609b" integrity sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs= -caniuse-lite@^1.0.30001280, caniuse-lite@^1.0.30001283: - version "1.0.30001300" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001300.tgz#11ab6c57d3eb6f964cba950401fd00a146786468" - integrity sha512-cVjiJHWGcNlJi8TZVKNMnvMid3Z3TTdDHmLDzlOdIiZq138Exvo0G+G0wTdVYolxKb4AYwC+38pxodiInVtJSA== +caniuse-lite@^1.0.30001283, caniuse-lite@^1.0.30001313: + version "1.0.30001314" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001314.tgz#65c7f9fb7e4594fca0a333bec1d8939662377596" + integrity sha512-0zaSO+TnCHtHJIbpLroX7nsD+vYuOVjl3uzFbJO1wMVbuveJA0RK2WcQA9ZUIOiO0/ArMiMgHJLxfEZhQiC0kw== caseless@~0.12.0: version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + resolved "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= chalk@^2.0.0: version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== dependencies: ansi-styles "^3.2.1" @@ -4260,7 +4093,7 @@ chalk@^2.0.0: chalk@^4.0.0, chalk@^4.1.0: version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== dependencies: ansi-styles "^4.1.0" @@ -4268,18 +4101,18 @@ chalk@^4.0.0, chalk@^4.1.0: char-regex@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" + resolved "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== chardet@^0.7.0: version "0.7.0" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" + resolved "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== chokidar@^3.4.1: - version "3.5.2" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.2.tgz#dba3976fcadb016f66fd365021d91600d01c1e75" - integrity sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ== + version "3.5.3" + resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" + integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== dependencies: anymatch "~3.1.2" braces "~3.0.2" @@ -4293,61 +4126,61 @@ chokidar@^3.4.1: chownr@^1.1.4: version "1.1.4" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" + resolved "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== chownr@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + resolved "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== chrome-trace-event@^1.0.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" + resolved "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== ci-info@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + resolved "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== ci-info@^3.2.0: version "3.3.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.3.0.tgz#b4ed1fb6818dea4803a55c623041f9165d2066b2" + resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.3.0.tgz#b4ed1fb6818dea4803a55c623041f9165d2066b2" integrity sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw== cjs-module-lexer@^1.0.0: version "1.2.2" - resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" + resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA== clean-css@^5.2.2: - version "5.2.2" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.2.2.tgz#d3a7c6ee2511011e051719838bdcf8314dc4548d" - integrity sha512-/eR8ru5zyxKzpBLv9YZvMXgTSSQn7AdkMItMYynsFgGwTveCRVam9IUPFloE85B4vAIj05IuKmmEoV7/AQjT0w== + version "5.2.4" + resolved "https://registry.npmjs.org/clean-css/-/clean-css-5.2.4.tgz#982b058f8581adb2ae062520808fb2429bd487a4" + integrity sha512-nKseG8wCzEuji/4yrgM/5cthL9oTDc5UOQyFMvW/Q53oP6gLH690o1NbuTh6Y18nujr7BxlsFuS7gXLnLzKJGg== dependencies: source-map "~0.6.0" clean-stack@^2.0.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + resolved "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== cli-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" + resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== dependencies: restore-cursor "^3.1.0" cli-width@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" + resolved "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== cliui@^7.0.2: version "7.0.4" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + resolved "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== dependencies: string-width "^4.2.0" @@ -4356,7 +4189,7 @@ cliui@^7.0.2: clone-deep@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" + resolved "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== dependencies: is-plain-object "^2.0.4" @@ -4365,103 +4198,103 @@ clone-deep@^4.0.1: clone@^1.0.2: version "1.0.4" - resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" + resolved "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= clsx@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.1.1.tgz#98b3134f9abbdf23b2663491ace13c5c03a73188" + resolved "https://registry.npmjs.org/clsx/-/clsx-1.1.1.tgz#98b3134f9abbdf23b2663491ace13c5c03a73188" integrity sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA== cmd-shim@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-4.1.0.tgz#b3a904a6743e9fede4148c6f3800bf2a08135bdd" + resolved "https://registry.npmjs.org/cmd-shim/-/cmd-shim-4.1.0.tgz#b3a904a6743e9fede4148c6f3800bf2a08135bdd" integrity sha512-lb9L7EM4I/ZRVuljLPEtUJOP+xiQVknZ4ZMpMgEp4JzNldPb27HU03hi6K1/6CoIuit/Zm/LQXySErFeXxDprw== dependencies: mkdirp-infer-owner "^2.0.0" co@^4.6.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= code-point-at@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + resolved "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= collect-v8-coverage@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" + resolved "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== color-convert@^1.9.0: version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: color-name "1.1.3" color-convert@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== dependencies: color-name "~1.1.4" color-name@1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= color-name@~1.1.4: version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== colorette@^2.0.14: version "2.0.16" - resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.16.tgz#713b9af84fdb000139f04546bd4a93f62a5085da" + resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz#713b9af84fdb000139f04546bd4a93f62a5085da" integrity sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g== columnify@^1.5.4: - version "1.5.4" - resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.5.4.tgz#4737ddf1c7b69a8a7c340570782e947eec8e78bb" - integrity sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs= + version "1.6.0" + resolved "https://registry.npmjs.org/columnify/-/columnify-1.6.0.tgz#6989531713c9008bb29735e61e37acf5bd553cf3" + integrity sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q== dependencies: - strip-ansi "^3.0.0" + strip-ansi "^6.0.1" wcwidth "^1.0.0" combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: version "1.0.8" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== dependencies: delayed-stream "~1.0.0" commander@^2.20.0: version "2.20.3" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== commander@^7.0.0, commander@^7.2.0: version "7.2.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" + resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== commander@^8.3.0: version "8.3.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" + resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== commondir@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + resolved "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= compare-func@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-2.0.0.tgz#fb65e75edbddfd2e568554e8b5b05fff7a51fcb3" + resolved "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz#fb65e75edbddfd2e568554e8b5b05fff7a51fcb3" integrity sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA== dependencies: array-ify "^1.0.0" @@ -4469,12 +4302,12 @@ compare-func@^2.0.0: concat-map@0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= concat-stream@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" + resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A== dependencies: buffer-from "^1.0.0" @@ -4484,7 +4317,7 @@ concat-stream@^2.0.0: config-chain@^1.1.12: version "1.1.13" - resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" + resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ== dependencies: ini "^1.3.4" @@ -4492,12 +4325,12 @@ config-chain@^1.1.12: console-control-strings@^1.0.0, console-control-strings@~1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + resolved "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= conventional-changelog-angular@^5.0.12: version "5.0.13" - resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" + resolved "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" integrity sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA== dependencies: compare-func "^2.0.0" @@ -4505,7 +4338,7 @@ conventional-changelog-angular@^5.0.12: conventional-changelog-core@^4.2.2: version "4.2.4" - resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz#e50d047e8ebacf63fac3dc67bf918177001e1e9f" + resolved "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz#e50d047e8ebacf63fac3dc67bf918177001e1e9f" integrity sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg== dependencies: add-stream "^1.0.0" @@ -4525,17 +4358,17 @@ conventional-changelog-core@^4.2.2: conventional-changelog-preset-loader@^2.3.4: version "2.3.4" - resolved "https://registry.yarnpkg.com/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz#14a855abbffd59027fd602581f1f34d9862ea44c" + resolved "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz#14a855abbffd59027fd602581f1f34d9862ea44c" integrity sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g== conventional-changelog-writer@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-5.0.0.tgz#c4042f3f1542f2f41d7d2e0d6cad23aba8df8eec" - integrity sha512-HnDh9QHLNWfL6E1uHz6krZEQOgm8hN7z/m7tT16xwd802fwgMN0Wqd7AQYVkhpsjDUx/99oo+nGgvKF657XP5g== + version "5.0.1" + resolved "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-5.0.1.tgz#e0757072f045fe03d91da6343c843029e702f359" + integrity sha512-5WsuKUfxW7suLblAbFnxAcrvf6r+0b7GvNaWUwUIk0bXMnENP/PEieGKVUQrjPqwPT4o3EPAASBXiY6iHooLOQ== dependencies: conventional-commits-filter "^2.0.7" dateformat "^3.0.0" - handlebars "^4.7.6" + handlebars "^4.7.7" json-stringify-safe "^5.0.1" lodash "^4.17.15" meow "^8.0.0" @@ -4545,16 +4378,16 @@ conventional-changelog-writer@^5.0.0: conventional-commits-filter@^2.0.7: version "2.0.7" - resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz#f8d9b4f182fce00c9af7139da49365b136c8a0b3" + resolved "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz#f8d9b4f182fce00c9af7139da49365b136c8a0b3" integrity sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA== dependencies: lodash.ismatch "^4.4.0" modify-values "^1.0.0" conventional-commits-parser@^3.2.0: - version "3.2.3" - resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.2.3.tgz#fc43704698239451e3ef35fd1d8ed644f46bd86e" - integrity sha512-YyRDR7On9H07ICFpRm/igcdjIqebXbvf4Cff+Pf0BrBys1i1EOzx9iFXNlAbdrLAR8jf7bkUYkDAr8pEy0q4Pw== + version "3.2.4" + resolved "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz#a7d3b77758a202a9b2293d2112a8d8052c740972" + integrity sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q== dependencies: JSONStream "^1.0.4" is-text-path "^1.0.1" @@ -4565,7 +4398,7 @@ conventional-commits-parser@^3.2.0: conventional-recommended-bump@^6.1.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz#cfa623285d1de554012f2ffde70d9c8a22231f55" + resolved "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz#cfa623285d1de554012f2ffde70d9c8a22231f55" integrity sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw== dependencies: concat-stream "^2.0.0" @@ -4579,21 +4412,21 @@ conventional-recommended-bump@^6.1.0: convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: version "1.8.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== dependencies: safe-buffer "~5.1.1" copy-to-clipboard@^3: version "3.3.1" - resolved "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz#115aa1a9998ffab6196f93076ad6da3b913662ae" + resolved "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz#115aa1a9998ffab6196f93076ad6da3b913662ae" integrity sha512-i13qo6kIHTTpCm8/Wup+0b1mVWETvu2kIMzKoK8FpkLkFxlt0znUAHcMzox+T8sPlqtZXq3CulEjQHsYiGFJUw== dependencies: toggle-selection "^1.0.6" copy-webpack-plugin@^10.0.0: version "10.2.4" - resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-10.2.4.tgz#6c854be3fdaae22025da34b9112ccf81c63308fe" + resolved "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-10.2.4.tgz#6c854be3fdaae22025da34b9112ccf81c63308fe" integrity sha512-xFVltahqlsRcyyJqQbDY6EYTtyQZF9rf+JPjwHObLdPFMEISqkFkr7mFoVOC6BfYS/dNThyoQKvziugm+OnwBg== dependencies: fast-glob "^3.2.7" @@ -4603,32 +4436,32 @@ copy-webpack-plugin@^10.0.0: schema-utils "^4.0.0" serialize-javascript "^6.0.0" -core-js-compat@^3.18.0, core-js-compat@^3.19.1: - version "3.19.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.19.1.tgz#fe598f1a9bf37310d77c3813968e9f7c7bb99476" - integrity sha512-Q/VJ7jAF/y68+aUsQJ/afPOewdsGkDtcMb40J8MbuWKlK3Y+wtHq8bTHKPj2WKWLIqmS5JhHs4CzHtz6pT2W6g== +core-js-compat@^3.20.2, core-js-compat@^3.21.0: + version "3.21.1" + resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.21.1.tgz#cac369f67c8d134ff8f9bd1623e3bc2c42068c82" + integrity sha512-gbgX5AUvMb8gwxC7FLVWYT7Kkgu/y7+h/h1X43yJkNqhlK2fuYyQimqvKGNZFAY6CKii/GFKJ2cp/1/42TN36g== dependencies: - browserslist "^4.17.6" + browserslist "^4.19.1" semver "7.0.0" -core-js-pure@^3.19.0: - version "3.19.1" - resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.19.1.tgz#edffc1fc7634000a55ba05e95b3f0fe9587a5aa4" - integrity sha512-Q0Knr8Es84vtv62ei6/6jXH/7izKmOrtrxH9WJTHLCMAVeU+8TF8z8Nr08CsH4Ot0oJKzBzJJL9SJBYIv7WlfQ== +core-js-pure@^3.20.2: + version "3.21.1" + resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.21.1.tgz#8c4d1e78839f5f46208de7230cebfb72bc3bdb51" + integrity sha512-12VZfFIu+wyVbBebyHmRTuEE/tZrB4tJToWcwAMcsp3h4+sHR+fMJWbKpYiCRWlhFBq+KNyO8rIV9rTkeVmznQ== core-util-is@1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= core-util-is@~1.0.0: version "1.0.3" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== cosmiconfig@^5.0.5: version "5.2.1" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" + resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== dependencies: import-fresh "^2.0.0" @@ -4638,7 +4471,7 @@ cosmiconfig@^5.0.5: cosmiconfig@^7.0.0, cosmiconfig@^7.0.1: version "7.0.1" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.1.tgz#714d756522cace867867ccb4474c5d01bbae5d6d" + resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz#714d756522cace867867ccb4474c5d01bbae5d6d" integrity sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ== dependencies: "@types/parse-json" "^4.0.0" @@ -4649,7 +4482,7 @@ cosmiconfig@^7.0.0, cosmiconfig@^7.0.1: cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== dependencies: path-key "^3.1.0" @@ -4658,23 +4491,23 @@ cross-spawn@^7.0.2, cross-spawn@^7.0.3: css-color-keywords@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05" + resolved "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05" integrity sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU= css-select@^4.1.3: - version "4.1.3" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.1.3.tgz#a70440f70317f2669118ad74ff105e65849c7067" - integrity sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA== + version "4.2.1" + resolved "https://registry.npmjs.org/css-select/-/css-select-4.2.1.tgz#9e665d6ae4c7f9d65dbe69d0316e3221fb274cdd" + integrity sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ== dependencies: boolbase "^1.0.0" - css-what "^5.0.0" - domhandler "^4.2.0" - domutils "^2.6.0" - nth-check "^2.0.0" + css-what "^5.1.0" + domhandler "^4.3.0" + domutils "^2.8.0" + nth-check "^2.0.1" css-to-react-native@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-3.0.0.tgz#62dbe678072a824a689bcfee011fc96e02a7d756" + resolved "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.0.0.tgz#62dbe678072a824a689bcfee011fc96e02a7d756" integrity sha512-Ro1yETZA813eoyUp2GDBhG2j+YggidUmzO1/v9eYBKR2EHVEniE2MI/NqpTQ954BMpTPZFsGNPm46qFB9dpaPQ== dependencies: camelize "^1.0.0" @@ -4683,66 +4516,66 @@ css-to-react-native@^3.0.0: css-tree@^1.1.2, css-tree@^1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.3.tgz#eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d" + resolved "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz#eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d" integrity sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q== dependencies: mdn-data "2.0.14" source-map "^0.6.1" -css-what@^5.0.0: +css-what@^5.1.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.1.0.tgz#3f7b707aadf633baf62c2ceb8579b545bb40f7fe" + resolved "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz#3f7b707aadf633baf62c2ceb8579b545bb40f7fe" integrity sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw== csso@^4.2.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529" + resolved "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529" integrity sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA== dependencies: css-tree "^1.1.2" cssom@^0.4.4: version "0.4.4" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" + resolved "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== cssom@~0.3.6: version "0.3.8" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" + resolved "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== cssstyle@^2.3.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" + resolved "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== dependencies: cssom "~0.3.6" -csstype@^3.0.10, csstype@^3.0.2: - version "3.0.10" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.10.tgz#2ad3a7bed70f35b965707c092e5f30b327c290e5" - integrity sha512-2u44ZG2OcNUO9HDp/Jl8C07x6pU/eTR3ncV91SiK3dhG9TWvRVsCoJw14Ckx5DgWkzGA3waZWO3d7pgqpUI/XA== +csstype@^3.0.11, csstype@^3.0.2: + version "3.0.11" + resolved "https://registry.npmjs.org/csstype/-/csstype-3.0.11.tgz#d66700c5eacfac1940deb4e3ee5642792d85cd33" + integrity sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw== damerau-levenshtein@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.7.tgz#64368003512a1a6992593741a09a9d31a836f55d" - integrity sha512-VvdQIPGdWP0SqFXghj79Wf/5LArmreyMsGLa6FG6iC4t3j7j5s71TrwWmT/4akbDQIqjfACkLZmjXhA7g2oUZw== + version "1.0.8" + resolved "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz#b43d286ccbd36bc5b2f7ed41caf2d0aba1f8a6e7" + integrity sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA== dargs@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/dargs/-/dargs-7.0.0.tgz#04015c41de0bcb69ec84050f3d9be0caf8d6d5cc" + resolved "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz#04015c41de0bcb69ec84050f3d9be0caf8d6d5cc" integrity sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg== dashdash@^1.12.0: version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + resolved "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= dependencies: assert-plus "^1.0.0" data-urls@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" + resolved "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== dependencies: abab "^2.0.3" @@ -4751,38 +4584,38 @@ data-urls@^2.0.0: dateformat@^3.0.0: version "3.0.3" - resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" + resolved "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2: version "4.3.3" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664" integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q== dependencies: ms "2.1.2" debug@^2.6.9: version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" debug@^3.2.7: version "3.2.7" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== dependencies: ms "^2.1.1" debuglog@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" + resolved "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" integrity sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI= decamelize-keys@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" + resolved "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= dependencies: decamelize "^1.1.0" @@ -4790,91 +4623,91 @@ decamelize-keys@^1.1.0: decamelize@^1.1.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= decimal.js@^10.2.1: version "10.3.1" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783" + resolved "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783" integrity sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ== decode-uri-component@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" + resolved "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= dedent@^0.7.0: version "0.7.0" - resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" + resolved "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= deep-is@^0.1.3, deep-is@~0.1.3: version "0.1.4" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== deepmerge@^4.2.2: version "4.2.2" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" + resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== defaults@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" + resolved "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= dependencies: clone "^1.0.2" define-properties@^1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" + resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== dependencies: object-keys "^1.0.12" delayed-stream@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= delegates@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + resolved "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= depd@^1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= deprecation@^2.0.0, deprecation@^2.3.1: version "2.3.1" - resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" + resolved "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== detect-indent@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" + resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50= detect-indent@^6.0.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" + resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== detect-newline@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" + resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= detect-newline@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" + resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== dezalgo@^1.0.0: version "1.0.3" - resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456" + resolved "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456" integrity sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY= dependencies: asap "^2.0.0" @@ -4882,40 +4715,40 @@ dezalgo@^1.0.0: diff-sequences@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327" + resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327" integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ== dir-glob@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== dependencies: path-type "^4.0.0" doctrine@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== dependencies: esutils "^2.0.2" doctrine@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== dependencies: esutils "^2.0.2" dom-converter@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" + resolved "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== dependencies: utila "~0.4" dom-helpers@^5.0.1: version "5.2.1" - resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902" + resolved "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902" integrity sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA== dependencies: "@babel/runtime" "^7.8.7" @@ -4923,7 +4756,7 @@ dom-helpers@^5.0.1: dom-serializer@^1.0.1: version "1.3.2" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91" + resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91" integrity sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig== dependencies: domelementtype "^2.0.1" @@ -4932,26 +4765,26 @@ dom-serializer@^1.0.1: domelementtype@^2.0.1, domelementtype@^2.2.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57" + resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57" integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A== domexception@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" + resolved "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== dependencies: webidl-conversions "^5.0.0" -domhandler@^4.0.0, domhandler@^4.2.0: - version "4.2.2" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.2.2.tgz#e825d721d19a86b8c201a35264e226c678ee755f" - integrity sha512-PzE9aBMsdZO8TK4BnuJwH0QT41wgMbRzuZrHUcpYncEjmQazq8QEaBWgLG7ZyC/DAZKEgglpIA6j4Qn/HmxS3w== +domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.0: + version "4.3.0" + resolved "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz#16c658c626cf966967e306f966b431f77d4a5626" + integrity sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g== dependencies: domelementtype "^2.2.0" -domutils@^2.5.2, domutils@^2.6.0: +domutils@^2.5.2, domutils@^2.8.0: version "2.8.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" + resolved "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== dependencies: dom-serializer "^1.0.1" @@ -4960,7 +4793,7 @@ domutils@^2.5.2, domutils@^2.6.0: dot-case@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" + resolved "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== dependencies: no-case "^3.0.4" @@ -4968,39 +4801,39 @@ dot-case@^3.0.4: dot-prop@^5.1.0: version "5.3.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" + resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== dependencies: is-obj "^2.0.0" dot-prop@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-6.0.1.tgz#fc26b3cf142b9e59b74dbd39ed66ce620c681083" + resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz#fc26b3cf142b9e59b74dbd39ed66ce620c681083" integrity sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA== dependencies: is-obj "^2.0.0" duplexer@^0.1.1: version "0.1.2" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" + resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== ecc-jsbn@~0.1.1: version "0.1.2" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" + resolved "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= dependencies: jsbn "~0.1.0" safer-buffer "^2.1.0" -electron-to-chromium@^1.3.896: - version "1.4.4" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.4.tgz#57311918524c1a26878c330537f967804d43788a" - integrity sha512-teHtgwcmVcL46jlFvAaqjyiTLWuMrUQO1JqV303JKB4ysXG6m8fXSFhbjal9st0r9mNskI22AraJZorb1VcLVg== +electron-to-chromium@^1.4.76: + version "1.4.81" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.81.tgz#a9ce8997232fb9fb0ec53de8931a85b18c0a7383" + integrity sha512-Gs7xVpIZ7tYYSDA+WgpzwpPvfGwUk3KSIjJ0akuj5XQHFdyQnsUoM76EA4CIHXNLPiVwTwOFay9RMb0ChG3OBw== elliptic@6.5.4, elliptic@^6.5.4: version "6.5.4" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" + resolved "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== dependencies: bn.js "^4.11.9" @@ -5013,34 +4846,34 @@ elliptic@6.5.4, elliptic@^6.5.4: emittery@^0.8.1: version "0.8.1" - resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" + resolved "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" integrity sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg== emoji-regex@^8.0.0: version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== emoji-regex@^9.2.2: version "9.2.2" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== emojis-list@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" + resolved "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== encoding@^0.1.12: version "0.1.13" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" + resolved "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== dependencies: iconv-lite "^0.6.2" enhanced-resolve@^5.0.0, enhanced-resolve@^5.9.2: version "5.9.2" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.9.2.tgz#0224dcd6a43389ebfb2d55efee517e5466772dd9" + resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.9.2.tgz#0224dcd6a43389ebfb2d55efee517e5466772dd9" integrity sha512-GIm3fQfwLJ8YZx2smuHpBKkXC1yOk+OBEmKckVyL0i/ea8mqDEykK3ld5dgH1QYPNyT/lIllxV2LULnxCHaHkA== dependencies: graceful-fs "^4.2.4" @@ -5048,39 +4881,39 @@ enhanced-resolve@^5.0.0, enhanced-resolve@^5.9.2: entities@^2.0.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" + resolved "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== entities@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/entities/-/entities-3.0.1.tgz#2b887ca62585e96db3903482d336c1006c3001d4" + resolved "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz#2b887ca62585e96db3903482d336c1006c3001d4" integrity sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q== env-paths@^2.2.0: version "2.2.1" - resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" + resolved "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== envinfo@^7.7.3, envinfo@^7.7.4: version "7.8.1" - resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" + resolved "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== err-code@^2.0.2: version "2.0.3" - resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" + resolved "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== error-ex@^1.3.1: version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== dependencies: is-arrayish "^0.2.1" es-abstract@^1.19.0, es-abstract@^1.19.1: version "1.19.1" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.19.1.tgz#d4885796876916959de78edaa0df456627115ec3" + resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz#d4885796876916959de78edaa0df456627115ec3" integrity sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w== dependencies: call-bind "^1.0.2" @@ -5106,12 +4939,12 @@ es-abstract@^1.19.0, es-abstract@^1.19.1: es-module-lexer@^0.9.0: version "0.9.3" - resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" + resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== es-to-primitive@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" + resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== dependencies: is-callable "^1.1.4" @@ -5120,32 +4953,32 @@ es-to-primitive@^1.2.1: es6-promise@^3.1.2: version "3.3.1" - resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613" + resolved "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613" integrity sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM= escalade@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== escape-string-regexp@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= escape-string-regexp@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== escape-string-regexp@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== escodegen@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" + resolved "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== dependencies: esprima "^4.0.1" @@ -5157,7 +4990,7 @@ escodegen@^2.0.0: eslint-config-next@12.1.0: version "12.1.0" - resolved "https://registry.yarnpkg.com/eslint-config-next/-/eslint-config-next-12.1.0.tgz#8ace680dc5207e6ab6c915f3989adec122f582e7" + resolved "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-12.1.0.tgz#8ace680dc5207e6ab6c915f3989adec122f582e7" integrity sha512-tBhuUgoDITcdcM7xFvensi9I5WTI4dnvH4ETGRg1U8ZKpXrZsWQFdOKIDzR3RLP5HR3xXrLviaMM4c3zVoE/pA== dependencies: "@next/eslint-plugin-next" "12.1.0" @@ -5172,7 +5005,7 @@ eslint-config-next@12.1.0: eslint-import-resolver-node@^0.3.4, eslint-import-resolver-node@^0.3.6: version "0.3.6" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz#4048b958395da89668252001dbd9eca6b83bacbd" + resolved "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz#4048b958395da89668252001dbd9eca6b83bacbd" integrity sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw== dependencies: debug "^3.2.7" @@ -5180,7 +5013,7 @@ eslint-import-resolver-node@^0.3.4, eslint-import-resolver-node@^0.3.6: eslint-import-resolver-typescript@^2.4.0: version "2.5.0" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.5.0.tgz#07661966b272d14ba97f597b51e1a588f9722f0a" + resolved "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.5.0.tgz#07661966b272d14ba97f597b51e1a588f9722f0a" integrity sha512-qZ6e5CFr+I7K4VVhQu3M/9xGv9/YmwsEXrsm3nimw8vWaVHRDrQRp26BgCypTxBp3vUp4o5aVEJRiy0F2DFddQ== dependencies: debug "^4.3.1" @@ -5189,37 +5022,36 @@ eslint-import-resolver-typescript@^2.4.0: resolve "^1.20.0" tsconfig-paths "^3.9.0" -eslint-module-utils@^2.7.1: - version "2.7.1" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.7.1.tgz#b435001c9f8dd4ab7f6d0efcae4b9696d4c24b7c" - integrity sha512-fjoetBXQZq2tSTWZ9yWVl2KuFrTZZH3V+9iD1V1RfpDgxzJR+mPd/KZmMiA8gbPqdBzpNiEHOuT7IYEWxrH0zQ== +eslint-module-utils@^2.7.2: + version "2.7.3" + resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.3.tgz#ad7e3a10552fdd0642e1e55292781bd6e34876ee" + integrity sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ== dependencies: debug "^3.2.7" find-up "^2.1.0" - pkg-dir "^2.0.0" eslint-plugin-import@^2.25.2: - version "2.25.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.25.3.tgz#a554b5f66e08fb4f6dc99221866e57cfff824766" - integrity sha512-RzAVbby+72IB3iOEL8clzPLzL3wpDrlwjsTBAQXgyp5SeTqqY+0bFubwuo+y/HLhNZcXV4XqTBO4LGsfyHIDXg== + version "2.25.4" + resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.25.4.tgz#322f3f916a4e9e991ac7af32032c25ce313209f1" + integrity sha512-/KJBASVFxpu0xg1kIBn9AUa8hQVnszpwgE7Ld0lKAlx7Ie87yzEzCgSkekt+le/YVhiaosO4Y14GDAOc41nfxA== dependencies: array-includes "^3.1.4" array.prototype.flat "^1.2.5" debug "^2.6.9" doctrine "^2.1.0" eslint-import-resolver-node "^0.3.6" - eslint-module-utils "^2.7.1" + eslint-module-utils "^2.7.2" has "^1.0.3" is-core-module "^2.8.0" is-glob "^4.0.3" minimatch "^3.0.4" object.values "^1.1.5" resolve "^1.20.0" - tsconfig-paths "^3.11.0" + tsconfig-paths "^3.12.0" eslint-plugin-jsx-a11y@^6.5.1: version "6.5.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.5.1.tgz#cdbf2df901040ca140b6ec14715c988889c2a6d8" + resolved "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.5.1.tgz#cdbf2df901040ca140b6ec14715c988889c2a6d8" integrity sha512-sVCFKX9fllURnXT2JwLN5Qgo24Ug5NF6dxhkmxsMEUZhXRcGg+X3e1JbJ84YePQKBl5E0ZjAH5Q4rkdcGY99+g== dependencies: "@babel/runtime" "^7.16.3" @@ -5237,12 +5069,12 @@ eslint-plugin-jsx-a11y@^6.5.1: eslint-plugin-react-hooks@^4.3.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.3.0.tgz#318dbf312e06fab1c835a4abef00121751ac1172" + resolved "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.3.0.tgz#318dbf312e06fab1c835a4abef00121751ac1172" integrity sha512-XslZy0LnMn+84NEG9jSGR6eGqaZB3133L8xewQo3fQagbQuGt7a63gf+P1NGKZavEYEC3UXaWEAA/AqDkuN6xA== eslint-plugin-react@^7.27.0, eslint-plugin-react@^7.28.0: version "7.29.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.29.3.tgz#f4eab757f2756d25d6d4c2a58a9e20b004791f05" + resolved "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.29.3.tgz#f4eab757f2756d25d6d4c2a58a9e20b004791f05" integrity sha512-MzW6TuCnDOcta67CkpDyRfRsEVx9FNMDV8wZsDqe1luHPdGTrQIUaUXD27Ja3gHsdOIs/cXzNchWGlqm+qRVRg== dependencies: array-includes "^3.1.4" @@ -5262,7 +5094,7 @@ eslint-plugin-react@^7.27.0, eslint-plugin-react@^7.28.0: eslint-scope@5.1.1, eslint-scope@^5.1.1: version "5.1.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== dependencies: esrecurse "^4.3.0" @@ -5270,7 +5102,7 @@ eslint-scope@5.1.1, eslint-scope@^5.1.1: eslint-scope@^7.1.1: version "7.1.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642" + resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642" integrity sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw== dependencies: esrecurse "^4.3.0" @@ -5278,24 +5110,24 @@ eslint-scope@^7.1.1: eslint-utils@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" + resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== dependencies: eslint-visitor-keys "^2.0.0" eslint-visitor-keys@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== eslint-visitor-keys@^3.0.0, eslint-visitor-keys@^3.3.0: version "3.3.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826" + resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826" integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA== eslint-webpack-plugin@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/eslint-webpack-plugin/-/eslint-webpack-plugin-3.1.1.tgz#83dad2395e5f572d6f4d919eedaa9cf902890fcb" + resolved "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-3.1.1.tgz#83dad2395e5f572d6f4d919eedaa9cf902890fcb" integrity sha512-xSucskTN9tOkfW7so4EaiFIkulWLXwCB/15H917lR6pTv0Zot6/fetFucmENRb7J5whVSFKIvwnrnsa78SG2yg== dependencies: "@types/eslint" "^7.28.2" @@ -5306,7 +5138,7 @@ eslint-webpack-plugin@^3.1.1: eslint@8, eslint@^8.7.0: version "8.10.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.10.0.tgz#931be395eb60f900c01658b278e05b6dae47199d" + resolved "https://registry.npmjs.org/eslint/-/eslint-8.10.0.tgz#931be395eb60f900c01658b278e05b6dae47199d" integrity sha512-tcI1D9lfVec+R4LE1mNDnzoJ/f71Kl/9Cv4nG47jOueCMBrCCKYXr4AUVS7go6mWYGFD4+EoN6+eXSrEbRzXVw== dependencies: "@eslint/eslintrc" "^1.2.0" @@ -5347,7 +5179,7 @@ eslint@8, eslint@^8.7.0: espree@^9.3.1: version "9.3.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.3.1.tgz#8793b4bc27ea4c778c19908e0719e7b8f4115bcd" + resolved "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz#8793b4bc27ea4c778c19908e0719e7b8f4115bcd" integrity sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ== dependencies: acorn "^8.7.0" @@ -5356,111 +5188,111 @@ espree@^9.3.1: esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== esquery@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" + resolved "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== dependencies: estraverse "^5.1.0" esrecurse@^4.3.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== dependencies: estraverse "^5.2.0" estraverse@^4.1.1: version "4.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0: version "5.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== estree-walker@^0.6.1: version "0.6.1" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.6.1.tgz#53049143f40c6eb918b23671d1fe3219f3a1b362" + resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz#53049143f40c6eb918b23671d1fe3219f3a1b362" integrity sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w== estree-walker@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-1.0.1.tgz#31bc5d612c96b704106b477e6dd5d8aa138cb700" + resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz#31bc5d612c96b704106b477e6dd5d8aa138cb700" integrity sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg== estree-walker@^2.0.1: version "2.0.2" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" + resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== esutils@^2.0.2: version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== ethereum-cryptography@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-0.2.0.tgz#6a163130141abe85e0300646eee95323ae725555" - integrity sha512-6w64pvUvH3InBwNhax5j7brR4aGbdbd9B1R1uRwK9jNMTmyWMd7mSBxcGlMQv23qh+l/n0yjbQp2j0Q/gxhRdw== + version "0.2.5" + resolved "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.2.5.tgz#dfa636f0fa1978d962a13362d0850befb9ab8e7e" + integrity sha512-aWvqiegXgSTwbuDE1DDnM7taLteLcHVHh5nMZnnD2dwlvH6w5bOxcdXW20oS+1aLDorDlrK1c82stB8jsLDN5Q== dependencies: - micro-base "^0.9.0" - noble-hashes "^0.2.1" - noble-secp256k1 "^1.2.14" + "@noble/hashes" "^0.5.7" + "@noble/secp256k1" "^1.4.0" + micro-base "^0.10.1" ethers@^5.5.1: - version "5.5.4" - resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.5.4.tgz#e1155b73376a2f5da448e4a33351b57a885f4352" - integrity sha512-N9IAXsF8iKhgHIC6pquzRgPBJEzc9auw3JoRkaKe+y4Wl/LFBtDDunNe7YmdomontECAcC5APaAgWZBiu1kirw== - dependencies: - "@ethersproject/abi" "5.5.0" - "@ethersproject/abstract-provider" "5.5.1" - "@ethersproject/abstract-signer" "5.5.0" - "@ethersproject/address" "5.5.0" - "@ethersproject/base64" "5.5.0" - "@ethersproject/basex" "5.5.0" - "@ethersproject/bignumber" "5.5.0" - "@ethersproject/bytes" "5.5.0" - "@ethersproject/constants" "5.5.0" - "@ethersproject/contracts" "5.5.0" - "@ethersproject/hash" "5.5.0" - "@ethersproject/hdnode" "5.5.0" - "@ethersproject/json-wallets" "5.5.0" - "@ethersproject/keccak256" "5.5.0" - "@ethersproject/logger" "5.5.0" - "@ethersproject/networks" "5.5.2" - "@ethersproject/pbkdf2" "5.5.0" - "@ethersproject/properties" "5.5.0" - "@ethersproject/providers" "5.5.3" - "@ethersproject/random" "5.5.1" - "@ethersproject/rlp" "5.5.0" - "@ethersproject/sha2" "5.5.0" - "@ethersproject/signing-key" "5.5.0" - "@ethersproject/solidity" "5.5.0" - "@ethersproject/strings" "5.5.0" - "@ethersproject/transactions" "5.5.0" - "@ethersproject/units" "5.5.0" - "@ethersproject/wallet" "5.5.0" - "@ethersproject/web" "5.5.1" - "@ethersproject/wordlists" "5.5.0" + version "5.6.0" + resolved "https://registry.npmjs.org/ethers/-/ethers-5.6.0.tgz#924eb965dc03963fad0a09ce687efdf49aca3b45" + integrity sha512-00FP71jt6bW3ndO5DhgH9mLIZhoCGnAKFLu8qig5KmV03ubEChKf2ilB3g6fX512tTYo+tSMDJ5WpCJWdBHkBQ== + dependencies: + "@ethersproject/abi" "5.6.0" + "@ethersproject/abstract-provider" "5.6.0" + "@ethersproject/abstract-signer" "5.6.0" + "@ethersproject/address" "5.6.0" + "@ethersproject/base64" "5.6.0" + "@ethersproject/basex" "5.6.0" + "@ethersproject/bignumber" "5.6.0" + "@ethersproject/bytes" "5.6.0" + "@ethersproject/constants" "5.6.0" + "@ethersproject/contracts" "5.6.0" + "@ethersproject/hash" "5.6.0" + "@ethersproject/hdnode" "5.6.0" + "@ethersproject/json-wallets" "5.6.0" + "@ethersproject/keccak256" "5.6.0" + "@ethersproject/logger" "5.6.0" + "@ethersproject/networks" "5.6.0" + "@ethersproject/pbkdf2" "5.6.0" + "@ethersproject/properties" "5.6.0" + "@ethersproject/providers" "5.6.0" + "@ethersproject/random" "5.6.0" + "@ethersproject/rlp" "5.6.0" + "@ethersproject/sha2" "5.6.0" + "@ethersproject/signing-key" "5.6.0" + "@ethersproject/solidity" "5.6.0" + "@ethersproject/strings" "5.6.0" + "@ethersproject/transactions" "5.6.0" + "@ethersproject/units" "5.6.0" + "@ethersproject/wallet" "5.6.0" + "@ethersproject/web" "5.6.0" + "@ethersproject/wordlists" "5.6.0" eventemitter3@^4.0.4: version "4.0.7" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== events@^3.2.0: version "3.3.0" - resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + resolved "https://registry.npmjs.org/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== execa@^5.0.0: version "5.1.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== dependencies: cross-spawn "^7.0.3" @@ -5475,12 +5307,12 @@ execa@^5.0.0: exit@^0.1.2: version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= expect@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/expect/-/expect-27.5.1.tgz#83ce59f1e5bdf5f9d2b94b61d2050db48f3fef74" + resolved "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz#83ce59f1e5bdf5f9d2b94b61d2050db48f3fef74" integrity sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw== dependencies: "@jest/types" "^27.5.1" @@ -5490,12 +5322,12 @@ expect@^27.5.1: extend@~3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== external-editor@^3.0.3: version "3.1.0" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" + resolved "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== dependencies: chardet "^0.7.0" @@ -5504,28 +5336,28 @@ external-editor@^3.0.3: extsprintf@1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= extsprintf@^1.2.0: version "1.4.1" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07" + resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07" integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA== fast-deep-equal@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" + resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-glob@^3.1.1, fast-glob@^3.2.7: - version "3.2.7" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1" - integrity sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q== +fast-glob@^3.2.7, fast-glob@^3.2.9: + version "3.2.11" + resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz#a1172ad95ceb8a16e20caa5c5e56480e5129c1d9" + integrity sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew== dependencies: "@nodelib/fs.stat" "^2.0.2" "@nodelib/fs.walk" "^1.2.3" @@ -5535,50 +5367,50 @@ fast-glob@^3.1.1, fast-glob@^3.2.7: fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= fastest-levenshtein@^1.0.12: version "1.0.12" - resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz#9990f7d3a88cc5a9ffd1f1745745251700d497e2" + resolved "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz#9990f7d3a88cc5a9ffd1f1745745251700d497e2" integrity sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow== fastq@^1.6.0: version "1.13.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c" + resolved "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c" integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw== dependencies: reusify "^1.0.4" fb-watchman@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85" + resolved "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85" integrity sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg== dependencies: bser "2.1.1" figures@^3.0.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" + resolved "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== dependencies: escape-string-regexp "^1.0.5" file-entry-cache@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== dependencies: flat-cache "^3.0.4" file-loader@^6.2.0: version "6.2.0" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d" + resolved "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d" integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== dependencies: loader-utils "^2.0.0" @@ -5586,43 +5418,43 @@ file-loader@^6.2.0: file-selector@^0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/file-selector/-/file-selector-0.4.0.tgz#59ec4f27aa5baf0841e9c6385c8386bef4d18b17" + resolved "https://registry.npmjs.org/file-selector/-/file-selector-0.4.0.tgz#59ec4f27aa5baf0841e9c6385c8386bef4d18b17" integrity sha512-iACCiXeMYOvZqlF1kTiYINzgepRBymz1wwjiuup9u9nayhb6g4fSwiyJ/6adli+EPwrWtpgQAh2PoS7HukEGEg== dependencies: tslib "^2.0.3" fill-range@^7.0.1: version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== dependencies: to-regex-range "^5.0.1" filter-obj@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b" + resolved "https://registry.npmjs.org/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b" integrity sha1-mzERErxsYSehbgFsbF1/GeCAXFs= find-line-column@^0.5.2: version "0.5.2" - resolved "https://registry.yarnpkg.com/find-line-column/-/find-line-column-0.5.2.tgz#db00238ff868551a182e74a103416d295a98c8ca" + resolved "https://registry.npmjs.org/find-line-column/-/find-line-column-0.5.2.tgz#db00238ff868551a182e74a103416d295a98c8ca" integrity sha1-2wAjj/hoVRoYLnShA0FtKVqYyMo= find-root@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" + resolved "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== find-up@^2.0.0, find-up@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + resolved "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= dependencies: locate-path "^2.0.0" find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== dependencies: locate-path "^5.0.0" @@ -5630,30 +5462,30 @@ find-up@^4.0.0, find-up@^4.1.0: flat-cache@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" + resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== dependencies: flatted "^3.1.0" rimraf "^3.0.2" flatted@^3.1.0: - version "3.2.4" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.4.tgz#28d9969ea90661b5134259f312ab6aa7929ac5e2" - integrity sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw== + version "3.2.5" + resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz#76c8584f4fc843db64702a6bd04ab7a8bd666da3" + integrity sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg== follow-redirects@^1.14.4: - version "1.14.8" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.8.tgz#016996fb9a11a100566398b1c6839337d7bfa8fc" - integrity sha512-1x0S9UVJHsQprFcEC/qnNzBLcIxsjAV905f/UkQxbclCsoTWlacCNOpQa/anodLl2uaEKFhfWOvM2Qg77+15zA== + version "1.14.9" + resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz#dd4ea157de7bfaf9ea9b3fbd85aa16951f78d8d7" + integrity sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w== forever-agent@~0.6.1: version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" + resolved "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= form-data@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" + resolved "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== dependencies: asynckit "^0.4.0" @@ -5662,7 +5494,7 @@ form-data@^3.0.0: form-data@~2.3.2: version "2.3.3" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" + resolved "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== dependencies: asynckit "^0.4.0" @@ -5671,7 +5503,7 @@ form-data@~2.3.2: fs-extra@^9.1.0: version "9.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== dependencies: at-least-node "^1.0.0" @@ -5681,41 +5513,41 @@ fs-extra@^9.1.0: fs-minipass@^1.2.7: version "1.2.7" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" + resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== dependencies: minipass "^2.6.0" fs-minipass@^2.0.0, fs-minipass@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" + resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== dependencies: minipass "^3.0.0" fs.realpath@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= fsevents@^2.3.2, fsevents@~2.3.2: version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== function-bind@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== functional-red-black-tree@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= gauge@~2.7.3: version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + resolved "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= dependencies: aproba "^1.0.3" @@ -5729,17 +5561,17 @@ gauge@~2.7.3: gensync@^1.0.0-beta.2: version "1.0.0-beta.2" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== get-caller-file@^2.0.5: version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" + resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== dependencies: function-bind "^1.1.1" @@ -5748,12 +5580,12 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: get-package-type@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + resolved "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== get-pkg-repo@^4.0.0: version "4.2.1" - resolved "https://registry.yarnpkg.com/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz#75973e1c8050c73f48190c52047c4cee3acbf385" + resolved "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz#75973e1c8050c73f48190c52047c4cee3acbf385" integrity sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA== dependencies: "@hutson/parse-repository-url" "^3.0.0" @@ -5763,17 +5595,17 @@ get-pkg-repo@^4.0.0: get-port@^5.1.1: version "5.1.1" - resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" + resolved "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ== get-stream@^6.0.0: version "6.0.1" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== get-symbol-description@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6" + resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6" integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw== dependencies: call-bind "^1.0.2" @@ -5781,15 +5613,15 @@ get-symbol-description@^1.0.0: getpass@^0.1.1: version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + resolved "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= dependencies: assert-plus "^1.0.0" git-raw-commits@^2.0.8: - version "2.0.10" - resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.10.tgz#e2255ed9563b1c9c3ea6bd05806410290297bbc1" - integrity sha512-sHhX5lsbG9SOO6yXdlwgEMQ/ljIn7qMpAbJZCGfXX2fq5T8M5SrDnpYk9/4HswTildcIqatsWa91vty6VhWSaQ== + version "2.0.11" + resolved "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz#bc3576638071d18655e1cc60d7f524920008d723" + integrity sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A== dependencies: dargs "^7.0.0" lodash "^4.17.15" @@ -5799,7 +5631,7 @@ git-raw-commits@^2.0.8: git-remote-origin-url@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz#5282659dae2107145a11126112ad3216ec5fa65f" + resolved "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz#5282659dae2107145a11126112ad3216ec5fa65f" integrity sha1-UoJlna4hBxRaERJhEq0yFuxfpl8= dependencies: gitconfiglocal "^1.0.0" @@ -5807,7 +5639,7 @@ git-remote-origin-url@^2.0.0: git-semver-tags@^4.1.1: version "4.1.1" - resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-4.1.1.tgz#63191bcd809b0ec3e151ba4751c16c444e5b5780" + resolved "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-4.1.1.tgz#63191bcd809b0ec3e151ba4751c16c444e5b5780" integrity sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA== dependencies: meow "^8.0.0" @@ -5815,7 +5647,7 @@ git-semver-tags@^4.1.1: git-up@^4.0.0: version "4.0.5" - resolved "https://registry.yarnpkg.com/git-up/-/git-up-4.0.5.tgz#e7bb70981a37ea2fb8fe049669800a1f9a01d759" + resolved "https://registry.npmjs.org/git-up/-/git-up-4.0.5.tgz#e7bb70981a37ea2fb8fe049669800a1f9a01d759" integrity sha512-YUvVDg/vX3d0syBsk/CKUTib0srcQME0JyHkL5BaYdwLsiCslPWmDSi8PUMo9pXYjrryMcmsCoCgsTpSCJEQaA== dependencies: is-ssh "^1.3.0" @@ -5823,40 +5655,40 @@ git-up@^4.0.0: git-url-parse@^11.4.4: version "11.6.0" - resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-11.6.0.tgz#c634b8de7faa66498a2b88932df31702c67df605" + resolved "https://registry.npmjs.org/git-url-parse/-/git-url-parse-11.6.0.tgz#c634b8de7faa66498a2b88932df31702c67df605" integrity sha512-WWUxvJs5HsyHL6L08wOusa/IXYtMuCAhrMmnTjQPpBU0TTHyDhnOATNH3xNQz7YOQUsqIIPTGr4xiVti1Hsk5g== dependencies: git-up "^4.0.0" gitconfiglocal@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz#41d045f3851a5ea88f03f24ca1c6178114464b9b" + resolved "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz#41d045f3851a5ea88f03f24ca1c6178114464b9b" integrity sha1-QdBF84UaXqiPA/JMocYXgRRGS5s= dependencies: ini "^1.3.2" glob-parent@^5.1.1, glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" glob-parent@^6.0.1: version "6.0.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== dependencies: is-glob "^4.0.3" glob-to-regexp@^0.4.1: version "0.4.1" - resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" + resolved "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== glob@7.1.7: version "7.1.7" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" + resolved "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== dependencies: fs.realpath "^1.0.0" @@ -5868,7 +5700,7 @@ glob@7.1.7: glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.1.7: version "7.2.0" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" + resolved "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== dependencies: fs.realpath "^1.0.0" @@ -5880,48 +5712,48 @@ glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.1.7: globals@^11.1.0: version "11.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== globals@^13.6.0, globals@^13.9.0: - version "13.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.12.0.tgz#4d733760304230a0082ed96e21e5c565f898089e" - integrity sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg== + version "13.12.1" + resolved "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz#ec206be932e6c77236677127577aa8e50bf1c5cb" + integrity sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw== dependencies: type-fest "^0.20.2" globby@^11.0.2, globby@^11.0.4: - version "11.0.4" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.4.tgz#2cbaff77c2f2a62e71e9b2813a67b97a3a3001a5" - integrity sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg== + version "11.1.0" + resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== dependencies: array-union "^2.1.0" dir-glob "^3.0.1" - fast-glob "^3.1.1" - ignore "^5.1.4" - merge2 "^1.3.0" + fast-glob "^3.2.9" + ignore "^5.2.0" + merge2 "^1.4.1" slash "^3.0.0" globby@^12.0.2: - version "12.0.2" - resolved "https://registry.yarnpkg.com/globby/-/globby-12.0.2.tgz#53788b2adf235602ed4cabfea5c70a1139e1ab11" - integrity sha512-lAsmb/5Lww4r7MM9nCCliDZVIKbZTavrsunAsHLr9oHthrZP1qi7/gAnHOsUs9bLvEt2vKVJhHmxuL7QbDuPdQ== + version "12.2.0" + resolved "https://registry.npmjs.org/globby/-/globby-12.2.0.tgz#2ab8046b4fba4ff6eede835b29f678f90e3d3c22" + integrity sha512-wiSuFQLZ+urS9x2gGPl1H5drc5twabmm4m2gTR27XDFyjUHJUNsS8o/2aKyIF6IoBaR630atdher0XJ5g6OMmA== dependencies: array-union "^3.0.1" dir-glob "^3.0.1" fast-glob "^3.2.7" - ignore "^5.1.8" + ignore "^5.1.9" merge2 "^1.4.1" slash "^4.0.0" graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.3, graceful-fs@^4.2.4, graceful-fs@^4.2.9: version "4.2.9" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96" + resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96" integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ== -handlebars@^4.7.6: +handlebars@^4.7.7: version "4.7.7" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" + resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA== dependencies: minimist "^1.2.5" @@ -5933,12 +5765,12 @@ handlebars@^4.7.6: har-schema@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + resolved "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= har-validator@~5.1.3: version "5.1.5" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" + resolved "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== dependencies: ajv "^6.12.3" @@ -5946,51 +5778,51 @@ har-validator@~5.1.3: hard-rejection@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" + resolved "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== has-bigints@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" + resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== has-flag@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= has-flag@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== has-symbols@^1.0.1, has-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" - integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== + version "1.0.3" + resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== has-tostringtag@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" + resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== dependencies: has-symbols "^1.0.2" has-unicode@^2.0.0, has-unicode@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + resolved "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= has@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== dependencies: function-bind "^1.1.1" hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3, hash.js@^1.1.7: version "1.1.7" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + resolved "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== dependencies: inherits "^2.0.3" @@ -5998,19 +5830,19 @@ hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3, hash.js@^1.1.7: he@^1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + resolved "https://registry.npmjs.org/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== history@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/history/-/history-5.2.0.tgz#7cdd31cf9bac3c5d31f09c231c9928fad0007b7c" - integrity sha512-uPSF6lAJb3nSePJ43hN3eKj1dTWpN9gMod0ZssbFTIsen+WehTmEadgL+kg78xLJFdRfrrC//SavDzmRVdE+Ig== + version "5.3.0" + resolved "https://registry.npmjs.org/history/-/history-5.3.0.tgz#1548abaa245ba47992f063a0783db91ef201c73b" + integrity sha512-ZqaKwjjrAYUYfLG+htGaIIZ4nioX2L70ZUMIFysS3xvBsSG4x/n1V6TXV3N8ZYNuFGlDirFg32T7B6WOUPDYcQ== dependencies: "@babel/runtime" "^7.7.6" hmac-drbg@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + resolved "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= dependencies: hash.js "^1.0.3" @@ -6019,38 +5851,38 @@ hmac-drbg@^1.0.1: hoist-non-react-statics@^3.0.0, hoist-non-react-statics@^3.3.0, hoist-non-react-statics@^3.3.2: version "3.3.2" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" + resolved "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== dependencies: react-is "^16.7.0" hosted-git-info@^2.1.4: version "2.8.9" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== hosted-git-info@^4.0.0, hosted-git-info@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.0.2.tgz#5e425507eede4fea846b7262f0838456c4209961" - integrity sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg== + version "4.1.0" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224" + integrity sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA== dependencies: lru-cache "^6.0.0" html-encoding-sniffer@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" + resolved "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== dependencies: whatwg-encoding "^1.0.5" html-escaper@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== html-minifier-terser@^6.0.2: version "6.1.0" - resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#bfc818934cc07918f6b3669f5774ecdfd48f32ab" + resolved "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#bfc818934cc07918f6b3669f5774ecdfd48f32ab" integrity sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw== dependencies: camel-case "^4.1.2" @@ -6063,7 +5895,7 @@ html-minifier-terser@^6.0.2: html-webpack-plugin@^5.5.0: version "5.5.0" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz#c3911936f57681c1f9f4d8b68c158cd9dfe52f50" + resolved "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz#c3911936f57681c1f9f4d8b68c158cd9dfe52f50" integrity sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw== dependencies: "@types/html-minifier-terser" "^6.0.0" @@ -6074,7 +5906,7 @@ html-webpack-plugin@^5.5.0: htmlparser2@^6.1.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" + resolved "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A== dependencies: domelementtype "^2.0.1" @@ -6084,12 +5916,12 @@ htmlparser2@^6.1.0: http-cache-semantics@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" + resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== http-proxy-agent@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" + resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== dependencies: "@tootallnate/once" "1" @@ -6098,7 +5930,7 @@ http-proxy-agent@^4.0.1: http-signature@~1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + resolved "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= dependencies: assert-plus "^1.0.0" @@ -6107,7 +5939,7 @@ http-signature@~1.2.0: https-proxy-agent@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2" + resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2" integrity sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA== dependencies: agent-base "6" @@ -6115,50 +5947,50 @@ https-proxy-agent@^5.0.0: human-signals@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== humanize-ms@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" + resolved "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" integrity sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0= dependencies: ms "^2.0.0" iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== dependencies: safer-buffer ">= 2.1.2 < 3" iconv-lite@^0.6.2: version "0.6.3" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" + resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== dependencies: safer-buffer ">= 2.1.2 < 3.0.0" ignore-walk@^3.0.3: version "3.0.4" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.4.tgz#c9a09f69b7c7b479a5d74ac1a3c0d4236d2a6335" + resolved "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz#c9a09f69b7c7b479a5d74ac1a3c0d4236d2a6335" integrity sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ== dependencies: minimatch "^3.0.4" ignore@^4.0.6: version "4.0.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + resolved "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== -ignore@^5.1.4, ignore@^5.1.8, ignore@^5.2.0: +ignore@^5.1.8, ignore@^5.1.9, ignore@^5.2.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a" + resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a" integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== import-fresh@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" + resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= dependencies: caller-path "^2.0.0" @@ -6166,23 +5998,23 @@ import-fresh@^2.0.0: import-fresh@^3.0.0, import-fresh@^3.2.1: version "3.3.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== dependencies: parent-module "^1.0.0" resolve-from "^4.0.0" import-local@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.3.tgz#4d51c2c495ca9393da259ec66b62e022920211e0" - integrity sha512-bE9iaUY3CXH8Cwfan/abDKAxe1KGT9kyGsBPqf6DMK/z0a2OzAsrukeYNgIH6cH5Xr452jb1TUL8rSfCLjZ9uA== + version "3.1.0" + resolved "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" + integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== dependencies: pkg-dir "^4.2.0" resolve-cwd "^3.0.0" import-sort-config@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/import-sort-config/-/import-sort-config-6.0.0.tgz#7313775b761eb479ab2d383945ecb15c008763b8" + resolved "https://registry.npmjs.org/import-sort-config/-/import-sort-config-6.0.0.tgz#7313775b761eb479ab2d383945ecb15c008763b8" integrity sha512-FJpF2F3+30JXqH1rJKeajxoSCHCueai3/0ntDN4y3GJL5pjnLDt/VjCy5FzjH7u0NHnllL/zVEf1wfmsVxJlPQ== dependencies: cosmiconfig "^5.0.5" @@ -6192,7 +6024,7 @@ import-sort-config@^6.0.0: import-sort-parser-babylon@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/import-sort-parser-babylon/-/import-sort-parser-babylon-6.0.0.tgz#e1a4c28e0794ad7d9ff36cd045559d8ca8c38be7" + resolved "https://registry.npmjs.org/import-sort-parser-babylon/-/import-sort-parser-babylon-6.0.0.tgz#e1a4c28e0794ad7d9ff36cd045559d8ca8c38be7" integrity sha512-NyShTiNhTh4Vy7kJUVe6CuvOaQAzzfSIT72wtp3CzGjz8bHjNj59DCAjncuviicmDOgVAgmLuSh1WMcLYAMWGg== dependencies: "@babel/core" "^7.2.2" @@ -6203,29 +6035,29 @@ import-sort-parser-babylon@^6.0.0: import-sort-parser-typescript@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/import-sort-parser-typescript/-/import-sort-parser-typescript-6.0.0.tgz#98e73cef9e077d073e798722ed59e215b51c17e2" + resolved "https://registry.npmjs.org/import-sort-parser-typescript/-/import-sort-parser-typescript-6.0.0.tgz#98e73cef9e077d073e798722ed59e215b51c17e2" integrity sha512-pgxnr3I156DonupQriNsgDb2zJN9TxrqCCIN1rwT/6SDO1rkJb+a0fjqshCjlgacTSA92oPAp1eAwmQUeZi3dw== dependencies: typescript "^3.2.4" import-sort-parser@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/import-sort-parser/-/import-sort-parser-6.0.0.tgz#0d901f264d98ed7caaae71f66128a686f828f2f4" + resolved "https://registry.npmjs.org/import-sort-parser/-/import-sort-parser-6.0.0.tgz#0d901f264d98ed7caaae71f66128a686f828f2f4" integrity sha512-H5L+d6HnqHvThB0GmAA3/43Sv74oCwL0iMk3/ixOv0LRJ69rCyHXeG/+UadMHrD2FefEmgPIWboEPAG7gsQrkA== import-sort-style-module@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/import-sort-style-module/-/import-sort-style-module-6.0.0.tgz#3149df4785bae804ed32630634ed49e405fa7cad" + resolved "https://registry.npmjs.org/import-sort-style-module/-/import-sort-style-module-6.0.0.tgz#3149df4785bae804ed32630634ed49e405fa7cad" integrity sha512-Oxd256EVt6TAgawhIDuKnNHWumzHMHFWhVncBBvlHVnx69B4GP/Gu4Xo+gjxtqSEKEvam5ajUkNvnsXLDMDjKg== import-sort-style@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/import-sort-style/-/import-sort-style-6.0.0.tgz#088523f056e5064c34a6426f4733674d81b42e6a" + resolved "https://registry.npmjs.org/import-sort-style/-/import-sort-style-6.0.0.tgz#088523f056e5064c34a6426f4733674d81b42e6a" integrity sha512-z0H5PKs7YoDeKxNYXv2AA1mjjZFY07fjeNCXUdTM3ymJtWeeEoTm8CQkFm2l+KPZoMczIvdwzJpWkkOamBnsPw== import-sort@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/import-sort/-/import-sort-6.0.0.tgz#48ba2a7b53f2566ca1dd004327ea271321ad64ff" + resolved "https://registry.npmjs.org/import-sort/-/import-sort-6.0.0.tgz#48ba2a7b53f2566ca1dd004327ea271321ad64ff" integrity sha512-XUwSQMGAGmcW/wfshFE0gXgb1NPF6ibbQD6wDr3KRDykZf/lZj0jf58Bwa02xNb8EE59oz7etFe9OHnJocUW5Q== dependencies: detect-newline "^2.1.0" @@ -6236,22 +6068,22 @@ import-sort@^6.0.0: imurmurhash@^0.1.4: version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= indent-string@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" + resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== infer-owner@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" + resolved "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== inflight@^1.0.4: version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= dependencies: once "^1.3.0" @@ -6259,17 +6091,17 @@ inflight@^1.0.4: inherits@2, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== ini@^1.3.2, ini@^1.3.4: version "1.3.8" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" + resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== init-package-json@^2.0.2: version "2.0.5" - resolved "https://registry.yarnpkg.com/init-package-json/-/init-package-json-2.0.5.tgz#78b85f3c36014db42d8f32117252504f68022646" + resolved "https://registry.npmjs.org/init-package-json/-/init-package-json-2.0.5.tgz#78b85f3c36014db42d8f32117252504f68022646" integrity sha512-u1uGAtEFu3VA6HNl/yUWw57jmKEMx8SKOxHhxjGnOFUiIlFnohKDFg4ZrPpv9wWqk44nDxGJAtqjdQFm+9XXQA== dependencies: npm-package-arg "^8.1.5" @@ -6282,7 +6114,7 @@ init-package-json@^2.0.2: inquirer@^7.3.3: version "7.3.3" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" + resolved "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== dependencies: ansi-escapes "^4.2.1" @@ -6301,7 +6133,7 @@ inquirer@^7.3.3: internal-slot@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c" + resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c" integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA== dependencies: get-intrinsic "^1.1.0" @@ -6310,36 +6142,36 @@ internal-slot@^1.0.3: interpret@^2.2.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" + resolved "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw== ip@^1.1.5: version "1.1.5" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" + resolved "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= is-arrayish@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= is-bigint@^1.0.1: version "1.0.4" - resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" + resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== dependencies: has-bigints "^1.0.1" is-binary-path@~2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== dependencies: binary-extensions "^2.0.0" is-boolean-object@^1.1.0: version "1.1.2" - resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" + resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== dependencies: call-bind "^1.0.2" @@ -6347,140 +6179,140 @@ is-boolean-object@^1.1.0: is-builtin-module@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-3.1.0.tgz#6fdb24313b1c03b75f8b9711c0feb8c30b903b00" + resolved "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.1.0.tgz#6fdb24313b1c03b75f8b9711c0feb8c30b903b00" integrity sha512-OV7JjAgOTfAFJmHZLvpSTb4qi0nIILDV1gWPYDnDJUTNFM5aGlRAhk4QcT8i7TuAleeEV5Fdkqn3t4mS+Q11fg== dependencies: builtin-modules "^3.0.0" is-callable@^1.1.4, is-callable@^1.2.4: version "1.2.4" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" + resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w== is-ci@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" + resolved "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== dependencies: ci-info "^2.0.0" -is-core-module@^2.2.0, is-core-module@^2.5.0, is-core-module@^2.8.0: - version "2.8.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.0.tgz#0321336c3d0925e497fd97f5d95cb114a5ccd548" - integrity sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw== +is-core-module@^2.2.0, is-core-module@^2.5.0, is-core-module@^2.8.0, is-core-module@^2.8.1: + version "2.8.1" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" + integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== dependencies: has "^1.0.3" is-date-object@^1.0.1: version "1.0.5" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" + resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== dependencies: has-tostringtag "^1.0.0" is-directory@^0.3.1: version "0.3.1" - resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" + resolved "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= is-extglob@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= is-fullwidth-code-point@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= dependencies: number-is-nan "^1.0.0" is-fullwidth-code-point@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== is-generator-fn@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + resolved "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: is-extglob "^2.1.1" is-lambda@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" + resolved "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" integrity sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU= is-module@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" + resolved "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE= is-negative-zero@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" - integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== + version "2.0.2" + resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" + integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== is-number-object@^1.0.4: version "1.0.6" - resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.6.tgz#6a7aaf838c7f0686a50b4553f7e54a96494e89f0" + resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz#6a7aaf838c7f0686a50b4553f7e54a96494e89f0" integrity sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g== dependencies: has-tostringtag "^1.0.0" is-number@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== is-obj@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" + resolved "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== is-plain-obj@^1.0.0, is-plain-obj@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= is-plain-obj@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" + resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== is-plain-object@^2.0.4: version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== dependencies: isobject "^3.0.1" is-plain-object@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" + resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== is-potential-custom-element-name@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" + resolved "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== is-reference@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/is-reference/-/is-reference-1.2.1.tgz#8b2dac0b371f4bc994fdeaba9eb542d03002d0b7" + resolved "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz#8b2dac0b371f4bc994fdeaba9eb542d03002d0b7" integrity sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ== dependencies: "@types/estree" "*" is-regex@^1.1.4: version "1.1.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" + resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== dependencies: call-bind "^1.0.2" @@ -6488,82 +6320,82 @@ is-regex@^1.1.4: is-shared-array-buffer@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6" + resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6" integrity sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA== is-ssh@^1.3.0: version "1.3.3" - resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.3.3.tgz#7f133285ccd7f2c2c7fc897b771b53d95a2b2c7e" + resolved "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.3.tgz#7f133285ccd7f2c2c7fc897b771b53d95a2b2c7e" integrity sha512-NKzJmQzJfEEma3w5cJNcUMxoXfDjz0Zj0eyCalHn2E6VOwlzjZo0yuO2fcBSf8zhFuVCL/82/r5gRcoi6aEPVQ== dependencies: protocols "^1.1.0" is-stream@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== is-string@^1.0.5, is-string@^1.0.7: version "1.0.7" - resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" + resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== dependencies: has-tostringtag "^1.0.0" is-symbol@^1.0.2, is-symbol@^1.0.3: version "1.0.4" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" + resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== dependencies: has-symbols "^1.0.2" is-text-path@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-text-path/-/is-text-path-1.0.1.tgz#4e1aa0fb51bfbcb3e92688001397202c1775b66e" + resolved "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz#4e1aa0fb51bfbcb3e92688001397202c1775b66e" integrity sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4= dependencies: text-extensions "^1.0.0" is-typedarray@^1.0.0, is-typedarray@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= is-weakref@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.1.tgz#842dba4ec17fa9ac9850df2d6efbc1737274f2a2" - integrity sha512-b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ== + version "1.0.2" + resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" + integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== dependencies: - call-bind "^1.0.0" + call-bind "^1.0.2" isarray@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= isexe@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= isobject@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= isstream@~0.1.2: version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + resolved "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" + resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a" + resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a" integrity sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q== dependencies: "@babel/core" "^7.12.3" @@ -6574,7 +6406,7 @@ istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: istanbul-lib-report@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" + resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== dependencies: istanbul-lib-coverage "^3.0.0" @@ -6583,7 +6415,7 @@ istanbul-lib-report@^3.0.0: istanbul-lib-source-maps@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" + resolved "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== dependencies: debug "^4.1.1" @@ -6592,7 +6424,7 @@ istanbul-lib-source-maps@^4.0.0: istanbul-reports@^3.1.3: version "3.1.4" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.4.tgz#1b6f068ecbc6c331040aab5741991273e609e40c" + resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz#1b6f068ecbc6c331040aab5741991273e609e40c" integrity sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw== dependencies: html-escaper "^2.0.0" @@ -6600,7 +6432,7 @@ istanbul-reports@^3.1.3: jest-changed-files@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5" + resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5" integrity sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw== dependencies: "@jest/types" "^27.5.1" @@ -6609,7 +6441,7 @@ jest-changed-files@^27.5.1: jest-circus@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.5.1.tgz#37a5a4459b7bf4406e53d637b49d22c65d125ecc" + resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz#37a5a4459b7bf4406e53d637b49d22c65d125ecc" integrity sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw== dependencies: "@jest/environment" "^27.5.1" @@ -6634,7 +6466,7 @@ jest-circus@^27.5.1: jest-cli@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.5.1.tgz#278794a6e6458ea8029547e6c6cbf673bd30b145" + resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz#278794a6e6458ea8029547e6c6cbf673bd30b145" integrity sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw== dependencies: "@jest/core" "^27.5.1" @@ -6652,7 +6484,7 @@ jest-cli@^27.5.1: jest-config@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.5.1.tgz#5c387de33dca3f99ad6357ddeccd91bf3a0e4a41" + resolved "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz#5c387de33dca3f99ad6357ddeccd91bf3a0e4a41" integrity sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA== dependencies: "@babel/core" "^7.8.0" @@ -6682,7 +6514,7 @@ jest-config@^27.5.1: jest-diff@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def" + resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def" integrity sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw== dependencies: chalk "^4.0.0" @@ -6692,14 +6524,14 @@ jest-diff@^27.5.1: jest-docblock@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.5.1.tgz#14092f364a42c6108d42c33c8cf30e058e25f6c0" + resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz#14092f364a42c6108d42c33c8cf30e058e25f6c0" integrity sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ== dependencies: detect-newline "^3.0.0" jest-each@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.5.1.tgz#5bc87016f45ed9507fed6e4702a5b468a5b2c44e" + resolved "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz#5bc87016f45ed9507fed6e4702a5b468a5b2c44e" integrity sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ== dependencies: "@jest/types" "^27.5.1" @@ -6710,7 +6542,7 @@ jest-each@^27.5.1: jest-environment-jsdom@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546" + resolved "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546" integrity sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw== dependencies: "@jest/environment" "^27.5.1" @@ -6723,7 +6555,7 @@ jest-environment-jsdom@^27.5.1: jest-environment-node@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.5.1.tgz#dedc2cfe52fab6b8f5714b4808aefa85357a365e" + resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz#dedc2cfe52fab6b8f5714b4808aefa85357a365e" integrity sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw== dependencies: "@jest/environment" "^27.5.1" @@ -6735,12 +6567,12 @@ jest-environment-node@^27.5.1: jest-get-type@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" + resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw== jest-haste-map@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.5.1.tgz#9fd8bd7e7b4fa502d9c6164c5640512b4e811e7f" + resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz#9fd8bd7e7b4fa502d9c6164c5640512b4e811e7f" integrity sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng== dependencies: "@jest/types" "^27.5.1" @@ -6760,7 +6592,7 @@ jest-haste-map@^27.5.1: jest-jasmine2@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz#a037b0034ef49a9f3d71c4375a796f3b230d1ac4" + resolved "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz#a037b0034ef49a9f3d71c4375a796f3b230d1ac4" integrity sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ== dependencies: "@jest/environment" "^27.5.1" @@ -6783,7 +6615,7 @@ jest-jasmine2@^27.5.1: jest-leak-detector@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8" + resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8" integrity sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ== dependencies: jest-get-type "^27.5.1" @@ -6791,7 +6623,7 @@ jest-leak-detector@^27.5.1: jest-matcher-utils@^27.0.0, jest-matcher-utils@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" + resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw== dependencies: chalk "^4.0.0" @@ -6801,7 +6633,7 @@ jest-matcher-utils@^27.0.0, jest-matcher-utils@^27.5.1: jest-message-util@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.5.1.tgz#bdda72806da10d9ed6425e12afff38cd1458b6cf" + resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz#bdda72806da10d9ed6425e12afff38cd1458b6cf" integrity sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g== dependencies: "@babel/code-frame" "^7.12.13" @@ -6816,7 +6648,7 @@ jest-message-util@^27.5.1: jest-mock@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.5.1.tgz#19948336d49ef4d9c52021d34ac7b5f36ff967d6" + resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz#19948336d49ef4d9c52021d34ac7b5f36ff967d6" integrity sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og== dependencies: "@jest/types" "^27.5.1" @@ -6824,17 +6656,17 @@ jest-mock@^27.5.1: jest-pnp-resolver@^1.2.2: version "1.2.2" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" + resolved "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== jest-regex-util@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" + resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== jest-resolve-dependencies@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz#d811ecc8305e731cc86dd79741ee98fed06f1da8" + resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz#d811ecc8305e731cc86dd79741ee98fed06f1da8" integrity sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg== dependencies: "@jest/types" "^27.5.1" @@ -6843,7 +6675,7 @@ jest-resolve-dependencies@^27.5.1: jest-resolve@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.5.1.tgz#a2f1c5a0796ec18fe9eb1536ac3814c23617b384" + resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz#a2f1c5a0796ec18fe9eb1536ac3814c23617b384" integrity sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw== dependencies: "@jest/types" "^27.5.1" @@ -6859,7 +6691,7 @@ jest-resolve@^27.5.1: jest-runner@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.5.1.tgz#071b27c1fa30d90540805c5645a0ec167c7b62e5" + resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz#071b27c1fa30d90540805c5645a0ec167c7b62e5" integrity sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ== dependencies: "@jest/console" "^27.5.1" @@ -6886,7 +6718,7 @@ jest-runner@^27.5.1: jest-runtime@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.5.1.tgz#4896003d7a334f7e8e4a53ba93fb9bcd3db0a1af" + resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz#4896003d7a334f7e8e4a53ba93fb9bcd3db0a1af" integrity sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A== dependencies: "@jest/environment" "^27.5.1" @@ -6914,7 +6746,7 @@ jest-runtime@^27.5.1: jest-serializer@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" + resolved "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" integrity sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w== dependencies: "@types/node" "*" @@ -6922,7 +6754,7 @@ jest-serializer@^27.5.1: jest-snapshot@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.5.1.tgz#b668d50d23d38054a51b42c4039cab59ae6eb6a1" + resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz#b668d50d23d38054a51b42c4039cab59ae6eb6a1" integrity sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA== dependencies: "@babel/core" "^7.7.2" @@ -6950,7 +6782,7 @@ jest-snapshot@^27.5.1: jest-util@^27.0.0, jest-util@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" + resolved "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" integrity sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw== dependencies: "@jest/types" "^27.5.1" @@ -6962,7 +6794,7 @@ jest-util@^27.0.0, jest-util@^27.5.1: jest-validate@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.5.1.tgz#9197d54dc0bdb52260b8db40b46ae668e04df067" + resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz#9197d54dc0bdb52260b8db40b46ae668e04df067" integrity sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ== dependencies: "@jest/types" "^27.5.1" @@ -6974,7 +6806,7 @@ jest-validate@^27.5.1: jest-watcher@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.5.1.tgz#71bd85fb9bde3a2c2ec4dc353437971c43c642a2" + resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz#71bd85fb9bde3a2c2ec4dc353437971c43c642a2" integrity sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw== dependencies: "@jest/test-result" "^27.5.1" @@ -6987,34 +6819,16 @@ jest-watcher@^27.5.1: jest-worker@^26.2.1: version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" + resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== dependencies: "@types/node" "*" merge-stream "^2.0.0" supports-color "^7.0.0" -jest-worker@^27.0.6: - version "27.4.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.4.0.tgz#fa10dddc611cbb47a4153543dd16a0c7e7fd745c" - integrity sha512-4WuKcUxtzxBoKOUFbt1MtTY9fJwPVD4aN/4Cgxee7OLetPZn5as2bjfZz98XSf2Zq1JFfhqPZpS+43BmWXKgCA== - dependencies: - "@types/node" "*" - merge-stream "^2.0.0" - supports-color "^8.0.0" - -jest-worker@^27.3.1: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.4.6.tgz#5d2d93db419566cb680752ca0792780e71b3273e" - integrity sha512-gHWJF/6Xi5CTG5QCvROr6GcmpIqNYpDJyc8A1h/DyXqH1tD6SnRCM0d3U5msV31D2LB/U+E0M+W4oyvKV44oNw== - dependencies: - "@types/node" "*" - merge-stream "^2.0.0" - supports-color "^8.0.0" - -jest-worker@^27.5.1: +jest-worker@^27.3.1, jest-worker@^27.4.5, jest-worker@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" + resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== dependencies: "@types/node" "*" @@ -7023,7 +6837,7 @@ jest-worker@^27.5.1: jest@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/jest/-/jest-27.5.1.tgz#dadf33ba70a779be7a6fc33015843b51494f63fc" + resolved "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz#dadf33ba70a779be7a6fc33015843b51494f63fc" integrity sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ== dependencies: "@jest/core" "^27.5.1" @@ -7032,22 +6846,22 @@ jest@^27.5.1: jose@^4.3.6: version "4.6.0" - resolved "https://registry.yarnpkg.com/jose/-/jose-4.6.0.tgz#f3ff007ddcbce462c091d3d41b7af2e35dec348c" + resolved "https://registry.npmjs.org/jose/-/jose-4.6.0.tgz#f3ff007ddcbce462c091d3d41b7af2e35dec348c" integrity sha512-0hNAkhMBNi4soKSAX4zYOFV+aqJlEz/4j4fregvasJzEVtjDChvWqRjPvHwLqr5hx28Ayr6bsOs1Kuj87V0O8w== js-sha3@0.8.0: version "0.8.0" - resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" + resolved "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== js-yaml@^3.13.1: version "3.14.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== dependencies: argparse "^1.0.7" @@ -7055,19 +6869,19 @@ js-yaml@^3.13.1: js-yaml@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: argparse "^2.0.1" jsbn@~0.1.0: version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + resolved "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= jsdom@^16.6.0: version "16.7.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" + resolved "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== dependencies: abab "^2.0.5" @@ -7100,73 +6914,73 @@ jsdom@^16.6.0: jsesc@^2.5.1: version "2.5.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== jsesc@~0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= json-bigint@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/json-bigint/-/json-bigint-1.0.0.tgz#ae547823ac0cad8398667f8cd9ef4730f5b01ff1" + resolved "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz#ae547823ac0cad8398667f8cd9ef4730f5b01ff1" integrity sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ== dependencies: bignumber.js "^9.0.0" json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" + resolved "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== json-parse-even-better-errors@^2.3.0: version "2.3.1" - resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== json-schema-traverse@^0.4.1: version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== json-schema-traverse@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== json-schema@0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" + resolved "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= json5@2.x, json5@^2.1.2: version "2.2.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" + resolved "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== dependencies: minimist "^1.2.5" json5@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" + resolved "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== dependencies: minimist "^1.2.0" jsonfile@^6.0.1: version "6.1.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== dependencies: universalify "^2.0.0" @@ -7175,12 +6989,12 @@ jsonfile@^6.0.1: jsonparse@^1.2.0, jsonparse@^1.3.1: version "1.3.1" - resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" + resolved "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" integrity sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA= jsprim@^1.2.2: version "1.4.2" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb" + resolved "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb" integrity sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw== dependencies: assert-plus "1.0.0" @@ -7190,7 +7004,7 @@ jsprim@^1.2.2: "jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.2.1: version "3.2.1" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.2.1.tgz#720b97bfe7d901b927d87c3773637ae8ea48781b" + resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.1.tgz#720b97bfe7d901b927d87c3773637ae8ea48781b" integrity sha512-uP5vu8xfy2F9A6LGC22KO7e2/vGTS1MhP+18f++ZNlf0Ohaxbc9nIEwHAsejlJKyzfZzU5UIhe5ItYkitcZnZA== dependencies: array-includes "^3.1.3" @@ -7198,29 +7012,29 @@ jsprim@^1.2.2: kind-of@^6.0.2, kind-of@^6.0.3: version "6.0.3" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== kleur@^3.0.3: version "3.0.3" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + resolved "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== language-subtag-registry@~0.3.2: version "0.3.21" - resolved "https://registry.yarnpkg.com/language-subtag-registry/-/language-subtag-registry-0.3.21.tgz#04ac218bea46f04cb039084602c6da9e788dd45a" + resolved "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.21.tgz#04ac218bea46f04cb039084602c6da9e788dd45a" integrity sha512-L0IqwlIXjilBVVYKFT37X9Ih11Um5NEl9cbJIuU/SwP/zEEAbBPOnEeeuxVMf45ydWQRDQN3Nqc96OgbH1K+Pg== language-tags@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/language-tags/-/language-tags-1.0.5.tgz#d321dbc4da30ba8bf3024e040fa5c14661f9193a" + resolved "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz#d321dbc4da30ba8bf3024e040fa5c14661f9193a" integrity sha1-0yHbxNowuovzAk4ED6XBRmH5GTo= dependencies: language-subtag-registry "~0.3.2" lerna@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/lerna/-/lerna-4.0.0.tgz#b139d685d50ea0ca1be87713a7c2f44a5b678e9e" + resolved "https://registry.npmjs.org/lerna/-/lerna-4.0.0.tgz#b139d685d50ea0ca1be87713a7c2f44a5b678e9e" integrity sha512-DD/i1znurfOmNJb0OBw66NmNqiM8kF6uIrzrJ0wGE3VNdzeOhz9ziWLYiRaZDGGwgbcjOo6eIfcx9O5Qynz+kg== dependencies: "@lerna/add" "4.0.0" @@ -7244,12 +7058,12 @@ lerna@^4.0.0: leven@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + resolved "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== levn@^0.4.1: version "0.4.1" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== dependencies: prelude-ls "^1.2.1" @@ -7257,7 +7071,7 @@ levn@^0.4.1: levn@~0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + resolved "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= dependencies: prelude-ls "~1.1.2" @@ -7265,7 +7079,7 @@ levn@~0.3.0: libnpmaccess@^4.0.1: version "4.0.3" - resolved "https://registry.yarnpkg.com/libnpmaccess/-/libnpmaccess-4.0.3.tgz#dfb0e5b0a53c315a2610d300e46b4ddeb66e7eec" + resolved "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-4.0.3.tgz#dfb0e5b0a53c315a2610d300e46b4ddeb66e7eec" integrity sha512-sPeTSNImksm8O2b6/pf3ikv4N567ERYEpeKRPSmqlNt1dTZbvgpJIzg5vAhXHpw2ISBsELFRelk0jEahj1c6nQ== dependencies: aproba "^2.0.0" @@ -7275,7 +7089,7 @@ libnpmaccess@^4.0.1: libnpmpublish@^4.0.0: version "4.0.2" - resolved "https://registry.yarnpkg.com/libnpmpublish/-/libnpmpublish-4.0.2.tgz#be77e8bf5956131bcb45e3caa6b96a842dec0794" + resolved "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-4.0.2.tgz#be77e8bf5956131bcb45e3caa6b96a842dec0794" integrity sha512-+AD7A2zbVeGRCFI2aO//oUmapCwy7GHqPXFJh3qpToSRNU+tXKJ2YFUgjt04LPPAf2dlEH95s6EhIHM1J7bmOw== dependencies: normalize-package-data "^3.0.2" @@ -7286,12 +7100,12 @@ libnpmpublish@^4.0.0: lines-and-columns@^1.1.6: version "1.2.4" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== load-json-file@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" + resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= dependencies: graceful-fs "^4.1.2" @@ -7301,7 +7115,7 @@ load-json-file@^4.0.0: load-json-file@^6.2.0: version "6.2.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-6.2.0.tgz#5c7770b42cafa97074ca2848707c61662f4251a1" + resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz#5c7770b42cafa97074ca2848707c61662f4251a1" integrity sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ== dependencies: graceful-fs "^4.1.15" @@ -7311,12 +7125,12 @@ load-json-file@^6.2.0: loader-runner@^4.2.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.2.0.tgz#d7022380d66d14c5fb1d496b89864ebcfd478384" + resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz#d7022380d66d14c5fb1d496b89864ebcfd478384" integrity sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw== loader-utils@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.2.tgz#d6e3b4fb81870721ae4e0868ab11dd638368c129" + resolved "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz#d6e3b4fb81870721ae4e0868ab11dd638368c129" integrity sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A== dependencies: big.js "^5.2.2" @@ -7325,7 +7139,7 @@ loader-utils@^2.0.0: locate-path@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= dependencies: p-locate "^2.0.0" @@ -7333,44 +7147,44 @@ locate-path@^2.0.0: locate-path@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== dependencies: p-locate "^4.1.0" lodash-es@^4.17.21: version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee" + resolved "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee" integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw== lodash._reinterpolate@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" + resolved "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= lodash.debounce@^4.0.8: version "4.0.8" - resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + resolved "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= lodash.ismatch@^4.4.0: version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37" + resolved "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37" integrity sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc= lodash.memoize@4.x: version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + resolved "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= lodash.merge@^4.6.2: version "4.6.2" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== lodash.template@^4.5.0: version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" + resolved "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== dependencies: lodash._reinterpolate "^3.0.0" @@ -7378,47 +7192,47 @@ lodash.template@^4.5.0: lodash.templatesettings@^4.0.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" + resolved "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== dependencies: lodash._reinterpolate "^3.0.0" lodash@^4.17.11, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.7.0: version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== loose-envify@^1.1.0, loose-envify@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== dependencies: js-tokens "^3.0.0 || ^4.0.0" lower-case@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" + resolved "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== dependencies: tslib "^2.0.3" lru-cache@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== dependencies: yallist "^4.0.0" magic-string@^0.25.7: - version "0.25.7" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051" - integrity sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA== + version "0.25.9" + resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c" + integrity sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ== dependencies: - sourcemap-codec "^1.4.4" + sourcemap-codec "^1.4.8" make-dir@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" + resolved "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== dependencies: pify "^4.0.1" @@ -7426,19 +7240,19 @@ make-dir@^2.1.0: make-dir@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + resolved "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== dependencies: semver "^6.0.0" make-error@1.x: version "1.3.6" - resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== make-fetch-happen@^8.0.9: version "8.0.14" - resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-8.0.14.tgz#aaba73ae0ab5586ad8eaa68bd83332669393e222" + resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-8.0.14.tgz#aaba73ae0ab5586ad8eaa68bd83332669393e222" integrity sha512-EsS89h6l4vbfJEtBZnENTOFk8mCRpY5ru36Xe5bcX1KYIli2mkSHqoFsp5O1wMDvTJJzxe/4THpCTtygjeeGWQ== dependencies: agentkeepalive "^4.1.3" @@ -7459,7 +7273,7 @@ make-fetch-happen@^8.0.9: make-fetch-happen@^9.0.1: version "9.1.0" - resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968" + resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968" integrity sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg== dependencies: agentkeepalive "^4.1.3" @@ -7481,29 +7295,29 @@ make-fetch-happen@^9.0.1: makeerror@1.0.12: version "1.0.12" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== dependencies: tmpl "1.0.5" map-obj@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + resolved "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= map-obj@^4.0.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" + resolved "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== mdn-data@2.0.14: version "2.0.14" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" + resolved "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== meow@^8.0.0: version "8.1.2" - resolved "https://registry.yarnpkg.com/meow/-/meow-8.1.2.tgz#bcbe45bda0ee1729d350c03cffc8395a36c4e897" + resolved "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz#bcbe45bda0ee1729d350c03cffc8395a36c4e897" integrity sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q== dependencies: "@types/minimist" "^1.2.0" @@ -7520,22 +7334,22 @@ meow@^8.0.0: merge-stream@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -micro-base@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/micro-base/-/micro-base-0.9.0.tgz#09cfe20285bec0ea97f41dc3d10e3fba3d0266ee" - integrity sha512-4+tOMKidYT5nQ6/UNmYrGVO5PMcnJdfuR4NC8HK8s2H61B4itOhA9yrsjBdqGV7ecdtej36x3YSIfPLRmPrspg== +micro-base@^0.10.1: + version "0.10.2" + resolved "https://registry.npmjs.org/micro-base/-/micro-base-0.10.2.tgz#f6f9f0bd949ce511883e5a99f9147d80ddc32f5a" + integrity sha512-lqqJrT7lfJtDmmiQ4zRLZuIJBk96t0RAc5pCrrWpL9zDeH5i/SUL85mku9HqzTI/OCZ8EQ3aicbMW+eK5Nyu5w== micromatch@^4.0.0, micromatch@^4.0.4: version "4.0.4" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9" integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== dependencies: braces "^3.0.1" @@ -7543,46 +7357,46 @@ micromatch@^4.0.0, micromatch@^4.0.4: mime-db@1.51.0: version "1.51.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c" + resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c" integrity sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g== mime-types@^2.1.12, mime-types@^2.1.27, mime-types@~2.1.19: version "2.1.34" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24" + resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24" integrity sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A== dependencies: mime-db "1.51.0" mimic-fn@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== min-indent@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" + resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + resolved "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== minimalistic-crypto-utils@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + resolved "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= minimatch@^3.0.4, minimatch@^3.1.2: version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" minimist-options@4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" + resolved "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A== dependencies: arrify "^1.0.1" @@ -7591,19 +7405,19 @@ minimist-options@4.1.0: minimist@^1.2.0, minimist@^1.2.5: version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" + resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== minipass-collect@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + resolved "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== dependencies: minipass "^3.0.0" minipass-fetch@^1.3.0, minipass-fetch@^1.3.2: version "1.4.1" - resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-1.4.1.tgz#d75e0091daac1b0ffd7e9d41629faff7d0c1f1b6" + resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz#d75e0091daac1b0ffd7e9d41629faff7d0c1f1b6" integrity sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw== dependencies: minipass "^3.1.0" @@ -7614,14 +7428,14 @@ minipass-fetch@^1.3.0, minipass-fetch@^1.3.2: minipass-flush@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + resolved "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== dependencies: minipass "^3.0.0" minipass-json-stream@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz#7edbb92588fbfc2ff1db2fc10397acb7b6b44aa7" + resolved "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz#7edbb92588fbfc2ff1db2fc10397acb7b6b44aa7" integrity sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg== dependencies: jsonparse "^1.3.1" @@ -7629,43 +7443,43 @@ minipass-json-stream@^1.0.1: minipass-pipeline@^1.2.2, minipass-pipeline@^1.2.4: version "1.2.4" - resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" + resolved "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== dependencies: minipass "^3.0.0" minipass-sized@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" + resolved "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" integrity sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g== dependencies: minipass "^3.0.0" minipass@^2.6.0, minipass@^2.9.0: version "2.9.0" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" + resolved "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== dependencies: safe-buffer "^5.1.2" yallist "^3.0.0" minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3: - version "3.1.5" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.5.tgz#71f6251b0a33a49c01b3cf97ff77eda030dff732" - integrity sha512-+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw== + version "3.1.6" + resolved "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz#3b8150aa688a711a1521af5e8779c1d3bb4f45ee" + integrity sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ== dependencies: yallist "^4.0.0" minizlib@^1.3.3: version "1.3.3" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" + resolved "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== dependencies: minipass "^2.9.0" minizlib@^2.0.0, minizlib@^2.1.1: version "2.1.2" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + resolved "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== dependencies: minipass "^3.0.0" @@ -7673,7 +7487,7 @@ minizlib@^2.0.0, minizlib@^2.1.1: mkdirp-infer-owner@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz#55d3b368e7d89065c38f32fd38e638f0ab61d316" + resolved "https://registry.npmjs.org/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz#55d3b368e7d89065c38f32fd38e638f0ab61d316" integrity sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw== dependencies: chownr "^2.0.0" @@ -7682,44 +7496,44 @@ mkdirp-infer-owner@^2.0.0: mkdirp@^0.5.1, mkdirp@^0.5.5: version "0.5.5" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" + resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== dependencies: minimist "^1.2.5" mkdirp@^1.0.3, mkdirp@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== modify-values@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" + resolved "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== mri@^1.1.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/mri/-/mri-1.2.0.tgz#6721480fec2a11a4889861115a48b6cbe7cc8f0b" + resolved "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz#6721480fec2a11a4889861115a48b6cbe7cc8f0b" integrity sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA== ms@2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= ms@2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== ms@^2.0.0, ms@^2.1.1: version "2.1.3" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== multimatch@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-5.0.0.tgz#932b800963cea7a31a033328fa1e0c3a1874dbe6" + resolved "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz#932b800963cea7a31a033328fa1e0c3a1874dbe6" integrity sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA== dependencies: "@types/minimatch" "^3.0.3" @@ -7730,37 +7544,37 @@ multimatch@^5.0.0: mute-stream@0.0.8, mute-stream@~0.0.4: version "0.0.8" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" + resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== nanoclone@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/nanoclone/-/nanoclone-0.2.1.tgz#dd4090f8f1a110d26bb32c49ed2f5b9235209ed4" + resolved "https://registry.npmjs.org/nanoclone/-/nanoclone-0.2.1.tgz#dd4090f8f1a110d26bb32c49ed2f5b9235209ed4" integrity sha512-wynEP02LmIbLpcYw8uBKpcfF6dmg2vcpKqxeH5UcoKEYdExslsdUA4ugFauuaeYdTB76ez6gJW8XAZ6CgkXYxA== nanoid@^3.1.30: - version "3.2.0" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.2.0.tgz#62667522da6673971cca916a6d3eff3f415ff80c" - integrity sha512-fmsZYa9lpn69Ad5eDn7FMcnnSR+8R34W9qJEijxYhTbfOWzr22n1QxCMzXLK+ODyW2973V3Fux959iQoUxzUIA== + version "3.3.1" + resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz#6347a18cac88af88f58af0b3594b723d5e99bb35" + integrity sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw== natural-compare@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= negotiator@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" - integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== + version "0.6.3" + resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== neo-async@^2.6.0, neo-async@^2.6.2: version "2.6.2" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== next@12.1.0: version "12.1.0" - resolved "https://registry.yarnpkg.com/next/-/next-12.1.0.tgz#c33d753b644be92fc58e06e5a214f143da61dd5d" + resolved "https://registry.npmjs.org/next/-/next-12.1.0.tgz#c33d753b644be92fc58e06e5a214f143da61dd5d" integrity sha512-s885kWvnIlxsUFHq9UGyIyLiuD0G3BUC/xrH0CEnH5lHEWkwQcHOORgbDF0hbrW9vr/7am4ETfX4A7M6DjrE7Q== dependencies: "@next/env" "12.1.0" @@ -7783,32 +7597,22 @@ next@12.1.0: no-case@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" + resolved "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== dependencies: lower-case "^2.0.2" tslib "^2.0.3" -noble-hashes@^0.2.1: - version "0.2.2" - resolved "https://registry.yarnpkg.com/noble-hashes/-/noble-hashes-0.2.2.tgz#f174cc18ba2fd1ee8b416e4da568f6706f00bb34" - integrity sha512-5wKykPleHvJ8y6htmb4+4ecgHA0n1F4n0xtfMdXjkhqoQsZE9QTp+nriQzss9RQKJ86GUWZwXnq0CM4VW8ApSg== - -noble-secp256k1@^1.2.14: - version "1.2.14" - resolved "https://registry.yarnpkg.com/noble-secp256k1/-/noble-secp256k1-1.2.14.tgz#39429c941d51211ca40161569cee03e61d72599e" - integrity sha512-GSCXyoZBUaaPwVWdYncMEmzlSUjF9J/YeEHpklYJCyg8wPuJP3NzDx0BkiwArzINkdX2HJHvUJhL6vVWPOQQcg== - -node-fetch@^2.6.1: +node-fetch@^2.6.1, node-fetch@^2.6.7: version "2.6.7" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" + resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== dependencies: whatwg-url "^5.0.0" node-gyp@^5.0.2: version "5.1.1" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-5.1.1.tgz#eb915f7b631c937d282e33aed44cb7a025f62a3e" + resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-5.1.1.tgz#eb915f7b631c937d282e33aed44cb7a025f62a3e" integrity sha512-WH0WKGi+a4i4DUt2mHnvocex/xPLp9pYt5R6M2JdFB7pJ7Z34hveZ4nDTGTiLXCkitA9T8HFZjhinBCiVHYcWw== dependencies: env-paths "^2.2.0" @@ -7825,7 +7629,7 @@ node-gyp@^5.0.2: node-gyp@^7.1.0: version "7.1.2" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-7.1.2.tgz#21a810aebb187120251c3bcec979af1587b188ae" + resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-7.1.2.tgz#21a810aebb187120251c3bcec979af1587b188ae" integrity sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ== dependencies: env-paths "^2.2.0" @@ -7841,17 +7645,17 @@ node-gyp@^7.1.0: node-int64@^0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + resolved "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= -node-releases@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5" - integrity sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA== +node-releases@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz#7139fe71e2f4f11b47d4d2986aaf8c48699e0c01" + integrity sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg== nopt@^4.0.1: version "4.0.3" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" + resolved "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg== dependencies: abbrev "1" @@ -7859,14 +7663,14 @@ nopt@^4.0.1: nopt@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" + resolved "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" integrity sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ== dependencies: abbrev "1" normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== dependencies: hosted-git-info "^2.1.4" @@ -7876,7 +7680,7 @@ normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package- normalize-package-data@^3.0.0, normalize-package-data@^3.0.2: version "3.0.3" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== dependencies: hosted-git-info "^4.0.1" @@ -7886,31 +7690,31 @@ normalize-package-data@^3.0.0, normalize-package-data@^3.0.2: normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== normalize-url@^6.1.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" + resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== npm-bundled@^1.1.1: version "1.1.2" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.2.tgz#944c78789bd739035b70baa2ca5cc32b8d860bc1" + resolved "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz#944c78789bd739035b70baa2ca5cc32b8d860bc1" integrity sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ== dependencies: npm-normalize-package-bin "^1.0.1" npm-install-checks@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/npm-install-checks/-/npm-install-checks-4.0.0.tgz#a37facc763a2fde0497ef2c6d0ac7c3fbe00d7b4" + resolved "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-4.0.0.tgz#a37facc763a2fde0497ef2c6d0ac7c3fbe00d7b4" integrity sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w== dependencies: semver "^7.1.1" npm-lifecycle@^3.1.5: version "3.1.5" - resolved "https://registry.yarnpkg.com/npm-lifecycle/-/npm-lifecycle-3.1.5.tgz#9882d3642b8c82c815782a12e6a1bfeed0026309" + resolved "https://registry.npmjs.org/npm-lifecycle/-/npm-lifecycle-3.1.5.tgz#9882d3642b8c82c815782a12e6a1bfeed0026309" integrity sha512-lDLVkjfZmvmfvpvBzA4vzee9cn+Me4orq0QF8glbswJVEbIcSNWib7qGOffolysc3teCqbbPZZkzbr3GQZTL1g== dependencies: byline "^5.0.0" @@ -7924,12 +7728,12 @@ npm-lifecycle@^3.1.5: npm-normalize-package-bin@^1.0.0, npm-normalize-package-bin@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" + resolved "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== npm-package-arg@^8.0.0, npm-package-arg@^8.0.1, npm-package-arg@^8.1.0, npm-package-arg@^8.1.2, npm-package-arg@^8.1.5: version "8.1.5" - resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-8.1.5.tgz#3369b2d5fe8fdc674baa7f1786514ddc15466e44" + resolved "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz#3369b2d5fe8fdc674baa7f1786514ddc15466e44" integrity sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q== dependencies: hosted-git-info "^4.0.1" @@ -7938,7 +7742,7 @@ npm-package-arg@^8.0.0, npm-package-arg@^8.0.1, npm-package-arg@^8.1.0, npm-pack npm-packlist@^2.1.4: version "2.2.2" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-2.2.2.tgz#076b97293fa620f632833186a7a8f65aaa6148c8" + resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.2.2.tgz#076b97293fa620f632833186a7a8f65aaa6148c8" integrity sha512-Jt01acDvJRhJGthnUJVF/w6gumWOZxO7IkpY/lsX9//zqQgnF7OJaxgQXcerd4uQOLu7W5bkb4mChL9mdfm+Zg== dependencies: glob "^7.1.6" @@ -7948,7 +7752,7 @@ npm-packlist@^2.1.4: npm-pick-manifest@^6.0.0, npm-pick-manifest@^6.1.1: version "6.1.1" - resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-6.1.1.tgz#7b5484ca2c908565f43b7f27644f36bb816f5148" + resolved "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-6.1.1.tgz#7b5484ca2c908565f43b7f27644f36bb816f5148" integrity sha512-dBsdBtORT84S8V8UTad1WlUyKIY9iMsAmqxHbLdeEeBNMLQDlDWWra3wYUx9EBEIiG/YwAy0XyNHDd2goAsfuA== dependencies: npm-install-checks "^4.0.0" @@ -7958,7 +7762,7 @@ npm-pick-manifest@^6.0.0, npm-pick-manifest@^6.1.1: npm-registry-fetch@^11.0.0: version "11.0.0" - resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-11.0.0.tgz#68c1bb810c46542760d62a6a965f85a702d43a76" + resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-11.0.0.tgz#68c1bb810c46542760d62a6a965f85a702d43a76" integrity sha512-jmlgSxoDNuhAtxUIG6pVwwtz840i994dL14FoNVZisrmZW5kWd63IUTNv1m/hyRSGSqWjCUp/YZlS1BJyNp9XA== dependencies: make-fetch-happen "^9.0.1" @@ -7970,7 +7774,7 @@ npm-registry-fetch@^11.0.0: npm-registry-fetch@^9.0.0: version "9.0.0" - resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-9.0.0.tgz#86f3feb4ce00313bc0b8f1f8f69daae6face1661" + resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-9.0.0.tgz#86f3feb4ce00313bc0b8f1f8f69daae6face1661" integrity sha512-PuFYYtnQ8IyVl6ib9d3PepeehcUeHN9IO5N/iCRhyg9tStQcqGQBRVHmfmMWPDERU3KwZoHFvbJ4FPXPspvzbA== dependencies: "@npmcli/ci-detect" "^1.0.0" @@ -7984,14 +7788,14 @@ npm-registry-fetch@^9.0.0: npm-run-path@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== dependencies: path-key "^3.0.0" npmlog@^4.1.2: version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" + resolved "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== dependencies: are-we-there-yet "~1.1.2" @@ -7999,51 +7803,51 @@ npmlog@^4.1.2: gauge "~2.7.3" set-blocking "~2.0.0" -nth-check@^2.0.0: +nth-check@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.0.1.tgz#2efe162f5c3da06a28959fbd3db75dbeea9f0fc2" + resolved "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz#2efe162f5c3da06a28959fbd3db75dbeea9f0fc2" integrity sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w== dependencies: boolbase "^1.0.0" number-is-nan@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + resolved "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= nwsapi@^2.2.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" + resolved "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== oauth-sign@~0.9.0: version "0.9.0" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" + resolved "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= object-hash@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" + resolved "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== object-inspect@^1.11.0, object-inspect@^1.9.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.11.0.tgz#9dceb146cedd4148a0d9e51ab88d34cf509922b1" - integrity sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg== + version "1.12.0" + resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" + integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== object-keys@^1.0.12, object-keys@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== object.assign@^4.1.0, object.assign@^4.1.2: version "4.1.2" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" + resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== dependencies: call-bind "^1.0.0" @@ -8053,7 +7857,7 @@ object.assign@^4.1.0, object.assign@^4.1.2: object.entries@^1.1.5: version "1.1.5" - resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.5.tgz#e1acdd17c4de2cd96d5a08487cfb9db84d881861" + resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz#e1acdd17c4de2cd96d5a08487cfb9db84d881861" integrity sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g== dependencies: call-bind "^1.0.2" @@ -8062,7 +7866,7 @@ object.entries@^1.1.5: object.fromentries@^2.0.5: version "2.0.5" - resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.5.tgz#7b37b205109c21e741e605727fe8b0ad5fa08251" + resolved "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.5.tgz#7b37b205109c21e741e605727fe8b0ad5fa08251" integrity sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw== dependencies: call-bind "^1.0.2" @@ -8071,7 +7875,7 @@ object.fromentries@^2.0.5: object.getownpropertydescriptors@^2.0.3: version "2.1.3" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz#b223cf38e17fefb97a63c10c91df72ccb386df9e" + resolved "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz#b223cf38e17fefb97a63c10c91df72ccb386df9e" integrity sha512-VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw== dependencies: call-bind "^1.0.2" @@ -8080,7 +7884,7 @@ object.getownpropertydescriptors@^2.0.3: object.hasown@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.0.tgz#7232ed266f34d197d15cac5880232f7a4790afe5" + resolved "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.0.tgz#7232ed266f34d197d15cac5880232f7a4790afe5" integrity sha512-MhjYRfj3GBlhSkDHo6QmvgjRLXQ2zndabdf3nX0yTyZK9rPfxb6uRpAac8HXNLy1GpqWtZ81Qh4v3uOls2sRAg== dependencies: define-properties "^1.1.3" @@ -8088,7 +7892,7 @@ object.hasown@^1.1.0: object.values@^1.1.5: version "1.1.5" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.5.tgz#959f63e3ce9ef108720333082131e4a459b716ac" + resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz#959f63e3ce9ef108720333082131e4a459b716ac" integrity sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg== dependencies: call-bind "^1.0.2" @@ -8097,21 +7901,21 @@ object.values@^1.1.5: once@^1.3.0, once@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= dependencies: wrappy "1" onetime@^5.1.0, onetime@^5.1.2: version "5.1.2" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" optionator@^0.8.1: version "0.8.3" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" + resolved "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== dependencies: deep-is "~0.1.3" @@ -8123,7 +7927,7 @@ optionator@^0.8.1: optionator@^0.9.1: version "0.9.1" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== dependencies: deep-is "^0.1.3" @@ -8135,17 +7939,17 @@ optionator@^0.9.1: os-homedir@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + resolved "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= osenv@^0.1.4: version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" + resolved "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== dependencies: os-homedir "^1.0.0" @@ -8153,57 +7957,57 @@ osenv@^0.1.4: p-finally@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + resolved "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= p-limit@^1.1.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== dependencies: p-try "^1.0.0" p-limit@^2.2.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== dependencies: p-try "^2.0.0" p-locate@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= dependencies: p-limit "^1.1.0" p-locate@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== dependencies: p-limit "^2.2.0" p-map-series@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/p-map-series/-/p-map-series-2.1.0.tgz#7560d4c452d9da0c07e692fdbfe6e2c81a2a91f2" + resolved "https://registry.npmjs.org/p-map-series/-/p-map-series-2.1.0.tgz#7560d4c452d9da0c07e692fdbfe6e2c81a2a91f2" integrity sha512-RpYIIK1zXSNEOdwxcfe7FdvGcs7+y5n8rifMhMNWvaxRNMPINJHF5GDeuVxWqnfrcHPSCnp7Oo5yNXHId9Av2Q== p-map@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== dependencies: aggregate-error "^3.0.0" p-pipe@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/p-pipe/-/p-pipe-3.1.0.tgz#48b57c922aa2e1af6a6404cb7c6bf0eb9cc8e60e" + resolved "https://registry.npmjs.org/p-pipe/-/p-pipe-3.1.0.tgz#48b57c922aa2e1af6a6404cb7c6bf0eb9cc8e60e" integrity sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw== p-queue@^6.6.2: version "6.6.2" - resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426" + resolved "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426" integrity sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ== dependencies: eventemitter3 "^4.0.4" @@ -8211,36 +8015,36 @@ p-queue@^6.6.2: p-reduce@^2.0.0, p-reduce@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-2.1.0.tgz#09408da49507c6c274faa31f28df334bc712b64a" + resolved "https://registry.npmjs.org/p-reduce/-/p-reduce-2.1.0.tgz#09408da49507c6c274faa31f28df334bc712b64a" integrity sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw== p-timeout@^3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" + resolved "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg== dependencies: p-finally "^1.0.0" p-try@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + resolved "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= p-try@^2.0.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== p-waterfall@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/p-waterfall/-/p-waterfall-2.1.1.tgz#63153a774f472ccdc4eb281cdb2967fcf158b2ee" + resolved "https://registry.npmjs.org/p-waterfall/-/p-waterfall-2.1.1.tgz#63153a774f472ccdc4eb281cdb2967fcf158b2ee" integrity sha512-RRTnDb2TBG/epPRI2yYXsimO0v3BXC8Yd3ogr1545IaqKK17VGhbWVeGGN+XfCm/08OK8635nH31c8bATkHuSw== dependencies: p-reduce "^2.0.0" pacote@^11.2.6: version "11.3.5" - resolved "https://registry.yarnpkg.com/pacote/-/pacote-11.3.5.tgz#73cf1fc3772b533f575e39efa96c50be8c3dc9d2" + resolved "https://registry.npmjs.org/pacote/-/pacote-11.3.5.tgz#73cf1fc3772b533f575e39efa96c50be8c3dc9d2" integrity sha512-fT375Yczn4zi+6Hkk2TBe1x1sP8FgFsEIZ2/iWaXY2r/NkhDJfxbcn5paz1+RTFCyNf+dPnaoBDJoAxXSU8Bkg== dependencies: "@npmcli/git" "^2.1.0" @@ -8265,12 +8069,12 @@ pacote@^11.2.6: pako@^2.0.4: version "2.0.4" - resolved "https://registry.yarnpkg.com/pako/-/pako-2.0.4.tgz#6cebc4bbb0b6c73b0d5b8d7e8476e2b2fbea576d" + resolved "https://registry.npmjs.org/pako/-/pako-2.0.4.tgz#6cebc4bbb0b6c73b0d5b8d7e8476e2b2fbea576d" integrity sha512-v8tweI900AUkZN6heMU/4Uy4cXRc2AYNRggVmTR+dEncawDJgCdLMximOVA2p4qO57WMynangsfGRb5WD6L1Bg== param-case@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" + resolved "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== dependencies: dot-case "^3.0.4" @@ -8278,14 +8082,14 @@ param-case@^3.0.4: parent-module@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== dependencies: callsites "^3.0.0" parse-json@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= dependencies: error-ex "^1.3.1" @@ -8293,7 +8097,7 @@ parse-json@^4.0.0: parse-json@^5.0.0, parse-json@^5.2.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== dependencies: "@babel/code-frame" "^7.0.0" @@ -8303,7 +8107,7 @@ parse-json@^5.0.0, parse-json@^5.2.0: parse-path@^4.0.0: version "4.0.3" - resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-4.0.3.tgz#82d81ec3e071dcc4ab49aa9f2c9c0b8966bb22bf" + resolved "https://registry.npmjs.org/parse-path/-/parse-path-4.0.3.tgz#82d81ec3e071dcc4ab49aa9f2c9c0b8966bb22bf" integrity sha512-9Cepbp2asKnWTJ9x2kpw6Fe8y9JDbqwahGCTvklzd/cEq5C5JC59x2Xb0Kx+x0QZ8bvNquGO8/BWP0cwBHzSAA== dependencies: is-ssh "^1.3.0" @@ -8313,7 +8117,7 @@ parse-path@^4.0.0: parse-url@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-6.0.0.tgz#f5dd262a7de9ec00914939220410b66cff09107d" + resolved "https://registry.npmjs.org/parse-url/-/parse-url-6.0.0.tgz#f5dd262a7de9ec00914939220410b66cff09107d" integrity sha512-cYyojeX7yIIwuJzledIHeLUBVJ6COVLeT4eF+2P6aKVzwvgKQPndCBv3+yQ7pcWjqToYwaligxzSYNNmGoMAvw== dependencies: is-ssh "^1.3.0" @@ -8323,12 +8127,12 @@ parse-url@^6.0.0: parse5@6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" + resolved "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== pascal-case@^3.1.2: version "3.1.2" - resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" + resolved "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== dependencies: no-case "^3.0.4" @@ -8336,103 +8140,96 @@ pascal-case@^3.1.2: path-exists@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= path-exists@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== path-is-absolute@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= path-key@^3.0.0, path-key@^3.1.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== -path-parse@^1.0.6: +path-parse@^1.0.6, path-parse@^1.0.7: version "1.0.7" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== path-type@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + resolved "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== dependencies: pify "^3.0.0" path-type@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== performance-now@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + resolved "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= picocolors@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3: - version "2.3.0" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz#f1f061de8f6a4bf022892e2d128234fb98302972" - integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw== +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3, picomatch@^2.3.0: + version "2.3.1" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== pify@^2.3.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= pify@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + resolved "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= pify@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== pify@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" + resolved "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA== pirates@^4.0.4: version "4.0.5" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" + resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" - integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= - dependencies: - find-up "^2.1.0" - pkg-dir@^4.2.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== dependencies: find-up "^4.0.0" postcss-value-parser@^4.0.2: version "4.2.0" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" + resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== postcss@8.4.5: version "8.4.5" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.5.tgz#bae665764dfd4c6fcc24dc0fdf7e7aa00cc77f95" + resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz#bae665764dfd4c6fcc24dc0fdf7e7aa00cc77f95" integrity sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg== dependencies: nanoid "^3.1.30" @@ -8441,17 +8238,17 @@ postcss@8.4.5: prelude-ls@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== prelude-ls@~1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= prettier-plugin-import-sort@^0.0.7: version "0.0.7" - resolved "https://registry.yarnpkg.com/prettier-plugin-import-sort/-/prettier-plugin-import-sort-0.0.7.tgz#b13dcc4de98940b99066a9e34606a955d109b546" + resolved "https://registry.npmjs.org/prettier-plugin-import-sort/-/prettier-plugin-import-sort-0.0.7.tgz#b13dcc4de98940b99066a9e34606a955d109b546" integrity sha512-O0KlUSq+lwvh+UiN3wZDT6wWkf7TNxTVv2/XXE5KqpRNbFJq3nRg2ftzBYFFO8QGpdWIrOB0uCTCtFjIxmVKQw== dependencies: import-sort "^6.0.0" @@ -8461,12 +8258,12 @@ prettier-plugin-import-sort@^0.0.7: prettier@>=2: version "2.5.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.5.1.tgz#fff75fa9d519c54cf0fce328c1017d94546bc56a" + resolved "https://registry.npmjs.org/prettier/-/prettier-2.5.1.tgz#fff75fa9d519c54cf0fce328c1017d94546bc56a" integrity sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg== pretty-error@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-4.0.0.tgz#90a703f46dd7234adb46d0f84823e9d1cb8f10d6" + resolved "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz#90a703f46dd7234adb46d0f84823e9d1cb8f10d6" integrity sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw== dependencies: lodash "^4.17.20" @@ -8474,7 +8271,7 @@ pretty-error@^4.0.0: pretty-format@^27.0.0, pretty-format@^27.5.1: version "27.5.1" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" + resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== dependencies: ansi-regex "^5.0.1" @@ -8483,17 +8280,17 @@ pretty-format@^27.0.0, pretty-format@^27.5.1: process-nextick-args@~2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== promise-inflight@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + resolved "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= promise-retry@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" + resolved "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== dependencies: err-code "^2.0.2" @@ -8501,7 +8298,7 @@ promise-retry@^2.0.1: prompts@^2.0.1: version "2.4.2" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" + resolved "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== dependencies: kleur "^3.0.3" @@ -8509,14 +8306,14 @@ prompts@^2.0.1: promzard@^0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/promzard/-/promzard-0.3.0.tgz#26a5d6ee8c7dee4cb12208305acfb93ba382a9ee" + resolved "https://registry.npmjs.org/promzard/-/promzard-0.3.0.tgz#26a5d6ee8c7dee4cb12208305acfb93ba382a9ee" integrity sha1-JqXW7ox97kyxIggwWs+5O6OCqe4= dependencies: read "1" prop-types@^15.5.8, prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: version "15.8.1" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" + resolved "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== dependencies: loose-envify "^1.4.0" @@ -8525,49 +8322,49 @@ prop-types@^15.5.8, prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: property-expr@^2.0.4: version "2.0.5" - resolved "https://registry.yarnpkg.com/property-expr/-/property-expr-2.0.5.tgz#278bdb15308ae16af3e3b9640024524f4dc02cb4" + resolved "https://registry.npmjs.org/property-expr/-/property-expr-2.0.5.tgz#278bdb15308ae16af3e3b9640024524f4dc02cb4" integrity sha512-IJUkICM5dP5znhCckHSv30Q4b5/JA5enCtkRHYaOVOAocnH/1BQEYTC5NMfT3AVl/iXKdr3aqQbQn9DxyWknwA== proto-list@~1.2.1: version "1.2.4" - resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" + resolved "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= protocols@^1.1.0, protocols@^1.4.0: version "1.4.8" - resolved "https://registry.yarnpkg.com/protocols/-/protocols-1.4.8.tgz#48eea2d8f58d9644a4a32caae5d5db290a075ce8" + resolved "https://registry.npmjs.org/protocols/-/protocols-1.4.8.tgz#48eea2d8f58d9644a4a32caae5d5db290a075ce8" integrity sha512-IgjKyaUSjsROSO8/D49Ab7hP8mJgTYcqApOqdPhLoPxAplXmkp+zRvsrSQjFn5by0rhm4VH0GAUELIPpx7B1yg== psl@^1.1.28, psl@^1.1.33: version "1.8.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" + resolved "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== punycode@^2.1.0, punycode@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== q@^1.5.1: version "1.5.1" - resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" + resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= qs@^6.9.4: - version "6.10.1" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.1.tgz#4931482fa8d647a5aab799c5271d2133b981fb6a" - integrity sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg== + version "6.10.3" + resolved "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" + integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ== dependencies: side-channel "^1.0.4" qs@~6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== + version "6.5.3" + resolved "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" + integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== query-string@^6.13.8: version "6.14.1" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a" + resolved "https://registry.npmjs.org/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a" integrity sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw== dependencies: decode-uri-component "^0.2.0" @@ -8577,24 +8374,24 @@ query-string@^6.13.8: queue-microtask@^1.2.2: version "1.2.3" - resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== quick-lru@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" + resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== randombytes@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + resolved "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== dependencies: safe-buffer "^5.1.0" raw-loader@^4.0.2: version "4.0.2" - resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-4.0.2.tgz#1aac6b7d1ad1501e66efdac1522c73e59a584eb6" + resolved "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.2.tgz#1aac6b7d1ad1501e66efdac1522c73e59a584eb6" integrity sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA== dependencies: loader-utils "^2.0.0" @@ -8602,7 +8399,7 @@ raw-loader@^4.0.2: react-copy-to-clipboard@^5.0.4: version "5.0.4" - resolved "https://registry.yarnpkg.com/react-copy-to-clipboard/-/react-copy-to-clipboard-5.0.4.tgz#42ec519b03eb9413b118af92d1780c403a5f19bf" + resolved "https://registry.npmjs.org/react-copy-to-clipboard/-/react-copy-to-clipboard-5.0.4.tgz#42ec519b03eb9413b118af92d1780c403a5f19bf" integrity sha512-IeVAiNVKjSPeGax/Gmkqfa/+PuMTBhutEvFUaMQLwE2tS0EXrAdgOpWDX26bWTXF3HrioorR7lr08NqeYUWQCQ== dependencies: copy-to-clipboard "^3" @@ -8610,7 +8407,7 @@ react-copy-to-clipboard@^5.0.4: react-dom@17.0.2, react-dom@^17.0.2: version "17.0.2" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-17.0.2.tgz#ecffb6845e3ad8dbfcdc498f0d0a939736502c23" + resolved "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz#ecffb6845e3ad8dbfcdc498f0d0a939736502c23" integrity sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA== dependencies: loose-envify "^1.1.0" @@ -8619,7 +8416,7 @@ react-dom@17.0.2, react-dom@^17.0.2: react-dropzone@^12.0.0: version "12.0.4" - resolved "https://registry.yarnpkg.com/react-dropzone/-/react-dropzone-12.0.4.tgz#b88eeaa2c7118f7fd042404682b17a1d466f2fcf" + resolved "https://registry.npmjs.org/react-dropzone/-/react-dropzone-12.0.4.tgz#b88eeaa2c7118f7fd042404682b17a1d466f2fcf" integrity sha512-fcqHEYe1MzAghU6/Hz86lHDlBNsA+lO48nAcm7/wA+kIzwS6uuJbUG33tBZjksj7GAZ1iUQ6NHwjUURPmSGang== dependencies: attr-accept "^2.2.2" @@ -8628,29 +8425,29 @@ react-dropzone@^12.0.0: react-hook-form@^7.19.4: version "7.27.1" - resolved "https://registry.yarnpkg.com/react-hook-form/-/react-hook-form-7.27.1.tgz#fe5fbcb6bf58751f66d9569e998d671480cc57f6" + resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.27.1.tgz#fe5fbcb6bf58751f66d9569e998d671480cc57f6" integrity sha512-N3a7A6zIQ8DJeThisVZGtOUabTbJw+7DHJidmB9w8m3chckv2ZWKb5MHps9d2pPJqmCDoWe53Bos56bYmJms5w== react-is@^16.13.1, react-is@^16.7.0: version "16.13.1" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== react-is@^17.0.1, react-is@^17.0.2: version "17.0.2" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" + resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== react-promise-suspense@^0.3.3: version "0.3.3" - resolved "https://registry.yarnpkg.com/react-promise-suspense/-/react-promise-suspense-0.3.3.tgz#b085c7e0ac22b85fd3d605b1c4f181cda4310bc9" + resolved "https://registry.npmjs.org/react-promise-suspense/-/react-promise-suspense-0.3.3.tgz#b085c7e0ac22b85fd3d605b1c4f181cda4310bc9" integrity sha512-OdehKsCEWYoV6pMcwxbvJH99UrbXylmXJ1QpEL9OfHaUBzcAihyfSJV8jFq325M/wW9iKc/BoiLROXxMul+MxA== dependencies: fast-deep-equal "^2.0.1" react-router-dom@^6.0.1: version "6.2.2" - resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-6.2.2.tgz#f1a2c88365593c76b9612ae80154a13fcb72e442" + resolved "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.2.2.tgz#f1a2c88365593c76b9612ae80154a13fcb72e442" integrity sha512-AtYEsAST7bDD4dLSQHDnk/qxWLJdad5t1HFa1qJyUrCeGgEuCSw0VB/27ARbF9Fi/W5598ujvJOm3ujUCVzuYQ== dependencies: history "^5.2.0" @@ -8658,14 +8455,14 @@ react-router-dom@^6.0.1: react-router@6.2.2: version "6.2.2" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-6.2.2.tgz#495e683a0c04461eeb3d705fe445d6cf42f0c249" + resolved "https://registry.npmjs.org/react-router/-/react-router-6.2.2.tgz#495e683a0c04461eeb3d705fe445d6cf42f0c249" integrity sha512-/MbxyLzd7Q7amp4gDOGaYvXwhEojkJD5BtExkuKmj39VEE0m3l/zipf6h2WIB2jyAO0lI6NGETh4RDcktRm4AQ== dependencies: history "^5.2.0" react-transition-group@^4.4.2: version "4.4.2" - resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.4.2.tgz#8b59a56f09ced7b55cbd53c36768b922890d5470" + resolved "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.2.tgz#8b59a56f09ced7b55cbd53c36768b922890d5470" integrity sha512-/RNYfRAMlZwDSr6z4zNKV6xu53/e2BuaBbGhbyYIXTrmgu/bGHzmqOs7mJSJBHy9Ud+ApHx3QjrkKSp1pxvlFg== dependencies: "@babel/runtime" "^7.5.5" @@ -8675,7 +8472,7 @@ react-transition-group@^4.4.2: react@17.0.2, react@^17.0.2: version "17.0.2" - resolved "https://registry.yarnpkg.com/react/-/react-17.0.2.tgz#d0b5cc516d29eb3eee383f75b62864cfb6800037" + resolved "https://registry.npmjs.org/react/-/react-17.0.2.tgz#d0b5cc516d29eb3eee383f75b62864cfb6800037" integrity sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA== dependencies: loose-envify "^1.1.0" @@ -8683,12 +8480,12 @@ react@17.0.2, react@^17.0.2: read-cmd-shim@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-2.0.0.tgz#4a50a71d6f0965364938e9038476f7eede3928d9" + resolved "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-2.0.0.tgz#4a50a71d6f0965364938e9038476f7eede3928d9" integrity sha512-HJpV9bQpkl6KwjxlJcBoqu9Ba0PQg8TqSNIOrulGt54a0uup0HtevreFHzYzkm0lpnleRdNBzXznKrgxglEHQw== read-package-json-fast@^2.0.1: version "2.0.3" - resolved "https://registry.yarnpkg.com/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz#323ca529630da82cb34b36cc0b996693c98c2b83" + resolved "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz#323ca529630da82cb34b36cc0b996693c98c2b83" integrity sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ== dependencies: json-parse-even-better-errors "^2.3.0" @@ -8696,7 +8493,7 @@ read-package-json-fast@^2.0.1: read-package-json@^2.0.0: version "2.1.2" - resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-2.1.2.tgz#6992b2b66c7177259feb8eaac73c3acd28b9222a" + resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-2.1.2.tgz#6992b2b66c7177259feb8eaac73c3acd28b9222a" integrity sha512-D1KmuLQr6ZSJS0tW8hf3WGpRlwszJOXZ3E8Yd/DNRaM5d+1wVRZdHlpGBLAuovjr28LbWvjpWkBHMxpRGGjzNA== dependencies: glob "^7.1.1" @@ -8706,7 +8503,7 @@ read-package-json@^2.0.0: read-package-json@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-3.0.1.tgz#c7108f0b9390257b08c21e3004d2404c806744b9" + resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-3.0.1.tgz#c7108f0b9390257b08c21e3004d2404c806744b9" integrity sha512-aLcPqxovhJTVJcsnROuuzQvv6oziQx4zd3JvG0vGCL5MjTONUc4uJ90zCBC6R7W7oUKBNoR/F8pkyfVwlbxqng== dependencies: glob "^7.1.1" @@ -8715,9 +8512,9 @@ read-package-json@^3.0.0: npm-normalize-package-bin "^1.0.0" read-package-json@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-4.1.1.tgz#153be72fce801578c1c86b8ef2b21188df1b9eea" - integrity sha512-P82sbZJ3ldDrWCOSKxJT0r/CXMWR0OR3KRh55SgKo3p91GSIEEC32v3lSHAvO/UcH3/IoL7uqhOFBduAnwdldw== + version "4.1.2" + resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-4.1.2.tgz#b444d047de7c75d4a160cb056d00c0693c1df703" + integrity sha512-Dqer4pqzamDE2O4M55xp1qZMuLPqi4ldk2ya648FOMHRjwMzFhuxVrG04wd0c38IsvkVdr3vgHI6z+QTPdAjrQ== dependencies: glob "^7.1.1" json-parse-even-better-errors "^2.3.0" @@ -8726,7 +8523,7 @@ read-package-json@^4.1.1: read-package-tree@^5.3.1: version "5.3.1" - resolved "https://registry.yarnpkg.com/read-package-tree/-/read-package-tree-5.3.1.tgz#a32cb64c7f31eb8a6f31ef06f9cedf74068fe636" + resolved "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.3.1.tgz#a32cb64c7f31eb8a6f31ef06f9cedf74068fe636" integrity sha512-mLUDsD5JVtlZxjSlPPx1RETkNjjvQYuweKwNVt1Sn8kP5Jh44pvYuUHCp6xSVDZWbNxVxG5lyZJ921aJH61sTw== dependencies: read-package-json "^2.0.0" @@ -8735,7 +8532,7 @@ read-package-tree@^5.3.1: read-pkg-up@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" + resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" integrity sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc= dependencies: find-up "^2.0.0" @@ -8743,7 +8540,7 @@ read-pkg-up@^3.0.0: read-pkg-up@^7.0.1: version "7.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" + resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== dependencies: find-up "^4.1.0" @@ -8752,7 +8549,7 @@ read-pkg-up@^7.0.1: read-pkg@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" + resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= dependencies: load-json-file "^4.0.0" @@ -8761,7 +8558,7 @@ read-pkg@^3.0.0: read-pkg@^5.2.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" + resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== dependencies: "@types/normalize-package-data" "^2.4.0" @@ -8771,14 +8568,14 @@ read-pkg@^5.2.0: read@1, read@~1.0.1: version "1.0.7" - resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" + resolved "https://registry.npmjs.org/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" integrity sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ= dependencies: mute-stream "~0.0.4" readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2: version "3.6.0" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== dependencies: inherits "^2.0.3" @@ -8787,7 +8584,7 @@ readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2: readable-stream@^2.0.6, readable-stream@~2.3.6: version "2.3.7" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== dependencies: core-util-is "~1.0.0" @@ -8800,7 +8597,7 @@ readable-stream@^2.0.6, readable-stream@~2.3.6: readdir-scoped-modules@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309" + resolved "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309" integrity sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw== dependencies: debuglog "^1.0.1" @@ -8810,95 +8607,95 @@ readdir-scoped-modules@^1.0.0: readdirp@~3.6.0: version "3.6.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== dependencies: picomatch "^2.2.1" rechoir@^0.7.0: version "0.7.1" - resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.7.1.tgz#9478a96a1ca135b5e88fc027f03ee92d6c645686" + resolved "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz#9478a96a1ca135b5e88fc027f03ee92d6c645686" integrity sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg== dependencies: resolve "^1.9.0" redent@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f" + resolved "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f" integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg== dependencies: indent-string "^4.0.0" strip-indent "^3.0.0" -regenerate-unicode-properties@^9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-9.0.0.tgz#54d09c7115e1f53dc2314a974b32c1c344efe326" - integrity sha512-3E12UeNSPfjrgwjkR81m5J7Aw/T55Tu7nUyZVQYCKEOs+2dkxEY+DpPtZzO4YruuiPb7NkYLVcyJC4+zCbk5pA== +regenerate-unicode-properties@^10.0.1: + version "10.0.1" + resolved "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz#7f442732aa7934a3740c779bb9b3340dccc1fb56" + integrity sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw== dependencies: regenerate "^1.4.2" regenerate@^1.4.2: version "1.4.2" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" + resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== regenerator-runtime@^0.13.4: version "0.13.9" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52" + resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52" integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA== regenerator-transform@^0.14.2: version "0.14.5" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.5.tgz#c98da154683671c9c4dcb16ece736517e1b7feb4" + resolved "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz#c98da154683671c9c4dcb16ece736517e1b7feb4" integrity sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw== dependencies: "@babel/runtime" "^7.8.4" regexp.prototype.flags@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz#7ef352ae8d159e758c0eadca6f8fcb4eef07be26" - integrity sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA== + version "1.4.1" + resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.1.tgz#b3f4c0059af9e47eca9f3f660e51d81307e72307" + integrity sha512-pMR7hBVUUGI7PMA37m2ofIdQCsomVnas+Jn5UPGAHQ+/LlwKm/aTLJHdasmHRzlfeZwHiAOaRSo2rbBDm3nNUQ== dependencies: call-bind "^1.0.2" define-properties "^1.1.3" regexpp@^3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + resolved "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== -regexpu-core@^4.7.1: - version "4.8.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.8.0.tgz#e5605ba361b67b1718478501327502f4479a98f0" - integrity sha512-1F6bYsoYiz6is+oz70NWur2Vlh9KWtswuRuzJOfeYUrfPX2o8n74AnUVaOGDbUqVGO9fNHu48/pjJO4sNVwsOg== +regexpu-core@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.0.1.tgz#c531122a7840de743dcf9c83e923b5560323ced3" + integrity sha512-CriEZlrKK9VJw/xQGJpQM5rY88BtuL8DM+AEwvcThHilbxiTAy8vq4iJnd2tqq8wLmjbGZzP7ZcKFjbGkmEFrw== dependencies: regenerate "^1.4.2" - regenerate-unicode-properties "^9.0.0" - regjsgen "^0.5.2" - regjsparser "^0.7.0" + regenerate-unicode-properties "^10.0.1" + regjsgen "^0.6.0" + regjsparser "^0.8.2" unicode-match-property-ecmascript "^2.0.0" unicode-match-property-value-ecmascript "^2.0.0" -regjsgen@^0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.2.tgz#92ff295fb1deecbf6ecdab2543d207e91aa33733" - integrity sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A== +regjsgen@^0.6.0: + version "0.6.0" + resolved "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz#83414c5354afd7d6627b16af5f10f41c4e71808d" + integrity sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA== -regjsparser@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.7.0.tgz#a6b667b54c885e18b52554cb4960ef71187e9968" - integrity sha512-A4pcaORqmNMDVwUjWoTzuhwMGpP+NykpfqAsEgI1FSH/EzC7lrN5TMd+kN8YCovX+jMpu8eaqXgXPCa0g8FQNQ== +regjsparser@^0.8.2: + version "0.8.4" + resolved "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz#8a14285ffcc5de78c5b95d62bbf413b6bc132d5f" + integrity sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA== dependencies: jsesc "~0.5.0" relateurl@^0.2.7: version "0.2.7" - resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" + resolved "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= renderkid@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-3.0.0.tgz#5fd823e4d6951d37358ecc9a58b1f06836b6268a" + resolved "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz#5fd823e4d6951d37358ecc9a58b1f06836b6268a" integrity sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg== dependencies: css-select "^4.1.3" @@ -8909,7 +8706,7 @@ renderkid@^3.0.0: request@^2.88.0, request@^2.88.2: version "2.88.2" - resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" + resolved "https://registry.npmjs.org/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== dependencies: aws-sign2 "~0.7.0" @@ -8935,57 +8732,58 @@ request@^2.88.0, request@^2.88.2: require-directory@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= require-from-string@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== require-relative@^0.8.7: version "0.8.7" - resolved "https://registry.yarnpkg.com/require-relative/-/require-relative-0.8.7.tgz#7999539fc9e047a37928fa196f8e1563dabd36de" + resolved "https://registry.npmjs.org/require-relative/-/require-relative-0.8.7.tgz#7999539fc9e047a37928fa196f8e1563dabd36de" integrity sha1-eZlTn8ngR6N5KPoZb44VY9q9Nt4= resolve-cwd@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" + resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== dependencies: resolve-from "^5.0.0" resolve-from@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" integrity sha1-six699nWiBvItuZTM17rywoYh0g= resolve-from@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== resolve-from@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== resolve.exports@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" + resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== resolve@^1.10.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.8.1, resolve@^1.9.0: - version "1.20.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" - integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== + version "1.22.0" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" + integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== dependencies: - is-core-module "^2.2.0" - path-parse "^1.0.6" + is-core-module "^2.8.1" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" resolve@^2.0.0-next.3: version "2.0.0-next.3" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.3.tgz#d41016293d4a8586a39ca5d9b5f15cbea1f55e46" + resolved "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.3.tgz#d41016293d4a8586a39ca5d9b5f15cbea1f55e46" integrity sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q== dependencies: is-core-module "^2.2.0" @@ -8993,7 +8791,7 @@ resolve@^2.0.0-next.3: restore-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" + resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== dependencies: onetime "^5.1.0" @@ -9001,31 +8799,31 @@ restore-cursor@^3.1.0: retry@^0.12.0: version "0.12.0" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + resolved "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= reusify@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== rimraf@^2.5.2, rimraf@^2.6.3: version "2.7.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" + resolved "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== dependencies: glob "^7.1.3" rimraf@^3.0.0, rimraf@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== dependencies: glob "^7.1.3" rollup-plugin-svelte-svg@^1.0.0-beta.5: version "1.0.0-beta.6" - resolved "https://registry.yarnpkg.com/rollup-plugin-svelte-svg/-/rollup-plugin-svelte-svg-1.0.0-beta.6.tgz#0ee3deae2329abb1c90f50b83598aaf0bb0559fc" + resolved "https://registry.npmjs.org/rollup-plugin-svelte-svg/-/rollup-plugin-svelte-svg-1.0.0-beta.6.tgz#0ee3deae2329abb1c90f50b83598aaf0bb0559fc" integrity sha512-6uJb9kuaqK6p+DvkgphhGN18wvUzdT6h7MQC2B8P1omi9omC9lQC54pwaot21h6z9ibhGPLG9a1XFLeDQth/kg== dependencies: rollup-pluginutils "^2.8.2" @@ -9033,7 +8831,7 @@ rollup-plugin-svelte-svg@^1.0.0-beta.5: rollup-plugin-svelte@^7.0.0: version "7.1.0" - resolved "https://registry.yarnpkg.com/rollup-plugin-svelte/-/rollup-plugin-svelte-7.1.0.tgz#d45f2b92b1014be4eb46b55aa033fb9a9c65f04d" + resolved "https://registry.npmjs.org/rollup-plugin-svelte/-/rollup-plugin-svelte-7.1.0.tgz#d45f2b92b1014be4eb46b55aa033fb9a9c65f04d" integrity sha512-vopCUq3G+25sKjwF5VilIbiY6KCuMNHP1PFvx2Vr3REBNMDllKHFZN2B9jwwC+MqNc3UPKkjXnceLPEjTjXGXg== dependencies: require-relative "^0.8.7" @@ -9041,7 +8839,7 @@ rollup-plugin-svelte@^7.0.0: rollup-plugin-terser@^7.0.0: version "7.0.2" - resolved "https://registry.yarnpkg.com/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz#e8fbba4869981b2dc35ae7e8a502d5c6c04d324d" + resolved "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz#e8fbba4869981b2dc35ae7e8a502d5c6c04d324d" integrity sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ== dependencies: "@babel/code-frame" "^7.10.4" @@ -9051,69 +8849,69 @@ rollup-plugin-terser@^7.0.0: rollup-pluginutils@^2.8.2: version "2.8.2" - resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz#72f2af0748b592364dbd3389e600e5a9444a351e" + resolved "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz#72f2af0748b592364dbd3389e600e5a9444a351e" integrity sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ== dependencies: estree-walker "^0.6.1" rollup@^2.3.4: version "2.70.0" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.70.0.tgz#17a92e5938e92a251b962352e904c9f558230ec7" + resolved "https://registry.npmjs.org/rollup/-/rollup-2.70.0.tgz#17a92e5938e92a251b962352e904c9f558230ec7" integrity sha512-iEzYw+syFxQ0X9RefVwhr8BA2TNJsTaX8L8dhyeyMECDbmiba+8UQzcu+xZdji0+JQ+s7kouQnw+9Oz5M19XKA== optionalDependencies: fsevents "~2.3.2" run-async@^2.4.0: version "2.4.1" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" + resolved "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== run-parallel@^1.1.9: version "1.2.0" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== dependencies: queue-microtask "^1.2.2" "rxjs@^6.5.4 || ^7.1.0": - version "7.4.0" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.4.0.tgz#a12a44d7eebf016f5ff2441b87f28c9a51cebc68" - integrity sha512-7SQDi7xeTMCJpqViXh8gL/lebcwlp3d831F05+9B44A4B0WfsEwUQHR64gsH1kvJ+Ep/J9K2+n1hVl1CsGN23w== + version "7.5.5" + resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz#2ebad89af0f560f460ad5cc4213219e1f7dd4e9f" + integrity sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw== dependencies: - tslib "~2.1.0" + tslib "^2.1.0" rxjs@^6.6.0: version "6.6.7" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" + resolved "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== dependencies: tslib "^1.9.0" sade@^1.7.4: - version "1.7.4" - resolved "https://registry.yarnpkg.com/sade/-/sade-1.7.4.tgz#ea681e0c65d248d2095c90578c03ca0bb1b54691" - integrity sha512-y5yauMD93rX840MwUJr7C1ysLFBgMspsdTo4UVrDg3fXDvtwOyIqykhVAAm6fk/3au77773itJStObgK+LKaiA== + version "1.8.1" + resolved "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz#0a78e81d658d394887be57d2a409bf703a3b2701" + integrity sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A== dependencies: mri "^1.1.0" safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: version "5.2.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== sander@^0.5.0: version "0.5.1" - resolved "https://registry.yarnpkg.com/sander/-/sander-0.5.1.tgz#741e245e231f07cafb6fdf0f133adfa216a502ad" + resolved "https://registry.npmjs.org/sander/-/sander-0.5.1.tgz#741e245e231f07cafb6fdf0f133adfa216a502ad" integrity sha1-dB4kXiMfB8r7b98PEzrfohalAq0= dependencies: es6-promise "^3.1.2" @@ -9123,14 +8921,14 @@ sander@^0.5.0: saxes@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" + resolved "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== dependencies: xmlchars "^2.2.0" scheduler@^0.20.2: version "0.20.2" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.20.2.tgz#4baee39436e34aa93b4874bddcbf0fe8b8b50e91" + resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz#4baee39436e34aa93b4874bddcbf0fe8b8b50e91" integrity sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ== dependencies: loose-envify "^1.1.0" @@ -9138,7 +8936,7 @@ scheduler@^0.20.2: schema-utils@^3.0.0, schema-utils@^3.1.0, schema-utils@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.1.1.tgz#bc74c4b6b6995c1d88f76a8b77bea7219e0c8281" + resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz#bc74c4b6b6995c1d88f76a8b77bea7219e0c8281" integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw== dependencies: "@types/json-schema" "^7.0.8" @@ -9147,7 +8945,7 @@ schema-utils@^3.0.0, schema-utils@^3.1.0, schema-utils@^3.1.1: schema-utils@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.0.0.tgz#60331e9e3ae78ec5d16353c467c34b3a0a1d3df7" + resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz#60331e9e3ae78ec5d16353c467c34b3a0a1d3df7" integrity sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg== dependencies: "@types/json-schema" "^7.0.9" @@ -9157,77 +8955,77 @@ schema-utils@^4.0.0: scrypt-js@3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" + resolved "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== "semver@2 || 3 || 4 || 5", semver@^5.6.0, semver@^5.7.1: version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== semver@7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" + resolved "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== semver@7.x, semver@^7.1.1, semver@^7.1.3, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: version "7.3.5" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" + resolved "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== dependencies: lru-cache "^6.0.0" semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: version "6.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== serialize-javascript@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" + resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" integrity sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw== dependencies: randombytes "^2.1.0" serialize-javascript@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" + resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== dependencies: randombytes "^2.1.0" set-blocking@~2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + resolved "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= shallow-clone@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" + resolved "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== dependencies: kind-of "^6.0.2" shallowequal@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" + resolved "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== shebang-command@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: shebang-regex "^3.0.0" shebang-regex@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== side-channel@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== dependencies: call-bind "^1.0.0" @@ -9235,38 +9033,38 @@ side-channel@^1.0.4: object-inspect "^1.9.0" signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: - version "3.0.6" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.6.tgz#24e630c4b0f03fea446a2bd299e62b4a6ca8d0af" - integrity sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ== + version "3.0.7" + resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== sisteransi@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + resolved "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== slash@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== slash@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-4.0.0.tgz#2422372176c4c6c5addb5e2ada885af984b396a7" + resolved "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz#2422372176c4c6c5addb5e2ada885af984b396a7" integrity sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew== slide@^1.1.6: version "1.1.6" - resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" + resolved "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" integrity sha1-VusCfWW00tzmyy4tMsTUr8nh1wc= -smart-buffer@^4.1.0: +smart-buffer@^4.2.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" + resolved "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== socks-proxy-agent@^5.0.0: version "5.0.1" - resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-5.0.1.tgz#032fb583048a29ebffec2e6a73fca0761f48177e" + resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.1.tgz#032fb583048a29ebffec2e6a73fca0761f48177e" integrity sha512-vZdmnjb9a2Tz6WEQVIurybSwElwPxMZaIc7PzqbJTrezcKNznv6giT7J7tZDZ1BojVaa1jvO/UiUdhDVB0ACoQ== dependencies: agent-base "^6.0.2" @@ -9275,7 +9073,7 @@ socks-proxy-agent@^5.0.0: socks-proxy-agent@^6.0.0: version "6.1.1" - resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-6.1.1.tgz#e664e8f1aaf4e1fb3df945f09e3d94f911137f87" + resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.1.1.tgz#e664e8f1aaf4e1fb3df945f09e3d94f911137f87" integrity sha512-t8J0kG3csjA4g6FTbsMOWws+7R7vuRC8aQ/wy3/1OWmsgwA68zs/+cExQ0koSitUDXqhufF/YJr9wtNMZHw5Ew== dependencies: agent-base "^6.0.2" @@ -9283,16 +9081,16 @@ socks-proxy-agent@^6.0.0: socks "^2.6.1" socks@^2.3.3, socks@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/socks/-/socks-2.6.1.tgz#989e6534a07cf337deb1b1c94aaa44296520d30e" - integrity sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA== + version "2.6.2" + resolved "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz#ec042d7960073d40d94268ff3bb727dc685f111a" + integrity sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA== dependencies: ip "^1.1.5" - smart-buffer "^4.1.0" + smart-buffer "^4.2.0" sorcery@^0.10.0: version "0.10.0" - resolved "https://registry.yarnpkg.com/sorcery/-/sorcery-0.10.0.tgz#8ae90ad7d7cb05fc59f1ab0c637845d5c15a52b7" + resolved "https://registry.npmjs.org/sorcery/-/sorcery-0.10.0.tgz#8ae90ad7d7cb05fc59f1ab0c637845d5c15a52b7" integrity sha1-iukK19fLBfxZ8asMY3hF1cFaUrc= dependencies: buffer-crc32 "^0.2.5" @@ -9302,26 +9100,26 @@ sorcery@^0.10.0: sort-keys@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" + resolved "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" integrity sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg= dependencies: is-plain-obj "^1.0.0" sort-keys@^4.0.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-4.2.0.tgz#6b7638cee42c506fff8c1cecde7376d21315be18" + resolved "https://registry.npmjs.org/sort-keys/-/sort-keys-4.2.0.tgz#6b7638cee42c506fff8c1cecde7376d21315be18" integrity sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg== dependencies: is-plain-obj "^2.0.0" source-map-js@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" + resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== source-map-support@^0.5.6, source-map-support@~0.5.20: version "0.5.21" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== dependencies: buffer-from "^1.0.0" @@ -9329,27 +9127,27 @@ source-map-support@^0.5.6, source-map-support@~0.5.20: source-map@^0.5.0: version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== source-map@^0.7.3, source-map@~0.7.2: version "0.7.3" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== -sourcemap-codec@^1.3.0, sourcemap-codec@^1.4.4: +sourcemap-codec@^1.3.0, sourcemap-codec@^1.4.8: version "1.4.8" - resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" + resolved "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== spdx-correct@^3.0.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" + resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== dependencies: spdx-expression-parse "^3.0.0" @@ -9357,12 +9155,12 @@ spdx-correct@^3.0.0: spdx-exceptions@^2.1.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== spdx-expression-parse@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== dependencies: spdx-exceptions "^2.1.0" @@ -9370,37 +9168,37 @@ spdx-expression-parse@^3.0.0: spdx-license-ids@^3.0.0: version "3.0.11" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz#50c0d8c40a14ec1bf449bae69a0ea4685a9d9f95" + resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz#50c0d8c40a14ec1bf449bae69a0ea4685a9d9f95" integrity sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g== split-on-first@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f" + resolved "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f" integrity sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw== split2@^3.0.0: version "3.2.2" - resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f" + resolved "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f" integrity sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg== dependencies: readable-stream "^3.0.0" split@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" + resolved "https://registry.npmjs.org/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" integrity sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg== dependencies: through "2" sprintf-js@~1.0.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= sshpk@^1.7.0: - version "1.16.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" - integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== + version "1.17.0" + resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5" + integrity sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ== dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" @@ -9414,27 +9212,27 @@ sshpk@^1.7.0: ssri@^8.0.0, ssri@^8.0.1: version "8.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" + resolved "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== dependencies: minipass "^3.1.1" stable@^0.1.8: version "0.1.8" - resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" + resolved "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== stack-utils@^2.0.3: version "2.0.5" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.5.tgz#d25265fca995154659dbbfba3b49254778d2fdd5" + resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz#d25265fca995154659dbbfba3b49254778d2fdd5" integrity sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA== dependencies: escape-string-regexp "^2.0.0" -starknet@3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/starknet/-/starknet-3.4.0.tgz#847c409d36338da9439b66ae6808ac5381ead217" - integrity sha512-M/BpD5DrZd6tIY7K6Cd2JTaGUMdqIhlMCjiol8MGCYQqEypgEruacjYEmGfXGqCPD0vGTjypLk85enzLzGg2qA== +starknet@^3.5.0: + version "3.5.0" + resolved "https://registry.npmjs.org/starknet/-/starknet-3.5.0.tgz#3315e666feebc2e0edfa2ffbc5d36d895384d107" + integrity sha512-FCXbL3N0e+lbm5AkdP6WEJm2xaWlRMDHGfxi8YW+hTsklIBmC1owsg7HQqxKWKZR3igusLM61vwLLkg5E/0ccw== dependencies: axios "^0.23.0" bn.js "^5.2.0" @@ -9449,12 +9247,12 @@ starknet@3.4.0: strict-uri-encode@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546" + resolved "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546" integrity sha1-ucczDHBChi9rFC3CdLvMWGbONUY= string-length@^4.0.1: version "4.0.2" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== dependencies: char-regex "^1.0.2" @@ -9462,7 +9260,7 @@ string-length@^4.0.1: string-width@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + resolved "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= dependencies: code-point-at "^1.0.0" @@ -9471,7 +9269,7 @@ string-width@^1.0.1: "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0: version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== dependencies: emoji-regex "^8.0.0" @@ -9480,7 +9278,7 @@ string-width@^1.0.1: string.prototype.matchall@^4.0.6: version "4.0.6" - resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz#5abb5dabc94c7b0ea2380f65ba610b3a544b15fa" + resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz#5abb5dabc94c7b0ea2380f65ba610b3a544b15fa" integrity sha512-6WgDX8HmQqvEd7J+G6VtAahhsQIssiZ8zl7zKh1VDMFyL3hRTJP4FTNA3RbIp2TOQ9AYNDcc7e3fH0Qbup+DBg== dependencies: call-bind "^1.0.2" @@ -9494,7 +9292,7 @@ string.prototype.matchall@^4.0.6: string.prototype.trimend@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" + resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== dependencies: call-bind "^1.0.2" @@ -9502,7 +9300,7 @@ string.prototype.trimend@^1.0.4: string.prototype.trimstart@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" + resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== dependencies: call-bind "^1.0.2" @@ -9510,62 +9308,62 @@ string.prototype.trimstart@^1.0.4: string_decoder@^1.1.1: version "1.3.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== dependencies: safe-buffer "~5.2.0" string_decoder@~1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== dependencies: safe-buffer "~5.1.0" strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= dependencies: ansi-regex "^2.0.0" strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" strip-bom@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= strip-bom@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== strip-final-newline@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== strip-indent@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" + resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== dependencies: min-indent "^1.0.0" strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== strong-log-transformer@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz#0f5ed78d325e0421ac6f90f7f10e691d6ae3ae10" + resolved "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz#0f5ed78d325e0421ac6f90f7f10e691d6ae3ae10" integrity sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA== dependencies: duplexer "^0.1.1" @@ -9574,7 +9372,7 @@ strong-log-transformer@^2.1.0: styled-components@^5.3.3: version "5.3.3" - resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-5.3.3.tgz#312a3d9a549f4708f0fb0edc829eb34bde032743" + resolved "https://registry.npmjs.org/styled-components/-/styled-components-5.3.3.tgz#312a3d9a549f4708f0fb0edc829eb34bde032743" integrity sha512-++4iHwBM7ZN+x6DtPPWkCI4vdtwumQ+inA/DdAsqYd4SVgUKJie5vXyzotA00ttcFdQkCng7zc6grwlfIfw+lw== dependencies: "@babel/helper-module-imports" "^7.0.0" @@ -9590,56 +9388,61 @@ styled-components@^5.3.3: styled-jsx@5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.0.0.tgz#816b4b92e07b1786c6b7111821750e0ba4d26e77" + resolved "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.0.0.tgz#816b4b92e07b1786c6b7111821750e0ba4d26e77" integrity sha512-qUqsWoBquEdERe10EW8vLp3jT25s/ssG1/qX5gZ4wu15OZpmSMFI2v+fWlRhLfykA5rFtlJ1ME8A8pm/peV4WA== styled-normalize@^8.0.7: version "8.0.7" - resolved "https://registry.yarnpkg.com/styled-normalize/-/styled-normalize-8.0.7.tgz#e883bff6a0c59a65a39365a4eb9c6cf48372c61f" + resolved "https://registry.npmjs.org/styled-normalize/-/styled-normalize-8.0.7.tgz#e883bff6a0c59a65a39365a4eb9c6cf48372c61f" integrity sha512-qQV4O7B9g7ZUnStCwGde7Dc/mcFF/pz0Ha/LL7+j/r6uopf6kJCmmR7jCPQMCBrDkYiQ4xvw1hUoceVJkdaMuQ== stylis@4.0.13: version "4.0.13" - resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.0.13.tgz#f5db332e376d13cc84ecfe5dace9a2a51d954c91" + resolved "https://registry.npmjs.org/stylis/-/stylis-4.0.13.tgz#f5db332e376d13cc84ecfe5dace9a2a51d954c91" integrity sha512-xGPXiFVl4YED9Jh7Euv2V220mriG9u4B2TA6Ybjc1catrstKD2PpIdU3U0RKpkVBC2EhmL/F0sPCr9vrFTNRag== superstruct@^0.15.3: - version "0.15.3" - resolved "https://registry.yarnpkg.com/superstruct/-/superstruct-0.15.3.tgz#07edfc715259ebfe3b4b2e4cb53e8e45b51674a4" - integrity sha512-wilec1Rg3FtKuRjRyCt70g5W29YUEuaLnybdVQUI+VQ7m0bw8k7TzrRv5iYmo6IpjLVrwxP5t3RgjAVqhYh4Fg== + version "0.15.4" + resolved "https://registry.npmjs.org/superstruct/-/superstruct-0.15.4.tgz#e3381dd84ca07e704e19f69eda74eee1a5efb1f9" + integrity sha512-eOoMeSbP9ZJChNOm/9RYjE+F36rYR966AAqeG3xhQB02j2sfAUXDp4EQ/7bAOqnlJnuFDB8yvOu50SocvKpUEw== supports-color@^5.3.0, supports-color@^5.5.0: version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: has-flag "^3.0.0" supports-color@^7.0.0, supports-color@^7.1.0: version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: has-flag "^4.0.0" supports-color@^8.0.0: version "8.1.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== dependencies: has-flag "^4.0.0" supports-hyperlinks@^2.0.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb" + resolved "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb" integrity sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ== dependencies: has-flag "^4.0.0" supports-color "^7.0.0" +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + svelte-check@^2.0.0: version "2.4.5" - resolved "https://registry.yarnpkg.com/svelte-check/-/svelte-check-2.4.5.tgz#a2001993034d495118980bd95577fb3e7980661a" + resolved "https://registry.npmjs.org/svelte-check/-/svelte-check-2.4.5.tgz#a2001993034d495118980bd95577fb3e7980661a" integrity sha512-nRft8BbG2wcxyCdHDZ7X43xLcvDzua3xLwq6wzHGcAF3ka3Jyhv2rvgq0+SF9NwHLMefp9C2XkM6etzsxK/cMQ== dependencies: chokidar "^3.4.1" @@ -9654,7 +9457,7 @@ svelte-check@^2.0.0: svelte-preprocess@^4.0.0: version "4.10.4" - resolved "https://registry.yarnpkg.com/svelte-preprocess/-/svelte-preprocess-4.10.4.tgz#308a410266bfc55b4e608da8d552b63580141260" + resolved "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-4.10.4.tgz#308a410266bfc55b4e608da8d552b63580141260" integrity sha512-fuwol0N4UoHsNQolLFbMqWivqcJ9N0vfWO9IuPAiX/5okfoGXURyJ6nECbuEIv0nU3M8Xe2I1ONNje2buk7l6A== dependencies: "@types/pug" "^2.0.4" @@ -9666,17 +9469,17 @@ svelte-preprocess@^4.0.0: svelte@^3.0.0: version "3.46.4" - resolved "https://registry.yarnpkg.com/svelte/-/svelte-3.46.4.tgz#0c46bc4a3e20a2617a1b7dc43a722f9d6c084a38" + resolved "https://registry.npmjs.org/svelte/-/svelte-3.46.4.tgz#0c46bc4a3e20a2617a1b7dc43a722f9d6c084a38" integrity sha512-qKJzw6DpA33CIa+C/rGp4AUdSfii0DOTCzj/2YpSKKayw5WGSS624Et9L1nU1k2OVRS9vaENQXp2CVZNU+xvIg== svg-parser@^2.0.2: version "2.0.4" - resolved "https://registry.yarnpkg.com/svg-parser/-/svg-parser-2.0.4.tgz#fdc2e29e13951736140b76cb122c8ee6630eb6b5" + resolved "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz#fdc2e29e13951736140b76cb122c8ee6630eb6b5" integrity sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ== svgo@^2.3.1, svgo@^2.5.0: version "2.8.0" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-2.8.0.tgz#4ff80cce6710dc2795f0c7c74101e6764cfccd24" + resolved "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz#4ff80cce6710dc2795f0c7c74101e6764cfccd24" integrity sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg== dependencies: "@trysound/sax" "0.2.0" @@ -9689,22 +9492,22 @@ svgo@^2.3.1, svgo@^2.5.0: swr@^1.1.0: version "1.2.2" - resolved "https://registry.yarnpkg.com/swr/-/swr-1.2.2.tgz#6cae09928d30593a7980d80f85823e57468fac5d" + resolved "https://registry.npmjs.org/swr/-/swr-1.2.2.tgz#6cae09928d30593a7980d80f85823e57468fac5d" integrity sha512-ky0BskS/V47GpW8d6RU7CPsr6J8cr7mQD6+do5eky3bM0IyJaoi3vO8UhvrzJaObuTlGhPl2szodeB2dUd76Xw== symbol-tree@^3.2.4: version "3.2.4" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" + resolved "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0: version "2.2.1" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" + resolved "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== tar@^4.4.12: version "4.4.19" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3" + resolved "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3" integrity sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA== dependencies: chownr "^1.1.4" @@ -9717,7 +9520,7 @@ tar@^4.4.12: tar@^6.0.2, tar@^6.1.0: version "6.1.11" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621" + resolved "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621" integrity sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA== dependencies: chownr "^2.0.0" @@ -9729,12 +9532,12 @@ tar@^6.0.2, tar@^6.1.0: temp-dir@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" + resolved "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" integrity sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0= temp-write@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/temp-write/-/temp-write-4.0.0.tgz#cd2e0825fc826ae72d201dc26eef3bf7e6fc9320" + resolved "https://registry.npmjs.org/temp-write/-/temp-write-4.0.0.tgz#cd2e0825fc826ae72d201dc26eef3bf7e6fc9320" integrity sha512-HIeWmj77uOOHb0QX7siN3OtwV3CTntquin6TNVg6SHOqCP3hYKmox90eeFOGaY1MqJ9WYDDjkyZrW6qS5AWpbw== dependencies: graceful-fs "^4.1.15" @@ -9745,35 +9548,36 @@ temp-write@^4.0.0: terminal-link@^2.0.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" + resolved "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== dependencies: ansi-escapes "^4.2.1" supports-hyperlinks "^2.0.0" terser-webpack-plugin@^5.1.3: - version "5.2.5" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.2.5.tgz#ce65b9880a0c36872555c4874f45bbdb02ee32c9" - integrity sha512-3luOVHku5l0QBeYS8r4CdHYWEGMmIj3H1U64jgkdZzECcSOJAyJ9TjuqcQZvw1Y+4AOBN9SeYJPJmFn2cM4/2g== + version "5.3.1" + resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.1.tgz#0320dcc270ad5372c1e8993fabbd927929773e54" + integrity sha512-GvlZdT6wPQKbDNW/GDQzZFg/j4vKU96yl2q6mcUkzKOgW4gwf1Z8cZToUCrz31XHlPWH8MVb1r2tFtdDtTGJ7g== dependencies: - jest-worker "^27.0.6" + jest-worker "^27.4.5" schema-utils "^3.1.1" serialize-javascript "^6.0.0" source-map "^0.6.1" terser "^5.7.2" terser@^5.0.0, terser@^5.10.0, terser@^5.7.2: - version "5.10.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.10.0.tgz#b86390809c0389105eb0a0b62397563096ddafcc" - integrity sha512-AMmF99DMfEDiRJfxfY5jj5wNH/bYO09cniSqhfoyxc8sFoYIgkJy86G04UoZU5VjlpnplVu0K6Tx6E9b5+DlHA== + version "5.12.0" + resolved "https://registry.npmjs.org/terser/-/terser-5.12.0.tgz#728c6bff05f7d1dcb687d8eace0644802a9dae8a" + integrity sha512-R3AUhNBGWiFc77HXag+1fXpAxTAFRQTJemlJKjAgD9r8xXTpjNKqIXwHM/o7Rh+O0kUJtS3WQVdBeMKFk5sw9A== dependencies: + acorn "^8.5.0" commander "^2.20.0" source-map "~0.7.2" source-map-support "~0.5.20" test-exclude@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + resolved "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== dependencies: "@istanbuljs/schema" "^0.1.2" @@ -9782,22 +9586,22 @@ test-exclude@^6.0.0: text-extensions@^1.0.0: version "1.9.0" - resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26" + resolved "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26" integrity sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ== text-table@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= throat@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375" + resolved "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375" integrity sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w== through2@^2.0.0: version "2.0.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + resolved "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== dependencies: readable-stream "~2.3.6" @@ -9805,60 +9609,60 @@ through2@^2.0.0: through2@^4.0.0: version "4.0.2" - resolved "https://registry.yarnpkg.com/through2/-/through2-4.0.2.tgz#a7ce3ac2a7a8b0b966c80e7c49f0484c3b239764" + resolved "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz#a7ce3ac2a7a8b0b966c80e7c49f0484c3b239764" integrity sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw== dependencies: readable-stream "3" through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6: version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= tippy.js@^6.3.1: version "6.3.7" - resolved "https://registry.yarnpkg.com/tippy.js/-/tippy.js-6.3.7.tgz#8ccfb651d642010ed9a32ff29b0e9e19c5b8c61c" + resolved "https://registry.npmjs.org/tippy.js/-/tippy.js-6.3.7.tgz#8ccfb651d642010ed9a32ff29b0e9e19c5b8c61c" integrity sha512-E1d3oP2emgJ9dRQZdf3Kkn0qJgI6ZLpyS5z6ZkY1DF3kaQaBsGZsndEpHwx+eC+tYM41HaSNvNtLx8tU57FzTQ== dependencies: "@popperjs/core" "^2.9.0" tmp@^0.0.33: version "0.0.33" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + resolved "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== dependencies: os-tmpdir "~1.0.2" tmpl@1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" + resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== to-fast-properties@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= to-regex-range@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== dependencies: is-number "^7.0.0" toggle-selection@^1.0.6: version "1.0.6" - resolved "https://registry.yarnpkg.com/toggle-selection/-/toggle-selection-1.0.6.tgz#6e45b1263f2017fa0acc7d89d78b15b8bf77da32" + resolved "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz#6e45b1263f2017fa0acc7d89d78b15b8bf77da32" integrity sha1-bkWxJj8gF/oKzH2J14sVuL932jI= toposort@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/toposort/-/toposort-2.0.2.tgz#ae21768175d1559d48bef35420b2f4962f09c330" + resolved "https://registry.npmjs.org/toposort/-/toposort-2.0.2.tgz#ae21768175d1559d48bef35420b2f4962f09c330" integrity sha1-riF2gXXRVZ1IvvNUILL0li8JwzA= tough-cookie@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" + resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" integrity sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg== dependencies: psl "^1.1.33" @@ -9867,7 +9671,7 @@ tough-cookie@^4.0.0: tough-cookie@~2.5.0: version "2.5.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" + resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== dependencies: psl "^1.1.28" @@ -9875,24 +9679,24 @@ tough-cookie@~2.5.0: tr46@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" + resolved "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== dependencies: punycode "^2.1.1" tr46@~0.0.3: version "0.0.3" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= trim-newlines@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" + resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== ts-jest@^27.1.3: version "27.1.3" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.1.3.tgz#1f723e7e74027c4da92c0ffbd73287e8af2b2957" + resolved "https://registry.npmjs.org/ts-jest/-/ts-jest-27.1.3.tgz#1f723e7e74027c4da92c0ffbd73287e8af2b2957" integrity sha512-6Nlura7s6uM9BVUAoqLH7JHyMXjz8gluryjpPXxr3IxZdAXnU6FhjvVLHFtfd1vsE1p8zD1OJfskkc0jhTSnkA== dependencies: bs-logger "0.x" @@ -9905,19 +9709,19 @@ ts-jest@^27.1.3: yargs-parser "20.x" ts-loader@^9.2.6: - version "9.2.7" - resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-9.2.7.tgz#948654099ca96992b62ec47bd9cee5632006e101" - integrity sha512-Fxh44mKli9QezgbdCXkEJWxnedQ0ead7DXTH+lfXEPedu+Y9EtMJ2aQ9G3Dj1j7Q612E8931rww8NDZha4Tibg== + version "9.2.8" + resolved "https://registry.npmjs.org/ts-loader/-/ts-loader-9.2.8.tgz#e89aa32fa829c5cad0a1d023d6b3adecd51d5a48" + integrity sha512-gxSak7IHUuRtwKf3FIPSW1VpZcqF9+MBrHOvBp9cjHh+525SjtCIJKVGjRKIAfxBwDGDGCFF00rTfzB1quxdSw== dependencies: chalk "^4.1.0" enhanced-resolve "^5.0.0" micromatch "^4.0.0" semver "^7.3.4" -tsconfig-paths@^3.11.0, tsconfig-paths@^3.9.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.12.0.tgz#19769aca6ee8f6a1a341e38c8fa45dd9fb18899b" - integrity sha512-e5adrnOYT6zqVnWqZu7i/BQ3BnhzvGbjEjejFXO20lKIKpwTaupkCPgEfv4GZK1IBciJUEhYs3J3p75FdaTFVg== +tsconfig-paths@^3.12.0, tsconfig-paths@^3.9.0: + version "3.13.0" + resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.13.0.tgz#f3e9b8f6876698581d94470c03c95b3a48c0e3d7" + integrity sha512-nWuffZppoaYK0vQ1SQmkSsQzJoHA4s6uzdb2waRpD806x9yfq153AdVsWz4je2qZcW+pENrMQXbGQ3sMCkXuhw== dependencies: "@types/json5" "^0.0.29" json5 "^1.0.1" @@ -9926,132 +9730,122 @@ tsconfig-paths@^3.11.0, tsconfig-paths@^3.9.0: tslib@^1.8.1, tslib@^1.9.0: version "1.14.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.0, tslib@^2.0.3: +tslib@^2.0.0, tslib@^2.0.3, tslib@^2.1.0: version "2.3.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== -tslib@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.1.0.tgz#da60860f1c2ecaa5703ab7d39bc05b6bf988b97a" - integrity sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A== - tsutils@^3.21.0: version "3.21.0" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" + resolved "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== dependencies: tslib "^1.8.1" tunnel-agent@^0.6.0: version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= dependencies: safe-buffer "^5.0.1" tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== dependencies: prelude-ls "^1.2.1" type-check@~0.3.2: version "0.3.2" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" + resolved "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= dependencies: prelude-ls "~1.1.2" type-detect@4.0.8: version "4.0.8" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + resolved "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== type-fest@^0.18.0: version "0.18.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" integrity sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw== type-fest@^0.20.2: version "0.20.2" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== type-fest@^0.21.3: version "0.21.3" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== type-fest@^0.4.1: version "0.4.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.4.1.tgz#8bdf77743385d8a4f13ba95f610f5ccd68c728f8" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.4.1.tgz#8bdf77743385d8a4f13ba95f610f5ccd68c728f8" integrity sha512-IwzA/LSfD2vC1/YDYMv/zHP4rDF1usCwllsDpbolT3D4fUepIO7f9K70jjmUewU/LmGUKJcwcVtDCpnKk4BPMw== type-fest@^0.6.0: version "0.6.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== type-fest@^0.8.1: version "0.8.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== typedarray-to-buffer@^3.1.5: version "3.1.5" - resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" + resolved "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== dependencies: is-typedarray "^1.0.0" typedarray@^0.0.6: version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= -typescript@*, typescript@^4.0.0, typescript@^4.4.4: - version "4.5.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.5.tgz#d8c953832d28924a9e3d37c73d729c846c5896f3" - integrity sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA== - -typescript@4.6.2: +typescript@*, typescript@4.6.2, typescript@^4.0.0, typescript@^4.4.4: version "4.6.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.6.2.tgz#fe12d2727b708f4eef40f51598b3398baa9611d4" + resolved "https://registry.npmjs.org/typescript/-/typescript-4.6.2.tgz#fe12d2727b708f4eef40f51598b3398baa9611d4" integrity sha512-HM/hFigTBHZhLXshn9sN37H085+hQGeJHJ/X7LpBWLID/fbc2acUMfU+lGD98X81sKP+pFa9f0DZmCwB9GnbAg== typescript@^3.2.4: version "3.9.10" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.10.tgz#70f3910ac7a51ed6bef79da7800690b19bf778b8" + resolved "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz#70f3910ac7a51ed6bef79da7800690b19bf778b8" integrity sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q== uglify-js@^3.1.4: - version "3.14.3" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.14.3.tgz#c0f25dfea1e8e5323eccf59610be08b6043c15cf" - integrity sha512-mic3aOdiq01DuSVx0TseaEzMIVqebMZ0Z3vaeDhFEh9bsc24hV1TFvN74reA2vs08D0ZWfNjAcJ3UbVLaBss+g== + version "3.15.3" + resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.3.tgz#9aa82ca22419ba4c0137642ba0df800cb06e0471" + integrity sha512-6iCVm2omGJbsu3JWac+p6kUiOpg3wFO2f8lIXjfEb8RrmLjzog1wTPMmwKB7swfzzqxj9YM+sGUM++u1qN4qJg== uid-number@0.0.6: version "0.0.6" - resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" + resolved "https://registry.npmjs.org/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" integrity sha1-DqEOgDXo61uOREnwbaHHMGY7qoE= umask@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d" + resolved "https://registry.npmjs.org/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d" integrity sha1-8pzr8B31F5ErtY/5xOUP3o4zMg0= unbox-primitive@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" + resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== dependencies: function-bind "^1.1.1" @@ -10061,12 +9855,12 @@ unbox-primitive@^1.0.1: unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" + resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" integrity sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ== unicode-match-property-ecmascript@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3" + resolved "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3" integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q== dependencies: unicode-canonical-property-names-ecmascript "^2.0.0" @@ -10074,63 +9868,63 @@ unicode-match-property-ecmascript@^2.0.0: unicode-match-property-value-ecmascript@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz#1a01aa57247c14c568b89775a54938788189a714" + resolved "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz#1a01aa57247c14c568b89775a54938788189a714" integrity sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw== unicode-property-aliases-ecmascript@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz#0a36cb9a585c4f6abd51ad1deddb285c165297c8" + resolved "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz#0a36cb9a585c4f6abd51ad1deddb285c165297c8" integrity sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ== unique-filename@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" + resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== dependencies: unique-slug "^2.0.0" unique-slug@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" + resolved "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== dependencies: imurmurhash "^0.1.4" universal-user-agent@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" + resolved "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w== universalify@^0.1.2: version "0.1.2" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" + resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== universalify@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== upath@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/upath/-/upath-2.0.1.tgz#50c73dea68d6f6b990f51d279ce6081665d61a8b" + resolved "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz#50c73dea68d6f6b990f51d279ce6081665d61a8b" integrity sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w== uri-js@^4.2.2: version "4.4.1" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== dependencies: punycode "^2.1.0" url-join@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/url-join/-/url-join-4.0.1.tgz#b642e21a2646808ffa178c4c5fda39844e12cde7" + resolved "https://registry.npmjs.org/url-join/-/url-join-4.0.1.tgz#b642e21a2646808ffa178c4c5fda39844e12cde7" integrity sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA== url-loader@^4.1.1: version "4.1.1" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" + resolved "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== dependencies: loader-utils "^2.0.0" @@ -10139,41 +9933,41 @@ url-loader@^4.1.1: use-subscription@1.5.1: version "1.5.1" - resolved "https://registry.yarnpkg.com/use-subscription/-/use-subscription-1.5.1.tgz#73501107f02fad84c6dd57965beb0b75c68c42d1" + resolved "https://registry.npmjs.org/use-subscription/-/use-subscription-1.5.1.tgz#73501107f02fad84c6dd57965beb0b75c68c42d1" integrity sha512-Xv2a1P/yReAjAbhylMfFplFKj9GssgTwN7RlcTxBujFQcloStWNDQdc4g4NRWH9xS4i/FDk04vQBptAXoF3VcA== dependencies: object-assign "^4.1.1" util-deprecate@^1.0.1, util-deprecate@~1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= util-promisify@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/util-promisify/-/util-promisify-2.1.0.tgz#3c2236476c4d32c5ff3c47002add7c13b9a82a53" + resolved "https://registry.npmjs.org/util-promisify/-/util-promisify-2.1.0.tgz#3c2236476c4d32c5ff3c47002add7c13b9a82a53" integrity sha1-PCI2R2xNMsX/PEcAKt18E7moKlM= dependencies: object.getownpropertydescriptors "^2.0.3" utila@~0.4: version "0.4.0" - resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" + resolved "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= uuid@^3.3.2: version "3.4.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" + resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== v8-compile-cache@^2.0.3: version "2.3.0" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" + resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== v8-to-istanbul@^8.1.0: version "8.1.1" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz#77b752fd3975e31bbcef938f85e9bd1c7a8d60ed" + resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz#77b752fd3975e31bbcef938f85e9bd1c7a8d60ed" integrity sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w== dependencies: "@types/istanbul-lib-coverage" "^2.0.1" @@ -10182,7 +9976,7 @@ v8-to-istanbul@^8.1.0: validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== dependencies: spdx-correct "^3.0.0" @@ -10190,14 +9984,14 @@ validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: validate-npm-package-name@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz#5fa912d81eb7d0c74afc140de7317f0ca7df437e" + resolved "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz#5fa912d81eb7d0c74afc140de7317f0ca7df437e" integrity sha1-X6kS2B630MdK/BQN5zF/DKffQ34= dependencies: builtins "^1.0.3" verror@1.10.0: version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + resolved "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= dependencies: assert-plus "^1.0.0" @@ -10206,28 +10000,28 @@ verror@1.10.0: w3c-hr-time@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" + resolved "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== dependencies: browser-process-hrtime "^1.0.0" w3c-xmlserializer@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" + resolved "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== dependencies: xml-name-validator "^3.0.0" walker@^1.0.7: version "1.0.8" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + resolved "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== dependencies: makeerror "1.0.12" watchpack@^2.3.1: version "2.3.1" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.3.1.tgz#4200d9447b401156eeca7767ee610f8809bc9d25" + resolved "https://registry.npmjs.org/watchpack/-/watchpack-2.3.1.tgz#4200d9447b401156eeca7767ee610f8809bc9d25" integrity sha512-x0t0JuydIo8qCNctdDrn1OzH/qDzk2+rdCOC3YzumZ42fiMqmQ7T3xQurykYMhYfHaPHTp4ZxAx2NfUo1K6QaA== dependencies: glob-to-regexp "^0.4.1" @@ -10235,34 +10029,34 @@ watchpack@^2.3.1: wcwidth@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" + resolved "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g= dependencies: defaults "^1.0.3" webextension-polyfill@^0.8.0: version "0.8.0" - resolved "https://registry.yarnpkg.com/webextension-polyfill/-/webextension-polyfill-0.8.0.tgz#f80e9f4b7f81820c420abd6ffbebfa838c60e041" + resolved "https://registry.npmjs.org/webextension-polyfill/-/webextension-polyfill-0.8.0.tgz#f80e9f4b7f81820c420abd6ffbebfa838c60e041" integrity sha512-a19+DzlT6Kp9/UI+mF9XQopeZ+n2ussjhxHJ4/pmIGge9ijCDz7Gn93mNnjpZAk95T4Tae8iHZ6sSf869txqiQ== webidl-conversions@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= webidl-conversions@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" + resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== webidl-conversions@^6.1.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" + resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== webpack-cli@^4.9.1: version "4.9.2" - resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-4.9.2.tgz#77c1adaea020c3f9e2db8aad8ea78d235c83659d" + resolved "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.9.2.tgz#77c1adaea020c3f9e2db8aad8ea78d235c83659d" integrity sha512-m3/AACnBBzK/kMTcxWHcZFPrw/eQuY4Df1TxvIWfWM2x7mRqBQCqKEd96oCUa9jkapLBaFfRce33eGDb4Pr7YQ== dependencies: "@discoveryjs/json-ext" "^0.5.0" @@ -10280,7 +10074,7 @@ webpack-cli@^4.9.1: webpack-merge@^5.7.3: version "5.8.0" - resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-5.8.0.tgz#2b39dbf22af87776ad744c390223731d30a68f61" + resolved "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz#2b39dbf22af87776ad744c390223731d30a68f61" integrity sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q== dependencies: clone-deep "^4.0.1" @@ -10288,12 +10082,12 @@ webpack-merge@^5.7.3: webpack-sources@^3.2.3: version "3.2.3" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" + resolved "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== webpack@^5.62.1: version "5.70.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.70.0.tgz#3461e6287a72b5e6e2f4872700bc8de0d7500e6d" + resolved "https://registry.npmjs.org/webpack/-/webpack-5.70.0.tgz#3461e6287a72b5e6e2f4872700bc8de0d7500e6d" integrity sha512-ZMWWy8CeuTTjCxbeaQI21xSswseF2oNOwc70QSKNePvmxE7XW36i7vpBMYZFAUHPwQiEbNGCEYIOOlyRbdGmxw== dependencies: "@types/eslint-scope" "^3.7.3" @@ -10323,19 +10117,19 @@ webpack@^5.62.1: whatwg-encoding@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" + resolved "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== dependencies: iconv-lite "0.4.24" whatwg-mimetype@^2.3.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" + resolved "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== whatwg-url@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= dependencies: tr46 "~0.0.3" @@ -10343,7 +10137,7 @@ whatwg-url@^5.0.0: whatwg-url@^8.0.0, whatwg-url@^8.4.0, whatwg-url@^8.5.0: version "8.7.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" + resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== dependencies: lodash "^4.7.0" @@ -10352,7 +10146,7 @@ whatwg-url@^8.0.0, whatwg-url@^8.4.0, whatwg-url@^8.5.0: which-boxed-primitive@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" + resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== dependencies: is-bigint "^1.0.1" @@ -10363,43 +10157,43 @@ which-boxed-primitive@^1.0.2: which@^1.3.1: version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== dependencies: isexe "^2.0.0" which@^2.0.1, which@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" wide-align@^1.1.0: version "1.1.5" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" + resolved "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== dependencies: string-width "^1.0.2 || 2 || 3 || 4" wildcard@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec" + resolved "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec" integrity sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw== word-wrap@^1.2.3, word-wrap@~1.2.3: version "1.2.3" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== wordwrap@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" + resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= wrap-ansi@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== dependencies: ansi-styles "^4.0.0" @@ -10408,12 +10202,12 @@ wrap-ansi@^7.0.0: wrappy@1: version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= write-file-atomic@^2.4.2: version "2.4.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" + resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== dependencies: graceful-fs "^4.1.11" @@ -10422,7 +10216,7 @@ write-file-atomic@^2.4.2: write-file-atomic@^3.0.0, write-file-atomic@^3.0.3: version "3.0.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" + resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== dependencies: imurmurhash "^0.1.4" @@ -10432,7 +10226,7 @@ write-file-atomic@^3.0.0, write-file-atomic@^3.0.3: write-json-file@^3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-3.2.0.tgz#65bbdc9ecd8a1458e15952770ccbadfcff5fe62a" + resolved "https://registry.npmjs.org/write-json-file/-/write-json-file-3.2.0.tgz#65bbdc9ecd8a1458e15952770ccbadfcff5fe62a" integrity sha512-3xZqT7Byc2uORAatYiP3DHUUAVEkNOswEWNs9H5KXiicRTvzYzYqKjYc4G7p+8pltvAw641lVByKVtMpf+4sYQ== dependencies: detect-indent "^5.0.0" @@ -10444,7 +10238,7 @@ write-json-file@^3.2.0: write-json-file@^4.3.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-4.3.0.tgz#908493d6fd23225344af324016e4ca8f702dd12d" + resolved "https://registry.npmjs.org/write-json-file/-/write-json-file-4.3.0.tgz#908493d6fd23225344af324016e4ca8f702dd12d" integrity sha512-PxiShnxf0IlnQuMYOPPhPkhExoCQuTUNPOa/2JWCYTmBquU9njyyDuwRKN26IZBlp4yn1nt+Agh2HOOBl+55HQ== dependencies: detect-indent "^6.0.0" @@ -10456,7 +10250,7 @@ write-json-file@^4.3.0: write-pkg@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/write-pkg/-/write-pkg-4.0.0.tgz#675cc04ef6c11faacbbc7771b24c0abbf2a20039" + resolved "https://registry.npmjs.org/write-pkg/-/write-pkg-4.0.0.tgz#675cc04ef6c11faacbbc7771b24c0abbf2a20039" integrity sha512-v2UQ+50TNf2rNHJ8NyWttfm/EJUBWMJcx6ZTYZr6Qp52uuegWw/lBkCtCbnYZEmPRNL61m+u67dAmGxo+HTULA== dependencies: sort-keys "^2.0.0" @@ -10465,62 +10259,62 @@ write-pkg@^4.0.0: ws@7.4.6: version "7.4.6" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + resolved "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== ws@^7.4.6: version "7.5.7" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67" + resolved "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67" integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A== xml-name-validator@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" + resolved "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== xmlchars@^2.2.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" + resolved "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== xtend@~4.0.1: version "4.0.2" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== y18n@^5.0.5: version "5.0.8" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== yallist@^3.0.0, yallist@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== yallist@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== yaml@^1.10.0: version "1.10.2" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== yargs-parser@20.2.4: version "20.2.4" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== yargs-parser@20.x, yargs-parser@^20.2.2, yargs-parser@^20.2.3: version "20.2.9" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== yargs@^16.2.0: version "16.2.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== dependencies: cliui "^7.0.2" @@ -10533,7 +10327,7 @@ yargs@^16.2.0: yup@^0.32.11: version "0.32.11" - resolved "https://registry.yarnpkg.com/yup/-/yup-0.32.11.tgz#d67fb83eefa4698607982e63f7ca4c5ed3cf18c5" + resolved "https://registry.npmjs.org/yup/-/yup-0.32.11.tgz#d67fb83eefa4698607982e63f7ca4c5ed3cf18c5" integrity sha512-Z2Fe1bn+eLstG8DRR6FTavGD+MeAwyfmouhHsIUgaADz8jvFKbO/fXc2trJKZg+5EBjh4gGm3iU/t3onKlXHIg== dependencies: "@babel/runtime" "^7.15.4" @@ -10546,5 +10340,5 @@ yup@^0.32.11: zustand@^3.6.5: version "3.7.1" - resolved "https://registry.yarnpkg.com/zustand/-/zustand-3.7.1.tgz#7388f0a7175a6c2fd9a2880b383a4bf6cdf6b7c6" + resolved "https://registry.npmjs.org/zustand/-/zustand-3.7.1.tgz#7388f0a7175a6c2fd9a2880b383a4bf6cdf6b7c6" integrity sha512-wHBCZlKj+bg03/hP+Tzv24YhnqqP8MCeN9ECPDXoF01062SIbnfl3j9O0znkDw1lNTY0a8WN3F///a0UhhaEqg== From 9e0277545322bb981895d5ef6beaabdb18bdae6a Mon Sep 17 00:00:00 2001 From: Janek Rahrt Date: Fri, 11 Mar 2022 09:00:56 +0100 Subject: [PATCH 79/86] fix: update dapp --- packages/dapp/src/services/wallet.service.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/dapp/src/services/wallet.service.ts b/packages/dapp/src/services/wallet.service.ts index 2742dd6d7..0b75a4172 100644 --- a/packages/dapp/src/services/wallet.service.ts +++ b/packages/dapp/src/services/wallet.service.ts @@ -89,7 +89,7 @@ export const signMessage = async (message: string) => { } export const waitForTransaction = async (hash: string) => - await getStarknet().provider.waitForTx(hash) + await getStarknet().provider.waitForTransaction(hash) export const addWalletChangeListener = async ( handleEvent: (accounts: string[]) => void, From cf135d98a712be6817da66df054c1238efdcdccb Mon Sep 17 00:00:00 2001 From: Janek Rahrt Date: Fri, 11 Mar 2022 09:29:50 +0100 Subject: [PATCH 80/86] feat(dapp): use new Contract class --- packages/dapp/abi/ERC20.json | 258 ++++++++++++++++++++ packages/dapp/src/services/token.service.ts | 41 ++-- packages/extension/src/inpage/index.ts | 2 + 3 files changed, 282 insertions(+), 19 deletions(-) create mode 100644 packages/dapp/abi/ERC20.json diff --git a/packages/dapp/abi/ERC20.json b/packages/dapp/abi/ERC20.json new file mode 100644 index 000000000..820339292 --- /dev/null +++ b/packages/dapp/abi/ERC20.json @@ -0,0 +1,258 @@ +[ + { + "members": [ + { + "name": "low", + "offset": 0, + "type": "felt" + }, + { + "name": "high", + "offset": 1, + "type": "felt" + } + ], + "name": "Uint256", + "size": 2, + "type": "struct" + }, + { + "inputs": [ + { + "name": "name", + "type": "felt" + }, + { + "name": "symbol", + "type": "felt" + }, + { + "name": "recipient", + "type": "felt" + } + ], + "name": "constructor", + "outputs": [], + "type": "constructor" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "name": "name", + "type": "felt" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "name": "symbol", + "type": "felt" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "name": "totalSupply", + "type": "Uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "name": "decimals", + "type": "felt" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "name": "account", + "type": "felt" + } + ], + "name": "balanceOf", + "outputs": [ + { + "name": "balance", + "type": "Uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "name": "owner", + "type": "felt" + }, + { + "name": "spender", + "type": "felt" + } + ], + "name": "allowance", + "outputs": [ + { + "name": "remaining", + "type": "Uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "name": "recipient", + "type": "felt" + }, + { + "name": "amount", + "type": "Uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "name": "success", + "type": "felt" + } + ], + "type": "function" + }, + { + "inputs": [ + { + "name": "sender", + "type": "felt" + }, + { + "name": "recipient", + "type": "felt" + }, + { + "name": "amount", + "type": "Uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "name": "success", + "type": "felt" + } + ], + "type": "function" + }, + { + "inputs": [ + { + "name": "spender", + "type": "felt" + }, + { + "name": "amount", + "type": "Uint256" + } + ], + "name": "approve", + "outputs": [ + { + "name": "success", + "type": "felt" + } + ], + "type": "function" + }, + { + "inputs": [ + { + "name": "spender", + "type": "felt" + }, + { + "name": "added_value", + "type": "Uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "name": "success", + "type": "felt" + } + ], + "type": "function" + }, + { + "inputs": [ + { + "name": "spender", + "type": "felt" + }, + { + "name": "subtracted_value", + "type": "Uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "name": "success", + "type": "felt" + } + ], + "type": "function" + }, + { + "inputs": [ + { + "name": "recipient", + "type": "felt" + }, + { + "name": "amount", + "type": "Uint256" + } + ], + "name": "mint", + "outputs": [], + "type": "function" + }, + { + "inputs": [ + { + "name": "user", + "type": "felt" + }, + { + "name": "amount", + "type": "Uint256" + } + ], + "name": "burn", + "outputs": [], + "type": "function" + } +] diff --git a/packages/dapp/src/services/token.service.ts b/packages/dapp/src/services/token.service.ts index a84f4230f..f75a90e9c 100644 --- a/packages/dapp/src/services/token.service.ts +++ b/packages/dapp/src/services/token.service.ts @@ -1,6 +1,8 @@ import { getStarknet } from "@argent/get-starknet" import { utils } from "ethers" -import { number, stark, uint256 } from "starknet" +import { Contract, number, uint256 } from "starknet" + +import Erc20Abi from "../../abi/ERC20.json" export const erc20TokenAddressByNetwork = { "goerli-alpha": @@ -32,16 +34,17 @@ export const mintToken = async ( throw Error("starknet wallet not connected") } - const receiver = number.toBN(activeAccount).toString() - const amount = getUint256CalldataFromBN( - utils.parseUnits(mintAmount, 18).toString(), + console.log(starknet.account) + const erc20Contract = new Contract( + Erc20Abi as any, + getErc20TokenAddress(network), + starknet.account, ) - return await starknet.account.execute({ - contractAddress: erc20TokenAddressByNetwork[network], - entrypoint: "mint", - calldata: stark.compileCalldata({ receiver, amount }), - }) + return erc20Contract.mint( + activeAccount, + getUint256CalldataFromBN(utils.parseUnits(mintAmount, 18).toString()), + ) } export const transfer = async ( @@ -58,14 +61,14 @@ export const transfer = async ( throw Error("starknet wallet not connected") } - return starknet.account.execute({ - contractAddress: erc20TokenAddressByNetwork[network], - entrypoint: "transfer", - calldata: stark.compileCalldata({ - receiver: number.toBN(transferTo).toString(), - amount: getUint256CalldataFromBN( - utils.parseUnits(transferAmount, 18).toString(), - ), - }), - }) + const erc20Contract = new Contract( + Erc20Abi as any, + getErc20TokenAddress(network), + starknet.account, + ) + + return erc20Contract.transfer( + transferTo, + getUint256CalldataFromBN(utils.parseUnits(transferAmount, 18).toString()), + ) } diff --git a/packages/extension/src/inpage/index.ts b/packages/extension/src/inpage/index.ts index 36cc512df..169ddebac 100644 --- a/packages/extension/src/inpage/index.ts +++ b/packages/extension/src/inpage/index.ts @@ -228,6 +228,8 @@ export class ArgentXAccount extends Account { }), ]) + console.log(result) + if (result === "error") { throw Error("User abort") } From fea2631c1a1dc1671833238866cd0d5c65887ad4 Mon Sep 17 00:00:00 2001 From: Janek Rahrt Date: Fri, 11 Mar 2022 10:58:10 +0100 Subject: [PATCH 81/86] fix: review --- packages/dapp/src/services/token.service.ts | 14 ++++++++------ packages/extension/src/inpage/index.ts | 2 -- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/dapp/src/services/token.service.ts b/packages/dapp/src/services/token.service.ts index f75a90e9c..09072dabe 100644 --- a/packages/dapp/src/services/token.service.ts +++ b/packages/dapp/src/services/token.service.ts @@ -1,6 +1,6 @@ import { getStarknet } from "@argent/get-starknet" import { utils } from "ethers" -import { Contract, number, uint256 } from "starknet" +import { Abi, Contract, number, uint256 } from "starknet" import Erc20Abi from "../../abi/ERC20.json" @@ -21,6 +21,10 @@ function getUint256CalldataFromBN(bn: number.BigNumberish) { return { type: "struct" as const, ...uint256.bnToUint256(bn) } } +function parseInputAmountToUint256(input: string, decimals: number = 18) { + return getUint256CalldataFromBN(utils.parseUnits(input, decimals).toString()) +} + export const mintToken = async ( mintAmount: string, network: PublicNetwork, @@ -33,17 +37,15 @@ export const mintToken = async ( if (starknet.isConnected === false) { throw Error("starknet wallet not connected") } - - console.log(starknet.account) const erc20Contract = new Contract( - Erc20Abi as any, + Erc20Abi as Abi, getErc20TokenAddress(network), starknet.account, ) return erc20Contract.mint( activeAccount, - getUint256CalldataFromBN(utils.parseUnits(mintAmount, 18).toString()), + parseInputAmountToUint256(mintAmount), ) } @@ -69,6 +71,6 @@ export const transfer = async ( return erc20Contract.transfer( transferTo, - getUint256CalldataFromBN(utils.parseUnits(transferAmount, 18).toString()), + parseInputAmountToUint256(transferAmount), ) } diff --git a/packages/extension/src/inpage/index.ts b/packages/extension/src/inpage/index.ts index 169ddebac..36cc512df 100644 --- a/packages/extension/src/inpage/index.ts +++ b/packages/extension/src/inpage/index.ts @@ -228,8 +228,6 @@ export class ArgentXAccount extends Account { }), ]) - console.log(result) - if (result === "error") { throw Error("User abort") } From 52fe11e15ad0747d46bb8afd71db579c6c43ccd2 Mon Sep 17 00:00:00 2001 From: Janek Rahrt Date: Fri, 11 Mar 2022 11:04:33 +0100 Subject: [PATCH 82/86] chore(starknet): update to v3.5.1 --- packages/dapp/package.json | 2 +- packages/extension/package.json | 2 +- packages/get-starknet/package.json | 4 ++-- yarn.lock | 8 ++++---- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/dapp/package.json b/packages/dapp/package.json index a6bcd618e..59210da10 100644 --- a/packages/dapp/package.json +++ b/packages/dapp/package.json @@ -15,7 +15,7 @@ "next": "12.1.0", "react": "17.0.2", "react-dom": "17.0.2", - "starknet": "^3.5.0" + "starknet": "^3.5.1" }, "devDependencies": { "@types/node": "17.0.21", diff --git a/packages/extension/package.json b/packages/extension/package.json index 51bdb4b8e..0056170f0 100644 --- a/packages/extension/package.json +++ b/packages/extension/package.json @@ -54,7 +54,7 @@ "react-hook-form": "^7.19.4", "react-promise-suspense": "^0.3.3", "react-router-dom": "^6.0.1", - "starknet": "^3.5.0", + "starknet": "^3.5.1", "styled-components": "^5.3.3", "styled-normalize": "^8.0.7", "swr": "^1.1.0", diff --git a/packages/get-starknet/package.json b/packages/get-starknet/package.json index dc6eff7ff..c68cb81c9 100644 --- a/packages/get-starknet/package.json +++ b/packages/get-starknet/package.json @@ -25,7 +25,7 @@ "rollup-plugin-svelte": "^7.0.0", "rollup-plugin-svelte-svg": "^1.0.0-beta.5", "rollup-plugin-terser": "^7.0.0", - "starknet": "^3.5.0", + "starknet": "^3.5.1", "svelte": "^3.0.0", "svelte-check": "^2.0.0", "svelte-preprocess": "^4.0.0", @@ -33,6 +33,6 @@ "typescript": "^4.0.0" }, "peerDependencies": { - "starknet": "^3.5.0" + "starknet": "^3.5.1" } } diff --git a/yarn.lock b/yarn.lock index 60d6f71a4..c0d7c3cbd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9229,10 +9229,10 @@ stack-utils@^2.0.3: dependencies: escape-string-regexp "^2.0.0" -starknet@^3.5.0: - version "3.5.0" - resolved "https://registry.npmjs.org/starknet/-/starknet-3.5.0.tgz#3315e666feebc2e0edfa2ffbc5d36d895384d107" - integrity sha512-FCXbL3N0e+lbm5AkdP6WEJm2xaWlRMDHGfxi8YW+hTsklIBmC1owsg7HQqxKWKZR3igusLM61vwLLkg5E/0ccw== +starknet@^3.5.1: + version "3.5.1" + resolved "https://registry.npmjs.org/starknet/-/starknet-3.5.1.tgz#b51fc89105235e14a71a576c60db5034e51d9734" + integrity sha512-iFmdx2FF16x1hItQysMVRvCQr2VYEp+WBfSk5c3VAyDI22HIa+5Zh3p9S6Q9YL2eLKJK8Ys/b2fRmeTPtnxHTw== dependencies: axios "^0.23.0" bn.js "^5.2.0" From 3d0914e7ca12bf1c274c386a982f539849998bcc Mon Sep 17 00:00:00 2001 From: Janek Rahrt Date: Thu, 10 Mar 2022 14:32:20 +0100 Subject: [PATCH 83/86] fix(release): automatic version bump for manifest Please test before merging. Keep open until the next release was done using this (rebased) branch. --- Deployment.md | 2 +- packages/extension/package.json | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/Deployment.md b/Deployment.md index af805b389..65ed560f1 100644 --- a/Deployment.md +++ b/Deployment.md @@ -5,7 +5,7 @@ We automated some parts of the release process to make things easier. This file 1. Run dependabot updates (Insights > Dependency graph > Last checked ... > Check now (for every package) 2. Go through the QA process in Notion -3. [THIS IS BROKEN] Run `npx lerna version` to create tag and push it automatically +3. Run `npx lerna version` to create tag and push it automatically 4. Wait for pipeline to create release containing the extension zip, and if the automatic npm publish failed, do it manually (ask Gerald) 5. Edit release to contain a bit more than just the auto generated notes and maybe a proper title 6. Submit to Chrome Web Store (ask Julien) diff --git a/packages/extension/package.json b/packages/extension/package.json index 0056170f0..115ecf8e2 100644 --- a/packages/extension/package.json +++ b/packages/extension/package.json @@ -35,8 +35,9 @@ "start": "webpack", "dev": "webpack --color --watch", "test": "jest", - "version": "yarn run sync-manifest-version", - "sync-manifest-version": "node -p \"JSON.stringify({...require('./src/manifest.json'), version: '$npm_package_version'}, null, 2)\" > ./src/manifest.temp.json && prettier --write ./src/manifest.temp.json && mv ./src/manifest.temp.json ./src/manifest.json" + "version": "yarn run sync-manifest-version && yarn run commit-version-changes", + "sync-manifest-version": "node -p \"JSON.stringify({...require('./src/manifest.json'), version: '$npm_package_version'}, null, 2)\" > ./src/manifest.temp.json && prettier --write ./src/manifest.temp.json && mv ./src/manifest.temp.json ./src/manifest.json", + "commit-version-changes": "git add ./src/manifest.json && git commit -m \"chore(release): manifest v$npm_package_version\"" }, "dependencies": { "@extend-chrome/messages": "^1.2.2", From 5cf2a5d14b40546b5a30fa1d44c367faa4eb582c Mon Sep 17 00:00:00 2001 From: Axel Delamarre <1091900+delaaxe@users.noreply.github.com> Date: Fri, 11 Mar 2022 10:41:28 +0000 Subject: [PATCH 84/86] doc: update migration guide --- docs/Upgrade_v3.md | 4 ++++ docs/v3-code-migration.png | Bin 410183 -> 414897 bytes 2 files changed, 4 insertions(+) diff --git a/docs/Upgrade_v3.md b/docs/Upgrade_v3.md index 4d2f042aa..e5a291e61 100644 --- a/docs/Upgrade_v3.md +++ b/docs/Upgrade_v3.md @@ -58,6 +58,10 @@ interface Call { All transactions triggered by an account should go through the `execute` method. It supports multi calls, which means multiple contract interactions can be submitted in a single transactions (like bundling an ERC20 `approve` followed by a call to a contract). The `entrypoint` property is the actual name of the method (i.e. `mint`, `transfer`, ...) instead of its selector. If ABIs are provided, the signature request will show an explicit definition of the transaction. +## Backwards compatibility + +The `Signer` object is backwards compatible but the `Provider` is not, so dapps using the `Provider` injected by the extension should update their code as soon as possible. + ## Code migration from starknet.js v2 to v3 On the left: starknet.js v2, on the right: starknet.js v3 diff --git a/docs/v3-code-migration.png b/docs/v3-code-migration.png index 1f226ecbed0dee7b0f1a0b12867c5ee85d7e57fb..80e2f9693e83bc8702b1ad06f90c9abff2bf46b9 100644 GIT binary patch literal 414897 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

x~riCE&5wY$J1#gijElE?5Px6FWtz7Y%wt+ zbNpI%5YbS-t|}8@!!46`d7La&z68adG@91;i7?%7j`lwU(vFZd@HEYv^~cL?I*>6= zmmKjS=nE#6%{V8@C0Z{+v)MM3JM`A7&FUP@)+&k?D;5*gyww9xIp$rYM-X)fqmPs3 zqKhiS8ryb(XGq+yhCOH2jA`0F@*!d<2CRbdqj1zKfd&XVUh{)kLQx0}K51&>;^ysMi zom;*B)}W}CTRY*ZUi@@cAVaAIek)Sf%?X3N^m?XCvWn(eHHFIr$X&uPF>RbRr}S; zFb4njiCycg@wd~_W(#x1N0#~M5Z3h}32e`*nu%$+6S2ieAv!NyV_kfbkj}zjPjzG} zSIzI}dEA|>d)}3t^YzSJ#ulQrnq8#rH)&N2M>YmvQye`% zq}JGQYFhr>LeJ`sG{%dW^l@7Xy>KO}vaT3`Y^bzrXdAo& zxO{n}u=Sy^gDFMUrSTL2vz%U^|5OQ<)bR)5+gHuji+c|qP;_8T_Q`ThJ+l}o%4}(QHrE@M z=<4QXhFBjfHy@(47dtuFQrk74X?|50Me2#_3mH8B(#VBD6KMbFxJn1nGdCT7P}@*g z^1c+dwzPf!OQ8>!3=7ul5-j7nQYX!~1B34H)*Fd<9xP6Wol3U!T$uR0yT{*ddOT`b z=U$jDu*WfNWio+wIse=xuCUx@7?4=|<|km&Du)2gR-SC3%z|j1eL{}s^KMfUL zzKmAVq*D6H4&Ebdc(om6FyG^GeHn~YD2!bWSHI*S%Tr>!F=DQQ0PPJii;0_a8E;qB zQQytvsW>VKq>RE$G(nDs>*<|0PV&S_JI}bk#_%R_o9zT3M?7LXoZSOa+}G3>u``12 zBfLQ~C;xi83XTY4e#6P9V}Yv1EKvpZP`$V>@ph zo$GGMetM>me74{1r#H{m-L^=Mc-2UJ50cV0XWw=S04s-JkjSoADD zC);kjgf`%wNNkS(XYz%Qm?gqKt^6cbI_7>N)*VJ|{wO-ca_kDX{D449QPPuEE@C95 z+cu_?*_CTuTWBtE7O0p(8XD`aId$O9$wS>BJuF(aV@?5h7u2v{DGTO1m3Mw%)qQTOb_+DZHZM~ zeJd?XNGjf6leZ2nOS9QpA*4cNr>BURL;CIA)@7A7{{R6?8V??Gv%7+jb&_zO6n-YO zYq;3@D((UsP8(I@`=gadExMKJ)C7DCGVX_owu;GSJ#-$aUysfy8@SvVkD5(Bv}(7> zIO(+c!|!g92sP4AYVNP`L@;eV4s9-A*r4%^;s2?D(OoA&C6NH5^*?O3+jS|RfJ{SN z+cYfOym+UD1kvim-POtt2S+2J4(^ZxZ_%^iX!dW8Y+EZGkma~UvJL+6(-&R2No3Af zX2D-^CNIQg06HWGr<$NLE6r@HK((po z9PI~U@G+#Z(E=&COTxskGd>AZn5g-Gmauev5kZ-MUlMKz;_ztwFif&qn@IxgTsQP)jG=M>NfPo)U(>>bh2@+#(H zbVK0U8dw$c`}4|E^Chx;zT@hV-vx{?o!8&Uyv)jVP=~>)!W-Ogqt3@|=1;otzrg2-&;}uM&WH4$ZUqFRX$al7s7>fDd!Vq*o`nl7 z$$8VB-`<5_VO+3#JzHjJo@d5U&@U8Hnh4*>GHIHS6Y1RatPb93kF=ifhVq7f9F{!-k5YT(k|^L=$yDm68AVR`vE5DW*PyJykS z(SyCcv!njy)^_NB|dWbUTRw-EMdMEDZBMgNbzw~UG_Yr91g0tpf<5L^NT3+_%4 zBm{SNcL*+pgap^%?(XiE;O?%$oeJ*M+4S3;?*7Ji&OPV+xntaM`2lNC1-15Gdp$De ze4h0&CIuA=i5^NV3|(ix1__Z`PztG>LKyv6$YS(_H^7@Meo^ME86NMhBIeGO3J zg?N0L>XP7Dw#mD+4se4+SZm$v4XhvZmN$;p#p!CSCf~F_cS3+@gh>;Gjc`m#1evH7 zPsqD zLkJsKZv7gtBiCkFBjg~47V>3L&~eChK#L)&_F`FCAe{Mwz87clTkzhxEKY5!#N!fb zpMbp~3BFxJH6@+eBbH(SazBENb4cbTt%%KfcCE#MX+Pf%WA)G2&JWu=J|5@YJ7%cA zPHnN`bqC>tGXI@uVDdHu5K3JSxjw+Yc(K5I5O4MjoOE6C2R3byQ(mW*#ZvDG{MZH- z(ve>i35}%5kF3Y5q|uKS{c8YDqp3&NL6`W z;2fztJ##9X+8q4(-`MuQ2A@0N1x&XXqqFSZ%r1P`tX<3f=lp+<{ivVL=rz*Q4tT@P z2IGRK^kn##K9Jy*NGZ6KN4~4vH>BbZ7%YwuB>ab|`UigU`MWCV6YzrSywxJjfA@~h zf=>ild^@QgN?((#9EcI@g@Zo+^XdIBV>cKe$5eas;$PtGpYLIGg69lR(dbI~^3Tuz z-yY8j0W$&TXQ2Lf)BJz>FCio_Xo;a2L)|6+Hy{3)5B3dfl|SCUh=_kJ*8k%3zvGZT z$(X~Lw_JSpe>3y{|FZuV_x6AC(*L`w{gd18=ye_U7X(fot_cr&PpMXG{xi334TtKz z9r#v!TEag=Ra%UC&+(dQylBBB#I`(S*A-Q3P64)uqlaqiJ70$nlkSKo@R%U5$L`d6 z*~CHu1Z6Y?2kYNqt}Yb-@~~r0GEx5VXnmJO``lthm2V*ZS487ICjLaQYOJxUWic)( z7+;GGY6pB}LRf0Y3;Gwe-FAw!QnbwU`eA}l11Y^^Kx%SRsvJhxK2XnkE>uJrkKajHM-%dUtvxlj%CBm%2WdR_ z5moRoqE0zFI@zq%;34|9Ckqs+trpn9YN3Um%SX!&%agB9QdQp? z7mdG3bNQ74;*Ub0*A!hQb3!YLVcUSrnFpOHw6=qm^+-s z9mWQDt=iP&CEi{>TBi;8As?3?EXH5n&T4B5EFIE){lMaSL7G^-;m)-(J(Gqjn~~5I zhgx!b2%@5(OL2!0`k2qP*{nr)7!B5?w7QxhE+B<$q%Yl?Cia48gYE>|3tDnqKjKQO zHO6W#@%8e&ffcOsBq|>@8!)|tYm-mIFyiEZ2>2rmHIqeB=`PY5nVvT_71_@s4)ODx z!!5CHKDV>A%Sg&w{3vq(^=~}#9+rG5t{`FziX~3>B65rE*Las-Q{|YR*M0R*yH6JI zS&U*fWlfx4D6uP=sdKS|k9{0Bj@Ia3 zcUVQ!Nx-72^#2V0_)_YwYFJ2a)uJsc2$^AlWw87R zBbL$I`fgivWA)IYQW~4X8IQw+DaG+#>+C@Y#8Dvn9s*nHveAag<@w67wr(tKSmLnd znfgl$7}{9Ex-EJo!)a}u_fk1rc0)C4V1n9<#$@6G-3gjK7h8!^rENtdf3@74D&N-r z`$T2RlFX? zU?ltpn*~wxZz*Ym^;hwlU7&@$IIxPHOMm|N?!OV&okSec)YLS+KH2oxWHO$wbE+Oa zB3NQLVUeh^Y=yw0(?=;-8xbvCK73`rtg6ev;2INIr~kGTu0))7_x!GXK|9uobc!`@{6{=dI894@xP&R|01}X$KWn9ytdR)P}&?H=6;FrnrMNcQ!a|yYRnZg zBANY-y@4zmP9Us%mO^iz$R!Z?EiC7L31vX-wW?OemK&R{o2)Rv(h?gkIyuHEyo1>D!(t>d_&NR=R1}7t}vB+#GuSm6?*_=|9jr9InR{zE$Nh*!ns@Ci3K> zcC03?K56XzKhsg1)6&FEi5c36B*=cX_)ZvRjlsv zFO{{$wFSWBBR#7JK?Krn<`-P7H!M$_FXNV0dPkAq4hT{2yD7YrJr)8$&k~eZ&MB1) zyVok?j_Q4+ot+1$Wh|k7tzMgAiHu$a@OAJbLC+dcaljjBzYs$eur)l~b<<=VGtr}| zt>0xld;Nl%&ypMHC!F~nBhd`q5k5TU-(eHb!~)0!{LF{|P>X^Jw*|OX{1$L94}QZR zSMB`ARjdE~l$6JO&&N#k_4AWgPaL)%1-ML6i|OKun4Wy=I5a#N1%ur9#r4+adqsH- zbNOL7mRI9u?pK^@J%TLcQX$e=65E=^n(|r_gjSpGE43L%F?=$BaExXP)_OJz|)Nb>S zucQ$Z+hXrbXemeX4b7>0)BA0-nOZa!)leyON(+9ZtEtF!nHGU6UD9UPfk!XCt2bKDvwI(-LA3Y z3P@S3I-+6d>u%qhIEe3#efzQ|;(&po6{y~X8` z$bPr47bKn_&Z4aK!B)X|U^G&s$1|HD?Z#_zYRsAuRfo1=HSVO<&Nr@ZkhnEx&Y~QEg;xr0nC)1Kok_*Ioy=inxi;4O8KM*?5$-^D&K6w*X0ZaV>rfoZ z>hgH^Hei2Ca{heqGmTa25GU1>-Z7V6whTXrIsanA`aF^4;09zku8&9nO5*JVPj^kk zsTTzo6mUir`pA~#kdCCcWYH%lCsXSW;~{=bd{6Wq-EJ1;*xCy7RGHxFLvcp$nxgjF zwsr4D*9JCE#NvHNegkRT-YJU0^)f?eRS`y}`T^}bPpUZ*Ut@l2{^*@Ffrj&E_Tkgh zpSl0uK!BN*ePqPGG2Zz-vY4|A0goskFzQG{{^|<%=&!!IE;C~P9i%gQ%TcrP00#|i z9&K%H$pc`ZQ=|X)%xK?gw|Q3z-dV9ZlNYV5)Z1UCCRD~Zb^<9JF|y=*1;8@&&xM8WdN;XlK5rIb<%Hl%PPxXvBQ8m%hJTr`1XCld23@89R8 zibP;9XK2&la*$9l(wm^iRg7BBSH0-#5~WO*y>Sb=zN1Kazgpxe=y=O9T99X*Goh6t zUh~8G%&3imQiY>%>9z(fE=6Q@d&yE3!s1DBEu}4h+ookCYkkzt$Lcr!a2JZEd)2$w z487}5S3BEmi&!i7GXTjROtq1rk}xVnnhe5{@M;KMGd%bevM0EO+hf5rXY-_zL3d4P zv^MHg+TS8_?b`u2<$Q8v$02X|neIsN_c6Nixc4Un#7 z3gR(0Ehl0AJ~&6*=ZPZLv|CB7Yx;I}(}y+cfgwY%YjI0da0cCks=YZIhm&;1Floz7QvKa^*rs#2*H~~=0#OR{VMqMZn;;koH#(Js^a23 zb%gsbFzP?~yQ%#nz49E4kA7eU`?xXYiIKl1`U9J#_C4RH_P{IzUdAXnn78nDscXq+?>bCPsI3u zu;A?}qhocgc$x7qJ^lE^{2a%#Ep)N zecYnFk@}XQ?a3-1y^{M2aT{xK5LWmm@ih32;fP`B5z$*~<>8|0b;yYVWpy00*YVep z(T%E+IM*!&s^(@kJ=<22qWktuuP269u$VkM}W&oXbySF?Se*q_)rl;^YN4D5sm@%`2 z4xqYA9eHL{cJuH?@P5rQO7%6;I&^z)sCA+Jb$R~MNy5ncOuL(u4t15BmdeW8#i&X4 z?j)%|1Kv%-dDpk|`PW(72&bvXb!ln+f`=Hc02X@f>f0IVwdP>wb7rq3EpC)y9yh87 z50feK-{9LlrEY%xF4RSc8wP1`_E(qLNGjjt^z;XMK}+v!vhv$W?KRZACuL9EjvDhE zUn@V{Z|yjD5=-j|68xH+@`}4IL-7*QA!a%&e@jDfCG*W++a{-2ea^6N=x|s1xHcK*AdOUpg~plxceQqDIt6$ zf!SaJFgsGBGk=W7NeFz0tL8f z-Xa;e;Xg>2R~n%o9P9T}UHo6=jzqz5V3`qKA7Rv3Kag`2kXFf)e7}WQVHaj_rD$pG zLbd0F59UHzd~M-JU`PZNUR5P|?E>B5XKo*a>g2m?k;QB7jBQMsoycwL$KxQ)iVfKs z52rcs23&#MBAl{T4f6s~dZ=bm;ETeRhQQROYt2HssbDAitMiqB%Y}&<9T!LN_s{75 zSTSPopO@<|)#ck=PxuxeZZ5}*l8g&IO%&widzF4wvBAA~F_7EW*M~_+Xl21MN6*i% zjW~3WQY90WV3vH_=2eg*cRC~2j=03bejC-3^I4*VwcjCV^vC9HTXs90jeHZlZ?ROV zwkPX;oDF(g@N7qXmX9$3&}AvtRzG6yff6|lgjMG&r9$WKiyv$w#ChT zwpcPbmXB>v^@iT<2l)ntPwyBKea_k;1n+D{JGxFWKaM1|(L)94`5TN4bm8@9J$(@p zN#eWJSH!RWv7?>7GxkRsK7Zfqg0VyddK;UGEY-W6Jk@8^2#7|S# zH35Db>Gc^AoRsnce(5*nF7O=%rWR_v5ccCm6H?PJ=T~1swziCcb7sEl%7kANNWPIJ zV;!)eDmQab@k+@{rbmA_s%qH%EdKPP@x*s!yw|N4Jf}5lP}Vrl8yWHDbK=Tn9#^-r z(``QIIPcyNp32KI#N&$S=2sL7dk|2>Du?er!7kU(EJl*8&PBPxuM->OAPJDGIO0(K zC>e9YM>5vn))UXUS`8P1e%CuUAZzs{cvb!Dd}YGtg@bk-0dr3jz?qsoz&F? z2c&6P0I>53ht;pK``Dzoz@hJ0g9#WOVCV%Xcc{5sge7cv9kKufSyTisHjHgDww z3+7|-uWJ?wR!yvJe{{59gF}i)P<9_$=X_TptuC^vt%tdb@jf^cyI+q>@qFTil+ZS} zxpc_0zYX#m#>z*;w(_E=ZmNAbmkbuHVMEzvd;TbWz5YXMd8`1~^N@iT`*@Ez%JcnV zJ)*yo7(lA7I|)A|ub@E9sz~|jdMnBMyqfJM?8mQWG7fAGM?EVoEAwUb+?K+C=H`iB z5tp|Tji)P$6h7KRc_?c8Yw_G9?|z~sEVmcMfnC15OzC^p1m{<<-gNam-_<^Wezl@U zK3~HAuwjtwotg{ttt2AW75C|?L;Sn-(?GuOY4p@xkEk0T@G5MQz%@0~=>=wO!; zlmM5*ytwom2}#Z7L4l+g5P*v-dxCGS`fM(4x>uP}l546Z>o@d*B0F;ADIV)(gQYQDw)ECV8yLmdICiR1!j{Ohb}f>po~wWBV0Nu_l* zE7Errlyf|JeD++G;lWMVzLMIKsU)_fcZT)wTGWCCK^qus+9`e=YItB=1)AG$5!$_- zuA3&TZ(J$5=vq?yFFnKvDks!W!ba0t;zd+~auZFmwwL<$*TKi|tnM?3_;oo7m!(eV zkQMKbGuc`qdfGQ8KR<1vKf>(tzTHXl0)xR!?|&<5pTK^24k)2Mbn~AZ#Q+$#G}1*a zPz#v@cVH#_7^P3gnHZNZv;)xL8UP}uQh$K`3q!-vhJC(O7yH#c9KhkLO~**NEId8= zV`5`bP7oQF1kmy=iWK}qPlJ_Cr9#ZTG$sR<<{w>2mXez%eDkDE6t*{zU zb8K0#{weC114PjY#CTyj{L*-<$qnp>F}_n4ECc-ql>)&j} z*S^IG=8!R@_?QMlX4LI4*1{taIW>(vT$!%@MJ1lTLW;hc7@Mbs)w$h0ZM*O8WWidY z0XND&a7V#Oi{QSn5=0|!HlZ%4oot@r*A9;)?Uu^C>u8FRIB#NRkQky#xQI2@nijy! zpWJIrGB13I)TsoPh*IC$$^g9>Z&DjkrFC2Xl{g)#@;SqV8p@cGo+|`Tp!Sn(RP0#1 z`}C|<8Ee>fM@CykRX?b)x)4S|=1ZhZ_|-?NfWdUMpWmW_C>bp`wfJ2sp4zJXncae$7Art2 zlL8LO&15nT>p$6;hE8hy534^I=da*3M*P2A+ILeD#&dMDPZJL(;K9zU8205j*l?%l+6?nvupaZ9%B zZ|mH4U$c@?7-WNnS3Wqv)nFwd+82jf6ohpsQ!G6&ClJGAY`}keJPz?81pm&*RQG*6sPcA8rrUm~G&YUwW{~pBYVPPYNp$+m9)!;Y`}Q z@Gz>eNct7a9ytLjRe#%QD`E!3{lf{p8;B@TuY+h?mCb@+?=R%+AOfdtaYWV=B`JM38Jh+LH}^M(>+pr@zW#*lw6(hK~2|`-qG1nOfRv48{7}H z#_9#IJljIuM+Tt`PIC>TTg_~zTm$%&zh8F>4kLlMOauj$G>Nc&TuwIs<|(Fl(u zUCj05Trt=hMqw*LCi^I*4BmjS;&XEuRLXI#z368@lq{S`CY-kOTqa&z!NxNPFPM2} zN22Z3wkSiYgY9Xwf^!X<+-~Yf34@SN*(O?Tto-LDPy^@g!)7`eNEMH1yw3QPSg61cuU<0O+!W;mZMldD$3S0rV+@7(Ojh zBXAe&e8E5Ze=L811uy8Pun+!rP>l2NA&40XMZbizvdt#Wtm9*tH

~K+Z>+#}Z2u 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 z

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 @O&sK4#fLFNbZ$JU$tUi-qoddRbdd_krt zNxsaE`?(U+FQM!%=EdLYFJ#=Ug(xT9-zUSaIO0G%p(I~1HnzGe&8g`4J$bX3w9$rti4L${~+ zT9-=ek}gXqad(Iogw?ijXH~ymD`*Z*`?my3LHE!5urXJ1AW?mNl-PF4v;W z8u>m=(MnAlC=D%rPw0$5i z;V3KC%zv1LBkBvcY9VI?YHrvsrtD01IVz<4H0r?BA`~ z$~&hzRl*7@S=Huy(HH8zoGo81stkLHAfItC;Jo?Lh$6Oq@s$MlRoXxVx^=X;NBF$b zj-U@k*EaL-4RgjwSm}bd9vR1AfWvhi=5`Dqadc3KN7En8MD4L!^JdgWy&J3rO%k{R{;b^h>wezsN2aw(}f_*!LU1W%jH%SfoMong3;;U>%$3kyV z{i@JGVKZG%zZcY1rIMwHy&ESqEODsf+|5Hp%DTW&{>zJ2EdkB+pjmiEH;ZP~`m=MJ zTxY)c93^~zO>`wuTGCkO;y&|1cGsVZ4IaKZ^H%O#cep33WE~Xeqnlw}s{5$Q3Xd!+ z=wOs1o@($^uXf}@6G1;|i4c<6?@R@~UY5iW3tIwz@O-YVJ~b?g|D{-;~c-KGjJPm070ur|<5#w;psM;DB*=gc#frz!j9uR<%B+tBOQsEA^GdEY-?DMa0`UH9L~%7 zgyGpQr7Tqij2z78aE=Cxs-AjSvRk(v1ee4e>`hPT*Qx1vQ`Qm8i^sYm<*0R%4`j>B z^X4{j&X`vD#WHg4HHw&{hEPxpRqRCKgL{Wr+Q$8kDf&D(OL@e@a$?&UTKD6|Z?@^$ zAnz{jvz_KDr!Gh~ZGEDT?rtaALNF7llEBqe?mU@Eg1v*Rh(C99NL_YFd7kjZod@o5 z$sl7Y^QWo}eD(H8aa7Qlf68NjLg}uiJ{^fse}s0-R-?~>lJbSAw%b?MN9lBxyuvF`5dUu?eE0VWNs@_eE&J7pTy0uS_IKETD+$M- zLskGS7N`UZJ&wrRq@7WyFJ{3HUu_og(t+8qYe68(oXo?BE2qqm_P61Fw<5T=WZ`PJ zj#s|+Bhy|MzQSyGq<{d4@zLmQdiorBmGZbX2UXugCKfB#=MvT5knZ3aV=}GXlWOo~Q3xSckdC;kav$Im7}$pS-1P z_qX$GkX`hT&DBHvZfj|qkee)4zaREEpFZjOzl;41^l1WRn%rA%vZZ4V?Zlzw$5cU+ z1w%UsAAg{$Iw(F2WUFN-y<$ESk>be;7NQ`^A2h)Uof4XfY6*p*{NhSK(j=ST~Wy&}gEq_A+9KdnqHIRRv z-@PF#?_BS_Z8+>}DZIaLs%jf%p5u2cf>;qrRK2#IeG#0-R42EJI&gfi-Tg466j;M= z*6@{@W-_kd_&&V9RbiY&TJ6-BBikic{ru0VVeJ@6i>K|m_n4q7Z#kilA2x2SMuYg1 zmh4QVf%jI9=4S9zR%zuUk8C}gv+tB>9JxE?lWKZFW$ z0_!1qj`+#DzPi@yjPNh0h7i6qR2OvQkN|tv3*vyx;6l1TiyUX1PM?*BM3vyUKLmn7 z)*`N0w;Qhw1h-c8Jk_dgV#1P5WqmxyhHe@N$Vka))#fqmGDhFgqwqSxiB3+Ncg%m* zSJ+{2`vqlVO_f`BZ80lim{PTm>9E>C1bBut!rx?}pdFZOax9#)=x0-m)|I?byX5ap z$AVELEq2ZgxvU~=#~M{DV#Y|c5=z=GU0&O>pQ)_oA#BX@-N+f3O3rueVz@X--^Ic? z?vN*+-4(M5;V$P`C}I6>ymcaFrG0Hk4Wi$NGbTQ$6*jBs1aHABoU$2^9GcjXYPx56 ziCvLMBdE)66l9Oae{8afsBs#2OuUYCZHO&@lX(NySM1YL9OSwr74Y0fmIPzc_Di7qMpQu5K#V(_{PDC|VSaI+(_boy~1e$4vgsA9u5lPn< zouJUYulAyK1`ay1kWxUtA)0ge3D(b6H*@c4)&!4_18TgJ0GB=E_v0F?1!RQDB}x`7 zl2wK!hpqE7zz0m2agXC(u)NKruVo0!eeYz+?vX4xX}R#Rh>{5(#%a5B2@ zdt#0~y^V^>G3-P$)>NZgHEIa&0cMXvU*K5QXjhPe2$N?#5<%`}G)3|r`Q${lK{V|e zCDh|xy!W4+MYEP2zlxQ9>y)%h$|YyIW+s-;wQ;|c(AXDIkE%!9^XP>Oc?}Vr?RRO< zs{prByP4Gfe)~;DU|c5{967{xbjWzF8V}osJG1#t>-J|8S{c(8;hVmh)|rPpA<0RnoOxr|xcGZN2g%41F)_DMnKH zk&|Nao%QUP+S750Wc4qA)9dXg{dw>=481VrEs3dp@r8VI!oVH6(9oU7vnfhB0)j64 zHL|!lW^AB|dC%C;hQsDI2g(BxDIhxpGc}Z*5aefvF*xS|w-IKHAfh z)DwO{>nk__rC|uqef_bfBWj@|v$w3HGJqBEpBUP-lwft9K+vbl0OhrFg9x-4yRN zN5Ay}K6=k-=eVjJCnPQ`RG!}`X~H9p%M%$}bOk>pb5NeGHVtm@o1UWwm1GJ<$u@dr zMV<*>YxF)x8XKi=&7MQaqt{pL(uqB^~^I*9rYzR*5YYA@g6pim0MS?W1 z@42@yoVELW(Y3B0|J?N|81tIbDH>0S8Dgus6)c^)o6bw9Qn1{=UxQOKW4goqnS&$3 zmb^zSXi_+~E++8GltprGc0|Ug$N^*%{x7S zW$IV<$QDh$78%;WRCFvcG#Le@~YD6@{sJ8LHydIoPsWBZJE_DE4kUyivjySrI>gs&kzdg=E6R-qh8Nj z(O_inH<(uJEXHCvJgHRYHI^VM+7*dQMYF*#;5EwoAIGiPUFE$BV_CS0_x8!s?Co#m z&|DH+Q!AN<;nmR#D%J}%&|Szq4*VYP*xptxysOBM|A0?b@-x3%@ruKWerL~&;ZBLhOs`4?`Bu?EjT1`|Jv%)9i1bB%R?143jm84=Ny0CfYQ@0G z7_c4f>$|nbwQdAeyNkAKEj?G$(Se^wCg5v3Fy^UoM&M-qS|p9I#586U0^QNSx;+)F zZeAF5-PQfIG+*w06w(&1!`7UmQWW|ft#`&?idC>Q1^htJnyVDuyS8?$K1iT6=;VEU zpc5}X6xU5c+xDdH*cRZF9=&)$rM{!TUV7IdQjh#)lL!o*<=obbP9-mXqh+n+7QWPK z733yR7UTNX<+!BG?*l&y}!Oz(i=IASIB&hAg&TU{(#TsSyKa{8%) zuVt-MU(=v@;j##@O5&~M>0jSAOKx(Ai%`#@JD#M;+`Swg__^(*!l-lhTwQ58i!la~uT- z)p#jR&~CRd{b+u1NuxmO{EI?SBNnYz1&bC*l&0`$&S$zP|*M?s}{U(tac zq53PSW6h@$8%ou_Kw&ctNjTzgBRhH-6i^b=eDfzrpj053BOq6TjhbfWy16@EVW?ed z?fP&?pbC0ZvQUr6hYP*kHzi|P4}pc~7|FIYF6DlKJm;5#64Gv{A~?CNg5k%v z5%LvsklQXreQlLQ3AzYu0VK<-ty7EY<9PawE0n`rD-8v9T7pt@Eo%-$HAmF;I=b<& z;{Y*g^psvYY13-g0MnqK>l6&KkgHi`c2)WfOfWP&HU83NuKd35o!%;(pCG@hQQ^5b zZ{dnTAQu~1R3!GOb|Xj?Bs55Mb+@_XId)Sb5xAcKXXR1j9~@gmS7nKN7a#V>psAt- z6FZ~fl(n>+lTfOr1j9WWJhZT48679#Wby5MsMT(zw|bVY$QQrN0}#j3Qn!E&SBK*c zSsOQcI~;M~FLyl}Fv}(lNJ-7y!F$b%+6|cPsoP1sSdxAV+n2CJq8USlW7im_Z2FjQ zH8_OhyIL?0TxFMeEz_p+`#H1h>Ei28a!uTK+JD+MlB*I|?-1#1l7bAaA3Ks_C;Ecz;ntA4`uxp`pA*3l?#C+}aWbi}V)87TCX~ z*JYy$uw2Te7}X4oL8a5+F&&Qy<_NxULh;~oifJZzlh`a6%*ink6VKV#JeHtxySW2< zhJ=9Tt)REsICBdPPZ)>GOD6Q5RbYrGL+o{G6PhK>vmzL6LfDfHIoo6x|Lu)GarHz7 zy9*>^{?ziA&c&FsL*LA3=bF{mwPNi(PyLz zVW=r^XKUV%%6?7R9mPLgv~B#UVN<)^ zuMBIBDKz5lDK+Bs?b;m=PIx!s*)8%8;8Uc8irS~5{qMW2x_+hm-6&wyBtVEtOR(^7 z0x|DdQ+$=}HL;)lDv@2(*!-1+mHgpdJm-p(;crI5AMUN$?VXv_Sh3-6R|rnoMO_mhx)U1VU~9jPKtgztua1u!j(_PoabGsziwuxVYUM&twvNFbQW-ec$Vv z-=lMe%RXXh7f=0CBAre0Wvxg0Nb83&U%jzbu?D-ge_SI)mt1JUC0I)~_;ItUe(i{K zvzN_Cd>?bt6NCJ1R8LQ40@S^JBRQ@9dAhIwQmwz7YJCvHba<^E(9-zSZ%cu{etGQO zTzdJ34zHyH(bb^9JaWjNvn?%(_-TK}=q-7a3I?+eX)qzLm05DHLt0oO#KY4HsC%y9 z;kh@O_vC&8>61FX%7kmEk>t3EnjfNnTw`eyzKe?OtTH$tVqhpyNxn@JNdvK{WP)n1 znT=O?YQ&s}Ofb2fLJ#76*c7J;=YsQaZrppG-~yd;VY$;BO`YhuFbW|{E$Xrgzbx!k z&iXKgXD0&b0vReV5IH;^-JI~Fs;(nZz#=OJ@&&?G*>C#>1!f!Wi^`_xXdU#GzZ}Sk zAPj9KUcWLU)5y;!;@~mmA<$N{Pe>Vv`AxpN=CA8}*>+46A3WeqfVFm6GE2H~KDwB< z*mjLONCk!t2X{9sZaix6B`lIZ!PB>VwF<}X>^2B=x=(1`os;LT*{N8nTvDi)L(oh< zOLKp$#(@u4p#I=*UIhDFX*#{BZbDI-9M$20@$j$=CbgP48LuM>1-_!1e}AH@9Av>! zLQQJ%r5EJ>fU<0jB zubEDrfmUgXUeNIkb{B*e^9?_;81*5pZS&Gf_=;F0ixk==I zq;z3tGQ_48$OAV&A9y7>v9cIL<56vva zP~!YubsuVmxnW7thH59f$W(=%SxH5Afo*xiMH<+UOY>{-%^=<7%(O%%wowS=d2E0L zu=eYoj;=WKanEzd9bP19cv-$BclWGQpxCuv>Ub!!pROp+fzfhZKT%j*Fh>Xz1VVrP z_4_-iMOV|dl*^R~F}uUI?3J~Y9!w0Ep;>`ihk+ivyaJrI!fsgU5SYt6MQyvae68ou zUp0D$Ie(?M@v_7B`(qUY!OjRRHg^4n04jVtIlp;rl>vgq>_Z!9cgAGBZPgUJgcF5D ziu*QoPOxc<`q*81QcXg3uzVA)Hnf9?A7_O11H637{bC&GZ1O3ylJa4{`~`WW23gG`|o_P9l3dmvyV8sJ8|nMX2uMGqJ$B( zNl~uaLZ4&^{_ah3G7g}Cut>PzPjyoZe_R_;FG>{>ePRqIw^}JlOX3Q{h+`k%uItiK z`L>gkUBj+kLC#t}lE&Ue_jcH{NJaU)(#w;4M#kR7UCx-)284N)E^X3o_#>(qDl==&Z1$Zor= zkB`d#*BcvpFD^2OF{3_=s#zL2$V9DDeP=v>nHnNzHvCQ%&gTLN0^WR*%p||i&bcgE zjwTM7<87fgV=la7Y?;bU*PwZHXm4UHk^YIbTZ1UL(eW$vrp1o7NFcn3ElgtEKTl*r z7!~WR#nwy7>Q;&CTY7#`mausj($AwZ4{3}+YmWrbuxAw>7wabq%Ko&cOk32{2SF#dQJq|2dyhY5YV;z(y0&Q{|Mf{5H`W($~H7Pz|`x%R7_&uozS!oGMG{s+a2)qtRx_j{b)GiBYQmcQG!At>c=o2MDbnmrua z=Xx`z&S$^Fg`qqba90F$yTKpteG%Vfhmt1R0~jr$GlgR3G8k3j7stsj2(@<+l!?Ohc`HJ0(B z;xw36vVgGotFoH!up~+fQ@E6~K)RouBn#N_w~|gZ92&bo@i@kRSZb;}T0}+JZ4|0k z-#O{^tmHT*v)$R7XmF8og|kHPC4)iiZN=sDdb0RE=!iwTFB@8}Ri$Y@VKb)o9L7_wkJBX{@ z(+)oN_OSl4!q%{E+fVBJi3OjFt=JNT1FUqiNXJ+L>dL6C9Q~@xDbYnFR<3||UTlkV zroUi`7K7X&zX;=jk{0DP-aZ{svT7amZI8si*ShT$F~jkt*hbQ(Q`MRm zVyJ`UfjGP3@Yo{7@b58G*rJPmdgU zUdajSjK2Zzp``M;6%5+^H-b7?2Xq70)tv%qAiY= zOhC3q=(WaoxgTw<9kNy*o+zpu4xXe`au-Yr6SUL@dzK39C-E5%oBSSfVmVu&`cvu~ z>*dprqVvml*7%fS4=8;pZ7dcpFon`VG?j9}0~;^96SSiZ?pcAB^Zf zt~3>@qvNj(5h$4?i?Z^_sKB36Q7=-##WQG+YUwDH@-GcQ8b6=~1ojyxv3S;mg6^Bc z(ZSb?kUWec$3f;pAcy;HpH#hj7U8w+?vf_WEyt&jpn11iNIMj&Aub+T-ta_s_XIbK zl}5B0YYCYL{QPc(-DY?h{1j?Z+*?Gx*aSg7D#7 z)=f^CI@6_YL(%5%;7m6H6U9>67TK)4?@ckHS&r}Hhk;H{q00pi9+d*&@K>Y3-JTSM zD%F)*SIyQJ`vq@fu7{ksduQh3ZhsRj$r--^5C|D<8EC4TC@+`(Vd_X}rL z0-Ei!>BABMB3#jXp&TJ-L1jvsG$;27Dx2^2phAjPGz}~|)Y;YwAXS99I3qdd^w zYq&|n@zGgo3->;z(e5K4gErL{<|7@L>Q*|Uo}$imGOUB&I!ks;T9^~@b@7G@|SLS_i3M;^Scxj#4$IS8FjH7%`6 zc)Sw)6QN3;>nY<2#&o_uwsgo#u*u|xpzYbW&>1AN)MAP5!cXd1*CXDYEmRdI{vd^- zSzY{Xs=im0YE4$`_^ui}=0jaxp1I4Zz2nPmN)rCyzSB3b`=ySfx7#gQw=p8_kz!@MY3~r+NBv$v9TBauJPexGaR=aNsaa&Cj!A@YbAsgJPejm zXX^d=4Dh7oEV2GpfukbBR>o=J2=dG1m?+jVCGPo47<9WigYuJ6oR!8V{TYpn3pEPP zdknyd8xNPxr=6jm^ov48%jH8>t0LrP*4l6esSY2xdSmYKB?SST8$^5?=eg{HgHhLEy-_0?y{_ zuTv$evj}biyNZq{25N5NHwX!8K85?3j|)u)2bojBgZI^s!?dQy!f09wUF=Mc$&&4| z{1cnlO+4$Lx5wDfk*&iIEasMyDtp+UW^o%aY~;6$dL^WEti5T~@`<4jKU`lOCc3_= zK7()sW3yE-u;o45bcMA+t;U(~;m69skZ&vMLg7* z>q5P!pW^ha%7hvrc9j9AUvJOuw0w!z=OP_5w%yHB*d~MBa{*0LwbEkqh4Npo8Nv>g z-FIdWoBUN9&x5;z<=7Y;cq%^$At1ZtlYW2W)hzU!)IOV;Qh785kaTsCC6~}nr%vTE z9orGP@TlB{_MM@?!IT6OMm)awYjgFC2OzEj7 zaQB$W(+2Y=11Qx3p@v}1FMKuM%)z2ak^V+2{lv(rpFLWOMj@Ajh-W9bcz@b!_tf!r zsez1`22%d@kJQDQE{{gh449Be0Ing)Ufj&XrdXjUzJIv|{VklMkiQbp0GS7qv3}Z0 znr^d5uKF4muE|<8SUQS2J<@I&lH95naMUY(ved+!=lK-MoM@`KwWd^7fUKfG+&a_8 z$+lDR{b#JI5`q&S%`D}k_iQt|NAhb#3kuBGjg1V96;e3siR@C%?n&(}_nzFV#@QM~ z^>i4l%ob>otG$~VX{%&sFh0C^aB$mjSk549q@0*|Xh=?PM~iy?wRAfuFbU_HDUi0I z>kYJA`8B7Nc)5Y4dVj3hjV=ws$B+Do(xCqK)x^@-Z2I7_#At`c^Jer4`i-ynWYp1F zS=4VA+oX{QmY8nd*ju)4t#!k}U%~tJtJcc|1qNcaVGHc8uAfLYkz&S`+lQlehm4Vo zkK#QMR+!u}Pu>n5`5zvbcXMwDTYB3%eU15pLte(&)EldO8z2HK_|jUGL-hngn@y?`CSyb zjltiOT%!x-m7C$awCGHOqA0!bDD;bK9`5FKTFpj%rF5DpO0q34A#(8O@$1@yNcqly z*F0eIpK5#lSBH+#eIoTCLqjrs{jpr8tno7jZXnCw4fOp(Jhl=GG#{ynmIp^Hb8_A$ zMf|0`YO{?l6!0$D9rl2=P@|>xj7==#3iifX-@$+h{tGARL~u}@Z%s?y2JzZn>v^tV zDYLsXC6ju;X7^d=iUy`>jJ-V>+iIa-_nWIuk{vCldR5|J$Ow5;z$v;CpUPJoT6T8% zJMrTWw2I+v9rc`?k@59fn9=32F+U`?%nB;9@PJLOVzR%$A~R;1%gtE9$&3JnNjBy>{L#kE@)dE{ zX!s1|&}{s&f#La}EKfPt%(r1o+MS28wi(T75Q*^EA+@sIcA!4@E5XxYu>HRAIfzo7 zcHmYvvo}RFVC|hjsl2G?*WJJcPjdmXkLGI!dyuqT%1d z7sWSle1PM&Ij_;5o^`c%lI&c5k9rgwJ!6ZQ=9oJUKcGL2JO+9Pb7B=L^rW7Hc743u z6#IB4T?1~PcxX1A7X)ru!lcMoAZuCn;P!!CkW zUg05pAVs4m z-_@4&!OvA%&|1viJ07*=Yk0iHpjH4|XSGHuw?l=SRJ9ImD*LYb{Ld)QWAPnP0Bm)X zE?8CeZAgT=e}3M-^cok8u;9tugb$~d#s@Haqow6ki;aP1o>`f8-Z>J%-UtGTs^X*F zsLsa1y}{hWCRWRiiDb;G%!aelPmx2eypwh(1*qHJ6bIg&@R3R*02^@>YOh}*|MkBw zuVR3OM3m4(JhxC2mUcb$EexcLUW3MiZ6$_E{B3|#`v3ECPWa0g-`UB=+JqyX@2bO3 zDwwT0dCg;Wbz?L0Iv*rG^yBPLR?DC@@29KI>@1NQl}Z{!ut*$OSmZwgMNqyWg!G{o z8>9b=T>s0>|N2je2E(@#2`e*B3X?7TXVf2|U#1znl)d73MR$09l~-#pAhS?uU|{-cDJ6~``0`-$w(pDl_bA_nj$hH>Hk^(Hx6KXOeKs=4eGyU z`xioAA@^xKZ=TU^^^|N&ifP|9v&~E zuD-y0;n(rmyKOjg1SR;IhIK<(_-`XHNYmZ?Cos1V29dZ1O|6{9HfBl={|9$ae?Df^Z zDf!RHQP4Py(x ze}UC+V)@cAUC?P%WJb)~+}u1;wKdpYoC6z>%FnOmFfrO)q%pmO+5QQ9L)`PWnv;{0 z%;9`Z!Pg*EeIp~0w{YkYXy=e!`QWgy+$@pssIoGv(o~xFxG#cf`wS+B#;^&-KF5}f z0QTRC=-z$Nf8)3hAL>SUM>d1+)kkJyWK~sFSxL$FwA!s) zu7O#~FA(G}FI*8oUU1pSZ1_}0`xDQ-Wxf6jIsYrJ`t)9IM3C=xcG)u}>d|?5dD(~S z>w*B)2DQ$1@Lq(x7a4%OSJKatP-S!+%=hMnn;h5E=APHxw$0m2(T z-rmONTf;FC5#M40fP+?lOh5b9!3nCs<1}KF2YOv{aVZX^r zjTzR>?d=-oe`xc6;nRDJWPAAy0C0n?Pvk!V)<=5Ya4D~<%Brttk0!MMB&y|VnS{sY z$3A9sLIlhU)89k^5;X_35*+R4x!l42Ct(~>`Y4Tn$4F|H0j2PfXyXMfLjmP1 zyrW}aAXL_J`LUs?DY~Ynrk?|Hb(QxT8c{}HKfB+J^glkz-(m*H-UjHIZ%3N}hH$Na zL4SBHN)e92a92rOmzs%*|(UTm>v(xAsf%F2!2_v?j zZOV4u2dtME!r31{sk0%KHPMS0-+gvmT>8QIFWFf>B{V?o6$NGSz9_JNtJ)99FaDSj zFw&y$-bcMCN@qv_#?D4H*2Q1=ny~J9-nvo3o|ggEc_!lrqK_|1RUh&5wD_{AHao-*q;|+ zjhKAq^+_X`^?&*b0QvqlOm;7UOZbflm{$dcH0j^*MIZN@cP-fb?oGmDJ|Z)anQbzg z(O(R5&mi@+zxg;FoYjzpFDsz?%H<&%6&=$gb~Ed6i6iRW6-?fmP+C;#ArqC%A8f^) zgT&2szJP}4XMEZ&e>VLaCtml0f9-SJ7?oP*0Me%_0=!Y}ouA<5-_bG2#5NwCDfom@ zG?#=M>>8!W?>Z+pJIsXc=AryfZJ1M0g6)|9t>)sVwId7{yBogchH^J2G8WUAth!}W z+A_E0W)^f5lxRIlbm}dE$VdistSeH9USmByDWPC?+3(*~lI}JeOG~98Cpz={Nt1Ii zln;GNONwPXRYs#bRil`4l9DM}jhESC(R)*Eo)i{Qp#)#-f|N=ZEn+M!JFv8yrMg3~ za^>^fc8=SwlGPD50c$F9XJn`IlXq^GE34B8UiP@+h}@+5;2gzy+Dshm@kpB8CQu7$UI3448qx5iWLhLg*``vV6W|JXd0I-_ z-d#G3?hN!a=_~#)eiC!t;{-b;E%b@{J(h`#DGLgQCVl!1D}Y4uN%XTA5MM>BL>Rw& zRlJ@39(JFD^1NTFL1k3Ty|z3p`U^?Tn;BaLRQ4nZfIM4K1J0Ykr^OEE zGGVhGRD)cKPD8^w(Pj93sFQQIJ^f_n?^*zjzQTGlQ8lR~ek-k_${qx%rK~cPK|f+u zyvpQqiY4o9DFQRI^r9K1x|GV&ME&3}Na;A;uHCXwEf!|7B1xJCA=;ix!pW?73{+X< z%}~>>i5W@@dYxz5ydwEP9!Qz6^C^BRjCAo&ht- ze8nTmXNhw$(~l*Aqf#EOnjKvb_Ih6z58-J2?i8u^^k}o3Q|b5vfv@#>v50YNDgJ zoGy@0G@2baww$F31#oKwYXMasumYYE(jvBP41rqgGcyOYo#5hxi>DgFF~quQPX z)taxhZ#c3rb!BHckE<0yLESn5NZK>0MUnAZrhGooZR8*}bM}->r=4wBqypO_W7XRA zKXP`%qe>RS$L!{FmNw_bUqQNACc@hvU7Xqb@uA3;4@7fZD9_z0o>as`6}A{$g`=HY zl+t-4i{a+5?IVysN?X6;hkXBy65PC@2h`eXFVT~rI_C!^Za$nU1UC_w7pf#p9*AS+ z!L0}E>~YWA#(1-S2)Qgy#mygpjCMO}psx9<+ZnZsYo;CqPCcA+QhhU%(8;5lD6zsa z>P2RpGCEvoBQt|`4Q{rHwv>D%60}Gx)G#^g-B2j1M1Ipf;dj;cS&?+QdL{Rb{2h64 zU|lD4&dx2~WO_vbYfKmv#Z#lmkr2kK*~LvilYM?@I5%Ud$Z=IGRZ_f8kyu>5=Q!yz z>^nighkq4e&fe`J&B_PLktp6yc;|b8JE>7!0K_^I-^CV{3X^OF8ofvcc}80o;OjsU6MR60nh3|~zFltCYE(cO zDpskG=yJ?f@fb~;lY<~*VhUL`GtA|ikEU4|_eIb#0vYnl{$aH&fl;(dIiUVBbZUWe znM36^kGrAFw{HVi%gZgcQ8=}9sc*5&X72Mil}Way@R$r4Qn{R^N-{ZTN;T8AhOi}T zYX`P}(5*X@a&aYTdAdjGRB~-2998J8j0ed{VkCXB&p~!eVTz62V&2-_+9KYcE>aFs z(eEH)0Yg8XxNpYxRMNCHKf1tkY^BgaW-Ih^Q?LjKJgvh$%W&FqNQP{V7PF-$W9E%k zM~hWG^At!$wrY%JqjRMX)Awc_4!=k-8Qzl({={FBKW=qCA^h5$mxo=$@a@+ifHxvPRb|$H9^;dzGOI2Vj=onVjFf<~FD5g}c!A88FmrGIiyH>C3 z-^ebIp9^;G_gpTQkOG~!WoO`Y9xhdE78R54k9Fs7`&3wW9{iy73)*iL7ePtzd3|!$ zUhNy)x`k?F>R~D$M6sL5FyA$cQ;d1#ysFG%T6Tc+S_aP+xs8JSUSS5$!WI$g)QxPyo=P}?Y#iv`GaJjO))5URSKO0&8u|eb z0ONDR<=JjqM%7(e=;Uq}t2em4YOs3X`xP}fxW#t>R}g$LBN*yttr zJ^64KJ}vL8&qi(bTY3hT1?n}yttj`Y0(r0bnj(s&dKI}H@V?|%e}w%)+s^2uF+uh4bxubQYT69G9dN`r z-TSX!fm#5AbqJBWBXySCbj9+T6RF#Afl52=#}((>?weYy>gAN0jS1zgo4HLf$8Fja zw6C$@xa)syr_*Ow8CmTN*mP-td%N0+x*jz+-lrc4CnK@<)fZsFa7)VeFIV5!em-HQ zOT$0pAO@??&B?Z}3H28k8W17YMwt*jrDiXjONAs&CF=6~yVhNvL5@1wJ~0e19!&r{ zS&QutEDO7jE9%pwn00I`TQSmO`J-GLg6!oj-LRVzYh&Xkcl3wZ>O?aO3;) zM)vT?;1jWUgAu}A6{KP1lJo3%pkKlP@TycPK372OGg=Ow!a4*#!}$N!T^ z;%P{$NYhISZ6x;rw2s?*dElKW>BIK_u+8mp+Pys5vjXbhSxN&QYX_9h4I&U`4Y(MaNvN;jK0)!Bjeb|0*tzLdhL*(9&v zU+?~ilf*de_!Wev>=zrS9Zi|&8eIb<`LAv%(woJW8d>78`YbbVFOr3Feeq4x;(Qwf z!b8j+`nz`vnAf$>e=^RKhpqv2iHQ0yeE~v#8-Vh6ZW9%0n%r?C4dL}>9C02Dw>ayO za4n+W=C#JaZ?f%57K8it{^1zpEH0BFSd^<$xt$9%#&GR}C9VSF3ruslA5dYXDDb0U8#dE z_U}P(DswWYE_nU@SyUWx#e8n~K+`ntMw`Nke25L*9J8!u$AN26|b=Py*Ie6dgyF_der^NA_G256H}k zo^K(c(Aaypn#eXWk*9Tr>)}GLF8LIs5>n7YLPITU=SJyt1zN;JRa|$HqOUx<9Wjr+usjhD@yxWc z(q7jkP*DCeB z7HOAW5+BYf^9g~aOcdX)lGGv>Eh`?)QbH{ad_@qqQKNab@Sktc2 z3;=DloWUC4jtkJmp8!YcP1dDa-1$_V_6{;Tk9R*KgRYxc_Z-TV>_;7 zksb?(SC1Ve##Yp4;Q0eqxdf0-hNO%r^y?d5ttk|Y?Lx&D9-4faAE;wP{e6)I_A40A z`qR^DR42;Q<*23;!KSap5P)*Q0Rl#boCTZAAQGLzc2PZO9Vdk-+Us~>y#}36L zsOMP|me(q4Qu?9sr^Zu5qxtb?6*Vp2?dyvMY^&)6{R6G^OH9{epw@W3#A)vCV}o`} zNtnbp{0?ty$F4b?Y!k8c2kzeIl?=o*2dvxgBs3vXQQjIpH6RD^xSrb9_3nV?Jh-sq zvwId30|`ZxWrUykAD`>`V-Z70OFltbS-pkybU#}d>QwF;gWwMN`&TWefn4of6Hqw( zn||fk&eb-kQGFFRdAkdELV%zArh);3f2sosxc?%gI{!KT%_SJTKNkWvzl~wg(b4^| z+Lvi@KgA`g3*NHX!p@i3bR-%Yo?)F941qyeVH(&Uw#qBw1O4I!VH7~ymQA`+H;drO z5NBP~@kCDv_kEZD*oJ}&3EBpL<5*4#-B%mE}#!b}l-DRTabl}J&!*j|TA3rS} zQGfhPQ-sbz%!KE9Qz^&&xNl$N>~(h>?XrCfCgvunv^gp}SWGT+=!2!bB=aUKIQ(K6 z1>@_Rs2F?OkxH4_dx!7kVnx>6F*#o*9IaDblVg&Sy8;ayvr}svf^CK0=y$WR_qDE~ZmyHlN zb@$1zS~Wk#aD{jENzD6}aieuAgtSU;HovCb%V_5I7OmvAZ?|ryU|^+fH^ia18hfR7 zFu0G@nq6j(<0;31a9Kp-F;wVCND(8q&v- zd8(cbqsBgcivoC%Z)W?nY;KM3~xFB3UMnVUJvA`AQ?JtzNaYE;hW_53U*uQi^ z*YcsSST#V3l(+pQFBjNNhj{d{zwxsP!-u9h`$}vYXCk1%DQ^n>2tS|F=gQ*`{fEz& zg+j3Qk17#1@yRfY@W>Sa(c>_sW*)l7e;{JzMfT=HO7KeFR;1UU}aZ_=mYv`SUuY!Pm+| zptL$Ob&}b4`K>j>T+Gday{%u%t`?(h(zyEiM(+)@RAT3v(~1yld<$|vtY2J5HD;Om{CU+Xh*|B3uUYPh7pJ444(;H;y$*X4-n12W;ANN}Z)VbouT zp;2qief4DTgI=A~1fZ}h#E>s;_TnY-uE=X;!YUm#$Q1ALv& zgH5N{?d`ovBQqfGwUJ@c<5yInm7E)sCv*?`abE+UBqX#{gdVVH>!@-d?p<=Wi>k+OTmkp;f@U?8Wb0+7!F03#Hy0MwM=G~YHn0!G z)~+2toW`Q8ruL(|TcOr`|2W6R*LvCiB@;-&W|*DN@4=%rXeqNmiC0LADY)2HkPn2q z%^&wqWwdY!B5scx&lw=lahYsP#X*8HXyGYU5%E=b8~KQmA*HC;`ct_lO=!wkelI`D zZ;lWSNF|2%V3rIBH8;RjaAe0muH8;BY+Lv~mh|Aa^*Av=w-4%q(ME2t7~wF`i7P5q zsV)UlwcC#@w+JIf9M--dAVjJvbJgf}!Rl2zy16CfAw0c&qELv$lq#Ce<1oX;LK@<$ z)g!}|buez6tzJ&OH2``k0XR8} z2LOo2DXS(o&(=q-#(0@51pL#^E&r}{0Vlh#y*{qO>i#-O$elEMevsH`XQ9z%AZliY zHW7n|a|Ra2Cm6N*-#_Y}&i3to-UkH7(A@&XCa0e0964NeH{=+%_QXl24~9EfvVU3K z;JMf>S~q0mPD&{Gcr&w$=6bEuU zmlvDzti-2xo+$;NNXDiwND7^p^c1M$i2Fpbc@XWqZ0)syyh0z}=B%RKPES!?U;aU{ z6|EZiQC|06_3*n4z$`)NCgS3DbMGsfyv6>M2j|GhS?O%(PZXW9S}*@3oemAWgNxrg zklhx<)I%{rLN5+&l3s4*rRiL6m%lk;W=V6%h9P9`UQ0-t3}#98@D&zKGaGSS7iaHT z%B*NG`{VsqQ@AiEeDHGf*8I7pqcZ8E${qFlP*Nd0FmK;2Bt@7iRJ2h+^}YNT&g}k= zhT5HlKz+#k-1nOiBf{oJjX!_dQ2p(@Ho{K(fJs$2ZF-@7{CIxhx1HQu_8EL*!BA&X zfoGE$0)>?Dw6l-&&LYf1EtGV0x}>&V(GL?-S_rl=%~Y$d>8GNz?UZ5zB9052v;|y8 zp`d#;OZ!0NX#`LpO1|S&pxIsRB@GlCSxj%z5VqO@pg1A;B}v4mIWSCp-rFJ7wsB?R zXx!kX38;qFo2JWj(eeYD6*fwj`zC6GGlsIUMvqp@QrWN1^Jep`{_U5$LXhx9sc$$f z&8Pbd?FqGZB3e422)!A|GA&A+^hYj$Ph^a z*C!Ia&|~oDVvAp~=sJ%y(cD6~%!r}Obxq`gxq%SNY*~dlx)s+a7M(@@68fuJXBM$* znJ3mS!jY(jmq@Vt`s;H7xEQnN6*j@V?8+0zQYr=Fu5F+3U`@&3CPPCdLg!EUGL2eK z6f}M;?sAg4e5$DRxhSkQ^rEt{c0OJhx-i^EF<+@gMnz2?JMX_h6Y-(GpyY-oaY>WuF`E-l@+SDU396#Qt5N{d%PLa zYv!<4rA8*4$|My*P5&s0Y~bv3Z()BhxelXa+Z7c1XF2>k4<8E?F6>Or>sLfPx0KoY zKD=m`8Tu$}$C6a0frAhTK;3)vAXxZZzUK9Ypmx z7OXt`c}^u=p>^-iQ)NaGEL#q>03NsMMNWd)AcAT$;mbHDBn)AVtcMJt8WP4X zzRu-RbJiaxjJyo0tGPD51V(ShthliiCM5_lIdKXs39!!9T5Hpu?86UtrYHooL@6d- zD}}a_*Akm1Vbqdldj?2}@hM@5?p?ihA{omU&6UTQMwtD}hSIWxWF$-Q6e>KBmxb=z33CPr_G=Xsg}^OHN8fIteaPaS0(hOd7|Sc-@n#`ozSouSOxpYU9t$U$obuFkl_Q0or^y1HXtM#=ztE;S zy7e&GZxT3={3AJ|ZxuWjWm{-5bfP^zu#@Sl-|6kO7pqlesCIGFoOVZtfZVr=G^Il| z1AN)tqZEjzLsXt+6{f~$mDqCAEJ@feY5_tP;i_`4~t!s6L8RJoDC{fV&c z4<;7f!lioL!*?j#NI(*S`6(9=>~KY@5|a3rbo+Co6ADPM*4kXN(SNK{Abfn$E<08L z#6x04M5eF-aYy}+xEt_TR%;9YN8nu>vfpL^g^HJ3-0?o5F3}4J=-OacB@hGo4|Z_V zQ*?UkeEgS6IT3-*4Y-0&Zp=lG1HAO9y%h@03mSzrb@P~xw}=LY51FhJOR^skK&^(P z@-#&5$vvhNNNfS0C5C8glC?@HIEP+4(NLC;A`jw|)%Wv2-i`Mj`n9 z7tE9rhINcqp2~C^p)_sl)u6Md*3xKd)u+1m!|JbwNouE|aMfz@2y|4mIuGkKtTr>d z?bi#9lmCiJrQQa8ofudGLJiyL3VU-L_Qy2vUl8kyrjaG0kr%{)Dy_BAB-2XcJ7Y3d zE3FL+cIMfkq&ECr6Q_ab$070+G&bB44XT}?bBORFpn|Z|b|UfXL#+=g#TkKBEVZGr z!>ORFrHa}mQZWHl$Zc{TQy?{dst;9@J5NX2;a zTVFv0+4+jpHXd?!EMmXK+d*4gJ{}5XnhF#G8a2Wx6`fayvk~84HMS-st8}SqzsrMz zE%)w4Q_-&)m}J!!B+)d8bnDE?zdayhYUnm*_nr!xMUdk0wuN1d8#ydv)e)^ri+;Si zbKlqCYjOQ<-QV_+IM9WE*>j~pdHS8EAp2k#gb15T#$vh91RmM-+=fdetgWY$NjT%# zdTKcR2a*mr@FsYUpAiyTS(aJ3aCjg&5{cV6h6ya;HbC)${^IaN+^S!hVA>n>bjaP( z`M4%0T&;K|dW%Q;{^RGJV2t^y@TKwZrgDQk-=Jz9-4;zeS`40ZqG3+zWdfCUkbO*^ zycBjAq3p341|{R;OWEGvvK$tD_$v)Vs&-B2a49VKnu^{vrC5O2j}EGQUmWb?j3b_Q zjr$JUs>OC8_B{YU9 z%;=EIU!enneWA5b9UVVJ@aC@UsOGmZxf2xH8>Yy>ONPF~02PSSy^IXzVu8THNBrg! zU37^@{2bn7i69vfL-Pr6e008k-7a=OB$gmiQ21^#hz^sqZg+Ic?t?{3%pDPl8l^Yt zyz^kLS;n5&4RPJBq+b?3p29~-G+tg8Pu0x4`;|8Dbs+m(NLdnX`xClk{2E$K)1T0! z3ZJh!+7kO}-k#l;N2ng>_FLU@{Z3=#da-t`M=SkmOF5BCGZ`M@z|k&?il(f(@)ryS z8QSSp;4*{B44t}5;_unJ;Vq>atY+o~;f;!nZrY}UxV1l3P{a&L^^bcpF5}9_ulARl zvrsF8k?NY*nZk|y7zS_+vo4rz3&OS6WbhDv*?XTY-#Y2VASJ>7M%kY<`ReAF^d30^ z#^PQQl{lk!X=)B%gRk><3AxvxIiyQ)-~rkL13p ze)IxZd=&JTTa%v_`n%%CZFEUA9XaU)fvr|ng9G+i_Gvx>3HtHDDAK(k%dxK=%}$BQ z>hhu=RB{B0@7~9nZPtg_eY(N`se+(2CE34Wj_-jhVm@3o)opXHiIdxPPw4P6*^^C& zD_&)2yyvBo4XY@BovJ3&*e@sp9p?(b+mS4fjaU>6EGNSm4}`RryIFj73)J=X+x5(n zb_p54qZ%@DlG4)BDrqw9sYhQdRmmIfqm3RxYS}HPph8+#0*R}H<;GTHL`LCNY>nRLB4cY4*$Cb?r)xAhWl(Qy4*!ig2|`mwdJ#Vjz6$si68}X_-!~^pxpmnZ1f@V`S3ZF(qe#8vP98APoV0a-!t} z$487@A8$uCA;CIr^^_K{ssn?5Y-!D?O|g@E!FOyW>ih^&DL(_$Mpm6UQ+;~<>_4KX zmBVosx3KRA;k<-H^q3yL9KZwhJtmDyJpO1Wvr+cJRziIl0E%nZQXcefHGLXmKfx6< z#7|u;9EK_f87D-NUXWcm`AVDz1dvNptKnjA3pk1F(VAQzbZndEG?Ay@-NV!wJp4wY zs$)tW%Tn2EB1jaB`F@D2F@zrV&Pk-ZSVm(jx(O3xUI6jC^Yf}-d4FG=Q2O3R7H@pm z)qai#w}!GP3=A?BtxHf84$=i5>q;RL5kI-f+S&T|CD({Xr*PF?(F@tJuN->p;@r?0 zzK(8jUhY-G#c-Z}=So+ieJD%Zfe?6?j%r4N5#H)#;6lIWI>m-U2zSTAWo6|Fzk z3`~%zV2R>YlgGJm3_gZj6P9!20X-3H0(riYz#lt7HygpS55@EoCtx!kbxF@EgV5$* z1TX}gMQVxM&|r!7(_UxVj){fFs($^xDYb^wNKzo`o6HbZhJ!I_ft;iOO;BpP$nX^Z zEZ{1C*_;my9;i&yA#t7)!dkV^pzd}>#EG1(zm34Jk5eZd*q^zso&K=W-Y2U4>D7TIv#mp4d>Oc7nke)$&56{!_L_d1koo?+yxM0g4$=JtU&I2q z2P{9n4}h(aIyr`78n%8?v&m=D$7oB~x!XBs91%bTu=Whh>FOM`StRKmB<*a5k){N> z@Lt?DiTclbkDc;zMQYPWVf5qe%_9@CZ*mQyx!g8xgmc5P_$A22NMWKAJ1+_S9FR-S zAwfB@1>Ki>p)?w&x!@EDH6sypNXe@^VZ5v(e#8^Nav98(xFK%U12pzhOVknn@8KLy zCxFAjsvG7LYANVLxy~u8=;jj)BaR8Y(2*VML%D^IFX(^}P)i{9j%%W#j5nW%>30jn+qTNa>LY|2K%vvy#%;(y!09FIL)%G!c!;qdTybSS*A-;R^}kk^nG9~@vw^J1GIX@NEc0d^e8ses z9L2FfJe;m6F$B{{WnYJC;TfI2J>nvBf}u32R8gRzeh)?1ap2*AYTMi*zMF_P$#I0e zITen<*3f+M06QfZtF_#~AFBu4(R!^FaA9&d%<`6(ULEo4)g%Rt_gZ!2 zt#<`$9r;~Y$Wz$}G9%p$u!QOT5;E=#2oIwg4N=>%?96L-|#$G@Iy)Kot z7dSDQ&EH||X3*h%iyOj8n;YFU7XPWZkx&W^4YzKP?Sn1>vf+ zU}3c*I+jDUU{$vt6Imn|iln2L!X194h15MrMe&orP9c`jt>DD2&N`fka+UQ;3~V$O zw0qvUrE&V(4K5YZ%r%wF?i0D=fe3iX&V07MQF!&9`I6sKY(`p|;#R!86w zuTz@3UErzHSQGO1^XQ=AbhZiH{?wdU*m2F&SR|E^w7&7q@`FL>$czMX&NM6JdF$(~ z!UHPBEn8vSKU?a!u?@@d@KSHgQ8#-4Lom#>VPDixqMARg3Q4$BjF2}M)Xs@ z!gH3RP(C?^L;GE3X;KFb*39M#jKbm)j-5FaP+ho!E_z61cL5S7JGWYyg zf*#KpGgVMk4x(o`wL>h9n80HR9|q1a(Ra}K{&uy3-C~$ltv9|-Fy$0bzM)~P2G*CJ z1Ws&})G7^;q)50|f1AE#a#>Lki})$I=E~NJ6`;VXV}Ld|OBfCV9PAdINMB7NNLOF* zdy=JZDauUA!-+dwVFoy*JknN3$Q`+m_tbMm`w*z9jYXwUHFi1^d}Z-OZ>jO^8Xr+8 z#Z&q$b4|7Y{Tu=Z-F?i8IMh8@veZY2883C$tzmlB(x(~`x0l$R-TYymGm97P#-k4b zA?$%OY%iZes#aO(MIY5K-DPOflsAlAc5ZvTe|dhbDG*I)4UBIgoH0JtPVtSJF3ht2 zqr^>Dj;H?OBn7-M1n-HnIDF03anI5WEFwoYeAs6kkf{m&q?^>0t@hx;FOs5r9g6hj zBX(@cAPLdjXdk0Uo_R!9Q)df6rL8Hy zIji`O&`BUVYk*JQXF^HdWM{k?y_Yy4iv}i}vHNd)B>8L?75``Mi$RQaD7Wl{4 zVloX-q3-}M7wt6_WeO|NkQBY7Y3=>i9#y3O8 z0nOAH)%@}kx9ksrPOR2u8N44M7nX7n3_6k7QY{-0uboJUw#MX(x7 zHYg|tE2=j0)L@0&wZ~fF86$(KRO;2%vO6$O_3}0%l?b)y7qsTD4_uGog_diWVNHTV zXuV>H=LxN+=(~0W+>WgIoOe*;qvI(gzCsNvnoiQbgLg$)3XB&#H^Zv?q%>eaM*l2x zYz=crEG!h-(gBZ%XcFC1=o*GC`0&GcJlkOOxmzbkfRc&=u$5Z{+;br&@;b2ovU^DW zqD8{Hv8?_!dIuE4?x+Db3&Ro-(I*)ERLuE}5J##>{nuhU?Qf|)R9rDhh*Nm$T%2o2 z3v$eA^JNSJ1wAV@JBelnPZd!L>+yKS9u>h*ITDxvR=~ZwZ)u*srSp1uKy7SuFwx4` z!lEmc8hLp@B;)B+ga~%(T^$nVwQeRI7Y8x3{J9V(4kX$D$WZR0TKGhrW0lSe|SjIRIxARNSX^cK$xt zlqJPIu-&UzeI4yr1=^u6Zn)C5`x;F-2h^wE091quFxFCAgY-Vpc5 zCW1=eDQ1@?R1W20$z73qkMq4uCV=QJmc?$e?GZDOF#!%;!Fw<@pP=wYUBLqotXr21 z*7zfS#~w~V?G*%dWgmMT%~TQ9Z0zqN0F;X__X~DWr_}^H?^X!jCmknwlKGTkm?I{4P-9$cE;r z_cVSt8^8w+KqI5fOND}?z5EiptMluGKJ|CBO(&R^d5sv2lvdUbUoteaFkeP=uqWN5jiA9=rR;2@R#08ZwCL>S0I^m#{$jRK%Vp zM-mV3UW9W_9{2|MZ0}gYGV8*YmSr%Q)a{sXAXW3{1lfQX6fCAX`)4fB8G(G}pERa# zQ`Nxvjuj0JG>@zqMa|=C7$9g*30lE3h-;r-i%~!d4pI~N7I9E(A(NB~310Z3uZBVR zeEd_aFb0;QNyDVMzz6(Tc|Zks4WfV7(CR@4LotC&km7M|*3bKhknX;#(`pJH0|0B2 zuaC&l*C`cEi@lXY--7g*S>_O&>q;?gOBk-Q0pg-jK;{_FgEW`3H=CC@0%l&ULGc;bTm?-0I}dH zq@%CmxB%BvwBVhCym4~J45@gv`eG@(GC0J!$}QJULLw$894ap1MKJ^5`NLe{20ny( z{J}4P`#Aci9*0khjqUfE3;>BfW`mci;Nv{&+njtQgKeM$0@VAGgb2ta(T?sooDDAa zmACBaoxSyxRlDjEeyupvtV+gQB)AWw*N!B|4v@uVBZ$T4`7^1JAuo$)GjZUfZ@euyykhE^MV zx$Ju~=}9A?4vJWQXqpuMGK0$JdO!;e4IOQwDU+Fvfqg|F9jA}bbQg_O*>uJ zC1c#2iojV;tZZ-LXe5jF0o%R~K0ma&pTelCWt1LZM$*g5b_Eor0~}vx@R-N{;}f{x zg)lV;z@;Ic*uvX=i8wZtq;f-N9s8ns9JU5&s!i8-(n6c9zK=(uW6{|KV9`}ydesdN zjij&WOF^e9s~VU+T%D*EMHC>0q;A9bt!N)YO<>^2sPZE$TaqV!dc1jU!bDs_k{xHq zP9P7G#6Yew>ae`M5{unHe4vbrh*-05-n}uYZgx83Gem0*lSNF#VW?FFq^!$6`C#%u z>MudJBf`$U~)5Q%bU?F%|xgIN-y$rxKk?R7WceQ6UPXRb0-6T7swn5-shu0 z@wv~lpfe7~5dDhVG_2IN^J9bWR-di*4-6mB^ZQ*w=_TZKMc8O7IP@qfu9C*Q|4lx% zKtB}bePYo}(>dQwD_2C)9z}Aqhvg9!AVn7BR#cl)E^;eYKvY6rCJbNqi7g7?lK4?a zNl~=WY=W>q?Mymta1QEK6WU*14O`8z|I8_Qju*cYwRopt-WhNJj}|tz7QI=l8xlvN8scOulFZGEJ{^9zTqs^2`vK6sltaSw9~EyDlklg$O}N zkYvJ}u2;SQbk^xsO+qBG@Sy2|Cp!o{4hr!*+h*1NGxMzTx8a8*+GUEHD*S1@y*b&D zXckaxNR>|3pq=kD%V=a;Q7&ZK{ktXxr@L)6!Ta_I(x-L{c}hMumx-kG#K6k;jJGUF zmXmvwkUP6srAz9254(Ncv1{HZU+H19m__SD%s&ld~JP+Sj_odwxLu}}oPea?6eU$c`ow?_RTJpt|bNN&KW%wt# zS9XgDR8^SNOB&BM{*=~*bO0bAP9JFL3gG6QkGfv(S(;kh%2tSC0XU5rK*C!81*j1L zzV^N1Ajg}N4R;z2cns1v#P?QF0;G$vf^RN7jkogFvqdG7;oB2*7u6iB(voPK4pFnZ z928z_lF$@liiks)45O(e9T+AQopPv^lPQvD?~%UHFWBQ~7dzqhI3>X{dS~d+hv_Nj zW>n+HaiXANmJ$8)cpQA0va2o79Q$3!7bM!no(rK`@- zK&ULyVAw=K3&%te<|8C$b@Oq&WlxD4jMR;RZ(>Ri&vXY!$#nKx{)$5u;(=mY>luK2 z3SaL@?jv}1{|8}J!cm5=mFYY~9uIc~R ze0wkv;$wA;;upj#$)I3~j4wIhub8$rTreM?hiF)I71zw67_y8kpP-aJ(uhLFYnu=J z4x6GL9sR(*AwfrPWT@7F{%mbTl(}c}<;&O*f$R}F1m3h-Dm2u%dWw|HRp$eMsRija z$eU{5Tz!`u#7Us8GaDc)zr^0IBf`HDi7`iVDGr91K#3%!WLW@gjD%WFZ#R3jQ6Q?~ z_d<-w!!!KI#8?2wC_kD3R-cZS{oJw`Ig+soX!42er+Z)S2@ccf5R&_qo?U{xFBpKi zi2l4UxFO^)I+9N2q=_L>ttYwI=1ph4lAeKw1MXq*#(%26La~47sNk8jD_Rc~#Q|?F z8e=H#2R`mR-JC=lSFho^RhBy)UKFB(&@oLk?qJch;6*jzk(==2pb?SJrLNX;>L0h6 zTI~CpGIlx4U~aR9Mml`I4Z}0aeiM@jsTs{73&UR3e=-ren`iQ1zfy@Q@4hAXDx>{I zckcEG#J-Pf%c*xGNY_*gzA;Xyb~`^Co-ITpFacHBMBm9tifOpV;87uT`p(G4X5loW z7>-~o8qmUcqY)`wb>7Uwx|u=~h7JZ=0hWVniA#e02|n`&$d)vr+TBAWs--nla^!Oh ze4vYH_lA8!$DUDMbx7p713S^y)Da|@8j|cqcNhS;Q|xSA(#|2~LbR>6h!cw+&1-u3 z)IF%Z1H`fA!Qjnvq`PZuE1@V$-4+owy4M27CsKs-s~~SE+DMye@WKJp(&{bdoC@~Y z6;HU+G4`M0@()5ZA=ZD}NhX;`5bA#nA$tzKp&}A`lr8m!itu4U+ z6@bHpa1N;EomGdpoHhZ34Z8(r-g)j8;mx?{F-&*7e^mO3V{f2wjqQeWZ*N|=+pCBEy~k;VyK6A6M!!iMT_{8Kr&ELbZ z!voMppX$8eFsDODRZB3;Yo?{Y%|SOZ>sgmAolE_> z4E9qyf_f7wl~_9Crp3}nu+B_+XTB~7C-xuRsE2WeU;IMoRt@K%CSD9F@y

usJ<*1a=E=OWFZPD>U; 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 Kl(avT{-z$%Hp#?7Rj@(M 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�fVsrqwbOPZ>}^qjvh7~MnRbXN4?Eu44P-}g~MduW*v&`6uiJ9wCH zcXa76WsxHT5IfLul%CUlaoXP;FOJ`BMD?9Xo(h>cs2x_aA_m&%xy@;3`|C7G&5nyp zTplzEZ? ze$E_p=LmUm);{2X@m1IlT0tWk_zvrjNc6DFn|sdnRY={NRos}ljJHu?ZNeR271N%k zNqTOaE8wXPXDxLuebFk;r0vAyG;Y{OR0U=kiZqyWZFp5^nlGfbcExPXQdt=^PP@(8 z$7y!xjE_0Cst-AixXDCx?GB3vv${>=;t@kz0HH~duEz4xlNo+qRG8hreq=? zDXJjiwS8f!@ zfl`ve+y>ab+P}1pVAC?bG|`*J2*2_3$JT2i$eIy=Mq=qUZa0i$co=SOybBX_M{V1! zEJtI}=f2DI-JdxYV-4DX56i%b5@BWnz$tyt)q72PvH{~pw zOTmKWu$nzWr?Ck*j3gT-6N3q~nR5&yj&k<{-7Xr9r|Vt`BF zzU`zQVF6^wlsR9}gi|w$x=o3Fi!ZHrubRq&5lN0sw#5f}=qYyNuj_%6Aku>gzGYBU zcg=Pfd?}}>$kUVnt8vO9jCvh^G}NmZIB#3gQ5AG2BcOr$Xg+f6nGQmeiZsadDo$Oc z#Q1~WYXl@NfdPtwbWYdSs`v!V z3Qx74+0@BeZuUjZ6jT!I&am7e(|ob8s?O~~^3fucwy;}7rq`MQrP+h@=gup=XXXCd znK5b1{T(e&XH0XU)tA>T&lq71m2t&PF4^M|%xCDIwjZ=Sy6bz;m7!V8ej?y%%Y1=y zt@3rer}3hI6{tIDrkwuuR&5LO*91U}6PZ8S%@=$drwZN!GgB znKifdB$P^wOiSv?GtI9Lw_|F(eIbnxF+JLlAM-BC-{(#r@J^U=vYtWbcHj*HQz}H%l?zif~$+ftJ0k%xCUs*El&r6A{`kuBFrmC)O z*q?`4__ew%4L^wlneyGU1pd1Jo~M}-<}ZbZ^X{GeCk0IKR$JR5N1QLHv?IXk{S7o~ zaghdr`hEX)=GNjSw)kngbeu#Vk~_DkFzVeF(K>Bsl!acMMhXfX*L-5-PU$f-^Q2|` z$apYOtk{v2(*L3A%dP)t#hVxs!8gRh%_D_);Xl%x?03jCANYI-y@5>mVAHjb%Etb6V*whp~%WAxe-Z#Mi zbl`0-cesu|ri;1T5dA2zW2+7d`H89pskAK1>8WA@1S9bP)4DZz$K#SjYa=+ zjc)jy&;nPm3l(Na+4Vi~;VlO-N;*0jpdQ7Rm)EJ05ErU}5nslu#n=7cl>+Z%a=o$l z+iUqTktwycH^**-9Hxwd-044C~>{OcE=ZTaiP|05lL_6x@zFpU9NFC1pj zJQT?7gyjCK6@Gmk=L7KW67H%`?@N&I4*z-IKabJH5m{Tfr9#g0BMrYjxqpc2uMPdn zcHYEjrM&42Qic)SzpZ??@9poO{(iR`H;I6!e|tyJE?)v~-Cr$#`{%X)dJM;l>(k`9 z^PkiFpIrrB;rkun>1>p34)|Mq4)v!jkN-&LufHI2|JRwx|MT#iVp zYr9Ck4S0+bw7mbTGOlHrT9Fa}#4z;$B#gOSR%1P8qfA4uzS(CeYUM@)%s(AK=BPpb zx$Vr8bkBp2$AVKNzMw(+KF@z$1D~#Yl!)Av$mB;8PBTiMAN*Eke?IsLf@Y+$#$nWo zu|831{5@7(at%n;KUw-28VwL9?7qSP*FWj_@2&cC+IwWc1sQE3EP<<~Q_=kU12Z^* zG8yf6h;%7|420wS_nTTZj$gKBYE=F2lNgPu5@xhJv_ED5dmv-#>jh=xV3P z&2Rs?|G%$fAUj~CzBbKGIDPGp!2SKxUmo*t%Ae=qDSplX!~ zwRfg8B-ebv?T=Np|E-Q=L{jk~DNcQSQHhC+?(XgfKo@?pp48fp-v5Uci#!3&Olj)M>f$vC9jpihaX6XlHv%Rt3fc0X%`(f6n zPv7e@?%lih`7W6}>5%D<_jiCc|LbP@x0zStR{*ix5qlh4WpjL*o zi%S(Sz9yl;Vy>|PAcP%Wj%PPuQvFhE00()I7Xz)=E@k=ls@@E7k( zOa1$teW~r0u)q)hI=TCmLaI4wqD274GJ3AW@PjANR1%BK%e(7qo5xrdg7weKjDwL5 zT=>07K9Ab#({#Y2!T#4ra`}A{2q9`-jOfzXz995=A&1z1t_a5f@P=B)y)~UH0W~Tc zg8b(Pl%jzTjL^>BFg7N}xZy|ruRAEhiXRB5SvAY|1hH|l8ArvRvLuj1gvn4;P_T)C zVdBd$*ez|1B_guYFD*`M?Fa?`ilg z$t_?0aqNNOz(#+rUnjo%`F_g!zYPH!@O}H6jA6;ZNi6l6t^Z?cb-*KBQhBuCIPMcarH@c2@prvw-1f`I2TQI;NGt-D081q-`fwbXw)+ zf0YbQ)3xf@h1F^CA<21SemQ8L9DyK~$xH(4&n=qw2gIKzhI-;|i^$1SMT)1gNjW^x zUy|cG!k?w^by>vLNc~9Vo26gnJOsi&BW3`De~ToQ-9k~g+=Z8$r82u)kU6q z?I(25x0l*gJ$vg;fZJGeGzO;=ZW_p`&sHcSGwTj!5VG@cGMn;x=G5I!m2);d7~b(c z?zYKFn);DD2V6#Ny*qA3caPK zCVv)TUxNEj|Gw%!{{5Zh6u|AFkq*26%8cj{Az|mVU6W0^)J32nrROrc-hO@7m#of3 zdASvzaM0JcpUygu=*pFy28jm9Tx<#|yb7P^YASA+IdjG=Uv+oW zQt_!H+0*H|LBx*>v|h$CjMzP4Ow^(_HB~8bkbJ49W24^_!w8Md%97Cf_Eg%oem{{( zuWPvzTh7u_)=vnYe)Y+Et}#c{92xpE70V8}fL={if%|CQoW90D941X4A#YEoki4LJ{Kc z6Gu~ocd-(beTU~UTU*`pfa(+ev3!1ipI|nA(Px}wWYo9szKvB#)lT-T@C7mL0oA%} zvsEDmilXz5WoDF{Q>)d`v%)Xdz0*uYP;U#NSIAY!^W)tb#t%Ax?%DpfSefVUa_( zzc~JE&-_v{qW3L9wOqQZ@PqC1amb--byxG_;1oHkzgc}8I2tu0;z_w6W?Woc5|oaP z?(wW*nH@l7}xZTK%6{WhJs z>bE!;5#Q$DW6{#kwD``v`df%5QbP!NnZ(6t9vDAG8#X`#K>+?{8n?es2WMd+F1ALC z2*k10)9tM8ZZhORDI8?0sv;KU>3N2Vib^mNt2W0V!uzx1K&)mB?721G0tFCS^@pXc z06s!Yd7#=u4~483W0$-WPTn|Me3eiN$2-66YU^E}1OkZpN$kvwZX$=VKf$9%vf&`G z$wY~vKe1T&#w_pSr0V$0y2o_D|Iw=tlI09#GM23kXu7KlA}HeIqswla!tO~Sz*?lE zcC^d|wUbtGNcRWRhud7Q_)XvFP^q|djR!Y!_io65*QXn+$zkq+6}CgN&xW3vXu@ne zC*x=i$NJ;lHy@#qDGaHSb(N&GtLGY&8;AB7Q1E*8GkPgR{d^!uMF%l^Obym{<-EvY zIgv#Y?i`1yYiKa-_MQ!Rfbw20UAAOR4#H(E^TVQE>p?qV+bSg%U$&CY8n<+i<^5ct z=qZ#B>h5!y%7iA%t==xvehQSvVF(mTrAq8D1>Opi&4~xu8D{4O- z4LR6`dl?GesZ!#d=oE-~8b?!Hb;k94JXYY!BX6##j*AQu#|_(8(a@zt#rH<_Qh*u1 zxYxiMGw$E+Bw?jfl-5>nBKVMl59#ih<%HQ;Cysv0b-2{4q1BzhsLJt8N0# zZvA0ufmS))YXdVwUJy9xxs8eYO+G1r0O|=a;woOR&e3#z$k{*q8AfbaxuE-unLA?O zZTm=_337}tBS|yY<0Kc|^hJJ4R&K=$g^RTi%p-!oD^vFCjL4kF7T>5Du{97{fSye_ zNn9t-Wn^W!s(|XokF>oqy zd`(^Ws%dd5a&8Ohkcu6)<8g<^zCBEI4mpDRb@PfqjnYaT!AGTfh!Q z5+B%sS#*SxadNw29-NG0=EcXb)Im?hf~tz60qy;D;5oEcOv`aM4|ecc44W_sao)sE zSK4S+JpQs?&*gH@V3_@jq{sTjgj)0*|N5Oy!F3gx7YavVd5O2_+R6}$Ip_p7Syfw4 z^me_6@yaU>*NxMyJ>kle2c6}}JU%4U;$!ajR{13GbNhrRJYKgeYfe`O9aj^@Z>x9i z%%YaFlhb04HmgrZn)aFtrACz1)TlYl*dl?X`jTof1JK(YF>UJs%c(bR*ElGK`d!*K z9`;==pTdQY)^ixD28@Bi^w4KXd}SIR&b;|0Ah91!;hnI{QWR1Ab-?&!&&Ls-N~DpX zh|b2y7#jeBs5YY5zLjh}Vn%d5VMYti4yHGto<68fuAdIKLg~}MUC3;JQEsE$WpC_W zQ-w_Lo1_2N!BTR)j(g7auS>|PTYQb=rGUr`3fuzhFZmq9ZL{ARQ3R-Vi~v!uzJA(u z)cbh0&b9am>$vdXuwOX%XLDh%T5^WYrROTe7qeuL%4>J4S2phZ6D3xeqJ#PJuAP=i zrU%-tZE{O1?~a-_6^YrUU4^^Oo39q{Er}ToM_?2iEbY(lwY_IwiOnlcMi%Q`MA0(P zcNbmMnf8WNmRa<_u}Fxb|G@t+0&%vU9SVWFoeVc=5I31-K5`s&&~)oYy#n!XXuS_o z5)1DR12OlKKIinB;;}NT4_y1$mtj?|nzz!q(8=!AcGE?Vx4j^ECpIoe-=;S1(N=u@ zN;xg`LWM@*#V%i~Tl_1|{pWJ$dqu8pN8W?E{T!>hV5^DG;my7Ig^i6c-sg=Mfdsbt zE8EFawdLdoJmCQW??ah?72l>xMOBh2W9b9ZsE_aj*|*29Q0)5sq_DmwQ|k=rPT1qm zAW1I5-6?9x=`k6V=$GBhGF8jPdMt96yo=Q!Y9C+FR1v%--NTPCKfO`GrT@HVx*cGI z!8$HJQ4gvrik9*UM?zo|)o-&|uAuNq`5xsOgcnki=EdMG)9AVrX_+!KN%^~}%dE#l zgB5j%n=-ajQz3(&ys*n3fjjkhN8JcG2*=uehKxGhS0Sj1sdk|KULs7``yGk2A71dI zLJkn$NQ-p7hP?b~qt~h9m=?55(1U!h&kPvx`o6iDx*NZp-(sSq@$Kg7sjcO#^EenF zRgJ;IuXX8-`iO7GF?QXxU(brH}%W$kpB0^=|0bJ;%3O1HqEUpDZEBO}OdC!MdYbHO-3uLKCN{YlBB| z!KD7>`$+JO!W!1*0lu_wL^nbL9K=tyMu=maW1`r z?AFEJEBuq1CH*;}SDkX2g6tM?FKA;1S|%BiIP|bjr>|%$of(cEGaeQTtI0aL^0K%2 zYBJ758T)B;?lV>^rhxdznl8;IpRW+sG0k%@Hsn?CU167w zUWJT+AZaxTqnu=0{%O2Sa#Mw-EAO=ZEyM9sidmqC25+OYokG~$FD}on)%bYku#7M* zUvR50QW|9Bez=EGr%?=J(bPY6y~^u3mCk8mco0oSstDQ`%>0_CcnCXab+~#ut8Z}b zUtc>xBb&d$Tk*FbAlCzkY9+iCTW}$0wV2nQ@vT{+$R{mn#_qapX&=Dwb970l2*DG> z{(BOB&;CS+IAmxWKo;!k@?s2{Vq2{rvnmI0^JD?Dne=x-XIA@H=Wt=5457m;pp+~Y zu7p*Tu4{1Vydp8YoG&@oB{z2^H>5JW{G~gc$JFi;5$E}={jmGE96gwKkeUqqT z+1()F3=3OWv5$Psoy2P$OH;OVg)yV-?c3@M$BR8H`EqF?R9%lA95(=Mlc-xP+#CPV z3nOhBWjoMekr3?!-upOB^)=kLpXQj#?A$bxK;B7wSgTz_jEKGCW?XB}oB`w6{9~DL zl<nm6+6Dn67arN>nz}rk-MglfbuP0ov69%1G~crmgjW@N-9k!#(M z2JPCNOL2wWhCy-$meM@*qtd;Zh(ydY*_%8^FrLS;&rvS53-4@eYOR*G7scMZEja$R z`Cc`O%M}yM)_7t_p&azQVly~cj>V@-Psl5k!PXCyDNVu3Gh-jOezxB}yz-F&=K9e1 zz^=j6{ij8up)VyvDgvFNn89VKSjs~}th~A}QXu|VeGxg{SXKv%EB!JpBmPpp8AkWzNk2=9S1uE-bjGrK_>w~T zHigz#xhi#LE)SK592LEu5u*6QP)6pJypq_;bLtSs!r8j#gZxXIK3g}l&& zGz%6OB6RM@Wj;5oTMNmbIM^?bs^+h-Z>#CE_XFKKA|n-*woGQzNJwC@JBg{-g24vp zoQl_M1zmXI!}Y9)C%xUV?n|f>O?1I(KM)JAt zWPjA%)wS$Lq>nLL|8v7qb#3r@X6OvZ&_UWjmUG8ZukKN~pwNoN@M@o`UG&YzXF5~{ zj;81Nsq+vviY=@1^A3&KtWp>XH0!Nst^Wkg><=ZT?aQUo)s`9>nV zG4;tDd*NE>k4Y|o$2s&2#H@EUPj+ijL@STLw(mNAqpI^ho2ZGwJhk@)*|673Ylqc$ zF<0e2U9-F6#EMNrI@KyXDHeWS8Eo1~A^jf-xs07|bkiCGT(HZw)fq;_#NN*jWk-iZ zUQ^s8Z=>Eewy9PvUa=iO?l@p_dGe$2P4XRiX>l&ZVOI7zSU!8(O=KWwBtcHdM)~4L zC&L^g9o?5~fPNnBFm3+_Iy91Ao;0Y50cX2_%1}Yby=0#N&xA?Ub2af;D=p-pLEbu} z{p@IZc}VVRgSDCy7(ACp?qMzL1er7q@0zOA*=9=5)X8XX{a7tKUS#8S=FjiGRqD#> z)2&FD^pgM3SVrb$Jg{JX{R zQqv%yn=;<~Orv=ZHq*@2$3 zAiY2YAAyV)W;vR6$t&?)1W%i^wGhev_(@2(QSs@kSooOP9E*+A+y+UvQH@>aeNGpd zqV|(PlX-iKfzs+cO}ob%l`YpY0xoZgQxDf$FnGKN$V5pS&4#)}v}zVGxq<*vP~F^M zjoRQgt3<D0RPo{lo(IaCG54J>UIU%lBm0$gIiN#yI3 z%Z*@X7N86lzAPG-^9NKF6H_EE4U<33J$l5q|3rqpC!}$*VAEWC@rJkNq=Mg)32VRB zbOI_M9TPZ@v77)Q`bpeviK47e2JJu$n(=WSx=q6MlB(v{&W>QRO`&i30v;u z?By6~7ufY=uo|<@8(0>mxngA{HIZHSQQ=$ppiH>I%*@+3`}A}P2YU&=Dj##KQE#9{ zwDITUZ=fyuUfUVFx3s<>i2AjJNL=o)P~ZaK;BecnyjN9UA8mg*Hcq23HSFJy_yKq$ z?Wd3bmI1U(76Ez`r9z0Q09pjDo;i)VbASis;1X9ymz zu{5K5qWTS8OX@!u5d(W{in`~n!^mq_IG(~QucD$W?FxCP26>WCXNDp@eY-5(d4&}$ap#e#f&m@tXV>U=zb6ZL^*O3RXtss>K9|6%?z&sA zaL+3%dKkR`)NR~Mx0+!T7eY%%cluIQMP<=xNAMIe98j>wlou7RNtu)CQe6IZ$n%>R zHcFFWgT!R!TT@rIynxs0+4S5`veJM@ckv-;Sm=ixG@6|eRB84SmoSl(=x>DAZS}iZ zP-r-Y?CFyn`=Q&?Fm~~2a>LrRi_V%To%&+gmXJ+ujh{$TfPe#O^`JSdEk43TB>;Hvp9GST-}RZY)$fTh zpNrzR=!*jx)OhopDLlyej<417#Ex|GN?4+O;(qReu19edctz1{#yBViKvTPIZ^VZj zhZPffF*6Z&GIvEY8#HR@H?5k=6vRIfW=VhZv#NXBA-!h#o<$n$W!26s6Hk+So!%B$ zpZ{%0$d+pmU-7++fUrU*^D^njNum zJG|-~>--^(MVHMT1^Au`RRWC{;RRkbpV0&L!#(Ma%4-v!b5kKEnmprJJYH9jG;O=P zzR2gaeR_JqY}Q?d>VM{rqR|DIGLa2gK%|{)7!%-lkD-#>;fqP=Y4m#S-dN@r^J#v~ z7G2N%Hpfo7_>&4i$_ogEOal}Xy$+_VTxIKASS7$#DUMxwuo4y*uUunZAW&NQoF>F2 zpIoK1Q@3kCnC-S%=)uY^MUpL;FhG+)6gjS6*R8FXt<}G`;HpME&Gzm5K-FYxBDyC} z|AW5VCj@FPJdU$(&yAu6wG(ghGo;NYNnP9J4Saaz=S`5$MCcW&fdy8RH6+w`_xM4L zbeNTE0VC<@!n%sC##RCSf5TTwoc3RV#UTwHpz=R}84g^{)^LHW_wFD7*Eww<>=0*0 zlH+ditsGROIXtNmZCk5Eq+bQ`Sg&#wu~jmPQrV9f#f%+3&X;qL21poc=8 z>RHw1Hfws5w~yfYdZzyKe!a5_lPqoyLwz=neM<_5kN#eRN-U5OHGHvfae)VM(+V|{ zAy?I%;oZenZ-4@eFhqDiGmFcPIl~tO#G5AHnVEaPY@h7dXrUG<-s@*yHfLSQrNvMG z6&`p9x=uVE;>X^DOb(PKJ%X%}D;ReEtfq)$O&7{(qxWM*DA8YxILSDEjUgoJI^Xx| z9R!WLk5r+{%B4ucJfnZ)ynxRsa>4UKbt=f7%Pt)vCIHh#JP7UMvYp|btg=Zi??`s_ zS3X_KTt8Tj{vrOJmVrUW!Qu4Cp9UBzlh2;+y@A_g{w+?9{UZNZn=8{$2jB!seSZ&J zaj6J}NM1qL7lX=wCd&@1oWuD;Y7$DJCG=tssq6fbhZ+wtlmK52-(DTVIp7<#pD zwZNxt2RdWMk>4D%;RL-9=YJw47w92|-<;+Id#WYe3ld zwau|axrE(eLP!!T<5}G-TW%a?c?jx%xBxWapK%6+$0Fn1TklIw^8{jYAB?*TijK&=h(W-lWi~nO zVk-JBOm_%px9L#isye3KRM4xw7$9B9lAlJ*eriQTx)7=;-W2`yn%@9#WhtB@1|Y%+ zIaxpKhgSJM*mVbcRG1I8;_;+Vw*+8E*fk~^e|!qt?;{4wPeRFZI_21B*?`&N&-KzF8@EsQS}c%H3B#uJ zp&6h1$A^ZVZ6GB=+ zWW?nz6EhdcWvtLGM`Ain-of|3Qmy4$X92R)-ICGlrNPW#53 z6>#@Y*7?S*{a;`yB&mmj3GYKak@<`Y~sX;L&iE{Dhp!hUcIa)*TfJcVy2db6ct8^jN!}%%E?nI=$^HZ?bRV zdTC?cb>RmBGS1Ov?LrH~JQE+o+)w4k(F(lRQkq`CAEn+J(?is^V~Kw6VtO4VB_D)#M)nQyEsdHgP!=CMK zO^`T?>vI+M&LyfZTPU)(yUxLf#f3}36hizbh-LLKwcnpIv4B>ysT4k*T$epd(`0=*+9dP+@E@IUFzDJlaZr>kgSi~BS z7ihsgQ*l~sb{uot5Z8IJ|9GW_8H^ytI@p|7PsuxLdNPEnnfj33t-3C>Oj8y(t(%Uy>-UN=Mom}D z)Xq<#mh8&R|9YZ5&L5k)WfKczg}3h-#8#>fzPKCTOqbuBS@N#HZQG|%V|JeeF-Cia zd7l(c#|>aGvh7a3dkd4eI!J~2T76mFB<VwupJNpHdq)=w8<|HrO977M=XHxURcoxvn^;?tr0pP($i? zXb_P91OQnsWy8c=9ig!%r1*&e=PK_`D_gZV{FI7>7b=Na=4mg)?c=0r7n)QM*csy1 z7Bwxeik`@oe-7mHEU91$a;!<`zp8SBQmF&Up5r6*2C>UrnPk>@0ly~owb)H&(;-Ru zV^QU}Ks`KmE1$;JLdC5V%d#C@W%G>a4|0ID(6ZBQ--@rNd&>V{Qs0;J=nAg7D0e6h0A-7 z>kA7){j>AbkG+k%K_KdP)W6yHWxV)*7ZVq_oz#)`#VX5kWq>NRu!RmF0g)1^J)91& z-De|?0~(T&Tk-U?8?6yvHmjlkH!s=yzn<+f*rnPYkbu$rPE5Uj(4Qy`1!Mp7RKFtw z0L_L*qyjn67yhRa%|FQeZ@J-n|A! z@)ZZtSGiQ;^5%t@8utj2l1AS0l~?uU4dUlm*kQ!eQdwceSrR2^fcBN1=ZDjO2n&86 z`usK=-8}j~o*%e@|La%!zgDe(eKCNG@Bh~>wP3_dF`yYmZbO3_P~_aw6Y(9=#2)tR z+}Dy9hSdYFcQ>u#7WS{$c=XxCY!~Qc=AeVD*$g-Oe({)7Fp$O|r82~;VqYTQ*~IAQ zGNE}%NsU;m;aPf3)xEMYx@MAj*)e7X&l^D1e@e9>u5O-W%VlaO@y+QXZ>&U!f_6cb zf!=!#6YF^`lc^GR*XzGm8sP|l`YXtE2BDu5P8XnD2fj$zf8;(S;N4GDgZMq&VZ>%p zz;3lxU$ZcR3pI3bh5QdvdJEstGLkJ4hHc-0E+*a{h&*VYCzC?8J5^fjXb#vnVu4Pw zQb2=kpn_KNxv{ZvmD8@uL;CzR2S@!FlSP(52?A(m5`$|kRws7uoqApQ90g)ti5>V> zr=3T<*alBD=N(iRQTw7eBoIoF+Y`cp%qlbt`xs!Q){sq=7c%pe=y_edSH3gzy65R| zV{Cmfse$42ulK#kv9BAwV&lKWO93Bu{YyT~hYw59)Yu|p5 zq`gH}Ng8pabQx31(0-UhsM(`7X*17DP;Ye@(He*ci zJs2d6jE#GN7RkBl)h2xLd9rDAh&X}R7=%FM+cB`aONQ4_9Iawr&(5T>d*$|?Zkh)$ zVspe}TF=uKCmHsqQB``nL=NCy4JBUgZra2(W|S47q+47#>7WWmS*#;*fB#GB|61 zl1EKWyHvW~ceTHM{rbv23JX@w>^`1`CI-svrX;Q?UqPKR6sst2MpT}!PY(~o+=6O% znKJ7{o+*Pf-XSS{QJb6xEItDz+<}j`f{C81=>Uo1mNCGE5gT&oVSO8;L*USL@wVFS zukG~xA_d^GzIG1<8r|UG^QgQJf~QUz1gv)1_rcuczhW<81L5pn%X|Gq?FyqDx}q zj%r-QZzIe}<<&EBt}s8gApI4+#YVsNCd>7xv$?OQD>KMt|6rSXAm(YH#A+crPhGLH z$a?NBEAzpLgGvw;$nuRNWQysz0m1@@Ojc$%i}pGN0teAR?Cd`~yG6!(X#f#K;8Qj> zHZmJ_A<;50#1n(udVo5|NTq;?>WANpFnkl%!s$pXdX=vp44xfXBkPcU;5DCjq@|_% zLK`(0TczM4`1PQ>F7BY)2(M)s{7%=tesdDu0xP!WU{oo&#)2k7GhbaW-L1-2%-2f2 zQnRjfVV@I;bKdNr@lRw<0M4;=55>} z!9{N#C6Dp_(36a-CuyvQBWlTYa*17~W3OxVtA6d%#i#As8@K-?QczLY9M5HL_t9x~ z(-^Ip)F{5c#Sc?mtYJT#Q5*BJRE^er?aqFfI5-8}JbZJK#JCXWp98neS&>`s-u>eZ zCD`?8b$aJ=$!UTmm90yrm3nKxrph8nqEgTw;>Btn_tsoSAxFpH^Iq*iEqDsQo?-b- z=QGNsMj+|?MM6S~J%5m!HI`ka09~fPRoAwbk^DBWvVGq3fXoN)VO@o<*sGlMDD3}#(|8~F3iT} zWgR}NZ0%Iq>zlf*6faHH{mO&3?-wQG?em2YL9xY9Mosg@ySJU--vHIsKhZok^TY3_0)YrG8TLSGSP-MkLMPw%|y6_Lm z>Fz^~DH_9XJc%LT{NwNoH7)41vzj|TT|hJS^_`8SowW(*;>EFc;WAYO2pY~l}yUrTwI-M94}r6cXIjbQu_ zI&RyP_xc8Fyi@+fc-HuRqpD|2RtYd$FhfS&4=n0CA-fK1KanUpgRihTa@D({IdR=c zVmBL?QU01Il%BMF!0yzdEGz$G&2~z1I=d?Td;9$NzJhNXL5bK(XfkFg*Aa@p-dVO% zVJE&fU&@)Ra(32>qQ3sDjn#Agg!6+!Om}>@H{0nvG}E70JJN~*EDO;~-r@GXy&$LH zuDsdNh^jn)%LZz&`#7fST}Jx0@3n@vz*QW9#xA~}p@ESO>BIheAW2VB+-^=<;HhH9SKk8P>fjz-=&lU88Ly>OB zOD+=osiZtsrESiQ5Aut{3%<|Foz{&Ai9DjSP#}wE*}mhxa|$b^v`6?-1h7H;BdE>a z!~(7yQ5J`j?$r&1nKCy^EEb~?-Qn(ZcGOswb?7wTtbS!d=58)Vm*3X$y!ur>L>I@u z*~cdeU*`aZ-n!SWoyrB^gBX~!rnBc%AeK0{MvKjK;YV`Ho(Jala8i#ZU5x5#4wrv= zb2^j_mp;qbQX?CrL%906h=KKm&{cx*^#19PMA(T`_=tFb5S__OOq3G#O-CIH*M9;e zv|s?xyjLnx1?8HiZ?Zu6V<@nnSK4!m*k_*S`)pg)Xm7zBLj zJTmi-XY@hVN}JhjoTyDzSXc-&51_gNayU6Ihf8CXhGIYolo&wi+CNuoX?(snTieuM z36wCr_frQEcpOKm^O5_1_{L2%rQw#bFv^+)yC&~{`rf8sQ-3m-qnxq5Z2xe-*x&_} z^&9aErQl3PbVPYyWMuN`flX4?en*OI?Och3oc3XTi-cM$_;I~lDEJiMZdg*E%W)3Dsp-IEgR=8Tl zcbP$MlJZfs$!Cd|EK6Dzt{TVC=gengLc;ewV>!f6;$?iH3L4<&HFdmdkg%KHDA*na z3R6V;rTeQ4y$P$O;mQ{7wAd`z``f;)Wj*6+A6}sG&g_E${6sl0^o6`6&H# zPsPlR>#O;Q7cZdB-!6)&wA=5~GqzaL-T?a6L2#>0d7}$64;xdb+p@>iC4TN5{6`LO4k%~>0pje3jK zlnIY0)T%DTccFN%dfG!5>kBFMxGWaP&I>o#jDj{^(k!2#DC$;S8ztMPDYlKn3~+7p z=}b~T(-JwP)OIacUnN|`VVdiEGD4G%`n?l-H;tP;M9a!X3`fkQXbfB>MsqHHQtfi( zq^q3W6cY1I%nz57l)PJFOvMN~T^NTAZ3)2A$)zxB+Wl$AO?~ec`mbCa0&YMHAc;DE zCF*;x=$DJRr@Ia+)A^PT2pdmcf-DSW!J_}_zzV{F8Qll33|=aIu-H$|0#&?Bf!UoJ z;Ee*1moeYBely-K&jEhuyUAt**_t6)Sk{v*#!V>BdAIiXv_IkKIV_#XFzR< zAg>@L$hT!==yldbSsJT!tXuC0rg*S%eeuqyS0p5LN4{G(IBQAqr+)oT1t7@oKTl)09{nkr+PmlZoooL>0 zJK-Y~w6qdsEhmy0L<@iophT-t;Y>tzI31Mhb$6ZTwbjUDspg$ zt?@UGN_;2)Vb+7~1U1hu)vU)KCOU7#N9hX3TgP$-dbnv;nGO>-b6a$)p}TSFb|@>; zyt@tb9s4FB8BjqR<3H2tjkxWtVak%zRzN<%3n;En1M(KTuew9repG-EI1T5E5?^7x z76-{OVj-AI+C)Q;J1a&IE-L2`{Ju%(lJAm`B-5RG>EUznr3yx+?K+5n5zWTX@OPe( zDphq-UMqNvPFu>r!)rFYD$;$u^OFrp$yhFRy70o%#2G`PUz|-}VuIo`6;vbEz*Q4K z51j`jZ!&{e97Ts1HCryCbb>rlYwOBXg`5k%83Mqoj&YQ}XvAIbx;U(5BUwVcrlo#i z<9MlRW^U^Xzx6{NqvIDGJ(5HqYt5yZcx;DJ6i0S=9dd3A)~4uqj+n_c{G&Y_s4wqN zGxs~#_Qi*|Ht`Nj*!ijoWE4sxMZ-2g5wCzAhn{fd*?s127IZgq#NJdsDI*rXy@8w( z$6^^)Qh81_jliU!UKBafj@^5S=th^qvapqY$3O!_T+oCIf}7dg)7gu3H*+AwL7>fD z&1VIG_70K6)Ra|8WN312e#&B^fAXHs@(r-<56{N5gOM zpb~_?IJ~s~xw=uY^(ov0sFBy~4SDvLMkpBPiIXTKlYrgp_S0eOvsdUw*gvF8;6bStP+J(6>Pg8544YU*8m7Z)WtC5H);3MbjS(y!y*N?o zcI2hHMa>ejncb;!DsDP%+}saQT4YO3BCR|s+RjVCI7K8q1iGt{#Qp0rZAFuOD*KL3 zkPHlNNV!Cmr-~e!#V|eIgqfLGgdUH7}%iDd3SRHovT$QnU-%A-3`1?hN zu$c!Z1JqHhvnPv?PFA4g)l^f|Q_8I+l}-nlZP* zLT+ZdX~!Beq4J(1LFMRvFNlZyG8^FLlnYp|Ml*728hCFbfZ^Kwk=Kl+k#kcCXt!h! zIbaTec5CJ$-1}Z{i_THuhoVy)OL!iz>`hZaB!ma%ly3-7*5SN@uJsxr9lLKxp>kd=5ICG+QW8=FssI@cxn+4x_J+Vz@`%xOdHt!BQBaT|`ZJ26^t6 zfDlR+r~=9r_MQv)-rmg6p(<%4%y`D(Hss^qB_n)Z6(|B7G4m|d)stF|ej;KyHvko; z0CSsZ^2ycdR{w+NxTbLXvl^P)>s+cn+IkfBOwrV~1LtaI9xY!4^gOjENcCir3*q}# zEGuV2370?DWmbTZg+tO^v$EYvyN@Yh9DsH z)izB3s&{8m>kQRcM)}UL3&_i-3!mY$Sp)PZKX{eEtxJiMZ{leW8MPB8bYUftdOsFQNgvy(&|^-jYE5i~VCPvyX;zF}o?^248a*01z~Fh!LN!Qz&T zlykCseZ#kj_}aa(j!)Mkal`lLVFleUcmQ#!-rB4DXqtEzWI$Pe|jU2x#UK z@c~ZWB>!8|%eU_#`4#?Qau@KlRBSaEhJo_eP+fqdW|uvc83(IZ8)ASI9OUK?L`Yn# zM-DR%eY5%i4P`gZ<@_jnh2fLZO5IDIaJ_7NQBx3oY~BxMP=)Kbop7jTNY5q zCh|D}MV_UU^v429x{;Nms&-?;sCd3?4bzR`+M*O4euh!pDLP%!~_;3L1Fe=6=bKYyce+wuZ%m0f|Bk00_0z^n>V<}S_MccRDR3bP~-@9 zOFovnzQ^jD(}l`(lo$6xnA<#%~3LqMJN0O1xEd7SC@xY$EZ zvhOZH00q4i-+sr_n)(q6JVXz?z-B-j#-SqvSiFx)y>!KH+1Nb-E=LZM)MC{M4ae_&lGZgUH%ikf*25wGfF_l6Ln> z>)G?2SxO}U+@@Z9Kbyu5aijl8g&f0lGSoiMe;rK>Dyd+6Is`Fj@`6t61-piP)Ct=} z2&{sX+T@?%@!#P7kp3F%X zd_ZDD{m@<>(44fVtMAK@wegjD3@ld&Nmg>J_h?goeM4KmOg_B#Z_d_+*eE?RDV(t-}mR{*)SvHyoWrPpl*a9e^B=V67b@JQGk5JWyv?VzgT>v~a6(eOc^aMiXA1k)-`2#cyi6UxPx3;P|mpHi$r=TcbehidXKWcOWS9_FCbH(3-jM^~E zB_Y^Ycm*@>6-fo;va!wW7ueE|@aL$$jtK4E-hXom6{o}SH?EOM%x0_y-NE5VaAlC; zt3XWq9b_wh4O6Q%?<81Wq9Y5v5{HcL7cguym82#8)FqwBa=_ra%}URE8x26W5Hml$ z&&b+_Kn#&_=+rO_G7Zi?q#8oK*8nQ}$&99Xui8dceFYQKCIxie!w8ap z;=M}ohXRf}o)lzcKi*mXE>O1ZT3F|CW#8M|%d`Qc=$2Zr&2H$+TgC`$ZTjMAt4s#* z#{tbu>qB*wI7T|USXEt5>~Xf~Y3ph1TJpXqBj?eZ%#gh@ z69#0{)7=;J(zqyZJ~&?sY8tkgXfV3ARp?l8$BionBZzo;xff194RA|0o6m1NtLBA+ zAR0nH>*oVz{?h5hf$J*u@xTC{0YpOw1J8nbpX@GZf-(z7KR3NnI4CdhHzV{FUL#S^I+=-s(X}wJt!`TwSH*>HzJCuhn(9WiLK$ zkA%Tfo|%nsiUclmj%ZnyZQyN8qpJ47h_0qC_$#8jS&`O-BBbap%|~8$!uw)-gH=@S zTRL}Vg%&C5s$0SwD-SZ2S=f`n)%h>QAeo-~BX5#3jx#8$JfS))8G#u11~1XA%HL^_ zNJ26VvI_4t^jdYV7rAfO(y8_W@um^Xvod8qQ|4EQKf}Q95)w)vgerU>|qeEKH+Ok@dacD5Py9(kVE(3(VVi*47FxocsxPmn!cH)} z-Q~*|>9@SFiJW&5&c4#SNo6OPFZEC0^iJIvuDc2$PR@6$CcHrA;p%+s>m_lBX=FBo z4^>%__7ii7V+SX@hMjemA#f-VP~F5oL)cgek1B|OCLUamP0p&er_N*{Sz`cCx4r~s zv82=H0Fs@~;f}PYeM5%uvXF&0RwpG$u*0IR7mGGqdk0fte8vRv=awuM-3!+!FqGL3wo*9r~A-pjd#;-?vh zwQ6CYXNmh|oMYa)eu%#Fn#{n6mUH;~D%`W4_uGP@bV3Ia5_5x)(7j*Y_hzo7nPR{k(WMakm(>piIM5G{3)A|; zcEf$vQop^5edz9y&CM^}W%XnMT+^sGe0+;GlJ^OD5uWjElHhy^+6aYoLY2VUyp~ zrTozK+!Ij-x$jsyln6gm_mTr#Sl8Pw$(8Hz-s8P+NwoZ%nk+d_y?ru^+9qyk7~f#nZ51y=AV z)SJB9e4;P`pZZ-%(MuM0#+cA{BEmL#Y!!Z#P>l!KoHc@N<~P_NJt1wO(k?e+8x79l!TyD5OeGD ze2)%%&o>i~x<*LLY_w>7-zW)!mtJ%c&6Tsu(RH2a(OnG+gAg-gg?hZFAAcvl^}!YE zisX|%lYpcW83lznlW#Vy(p51Zb zsB^jrdq-yH^esoi2yeo-hbxE0>c%n@mAGH)+tGT^CmP5G>5T;cY3f6V?%S^cS&g{) zROnBv5$u_?X4v`SCCa^ITjAw~=lbqCW*>j+LP%;2uWd)4CHbFc`1e15_%#v!17!78 zYkw=t9arKVwuA4#O(Wm`?y3AC^Wht-`%OxbzTzAjOvk(Eo^THjt-L>)Ig|PSoK)Z|3*0uRZ1aOtHqbTEf)G z$5K=!WdHN7eWhf41f!(DPnSUacU((g{ub{4K23oY(3|||C~}->MSmqV@_)G!LQBo*=V1qz@2`4q(I4@$)EqqmM>BEzpqqB9GIi1wg^N|iJuQ`|L4>A zbNu}=aHpJ)3SXs+WGIGkWJpo}_mwif1_mpLBOvlI>eDU9e`dwM2P=<&J0f z7j~o!=f?eWfqxzN;Jg9`t35@q+b77^;eR|YU~&5B1KcUf`=So2vn{2y!L6}>JI(w2 z9+mHiFCV6|Os3)Y_U~Lo|2^2ikaNBV?(_wzvH`}m1Ksha!}h-y_}AO867YLkX_fZ5-bkXQ(1GFNvmw$^Q)x(Gd`b~e1kN3gY)ENj&3UXE69y=yUSS@ z_zCau7ejW-Ai)Jb;>U{wp-Jwh`a>{R;x=qq@jnwNog8@R`QoYru8?8co7T|`MQ7(d ziQj+xPzeuAmCExlRjG&HvC@7|QUP0gBqeBRs4vl>&=)%8BeAs%P7k_SeS9xIuZBzs z>WPT5u%qwqCK=bQp101cd7=6oSk2(b)#8-cB6}q#pH-ZaO7e5%Gai&V^js4q%Sqkw&xcqKEfAcM9rnW&|rW$ zu5qVIU(RMN5zrl2FOalrfI?#tDIsl+K4NXBzwQ~oE?Lv930fw7yHp8g$lp)WSLnw0 zvs^T!0&lP#*M8p3H1G<~CXHnn_5n-3B5`gSFktv(bv!~oFhWzaFE&!%k(3nI4h(_*er4rg4`zPVt)9&&@8Q2X|$N6Bjop5&`@lga*Z=2 zC8v23M{+G(>T({)b!nbrh}yiCWufoU#(}QJHsY@=VE33fiF+VtNSpeHm%!I$_qVs6 zca63vBzt93?YwcSeXWJp*c(D+VV({tO7RxVq$33nlp z=*y*>XC~0rvOuLYxwmh+Ogn6``HiA;k8TDE!Dd5`9>7(LOGq%` z&0|m}`i-pb!`45vxq$-c%V|(w$Pxc+JniKC66b4fX_|o8^<$9ayU-xAU^*Fn(5m=Q zjD3_qAGb1W-;prPmsFz}5_hEvaXxque(Ihfe@f zQ!Hl+^k_nR{3DZnx^62fgUNd!j(vVsFXej$Eq}I2Ha4fKQt(Sq@*F$E7B&KC;i+2a zfE1$ z32^;|nTy0s^Z|FHz2`o~=55qh&4kQ06d_6HE3d7DT?0X0>&-Id@^_;U zaJhpQaM<0$_#53MG?I`uA%Hi0)a)Z0PTJO~) zR)zOkswBKoxZv?OJYQ$Q-1?5-(LsM0~X9GGW^vNadZq-R#7*nuGp;? z;jA+aL!<7Lcp->5Z%JusU*^kYhz6k$O%&||Z6NhSA|pkCVqafE2v4VVy=zT% zY^;}FpV9P_xBLA(?i7ksnkIRLy?P^q*vA~M=vh`eOKj_epMM>$bI;A52isS=ufiQ? z`habbd(jvl={r_FV59g{!mhi<^m_es(zg=3ZcQ{o^nm^T{(JEHb!dw% z9QX4UTRE-9EPT}qLBFNI9(0~I4}`{hLPulHpc@s;%pk3i8;;hnIwtFA&D5|~{>A+x zd~K!)pu*GbjF|8~_g3G>z2AGz!?qI$Y&&JPSa)1yEDYu7z%IpDH5An!OgzLwe@J|` z70;oM0P4%AFg5+gpYON?d;nOZ{(=N$7)O$sVuwrMn7BB<2m+3*iV8I5S7JbC*$In& zx--aJEj>QFRY8|ph2CS?H0}*c$LjtyHdUVyZd!sy!iT+S$=vl>>c~jWFM8Y**i{R`um&=n$!M%R};QV_*3wJNYwa?HcPwc}%`&`e9M7y%CO9SIswuaILu20G%?hI_)alQ0M zdq7`(s@*wAi`I$YZKtt(RkcEHvqLy*?E^Qi!@(R0;uq0;v zTJ>>5mIQsxt`p-4?PAYq0WHp}e0G}I!? z$RcGq?ZYGtT8ky2mzELZJ(!$}>A1$cwxhYIPlVb#lZOp=$GE!OTtDuJzhWQAuu#ZP zo3NPEsAxj1O|BIM_EFieMum>KX^+zowDlR7bj;6GXYhd{y821=@XE?^apn2^@X^mK z>!VZD_d7p8UzrD@HH1>a%Fka;?2X_k`%%QpfAV7opiOzCoXz#itrJGCt_?yt;mya2 z`WZ;b_={OAOX0Na({&TE0>yr$C!GIol*Isaxn6q{mjyl zI^F8dpWFRxx;rLye+FNQU|NR=f*DoxiS zv-_Lu)6r%p)G+AK(z_S@);F_RIw~!0-SolblM5CptyS;gUjf)iT6ZI1eHLUw&d!NF zD>4hI|FtyMjhPjeXXqvP(NBflI*#8P+jQ#Q%qmeZtiiV&e|VqBs3hHwLQ$8Q$sFYR z!b1oN^{os(4AeVU^(2U&I1-U^isZIF%^6Mkwus!})E+a9J9LIPN&_h_qlzG;T*u>^ zl@w%E7lbmnq(e*W6Ij5ckjEP}?(JnuSUxx*OgYpuTTKj;XG152Bi`KTnP#L|zc?Hy z7HNCW`pJa(=R9r)-{x}#h~4En^~Y7M%F4n~dIz+rHSYCBuwM=;vA{X|&Ds<9yTSSN zv}$4nUVWX`Pc<)OiJNE?m~GpNhToszU18_=bZgKK@PxVCd_~B!af9$j-y6jU2B;uME>WTAk>jlMT?y#E*A(?aGVEwtS*nKLUH;-6&{f zFOOPf1q%$4-Sp2wpB`adq+-(f3yV-N%pDzREW1nsOi972qURUxb5w*MD;I6bf*4_< z@?_ab1Gk5Fk}dkB+Ib_}Cq3enp_Nl_r@1a_yOk8B!Ckm~gN}<+*F8-O14tethZbR* zI>V9eY@WzJsZT{`O`C#SV(s=STru4ESVV*6iK_~Rv1wfe{n5nM#WI7QkvC%z>8Qie z&d`(^{RJVJlAj4ry>B)(!5uCoBD{jqr>gNUYs5*Uu?V7a+3r$PwW|itS$%0+KA;zN z4Zt3(<>B|4(=J(d4@jb}H0?s98IY`oE(?|Ei!7Y-_y?#Sy2-uN`#Ylp+J2rb7|dO9dsEV+eZoK+Bs!*hugxu z;JG8xMWo_h^M$)|^18%TGCK)@w1}Xj)^4170`j*07{;Qj~2n62Nh5lABJKlQe zpqBG8k}Nqu!qhJ7C1}Xl^t~uJS|n0A-V4(UeNrSo`r2ZlV-!b(doH!n!1Jd2T+uT} zyZU8+e6)}XA?%lg5e%$UYwpdO8RV?<)fvw9MST$sxquV$=k!yNtC?f97Lgpk&BHQ5 zy*EORiLna|MiTOY@Y{^p&OJ0_RjIQLaJ_M&X6?m2R`OH*IAQ z^Vr??d54*n%VFn5vX-UW$z!+xkzfd|OsD1R$iv0JLW%<=@Mnsm)ul>ZT(RgFE~D4T zm1=C|l>&r0L`y*#{H$13i+6LcJC=diyLanru)RGyg^aL_c?3K)}sMZ*Pc}o3%xJ3+Ic#`Y`V|i&&%UcNfd5wEZxmx{1V^8rE=pHc63Y zeAXT=`B5Of8-Pr}{;k9z!ObogcjEBs^=*3*eeuf7HGGK)nxTZgSjgqxsHDo6Nvd=M z&3mNqNTGRjMP-Lpw2oc~k-}?q(kvrkw%wepcfDP|HsWHMMq6=z;$@1ZP`3$xfO1nJ0{Mo)P*9Tw`GaOqHVY;y@kq>|E?z8?u_rMV} z?7=G`WOn;Jeu{>!A6)ki=uwP`g{55;(J~>3diRs!Gx@u#OgW`5AfREkT=*x>i{q#F zipmNTl^%(PZ8g(Ts{?j}EBIe0+m8?rjC=c!VF@9*&bG%(7H|`osG}Y2vuPB<2#Ck; zWp#gQx(KZH8bRfB%lU0iH;6BTgK?Q7`hMJ3!z``9p8G!xmHeX@a!Ri)u+X!v=IPOJ zO~py796o9GDA8?-V7T?TT@@eYTo5anE3@)6rhg<$5Wk;1s*syXK?E5!CFU6>;(F0C zPNko>LBjZ7!CkF$zL@hJa$5PaQJ$yI$5f@Kll$&!PyL3o`r9ccd4V_c z`o-;wd)U)zUG@kF8u?g54P=ZUMfe)q6YqMKoQ%#qyT~NGMK1T*X#G47@%4687X;UP zDA|9x&1>20ZRhioWFxNlqx@h@`(rO4dN69j#ZwmyB{C|+Rwa=eywzUxQ|LJUu{d4e zwjZ^`M5fBm!oiE;=Pya>H)+VhJua66uBs+0Dn57qZjZM}J0o!xkQu zL6V+)%tK!Oju$h7irknGiyW;~-1$E3zMcs@c+1ot)8HI1Ria~DgX+2;w&XdKqr-#8 zzF`_8ni~*`&73KwSUR_3>A3$Kmq{o%M%XAJt3^xNtA>YJF$&N6ruFQxksFEnK3}$1A8?F9mfPC0 z7vmQJAtjUT5^ubdY(5oz=VfT*n!^UW(CdOX7$hH_AZTje3hz`j)$@fLTAE~w=d6w4 zw0(Q0b+>#-${!Z$z!G!xPiXlHz~+If*t5=Yx=Fy|<8eXc75 zC(m3O9?D040A6ch*!#*$*l8-)|F&pi|C+|aiFt26X1TR1#Obt#Dr}n0ApDEVUDgf} z7Ow`eiG*_4w*k(?>7SsAnd)n*(w?V0@_`7fKsb+dY6>| zBLqma;F{tGhzJC~=K_US(KQY(En^u^M>5tUc|r{TBHSA!SE_K_#C?Mtk$UV;eo5S3 zX5Z;vH6hg0z%bq7MSE(%>Hykkx}s3#GTu`C>Y~?L==-I5N_X#748>2fJuzA6eXsA=mB5mf~)5!PL$rb?>GTK_w!q6%bOoGr_2A79F8+4xGX>Muin} zilDDz85HTxw}u2Ns;8h5&A*!{?2qh=$BwTOC^D<`Kg#t=;dK`n*c?#p&%5XG6R9fd~!SMPf zf(}uQY^t;9QM#r5aY>QlkvXG@&>;S6owQ^`IUTK*r@oo1baUPJi%WCll+tm#O$OgJ zbqibFVQO>=L*XNVo!Z%a!o_8Q;zZu}?~wbcBADv9+*ZOz43Az^kABmpW;;7GJ^T@q zmLi=uDrOra&-bgfSD{*-H&BL2_-72dLaWD`bDY<;dxy4Ql-+t48691p5wSb<$&K`R zBkX$D?*8s#o~70-?z0%)Y*C4W1`kSTxD9k$~IJI2o`a@}H z$v%*V_cl%BXW#g{&%Ko39ulr~7f~?6d8?9I&g*ufJMZH0hiUjQFTKV*#OE4$bhd|& zfo$MGLmcPx-zV}ZhI{Lt`9Lp_5+PQVs8v1*LJfOSlvn{IGzf21CN&KVOobf%Ure7oar^ctE3cKS);mLf=h6B2o52^ZGyYIOMt;i&;S7j zcXzkJZJRvL_rAN|ulE0~t?FvJrka_%PanO`xzE{e&8}S0M3yk&^qXb4XN9$<_EVz3{VPM}b?n z_f8KV$v;Z(yRhj~F7wuH=IuYsnM;8P+8(ZM^#eddGvo4Z<)@E3jwGK#?a4*)4JE0k zs|^PoN9n&=41YHChO$5sw)tzIjl{~{UN|t{)eso;Y%09I$P8o#dwNU9)CaY z&67x~y+2byK(wB~kJP{G=~57sW{{JY-0eVfH0v~q<+7$3LI%ujY!kSxkRnu*P_a}t z`IJcE(Govi9LsZ^bSAuOEN6D4%BRn>5<+sTxeTls1*f52g?N!t? zlGP;&G@>O~ph|D^@8|?$!}Nxe!Vv!So=lE2o$@`hn}a%xt&_`Y8pzP3-0XkFpy_jc zc+AEJk&C~sR_P+^AE&upbzl8l-gjtyM(DMi!5SMM>2ZTzZoHJZh)XB=+LEL|$g46$ z?gU~riUJb!%OeCb78ZKrdtV?0Ieo5>lC^5cIJf0k07-oSa%H8A`h}M|%dfj?#p1Oj z&q!A9S(#YJ{q*%MlhxKX+em5_#@V2(D(ScI>jxQwk>^81JitWVR_}I9M;^Y1t2qL? zlMj~|_RF))q{<7M5x&^BkC+|QKXQ=tZBE$Pw~F7q7~*?n0<^g0TQtS4pTWaPU2H_5 zqPY29z8V3|)xYd@?5=Z5eodunlMbpTrDJFpuW;vNVbc!AcI45{gNpeo&d?7WX(KPu zw@LT&1@!uPjV5R%@7?Nq@LPqbS-N)aWf{wNn!71~z|hycW&3QtPj}X^|38Vow~>GS z+v*zRC$?$FeJk>W+aG}PgnGFMt(l^L_i1qB{Orl?t-cU+awERyeU$?wOm2r(-T#48 zhcKTQ2*6Q$m>}~xN&9mUv{H@A&k5kU13H)ks%4TN9?r$JzUypE{acm_pYH7EqN%Rp z=~C2WRqA3Wx2t6?L}~Az!PB5>*IK?E0xFYtyK`q6sOV<{_cQ%CFs}RfmAyCf+#TFV z9#~zK4m>->Iw%d=zC>^a!Ki0-Pd{RLn%LgI34Y)fUottpZ_Jd zcASYVFhY*XSicMjBuY>x7R&wG5{#_yj-0_T*@HXwtRt50_my$Qhjf7v6v-B?ZSvgQ zd4Y9amwh3%d^uLFkgJc66-$ZB!6%BTYI_oIg(Cc3HLJ%n)5gH*I`@)2MM#{JyE|Cb zW}8yfYyDWQ$De*R6jtf{VF?Em+6f#t#aU)YY3S@qe0q$OxvKIpQvdgM+xPm!-lyQQ)#r7Rxt(SdQ>_-b+5o9#JEC86!$A6r+Z+_jSx zdD5a2RCCfE<91ZHxoM*RsgG%S$}1l(W&gi0Ccr2FM=}GJd22OY!f!|dr-EoClX4qK zNY!i2F zAwHLqQ~8*W1Y+Z6>0JRcs=96Wjzw|ye!=$G_sB*mQ7;WFFvcm~JX=lNZ_YUU65~hu z#mZ;B6lbIpKRei7iB?;YHShHIJPZZZ?=HYsIvA{n;dvDryn92D3*%8ub9}wsTRu_C zIeXrMb^@7?`U!O~9)qw5hU5+62BJbh*D07m(%%jSw!&R#h6!yCh{vs+nMhJB(7SE) z_z;9bL&!Jt9|<#ay5)n$QEz?|X8@B10;N_0Ng*WzvBgS25H)K&)0z#M9}xU>E_a=iE6 z?1hJi-=3-@4SJ3L;#zM@E?Llr513RPTr;%uM>l_lZw(KcWAfXAKu5^qWw*Kf7#-*C zC0hw(Kc~P20u|GdddksTjbd=}&qpm!ztZN6s!acuTUtOkTiO7N;FbTYJYL z5_s3{P=Pl`QhlE_LkpWeOO&=ZdL-Ao3-2N41^A$_r_yy8rN}Xud{EMERDIv?Od))aE*$VAawLf9c-lz43=Yj$D=6PSOst^` zji3{+T6BqVZ zN3k#jMgCXooUKi4NP-l^>guyd-W*x64{Wj^->cjsWynV_(?Z;`xLIZM_xs`bMKe4k zRI8x7N!v(Qri5Thvxlhd**D@@0cY-|URd!7-J|_Al9>wTYhNujA9nDtatSCThSw-Q zf*AprKg;o^OBs+1VZ_j2~zzx`D|g*8ulhR%nSKJ1^U zv>540?+o>}Bs`?uP)paUwG4?{!~-D!a2Pu=G`av`>&_MMFXG0mzQiMHA4dmqH-^qS`Yt})rr33aYq~!$ixw^UeUsz{bWDC<_GcCU8 zraQzzM3?@K{vyErbdbN7#4DwFz|^@>pc6cQxIN^z$u;Aa;nPdW#>N(`D==QB70c(c zO;+gyw9Iz7I$qJOY_OfHSF6+qCEL%{+qwXpqB~#_oozKyQj%)PEMa4Rx}!!VSQItX7;Da5!-pK ztn=gKy&d6oP(p6npVzb8HBH@~ao#%`#yiJnwoIFA0iHtp6qzxGap}>L2tDHkY5R;m zzKWzmB|{a)W zr$#2p`JxeW$)simsUL)UL9kUZvq13p__QFcOwKj#A!&?YFeG6MiO{dmSyg|eP>Uar z%>?np&lOM5n@6wFNrKq){3=7LS2Y-8ct9Yw$0b{~5Ue$5&s^;Yc|LxYKWsYst1jGP zq_F8Gt_7^9C1F}J8B>^QrkHm=)}|f<%Y5jTRVfaU4&!%JBE8()#aiE3ljY@|foVaS z;-V9B6j2!QMOp3}Q-61U8?~nyGY9SNjve~#f3)J?M)D9el=f;OanlE$5>6;XM!Ebb z(UEjsL(7+5Xi?WWrll*b+1*=6-XjNsS^ns~m5Jx!ZPMwaef(?e=Bm)_K`i^N>t*!} z3tIkIGxy%uIKq5pS%iygT#I^}8S4C_0m+f&_lh)Z6eckUCNo3ftITggsUj0PF5ew9 zKbPD7>?h0R+2MK+vzqiuidd{O!70Cbuw7%kaXvpUNv5IE&#%1Y8rxd?_MG%VlymNL zjN?gR6m-3M;q@pnZ?R@Iu>ED{5UW0}-RG7|uf;w31sq(lZlhB@_Q+PF!^(^Nyu9zZ zwz~{Y9U|hTf@(V=3n2Sph#2j?+1DBEYm(X3b1Jrj$-p%ii(U6`-rfCEd7ioLQ@!_> z9tQm~vXhyFq#WK>$nXK`WGDH#2c)4VSeX~ESlWfH9{NSE7vvh95-uJ&6bvK+y@Hei zQJWfZn+ zmRANDSS5+G+_*_wj;26PTzHRb^UhdN~7)VsRi1r zN!V~0Qa_~~L3tZ=U))i3x$d#sZNYc5>w~jbe9|L8uijiI2i7@$tEVRv%x0ft@TKfw z)?Tf}jz9VGw4@mOaf>@H-YMK$CQvmJ@<7(k7Jc)%7TxpeWny;Il0B}Ujb~{0fDPZp zXS81{6+Hcb8aHr%TXMGXY9?_XhRw&nBhl1$#^SSd#~`lkK3quG@DYvg#FsQ&6g}Su zr>jfOJI0P^R(z&70oSDQIa44>I*DH_fxvX|XO`Q@`k_?u9l9oK27~5kY=xKb!To|P zcgL1|ExwIykKRhv`s@U}hW>(w%T3+2*AUX3{+U>8BIW3m3p}}UQjdrzTP-n^ML(6y z$^rHx0vB%oF5 zC*HI_vQrr-W)&-f@+wt*j(;{x6%RgJ_{tY9f#Y}cLJvgBRNz_9mnv`pyC~2|Bq1Yx z6mI<9Za+ab$)mx5&WnnDcjz{AV6?(?;TdQB)Z9eb0kCl z*+Zs&q~?fr_imh@EyIro=r>YX6+%31h4+bZ&_G9AUo@|0W&JC7XSTZBNUo+xeB+gx zH8j{$gt%~v8qnkimh^LF2`UIbZxvE|oKlK1!M5x3aP!Ua!|G3S z<;Rg;kUe`kDukbjqHRUI*ykNuu_#aIpnxeof>6AM7BK2ytAH%I;TMB#d>jE$BIcB3 zIs6GoSk#SI{FL#u^QYmyJt9$$zasm53*A90ySKryDX?X}i5KV}6U%6$wmskYBVvm? zF_DE^H-eKc%TQbd8N@fynkiXFYNu+CX22s#%5?kZoxO-VY&qP$^_s!OultskfhPQh znN%3UW|yp+ika=+`+du(npu`{+zTE@BW7c(SP@}lkW%N(>Nt)6M?&SnOILev>DqOY z1nE{`YXum!Oc!kB>#lM96NypxlOs}a+4{RvWO_Pq9lEE3SibgoPQT(#OP#}QaE2u_ zD9Ry)qPA)Zm{;+}?}|5U`%Hjz_r=-UMVgkouGP|Dg`{qzNuV_W%tK_{_=@WxeU|p7 zbj8K^@zsXf<4y?FcpNRfNHo3YhOdm+CRHeT^5HJ@&*(uTxJauq`(~ff>=^w~lOyZp z1=q(?fF!?`*KojEq| zJBlGO-d&X_s=|qgi6DZmJR|TOAK3ygQSC?2E(CI3I+F;|bJ~39Y`Yu$LUTDWHXw^V zF_?`ab*Y8zdG+e$2!reeVVuS+`<74c1xT-Wsaa@uZ?k3JGN4!061;X%o@P%5Lo8MM z)`Nt`0on3iE-3?K(hJV(CaQNu`kbrnl4m4;PA)u5^{_ z+w6-xPKOQjrW7On?WA@M|5=e|FNJ|a*y{zlCr>cY2xDlar~>E+-pui7xOz#9VeA`7 ziaYqzFl(*HuZ&nXv~ss21&KYx3nGeX=dj5%Df_1{`1uhD+bSEuYcEN_qXuaX==Qm* zH}iNtWq?gcXdP3SMS-lcJyQ4Z4Q4Udj50lmmlh)Q;fVPG`c8JoD4WA^8^Y#0Taa9P zalG^-TNE|!@8tLL2=^?5&7o;)XN+8`2l@D;ov-WzjfkchdU?r5rDt1bdHU7`XiM

4~xm?bNqhUJYQ-i8faIwW6y>yr(N% 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 LCd;rSE8(Lgm6>VIeIfLPu!1 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