From c108ad23e4192e62d75a0b384ee89e49b008ee36 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Mon, 16 Jan 2023 19:04:58 +0100 Subject: [PATCH 01/50] chore(smart-contracts): publish to tenderly --- .gitignore | 1 + packages/smart-contracts/hardhat.config.ts | 7 + packages/smart-contracts/package.json | 1 + .../scripts-create2/tenderly.ts | 29 + .../smart-contracts/scripts-create2/types.ts | 5 + .../smart-contracts/scripts-create2/verify.ts | 2 +- yarn.lock | 2105 ++--------------- 7 files changed, 269 insertions(+), 1881 deletions(-) create mode 100644 packages/smart-contracts/scripts-create2/tenderly.ts diff --git a/.gitignore b/.gitignore index 495fa15f2d..aeb6cddf23 100644 --- a/.gitignore +++ b/.gitignore @@ -42,5 +42,6 @@ tsconfig.build.tsbuildinfo # smart-contracts generated files /packages/smart-contracts/build/ /packages/smart-contracts/cache/ +/packages/smart-contracts/deployments/ /packages/smart-contracts/types/ /packages/smart-contracts/src/types/ diff --git a/packages/smart-contracts/hardhat.config.ts b/packages/smart-contracts/hardhat.config.ts index e02716a455..2e2151d801 100644 --- a/packages/smart-contracts/hardhat.config.ts +++ b/packages/smart-contracts/hardhat.config.ts @@ -15,8 +15,10 @@ import { VerifyCreate2FromList } from './scripts-create2/verify'; import { deployWithCreate2FromList } from './scripts-create2/deploy'; import utils from '@requestnetwork/utils'; import { NUMBER_ERRORS } from './scripts/utils'; +import * as tenderly from '@tenderly/hardhat-tenderly'; config(); +tenderly.setup({ automaticVerifications: false }); const accounts = process.env.DEPLOYMENT_PRIVATE_KEY ? [process.env.DEPLOYMENT_PRIVATE_KEY] @@ -181,6 +183,11 @@ export default { }, ], }, + tenderly: { + project: process.env.TENDERLY_PROJECT, + username: process.env.TENDERLY_USERNAME, + accessKey: process.env.TENDERLY_ACCESS_KEY, + }, typechain: { outDir: 'src/types', target: 'ethers-v5', diff --git a/packages/smart-contracts/package.json b/packages/smart-contracts/package.json index d8e2ee5775..b345ca951f 100644 --- a/packages/smart-contracts/package.json +++ b/packages/smart-contracts/package.json @@ -70,6 +70,7 @@ "@types/chai": "4.2.21", "@types/mocha": "8.2.3", "@types/node": "14.14.16", + "axios": "^1.2.2", "chai": "4.3.4", "dotenv": "10.0.0", "ethereum-waffle": "3.4.0", diff --git a/packages/smart-contracts/scripts-create2/tenderly.ts b/packages/smart-contracts/scripts-create2/tenderly.ts new file mode 100644 index 0000000000..e71e681933 --- /dev/null +++ b/packages/smart-contracts/scripts-create2/tenderly.ts @@ -0,0 +1,29 @@ +import { HardhatRuntimeEnvironmentExtended, IDeploymentParams } from './types'; +import axios from 'axios'; + + +const getTenderlyAxiosInstance = (hre: HardhatRuntimeEnvironmentExtended,) => { + return axios.create({ + baseURL: 'https://api.tenderly.co', + headers: { + 'x-access-key': accessKey, + }, + }) +} +export const pushToTenderly = async ( + hre: HardhatRuntimeEnvironmentExtended, + contracts: Array<{ name: string; address: string }>, +): Promise => { + const { username, accessKey, project } = hre.config.tenderly; + const axiosInstance = + try { + const axiosInstance = getTenderlyAxiosInstance(hre); + for (const contract of contracts) { + await axiosInstance.post(`/api/v2/accounts/${username}/projects/${project}/contracts`, + da, + }); + } + } catch (err) { + console.log(err); + } +}; diff --git a/packages/smart-contracts/scripts-create2/types.ts b/packages/smart-contracts/scripts-create2/types.ts index be4c33bf72..a08f64894b 100644 --- a/packages/smart-contracts/scripts-create2/types.ts +++ b/packages/smart-contracts/scripts-create2/types.ts @@ -14,6 +14,11 @@ export type HardhatRuntimeEnvironmentExtended = HardhatRuntimeEnvironment & { deployerAddress: string; gasLimit?: number; }; + tenderly: { + project: string; + username: string; + accessKey: string; + }; }; }; diff --git a/packages/smart-contracts/scripts-create2/verify.ts b/packages/smart-contracts/scripts-create2/verify.ts index deac8a7875..bd0b28e5d4 100644 --- a/packages/smart-contracts/scripts-create2/verify.ts +++ b/packages/smart-contracts/scripts-create2/verify.ts @@ -64,7 +64,7 @@ export async function VerifyCreate2FromList(hre: HardhatRuntimeEnvironmentExtend // Other cases to add when necessary default: throw new Error( - `The contrat ${contract} is not to be deployed using the CREATE2 scheme`, + `The contract ${contract} is not to be deployed using the CREATE2 scheme`, ); } } catch (err) { diff --git a/yarn.lock b/yarn.lock index 0fcdfee547..f31cb891e2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -156,26 +156,14 @@ dependencies: "@babel/highlight" "^7.10.4" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.5.5": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.13.tgz#dcfc826beef65e75c50e21d3837d7d95798dd658" - integrity sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g== - dependencies: - "@babel/highlight" "^7.12.13" - -"@babel/code-frame@^7.14.5": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.14.5", "@babel/code-frame@^7.5.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.14.5.tgz#23b08d740e83f49c5e59945fbf1b43e80bbf4edb" integrity sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw== dependencies: "@babel/highlight" "^7.14.5" -"@babel/compat-data@^7.13.0", "@babel/compat-data@^7.13.12", "@babel/compat-data@^7.13.8": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.13.12.tgz#a8a5ccac19c200f9dd49624cac6e19d7be1236a1" - integrity sha512-3eJJ841uKxeV8dcN/2yGEUy+RfgQspPEgQat85umsE1rotuquQ2AbIub4S6j7c50a2d+4myc+zSlnXeIHrOnhQ== - -"@babel/compat-data@^7.14.5": +"@babel/compat-data@^7.13.0", "@babel/compat-data@^7.13.12", "@babel/compat-data@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.14.5.tgz#8ef4c18e58e801c5c95d3c1c0f2874a2680fadea" integrity sha512-kixrYn4JwfAVPa0f2yfzc2AWti6WRRyO3XjWW5PJAvtE11qhSayrrcrEnee05KAtNaPC+EwehE8Qt1UedEVB8w== @@ -202,7 +190,7 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/core@^7.0.0": +"@babel/core@^7.0.0", "@babel/core@^7.1.0", "@babel/core@^7.12.16", "@babel/core@^7.12.3", "@babel/core@^7.7.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.14.5.tgz#d281f46a9905f07d1b3bf71ead54d9c7d89cb1e3" integrity sha512-RN/AwP2DJmQTZSfiDaD+JQQ/J99KsIpOCfBE5pL+5jJSt7nI3nYGoAXZu+ffYSQ029NLs2DstZb+eR81uuARgg== @@ -223,29 +211,7 @@ semver "^6.3.0" source-map "^0.5.0" -"@babel/core@^7.1.0", "@babel/core@^7.12.16", "@babel/core@^7.12.3", "@babel/core@^7.7.5": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.13.10.tgz#07de050bbd8193fcd8a3c27918c0890613a94559" - integrity sha512-bfIYcT0BdKeAZrovpMqX2Mx5NrgAckGbwT982AkdS5GNfn3KMGiprlBAtmBcFZRUmpaufS6WZFP8trvx8ptFDw== - dependencies: - "@babel/code-frame" "^7.12.13" - "@babel/generator" "^7.13.9" - "@babel/helper-compilation-targets" "^7.13.10" - "@babel/helper-module-transforms" "^7.13.0" - "@babel/helpers" "^7.13.10" - "@babel/parser" "^7.13.10" - "@babel/template" "^7.12.13" - "@babel/traverse" "^7.13.0" - "@babel/types" "^7.13.0" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.1.2" - lodash "^4.17.19" - semver "^6.3.0" - source-map "^0.5.0" - -"@babel/generator@^7.12.13", "@babel/generator@^7.14.5", "@babel/generator@^7.5.0": +"@babel/generator@^7.12.13", "@babel/generator@^7.12.15", "@babel/generator@^7.12.5", "@babel/generator@^7.14.5", "@babel/generator@^7.5.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.14.5.tgz#848d7b9f031caca9d0cd0af01b063f226f52d785" integrity sha512-y3rlP+/G25OIX3mYKKIOlQRcqj7YgrvHxOLbVmyLJ9bPmi5ttvUmpydVjcFjZphOktWuA7ovbx91ECloWTfjIA== @@ -254,23 +220,7 @@ jsesc "^2.5.1" source-map "^0.5.0" -"@babel/generator@^7.12.15", "@babel/generator@^7.12.5", "@babel/generator@^7.13.0", "@babel/generator@^7.13.9": - version "7.13.9" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.13.9.tgz#3a7aa96f9efb8e2be42d38d80e2ceb4c64d8de39" - integrity sha512-mHOOmY0Axl/JCTkxTU6Lf5sWOg/v8nUa+Xkt4zMTftX0wqmb6Sh7J8gvcehBw7q0AhrhAR+FDacKjCZ2X8K+Sw== - dependencies: - "@babel/types" "^7.13.0" - jsesc "^2.5.1" - source-map "^0.5.0" - -"@babel/helper-annotate-as-pure@^7.0.0", "@babel/helper-annotate-as-pure@^7.10.4", "@babel/helper-annotate-as-pure@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.12.13.tgz#0f58e86dfc4bb3b1fcd7db806570e177d439b6ab" - integrity sha512-7YXfX5wQ5aYM/BOlbSccHDbuXXFPxeoUmfWtz8le2yTkTZc+BxsiEnENFoi2SlmA8ewDkG2LgIMIVzzn2h8kfw== - dependencies: - "@babel/types" "^7.12.13" - -"@babel/helper-annotate-as-pure@^7.14.5": +"@babel/helper-annotate-as-pure@^7.0.0", "@babel/helper-annotate-as-pure@^7.10.4", "@babel/helper-annotate-as-pure@^7.12.13", "@babel/helper-annotate-as-pure@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.14.5.tgz#7bf478ec3b71726d56a8ca5775b046fc29879e61" integrity sha512-EivH9EgBIb+G8ij1B2jAwSH36WnGvkQSEC6CkX/6v6ZFlw5fVOHvsgGF4uiEHO2GzMvunZb6tDLQEQSdrdocrA== @@ -285,17 +235,7 @@ "@babel/helper-explode-assignable-expression" "^7.12.13" "@babel/types" "^7.12.13" -"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.13.10", "@babel/helper-compilation-targets@^7.13.8": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.10.tgz#1310a1678cb8427c07a753750da4f8ce442bdd0c" - integrity sha512-/Xju7Qg1GQO4mHZ/Kcs6Au7gfafgZnwm+a7sy/ow/tV1sHeraRUHbjdat8/UvDor4Tez+siGKDk6zIKtCPKVJA== - dependencies: - "@babel/compat-data" "^7.13.8" - "@babel/helper-validator-option" "^7.12.17" - browserslist "^4.14.5" - semver "^6.3.0" - -"@babel/helper-compilation-targets@^7.14.5": +"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.13.10", "@babel/helper-compilation-targets@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.5.tgz#7a99c5d0967911e972fe2c3411f7d5b498498ecf" integrity sha512-v+QtZqXEiOnpO6EYvlImB6zCD2Lel06RzOPzmkz/D/XgQiUu3C/Jb1LOqSt/AIA34TYi/Q+KlT8vTQrgdxkbLw== @@ -305,18 +245,7 @@ browserslist "^4.16.6" semver "^6.3.0" -"@babel/helper-create-class-features-plugin@^7.13.0": - version "7.13.11" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.13.11.tgz#30d30a005bca2c953f5653fc25091a492177f4f6" - integrity sha512-ays0I7XYq9xbjCSvT+EvysLgfc3tOkwCULHjrnscGT3A9qD4sk3wXnJ3of0MAWsWGjdinFvajHU2smYuqXKMrw== - dependencies: - "@babel/helper-function-name" "^7.12.13" - "@babel/helper-member-expression-to-functions" "^7.13.0" - "@babel/helper-optimise-call-expression" "^7.12.13" - "@babel/helper-replace-supers" "^7.13.0" - "@babel/helper-split-export-declaration" "^7.12.13" - -"@babel/helper-create-class-features-plugin@^7.14.5": +"@babel/helper-create-class-features-plugin@^7.13.0", "@babel/helper-create-class-features-plugin@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.5.tgz#8842ec495516dd1ed8f6c572be92ba78b1e9beef" integrity sha512-Uq9z2e7ZtcnDMirRqAGLRaLwJn+Lrh388v5ETrR3pALJnElVh2zqQmdbz4W2RUJYohAPh2mtyPUgyMHMzXMncQ== @@ -357,16 +286,7 @@ dependencies: "@babel/types" "^7.13.0" -"@babel/helper-function-name@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz#93ad656db3c3c2232559fd7b2c3dbdcbe0eb377a" - integrity sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA== - dependencies: - "@babel/helper-get-function-arity" "^7.12.13" - "@babel/template" "^7.12.13" - "@babel/types" "^7.12.13" - -"@babel/helper-function-name@^7.14.5": +"@babel/helper-function-name@^7.12.13", "@babel/helper-function-name@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz#89e2c474972f15d8e233b52ee8c480e2cfcd50c4" integrity sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ== @@ -375,13 +295,6 @@ "@babel/template" "^7.14.5" "@babel/types" "^7.14.5" -"@babel/helper-get-function-arity@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz#bc63451d403a3b3082b97e1d8b3fe5bd4091e583" - integrity sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg== - dependencies: - "@babel/types" "^7.12.13" - "@babel/helper-get-function-arity@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz#25fbfa579b0937eee1f3b805ece4ce398c431815" @@ -389,28 +302,13 @@ dependencies: "@babel/types" "^7.14.5" -"@babel/helper-hoist-variables@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.13.0.tgz#5d5882e855b5c5eda91e0cadc26c6e7a2c8593d8" - integrity sha512-0kBzvXiIKfsCA0y6cFEIJf4OdzfpRuNk4+YTeHZpGGc666SATFKTz6sRncwFnQk7/ugJ4dSrCj6iJuvW4Qwr2g== - dependencies: - "@babel/traverse" "^7.13.0" - "@babel/types" "^7.13.0" - -"@babel/helper-hoist-variables@^7.14.5": +"@babel/helper-hoist-variables@^7.13.0", "@babel/helper-hoist-variables@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz#e0dd27c33a78e577d7c8884916a3e7ef1f7c7f8d" integrity sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ== dependencies: "@babel/types" "^7.14.5" -"@babel/helper-member-expression-to-functions@^7.13.0", "@babel/helper-member-expression-to-functions@^7.13.12": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz#dfe368f26d426a07299d8d6513821768216e6d72" - integrity sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw== - dependencies: - "@babel/types" "^7.13.12" - "@babel/helper-member-expression-to-functions@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.5.tgz#d5c70e4ad13b402c95156c7a53568f504e2fb7b8" @@ -418,35 +316,14 @@ dependencies: "@babel/types" "^7.14.5" -"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.13.12": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz#c6a369a6f3621cb25da014078684da9196b61977" - integrity sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA== - dependencies: - "@babel/types" "^7.13.12" - -"@babel/helper-module-imports@^7.14.5": +"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz#6d1a44df6a38c957aa7c312da076429f11b422f3" integrity sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ== dependencies: "@babel/types" "^7.14.5" -"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.13.0": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.13.12.tgz#600e58350490828d82282631a1422268e982ba96" - integrity sha512-7zVQqMO3V+K4JOOj40kxiCrMf6xlQAkewBB0eu2b03OO/Q21ZutOzjpfD79A5gtE/2OWi1nv625MrDlGlkbknQ== - dependencies: - "@babel/helper-module-imports" "^7.13.12" - "@babel/helper-replace-supers" "^7.13.12" - "@babel/helper-simple-access" "^7.13.12" - "@babel/helper-split-export-declaration" "^7.12.13" - "@babel/helper-validator-identifier" "^7.12.11" - "@babel/template" "^7.12.13" - "@babel/traverse" "^7.13.0" - "@babel/types" "^7.13.12" - -"@babel/helper-module-transforms@^7.14.5": +"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.13.0", "@babel/helper-module-transforms@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.14.5.tgz#7de42f10d789b423eb902ebd24031ca77cb1e10e" integrity sha512-iXpX4KW8LVODuAieD7MzhNjmM6dzYY5tfRqT+R9HDXWl0jPn/djKmA+G9s/2C2T9zggw5tK1QNqZ70USfedOwA== @@ -460,13 +337,6 @@ "@babel/traverse" "^7.14.5" "@babel/types" "^7.14.5" -"@babel/helper-optimise-call-expression@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz#5c02d171b4c8615b1e7163f888c1c81c30a2aaea" - integrity sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA== - dependencies: - "@babel/types" "^7.12.13" - "@babel/helper-optimise-call-expression@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz#f27395a8619e0665b3f0364cddb41c25d71b499c" @@ -479,12 +349,7 @@ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz#2f75a831269d4f677de49986dff59927533cf375" integrity sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg== -"@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.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz#806526ce125aed03373bc416a828321e3a6a33af" - integrity sha512-ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ== - -"@babel/helper-plugin-utils@^7.14.5": +"@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== @@ -498,16 +363,6 @@ "@babel/helper-wrap-function" "^7.13.0" "@babel/types" "^7.13.0" -"@babel/helper-replace-supers@^7.12.13", "@babel/helper-replace-supers@^7.13.0", "@babel/helper-replace-supers@^7.13.12": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.13.12.tgz#6442f4c1ad912502481a564a7386de0c77ff3804" - integrity sha512-Gz1eiX+4yDO8mT+heB94aLVNCL+rbuT2xy4YfyNqu8F+OI6vMvJK891qGBTqL9Uc8wxEvRW92Id6G7sDen3fFw== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.13.12" - "@babel/helper-optimise-call-expression" "^7.12.13" - "@babel/traverse" "^7.13.0" - "@babel/types" "^7.13.12" - "@babel/helper-replace-supers@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.14.5.tgz#0ecc0b03c41cd567b4024ea016134c28414abb94" @@ -518,13 +373,6 @@ "@babel/traverse" "^7.14.5" "@babel/types" "^7.14.5" -"@babel/helper-simple-access@^7.12.13", "@babel/helper-simple-access@^7.13.12": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz#dd6c538afb61819d205a012c31792a39c7a5eaf6" - integrity sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA== - dependencies: - "@babel/types" "^7.13.12" - "@babel/helper-simple-access@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.14.5.tgz#66ea85cf53ba0b4e588ba77fc813f53abcaa41c4" @@ -532,50 +380,26 @@ dependencies: "@babel/types" "^7.14.5" -"@babel/helper-skip-transparent-expression-wrappers@^7.12.1": - version "7.12.1" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz#462dc63a7e435ade8468385c63d2b84cce4b3cbf" - integrity sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA== - dependencies: - "@babel/types" "^7.12.1" - -"@babel/helper-skip-transparent-expression-wrappers@^7.14.5": +"@babel/helper-skip-transparent-expression-wrappers@^7.12.1", "@babel/helper-skip-transparent-expression-wrappers@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.14.5.tgz#96f486ac050ca9f44b009fbe5b7d394cab3a0ee4" integrity sha512-dmqZB7mrb94PZSAOYtr+ZN5qt5owZIAgqtoTuqiFbHFtxgEcmQlRJVI+bO++fciBunXtB6MK7HrzrfcAzIz2NQ== dependencies: "@babel/types" "^7.14.5" -"@babel/helper-split-export-declaration@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz#e9430be00baf3e88b0e13e6f9d4eaf2136372b05" - integrity sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg== - dependencies: - "@babel/types" "^7.12.13" - -"@babel/helper-split-export-declaration@^7.14.5": +"@babel/helper-split-export-declaration@^7.12.13", "@babel/helper-split-export-declaration@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz#22b23a54ef51c2b7605d851930c1976dd0bc693a" integrity sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA== dependencies: "@babel/types" "^7.14.5" -"@babel/helper-validator-identifier@^7.12.11": - version "7.12.11" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz#c9a1f021917dcb5ccf0d4e453e399022981fc9ed" - integrity sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw== - -"@babel/helper-validator-identifier@^7.14.5": +"@babel/helper-validator-identifier@^7.12.11", "@babel/helper-validator-identifier@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz#d0f0e277c512e0c938277faa85a3968c9a44c0e8" integrity sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg== -"@babel/helper-validator-option@^7.12.17": - version "7.12.17" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz#d1fbf012e1a79b7eebbfdc6d270baaf8d9eb9831" - integrity sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw== - -"@babel/helper-validator-option@^7.14.5": +"@babel/helper-validator-option@^7.12.17", "@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== @@ -590,16 +414,7 @@ "@babel/traverse" "^7.13.0" "@babel/types" "^7.13.0" -"@babel/helpers@^7.12.5", "@babel/helpers@^7.13.10": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.13.10.tgz#fd8e2ba7488533cdeac45cc158e9ebca5e3c7df8" - integrity sha512-4VO883+MWPDUVRF3PhiLBUFHoX/bsLTGFpFK/HqvvfBZz2D57u9XzPVNFVBTc0PW/CWR9BXTOKt8NF4DInUHcQ== - dependencies: - "@babel/template" "^7.12.13" - "@babel/traverse" "^7.13.0" - "@babel/types" "^7.13.0" - -"@babel/helpers@^7.14.5": +"@babel/helpers@^7.12.5", "@babel/helpers@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.14.5.tgz#4870f8d9a6fdbbd65e5674a3558b4ff7fef0d9b2" integrity sha512-xtcWOuN9VL6nApgVHtq3PPcQv5qFBJzoSZzJ/2c0QK/IP/gxVcoWSNQwFEGvmbQsuS9rhYqjILDGGXcTkA705Q== @@ -608,16 +423,7 @@ "@babel/traverse" "^7.14.5" "@babel/types" "^7.14.5" -"@babel/highlight@^7.10.4", "@babel/highlight@^7.12.13": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.13.10.tgz#a8b2a66148f5b27d666b15d81774347a731d52d1" - integrity sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg== - dependencies: - "@babel/helper-validator-identifier" "^7.12.11" - chalk "^2.0.0" - js-tokens "^4.0.0" - -"@babel/highlight@^7.14.5": +"@babel/highlight@^7.10.4", "@babel/highlight@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.5.tgz#6861a52f03966405001f6aa534a01a24d99e8cd9" integrity sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg== @@ -631,16 +437,11 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.12.16.tgz#cc31257419d2c3189d394081635703f549fc1ed4" integrity sha512-c/+u9cqV6F0+4Hpq01jnJO+GLp2DdT63ppz9Xa+6cHaajM9VFzK/iDXiKK65YtpeVwu+ctfS6iqlMqRgQRzeCw== -"@babel/parser@^7.0.0", "@babel/parser@^7.14.5": +"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.12.13", "@babel/parser@^7.12.16", "@babel/parser@^7.12.7", "@babel/parser@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.14.5.tgz#4cd2f346261061b2518873ffecdf1612cb032829" integrity sha512-TM8C+xtH/9n1qzX+JNHi7AN2zHMTiPUtspO0ZdHflW8KaskkALhMmuMHb4bCmNdv9VAPzJX3/bXqkVLnAvsPfg== -"@babel/parser@^7.1.0", "@babel/parser@^7.12.13", "@babel/parser@^7.12.16", "@babel/parser@^7.12.7", "@babel/parser@^7.13.0", "@babel/parser@^7.13.10": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.13.12.tgz#ba320059420774394d3b0c0233ba40e4250b81d1" - integrity sha512-4T7Pb244rxH24yR116LAuJ+adxXXnHhZaLJjegJVKSdoNCe4x1eDBaud5YIcQFcqzsaD5BHvJw5BQ0AZapdCRw== - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.13.12": version "7.13.12" resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.13.12.tgz#a3484d84d0b549f3fc916b99ee4783f26fabad2a" @@ -659,7 +460,7 @@ "@babel/helper-remap-async-to-generator" "^7.13.0" "@babel/plugin-syntax-async-generators" "^7.8.4" -"@babel/plugin-proposal-class-properties@^7.0.0": +"@babel/plugin-proposal-class-properties@^7.0.0", "@babel/plugin-proposal-class-properties@^7.13.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.14.5.tgz#40d1ee140c5b1e31a350f4f5eed945096559b42e" integrity sha512-q/PLpv5Ko4dVc1LYMpCY7RVAAO4uk55qPwrIuJ5QJ8c6cVuAmhu7I/49JOppXL6gXf7ZHzpRVEUZdYoPLM04Gg== @@ -667,14 +468,6 @@ "@babel/helper-create-class-features-plugin" "^7.14.5" "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-proposal-class-properties@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.13.0.tgz#146376000b94efd001e57a40a88a525afaab9f37" - integrity sha512-KnTDjFNC1g+45ka0myZNvSBFLhNCLN+GeGYLDEA8Oq7MZ6yMgfLoIRh86GRT0FjtJhZw8JyUskP9uvj5pHM9Zg== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.13.0" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-proposal-dynamic-import@^7.13.8": version "7.13.8" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.13.8.tgz#876a1f6966e1dec332e8c9451afda3bebcdf2e1d" @@ -732,7 +525,7 @@ "@babel/plugin-syntax-object-rest-spread" "^7.8.0" "@babel/plugin-transform-parameters" "^7.12.1" -"@babel/plugin-proposal-object-rest-spread@^7.0.0": +"@babel/plugin-proposal-object-rest-spread@^7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.13.8": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.5.tgz#e581d5ccdfa187ea6ed73f56c6a21c1580b90fbf" integrity sha512-VzMyY6PWNPPT3pxc5hi9LloKNr4SSrVCg7Yr6aZpW4Ym07r7KqSU/QXYwjXLVxqwSv0t/XSXkFoKBPUkZ8vb2A== @@ -743,17 +536,6 @@ "@babel/plugin-syntax-object-rest-spread" "^7.8.3" "@babel/plugin-transform-parameters" "^7.14.5" -"@babel/plugin-proposal-object-rest-spread@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.13.8.tgz#5d210a4d727d6ce3b18f9de82cc99a3964eed60a" - integrity sha512-DhB2EuB1Ih7S3/IRX5AFVgZ16k3EzfRbq97CxAVI1KSYcW+lexV8VZb7G7L8zuPVSdQMRn0kiBpf/Yzu9ZKH0g== - dependencies: - "@babel/compat-data" "^7.13.8" - "@babel/helper-compilation-targets" "^7.13.8" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.13.0" - "@babel/plugin-proposal-optional-catch-binding@^7.13.8": version "7.13.8" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.13.8.tgz#3ad6bd5901506ea996fc31bdcf3ccfa2bed71107" @@ -857,13 +639,6 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-jsx@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.13.tgz#044fb81ebad6698fe62c478875575bcbb9b70f15" - integrity sha512-d4HM23Q1K7oq/SLNmG6mRt85l2csmQ0cHRaxRXjKW0YFdEXqlZ5kzFQKH5Uc3rDJECgu+yCRgPkG04Mm98R/1g== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - "@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" @@ -920,20 +695,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.12.13" -"@babel/plugin-transform-arrow-functions@^7.0.0": +"@babel/plugin-transform-arrow-functions@^7.0.0", "@babel/plugin-transform-arrow-functions@^7.13.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.14.5.tgz#f7187d9588a768dd080bf4c9ffe117ea62f7862a" integrity sha512-KOnO0l4+tD5IfOdi4x8C1XmEIRWUjNRV8wc6K2vz/3e8yAOoZZvsRXRRIF/yo/MAOFb4QjtAw9xSxMXbSMRy8A== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-arrow-functions@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.13.0.tgz#10a59bebad52d637a027afa692e8d5ceff5e3dae" - integrity sha512-96lgJagobeVmazXFaDrbmCLQxBysKu7U6Do3mLsx27gf5Dk85ezysrs2BZUpXD703U/Su1xTBDxxar2oa4jAGg== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-transform-async-to-generator@^7.13.0": version "7.13.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.13.0.tgz#8e112bf6771b82bf1e974e5e26806c5c99aa516f" @@ -943,35 +711,21 @@ "@babel/helper-plugin-utils" "^7.13.0" "@babel/helper-remap-async-to-generator" "^7.13.0" -"@babel/plugin-transform-block-scoped-functions@^7.0.0": +"@babel/plugin-transform-block-scoped-functions@^7.0.0", "@babel/plugin-transform-block-scoped-functions@^7.12.13": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.14.5.tgz#e48641d999d4bc157a67ef336aeb54bc44fd3ad4" integrity sha512-dtqWqdWZ5NqBX3KzsVCWfQI3A53Ft5pWFCT2eCVUftWZgjc5DpDponbIF1+c+7cSGk2wN0YK7HGL/ezfRbpKBQ== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-block-scoped-functions@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.12.13.tgz#a9bf1836f2a39b4eb6cf09967739de29ea4bf4c4" - integrity sha512-zNyFqbc3kI/fVpqwfqkg6RvBgFpC4J18aKKMmv7KdQ/1GgREapSJAykLMVNwfRGO3BtHj3YQZl8kxCXPcVMVeg== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-block-scoping@^7.0.0": +"@babel/plugin-transform-block-scoping@^7.0.0", "@babel/plugin-transform-block-scoping@^7.12.13": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.5.tgz#8cc63e61e50f42e078e6f09be775a75f23ef9939" integrity sha512-LBYm4ZocNgoCqyxMLoOnwpsmQ18HWTQvql64t3GvMUzLQrNoV1BDG0lNftC8QKYERkZgCCT/7J5xWGObGAyHDw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-block-scoping@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.12.13.tgz#f36e55076d06f41dfd78557ea039c1b581642e61" - integrity sha512-Pxwe0iqWJX4fOOM2kEZeUuAxHMWb9nK+9oh5d11bsLoB0xMg+mkDpt0eYuDZB7ETrY9bbcVlKUGTOGWy7BHsMQ== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-classes@^7.0.0": +"@babel/plugin-transform-classes@^7.0.0", "@babel/plugin-transform-classes@^7.13.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.5.tgz#0e98e82097b38550b03b483f9b51a78de0acb2cf" integrity sha512-J4VxKAMykM06K/64z9rwiL6xnBHgB1+FVspqvlgCdwD1KUbQNfszeKVVOMh59w3sztHYIZDgnhOC4WbdEfHFDA== @@ -984,47 +738,20 @@ "@babel/helper-split-export-declaration" "^7.14.5" globals "^11.1.0" -"@babel/plugin-transform-classes@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.13.0.tgz#0265155075c42918bf4d3a4053134176ad9b533b" - integrity sha512-9BtHCPUARyVH1oXGcSJD3YpsqRLROJx5ZNP6tN5vnk17N0SVf9WCtf8Nuh1CFmgByKKAIMstitKduoCmsaDK5g== - dependencies: - "@babel/helper-annotate-as-pure" "^7.12.13" - "@babel/helper-function-name" "^7.12.13" - "@babel/helper-optimise-call-expression" "^7.12.13" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-replace-supers" "^7.13.0" - "@babel/helper-split-export-declaration" "^7.12.13" - globals "^11.1.0" - -"@babel/plugin-transform-computed-properties@^7.0.0": +"@babel/plugin-transform-computed-properties@^7.0.0", "@babel/plugin-transform-computed-properties@^7.13.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.14.5.tgz#1b9d78987420d11223d41195461cc43b974b204f" integrity sha512-pWM+E4283UxaVzLb8UBXv4EIxMovU4zxT1OPnpHJcmnvyY9QbPPTKZfEj31EUvG3/EQRbYAGaYEUZ4yWOBC2xg== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-computed-properties@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.13.0.tgz#845c6e8b9bb55376b1fa0b92ef0bdc8ea06644ed" - integrity sha512-RRqTYTeZkZAz8WbieLTvKUEUxZlUTdmL5KGMyZj7FnMfLNKV4+r5549aORG/mgojRmFlQMJDUupwAMiF2Q7OUg== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - -"@babel/plugin-transform-destructuring@^7.0.0": +"@babel/plugin-transform-destructuring@^7.0.0", "@babel/plugin-transform-destructuring@^7.13.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.5.tgz#d32ad19ff1a6da1e861dc62720d80d9776e3bf35" integrity sha512-wU9tYisEbRMxqDezKUqC9GleLycCRoUsai9ddlsq54r8QRLaeEhc+d+9DqCG+kV9W2GgQjTZESPTpn5bAFMDww== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-destructuring@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.13.0.tgz#c5dce270014d4e1ebb1d806116694c12b7028963" - integrity sha512-zym5em7tePoNT9s964c0/KU3JPPnuq7VhIxPRefJ4/s82cD+q1mgKfuGRDMCPL0HTyKz4dISuQlCusfgCJ86HA== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-transform-dotall-regex@^7.12.13", "@babel/plugin-transform-dotall-regex@^7.4.4": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.12.13.tgz#3f1601cc29905bfcb67f53910f197aeafebb25ad" @@ -1056,21 +783,14 @@ "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-flow" "^7.14.5" -"@babel/plugin-transform-for-of@^7.0.0": +"@babel/plugin-transform-for-of@^7.0.0", "@babel/plugin-transform-for-of@^7.13.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.14.5.tgz#dae384613de8f77c196a8869cbf602a44f7fc0eb" integrity sha512-CfmqxSUZzBl0rSjpoQSFoR9UEj3HzbGuGNL21/iFTmjb5gFggJp3ph0xR1YBhexmLoKRHzgxuFvty2xdSt6gTA== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-for-of@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.13.0.tgz#c799f881a8091ac26b54867a845c3e97d2696062" - integrity sha512-IHKT00mwUVYE0zzbkDgNRP6SRzvfGCYsOxIRz8KsiaaHCcT9BWIkO+H9QRJseHBLOGBZkHUdHiqj6r0POsdytg== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - -"@babel/plugin-transform-function-name@^7.0.0": +"@babel/plugin-transform-function-name@^7.0.0", "@babel/plugin-transform-function-name@^7.12.13": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.14.5.tgz#e81c65ecb900746d7f31802f6bed1f52d915d6f2" integrity sha512-vbO6kv0fIzZ1GpmGQuvbwwm+O4Cbm2NrPzwlup9+/3fdkuzo1YqOZcXw26+YUJB84Ja7j9yURWposEHLYwxUfQ== @@ -1078,42 +798,20 @@ "@babel/helper-function-name" "^7.14.5" "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-function-name@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.12.13.tgz#bb024452f9aaed861d374c8e7a24252ce3a50051" - integrity sha512-6K7gZycG0cmIwwF7uMK/ZqeCikCGVBdyP2J5SKNCXO5EOHcqi+z7Jwf8AmyDNcBgxET8DrEtCt/mPKPyAzXyqQ== - dependencies: - "@babel/helper-function-name" "^7.12.13" - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-literals@^7.0.0": +"@babel/plugin-transform-literals@^7.0.0", "@babel/plugin-transform-literals@^7.12.13": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.14.5.tgz#41d06c7ff5d4d09e3cf4587bd3ecf3930c730f78" integrity sha512-ql33+epql2F49bi8aHXxvLURHkxJbSmMKl9J5yHqg4PLtdE6Uc48CH1GS6TQvZ86eoB/ApZXwm7jlA+B3kra7A== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-literals@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.12.13.tgz#2ca45bafe4a820197cf315794a4d26560fe4bdb9" - integrity sha512-FW+WPjSR7hiUxMcKqyNjP05tQ2kmBCdpEpZHY1ARm96tGQCCBvXKnpjILtDplUnJ/eHZ0lALLM+d2lMFSpYJrQ== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-member-expression-literals@^7.0.0": +"@babel/plugin-transform-member-expression-literals@^7.0.0", "@babel/plugin-transform-member-expression-literals@^7.12.13": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.14.5.tgz#b39cd5212a2bf235a617d320ec2b48bcc091b8a7" integrity sha512-WkNXxH1VXVTKarWFqmso83xl+2V3Eo28YY5utIkbsmXoItO8Q3aZxN4BTS2k0hz9dGUloHK26mJMyQEYfkn/+Q== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-member-expression-literals@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.12.13.tgz#5ffa66cd59b9e191314c9f1f803b938e8c081e40" - integrity sha512-kxLkOsg8yir4YeEPHLuO2tXP9R/gTjpuTOjshqSpELUN3ZAg2jfDnKUvzzJxObun38sw3wm4Uu69sX/zA7iRvg== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - "@babel/plugin-transform-modules-amd@^7.13.0": version "7.13.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.13.0.tgz#19f511d60e3d8753cc5a6d4e775d3a5184866cc3" @@ -1123,7 +821,7 @@ "@babel/helper-plugin-utils" "^7.13.0" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-commonjs@^7.0.0": +"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.14.5.tgz#7aaee0ea98283de94da98b28f8c35701429dad97" integrity sha512-en8GfBtgnydoao2PS+87mKyw62k02k7kJ9ltbKe0fXTHrQmG6QZZflYuGI1VVG7sVpx4E1n7KBpNlPb8m78J+A== @@ -1133,16 +831,6 @@ "@babel/helper-simple-access" "^7.14.5" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-commonjs@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.13.8.tgz#7b01ad7c2dcf2275b06fa1781e00d13d420b3e1b" - integrity sha512-9QiOx4MEGglfYZ4XOnU79OHr6vIWUakIj9b4mioN8eQIoEh+pf5p/zEB36JpDFWA12nNMiRf7bfoRvl9Rn79Bw== - dependencies: - "@babel/helper-module-transforms" "^7.13.0" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-simple-access" "^7.12.13" - babel-plugin-dynamic-import-node "^2.3.3" - "@babel/plugin-transform-modules-systemjs@^7.13.8": version "7.13.8" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.13.8.tgz#6d066ee2bff3c7b3d60bf28dec169ad993831ae3" @@ -1176,7 +864,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.12.13" -"@babel/plugin-transform-object-super@^7.0.0": +"@babel/plugin-transform-object-super@^7.0.0", "@babel/plugin-transform-object-super@^7.12.13": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.14.5.tgz#d0b5faeac9e98597a161a9cf78c527ed934cdc45" integrity sha512-MKfOBWzK0pZIrav9z/hkRqIk/2bTv9qvxHzPQc12RcVkMOzpIKnFCNYJip00ssKWYkd8Sf5g0Wr7pqJ+cmtuFg== @@ -1184,42 +872,20 @@ "@babel/helper-plugin-utils" "^7.14.5" "@babel/helper-replace-supers" "^7.14.5" -"@babel/plugin-transform-object-super@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.12.13.tgz#b4416a2d63b8f7be314f3d349bd55a9c1b5171f7" - integrity sha512-JzYIcj3XtYspZDV8j9ulnoMPZZnF/Cj0LUxPOjR89BdBVx+zYJI9MdMIlUZjbXDX+6YVeS6I3e8op+qQ3BYBoQ== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - "@babel/helper-replace-supers" "^7.12.13" - -"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.14.5": +"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.12.1", "@babel/plugin-transform-parameters@^7.13.0", "@babel/plugin-transform-parameters@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.5.tgz#49662e86a1f3ddccac6363a7dfb1ff0a158afeb3" integrity sha512-Tl7LWdr6HUxTmzQtzuU14SqbgrSKmaR77M0OKyq4njZLQTPfOvzblNKyNkGwOfEFCEx7KeYHQHDI0P3F02IVkA== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-parameters@^7.12.1", "@babel/plugin-transform-parameters@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.13.0.tgz#8fa7603e3097f9c0b7ca1a4821bc2fb52e9e5007" - integrity sha512-Jt8k/h/mIwE2JFEOb3lURoY5C85ETcYPnbuAJ96zRBzh1XHtQZfs62ChZ6EP22QlC8c7Xqr9q+e1SU5qttwwjw== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - -"@babel/plugin-transform-property-literals@^7.0.0": +"@babel/plugin-transform-property-literals@^7.0.0", "@babel/plugin-transform-property-literals@^7.12.13": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.14.5.tgz#0ddbaa1f83db3606f1cdf4846fa1dfb473458b34" integrity sha512-r1uilDthkgXW8Z1vJz2dKYLV1tuw2xsbrp3MrZmD99Wh9vsfKoob+JTgri5VUb/JqyKRXotlOtwgu4stIYCmnw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-property-literals@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.12.13.tgz#4e6a9e37864d8f1b3bc0e2dce7bf8857db8b1a81" - integrity sha512-nqVigwVan+lR+g8Fj8Exl0UQX2kymtjcWfMOYM1vTYEKujeyv2SkMgazf2qNcK7l4SDiKyTA/nHCPqL4e2zo1A== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - "@babel/plugin-transform-react-constant-elements@^7.12.1": version "7.13.10" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.13.10.tgz#5d3de8a8ee53f4612e728f4f17b8c9125f8019e5" @@ -1227,20 +893,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.13.0" -"@babel/plugin-transform-react-display-name@^7.0.0": +"@babel/plugin-transform-react-display-name@^7.0.0", "@babel/plugin-transform-react-display-name@^7.12.13": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.14.5.tgz#baa92d15c4570411301a85a74c13534873885b65" integrity sha512-07aqY1ChoPgIxsuDviptRpVkWCSbXWmzQqcgy65C6YSFOfPFvb/DX3bBRHh7pCd/PMEEYHYWUTSVkCbkVainYQ== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-react-display-name@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.12.13.tgz#c28effd771b276f4647411c9733dbb2d2da954bd" - integrity sha512-MprESJzI9O5VnJZrL7gg1MpdqmiFcUv41Jc7SahxYsNP2kDkFqClxxTZq+1Qv4AFCamm+GXMRDQINNn+qrxmiA== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - "@babel/plugin-transform-react-jsx-development@^7.12.12": version "7.12.17" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.12.17.tgz#f510c0fa7cd7234153539f9a362ced41a5ca1447" @@ -1248,7 +907,7 @@ dependencies: "@babel/plugin-transform-react-jsx" "^7.12.17" -"@babel/plugin-transform-react-jsx@^7.0.0": +"@babel/plugin-transform-react-jsx@^7.0.0", "@babel/plugin-transform-react-jsx@^7.12.13", "@babel/plugin-transform-react-jsx@^7.12.17": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.14.5.tgz#39749f0ee1efd8a1bd729152cf5f78f1d247a44a" integrity sha512-7RylxNeDnxc1OleDm0F5Q/BSL+whYRbOAR+bwgCxIr0L32v7UFh/pz1DLMZideAUxKT6eMoS2zQH6fyODLEi8Q== @@ -1259,17 +918,6 @@ "@babel/plugin-syntax-jsx" "^7.14.5" "@babel/types" "^7.14.5" -"@babel/plugin-transform-react-jsx@^7.12.13", "@babel/plugin-transform-react-jsx@^7.12.17": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.13.12.tgz#1df5dfaf0f4b784b43e96da6f28d630e775f68b3" - integrity sha512-jcEI2UqIcpCqB5U5DRxIl0tQEProI2gcu+g8VTIqxLO5Iidojb4d77q+fwGseCvd8af/lJ9masp4QWzBXFE2xA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.12.13" - "@babel/helper-module-imports" "^7.13.12" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-jsx" "^7.12.13" - "@babel/types" "^7.13.12" - "@babel/plugin-transform-react-pure-annotations@^7.12.1": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.12.1.tgz#05d46f0ab4d1339ac59adf20a1462c91b37a1a42" @@ -1304,21 +952,14 @@ babel-plugin-polyfill-regenerator "^0.1.2" semver "^6.3.0" -"@babel/plugin-transform-shorthand-properties@^7.0.0": +"@babel/plugin-transform-shorthand-properties@^7.0.0", "@babel/plugin-transform-shorthand-properties@^7.12.13": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.14.5.tgz#97f13855f1409338d8cadcbaca670ad79e091a58" integrity sha512-xLucks6T1VmGsTB+GWK5Pl9Jl5+nRXD1uoFdA5TSO6xtiNjtXTjKkmPdFXVLGlK5A2/or/wQMKfmQ2Y0XJfn5g== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-shorthand-properties@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.12.13.tgz#db755732b70c539d504c6390d9ce90fe64aff7ad" - integrity sha512-xpL49pqPnLtf0tVluuqvzWIgLEhuPpZzvs2yabUHSKRNlN7ScYU7aMlmavOeyXJZKgZKQRBlh8rHbKiJDraTSw== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-spread@^7.0.0": +"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.13.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.14.5.tgz#bd269fb4119754d2ce7f4cc39a96b4f71baae356" integrity sha512-/3iqoQdiWergnShZYl0xACb4ADeYCJ7X/RgmwtXshn6cIvautRPAFzhd58frQlokLO6Jb4/3JXvmm6WNTPtiTw== @@ -1326,14 +967,6 @@ "@babel/helper-plugin-utils" "^7.14.5" "@babel/helper-skip-transparent-expression-wrappers" "^7.14.5" -"@babel/plugin-transform-spread@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.13.0.tgz#84887710e273c1815ace7ae459f6f42a5d31d5fd" - integrity sha512-V6vkiXijjzYeFmQTr3dBxPtZYLPcUfY34DebOU27jIl2M/Y8Egm52Hw82CSjjPqd54GTlJs5x+CR7HeNr24ckg== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.12.1" - "@babel/plugin-transform-sticky-regex@^7.12.13": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.13.tgz#760ffd936face73f860ae646fb86ee82f3d06d1f" @@ -1341,20 +974,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.12.13" -"@babel/plugin-transform-template-literals@^7.0.0": +"@babel/plugin-transform-template-literals@^7.0.0", "@babel/plugin-transform-template-literals@^7.13.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.14.5.tgz#a5f2bc233937d8453885dc736bdd8d9ffabf3d93" integrity sha512-22btZeURqiepOfuy/VkFr+zStqlujWaarpMErvay7goJS6BWwdd6BY9zQyDLDa4x2S3VugxFb162IZ4m/S/+Gg== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-template-literals@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.13.0.tgz#a36049127977ad94438dee7443598d1cefdf409d" - integrity sha512-d67umW6nlfmr1iehCcBv69eSUSySk1EsIS8aTDX4Xo9qajAh6mYtcl4kJrBkGXuxZPEgVr7RVfAvNW6YQkd4Mw== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-transform-typeof-symbol@^7.12.13": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.12.13.tgz#785dd67a1f2ea579d9c2be722de8c84cb85f5a7f" @@ -1500,30 +1126,14 @@ core-js-pure "^3.0.0" regenerator-runtime "^0.13.4" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.10.3", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.5", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.13.10.tgz#47d42a57b6095f4468da440388fdbad8bebf0d7d" - integrity sha512-4QPkjJq6Ns3V/RgpEahRk+AGfL0eO6RHHtTWoNNr5mO49G6B5+X6d6THgWEAvTrznU5xYpbAlVKRYcsCgh/Akw== - dependencies: - regenerator-runtime "^0.13.4" - -"@babel/runtime@^7.4.4": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.10.3", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.5", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4": version "7.17.9" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.17.9.tgz#d19fbf802d01a8cb6cf053a64e472d42c434ba72" integrity sha512-lSiBBvodq29uShpWGNbgFdKYNiFDo5/HIYsaCEY9ff4sb10x9jizo2+pRrSyF4jKZCXqgzuqBOQKbUm90gQwJg== dependencies: regenerator-runtime "^0.13.4" -"@babel/template@^7.12.13", "@babel/template@^7.12.7", "@babel/template@^7.3.3": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.12.13.tgz#530265be8a2589dbb37523844c5bcb55947fb327" - integrity sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA== - dependencies: - "@babel/code-frame" "^7.12.13" - "@babel/parser" "^7.12.13" - "@babel/types" "^7.12.13" - -"@babel/template@^7.14.5": +"@babel/template@^7.12.13", "@babel/template@^7.12.7", "@babel/template@^7.14.5", "@babel/template@^7.3.3": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.14.5.tgz#a9bc9d8b33354ff6e55a9c60d1109200a68974f4" integrity sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g== @@ -1547,7 +1157,7 @@ globals "^11.1.0" lodash "^4.17.19" -"@babel/traverse@^7.0.0", "@babel/traverse@^7.14.5": +"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.12.13", "@babel/traverse@^7.12.9", "@babel/traverse@^7.13.0", "@babel/traverse@^7.14.5", "@babel/traverse@^7.4.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.14.5.tgz#c111b0f58afab4fea3d3385a406f692748c59870" integrity sha512-G3BiS15vevepdmFqmUc9X+64y0viZYygubAMO8SvBmKARuF6CPSZtH4Ng9vi/lrWlZFGe3FWdXNy835akH8Glg== @@ -1562,21 +1172,6 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/traverse@^7.1.0", "@babel/traverse@^7.12.13", "@babel/traverse@^7.12.9", "@babel/traverse@^7.13.0", "@babel/traverse@^7.4.5": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.13.0.tgz#6d95752475f86ee7ded06536de309a65fc8966cc" - integrity sha512-xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ== - dependencies: - "@babel/code-frame" "^7.12.13" - "@babel/generator" "^7.13.0" - "@babel/helper-function-name" "^7.12.13" - "@babel/helper-split-export-declaration" "^7.12.13" - "@babel/parser" "^7.13.0" - "@babel/types" "^7.13.0" - debug "^4.1.0" - globals "^11.1.0" - lodash "^4.17.19" - "@babel/types@7.12.13": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.12.13.tgz#8be1aa8f2c876da11a9cf650c0ecf656913ad611" @@ -1586,16 +1181,7 @@ lodash "^4.17.19" to-fast-properties "^2.0.0" -"@babel/types@^7.0.0", "@babel/types@^7.12.1", "@babel/types@^7.12.13", "@babel/types@^7.12.6", "@babel/types@^7.12.7", "@babel/types@^7.13.0", "@babel/types@^7.13.12", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.13.12.tgz#edbf99208ef48852acdff1c8a681a1e4ade580cd" - integrity sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA== - dependencies: - "@babel/helper-validator-identifier" "^7.12.11" - lodash "^4.17.19" - to-fast-properties "^2.0.0" - -"@babel/types@^7.14.5": +"@babel/types@^7.0.0", "@babel/types@^7.12.13", "@babel/types@^7.12.6", "@babel/types@^7.12.7", "@babel/types@^7.13.0", "@babel/types@^7.13.12", "@babel/types@^7.14.5", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.14.5.tgz#3bb997ba829a2104cedb20689c4a5b8121d383ff" integrity sha512-M/NzBpEL95I5Hh4dwhin5JlE7EzO5PHMAuzjxss3tiOBD46KfQvVedN/3jEPZvdRvtsK2222XfdHogNIttFgcg== @@ -2238,7 +1824,7 @@ lru-cache "^5.1.1" semaphore-async-await "^1.5.1" -"@ethereumjs/common@^2.3.0", "@ethereumjs/common@^2.3.1", "@ethereumjs/common@^2.5.0", "@ethereumjs/common@^2.6.3": +"@ethereumjs/common@^2.3.0", "@ethereumjs/common@^2.3.1", "@ethereumjs/common@^2.4.0", "@ethereumjs/common@^2.5.0", "@ethereumjs/common@^2.6.3": version "2.6.3" resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.6.3.tgz#39ddece7300b336276bad6c02f6a9f1a082caa05" integrity sha512-mQwPucDL7FDYIg9XQ8DL31CnIYZwGhU5hyOO5E+BMmT71G0+RHvIT5rIkLBirJEKxV6+Rcf9aEIY0kXInxUWpQ== @@ -2246,14 +1832,6 @@ crc-32 "^1.2.0" ethereumjs-util "^7.1.4" -"@ethereumjs/common@^2.4.0": - version "2.4.0" - resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.4.0.tgz#2d67f6e6ba22246c5c89104e6b9a119fb3039766" - integrity sha512-UdkhFWzWcJCZVsj1O/H8/oqj/0RVYjLc1OhPjBrQdALAkQHpCp8xXI4WLnuGTADqTdJZww0NtgwG+TRPkXt27w== - dependencies: - crc-32 "^1.2.0" - ethereumjs-util "^7.1.0" - "@ethereumjs/ethash@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@ethereumjs/ethash/-/ethash-1.1.0.tgz#7c5918ffcaa9cb9c1dc7d12f77ef038c11fb83fb" @@ -2265,15 +1843,7 @@ ethereumjs-util "^7.1.1" miller-rabin "^4.0.0" -"@ethereumjs/tx@^3.2.1": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.3.0.tgz#14ed1b7fa0f28e1cd61e3ecbdab824205f6a4378" - integrity sha512-yTwEj2lVzSMgE6Hjw9Oa1DZks/nKTWM8Wn4ykDNapBPua2f4nXO3qKnni86O6lgDj5fVNRqbDsD0yy7/XNGDEA== - dependencies: - "@ethereumjs/common" "^2.4.0" - ethereumjs-util "^7.1.0" - -"@ethereumjs/tx@^3.3.2", "@ethereumjs/tx@^3.5.1": +"@ethereumjs/tx@^3.2.1", "@ethereumjs/tx@^3.3.2", "@ethereumjs/tx@^3.5.1": version "3.5.1" resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.5.1.tgz#8d941b83a602b4a89949c879615f7ea9a90e6671" integrity sha512-xzDrTiu4sqZXUcaBxJ4n4W5FrppwxLxZB4ZDGVLtxSQR4lVuOnFR6RcUHdg1mpUhAPVrmnzLJpxaeXnPxIyhWA== @@ -2329,22 +1899,7 @@ "@ethersproject/properties" "^5.0.3" "@ethersproject/strings" "^5.0.4" -"@ethersproject/abi@5.4.0", "@ethersproject/abi@^5.0.1", "@ethersproject/abi@^5.1.2", "@ethersproject/abi@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.4.0.tgz#a6d63bdb3672f738398846d4279fa6b6c9818242" - integrity sha512-9gU2H+/yK1j2eVMdzm6xvHSnMxk8waIHQGYCZg5uvAyH0rsAzxkModzBSpbAkAuhKFEovC2S9hM4nPuLym8IZw== - dependencies: - "@ethersproject/address" "^5.4.0" - "@ethersproject/bignumber" "^5.4.0" - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/constants" "^5.4.0" - "@ethersproject/hash" "^5.4.0" - "@ethersproject/keccak256" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/properties" "^5.4.0" - "@ethersproject/strings" "^5.4.0" - -"@ethersproject/abi@5.5.0", "@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== @@ -2359,7 +1914,7 @@ "@ethersproject/properties" "^5.5.0" "@ethersproject/strings" "^5.5.0" -"@ethersproject/abi@5.6.0", "@ethersproject/abi@^5.6.0": +"@ethersproject/abi@5.6.0", "@ethersproject/abi@^5.0.1", "@ethersproject/abi@^5.1.2", "@ethersproject/abi@^5.5.0", "@ethersproject/abi@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.6.0.tgz#ea07cbc1eec2374d32485679c12408005895e9f3" integrity sha512-AhVByTwdXCc2YQ20v300w6KVHle9g2OFc28ZAFCPnJyEpkv1xKXjZcSTgWOlv1i+0dqlgF8RCF2Rn2KC1t+1Vg== @@ -2374,20 +1929,7 @@ "@ethersproject/properties" "^5.6.0" "@ethersproject/strings" "^5.6.0" -"@ethersproject/abstract-provider@5.4.0", "@ethersproject/abstract-provider@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.4.0.tgz#415331031b0f678388971e1987305244edc04e1d" - integrity sha512-vPBR7HKUBY0lpdllIn7tLIzNN7DrVnhCLKSzY0l8WAwxz686m/aL7ASDzrVxV93GJtIub6N2t4dfZ29CkPOxgA== - dependencies: - "@ethersproject/bignumber" "^5.4.0" - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/networks" "^5.4.0" - "@ethersproject/properties" "^5.4.0" - "@ethersproject/transactions" "^5.4.0" - "@ethersproject/web" "^5.4.0" - -"@ethersproject/abstract-provider@5.5.1", "@ethersproject/abstract-provider@^5.5.0": +"@ethersproject/abstract-provider@5.5.1": 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== @@ -2400,7 +1942,7 @@ "@ethersproject/transactions" "^5.5.0" "@ethersproject/web" "^5.5.0" -"@ethersproject/abstract-provider@5.6.0", "@ethersproject/abstract-provider@^5.6.0": +"@ethersproject/abstract-provider@5.6.0", "@ethersproject/abstract-provider@^5.5.0", "@ethersproject/abstract-provider@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.6.0.tgz#0c4ac7054650dbd9c476cf5907f588bbb6ef3061" integrity sha512-oPMFlKLN+g+y7a79cLK3WiLcjWFnZQtXWgnLAbHZcN3s7L4v90UHpTOrLk+m3yr0gt+/h9STTM6zrr7PM8uoRw== @@ -2413,18 +1955,7 @@ "@ethersproject/transactions" "^5.6.0" "@ethersproject/web" "^5.6.0" -"@ethersproject/abstract-signer@5.4.0", "@ethersproject/abstract-signer@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.4.0.tgz#cd5f50b93141ee9f9f49feb4075a0b3eafb57d65" - integrity sha512-AieQAzt05HJZS2bMofpuxMEp81AHufA5D6M4ScKwtolj041nrfIbIi8ciNW7+F59VYxXq+V4c3d568Q6l2m8ew== - dependencies: - "@ethersproject/abstract-provider" "^5.4.0" - "@ethersproject/bignumber" "^5.4.0" - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/properties" "^5.4.0" - -"@ethersproject/abstract-signer@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== @@ -2435,7 +1966,7 @@ "@ethersproject/logger" "^5.5.0" "@ethersproject/properties" "^5.5.0" -"@ethersproject/abstract-signer@5.6.0", "@ethersproject/abstract-signer@^5.6.0": +"@ethersproject/abstract-signer@5.6.0", "@ethersproject/abstract-signer@^5.5.0", "@ethersproject/abstract-signer@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.6.0.tgz#9cd7ae9211c2b123a3b29bf47aab17d4d016e3e7" integrity sha512-WOqnG0NJKtI8n0wWZPReHtaLkDByPL67tn4nBaDAhmVq8sjHTPbCdz4DRhVu/cfTOvfy9w3iq5QZ7BX7zw56BQ== @@ -2446,18 +1977,7 @@ "@ethersproject/logger" "^5.6.0" "@ethersproject/properties" "^5.6.0" -"@ethersproject/address@5.4.0", "@ethersproject/address@>=5.0.0-beta.128", "@ethersproject/address@^5.0.2", "@ethersproject/address@^5.0.4", "@ethersproject/address@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.4.0.tgz#ba2d00a0f8c4c0854933b963b9a3a9f6eb4a37a3" - integrity sha512-SD0VgOEkcACEG/C6xavlU1Hy3m5DGSXW3CUHkaaEHbAPPsgi0coP5oNPsxau8eTlZOk/bpa/hKeCNoK5IzVI2Q== - dependencies: - "@ethersproject/bignumber" "^5.4.0" - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/keccak256" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/rlp" "^5.4.0" - -"@ethersproject/address@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== @@ -2468,7 +1988,7 @@ "@ethersproject/logger" "^5.5.0" "@ethersproject/rlp" "^5.5.0" -"@ethersproject/address@5.6.0", "@ethersproject/address@^5.6.0": +"@ethersproject/address@5.6.0", "@ethersproject/address@>=5.0.0-beta.128", "@ethersproject/address@^5.0.2", "@ethersproject/address@^5.0.4", "@ethersproject/address@^5.5.0", "@ethersproject/address@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.6.0.tgz#13c49836d73e7885fc148ad633afad729da25012" integrity sha512-6nvhYXjbXsHPS+30sHZ+U4VMagFC/9zAk6Gd/h3S21YW4+yfb0WfRtaAIZ4kfM4rrVwqiy284LP0GtL5HXGLxQ== @@ -2479,47 +1999,21 @@ "@ethersproject/logger" "^5.6.0" "@ethersproject/rlp" "^5.6.0" -"@ethersproject/address@^5.0.9": - version "5.0.11" - resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.0.11.tgz#12022e8c590c33939beb5ab18b401ecf585eac59" - integrity sha512-Et4GBdD8/tsBGjCEOKee9upN29qjL5kbRcmJifb4Penmiuh9GARXL2/xpXvEp5EW+EIW/rfCHFJrkYBgoQFQBw== - dependencies: - "@ethersproject/bignumber" "^5.0.13" - "@ethersproject/bytes" "^5.0.9" - "@ethersproject/keccak256" "^5.0.7" - "@ethersproject/logger" "^5.0.8" - "@ethersproject/rlp" "^5.0.7" - -"@ethersproject/base64@5.4.0", "@ethersproject/base64@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.4.0.tgz#7252bf65295954c9048c7ca5f43e5c86441b2a9a" - integrity sha512-CjQw6E17QDSSC5jiM9YpF7N1aSCHmYGMt9bWD8PWv6YPMxjsys2/Q8xLrROKI3IWJ7sFfZ8B3flKDTM5wlWuZQ== - dependencies: - "@ethersproject/bytes" "^5.4.0" - -"@ethersproject/base64@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/base64@5.6.0", "@ethersproject/base64@^5.6.0": +"@ethersproject/base64@5.6.0", "@ethersproject/base64@^5.5.0", "@ethersproject/base64@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.6.0.tgz#a12c4da2a6fb86d88563216b0282308fc15907c9" integrity sha512-2Neq8wxJ9xHxCF9TUgmKeSh9BXJ6OAxWfeGWvbauPh8FuHEjamgHilllx8KkSd5ErxyHIX7Xv3Fkcud2kY9ezw== dependencies: "@ethersproject/bytes" "^5.6.0" -"@ethersproject/basex@5.4.0", "@ethersproject/basex@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.4.0.tgz#0a2da0f4e76c504a94f2b21d3161ed9438c7f8a6" - integrity sha512-J07+QCVJ7np2bcpxydFVf/CuYo9mZ7T73Pe7KQY4c1lRlrixMeblauMxHXD0MPwFmUHZIILDNViVkykFBZylbg== - dependencies: - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/properties" "^5.4.0" - -"@ethersproject/basex@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== @@ -2527,7 +2021,7 @@ "@ethersproject/bytes" "^5.5.0" "@ethersproject/properties" "^5.5.0" -"@ethersproject/basex@5.6.0", "@ethersproject/basex@^5.6.0": +"@ethersproject/basex@5.6.0", "@ethersproject/basex@^5.5.0", "@ethersproject/basex@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.6.0.tgz#9ea7209bf0a1c3ddc2a90f180c3a7f0d7d2e8a69" integrity sha512-qN4T+hQd/Md32MoJpc69rOwLYRUXwjTlhHDIeUkUmiN/JyWkkLLMoG0TqvSQKNqZOMgN5stbUYN6ILC+eD7MEQ== @@ -2535,16 +2029,7 @@ "@ethersproject/bytes" "^5.6.0" "@ethersproject/properties" "^5.6.0" -"@ethersproject/bignumber@5.4.0", "@ethersproject/bignumber@>=5.0.0-beta.130", "@ethersproject/bignumber@^5.0.7", "@ethersproject/bignumber@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.4.0.tgz#be8dea298c0ec71208ee60f0b245be0761217ad9" - integrity sha512-OXUu9f9hO3vGRIPxU40cignXZVaYyfx6j9NNMjebKdnaCL3anCLSSy8/b8d03vY6dh7duCC0kW72GEC4tZer2w== - dependencies: - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - bn.js "^4.11.9" - -"@ethersproject/bignumber@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== @@ -2553,7 +2038,7 @@ "@ethersproject/logger" "^5.5.0" bn.js "^4.11.9" -"@ethersproject/bignumber@5.6.0", "@ethersproject/bignumber@^5.6.0": +"@ethersproject/bignumber@5.6.0", "@ethersproject/bignumber@>=5.0.0-beta.130", "@ethersproject/bignumber@^5.0.7", "@ethersproject/bignumber@^5.5.0", "@ethersproject/bignumber@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.6.0.tgz#116c81b075c57fa765a8f3822648cf718a8a0e26" integrity sha512-VziMaXIUHQlHJmkv1dlcd6GY2PmT0khtAqaMctCIDogxkrarMzA9L94KN1NeXqqOfFD6r0sJT3vCTOFSmZ07DA== @@ -2562,87 +2047,34 @@ "@ethersproject/logger" "^5.6.0" bn.js "^4.11.9" -"@ethersproject/bignumber@^5.0.13": - version "5.0.15" - resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.0.15.tgz#b089b3f1e0381338d764ac1c10512f0c93b184ed" - integrity sha512-MTADqnyacvdRwtKh7o9ujwNDSM1SDJjYDMYAzjIgjoi9rh6TY4suMbhCa3i2vh3SUXiXSICyTI8ui+NPdrZ9Lw== - dependencies: - "@ethersproject/bytes" "^5.0.9" - "@ethersproject/logger" "^5.0.8" - bn.js "^4.4.0" - -"@ethersproject/bytes@5.4.0", "@ethersproject/bytes@>=5.0.0-beta.129", "@ethersproject/bytes@^5.0.4", "@ethersproject/bytes@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.4.0.tgz#56fa32ce3bf67153756dbaefda921d1d4774404e" - integrity sha512-H60ceqgTHbhzOj4uRc/83SCN9d+BSUnOkrr2intevqdtEMO1JFVZ1XL84OEZV+QjV36OaZYxtnt4lGmxcGsPfA== - dependencies: - "@ethersproject/logger" "^5.4.0" - -"@ethersproject/bytes@5.5.0", "@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/bytes@5.6.1", "@ethersproject/bytes@^5.6.0": +"@ethersproject/bytes@5.6.1", "@ethersproject/bytes@>=5.0.0-beta.129", "@ethersproject/bytes@^5.0.4", "@ethersproject/bytes@^5.5.0", "@ethersproject/bytes@^5.6.0": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.6.1.tgz#24f916e411f82a8a60412344bf4a813b917eefe7" integrity sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g== dependencies: "@ethersproject/logger" "^5.6.0" -"@ethersproject/bytes@^5.0.9": - version "5.0.11" - resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.0.11.tgz#21118e75b1d00db068984c15530e316021101276" - integrity sha512-D51plLYY5qF05AsoVQwIZVLqlBkaTPVHVP/1WmmBIWyHB0cRW0C9kh0kx5Exo51rB63Hk8PfHxc7SmpoaQFEyg== - dependencies: - "@ethersproject/logger" "^5.0.8" - -"@ethersproject/constants@5.4.0", "@ethersproject/constants@>=5.0.0-beta.128", "@ethersproject/constants@^5.0.4", "@ethersproject/constants@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.4.0.tgz#ee0bdcb30bf1b532d2353c977bf2ef1ee117958a" - integrity sha512-tzjn6S7sj9+DIIeKTJLjK9WGN2Tj0P++Z8ONEIlZjyoTkBuODN+0VfhAyYksKi43l1Sx9tX2VlFfzjfmr5Wl3Q== - dependencies: - "@ethersproject/bignumber" "^5.4.0" - -"@ethersproject/constants@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/constants@5.6.0", "@ethersproject/constants@^5.6.0": +"@ethersproject/constants@5.6.0", "@ethersproject/constants@>=5.0.0-beta.128", "@ethersproject/constants@^5.0.4", "@ethersproject/constants@^5.5.0", "@ethersproject/constants@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.6.0.tgz#55e3eb0918584d3acc0688e9958b0cedef297088" integrity sha512-SrdaJx2bK0WQl23nSpV/b1aq293Lh0sUaZT/yYKPDKn4tlAbkH96SPJwIhwSwTsoQQZxuh1jnqsKwyymoiBdWA== dependencies: "@ethersproject/bignumber" "^5.6.0" -"@ethersproject/constants@^5.0.8": - version "5.0.10" - resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.0.10.tgz#eb0c604fbc44c53ba9641eed31a1d0c9e1ebcadc" - integrity sha512-OSo8jxkHLDXieCy8bgOFR7lMfgPxEzKvSDdP+WAWHCDM8+orwch0B6wzkTmiQFgryAtIctrBt5glAdJikZ3hGw== - dependencies: - "@ethersproject/bignumber" "^5.0.13" - -"@ethersproject/contracts@5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.4.0.tgz#e05fe6bd33acc98741e27d553889ec5920078abb" - integrity sha512-hkO3L3IhS1Z3ZtHtaAG/T87nQ7KiPV+/qnvutag35I0IkiQ8G3ZpCQ9NNOpSCzn4pWSW4CfzmtE02FcqnLI+hw== - dependencies: - "@ethersproject/abi" "^5.4.0" - "@ethersproject/abstract-provider" "^5.4.0" - "@ethersproject/abstract-signer" "^5.4.0" - "@ethersproject/address" "^5.4.0" - "@ethersproject/bignumber" "^5.4.0" - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/constants" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/properties" "^5.4.0" - "@ethersproject/transactions" "^5.4.0" - "@ethersproject/contracts@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.5.0.tgz#b735260d4bd61283a670a82d5275e2a38892c197" @@ -2684,21 +2116,7 @@ ethers "^5.5.0" scrypt-js "3.0.1" -"@ethersproject/hash@5.4.0", "@ethersproject/hash@>=5.0.0-beta.128", "@ethersproject/hash@^5.0.4", "@ethersproject/hash@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.4.0.tgz#d18a8e927e828e22860a011f39e429d388344ae0" - integrity sha512-xymAM9tmikKgbktOCjW60Z5sdouiIIurkZUr9oW5NOex5uwxrbsYG09kb5bMcNjlVeJD3yPivTNzViIs1GCbqA== - dependencies: - "@ethersproject/abstract-signer" "^5.4.0" - "@ethersproject/address" "^5.4.0" - "@ethersproject/bignumber" "^5.4.0" - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/keccak256" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/properties" "^5.4.0" - "@ethersproject/strings" "^5.4.0" - -"@ethersproject/hash@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== @@ -2712,7 +2130,7 @@ "@ethersproject/properties" "^5.5.0" "@ethersproject/strings" "^5.5.0" -"@ethersproject/hash@5.6.0", "@ethersproject/hash@^5.6.0": +"@ethersproject/hash@5.6.0", "@ethersproject/hash@>=5.0.0-beta.128", "@ethersproject/hash@^5.0.4", "@ethersproject/hash@^5.5.0", "@ethersproject/hash@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.6.0.tgz#d24446a5263e02492f9808baa99b6e2b4c3429a2" integrity sha512-fFd+k9gtczqlr0/BruWLAu7UAOas1uRRJvOR84uDf4lNZ+bTkGl366qvniUZHKtlqxBRU65MkOobkmvmpHU+jA== @@ -2726,25 +2144,7 @@ "@ethersproject/properties" "^5.6.0" "@ethersproject/strings" "^5.6.0" -"@ethersproject/hdnode@5.4.0", "@ethersproject/hdnode@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.4.0.tgz#4bc9999b9a12eb5ce80c5faa83114a57e4107cac" - integrity sha512-pKxdS0KAaeVGfZPp1KOiDLB0jba11tG6OP1u11QnYfb7pXn6IZx0xceqWRr6ygke8+Kw74IpOoSi7/DwANhy8Q== - dependencies: - "@ethersproject/abstract-signer" "^5.4.0" - "@ethersproject/basex" "^5.4.0" - "@ethersproject/bignumber" "^5.4.0" - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/pbkdf2" "^5.4.0" - "@ethersproject/properties" "^5.4.0" - "@ethersproject/sha2" "^5.4.0" - "@ethersproject/signing-key" "^5.4.0" - "@ethersproject/strings" "^5.4.0" - "@ethersproject/transactions" "^5.4.0" - "@ethersproject/wordlists" "^5.4.0" - -"@ethersproject/hdnode@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== @@ -2762,7 +2162,7 @@ "@ethersproject/transactions" "^5.5.0" "@ethersproject/wordlists" "^5.5.0" -"@ethersproject/hdnode@5.6.0", "@ethersproject/hdnode@^5.6.0": +"@ethersproject/hdnode@5.6.0", "@ethersproject/hdnode@^5.5.0", "@ethersproject/hdnode@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.6.0.tgz#9dcbe8d629bbbcf144f2cae476337fe92d320998" integrity sha512-61g3Jp3nwDqJcL/p4nugSyLrpl/+ChXIOtCEM8UDmWeB3JCAt5FoLdOMXQc3WWkc0oM2C0aAn6GFqqMcS/mHTw== @@ -2780,26 +2180,7 @@ "@ethersproject/transactions" "^5.6.0" "@ethersproject/wordlists" "^5.6.0" -"@ethersproject/json-wallets@5.4.0", "@ethersproject/json-wallets@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.4.0.tgz#2583341cfe313fc9856642e8ace3080154145e95" - integrity sha512-igWcu3fx4aiczrzEHwG1xJZo9l1cFfQOWzTqwRw/xcvxTk58q4f9M7cjh51EKphMHvrJtcezJ1gf1q1AUOfEQQ== - dependencies: - "@ethersproject/abstract-signer" "^5.4.0" - "@ethersproject/address" "^5.4.0" - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/hdnode" "^5.4.0" - "@ethersproject/keccak256" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/pbkdf2" "^5.4.0" - "@ethersproject/properties" "^5.4.0" - "@ethersproject/random" "^5.4.0" - "@ethersproject/strings" "^5.4.0" - "@ethersproject/transactions" "^5.4.0" - aes-js "3.0.0" - scrypt-js "3.0.1" - -"@ethersproject/json-wallets@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== @@ -2818,7 +2199,7 @@ aes-js "3.0.0" scrypt-js "3.0.1" -"@ethersproject/json-wallets@5.6.0", "@ethersproject/json-wallets@^5.6.0": +"@ethersproject/json-wallets@5.6.0", "@ethersproject/json-wallets@^5.5.0", "@ethersproject/json-wallets@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.6.0.tgz#4c2fc27f17e36c583e7a252fb938bc46f98891e5" integrity sha512-fmh86jViB9r0ibWXTQipxpAGMiuxoqUf78oqJDlCAJXgnJF024hOOX7qVgqsjtbeoxmcLwpPsXNU0WEe/16qPQ== @@ -2837,15 +2218,7 @@ aes-js "3.0.0" scrypt-js "3.0.1" -"@ethersproject/keccak256@5.4.0", "@ethersproject/keccak256@>=5.0.0-beta.127", "@ethersproject/keccak256@^5.0.3", "@ethersproject/keccak256@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.4.0.tgz#7143b8eea4976080241d2bd92e3b1f1bf7025318" - integrity sha512-FBI1plWet+dPUvAzPAeHzRKiPpETQzqSUWR1wXJGHVWi4i8bOSrpC3NwpkPjgeXG7MnugVc1B42VbfnQikyC/A== - dependencies: - "@ethersproject/bytes" "^5.4.0" - js-sha3 "0.5.7" - -"@ethersproject/keccak256@5.5.0", "@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== @@ -2853,7 +2226,7 @@ "@ethersproject/bytes" "^5.5.0" js-sha3 "0.8.0" -"@ethersproject/keccak256@5.6.0", "@ethersproject/keccak256@^5.6.0": +"@ethersproject/keccak256@5.6.0", "@ethersproject/keccak256@>=5.0.0-beta.127", "@ethersproject/keccak256@^5.0.3", "@ethersproject/keccak256@^5.5.0", "@ethersproject/keccak256@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.6.0.tgz#fea4bb47dbf8f131c2e1774a1cecbfeb9d606459" integrity sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w== @@ -2861,85 +2234,31 @@ "@ethersproject/bytes" "^5.6.0" js-sha3 "0.8.0" -"@ethersproject/keccak256@^5.0.7": - version "5.0.9" - resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.0.9.tgz#ca0d86e4af56c13b1ef25e533bde3e96d28f647d" - integrity sha512-zhdUTj6RGtCJSgU+bDrWF6cGbvW453LoIC1DSNWrTlXzC7WuH4a+EiPrgc7/kNoRxerKuA/cxYlI8GwNtVtDlw== - dependencies: - "@ethersproject/bytes" "^5.0.9" - js-sha3 "0.5.7" - -"@ethersproject/logger@5.4.0", "@ethersproject/logger@>=5.0.0-beta.129", "@ethersproject/logger@^5.0.5", "@ethersproject/logger@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.4.0.tgz#f39adadf62ad610c420bcd156fd41270e91b3ca9" - integrity sha512-xYdWGGQ9P2cxBayt64d8LC8aPFJk6yWCawQi/4eJ4+oJdMMjEBMrIcIMZ9AxhwpPVmnBPrsB10PcXGmGAqgUEQ== - -"@ethersproject/logger@5.5.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/logger@5.6.0", "@ethersproject/logger@^5.6.0": +"@ethersproject/logger@5.6.0", "@ethersproject/logger@>=5.0.0-beta.129", "@ethersproject/logger@^5.0.5", "@ethersproject/logger@^5.5.0", "@ethersproject/logger@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.6.0.tgz#d7db1bfcc22fd2e4ab574cba0bb6ad779a9a3e7a" integrity sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg== -"@ethersproject/logger@^5.0.8": - version "5.0.10" - resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.0.10.tgz#fd884688b3143253e0356ef92d5f22d109d2e026" - integrity sha512-0y2T2NqykDrbPM3Zw9RSbPkDOxwChAL8detXaom76CfYoGxsOnRP/zTX8OUAV+x9LdwzgbWvWmeXrc0M7SuDZw== - -"@ethersproject/networks@5.4.1": - version "5.4.1" - resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.4.1.tgz#2ce83b8e42aa85216e5d277a7952d97b6ce8d852" - integrity sha512-8SvowCKz9Uf4xC5DTKI8+il8lWqOr78kmiqAVLYT9lzB8aSmJHQMD1GSuJI0CW4hMAnzocpGpZLgiMdzsNSPig== - dependencies: - "@ethersproject/logger" "^5.4.0" - -"@ethersproject/networks@5.5.0", "@ethersproject/networks@^5.5.0": +"@ethersproject/networks@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.5.0.tgz#babec47cab892c51f8dd652ce7f2e3e14283981a" integrity sha512-KWfP3xOnJeF89Uf/FCJdV1a2aDJe5XTN2N52p4fcQ34QhDqQFkgQKZ39VGtiqUgHcLI8DfT0l9azC3KFTunqtA== dependencies: "@ethersproject/logger" "^5.5.0" -"@ethersproject/networks@5.5.1": - version "5.5.1" - resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.5.1.tgz#b7f7b9fb88dec1ea48f739b7fb9621311aa8ce6c" - integrity sha512-tYRDM4zZtSUcKnD4UMuAlj7SeXH/k5WC4SP2u1Pn57++JdXHkRu2zwNkgNogZoxHzhm9Q6qqurDBVptHOsW49Q== - dependencies: - "@ethersproject/logger" "^5.5.0" - -"@ethersproject/networks@5.5.2": - 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/networks@5.6.1", "@ethersproject/networks@^5.6.0": +"@ethersproject/networks@5.6.1", "@ethersproject/networks@^5.5.0", "@ethersproject/networks@^5.6.0": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.6.1.tgz#7a21ed1f83e86121737b16841961ec99ccf5c9c7" integrity sha512-b2rrupf3kCTcc3jr9xOWBuHylSFtbpJf79Ga7QR98ienU2UqGimPGEsYMgbI29KHJfA5Us89XwGVmxrlxmSrMg== dependencies: "@ethersproject/logger" "^5.6.0" -"@ethersproject/networks@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.4.0.tgz#71eecd3ef3755118b42c1a5d2a44a7e07202e10a" - integrity sha512-5fywtKRDcnaVeA5SjxXH3DOQqe/IbeD/plwydi94SdPps1fbDUrnO6SzDExaruBZXxpxJcO9upG9UComsei4bg== - dependencies: - "@ethersproject/logger" "^5.4.0" - -"@ethersproject/pbkdf2@5.4.0", "@ethersproject/pbkdf2@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.4.0.tgz#ed88782a67fda1594c22d60d0ca911a9d669641c" - integrity sha512-x94aIv6tiA04g6BnazZSLoRXqyusawRyZWlUhKip2jvoLpzJuLb//KtMM6PEovE47pMbW+Qe1uw+68ameJjB7g== - dependencies: - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/sha2" "^5.4.0" - -"@ethersproject/pbkdf2@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== @@ -2947,7 +2266,7 @@ "@ethersproject/bytes" "^5.5.0" "@ethersproject/sha2" "^5.5.0" -"@ethersproject/pbkdf2@5.6.0", "@ethersproject/pbkdf2@^5.6.0": +"@ethersproject/pbkdf2@5.6.0", "@ethersproject/pbkdf2@^5.5.0", "@ethersproject/pbkdf2@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.6.0.tgz#04fcc2d7c6bff88393f5b4237d906a192426685a" integrity sha512-Wu1AxTgJo3T3H6MIu/eejLFok9TYoSdgwRr5oGY1LTLfmGesDoSx05pemsbrPT2gG4cQME+baTSCp5sEo2erZQ== @@ -2955,113 +2274,24 @@ "@ethersproject/bytes" "^5.6.0" "@ethersproject/sha2" "^5.6.0" -"@ethersproject/properties@5.4.0", "@ethersproject/properties@>=5.0.0-beta.131", "@ethersproject/properties@^5.0.3", "@ethersproject/properties@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.4.0.tgz#38ba20539b44dcc5d5f80c45ad902017dcdbefe7" - integrity sha512-7jczalGVRAJ+XSRvNA6D5sAwT4gavLq3OXPuV/74o3Rd2wuzSL035IMpIMgei4CYyBdialJMrTqkOnzccLHn4A== - dependencies: - "@ethersproject/logger" "^5.4.0" - -"@ethersproject/properties@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/properties@5.6.0", "@ethersproject/properties@^5.6.0": - version "5.6.0" - resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.6.0.tgz#38904651713bc6bdd5bdd1b0a4287ecda920fa04" - integrity sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg== - dependencies: - "@ethersproject/logger" "^5.6.0" - -"@ethersproject/properties@^5.0.7": - version "5.0.9" - resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.0.9.tgz#d7aae634680760136ea522e25c3ef043ec15b5c2" - integrity sha512-ZCjzbHYTw+rF1Pn8FDCEmx3gQttwIHcm/6Xee8g/M3Ga3SfW4tccNMbs5zqnBH0E4RoOPaeNgyg1O68TaF0tlg== - dependencies: - "@ethersproject/logger" "^5.0.8" - -"@ethersproject/providers@5.4.1": - version "5.4.1" - resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.4.1.tgz#654267b563b833046b9c9647647cfc8267cb93b4" - integrity sha512-p06eiFKz8nu/5Ju0kIX024gzEQIgE5pvvGrBCngpyVjpuLtUIWT3097Agw4mTn9/dEA0FMcfByzFqacBMSgCVg== - dependencies: - "@ethersproject/abstract-provider" "^5.4.0" - "@ethersproject/abstract-signer" "^5.4.0" - "@ethersproject/address" "^5.4.0" - "@ethersproject/basex" "^5.4.0" - "@ethersproject/bignumber" "^5.4.0" - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/constants" "^5.4.0" - "@ethersproject/hash" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/networks" "^5.4.0" - "@ethersproject/properties" "^5.4.0" - "@ethersproject/random" "^5.4.0" - "@ethersproject/rlp" "^5.4.0" - "@ethersproject/sha2" "^5.4.0" - "@ethersproject/strings" "^5.4.0" - "@ethersproject/transactions" "^5.4.0" - "@ethersproject/web" "^5.4.0" - bech32 "1.1.4" - ws "7.4.6" - -"@ethersproject/providers@5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.5.0.tgz#bc2876a8fe5e0053ed9828b1f3767ae46e43758b" - integrity sha512-xqMbDnS/FPy+J/9mBLKddzyLLAQFjrVff5g00efqxPzcAwXiR+SiCGVy6eJ5iAIirBOATjx7QLhDNPGV+AEQsw== - 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" - bech32 "1.1.4" - ws "7.4.6" - -"@ethersproject/providers@5.5.1": - version "5.5.1" - resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.5.1.tgz#ba87e3c93219bbd2e2edf8b369873aee774abf04" - integrity sha512-2zdD5sltACDWhjUE12Kucg2PcgM6V2q9JMyVvObtVGnzJu+QSmibbP+BHQyLWZUBfLApx2942+7DC5D+n4wBQQ== - 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" - bech32 "1.1.4" - ws "7.4.6" + integrity sha512-l3zRQg3JkD8EL3CPjNK5g7kMx4qSwiR60/uk5IVjd3oq1MZR5qUg40CNOoEJoX5wc3DyY5bt9EbMk86C7x0DNA== + dependencies: + "@ethersproject/logger" "^5.5.0" -"@ethersproject/providers@5.5.3", "@ethersproject/providers@^5.5.0": - version "5.5.3" - resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.5.3.tgz#56c2b070542ac44eb5de2ed3cf6784acd60a3130" - integrity sha512-ZHXxXXXWHuwCQKrgdpIkbzMNJMvs+9YWemanwp1fA7XZEv7QlilseysPvQe0D7Q7DlkJX/w/bGA1MdgK2TbGvA== +"@ethersproject/properties@5.6.0", "@ethersproject/properties@>=5.0.0-beta.131", "@ethersproject/properties@^5.0.3", "@ethersproject/properties@^5.5.0", "@ethersproject/properties@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.6.0.tgz#38904651713bc6bdd5bdd1b0a4287ecda920fa04" + integrity sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg== + dependencies: + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/providers@5.5.0": + version "5.5.0" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.5.0.tgz#bc2876a8fe5e0053ed9828b1f3767ae46e43758b" + integrity sha512-xqMbDnS/FPy+J/9mBLKddzyLLAQFjrVff5g00efqxPzcAwXiR+SiCGVy6eJ5iAIirBOATjx7QLhDNPGV+AEQsw== dependencies: "@ethersproject/abstract-provider" "^5.5.0" "@ethersproject/abstract-signer" "^5.5.0" @@ -3083,7 +2313,7 @@ bech32 "1.1.4" ws "7.4.6" -"@ethersproject/providers@5.6.2", "@ethersproject/providers@^5.5.3": +"@ethersproject/providers@5.6.2", "@ethersproject/providers@^5.5.0", "@ethersproject/providers@^5.5.3": version "5.6.2" resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.6.2.tgz#b9807b1c8c6f59fa2ee4b3cf6519724d07a9f422" integrity sha512-6/EaFW/hNWz+224FXwl8+HdMRzVHt8DpPmu5MZaIQqx/K/ELnC9eY236SMV7mleCM3NnEArFwcAAxH5kUUgaRg== @@ -3108,15 +2338,7 @@ bech32 "1.1.4" ws "7.4.6" -"@ethersproject/random@5.4.0", "@ethersproject/random@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.4.0.tgz#9cdde60e160d024be39cc16f8de3b9ce39191e16" - integrity sha512-pnpWNQlf0VAZDEOVp1rsYQosmv2o0ITS/PecNw+mS2/btF8eYdspkN0vIXrCMtkX09EAh9bdk8GoXmFXM1eAKw== - dependencies: - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - -"@ethersproject/random@5.5.0", "@ethersproject/random@^5.5.0": +"@ethersproject/random@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.5.0.tgz#305ed9e033ca537735365ac12eed88580b0f81f9" integrity sha512-egGYZwZ/YIFKMHcoBUo8t3a8Hb/TKYX8BCBoLjudVCZh892welR3jOxgOmb48xznc9bTcMm7Tpwc1gHC1PFNFQ== @@ -3124,15 +2346,7 @@ "@ethersproject/bytes" "^5.5.0" "@ethersproject/logger" "^5.5.0" -"@ethersproject/random@5.5.1": - version "5.5.1" - resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.5.1.tgz#7cdf38ea93dc0b1ed1d8e480ccdaf3535c555415" - integrity sha512-YaU2dQ7DuhL5Au7KbcQLHxcRHfgyNgvFV4sQOo0HrtW3Zkrc9ctWNz8wXQ4uCSfSDsqX2vcjhroxU5RQRV0nqA== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - -"@ethersproject/random@5.6.0", "@ethersproject/random@^5.6.0": +"@ethersproject/random@5.6.0", "@ethersproject/random@^5.5.0", "@ethersproject/random@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.6.0.tgz#1505d1ab6a250e0ee92f436850fa3314b2cb5ae6" integrity sha512-si0PLcLjq+NG/XHSZz90asNf+YfKEqJGVdxoEkSukzbnBgC8rydbgbUgBbBGLeHN4kAJwUFEKsu3sCXT93YMsw== @@ -3140,15 +2354,7 @@ "@ethersproject/bytes" "^5.6.0" "@ethersproject/logger" "^5.6.0" -"@ethersproject/rlp@5.4.0", "@ethersproject/rlp@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.4.0.tgz#de61afda5ff979454e76d3b3310a6c32ad060931" - integrity sha512-0I7MZKfi+T5+G8atId9QaQKHRvvasM/kqLyAH4XxBCBchAooH2EX5rL9kYZWwcm3awYV+XC7VF6nLhfeQFKVPg== - dependencies: - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - -"@ethersproject/rlp@5.5.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== @@ -3156,7 +2362,7 @@ "@ethersproject/bytes" "^5.5.0" "@ethersproject/logger" "^5.5.0" -"@ethersproject/rlp@5.6.0", "@ethersproject/rlp@^5.6.0": +"@ethersproject/rlp@5.6.0", "@ethersproject/rlp@^5.5.0", "@ethersproject/rlp@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.6.0.tgz#55a7be01c6f5e64d6e6e7edb6061aa120962a717" integrity sha512-dz9WR1xpcTL+9DtOT/aDO+YyxSSdO8YIS0jyZwHHSlAmnxA6cKU3TrTd4Xc/bHayctxTgGLYNuVVoiXE4tTq1g== @@ -3164,24 +2370,7 @@ "@ethersproject/bytes" "^5.6.0" "@ethersproject/logger" "^5.6.0" -"@ethersproject/rlp@^5.0.7": - version "5.0.9" - resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.0.9.tgz#da205bf8a34d3c3409eb73ddd237130a4b376aff" - integrity sha512-ns1U7ZMVeruUW6JXc4om+1w3w4ynHN/0fpwmeNTsAjwGKoF8SAUgue6ylKpHKWSti2idx7jDxbn8hNNFHk67CA== - dependencies: - "@ethersproject/bytes" "^5.0.9" - "@ethersproject/logger" "^5.0.8" - -"@ethersproject/sha2@5.4.0", "@ethersproject/sha2@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.4.0.tgz#c9a8db1037014cbc4e9482bd662f86c090440371" - integrity sha512-siheo36r1WD7Cy+bDdE1BJ8y0bDtqXCOxRMzPa4bV1TGt/eTUUt03BHoJNB6reWJD8A30E/pdJ8WFkq+/uz4Gg== - dependencies: - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - hash.js "1.1.7" - -"@ethersproject/sha2@5.5.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== @@ -3190,7 +2379,7 @@ "@ethersproject/logger" "^5.5.0" hash.js "1.1.7" -"@ethersproject/sha2@5.6.0", "@ethersproject/sha2@^5.6.0": +"@ethersproject/sha2@5.6.0", "@ethersproject/sha2@^5.5.0", "@ethersproject/sha2@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.6.0.tgz#364c4c11cc753bda36f31f001628706ebadb64d9" integrity sha512-1tNWCPFLu1n3JM9t4/kytz35DkuF9MxqkGGEHNauEbaARdm2fafnOyw1s0tIQDPKF/7bkP1u3dbrmjpn5CelyA== @@ -3199,19 +2388,7 @@ "@ethersproject/logger" "^5.6.0" hash.js "1.1.7" -"@ethersproject/signing-key@5.4.0", "@ethersproject/signing-key@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.4.0.tgz#2f05120984e81cf89a3d5f6dec5c68ee0894fbec" - integrity sha512-q8POUeywx6AKg2/jX9qBYZIAmKSB4ubGXdQ88l40hmATj29JnG5pp331nAWwwxPn2Qao4JpWHNZsQN+bPiSW9A== - dependencies: - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/properties" "^5.4.0" - bn.js "^4.11.9" - elliptic "6.5.4" - hash.js "1.1.7" - -"@ethersproject/signing-key@5.5.0", "@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== @@ -3223,7 +2400,7 @@ elliptic "6.5.4" hash.js "1.1.7" -"@ethersproject/signing-key@5.6.0", "@ethersproject/signing-key@^5.6.0": +"@ethersproject/signing-key@5.6.0", "@ethersproject/signing-key@^5.5.0", "@ethersproject/signing-key@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.6.0.tgz#4f02e3fb09e22b71e2e1d6dc4bcb5dafa69ce042" integrity sha512-S+njkhowmLeUu/r7ir8n78OUKx63kBdMCPssePS89So1TH4hZqnWFsThEd/GiXYp9qMxVrydf7KdM9MTGPFukA== @@ -3235,27 +2412,6 @@ elliptic "6.5.4" hash.js "1.1.7" -"@ethersproject/signing-key@^5.0.8": - version "5.0.11" - resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.0.11.tgz#19fc5c4597e18ad0a5efc6417ba5b74069fdd2af" - integrity sha512-Jfcru/BGwdkXhLxT+8WCZtFy7LL0TPFZw05FAb5asxB/MyVsEfNdNxGDtjVE9zXfmRSPe/EusXYY4K7wcygOyQ== - dependencies: - "@ethersproject/bytes" "^5.0.9" - "@ethersproject/logger" "^5.0.8" - "@ethersproject/properties" "^5.0.7" - elliptic "6.5.4" - -"@ethersproject/solidity@5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.4.0.tgz#1305e058ea02dc4891df18b33232b11a14ece9ec" - integrity sha512-XFQTZ7wFSHOhHcV1DpcWj7VXECEiSrBuv7JErJvB9Uo+KfCdc3QtUZV+Vjh/AAaYgezUEKbCtE6Khjm44seevQ== - dependencies: - "@ethersproject/bignumber" "^5.4.0" - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/keccak256" "^5.4.0" - "@ethersproject/sha2" "^5.4.0" - "@ethersproject/strings" "^5.4.0" - "@ethersproject/solidity@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.5.0.tgz#2662eb3e5da471b85a20531e420054278362f93f" @@ -3280,16 +2436,7 @@ "@ethersproject/sha2" "^5.6.0" "@ethersproject/strings" "^5.6.0" -"@ethersproject/strings@5.4.0", "@ethersproject/strings@>=5.0.0-beta.130", "@ethersproject/strings@^5.0.4", "@ethersproject/strings@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.4.0.tgz#fb12270132dd84b02906a8d895ae7e7fa3d07d9a" - integrity sha512-k/9DkH5UGDhv7aReXLluFG5ExurwtIpUfnDNhQA29w896Dw3i4uDTz01Quaptbks1Uj9kI8wo9tmW73wcIEaWA== - dependencies: - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/constants" "^5.4.0" - "@ethersproject/logger" "^5.4.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== @@ -3298,7 +2445,7 @@ "@ethersproject/constants" "^5.5.0" "@ethersproject/logger" "^5.5.0" -"@ethersproject/strings@5.6.0", "@ethersproject/strings@^5.6.0": +"@ethersproject/strings@5.6.0", "@ethersproject/strings@>=5.0.0-beta.130", "@ethersproject/strings@^5.0.4", "@ethersproject/strings@^5.5.0", "@ethersproject/strings@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.6.0.tgz#9891b26709153d996bf1303d39a7f4bc047878fd" integrity sha512-uv10vTtLTZqrJuqBZR862ZQjTIa724wGPWQqZrofaPI/kUsf53TBG0I0D+hQ1qyNtllbNzaW+PDPHHUI6/65Mg== @@ -3307,22 +2454,7 @@ "@ethersproject/constants" "^5.6.0" "@ethersproject/logger" "^5.6.0" -"@ethersproject/transactions@5.4.0", "@ethersproject/transactions@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.4.0.tgz#a159d035179334bd92f340ce0f77e83e9e1522e0" - integrity sha512-s3EjZZt7xa4BkLknJZ98QGoIza94rVjaEed0rzZ/jB9WrIuu/1+tjvYCWzVrystXtDswy7TPBeIepyXwSYa4WQ== - dependencies: - "@ethersproject/address" "^5.4.0" - "@ethersproject/bignumber" "^5.4.0" - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/constants" "^5.4.0" - "@ethersproject/keccak256" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/properties" "^5.4.0" - "@ethersproject/rlp" "^5.4.0" - "@ethersproject/signing-key" "^5.4.0" - -"@ethersproject/transactions@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== @@ -3337,7 +2469,7 @@ "@ethersproject/rlp" "^5.5.0" "@ethersproject/signing-key" "^5.5.0" -"@ethersproject/transactions@5.6.0", "@ethersproject/transactions@^5.6.0": +"@ethersproject/transactions@5.6.0", "@ethersproject/transactions@^5.0.0-beta.135", "@ethersproject/transactions@^5.5.0", "@ethersproject/transactions@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.6.0.tgz#4b594d73a868ef6e1529a2f8f94a785e6791ae4e" integrity sha512-4HX+VOhNjXHZyGzER6E/LVI2i6lf9ejYeWD6l4g50AdmimyuStKc39kvKf1bXWQMg7QNVh+uC7dYwtaZ02IXeg== @@ -3352,30 +2484,6 @@ "@ethersproject/rlp" "^5.6.0" "@ethersproject/signing-key" "^5.6.0" -"@ethersproject/transactions@^5.0.0-beta.135": - version "5.0.11" - resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.0.11.tgz#b31df5292f47937136a45885d6ee6112477c13df" - integrity sha512-ftsRvR9+gQp7L63F6+XmstvsZ4w8GtWvQB08e/zB+oB86Fnhq8+i/tkgpJplSHC8I/qgiCisva+M3u2GVhDFPA== - dependencies: - "@ethersproject/address" "^5.0.9" - "@ethersproject/bignumber" "^5.0.13" - "@ethersproject/bytes" "^5.0.9" - "@ethersproject/constants" "^5.0.8" - "@ethersproject/keccak256" "^5.0.7" - "@ethersproject/logger" "^5.0.8" - "@ethersproject/properties" "^5.0.7" - "@ethersproject/rlp" "^5.0.7" - "@ethersproject/signing-key" "^5.0.8" - -"@ethersproject/units@5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.4.0.tgz#d57477a4498b14b88b10396062c8cbbaf20c79fe" - integrity sha512-Z88krX40KCp+JqPCP5oPv5p750g+uU6gopDYRTBGcDvOASh6qhiEYCRatuM/suC4S2XW9Zz90QI35MfSrTIaFg== - dependencies: - "@ethersproject/bignumber" "^5.4.0" - "@ethersproject/constants" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/units@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.5.0.tgz#104d02db5b5dc42cc672cc4587bafb87a95ee45e" @@ -3394,27 +2502,6 @@ "@ethersproject/constants" "^5.6.0" "@ethersproject/logger" "^5.6.0" -"@ethersproject/wallet@5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.4.0.tgz#fa5b59830b42e9be56eadd45a16a2e0933ad9353" - integrity sha512-wU29majLjM6AjCjpat21mPPviG+EpK7wY1+jzKD0fg3ui5fgedf2zEu1RDgpfIMsfn8fJHJuzM4zXZ2+hSHaSQ== - dependencies: - "@ethersproject/abstract-provider" "^5.4.0" - "@ethersproject/abstract-signer" "^5.4.0" - "@ethersproject/address" "^5.4.0" - "@ethersproject/bignumber" "^5.4.0" - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/hash" "^5.4.0" - "@ethersproject/hdnode" "^5.4.0" - "@ethersproject/json-wallets" "^5.4.0" - "@ethersproject/keccak256" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/properties" "^5.4.0" - "@ethersproject/random" "^5.4.0" - "@ethersproject/signing-key" "^5.4.0" - "@ethersproject/transactions" "^5.4.0" - "@ethersproject/wordlists" "^5.4.0" - "@ethersproject/wallet@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.5.0.tgz#322a10527a440ece593980dca6182f17d54eae75" @@ -3457,18 +2544,7 @@ "@ethersproject/transactions" "^5.6.0" "@ethersproject/wordlists" "^5.6.0" -"@ethersproject/web@5.4.0", "@ethersproject/web@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.4.0.tgz#49fac173b96992334ed36a175538ba07a7413d1f" - integrity sha512-1bUusGmcoRLYgMn6c1BLk1tOKUIFuTg8j+6N8lYlbMpDesnle+i3pGSagGNvwjaiLo4Y5gBibwctpPRmjrh4Og== - dependencies: - "@ethersproject/base64" "^5.4.0" - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/properties" "^5.4.0" - "@ethersproject/strings" "^5.4.0" - -"@ethersproject/web@5.5.0", "@ethersproject/web@^5.5.0": +"@ethersproject/web@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.5.0.tgz#0e5bb21a2b58fb4960a705bfc6522a6acf461e28" integrity sha512-BEgY0eL5oH4mAo37TNYVrFeHsIXLRxggCRG/ksRIxI2X5uj5IsjGmcNiRN/VirQOlBxcUhCgHhaDLG4m6XAVoA== @@ -3479,18 +2555,7 @@ "@ethersproject/properties" "^5.5.0" "@ethersproject/strings" "^5.5.0" -"@ethersproject/web@5.5.1": - 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/web@5.6.0", "@ethersproject/web@^5.6.0": +"@ethersproject/web@5.6.0", "@ethersproject/web@^5.5.0", "@ethersproject/web@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.6.0.tgz#4bf8b3cbc17055027e1a5dd3c357e37474eaaeb8" integrity sha512-G/XHj0hV1FxI2teHRfCGvfBUHFmU+YOSbCxlAMqJklxSa7QMiHFQfAxvwY2PFqgvdkxEKwRNr/eCjfAPEm2Ctg== @@ -3501,18 +2566,7 @@ "@ethersproject/properties" "^5.6.0" "@ethersproject/strings" "^5.6.0" -"@ethersproject/wordlists@5.4.0", "@ethersproject/wordlists@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.4.0.tgz#f34205ec3bbc9e2c49cadaee774cf0b07e7573d7" - integrity sha512-FemEkf6a+EBKEPxlzeVgUaVSodU7G0Na89jqKjmWMlDB0tomoU8RlEMgUvXyqtrg8N4cwpLh8nyRnm1Nay1isA== - dependencies: - "@ethersproject/bytes" "^5.4.0" - "@ethersproject/hash" "^5.4.0" - "@ethersproject/logger" "^5.4.0" - "@ethersproject/properties" "^5.4.0" - "@ethersproject/strings" "^5.4.0" - -"@ethersproject/wordlists@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== @@ -3523,7 +2577,7 @@ "@ethersproject/properties" "^5.5.0" "@ethersproject/strings" "^5.5.0" -"@ethersproject/wordlists@5.6.0", "@ethersproject/wordlists@^5.6.0": +"@ethersproject/wordlists@5.6.0", "@ethersproject/wordlists@^5.5.0", "@ethersproject/wordlists@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.6.0.tgz#79e62c5276e091d8575f6930ba01a29218ded032" integrity sha512-q0bxNBfIX3fUuAo9OmjlEYxP40IB8ABgb7HjEZCL5IKubzV3j30CWi2rqQbjTS2HfoyQbfINoKcTVWP4ejwR7Q== @@ -5594,16 +4648,7 @@ "@truffle/error" "^0.1.0" colors "1.4.0" -"@truffle/contract-schema@^3.1.0": - version "3.3.4" - resolved "https://registry.yarnpkg.com/@truffle/contract-schema/-/contract-schema-3.3.4.tgz#95f0265cac7de7bcaa0542f5fe671a7896011bfe" - integrity sha512-HzscBl/GhZBvPNQeD9l6ewSHSkvNmE+bA0iTVa0Y2mNf5GD5Y3fK2NPyfbOdtckOvLqebvYGEDEPRiXc3BZ05g== - dependencies: - ajv "^6.10.0" - crypto-js "^3.1.9-1" - debug "^4.3.1" - -"@truffle/contract-schema@^3.4.4": +"@truffle/contract-schema@^3.1.0", "@truffle/contract-schema@^3.4.4": version "3.4.6" resolved "https://registry.yarnpkg.com/@truffle/contract-schema/-/contract-schema-3.4.6.tgz#f80e52e6035c30755989bf7a9455ed507c2bb515" integrity sha512-YzVAoPxEnM7pz7vLrQvtgtnpIwERrZcbYRjRTEJP8Y7rxudYDYaZ8PwjHD3j0SQxE6Y0WquDi3PtbfgZB9BwYQ== @@ -6168,21 +5213,16 @@ "@types/node" "*" form-data "^3.0.0" -"@types/node@*", "@types/node@>= 8", "@types/node@^14.14.28": - version "14.14.35" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.35.tgz#42c953a4e2b18ab931f72477e7012172f4ffa313" - integrity sha512-Lt+wj8NVPx0zUmUwumiVXapmaLUcAk3yPuHCFVXras9k5VT9TdhJqKqGVUQCD60OTMCl0qxJ57OiTL0Mic3Iag== +"@types/node@*", "@types/node@>= 8", "@types/node@>=13.7.0": + version "17.0.31" + resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.31.tgz#a5bb84ecfa27eec5e1c802c6bbf8139bdb163a5d" + integrity sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q== "@types/node@14.14.16": version "14.14.16" resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.16.tgz#3cc351f8d48101deadfed4c9e4f116048d437b4b" integrity sha512-naXYePhweTi+BMv11TgioE2/FXU4fSl29HAH1ffxVciNsH3rYXjNP2yM8wqmSm7jS20gM8TIklKiTen+1iVncw== -"@types/node@>=13.7.0": - version "17.0.31" - resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.31.tgz#a5bb84ecfa27eec5e1c802c6bbf8139bdb163a5d" - integrity sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q== - "@types/node@^10.12.18", "@types/node@^10.3.2": version "10.17.55" resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.55.tgz#a147f282edec679b894d4694edb5abeb595fecbd" @@ -6193,6 +5233,11 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.6.tgz#7b73cce37352936e628c5ba40326193443cfba25" integrity sha512-sRVq8d+ApGslmkE9e3i+D3gFGk7aZHAT+G4cIpIEdLJYPsWiSPwcAnJEjddLQQDqV3Ra2jOclX/Sv6YrvGYiWA== +"@types/node@^14.14.28": + version "14.14.35" + resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.35.tgz#42c953a4e2b18ab931f72477e7012172f4ffa313" + integrity sha512-Lt+wj8NVPx0zUmUwumiVXapmaLUcAk3yPuHCFVXras9k5VT9TdhJqKqGVUQCD60OTMCl0qxJ57OiTL0Mic3Iag== + "@types/normalize-package-data@^2.4.0": version "2.4.0" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" @@ -6774,16 +5819,11 @@ acorn-globals@^6.0.0: acorn "^7.1.1" acorn-walk "^7.1.1" -acorn-jsx@^5.0.0: +acorn-jsx@^5.0.0, acorn-jsx@^5.0.1, acorn-jsx@^5.3.1: version "5.3.2" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== -acorn-jsx@^5.0.1, acorn-jsx@^5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b" - integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng== - acorn-node@^1.2.0, acorn-node@^1.3.0, acorn-node@^1.5.2, acorn-node@^1.6.1: version "1.8.2" resolved "https://registry.yarnpkg.com/acorn-node/-/acorn-node-1.8.2.tgz#114c95d64539e53dede23de8b9d96df7c7ae2af8" @@ -6919,16 +5959,6 @@ ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.12.3, ajv@^6.12.4, ajv json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^7.0.2: - version "7.2.1" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-7.2.1.tgz#a5ac226171912447683524fa2f1248fcf8bac83d" - integrity sha512-+nu0HDv7kNSOua9apAVc979qd932rrZeb3WOvoiD31A/p1mIE5/9bN2027pE2rOPYEdS3UHzsvof4hY+lM9/WQ== - dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" - ajv@^8.0.1, ajv@^8.9.0: version "8.11.0" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.11.0.tgz#977e91dd96ca669f54a11e23e378e33b884a565f" @@ -7049,12 +6079,7 @@ ansi-regex@^4.1.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== -ansi-regex@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" - integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== - -ansi-regex@^5.0.1: +ansi-regex@^5.0.0, ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== @@ -7544,6 +6569,15 @@ axios@^0.21.1: dependencies: follow-redirects "^1.10.0" +axios@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.2.2.tgz#72681724c6e6a43a9fea860fc558127dbe32f9f1" + integrity sha512-bz/J4gS2S3I7mpN/YZfGFTqhXTYzRho8Ay38w2otuuDR322KzFIWm/4W2K6gIwvWaws5n+mnb7D1lN9uD+QH6Q== + dependencies: + follow-redirects "^1.15.0" + form-data "^4.0.0" + proxy-from-env "^1.1.0" + babel-code-frame@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" @@ -8359,7 +7393,7 @@ big.js@^6.0.3: resolved "https://registry.yarnpkg.com/big.js/-/big.js-6.1.1.tgz#63b35b19dc9775c94991ee5db7694880655d5537" integrity sha512-1vObw81a8ylZO5ePrtMay0n018TcftpTA5HFKDaSuiUDBo8biRBtjIobw60OpwuvrGk+FsxKamqN4cnmj/eXdg== -bignumber.js@*: +bignumber.js@*, bignumber.js@^9.0.0, bignumber.js@^9.0.1: version "9.0.2" resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.0.2.tgz#71c6c6bed38de64e24a65ebe16cfcf23ae693673" integrity sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw== @@ -8369,11 +7403,6 @@ bignumber.js@^7.2.1: resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-7.2.1.tgz#80c048759d826800807c4bfd521e50edbba57a5f" integrity sha512-S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ== -bignumber.js@^9.0.0, bignumber.js@^9.0.1: - version "9.0.1" - resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.0.1.tgz#8d7ba124c882bfd8e43260c67475518d0689e4e5" - integrity sha512-IdZR9mh6ahOBv/hYGiXyVuyCetmGJhtYkqLBpTStdhEGjegpPlUawydyaF3pbIOFynJTpllEs+NP+CS9jKFLjA== - binary-extensions@^1.0.0: version "1.13.1" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" @@ -8451,7 +7480,7 @@ bn.js@5.1.3: resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.1.3.tgz#beca005408f642ebebea80b042b4d18d2ac0ee6b" integrity sha512-GkTiFpjFtUzU9CbMeJ5iazkCzGL3jrhzerzZIuqLABjbwRaFt33I9tUdSNryIptM+RxDet6OKm2WnLXzW51KsQ== -bn.js@5.2.1, bn.js@^5.2.0: +bn.js@5.2.1, bn.js@^5.0.0, bn.js@^5.1.1, bn.js@^5.1.2, bn.js@^5.1.3, bn.js@^5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== @@ -8461,11 +7490,6 @@ bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.10.0, bn.js@^4.11.0, bn.js@^4.11.1, bn.js@^ resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== -bn.js@^5.0.0, bn.js@^5.1.1, bn.js@^5.1.2, bn.js@^5.1.3: - version "5.2.0" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002" - integrity sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw== - body-parser@1.19.0, body-parser@^1.16.0: version "1.19.0" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" @@ -8772,18 +7796,7 @@ browserslist@^3.2.6: caniuse-lite "^1.0.30000844" electron-to-chromium "^1.3.47" -browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.16.3, browserslist@^4.6.4: - version "4.16.3" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.3.tgz#340aa46940d7db878748567c5dea24a48ddf3717" - integrity sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw== - dependencies: - caniuse-lite "^1.0.30001181" - colorette "^1.2.1" - electron-to-chromium "^1.3.649" - escalade "^3.1.1" - node-releases "^1.1.70" - -browserslist@^4.16.6: +browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.16.3, browserslist@^4.16.6, browserslist@^4.6.4: version "4.16.6" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.6.tgz#d7901277a5a88e554ed305b183ec9b0c08f66fa2" integrity sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ== @@ -8879,12 +7892,7 @@ buffer-fill@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c" integrity sha1-+PeLdniYiO858gXNY39o5wISKyw= -buffer-from@1.x: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" - integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== - -buffer-from@^1.0.0: +buffer-from@1.x, buffer-from@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== @@ -9249,21 +8257,11 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001125, caniuse-lite@^1.0.30001181, caniuse-lite@^1.0.30001196: - version "1.0.30001204" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001204.tgz#256c85709a348ec4d175e847a3b515c66e79f2aa" - integrity sha512-JUdjWpcxfJ9IPamy2f5JaRDCaqJOxDzOSKtbdx4rH9VivMd1vIzoPumsJa9LoMIi4Fx2BV2KZOxWhNkBjaYivQ== - -caniuse-lite@^1.0.30000844: +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000844, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001125, caniuse-lite@^1.0.30001196, caniuse-lite@^1.0.30001219: version "1.0.30001245" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001245.tgz#45b941bbd833cb0fa53861ff2bae746b3c6ca5d4" integrity sha512-768fM9j1PKXpOCKws6eTo3RHmvTUsG9UrpT4WoREFeZgJBTi4/X9g565azS/rVUGtqb8nt7FjLeF5u4kukERnA== -caniuse-lite@^1.0.30001219: - version "1.0.30001236" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001236.tgz#0a80de4cdf62e1770bb46a30d884fc8d633e3958" - integrity sha512-o0PRQSrSCGJKCPZcgMzl5fUaj5xHe8qA2m4QRvnyY4e1lITqoNkr7q/Oh1NcpGSy0Th97UZ35yoKcINPoq7YOQ== - capability@^0.2.5: version "0.2.5" resolved "https://registry.yarnpkg.com/capability/-/capability-0.2.5.tgz#51ad87353f1936ffd77f2f21c74633a4dea88801" @@ -9334,7 +8332,7 @@ chalk@2.4.2, chalk@^2.0.0, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.3. escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@4.1.0, chalk@^4.0.0, chalk@^4.1.0: +chalk@4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== @@ -9361,7 +8359,7 @@ chalk@^3.0.0: ansi-styles "^4.1.0" supports-color "^7.1.0" -chalk@^4.1.1: +chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== @@ -9464,17 +8462,6 @@ checkpoint-store@^1.1.0: dependencies: functional-red-black-tree "^1.0.1" -cheerio-select-tmp@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/cheerio-select-tmp/-/cheerio-select-tmp-0.1.1.tgz#55bbef02a4771710195ad736d5e346763ca4e646" - integrity sha512-YYs5JvbpU19VYJyj+F7oYrIE2BOll1/hRU7rEy/5+v9BzkSo3bK81iAeeQEMI92vRIxz677m72UmJUiVwwgjfQ== - dependencies: - css-select "^3.1.2" - css-what "^4.0.0" - domelementtype "^2.1.0" - domhandler "^4.0.0" - domutils "^2.4.4" - cheerio-select@^1.5.0: version "1.6.0" resolved "https://registry.yarnpkg.com/cheerio-select/-/cheerio-select-1.6.0.tgz#489f36604112c722afa147dedd0d4609c09e1696" @@ -9508,7 +8495,7 @@ cheerio@^0.22.0: lodash.reject "^4.4.0" lodash.some "^4.4.0" -cheerio@^1.0.0-rc.2: +cheerio@^1.0.0-rc.2, cheerio@^1.0.0-rc.3: version "1.0.0-rc.10" resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.10.tgz#2ba3dcdfcc26e7956fc1f440e61d51c643379f3e" integrity sha512-g0J0q/O6mW8z5zxQ3A8E8J1hUgp4SMOvEoW/x84OwyHKe/Zccz83PVT4y5Crcr530FV6NgmKI1qvGTKVl9XXVw== @@ -9521,19 +8508,6 @@ cheerio@^1.0.0-rc.2: parse5-htmlparser2-tree-adapter "^6.0.1" tslib "^2.2.0" -cheerio@^1.0.0-rc.3: - version "1.0.0-rc.5" - resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.5.tgz#88907e1828674e8f9fee375188b27dadd4f0fa2f" - integrity sha512-yoqps/VCaZgN4pfXtenwHROTp8NG6/Hlt4Jpz2FEP0ZJQ+ZUkVDd0hAPDNKhj3nakpfPt/CNs57yEtxD1bXQiw== - dependencies: - cheerio-select-tmp "^0.1.0" - dom-serializer "~1.2.0" - domhandler "^4.0.0" - entities "~2.1.0" - htmlparser2 "^6.0.0" - parse5 "^6.0.0" - parse5-htmlparser2-tree-adapter "^6.0.0" - chokidar@3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.3.0.tgz#12c0714668c55800f659e262d4962a97faf554a6" @@ -9708,12 +8682,7 @@ cli-cursor@^3.1.0: dependencies: restore-cursor "^3.1.0" -cli-spinners@^2.2.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.6.0.tgz#36c7dc98fb6a9a76bd6238ec3f77e2425627e939" - integrity sha512-t+4/y50K/+4xcCRosKkA7W4gTr1MySvLV0q+PxmG7FJ5g+66ChKurYjxBCjHggHH3HA5Hh9cy+lcUGWDqVH+4Q== - -cli-spinners@^2.5.0: +cli-spinners@^2.2.0, cli-spinners@^2.5.0: version "2.6.1" resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.6.1.tgz#adc954ebe281c37a6319bfa401e6dd2488ffb70d" integrity sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g== @@ -9780,15 +8749,6 @@ cliui@^6.0.0: strip-ansi "^6.0.0" wrap-ansi "^6.2.0" -cliui@^7.0.2: - version "7.0.4" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" - integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== - dependencies: - string-width "^4.2.0" - strip-ansi "^6.0.0" - wrap-ansi "^7.0.0" - cliui@^8.0.1: version "8.0.1" resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" @@ -10353,12 +9313,7 @@ core-js-compat@^3.8.1, core-js-compat@^3.9.0: browserslist "^4.16.3" semver "7.0.0" -core-js-pure@^3.0.0: - version "3.9.1" - resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.9.1.tgz#677b322267172bd490e4464696f790cbc355bec5" - integrity sha512-laz3Zx0avrw9a4QEIdmIblnVuJz8W51leY9iLThatCsFawWxC3sE4guASC78JbCin+DkwMpCdp1AVAuzL/GN7A== - -core-js-pure@^3.0.1: +core-js-pure@^3.0.0, core-js-pure@^3.0.1: version "3.15.2" resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.15.2.tgz#c8e0874822705f3385d3197af9348f7c9ae2e3ce" integrity sha512-D42L7RYh1J2grW8ttxoY1+17Y4wXZeKe7uyplAI3FkNQyI5OgBIAjUfFiTPfL1rs0qLpxaabITNbjKl1Sp82tA== @@ -10668,17 +9623,6 @@ css-select@^2.0.0, css-select@^2.0.2: domutils "^1.7.0" nth-check "^1.0.2" -css-select@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-3.1.2.tgz#d52cbdc6fee379fba97fb0d3925abbd18af2d9d8" - integrity sha512-qmss1EihSuBNWNNhHjxzxSfJoFBM/lERB/Q4EnsJQQC62R2evJDW481091oAdOr9uh46/0n4nrg0It5cAnj1RA== - dependencies: - boolbase "^1.0.0" - css-what "^4.0.0" - domhandler "^4.0.0" - domutils "^2.4.3" - nth-check "^2.0.0" - css-select@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b" @@ -10735,11 +9679,6 @@ css-what@^3.2.1: resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.2.tgz#ea7026fcb01777edbde52124e21f327e7ae950e4" integrity sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ== -css-what@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-4.0.0.tgz#35e73761cab2eeb3d3661126b23d7aa0e8432233" - integrity sha512-teijzG7kwYfNVsUh2H/YN62xW3KK9YhXEgSlbxMlcyjPNvdKJqFx5lrwlJgoFP1ZHlB89iGDlo/JyshKeRhv5A== - css-what@^6.0.1: version "6.1.0" resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" @@ -10966,10 +9905,10 @@ debug@3.2.6: dependencies: ms "^2.1.1" -debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.2.0, debug@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" - integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== +debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.2.0, debug@^4.3.1, debug@^4.3.3: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: ms "2.1.2" @@ -10980,13 +9919,6 @@ debug@^3.1.0, debug@^3.1.1, debug@^3.2.6: dependencies: ms "^2.1.1" -debug@^4.3.3: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - debuglog@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" @@ -11483,16 +10415,7 @@ dom-serializer@0: domelementtype "^2.0.1" entities "^2.0.0" -dom-serializer@^1.0.1, dom-serializer@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.2.0.tgz#3433d9136aeb3c627981daa385fc7f32d27c48f1" - integrity sha512-n6kZFH/KlCrqs/1GHMOd5i2fd/beQHuehKdWvNNffbGHTr/almdhuVvTVFb3V7fglz+nC50fFusu3lY33h12pA== - dependencies: - domelementtype "^2.0.1" - domhandler "^4.0.0" - entities "^2.0.0" - -dom-serializer@^1.3.2: +dom-serializer@^1.0.1, dom-serializer@^1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91" integrity sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig== @@ -11524,12 +10447,7 @@ domelementtype@1, domelementtype@^1.3.0, domelementtype@^1.3.1: resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== -domelementtype@^2.0.1, domelementtype@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.1.0.tgz#a851c080a6d1c3d94344aed151d99f669edf585e" - integrity sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w== - -domelementtype@^2.2.0: +domelementtype@^2.0.1, domelementtype@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== @@ -11548,14 +10466,7 @@ domhandler@^2.3.0: dependencies: domelementtype "1" -domhandler@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.0.0.tgz#01ea7821de996d85f69029e81fa873c21833098e" - integrity sha512-KPTbnGQ1JeEMQyO1iYXoagsI6so/C96HZiFyByU3T6iAzpXn8EGEvct6unm1ZGoed8ByO2oirxgwxBmqKF9haA== - dependencies: - domelementtype "^2.1.0" - -domhandler@^4.2.0, domhandler@^4.3.1: +domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== @@ -11578,15 +10489,6 @@ domutils@^1.5.1, domutils@^1.7.0: dom-serializer "0" domelementtype "1" -domutils@^2.4.3, domutils@^2.4.4: - version "2.5.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.5.0.tgz#42f49cffdabb92ad243278b331fd761c1c2d3039" - integrity sha512-Ho16rzNMOFk2fPwChGh3D2D9OEHAfG19HgmRR2l+WLSsIstNsAYBzePH412bL0y5T44ejABIVfTHQ8nqi/tBCg== - dependencies: - dom-serializer "^1.0.1" - domelementtype "^2.0.1" - domhandler "^4.0.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" @@ -11747,21 +10649,11 @@ eip1559-fee-suggestions-ethers@1.3.3: ethers "^5.4.2" moving-averages "^4.0.6" -electron-to-chromium@^1.3.47: +electron-to-chromium@^1.3.47, electron-to-chromium@^1.3.564, electron-to-chromium@^1.3.723: version "1.3.778" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.778.tgz#bf01048736c95b78f2988e88005e0ebb385942a4" integrity sha512-Lw04qJaPtWdq0d7qKHJTgkam+FhFi3hm/scf1EyqJWdjO3ZIGUJhNmZJRXWb7yb/bRYXQyVGSpa9RqVpjjWMQw== -electron-to-chromium@^1.3.564, electron-to-chromium@^1.3.649: - version "1.3.699" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.699.tgz#854eea9db8bc8109c409a4807bfdb200dd75a2c7" - integrity sha512-fjt43CPXdPYwD9ybmKbNeLwZBmCVdLY2J5fGZub7/eMPuiqQznOGNXv/wurnpXIlE7ScHnvG9Zi+H4/i6uMKmw== - -electron-to-chromium@^1.3.723: - version "1.3.752" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.752.tgz#0728587f1b9b970ec9ffad932496429aef750d09" - integrity sha512-2Tg+7jSl3oPxgsBsWKh5H83QazTkmWG/cnNwJplmyZc7KcN61+I10oUgaXSVk/NwfvN3BdkKDR4FYuRBQQ2v0A== - elegant-spinner@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" @@ -11904,11 +10796,6 @@ entities@^2.0.0: resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== -entities@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" - integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w== - env-paths@^2.2.0: version "2.2.1" resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" @@ -12815,31 +11702,7 @@ ethereumjs-util@^5.0.0, ethereumjs-util@^5.0.1, ethereumjs-util@^5.1.1, ethereum rlp "^2.0.0" safe-buffer "^5.1.1" -ethereumjs-util@^7.0.10, ethereumjs-util@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.0.tgz#e2b43a30bfcdbcb432a4eb42bd5f2393209b3fd5" - integrity sha512-kR+vhu++mUDARrsMMhsjjzPduRVAeundLGXucGRHF3B4oEltOUspfgCVco4kckucj3FMlLaZHUl9n7/kdmr6Tw== - dependencies: - "@types/bn.js" "^5.1.0" - bn.js "^5.1.2" - create-hash "^1.1.2" - ethereum-cryptography "^0.1.3" - ethjs-util "0.1.6" - rlp "^2.2.4" - -ethereumjs-util@^7.0.2: - version "7.0.9" - resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.0.9.tgz#2038baeb30f370a3e576ec175bd70bbbb6807d42" - integrity sha512-cRqvYYKJoitq6vMKMf8pXeVwvTrX+dRD0JwHaYqm8jvogK14tqIoCWH/KUHcRwnVxVXEYF/o6pup5jRG4V0xzg== - dependencies: - "@types/bn.js" "^5.1.0" - bn.js "^5.1.2" - create-hash "^1.1.2" - ethereum-cryptography "^0.1.3" - ethjs-util "0.1.6" - rlp "^2.2.4" - -ethereumjs-util@^7.1.1, ethereumjs-util@^7.1.4: +ethereumjs-util@^7.0.10, ethereumjs-util@^7.0.2, ethereumjs-util@^7.1.0, ethereumjs-util@^7.1.1, ethereumjs-util@^7.1.4: version "7.1.4" resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.4.tgz#a6885bcdd92045b06f596c7626c3e89ab3312458" integrity sha512-p6KmuPCX4mZIqsQzXfmSx9Y0l2hqf+VkAiwSisW3UKUFdk8ZkAt+AYaor83z2nSi6CU2zSsXMlD80hAbNEGM0A== @@ -12984,43 +11847,7 @@ ethers@^4.0.0-beta.1, ethers@^4.0.32: uuid "2.0.1" xmlhttprequest "1.8.0" -ethers@^5.0.0, ethers@^5.0.1, ethers@^5.0.2: - version "5.4.1" - resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.4.1.tgz#bcff1e9f45bf1a061bf313ec04e8d9881d2d53f9" - integrity sha512-SrcddMdCgP1hukDvCPd87Aipbf4NWjQvdfAbZ65XSZGbfyuYPtIrUJPDH5B1SBRsdlfiEgX3eoz28DdBDzMNFg== - dependencies: - "@ethersproject/abi" "5.4.0" - "@ethersproject/abstract-provider" "5.4.0" - "@ethersproject/abstract-signer" "5.4.0" - "@ethersproject/address" "5.4.0" - "@ethersproject/base64" "5.4.0" - "@ethersproject/basex" "5.4.0" - "@ethersproject/bignumber" "5.4.0" - "@ethersproject/bytes" "5.4.0" - "@ethersproject/constants" "5.4.0" - "@ethersproject/contracts" "5.4.0" - "@ethersproject/hash" "5.4.0" - "@ethersproject/hdnode" "5.4.0" - "@ethersproject/json-wallets" "5.4.0" - "@ethersproject/keccak256" "5.4.0" - "@ethersproject/logger" "5.4.0" - "@ethersproject/networks" "5.4.1" - "@ethersproject/pbkdf2" "5.4.0" - "@ethersproject/properties" "5.4.0" - "@ethersproject/providers" "5.4.1" - "@ethersproject/random" "5.4.0" - "@ethersproject/rlp" "5.4.0" - "@ethersproject/sha2" "5.4.0" - "@ethersproject/signing-key" "5.4.0" - "@ethersproject/solidity" "5.4.0" - "@ethersproject/strings" "5.4.0" - "@ethersproject/transactions" "5.4.0" - "@ethersproject/units" "5.4.0" - "@ethersproject/wallet" "5.4.0" - "@ethersproject/web" "5.4.0" - "@ethersproject/wordlists" "5.4.0" - -ethers@^5.0.13, ethers@^5.5.4: +ethers@^5.0.0, ethers@^5.0.1, ethers@^5.0.13, ethers@^5.0.2, ethers@^5.4.2, ethers@^5.5.0, ethers@^5.5.4: version "5.6.2" resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.6.2.tgz#e75bac7f038c5e0fdde667dba62fc223924143a2" integrity sha512-EzGCbns24/Yluu7+ToWnMca3SXJ1Jk1BvWB7CCmVNxyOeM4LLvw2OLuIHhlkhQk1dtOcj9UMsdkxUh8RiG1dxQ== @@ -13043,90 +11870,18 @@ ethers@^5.0.13, ethers@^5.5.4: "@ethersproject/networks" "5.6.1" "@ethersproject/pbkdf2" "5.6.0" "@ethersproject/properties" "5.6.0" - "@ethersproject/providers" "5.6.2" - "@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" - -ethers@^5.4.2: - 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" - -ethers@^5.5.0: - version "5.5.2" - resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.5.2.tgz#cd2e508c7342c44fa70392f722e8de8f2416489f" - integrity sha512-EF5W+6Wwcu6BqVwpgmyR5U2+L4c1FQzlM/02dkZOugN3KF0cG9bzHZP+TDJglmPm2/IzCEJDT7KBxzayk7SAHw== - 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.1" - "@ethersproject/pbkdf2" "5.5.0" - "@ethersproject/properties" "5.5.0" - "@ethersproject/providers" "5.5.1" - "@ethersproject/random" "5.5.0" - "@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" + "@ethersproject/providers" "5.6.2" + "@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" ethjs-abi@^0.2.1: version "0.2.1" @@ -13892,16 +12647,16 @@ flux@^4.0.1: fbemitter "^3.0.0" fbjs "^3.0.0" -follow-redirects@^1.0.0, follow-redirects@^1.10.0, follow-redirects@^1.12.1: - version "1.14.9" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.9.tgz#dd4ea157de7bfaf9ea9b3fbd85aa16951f78d8d7" - integrity sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w== - -follow-redirects@^1.14.9: +follow-redirects@^1.0.0, follow-redirects@^1.10.0, follow-redirects@^1.12.1, follow-redirects@^1.14.9: version "1.15.1" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.1.tgz#0ca6a452306c9b276e4d3127483e29575e207ad5" integrity sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA== +follow-redirects@^1.15.0: + version "1.15.2" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" + integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== + fontkit@^1.8.0: version "1.8.1" resolved "https://registry.yarnpkg.com/fontkit/-/fontkit-1.8.1.tgz#ae77485376f1096b45548bf6ced9a07af62a7846" @@ -14479,10 +13234,10 @@ glob@^5.0.15: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@~7.1.6: - version "7.1.7" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" - integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== +glob@^7.0.0, glob@^7.0.3, glob@^7.1.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: + version "7.2.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" + integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -14491,10 +13246,10 @@ glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, gl once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.1.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" - integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== +glob@~7.1.6: + version "7.1.7" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" + integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -14699,7 +13454,7 @@ graphql-config@^3.3.0: minimatch "3.0.4" string-env-interpolation "1.0.1" -graphql-request@3.4.0, graphql-request@^3.3.0: +graphql-request@3.4.0: version "3.4.0" resolved "https://registry.yarnpkg.com/graphql-request/-/graphql-request-3.4.0.tgz#3a400cd5511eb3c064b1873afb059196bbea9c2b" integrity sha512-acrTzidSlwAj8wBNO7Q/UQHS8T+z5qRGquCQRv9J1InwR01BBWV9ObnoE+JS5nCCEj8wSGS0yrDXVDoRiKZuOg== @@ -14708,7 +13463,7 @@ graphql-request@3.4.0, graphql-request@^3.3.0: extract-files "^9.0.0" form-data "^3.0.0" -graphql-request@^3.7.0: +graphql-request@^3.3.0, graphql-request@^3.7.0: version "3.7.0" resolved "https://registry.yarnpkg.com/graphql-request/-/graphql-request-3.7.0.tgz#c7406e537084f8b9788541e3e6704340ca13055b" integrity sha512-dw5PxHCgBneN2DDNqpWu8QkbbJ07oOziy8z+bK/TAXufsOLaETuVO4GkXrbs0WjhdKhBMN3BkpN/RIvUHkmNUQ== @@ -15122,12 +13877,7 @@ hex-color-regex@^1.1.0: resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== -highlight.js@^10.0.0: - version "10.7.1" - resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-10.7.1.tgz#a8ec4152db24ea630c90927d6cae2a45f8ecb955" - integrity sha512-S6G97tHGqJ/U8DsXcEdnACbirtbx58Bx9CzIVeYli8OuswCfYI/LsXH2EiGcoGio1KAC3x4mmUwulOllJ2ZyRA== - -highlight.js@^10.4.1: +highlight.js@^10.0.0, highlight.js@^10.4.1: version "10.7.3" resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-10.7.3.tgz#697272e3991356e40c3cac566a74eef681756531" integrity sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A== @@ -15289,16 +14039,6 @@ htmlparser2@^3.10.1, htmlparser2@^3.9.1: inherits "^2.0.1" readable-stream "^3.1.1" -htmlparser2@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.0.1.tgz#422521231ef6d42e56bd411da8ba40aa36e91446" - integrity sha512-GDKPd+vk4jvSuvCbyuzx/unmXkk090Azec7LovXP8as1Hn8q9p3hbjmDGbUqqhknw0ajwit6LiiWqfiTUPMK7w== - dependencies: - domelementtype "^2.0.1" - domhandler "^4.0.0" - domutils "^2.4.4" - entities "^2.0.0" - htmlparser2@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" @@ -15981,13 +14721,6 @@ is-color-stop@^1.0.0: rgb-regex "^1.0.1" rgba-regex "^1.0.0" -is-core-module@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.2.0.tgz#97037ef3d52224d85163f5597b2b63d9afed981a" - integrity sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ== - dependencies: - has "^1.0.3" - is-core-module@^2.8.1: version "2.8.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" @@ -18757,7 +17490,7 @@ micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4: snapdragon "^0.8.1" to-regex "^3.0.2" -micromatch@^4.0.0: +micromatch@^4.0.0, micromatch@^4.0.2: version "4.0.4" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9" integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== @@ -18765,14 +17498,6 @@ micromatch@^4.0.0: braces "^3.0.1" picomatch "^2.2.3" -micromatch@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" - integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== - dependencies: - braces "^3.0.1" - picomatch "^2.0.5" - miller-rabin@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" @@ -18916,17 +17641,7 @@ minimist@0.0.8: resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= -minimist@^1.1.0: - version "1.2.6" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" - integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== - -minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.5, minimist@~1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== - -minimist@^1.2.0: +minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5, minimist@~1.2.5: version "1.2.7" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18" integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== @@ -19537,12 +18252,7 @@ node-preload@^0.2.1: dependencies: process-on-spawn "^1.0.0" -node-releases@^1.1.61, node-releases@^1.1.70: - version "1.1.71" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.71.tgz#cb1334b179896b1c89ecfdd4b725fb7bbdfc7dbb" - integrity sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg== - -node-releases@^1.1.71: +node-releases@^1.1.61, node-releases@^1.1.71: version "1.1.73" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.73.tgz#dd4e81ddd5277ff846b80b52bb40c49edf7a7b20" integrity sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg== @@ -19750,13 +18460,6 @@ nth-check@^1.0.2, nth-check@~1.0.1: dependencies: boolbase "~1.0.0" -nth-check@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.0.0.tgz#1bb4f6dac70072fc313e8c9cd1417b5074c0a125" - integrity sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q== - dependencies: - boolbase "^1.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" @@ -20485,7 +19188,7 @@ parse-url@^5.0.0: parse-path "^4.0.0" protocols "^1.4.0" -parse5-htmlparser2-tree-adapter@^6.0.0, parse5-htmlparser2-tree-adapter@^6.0.1: +parse5-htmlparser2-tree-adapter@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz#2cdf9ad823321140370d4dbf5d3e92c7c8ddc6e6" integrity sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA== @@ -20711,18 +19414,7 @@ pause-stream@0.0.11: dependencies: through "~2.3" -pbkdf2@^3.0.17, pbkdf2@^3.0.3: - version "3.1.1" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.1.tgz#cb8724b0fada984596856d1a6ebafd3584654b94" - integrity sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg== - dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -pbkdf2@^3.0.9: +pbkdf2@^3.0.17, pbkdf2@^3.0.3, pbkdf2@^3.0.9: version "3.1.2" resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075" integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA== @@ -20769,12 +19461,7 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= -picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1: - version "2.2.2" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" - integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== - -picomatch@^2.2.3: +picomatch@^2.0.4, picomatch@^2.2.1, 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== @@ -21624,7 +20311,7 @@ prettier@2.1.1: resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.1.1.tgz#d9485dd5e499daa6cb547023b87a6cf51bee37d6" integrity sha512-9bY+5ZWCfqj3ghYBLxApy2zf6m+NJo5GzmLTpr9FsApsfjriNnS2dahWReHMi7qNPhhHl9SYHJs2cHZLgexNIw== -prettier@2.6.2: +prettier@2.6.2, prettier@^2.1.2: version "2.6.2" resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.6.2.tgz#e26d71a18a74c3d0f0597f55f01fb6c06c206032" integrity sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew== @@ -21634,11 +20321,6 @@ prettier@^1.14.3: resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== -prettier@^2.1.2: - version "2.2.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.2.1.tgz#795a1a78dd52f073da0cd42b21f9c91381923ff5" - integrity sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q== - pretty-error@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.2.tgz#be89f82d81b1c86ec8fdfbc385045882727f93b6" @@ -21817,6 +20499,11 @@ proxy-addr@~2.0.5: forwarded "~0.1.2" ipaddr.js "1.9.1" +proxy-from-env@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + proxy-middleware@latest: version "0.15.0" resolved "https://registry.yarnpkg.com/proxy-middleware/-/proxy-middleware-0.15.0.tgz#a3fdf1befb730f951965872ac2f6074c61477a56" @@ -21964,7 +20651,7 @@ q@^1.1.2, q@^1.5.1: resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= -qs@6.10.3: +qs@6.10.3, qs@^6.7.0, qs@^6.9.4: version "6.10.3" resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ== @@ -21976,13 +20663,6 @@ qs@6.7.0: resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== -qs@^6.7.0, 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== - 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" @@ -22991,15 +21671,7 @@ resolve@1.17.0, resolve@~1.17.0: dependencies: path-parse "^1.0.6" -resolve@^1.0.0, resolve@^1.1.5, resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.20.0, resolve@^1.3.2, resolve@^1.8.1: - version "1.20.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" - integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== - dependencies: - is-core-module "^2.2.0" - path-parse "^1.0.6" - -resolve@^1.1.4, resolve@^1.4.0: +resolve@^1.0.0, resolve@^1.1.4, resolve@^1.1.5, resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.20.0, resolve@^1.3.2, resolve@^1.4.0, resolve@^1.8.1: version "1.22.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== @@ -23156,20 +21828,13 @@ rustbn.js@~0.2.0: resolved "https://registry.yarnpkg.com/rustbn.js/-/rustbn.js-0.2.0.tgz#8082cb886e707155fd1cb6f23bd591ab8d55d0ca" integrity sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA== -rxjs@^6.3.3, rxjs@^6.6.0: +rxjs@^6.3.3, rxjs@^6.4.0, rxjs@^6.6.0, rxjs@^6.6.3, rxjs@^6.6.6: version "6.6.7" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== dependencies: tslib "^1.9.0" -rxjs@^6.4.0, rxjs@^6.6.3, rxjs@^6.6.6: - version "6.6.6" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.6.tgz#14d8417aa5a07c5e633995b525e1e3c0dec03b70" - integrity sha512-/oTwee4N4iWzAMAL9xdGKjkEHmIwupR3oXbQjCKywF1BeFohswF3vZdogbmEF6pZkOsXTzWkrZszrWpQTByYVg== - dependencies: - tslib "^1.9.0" - rxjs@^7.2.0: version "7.5.1" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.1.tgz#af73df343cbcab37628197f43ea0c8256f54b157" @@ -23417,10 +22082,10 @@ semver@7.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== -semver@7.x, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4: - version "7.3.5" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" - integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== +semver@7.x, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: + version "7.3.7" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f" + integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== dependencies: lru-cache "^6.0.0" @@ -23429,13 +22094,6 @@ semver@^6.0.0, semver@^6.1.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semve resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.3.5: - version "7.3.7" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f" - integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== - dependencies: - lru-cache "^6.0.0" - semver@~5.4.1: version "5.4.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" @@ -24466,16 +23124,7 @@ string-width@^3.0.0, string-width@^3.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" -string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0: - version "4.2.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz#dafd4f9559a7585cfba529c6a0a4f73488ebd4c5" - integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.0" - -string-width@^4.2.3: +string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -24546,7 +23195,7 @@ stringify-object@^3.3.0: is-obj "^1.0.1" is-regexp "^1.0.0" -strip-ansi@6.0.0, strip-ansi@^6.0.0: +strip-ansi@6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== @@ -24574,7 +23223,7 @@ strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: dependencies: ansi-regex "^4.1.0" -strip-ansi@^6.0.1: +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" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -24916,17 +23565,7 @@ table@^5.2.3: slice-ansi "^2.1.0" string-width "^3.0.0" -table@^6.0.4: - version "6.0.7" - resolved "https://registry.yarnpkg.com/table/-/table-6.0.7.tgz#e45897ffbcc1bcf9e8a87bf420f2c9e5a7a52a34" - integrity sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g== - dependencies: - ajv "^7.0.2" - lodash "^4.17.20" - slice-ansi "^4.0.0" - string-width "^4.2.0" - -table@^6.8.0: +table@^6.0.4, table@^6.8.0: version "6.8.1" resolved "https://registry.yarnpkg.com/table/-/table-6.8.1.tgz#ea2b71359fe03b017a5fbc296204471158080bdf" integrity sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA== @@ -25609,7 +24248,7 @@ tsify@^5.0.4: through2 "^2.0.0" tsconfig "^5.0.3" -tslib@2.3.1, tslib@^2.2.0: +tslib@2.3.1, tslib@^2, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.2.0: version "2.3.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== @@ -25619,20 +24258,20 @@ tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2, tslib@^2.1.0, tslib@~2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.2.0.tgz#fb2c475977e35e241311ede2693cee1ec6698f5c" - integrity sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w== +tslib@~2.0.1: + version "2.0.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.3.tgz#8e0741ac45fc0c226e58a17bfc3e64b9bc6ca61c" + integrity sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ== -tslib@^2.0.3, tslib@~2.1.0: +tslib@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.1.0.tgz#da60860f1c2ecaa5703ab7d39bc05b6bf988b97a" integrity sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A== -tslib@~2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.3.tgz#8e0741ac45fc0c226e58a17bfc3e64b9bc6ca61c" - integrity sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ== +tslib@~2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.2.0.tgz#fb2c475977e35e241311ede2693cee1ec6698f5c" + integrity sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w== tsort@0.0.1: version "0.0.1" @@ -25835,21 +24474,11 @@ typescript@2.9.1: resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.9.1.tgz#fdb19d2c67a15d11995fd15640e373e09ab09961" integrity sha512-h6pM2f/GDchCFlldnriOhs1QHuwbnmj6/v7499eMHqPeW4V2G0elua2eIc2nu8v2NdHV0Gm+tzX83Hr6nUFjQA== -typescript@4.4.4: +typescript@4.4.4, typescript@^4.0.3, typescript@^4.3.4: version "4.4.4" resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.4.4.tgz#2cd01a1a1f160704d3101fd5a58ff0f9fcb8030c" integrity sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA== -typescript@^4.0.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.2.3.tgz#39062d8019912d43726298f09493d598048c1ce3" - integrity sha512-qOcYwxaByStAWrBf4x0fibwZvMRG+r4cQoTjbPtUlrWjBHbmCAww1i448U0GJ+3cNNEtebDteo/cHOR3xJ4wEw== - -typescript@^4.3.4: - version "4.3.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.3.5.tgz#4d1c37cc16e893973c45a06886b7113234f119f4" - integrity sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA== - typewise-core@^1.2, typewise-core@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/typewise-core/-/typewise-core-1.2.0.tgz#97eb91805c7f55d2f941748fa50d315d991ef195" @@ -26410,19 +25039,7 @@ util@^0.11.0: dependencies: inherits "2.0.3" -util@^0.12.0: - version "0.12.3" - resolved "https://registry.yarnpkg.com/util/-/util-0.12.3.tgz#971bb0292d2cc0c892dab7c6a5d37c2bec707888" - integrity sha512-I8XkoQwE+fPQEhy9v012V+TSdH2kp9ts29i20TaaDUXsg7x/onePbhFJUExBfv/2ay1ZOp/Vsm3nDlmnFGSAog== - dependencies: - inherits "^2.0.3" - is-arguments "^1.0.4" - is-generator-function "^1.0.7" - is-typed-array "^1.1.3" - safe-buffer "^5.1.2" - which-typed-array "^1.1.2" - -util@~0.12.0: +util@^0.12.0, util@~0.12.0: version "0.12.4" resolved "https://registry.yarnpkg.com/util/-/util-0.12.4.tgz#66121a31420df8f01ca0c464be15dfa1d1850253" integrity sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw== @@ -26668,16 +25285,6 @@ web3-bzz@1.2.9: swarm-js "^0.1.40" underscore "1.9.1" -web3-bzz@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.3.4.tgz#9be529353c4063bc68395370cb5d8e414c6b6c87" - integrity sha512-DBRVQB8FAgoAtZCpp2GAGPCJjgBgsuwOKEasjV044AAZiONpXcKHbkO6G1SgItIixnrJsRJpoGLGw52Byr6FKw== - dependencies: - "@types/node" "^12.12.6" - got "9.6.0" - swarm-js "^0.1.40" - underscore "1.9.1" - web3-bzz@1.5.3: version "1.5.3" resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.5.3.tgz#e36456905ce051138f9c3ce3623cbc73da088c2b" @@ -26723,15 +25330,6 @@ web3-core-helpers@1.2.9: web3-eth-iban "1.2.9" web3-utils "1.2.9" -web3-core-helpers@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.3.4.tgz#b8549740bf24d5c71688d89c3cdd802d8d36b4e4" - integrity sha512-n7BqDalcTa1stncHMmrnFtyTgDhX5Fy+avNaHCf6qcOP2lwTQC8+mdHVBONWRJ6Yddvln+c8oY/TAaB6PzWK0A== - dependencies: - underscore "1.9.1" - web3-eth-iban "1.3.4" - web3-utils "1.3.4" - web3-core-helpers@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.3.6.tgz#c478246a9abe4e5456acf42657dac2f7c330be74" @@ -26800,18 +25398,6 @@ web3-core-method@1.2.9: web3-core-subscriptions "1.2.9" web3-utils "1.2.9" -web3-core-method@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.3.4.tgz#6c2812d96dd6c811b9e6c8a5d25050d2c22b9527" - integrity sha512-JxmQrujsAWYRRN77P/RY7XuZDCzxSiiQJrgX/60Lfyf7FF1Y0le4L/UMCi7vUJnuYkbU1Kfl9E0udnqwyPqlvQ== - dependencies: - "@ethersproject/transactions" "^5.0.0-beta.135" - underscore "1.9.1" - web3-core-helpers "1.3.4" - web3-core-promievent "1.3.4" - web3-core-subscriptions "1.3.4" - web3-utils "1.3.4" - web3-core-method@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.3.6.tgz#4b0334edd94b03dfec729d113c69a4eb6ebc68ae" @@ -26869,13 +25455,6 @@ web3-core-promievent@1.2.9: dependencies: eventemitter3 "3.1.2" -web3-core-promievent@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.3.4.tgz#d166239012d91496cdcbe91d5d54071ea818bc73" - integrity sha512-V61dZIeBwogg6hhZZUt0qL9hTp1WDhnsdjP++9fhTDr4vy/Gz8T5vibqT2LLg6lQC8i+Py33yOpMeMNjztaUaw== - dependencies: - eventemitter3 "4.0.4" - web3-core-promievent@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.3.6.tgz#6c27dc79de8f71b74f5d17acaf9aaf593d3cb0c9" @@ -26930,18 +25509,6 @@ web3-core-requestmanager@1.2.9: web3-providers-ipc "1.2.9" web3-providers-ws "1.2.9" -web3-core-requestmanager@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.3.4.tgz#e105ced735c2b5fcedd5771e0ecf9879ae9c373f" - integrity sha512-xriouCrhVnVDYQ04TZXdEREZm0OOJzkSEsoN5bu4JYsA6e/HzROeU+RjDpMUxFMzN4wxmFZ+HWbpPndS3QwMag== - dependencies: - underscore "1.9.1" - util "^0.12.0" - web3-core-helpers "1.3.4" - web3-providers-http "1.3.4" - web3-providers-ipc "1.3.4" - web3-providers-ws "1.3.4" - web3-core-requestmanager@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.3.6.tgz#4fea269fe913fd4fca464b4f7c65cb94857b5b2a" @@ -27003,15 +25570,6 @@ web3-core-subscriptions@1.2.9: underscore "1.9.1" web3-core-helpers "1.2.9" -web3-core-subscriptions@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.3.4.tgz#7b00e92bde21f792620cd02e6e508fcf4f4c31d3" - integrity sha512-drVHVDxh54hv7xmjIm44g4IXjfGj022fGw4/meB5R2D8UATFI40F73CdiBlyqk3DysP9njDOLTJFSQvEkLFUOg== - dependencies: - eventemitter3 "4.0.4" - underscore "1.9.1" - web3-core-helpers "1.3.4" - web3-core-subscriptions@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.3.6.tgz#ee24e7974d1d72ff6c992c599deba4ef9b308415" @@ -27073,19 +25631,6 @@ web3-core@1.2.9: web3-core-requestmanager "1.2.9" web3-utils "1.2.9" -web3-core@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.3.4.tgz#2cc7ba7f35cc167f7a0a46fd5855f86e51d34ce8" - integrity sha512-7OJu46RpCEfTerl+gPvHXANR2RkLqAfW7l2DAvQ7wN0pnCzl9nEfdgW6tMhr31k3TR2fWucwKzCyyxMGzMHeSA== - dependencies: - "@types/bn.js" "^4.11.5" - "@types/node" "^12.12.6" - bignumber.js "^9.0.0" - web3-core-helpers "1.3.4" - web3-core-method "1.3.4" - web3-core-requestmanager "1.3.4" - web3-utils "1.3.4" - web3-core@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.3.6.tgz#a6a761d1ff2f3ee462b8dab679229d2f8e267504" @@ -27152,15 +25697,6 @@ web3-eth-abi@1.2.9: underscore "1.9.1" web3-utils "1.2.9" -web3-eth-abi@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.3.4.tgz#10f5d8b6080dbb6cbaa1bcef7e0c70573da6566f" - integrity sha512-PVSLXJ2dzdXsC+R24llIIEOS6S1KhG5qwNznJjJvXZFe3sqgdSe47eNvwUamZtCBjcrdR/HQr+L/FTxqJSf80Q== - dependencies: - "@ethersproject/abi" "5.0.7" - underscore "1.9.1" - web3-utils "1.3.4" - web3-eth-abi@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.3.6.tgz#4272ca48d817aa651bbf97b269f5ff10abc2b8a9" @@ -27237,23 +25773,6 @@ web3-eth-accounts@1.2.9: web3-core-method "1.2.9" web3-utils "1.2.9" -web3-eth-accounts@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.3.4.tgz#cf513d78531c13ce079a5e7862820570350e79a5" - integrity sha512-gz9ReSmQEjqbYAjpmAx+UZF4CVMbyS4pfjSYWGAnNNI+Xz0f0u0kCIYXQ1UEaE+YeLcYiE+ZlZdgg6YoatO5nA== - dependencies: - crypto-browserify "3.12.0" - eth-lib "0.2.8" - ethereumjs-common "^1.3.2" - ethereumjs-tx "^2.1.1" - scrypt-js "^3.0.1" - underscore "1.9.1" - uuid "3.3.2" - web3-core "1.3.4" - web3-core-helpers "1.3.4" - web3-core-method "1.3.4" - web3-utils "1.3.4" - web3-eth-accounts@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.3.6.tgz#f9fcb50b28ee58090ab292a10d996155caa2b474" @@ -27349,21 +25868,6 @@ web3-eth-contract@1.2.9: web3-eth-abi "1.2.9" web3-utils "1.2.9" -web3-eth-contract@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.3.4.tgz#1ea2dd71be0c4a9cf4772d4f75dbb2fa99751472" - integrity sha512-Fvy8ZxUksQY2ePt+XynFfOiSqxgQtMn4m2NJs6VXRl2Inl17qyRi/nIJJVKTcENLocm+GmZ/mxq2eOE5u02nPg== - dependencies: - "@types/bn.js" "^4.11.5" - underscore "1.9.1" - web3-core "1.3.4" - web3-core-helpers "1.3.4" - web3-core-method "1.3.4" - web3-core-promievent "1.3.4" - web3-core-subscriptions "1.3.4" - web3-eth-abi "1.3.4" - web3-utils "1.3.4" - web3-eth-contract@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.3.6.tgz#cccf4d32dc56917fb6923e778498a9ba2a5ba866" @@ -27451,21 +25955,6 @@ web3-eth-ens@1.2.9: web3-eth-contract "1.2.9" web3-utils "1.2.9" -web3-eth-ens@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.3.4.tgz#a7e4bb18481fb0e2ce5bfb3b3da2fbb0ad78cefe" - integrity sha512-b0580tQyQwpV2wyacwQiBEfQmjCUln5iPhge3IBIMXaI43BUNtH3lsCL9ERFQeOdweB4o+6rYyNYr6xbRcSytg== - dependencies: - content-hash "^2.5.2" - eth-ens-namehash "2.0.8" - underscore "1.9.1" - web3-core "1.3.4" - web3-core-helpers "1.3.4" - web3-core-promievent "1.3.4" - web3-eth-abi "1.3.4" - web3-eth-contract "1.3.4" - web3-utils "1.3.4" - web3-eth-ens@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.3.6.tgz#0d28c5d4ea7b4462ef6c077545a77956a6cdf175" @@ -27533,14 +26022,6 @@ web3-eth-iban@1.2.9: bn.js "4.11.8" web3-utils "1.2.9" -web3-eth-iban@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.3.4.tgz#5eb7a564e0dcf68730d68f48f95dd207cd173d81" - integrity sha512-Y7/hLjVvIN/OhaAyZ8L/hxbTqVX6AFTl2RwUXR6EEU9oaLydPcMjAx/Fr8mghUvQS3QJSr+UGubP3W4SkyNiYw== - dependencies: - bn.js "^4.11.9" - web3-utils "1.3.4" - web3-eth-iban@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.3.6.tgz#0d6ba21fe78f190af8919e9cd5453882457209e0" @@ -27608,18 +26089,6 @@ web3-eth-personal@1.2.9: web3-net "1.2.9" web3-utils "1.2.9" -web3-eth-personal@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.3.4.tgz#0d0e0abea3447283d7ee5658ed312990c9bf48dd" - integrity sha512-JiTbaktYVk1j+S2EDooXAhw5j/VsdvZfKRmHtXUe/HizPM9ETXmj1+ne4RT6m+950jQ7DJwUF3XU1FKYNtEDwQ== - dependencies: - "@types/node" "^12.12.6" - web3-core "1.3.4" - web3-core-helpers "1.3.4" - web3-core-method "1.3.4" - web3-net "1.3.4" - web3-utils "1.3.4" - web3-eth-personal@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.3.6.tgz#226137916754c498f0284f22c55924c87a2efcf0" @@ -27713,25 +26182,6 @@ web3-eth@1.2.9: web3-net "1.2.9" web3-utils "1.2.9" -web3-eth@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.3.4.tgz#7c4607685e66a1c43e3e315e526c959f24f96907" - integrity sha512-8OIVMLbvmx+LB5RZ4tDhXuFGWSdNMrCZ4HM0+PywQ08uEcmAcqTMFAn4vdPii+J8gCatZR501r1KdzX3SDLoPw== - dependencies: - underscore "1.9.1" - web3-core "1.3.4" - web3-core-helpers "1.3.4" - web3-core-method "1.3.4" - web3-core-subscriptions "1.3.4" - web3-eth-abi "1.3.4" - web3-eth-accounts "1.3.4" - web3-eth-contract "1.3.4" - web3-eth-ens "1.3.4" - web3-eth-iban "1.3.4" - web3-eth-personal "1.3.4" - web3-net "1.3.4" - web3-utils "1.3.4" - web3-eth@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.3.6.tgz#2c650893d540a7a0eb1365dd5b2dca24ac919b7c" @@ -27814,15 +26264,6 @@ web3-net@1.2.9: web3-core-method "1.2.9" web3-utils "1.2.9" -web3-net@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.3.4.tgz#d76158bf0b4a7b3b14352b4f95472db9efc57a2a" - integrity sha512-wVyqgVC3Zt/0uGnBiR3GpnsS8lvOFTDgWZMxAk9C6Guh8aJD9MUc7pbsw5rHrPUVe6S6RUfFJvh/Xq8oMIQgSw== - dependencies: - web3-core "1.3.4" - web3-core-method "1.3.4" - web3-utils "1.3.4" - web3-net@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.3.6.tgz#a56492e2227475e38db29394f8bac305a2446e41" @@ -27900,14 +26341,6 @@ web3-providers-http@1.2.9: web3-core-helpers "1.2.9" xhr2-cookies "1.1.0" -web3-providers-http@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.3.4.tgz#89389e18e27148faa2fef58842740ffadbdda8cc" - integrity sha512-aIg/xHXvxpqpFU70sqfp+JC3sGkLfAimRKTUhG4oJZ7U+tTcYTHoxBJj+4A3Id4JAoKiiv0k1/qeyQ8f3rMC3g== - dependencies: - web3-core-helpers "1.3.4" - xhr2-cookies "1.1.0" - web3-providers-http@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.3.6.tgz#36e8724a7424d52827819d53fd75dbf31f5422c2" @@ -27959,15 +26392,6 @@ web3-providers-ipc@1.2.9: underscore "1.9.1" web3-core-helpers "1.2.9" -web3-providers-ipc@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.3.4.tgz#b963518989b1b7847063cdd461ff73b83855834a" - integrity sha512-E0CvXEJElr/TIlG1YfJeO3Le5NI/4JZM+1SsEdiPIfBUAJN18oOoum138EBGKv5+YaLKZUtUuJSXWjIIOR/0Ig== - dependencies: - oboe "2.1.5" - underscore "1.9.1" - web3-core-helpers "1.3.4" - web3-providers-ipc@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.3.6.tgz#cef8d12c1ebb47adce5ebf597f553c623362cb4a" @@ -28022,16 +26446,6 @@ web3-providers-ws@1.2.9: web3-core-helpers "1.2.9" websocket "^1.0.31" -web3-providers-ws@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.3.4.tgz#b94c2e0ec51a0c472abdec53a472b5bf8176bec1" - integrity sha512-WBd9hk2fUAdrbA3kUyUk94ZeILtE6txLeoVVvIKAw2bPegx+RjkLyxC1Du0oceKgQ/qQWod8CCzl1E/GgTP+MQ== - dependencies: - eventemitter3 "4.0.4" - underscore "1.9.1" - web3-core-helpers "1.3.4" - websocket "^1.0.32" - web3-providers-ws@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.3.6.tgz#e1df617bc89d66165abdf2191da0014c505bfaac" @@ -28099,16 +26513,6 @@ web3-shh@1.2.9: web3-core-subscriptions "1.2.9" web3-net "1.2.9" -web3-shh@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.3.4.tgz#b7d29e118f26416c1a74575e585be379cc01a77a" - integrity sha512-zoeww5mxLh3xKcqbX85irQbtFe5pc5XwrgjvmdMkhkOdZzPASlWOgqzUFtaPykpLwC3yavVx4jG5RqifweXLUA== - dependencies: - web3-core "1.3.4" - web3-core-method "1.3.4" - web3-core-subscriptions "1.3.4" - web3-net "1.3.4" - web3-shh@1.5.3: version "1.5.3" resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.5.3.tgz#3c04aa4cda9ba0b746d7225262401160f8e38b13" @@ -28170,20 +26574,6 @@ web3-utils@1.2.9: underscore "1.9.1" utf8 "3.0.0" -web3-utils@1.3.4, web3-utils@^1.2.1: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.3.4.tgz#9b1aa30d7549f860b573e7bb7e690999e7192198" - integrity sha512-/vC2v0MaZNpWooJfpRw63u0Y3ag2gNjAWiLtMSL6QQLmCqCy4SQIndMt/vRyx0uMoeGt1YTwSXEcHjUzOhLg0A== - dependencies: - bn.js "^4.11.9" - eth-lib "0.2.8" - ethereum-bloom-filters "^1.0.6" - ethjs-unit "0.1.6" - number-to-bn "1.7.0" - randombytes "^2.1.0" - underscore "1.9.1" - utf8 "3.0.0" - web3-utils@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.3.6.tgz#390bc9fa3a7179746963cfaca55bb80ac4d8dc10" @@ -28224,7 +26614,7 @@ web3-utils@1.6.1: randombytes "^2.1.0" utf8 "3.0.0" -web3-utils@1.7.3, web3-utils@^1.3.4: +web3-utils@1.7.3, web3-utils@^1.0.0-beta.31, web3-utils@^1.2.1, web3-utils@^1.3.4: version "1.7.3" resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.7.3.tgz#b214d05f124530d8694ad364509ac454d05f207c" integrity sha512-g6nQgvb/bUpVUIxJE+ezVN+rYwYmlFyMvMIRSuqpi1dk6ApDD00YNArrk7sPcZnjvxOJ76813Xs2vIN2rgh4lg== @@ -28237,20 +26627,6 @@ web3-utils@1.7.3, web3-utils@^1.3.4: randombytes "^2.1.0" utf8 "3.0.0" -web3-utils@^1.0.0-beta.31: - version "1.4.0" - resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.4.0.tgz#e8cb381c81b242dc1d4ecb397200356d404410e6" - integrity sha512-b8mEhwh/J928Xk+SQFjtqrR2EGPhpknWLcIt9aCpVPVRXiqjUGo/kpOHKz0azu9c6/onEJ9tWXZt0cVjmH0N5Q== - dependencies: - bn.js "^4.11.9" - eth-lib "0.2.8" - ethereum-bloom-filters "^1.0.6" - ethjs-unit "0.1.6" - number-to-bn "1.7.0" - randombytes "^2.1.0" - underscore "1.12.1" - utf8 "3.0.0" - web3@1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/web3/-/web3-1.2.1.tgz#5d8158bcca47838ab8c2b784a2dee4c3ceb4179b" @@ -28303,7 +26679,7 @@ web3@1.5.3: web3-shh "1.5.3" web3-utils "1.5.3" -web3@1.7.3: +web3@1.7.3, web3@^1.0.0-beta.34, web3@^1.2.1: version "1.7.3" resolved "https://registry.yarnpkg.com/web3/-/web3-1.7.3.tgz#30fe786338b2cc775881cb28c056ee5da4be65b8" integrity sha512-UgBvQnKIXncGYzsiGacaiHtm0xzQ/JtGqcSO/ddzQHYxnNuwI72j1Pb4gskztLYihizV9qPNQYHMSCiBlStI9A== @@ -28316,19 +26692,6 @@ web3@1.7.3: web3-shh "1.7.3" web3-utils "1.7.3" -web3@^1.0.0-beta.34, web3@^1.2.1: - version "1.3.4" - resolved "https://registry.yarnpkg.com/web3/-/web3-1.3.4.tgz#31e014873360aa5840eb17f9f171190c967cffb7" - integrity sha512-D6cMb2EtTMLHgdGbkTPGl/Qi7DAfczR+Lp7iFX3bcu/bsD9V8fZW69hA8v5cRPNGzXUwVQebk3bS17WKR4cD2w== - dependencies: - web3-bzz "1.3.4" - web3-core "1.3.4" - web3-eth "1.3.4" - web3-eth-personal "1.3.4" - web3-net "1.3.4" - web3-shh "1.3.4" - web3-utils "1.3.4" - webidl-conversions@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" @@ -28847,7 +27210,7 @@ ws@7.4.5: resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.5.tgz#a484dd851e9beb6fdb420027e3885e8ce48986c1" integrity sha512-xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g== -ws@7.4.6, "ws@^5.2.0 || ^6.0.0 || ^7.0.0": +ws@7.4.6: version "7.4.6" resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== @@ -28868,6 +27231,11 @@ ws@^5.1.1: dependencies: async-limiter "~1.0.0" +"ws@^5.2.0 || ^6.0.0 || ^7.0.0", ws@^7.3.1, ws@^7.4.4, ws@^7.4.6: + version "7.5.3" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.3.tgz#160835b63c7d97bfab418fc1b8a9fced2ac01a74" + integrity sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg== + ws@^6.2.1: version "6.2.1" resolved "https://registry.yarnpkg.com/ws/-/ws-6.2.1.tgz#442fdf0a47ed64f59b6a5d8ff130f4748ed524fb" @@ -28875,16 +27243,6 @@ ws@^6.2.1: dependencies: async-limiter "~1.0.0" -ws@^7.3.1, ws@^7.4.4: - version "7.4.4" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.4.tgz#383bc9742cb202292c9077ceab6f6047b17f2d59" - integrity sha512-Qm8k8ojNQIMx7S+Zp8u/uHOx7Qazv3Yv4q68MiWWWOJhiwG5W3x7iqmRtJo8xxrciZUY4vRxUTJCKuRnF28ZZw== - -ws@^7.4.6: - version "7.5.3" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.3.tgz#160835b63c7d97bfab418fc1b8a9fced2ac01a74" - integrity sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg== - xdg-basedir@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" @@ -29045,7 +27403,7 @@ yargs-parser@^2.4.1: camelcase "^3.0.0" lodash.assign "^4.0.6" -yargs-parser@^20.2.2, yargs-parser@^20.2.3: +yargs-parser@^20.2.3: version "20.2.7" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz#61df85c113edfb5a7a4e36eb8aa60ef423cbc90a" integrity sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw== @@ -29104,7 +27462,7 @@ yargs@13.3.2, yargs@^13.3.0, yargs@^13.3.2: y18n "^4.0.0" yargs-parser "^13.1.2" -yargs@17.6.2: +yargs@17.6.2, yargs@^17.0.0: version "17.6.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.6.2.tgz#2e23f2944e976339a1ee00f18c77fedee8332541" integrity sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw== @@ -29169,19 +27527,6 @@ yargs@^15.0.2, yargs@^15.3.1, yargs@^15.4.1: y18n "^4.0.0" yargs-parser "^18.1.2" -yargs@^17.0.0: - version "17.0.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.0.1.tgz#6a1ced4ed5ee0b388010ba9fd67af83b9362e0bb" - integrity sha512-xBBulfCc8Y6gLFcrPvtqKz9hz8SO0l1Ni8GgDekvBX2ro0HRQImDGnikfc33cgzcYUSncapnNcZDjVFIH3f6KQ== - dependencies: - cliui "^7.0.2" - escalade "^3.1.1" - get-caller-file "^2.0.5" - require-directory "^2.1.1" - string-width "^4.2.0" - y18n "^5.0.5" - yargs-parser "^20.2.2" - yargs@^4.7.1: version "4.8.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-4.8.1.tgz#c0c42924ca4aaa6b0e6da1739dfb216439f9ddc0" From 89bb0ba62f7d6899564f4fea87adb416ce1961ed Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 31 Jan 2023 12:57:13 +0100 Subject: [PATCH 02/50] WIP --- .gitignore | 1 - packages/smart-contracts/hardhat.config.ts | 2 -- .../scripts-create2/tenderly.ts | 31 ++++++++++--------- 3 files changed, 16 insertions(+), 18 deletions(-) diff --git a/.gitignore b/.gitignore index aeb6cddf23..495fa15f2d 100644 --- a/.gitignore +++ b/.gitignore @@ -42,6 +42,5 @@ tsconfig.build.tsbuildinfo # smart-contracts generated files /packages/smart-contracts/build/ /packages/smart-contracts/cache/ -/packages/smart-contracts/deployments/ /packages/smart-contracts/types/ /packages/smart-contracts/src/types/ diff --git a/packages/smart-contracts/hardhat.config.ts b/packages/smart-contracts/hardhat.config.ts index 2e2151d801..b73ba4ef5a 100644 --- a/packages/smart-contracts/hardhat.config.ts +++ b/packages/smart-contracts/hardhat.config.ts @@ -15,10 +15,8 @@ import { VerifyCreate2FromList } from './scripts-create2/verify'; import { deployWithCreate2FromList } from './scripts-create2/deploy'; import utils from '@requestnetwork/utils'; import { NUMBER_ERRORS } from './scripts/utils'; -import * as tenderly from '@tenderly/hardhat-tenderly'; config(); -tenderly.setup({ automaticVerifications: false }); const accounts = process.env.DEPLOYMENT_PRIVATE_KEY ? [process.env.DEPLOYMENT_PRIVATE_KEY] diff --git a/packages/smart-contracts/scripts-create2/tenderly.ts b/packages/smart-contracts/scripts-create2/tenderly.ts index e71e681933..ddf2de1896 100644 --- a/packages/smart-contracts/scripts-create2/tenderly.ts +++ b/packages/smart-contracts/scripts-create2/tenderly.ts @@ -1,29 +1,30 @@ -import { HardhatRuntimeEnvironmentExtended, IDeploymentParams } from './types'; +import { HardhatRuntimeEnvironmentExtended } from './types'; import axios from 'axios'; - -const getTenderlyAxiosInstance = (hre: HardhatRuntimeEnvironmentExtended,) => { +const getTenderlyAxiosInstance = (hre: HardhatRuntimeEnvironmentExtended) => { return axios.create({ baseURL: 'https://api.tenderly.co', headers: { - 'x-access-key': accessKey, + 'x-access-key': hre.config.tenderly.accessKey, }, - }) -} + }); +}; + export const pushToTenderly = async ( hre: HardhatRuntimeEnvironmentExtended, - contracts: Array<{ name: string; address: string }>, + contracts: Array<{ name: string; address: string; networkId: number }>, ): Promise => { - const { username, accessKey, project } = hre.config.tenderly; - const axiosInstance = + const { username, project } = hre.config.tenderly; try { const axiosInstance = getTenderlyAxiosInstance(hre); - for (const contract of contracts) { - await axiosInstance.post(`/api/v2/accounts/${username}/projects/${project}/contracts`, - da, - }); - } + await axiosInstance.post(`/api/v2/accounts/${username}/projects/${project}/contracts`, { + contracts: contracts.map((contract) => ({ + address: contract.address, + display_name: contract.name, + network_id: contract.networkId.toString(), + })), + }); } catch (err) { - console.log(err); + console.error('Error while adding contract(s) to Tenderly', err); } }; From bd3587999267fe389726b0590154750b0ea913bb Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 31 Jan 2023 12:59:48 +0100 Subject: [PATCH 03/50] yarn lockfile --- yarn.lock | 5432 +++-------------------------------------------------- 1 file changed, 238 insertions(+), 5194 deletions(-) diff --git a/yarn.lock b/yarn.lock index f31cb891e2..25e47f62d6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,134 +7,6 @@ resolved "https://registry.yarnpkg.com/@aduh95/viz.js/-/viz.js-3.4.0.tgz#635a020d95386c8acafbe025b2158238de889668" integrity sha512-KI2nVf9JdwWCXqK6RVf+9/096G7VWN4Z84mnynlyZKao2xQENW8WNEjLmvdlxS5X8PNWXFC1zqwm7tveOXw/4A== -"@algolia/autocomplete-core@1.0.0-alpha.44": - version "1.0.0-alpha.44" - resolved "https://registry.yarnpkg.com/@algolia/autocomplete-core/-/autocomplete-core-1.0.0-alpha.44.tgz#e626dba45f5f3950d6beb0ab055395ef0f7e8bb2" - integrity sha512-2iMXthldMIDXtlbg9omRKLgg1bLo2ZzINAEqwhNjUeyj1ceEyL1ck6FY0VnJpf2LsjmNthHCz2BuFk+nYUeDNA== - dependencies: - "@algolia/autocomplete-shared" "1.0.0-alpha.44" - -"@algolia/autocomplete-preset-algolia@1.0.0-alpha.44": - version "1.0.0-alpha.44" - resolved "https://registry.yarnpkg.com/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.0.0-alpha.44.tgz#0ea0b255d0be10fbe262e281472dd6e4619b62ba" - integrity sha512-DCHwo5ovzg9k2ejUolGNTLFnIA7GpsrkbNJTy1sFbMnYfBmeK8egZPZnEl7lBTr27OaZu7IkWpTepLVSztZyng== - dependencies: - "@algolia/autocomplete-shared" "1.0.0-alpha.44" - -"@algolia/autocomplete-shared@1.0.0-alpha.44": - version "1.0.0-alpha.44" - resolved "https://registry.yarnpkg.com/@algolia/autocomplete-shared/-/autocomplete-shared-1.0.0-alpha.44.tgz#db13902ad1667e455711b77d08cae1a0feafaa48" - integrity sha512-2oQZPERYV+yNx/yoVWYjZZdOqsitJ5dfxXJjL18yczOXH6ujnsq+DTczSrX+RjzjQdVeJ1UAG053EJQF/FOiMg== - -"@algolia/cache-browser-local-storage@4.8.6": - version "4.8.6" - resolved "https://registry.yarnpkg.com/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.8.6.tgz#6be9644b68efbbc231ac3f0a4cfa985ef31eade9" - integrity sha512-Bam7otzjIEgrRXWmk0Amm1+B3ROI5dQnUfJEBjIy0YPM0kMahEoJXCw6160tGKxJLl1g6icoC953nGshQKO7cA== - dependencies: - "@algolia/cache-common" "4.8.6" - -"@algolia/cache-common@4.8.6": - version "4.8.6" - resolved "https://registry.yarnpkg.com/@algolia/cache-common/-/cache-common-4.8.6.tgz#dff1697a0fe3d7856630071559661ec5ad90f31c" - integrity sha512-eGQlsXU5G7n4RvV/K6qe6lRAeL6EKAYPT3yZDBjCW4pAh7JWta+77a7BwUQkTqXN1MEQWZXjex3E4z/vFpzNrg== - -"@algolia/cache-in-memory@4.8.6": - version "4.8.6" - resolved "https://registry.yarnpkg.com/@algolia/cache-in-memory/-/cache-in-memory-4.8.6.tgz#9a100a1be05e700a253ef4bdabd3bd45df2f67d4" - integrity sha512-kbJrvCFANxL/l5Pq1NFyHLRphKDwmqcD/OJga0IbNKEulRGDPkt1+pC7/q8d2ikP12adBjLLg2CVias9RJpIaw== - dependencies: - "@algolia/cache-common" "4.8.6" - -"@algolia/client-account@4.8.6": - version "4.8.6" - resolved "https://registry.yarnpkg.com/@algolia/client-account/-/client-account-4.8.6.tgz#050cfd6a6d3e06a5a8e1029f24d6d50524d186c6" - integrity sha512-FQVJE/BgCb78jtG7V0r30sMl9P5JKsrsOacGtGF2YebqI0YF25y8Z1nO39lbdjahxUS3QkDw2d0P2EVMj65g2Q== - dependencies: - "@algolia/client-common" "4.8.6" - "@algolia/client-search" "4.8.6" - "@algolia/transporter" "4.8.6" - -"@algolia/client-analytics@4.8.6": - version "4.8.6" - resolved "https://registry.yarnpkg.com/@algolia/client-analytics/-/client-analytics-4.8.6.tgz#ac644cfc9d87a085b9e53c71a42ef6e90d828501" - integrity sha512-ZBYFUlzNaWDFtt0rYHI7xbfVX0lPWU9lcEEXI/BlnkRgEkm247H503tNatPQFA1YGkob52EU18sV1eJ+OFRBLA== - dependencies: - "@algolia/client-common" "4.8.6" - "@algolia/client-search" "4.8.6" - "@algolia/requester-common" "4.8.6" - "@algolia/transporter" "4.8.6" - -"@algolia/client-common@4.8.6": - version "4.8.6" - resolved "https://registry.yarnpkg.com/@algolia/client-common/-/client-common-4.8.6.tgz#c8b81af250ed8beb741a0e5cfdd3236bb4292c94" - integrity sha512-8dI+K3Nvbes2YRZm2LY7bdCUD05e60BhacrMLxFuKxnBGuNehME1wbxq/QxcG1iNFJlxLIze5TxIcNN3+pn76g== - dependencies: - "@algolia/requester-common" "4.8.6" - "@algolia/transporter" "4.8.6" - -"@algolia/client-recommendation@4.8.6": - version "4.8.6" - resolved "https://registry.yarnpkg.com/@algolia/client-recommendation/-/client-recommendation-4.8.6.tgz#2518a09bfbeaec78b0d7a4213107f0899f80f9ac" - integrity sha512-Kg8DpjwvaWWujNx6sAUrSL+NTHxFe/UNaliCcSKaMhd3+FiPXN+CrSkO0KWR7I+oK2qGBTG/2Y0BhFOJ5/B/RA== - dependencies: - "@algolia/client-common" "4.8.6" - "@algolia/requester-common" "4.8.6" - "@algolia/transporter" "4.8.6" - -"@algolia/client-search@4.8.6": - version "4.8.6" - resolved "https://registry.yarnpkg.com/@algolia/client-search/-/client-search-4.8.6.tgz#1ca3f28c04ef4120b0563a293b30fcfe1b3fd1d0" - integrity sha512-vXLS6umL/9G3bwqc6pkrS9K5/s8coq55mpfRARL+bs0NsToOf77WSTdwzlxv/KdbVF7dHjXgUpBvJ6RyR4ZdAw== - dependencies: - "@algolia/client-common" "4.8.6" - "@algolia/requester-common" "4.8.6" - "@algolia/transporter" "4.8.6" - -"@algolia/events@^4.0.1": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@algolia/events/-/events-4.0.1.tgz#fd39e7477e7bc703d7f893b556f676c032af3950" - integrity sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ== - -"@algolia/logger-common@4.8.6": - version "4.8.6" - resolved "https://registry.yarnpkg.com/@algolia/logger-common/-/logger-common-4.8.6.tgz#8c44a4f550e12418b0ec8d76a068e4f1c64206d1" - integrity sha512-FMRxZGdDxSzd0/Mv0R1021FvUt0CcbsQLYeyckvSWX8w+Uk4o0lcV6UtZdERVR5XZsGOqoXLMIYDbR2vkbGbVw== - -"@algolia/logger-console@4.8.6": - version "4.8.6" - resolved "https://registry.yarnpkg.com/@algolia/logger-console/-/logger-console-4.8.6.tgz#77176570fa6532fa846c7cfa2c6280935b1a3a06" - integrity sha512-TYw9lwUCjvApC6Z0zn36T6gkCl7hbfJmnU+Z/D8pFJ3Yp7lz06S3oWGjbdrULrYP1w1VOhjd0X7/yGNsMhzutQ== - dependencies: - "@algolia/logger-common" "4.8.6" - -"@algolia/requester-browser-xhr@4.8.6": - version "4.8.6" - resolved "https://registry.yarnpkg.com/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.8.6.tgz#dbcb5906d10c619d7f08fced2f68fa09abffe5fd" - integrity sha512-omh6uJ3CJXOmcrU9M3/KfGg8XkUuGJGIMkqEbkFvIebpBJxfs6TVs0ziNeMFAcAfhi8/CGgpLbDSgJtWdGQa6w== - dependencies: - "@algolia/requester-common" "4.8.6" - -"@algolia/requester-common@4.8.6": - version "4.8.6" - resolved "https://registry.yarnpkg.com/@algolia/requester-common/-/requester-common-4.8.6.tgz#37ea1f9ecc1afcd91532b9f9c952c62fdef42bca" - integrity sha512-r5xJqq/D9KACkI5DgRbrysVL5DUUagikpciH0k0zjBbm+cXiYfpmdflo/h6JnY6kmvWgjr/4DoeTjKYb/0deAQ== - -"@algolia/requester-node-http@4.8.6": - version "4.8.6" - resolved "https://registry.yarnpkg.com/@algolia/requester-node-http/-/requester-node-http-4.8.6.tgz#e966293224f3bd1ba32ce4f9bc0fdada5d8e69ec" - integrity sha512-TB36OqTVOKyHCOtdxhn/IJyI/NXi/BWy8IEbsiWwwZWlL79NWHbetj49jXWFolEYEuu8PgDjjZGpRhypSuO9XQ== - dependencies: - "@algolia/requester-common" "4.8.6" - -"@algolia/transporter@4.8.6": - version "4.8.6" - resolved "https://registry.yarnpkg.com/@algolia/transporter/-/transporter-4.8.6.tgz#b605dcd971aed374bdd95dd8938b93b9df650109" - integrity sha512-NRb31J0TP7EPoVMpXZ4yAtr61d26R8KGaf6qdULknvq5sOVHuuH4PwmF08386ERfIsgnM/OBhl+uzwACdCIjSg== - dependencies: - "@algolia/cache-common" "4.8.6" - "@algolia/logger-common" "4.8.6" - "@algolia/requester-common" "4.8.6" - "@ardatan/aggregate-error@0.0.6": version "0.0.6" resolved "https://registry.yarnpkg.com/@ardatan/aggregate-error/-/aggregate-error-0.0.6.tgz#fe6924771ea40fc98dc7a7045c2e872dc8527609" @@ -142,13 +14,6 @@ dependencies: tslib "~2.0.1" -"@babel/code-frame@7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.4.tgz#168da1a36e90da68ae8d49c0f1b48c7c6249213a" - integrity sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg== - dependencies: - "@babel/highlight" "^7.10.4" - "@babel/code-frame@7.12.11": version "7.12.11" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" @@ -156,41 +21,19 @@ dependencies: "@babel/highlight" "^7.10.4" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.14.5", "@babel/code-frame@^7.5.5": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.14.5.tgz#23b08d740e83f49c5e59945fbf1b43e80bbf4edb" integrity sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw== dependencies: "@babel/highlight" "^7.14.5" -"@babel/compat-data@^7.13.0", "@babel/compat-data@^7.13.12", "@babel/compat-data@^7.14.5": +"@babel/compat-data@^7.13.0", "@babel/compat-data@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.14.5.tgz#8ef4c18e58e801c5c95d3c1c0f2874a2680fadea" integrity sha512-kixrYn4JwfAVPa0f2yfzc2AWti6WRRyO3XjWW5PJAvtE11qhSayrrcrEnee05KAtNaPC+EwehE8Qt1UedEVB8w== -"@babel/core@7.12.9": - version "7.12.9" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.12.9.tgz#fd450c4ec10cdbb980e2928b7aa7a28484593fc8" - integrity sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ== - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.12.5" - "@babel/helper-module-transforms" "^7.12.1" - "@babel/helpers" "^7.12.5" - "@babel/parser" "^7.12.7" - "@babel/template" "^7.12.7" - "@babel/traverse" "^7.12.9" - "@babel/types" "^7.12.7" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.1" - json5 "^2.1.2" - lodash "^4.17.19" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/core@^7.0.0", "@babel/core@^7.1.0", "@babel/core@^7.12.16", "@babel/core@^7.12.3", "@babel/core@^7.7.5": +"@babel/core@^7.0.0", "@babel/core@^7.1.0", "@babel/core@^7.7.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.14.5.tgz#d281f46a9905f07d1b3bf71ead54d9c7d89cb1e3" integrity sha512-RN/AwP2DJmQTZSfiDaD+JQQ/J99KsIpOCfBE5pL+5jJSt7nI3nYGoAXZu+ffYSQ029NLs2DstZb+eR81uuARgg== @@ -211,7 +54,7 @@ semver "^6.3.0" source-map "^0.5.0" -"@babel/generator@^7.12.13", "@babel/generator@^7.12.15", "@babel/generator@^7.12.5", "@babel/generator@^7.14.5", "@babel/generator@^7.5.0": +"@babel/generator@^7.12.13", "@babel/generator@^7.14.5", "@babel/generator@^7.5.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.14.5.tgz#848d7b9f031caca9d0cd0af01b063f226f52d785" integrity sha512-y3rlP+/G25OIX3mYKKIOlQRcqj7YgrvHxOLbVmyLJ9bPmi5ttvUmpydVjcFjZphOktWuA7ovbx91ECloWTfjIA== @@ -220,22 +63,14 @@ jsesc "^2.5.1" source-map "^0.5.0" -"@babel/helper-annotate-as-pure@^7.0.0", "@babel/helper-annotate-as-pure@^7.10.4", "@babel/helper-annotate-as-pure@^7.12.13", "@babel/helper-annotate-as-pure@^7.14.5": +"@babel/helper-annotate-as-pure@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.14.5.tgz#7bf478ec3b71726d56a8ca5775b046fc29879e61" integrity sha512-EivH9EgBIb+G8ij1B2jAwSH36WnGvkQSEC6CkX/6v6ZFlw5fVOHvsgGF4uiEHO2GzMvunZb6tDLQEQSdrdocrA== dependencies: "@babel/types" "^7.14.5" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.12.13.tgz#6bc20361c88b0a74d05137a65cac8d3cbf6f61fc" - integrity sha512-CZOv9tGphhDRlVjVkAgm8Nhklm9RzSmWpX2my+t7Ua/KT616pEzXsQCjinzvkRvHWJ9itO4f296efroX23XCMA== - dependencies: - "@babel/helper-explode-assignable-expression" "^7.12.13" - "@babel/types" "^7.12.13" - -"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.13.10", "@babel/helper-compilation-targets@^7.14.5": +"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.5.tgz#7a99c5d0967911e972fe2c3411f7d5b498498ecf" integrity sha512-v+QtZqXEiOnpO6EYvlImB6zCD2Lel06RzOPzmkz/D/XgQiUu3C/Jb1LOqSt/AIA34TYi/Q+KlT8vTQrgdxkbLw== @@ -245,7 +80,7 @@ browserslist "^4.16.6" semver "^6.3.0" -"@babel/helper-create-class-features-plugin@^7.13.0", "@babel/helper-create-class-features-plugin@^7.14.5": +"@babel/helper-create-class-features-plugin@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.5.tgz#8842ec495516dd1ed8f6c572be92ba78b1e9beef" integrity sha512-Uq9z2e7ZtcnDMirRqAGLRaLwJn+Lrh388v5ETrR3pALJnElVh2zqQmdbz4W2RUJYohAPh2mtyPUgyMHMzXMncQ== @@ -257,14 +92,6 @@ "@babel/helper-replace-supers" "^7.14.5" "@babel/helper-split-export-declaration" "^7.14.5" -"@babel/helper-create-regexp-features-plugin@^7.12.13": - version "7.12.17" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.17.tgz#a2ac87e9e319269ac655b8d4415e94d38d663cb7" - integrity sha512-p2VGmBu9oefLZ2nQpgnEnG0ZlRPvL8gAGvPUMQwUdaE8k49rOMuZpOwdQoy5qJf6K8jL3bcAMhVUlHAjIgJHUg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.12.13" - regexpu-core "^4.7.1" - "@babel/helper-define-polyfill-provider@^0.1.5": version "0.1.5" resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.1.5.tgz#3c2f91b7971b9fc11fe779c945c014065dea340e" @@ -279,13 +106,6 @@ resolve "^1.14.2" semver "^6.1.2" -"@babel/helper-explode-assignable-expression@^7.12.13": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.13.0.tgz#17b5c59ff473d9f956f40ef570cf3a76ca12657f" - integrity sha512-qS0peLTDP8kOisG1blKbaoBg/o9OSa1qoumMjTK5pM+KDTtpxpsiubnCGP34vK8BXGcb2M9eigwgvoJryrzwWA== - dependencies: - "@babel/types" "^7.13.0" - "@babel/helper-function-name@^7.12.13", "@babel/helper-function-name@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz#89e2c474972f15d8e233b52ee8c480e2cfcd50c4" @@ -302,7 +122,7 @@ dependencies: "@babel/types" "^7.14.5" -"@babel/helper-hoist-variables@^7.13.0", "@babel/helper-hoist-variables@^7.14.5": +"@babel/helper-hoist-variables@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz#e0dd27c33a78e577d7c8884916a3e7ef1f7c7f8d" integrity sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ== @@ -316,14 +136,14 @@ dependencies: "@babel/types" "^7.14.5" -"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.14.5": +"@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz#6d1a44df6a38c957aa7c312da076429f11b422f3" integrity sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ== dependencies: "@babel/types" "^7.14.5" -"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.13.0", "@babel/helper-module-transforms@^7.14.5": +"@babel/helper-module-transforms@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.14.5.tgz#7de42f10d789b423eb902ebd24031ca77cb1e10e" integrity sha512-iXpX4KW8LVODuAieD7MzhNjmM6dzYY5tfRqT+R9HDXWl0jPn/djKmA+G9s/2C2T9zggw5tK1QNqZ70USfedOwA== @@ -344,25 +164,11 @@ dependencies: "@babel/types" "^7.14.5" -"@babel/helper-plugin-utils@7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz#2f75a831269d4f677de49986dff59927533cf375" - integrity sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg== - -"@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": +"@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": 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/helper-remap-async-to-generator@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.13.0.tgz#376a760d9f7b4b2077a9dd05aa9c3927cadb2209" - integrity sha512-pUQpFBE9JvC9lrQbpX0TmeNIy5s7GnZjna2lhhcHC7DzgBs6fWn722Y5cfwgrtrqc7NAJwMvOa0mKhq6XaE4jg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.12.13" - "@babel/helper-wrap-function" "^7.13.0" - "@babel/types" "^7.13.0" - "@babel/helper-replace-supers@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.14.5.tgz#0ecc0b03c41cd567b4024ea016134c28414abb94" @@ -380,7 +186,7 @@ dependencies: "@babel/types" "^7.14.5" -"@babel/helper-skip-transparent-expression-wrappers@^7.12.1", "@babel/helper-skip-transparent-expression-wrappers@^7.14.5": +"@babel/helper-skip-transparent-expression-wrappers@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.14.5.tgz#96f486ac050ca9f44b009fbe5b7d394cab3a0ee4" integrity sha512-dmqZB7mrb94PZSAOYtr+ZN5qt5owZIAgqtoTuqiFbHFtxgEcmQlRJVI+bO++fciBunXtB6MK7HrzrfcAzIz2NQ== @@ -399,22 +205,12 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz#d0f0e277c512e0c938277faa85a3968c9a44c0e8" integrity sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg== -"@babel/helper-validator-option@^7.12.17", "@babel/helper-validator-option@^7.14.5": +"@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-wrap-function@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.13.0.tgz#bdb5c66fda8526ec235ab894ad53a1235c79fcc4" - integrity sha512-1UX9F7K3BS42fI6qd2A4BjKzgGjToscyZTdp1DjknHLCIvpgne6918io+aL5LXFcER/8QWiwpoY902pVEqgTXA== - dependencies: - "@babel/helper-function-name" "^7.12.13" - "@babel/template" "^7.12.13" - "@babel/traverse" "^7.13.0" - "@babel/types" "^7.13.0" - -"@babel/helpers@^7.12.5", "@babel/helpers@^7.14.5": +"@babel/helpers@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.14.5.tgz#4870f8d9a6fdbbd65e5674a3558b4ff7fef0d9b2" integrity sha512-xtcWOuN9VL6nApgVHtq3PPcQv5qFBJzoSZzJ/2c0QK/IP/gxVcoWSNQwFEGvmbQsuS9rhYqjILDGGXcTkA705Q== @@ -437,30 +233,12 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.12.16.tgz#cc31257419d2c3189d394081635703f549fc1ed4" integrity sha512-c/+u9cqV6F0+4Hpq01jnJO+GLp2DdT63ppz9Xa+6cHaajM9VFzK/iDXiKK65YtpeVwu+ctfS6iqlMqRgQRzeCw== -"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.12.13", "@babel/parser@^7.12.16", "@babel/parser@^7.12.7", "@babel/parser@^7.14.5": +"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.12.13", "@babel/parser@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.14.5.tgz#4cd2f346261061b2518873ffecdf1612cb032829" integrity sha512-TM8C+xtH/9n1qzX+JNHi7AN2zHMTiPUtspO0ZdHflW8KaskkALhMmuMHb4bCmNdv9VAPzJX3/bXqkVLnAvsPfg== -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.13.12": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.13.12.tgz#a3484d84d0b549f3fc916b99ee4783f26fabad2a" - integrity sha512-d0u3zWKcoZf379fOeJdr1a5WPDny4aOFZ6hlfKivgK0LY7ZxNfoaHL2fWwdGtHyVvra38FC+HVYkO+byfSA8AQ== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.12.1" - "@babel/plugin-proposal-optional-chaining" "^7.13.12" - -"@babel/plugin-proposal-async-generator-functions@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.13.8.tgz#87aacb574b3bc4b5603f6fe41458d72a5a2ec4b1" - integrity sha512-rPBnhj+WgoSmgq+4gQUtXx/vOcU+UYtjy1AA/aeD61Hwj410fwYyqfUcRP3lR8ucgliVJL/G7sXcNUecC75IXA== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-remap-async-to-generator" "^7.13.0" - "@babel/plugin-syntax-async-generators" "^7.8.4" - -"@babel/plugin-proposal-class-properties@^7.0.0", "@babel/plugin-proposal-class-properties@^7.13.0": +"@babel/plugin-proposal-class-properties@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.14.5.tgz#40d1ee140c5b1e31a350f4f5eed945096559b42e" integrity sha512-q/PLpv5Ko4dVc1LYMpCY7RVAAO4uk55qPwrIuJ5QJ8c6cVuAmhu7I/49JOppXL6gXf7ZHzpRVEUZdYoPLM04Gg== @@ -468,64 +246,7 @@ "@babel/helper-create-class-features-plugin" "^7.14.5" "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-proposal-dynamic-import@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.13.8.tgz#876a1f6966e1dec332e8c9451afda3bebcdf2e1d" - integrity sha512-ONWKj0H6+wIRCkZi9zSbZtE/r73uOhMVHh256ys0UzfM7I3d4n+spZNWjOnJv2gzopumP2Wxi186vI8N0Y2JyQ== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - -"@babel/plugin-proposal-export-namespace-from@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.12.13.tgz#393be47a4acd03fa2af6e3cde9b06e33de1b446d" - integrity sha512-INAgtFo4OnLN3Y/j0VwAgw3HDXcDtX+C/erMvWzuV9v71r7urb6iyMXu7eM9IgLr1ElLlOkaHjJ0SbCmdOQ3Iw== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - -"@babel/plugin-proposal-json-strings@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.13.8.tgz#bf1fb362547075afda3634ed31571c5901afef7b" - integrity sha512-w4zOPKUFPX1mgvTmL/fcEqy34hrQ1CRcGxdphBc6snDnnqJ47EZDIyop6IwXzAC8G916hsIuXB2ZMBCExC5k7Q== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-json-strings" "^7.8.3" - -"@babel/plugin-proposal-logical-assignment-operators@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.13.8.tgz#93fa78d63857c40ce3c8c3315220fd00bfbb4e1a" - integrity sha512-aul6znYB4N4HGweImqKn59Su9RS8lbUIqxtXTOcAGtNIDczoEFv+l1EhmX8rUBp3G1jMjKJm8m0jXVp63ZpS4A== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" - -"@babel/plugin-proposal-nullish-coalescing-operator@^7.12.13", "@babel/plugin-proposal-nullish-coalescing-operator@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.13.8.tgz#3730a31dafd3c10d8ccd10648ed80a2ac5472ef3" - integrity sha512-iePlDPBn//UhxExyS9KyeYU7RM9WScAG+D3Hhno0PLJebAEpDZMocbDe64eqynhNAnwz/vZoL/q/QB2T1OH39A== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - -"@babel/plugin-proposal-numeric-separator@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.13.tgz#bd9da3188e787b5120b4f9d465a8261ce67ed1db" - integrity sha512-O1jFia9R8BUCl3ZGB7eitaAPu62TXJRHn7rh+ojNERCFyqRwJMTmhz+tJ+k0CwI6CLjX/ee4qW74FSqlq9I35w== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - -"@babel/plugin-proposal-object-rest-spread@7.12.1": - version "7.12.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz#def9bd03cea0f9b72283dac0ec22d289c7691069" - integrity sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-object-rest-spread" "^7.8.0" - "@babel/plugin-transform-parameters" "^7.12.1" - -"@babel/plugin-proposal-object-rest-spread@^7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.13.8": +"@babel/plugin-proposal-object-rest-spread@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.5.tgz#e581d5ccdfa187ea6ed73f56c6a21c1580b90fbf" integrity sha512-VzMyY6PWNPPT3pxc5hi9LloKNr4SSrVCg7Yr6aZpW4Ym07r7KqSU/QXYwjXLVxqwSv0t/XSXkFoKBPUkZ8vb2A== @@ -536,39 +257,6 @@ "@babel/plugin-syntax-object-rest-spread" "^7.8.3" "@babel/plugin-transform-parameters" "^7.14.5" -"@babel/plugin-proposal-optional-catch-binding@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.13.8.tgz#3ad6bd5901506ea996fc31bdcf3ccfa2bed71107" - integrity sha512-0wS/4DUF1CuTmGo+NiaHfHcVSeSLj5S3e6RivPTg/2k3wOv3jO35tZ6/ZWsQhQMvdgI7CwphjQa/ccarLymHVA== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - -"@babel/plugin-proposal-optional-chaining@^7.12.16", "@babel/plugin-proposal-optional-chaining@^7.13.12": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.13.12.tgz#ba9feb601d422e0adea6760c2bd6bbb7bfec4866" - integrity sha512-fcEdKOkIB7Tf4IxrgEVeFC4zeJSTr78no9wTdBuZZbqF64kzllU0ybo2zrzm7gUQfxGhBgq4E39oRs8Zx/RMYQ== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.12.1" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - -"@babel/plugin-proposal-private-methods@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.13.0.tgz#04bd4c6d40f6e6bbfa2f57e2d8094bad900ef787" - integrity sha512-MXyyKQd9inhx1kDYPkFRVOBXQ20ES8Pto3T7UZ92xj2mY0EVD8oAVzeyYuVfy/mxAdTSIayOvg+aVzcHV2bn6Q== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.13.0" - "@babel/helper-plugin-utils" "^7.13.0" - -"@babel/plugin-proposal-unicode-property-regex@^7.12.13", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.12.13.tgz#bebde51339be829c17aaaaced18641deb62b39ba" - integrity sha512-XyJmZidNfofEkqFV5VC/bLabGmO5QzenPO/YOfGuEbgU+2sSwMmio3YLb4WtBgcmmdwZHyVyv8on77IUjQ5Gvg== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.12.13" - "@babel/helper-plugin-utils" "^7.12.13" - "@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" @@ -583,27 +271,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.0.0", "@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": +"@babel/plugin-syntax-class-properties@^7.0.0", "@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== dependencies: "@babel/helper-plugin-utils" "^7.12.13" -"@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" - 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" - integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - "@babel/plugin-syntax-flow@^7.0.0", "@babel/plugin-syntax-flow@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.14.5.tgz#2ff654999497d7d7d142493260005263731da180" @@ -625,13 +299,6 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@7.12.1": - version "7.12.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz#9d9d357cc818aa7ae7935917c1257f67677a0926" - integrity sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-jsx@^7.0.0", "@babel/plugin-syntax-jsx@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.14.5.tgz#000e2e25d8673cce49300517a3eda44c263e4201" @@ -639,7 +306,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.8.3": +"@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== @@ -653,14 +320,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3": +"@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== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-syntax-object-rest-spread@7.8.3", "@babel/plugin-syntax-object-rest-spread@^7.0.0", "@babel/plugin-syntax-object-rest-spread@^7.8.0", "@babel/plugin-syntax-object-rest-spread@^7.8.3": +"@babel/plugin-syntax-object-rest-spread@^7.0.0", "@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" integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== @@ -681,51 +348,35 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-top-level-await@^7.12.13", "@babel/plugin-syntax-top-level-await@^7.8.3": +"@babel/plugin-syntax-top-level-await@^7.8.3": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.12.13.tgz#c5f0fa6e249f5b739727f923540cf7a806130178" integrity sha512-A81F9pDwyS7yM//KwbCSDqy3Uj4NMIurtplxphWxoYtNPov7cJsDkAFNNyVlIZ3jwGycVsurZ+LtOA8gZ376iQ== dependencies: "@babel/helper-plugin-utils" "^7.12.13" -"@babel/plugin-syntax-typescript@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.12.13.tgz#9dff111ca64154cef0f4dc52cf843d9f12ce4474" - integrity sha512-cHP3u1JiUiG2LFDKbXnwVad81GvfyIOmCD6HIEId6ojrY0Drfy2q1jw7BwN7dE84+kTnBjLkXoL3IEy/3JPu2w== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-arrow-functions@^7.0.0", "@babel/plugin-transform-arrow-functions@^7.13.0": +"@babel/plugin-transform-arrow-functions@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.14.5.tgz#f7187d9588a768dd080bf4c9ffe117ea62f7862a" integrity sha512-KOnO0l4+tD5IfOdi4x8C1XmEIRWUjNRV8wc6K2vz/3e8yAOoZZvsRXRRIF/yo/MAOFb4QjtAw9xSxMXbSMRy8A== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-async-to-generator@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.13.0.tgz#8e112bf6771b82bf1e974e5e26806c5c99aa516f" - integrity sha512-3j6E004Dx0K3eGmhxVJxwwI89CTJrce7lg3UrtFuDAVQ/2+SJ/h/aSFOeE6/n0WB1GsOffsJp6MnPQNQ8nmwhg== - dependencies: - "@babel/helper-module-imports" "^7.12.13" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-remap-async-to-generator" "^7.13.0" - -"@babel/plugin-transform-block-scoped-functions@^7.0.0", "@babel/plugin-transform-block-scoped-functions@^7.12.13": +"@babel/plugin-transform-block-scoped-functions@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.14.5.tgz#e48641d999d4bc157a67ef336aeb54bc44fd3ad4" integrity sha512-dtqWqdWZ5NqBX3KzsVCWfQI3A53Ft5pWFCT2eCVUftWZgjc5DpDponbIF1+c+7cSGk2wN0YK7HGL/ezfRbpKBQ== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-block-scoping@^7.0.0", "@babel/plugin-transform-block-scoping@^7.12.13": +"@babel/plugin-transform-block-scoping@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.5.tgz#8cc63e61e50f42e078e6f09be775a75f23ef9939" integrity sha512-LBYm4ZocNgoCqyxMLoOnwpsmQ18HWTQvql64t3GvMUzLQrNoV1BDG0lNftC8QKYERkZgCCT/7J5xWGObGAyHDw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-classes@^7.0.0", "@babel/plugin-transform-classes@^7.13.0": +"@babel/plugin-transform-classes@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.5.tgz#0e98e82097b38550b03b483f9b51a78de0acb2cf" integrity sha512-J4VxKAMykM06K/64z9rwiL6xnBHgB1+FVspqvlgCdwD1KUbQNfszeKVVOMh59w3sztHYIZDgnhOC4WbdEfHFDA== @@ -738,43 +389,20 @@ "@babel/helper-split-export-declaration" "^7.14.5" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.0.0", "@babel/plugin-transform-computed-properties@^7.13.0": +"@babel/plugin-transform-computed-properties@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.14.5.tgz#1b9d78987420d11223d41195461cc43b974b204f" integrity sha512-pWM+E4283UxaVzLb8UBXv4EIxMovU4zxT1OPnpHJcmnvyY9QbPPTKZfEj31EUvG3/EQRbYAGaYEUZ4yWOBC2xg== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-destructuring@^7.0.0", "@babel/plugin-transform-destructuring@^7.13.0": +"@babel/plugin-transform-destructuring@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.5.tgz#d32ad19ff1a6da1e861dc62720d80d9776e3bf35" integrity sha512-wU9tYisEbRMxqDezKUqC9GleLycCRoUsai9ddlsq54r8QRLaeEhc+d+9DqCG+kV9W2GgQjTZESPTpn5bAFMDww== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-dotall-regex@^7.12.13", "@babel/plugin-transform-dotall-regex@^7.4.4": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.12.13.tgz#3f1601cc29905bfcb67f53910f197aeafebb25ad" - integrity sha512-foDrozE65ZFdUC2OfgeOCrEPTxdB3yjqxpXh8CH+ipd9CHd4s/iq81kcUpyH8ACGNEPdFqbtzfgzbT/ZGlbDeQ== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.12.13" - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-duplicate-keys@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.12.13.tgz#6f06b87a8b803fd928e54b81c258f0a0033904de" - integrity sha512-NfADJiiHdhLBW3pulJlJI2NB0t4cci4WTZ8FtdIuNc2+8pslXdPtRRAEWqUY+m9kNOk2eRYbTAOipAxlrOcwwQ== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-exponentiation-operator@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.12.13.tgz#4d52390b9a273e651e4aba6aee49ef40e80cd0a1" - integrity sha512-fbUelkM1apvqez/yYx1/oICVnGo2KM5s63mhGylrmXUxK/IAXSIf87QIxVfZldWf4QsOafY6vV3bX8aMHSvNrA== - dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.12.13" - "@babel/helper-plugin-utils" "^7.12.13" - "@babel/plugin-transform-flow-strip-types@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.14.5.tgz#0dc9c1d11dcdc873417903d6df4bed019ef0f85e" @@ -783,14 +411,14 @@ "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-flow" "^7.14.5" -"@babel/plugin-transform-for-of@^7.0.0", "@babel/plugin-transform-for-of@^7.13.0": +"@babel/plugin-transform-for-of@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.14.5.tgz#dae384613de8f77c196a8869cbf602a44f7fc0eb" integrity sha512-CfmqxSUZzBl0rSjpoQSFoR9UEj3HzbGuGNL21/iFTmjb5gFggJp3ph0xR1YBhexmLoKRHzgxuFvty2xdSt6gTA== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-function-name@^7.0.0", "@babel/plugin-transform-function-name@^7.12.13": +"@babel/plugin-transform-function-name@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.14.5.tgz#e81c65ecb900746d7f31802f6bed1f52d915d6f2" integrity sha512-vbO6kv0fIzZ1GpmGQuvbwwm+O4Cbm2NrPzwlup9+/3fdkuzo1YqOZcXw26+YUJB84Ja7j9yURWposEHLYwxUfQ== @@ -798,30 +426,21 @@ "@babel/helper-function-name" "^7.14.5" "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-literals@^7.0.0", "@babel/plugin-transform-literals@^7.12.13": +"@babel/plugin-transform-literals@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.14.5.tgz#41d06c7ff5d4d09e3cf4587bd3ecf3930c730f78" integrity sha512-ql33+epql2F49bi8aHXxvLURHkxJbSmMKl9J5yHqg4PLtdE6Uc48CH1GS6TQvZ86eoB/ApZXwm7jlA+B3kra7A== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-member-expression-literals@^7.0.0", "@babel/plugin-transform-member-expression-literals@^7.12.13": +"@babel/plugin-transform-member-expression-literals@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.14.5.tgz#b39cd5212a2bf235a617d320ec2b48bcc091b8a7" integrity sha512-WkNXxH1VXVTKarWFqmso83xl+2V3Eo28YY5utIkbsmXoItO8Q3aZxN4BTS2k0hz9dGUloHK26mJMyQEYfkn/+Q== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-modules-amd@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.13.0.tgz#19f511d60e3d8753cc5a6d4e775d3a5184866cc3" - integrity sha512-EKy/E2NHhY/6Vw5d1k3rgoobftcNUmp9fGjb9XZwQLtTctsRBOTRO7RHHxfIky1ogMN5BxN7p9uMA3SzPfotMQ== - dependencies: - "@babel/helper-module-transforms" "^7.13.0" - "@babel/helper-plugin-utils" "^7.13.0" - babel-plugin-dynamic-import-node "^2.3.3" - -"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8": +"@babel/plugin-transform-modules-commonjs@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.14.5.tgz#7aaee0ea98283de94da98b28f8c35701429dad97" integrity sha512-en8GfBtgnydoao2PS+87mKyw62k02k7kJ9ltbKe0fXTHrQmG6QZZflYuGI1VVG7sVpx4E1n7KBpNlPb8m78J+A== @@ -831,40 +450,7 @@ "@babel/helper-simple-access" "^7.14.5" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-systemjs@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.13.8.tgz#6d066ee2bff3c7b3d60bf28dec169ad993831ae3" - integrity sha512-hwqctPYjhM6cWvVIlOIe27jCIBgHCsdH2xCJVAYQm7V5yTMoilbVMi9f6wKg0rpQAOn6ZG4AOyvCqFF/hUh6+A== - dependencies: - "@babel/helper-hoist-variables" "^7.13.0" - "@babel/helper-module-transforms" "^7.13.0" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-validator-identifier" "^7.12.11" - babel-plugin-dynamic-import-node "^2.3.3" - -"@babel/plugin-transform-modules-umd@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.13.0.tgz#8a3d96a97d199705b9fd021580082af81c06e70b" - integrity sha512-D/ILzAh6uyvkWjKKyFE/W0FzWwasv6vPTSqPcjxFqn6QpX3u8DjRVliq4F2BamO2Wee/om06Vyy+vPkNrd4wxw== - dependencies: - "@babel/helper-module-transforms" "^7.13.0" - "@babel/helper-plugin-utils" "^7.13.0" - -"@babel/plugin-transform-named-capturing-groups-regex@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.12.13.tgz#2213725a5f5bbbe364b50c3ba5998c9599c5c9d9" - integrity sha512-Xsm8P2hr5hAxyYblrfACXpQKdQbx4m2df9/ZZSQ8MAhsadw06+jW7s9zsSw6he+mJZXRlVMyEnVktJo4zjk1WA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.12.13" - -"@babel/plugin-transform-new-target@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.12.13.tgz#e22d8c3af24b150dd528cbd6e685e799bf1c351c" - integrity sha512-/KY2hbLxrG5GTQ9zzZSc3xWiOy379pIETEhbtzwZcw9rvuaVV4Fqy7BYGYOWZnaoXIQYbbJ0ziXLa/sKcGCYEQ== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-object-super@^7.0.0", "@babel/plugin-transform-object-super@^7.12.13": +"@babel/plugin-transform-object-super@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.14.5.tgz#d0b5faeac9e98597a161a9cf78c527ed934cdc45" integrity sha512-MKfOBWzK0pZIrav9z/hkRqIk/2bTv9qvxHzPQc12RcVkMOzpIKnFCNYJip00ssKWYkd8Sf5g0Wr7pqJ+cmtuFg== @@ -872,42 +458,28 @@ "@babel/helper-plugin-utils" "^7.14.5" "@babel/helper-replace-supers" "^7.14.5" -"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.12.1", "@babel/plugin-transform-parameters@^7.13.0", "@babel/plugin-transform-parameters@^7.14.5": +"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.5.tgz#49662e86a1f3ddccac6363a7dfb1ff0a158afeb3" integrity sha512-Tl7LWdr6HUxTmzQtzuU14SqbgrSKmaR77M0OKyq4njZLQTPfOvzblNKyNkGwOfEFCEx7KeYHQHDI0P3F02IVkA== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-property-literals@^7.0.0", "@babel/plugin-transform-property-literals@^7.12.13": +"@babel/plugin-transform-property-literals@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.14.5.tgz#0ddbaa1f83db3606f1cdf4846fa1dfb473458b34" integrity sha512-r1uilDthkgXW8Z1vJz2dKYLV1tuw2xsbrp3MrZmD99Wh9vsfKoob+JTgri5VUb/JqyKRXotlOtwgu4stIYCmnw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-react-constant-elements@^7.12.1": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.13.10.tgz#5d3de8a8ee53f4612e728f4f17b8c9125f8019e5" - integrity sha512-E+aCW9j7mLq01tOuGV08YzLBt+vSyr4bOPT75B6WrAlrUfmOYOZ/yWk847EH0dv0xXiCihWLEmlX//O30YhpIw== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - -"@babel/plugin-transform-react-display-name@^7.0.0", "@babel/plugin-transform-react-display-name@^7.12.13": +"@babel/plugin-transform-react-display-name@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.14.5.tgz#baa92d15c4570411301a85a74c13534873885b65" integrity sha512-07aqY1ChoPgIxsuDviptRpVkWCSbXWmzQqcgy65C6YSFOfPFvb/DX3bBRHh7pCd/PMEEYHYWUTSVkCbkVainYQ== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-react-jsx-development@^7.12.12": - version "7.12.17" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.12.17.tgz#f510c0fa7cd7234153539f9a362ced41a5ca1447" - integrity sha512-BPjYV86SVuOaudFhsJR1zjgxxOhJDt6JHNoD48DxWEIxUCAMjV1ys6DYw4SDYZh0b1QsS2vfIA9t/ZsQGsDOUQ== - dependencies: - "@babel/plugin-transform-react-jsx" "^7.12.17" - -"@babel/plugin-transform-react-jsx@^7.0.0", "@babel/plugin-transform-react-jsx@^7.12.13", "@babel/plugin-transform-react-jsx@^7.12.17": +"@babel/plugin-transform-react-jsx@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.14.5.tgz#39749f0ee1efd8a1bd729152cf5f78f1d247a44a" integrity sha512-7RylxNeDnxc1OleDm0F5Q/BSL+whYRbOAR+bwgCxIr0L32v7UFh/pz1DLMZideAUxKT6eMoS2zQH6fyODLEi8Q== @@ -918,29 +490,7 @@ "@babel/plugin-syntax-jsx" "^7.14.5" "@babel/types" "^7.14.5" -"@babel/plugin-transform-react-pure-annotations@^7.12.1": - version "7.12.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.12.1.tgz#05d46f0ab4d1339ac59adf20a1462c91b37a1a42" - integrity sha512-RqeaHiwZtphSIUZ5I85PEH19LOSzxfuEazoY7/pWASCAIBuATQzpSVD+eT6MebeeZT2F4eSL0u4vw6n4Nm0Mjg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-regenerator@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.12.13.tgz#b628bcc9c85260ac1aeb05b45bde25210194a2f5" - integrity sha512-lxb2ZAvSLyJ2PEe47hoGWPmW22v7CtSl9jW8mingV4H2sEX/JOcrAj2nPuGWi56ERUm2bUpjKzONAuT6HCn2EA== - dependencies: - regenerator-transform "^0.14.2" - -"@babel/plugin-transform-reserved-words@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.12.13.tgz#7d9988d4f06e0fe697ea1d9803188aa18b472695" - integrity sha512-xhUPzDXxZN1QfiOy/I5tyye+TRz6lA7z6xaT4CLOjPRMVg1ldRf0LHw0TDBpYL4vG78556WuHdyO9oi5UmzZBg== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-runtime@^7.12.15", "@babel/plugin-transform-runtime@^7.5.5": +"@babel/plugin-transform-runtime@^7.5.5": version "7.13.10" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.13.10.tgz#a1e40d22e2bf570c591c9c7e5ab42d6bf1e419e1" integrity sha512-Y5k8ipgfvz5d/76tx7JYbKQTcgFSU6VgJ3kKQv4zGTKr+a9T/KBvfRvGtSFgKDQGt/DBykQixV0vNWKIdzWErA== @@ -952,14 +502,14 @@ babel-plugin-polyfill-regenerator "^0.1.2" semver "^6.3.0" -"@babel/plugin-transform-shorthand-properties@^7.0.0", "@babel/plugin-transform-shorthand-properties@^7.12.13": +"@babel/plugin-transform-shorthand-properties@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.14.5.tgz#97f13855f1409338d8cadcbaca670ad79e091a58" integrity sha512-xLucks6T1VmGsTB+GWK5Pl9Jl5+nRXD1uoFdA5TSO6xtiNjtXTjKkmPdFXVLGlK5A2/or/wQMKfmQ2Y0XJfn5g== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.13.0": +"@babel/plugin-transform-spread@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.14.5.tgz#bd269fb4119754d2ce7f4cc39a96b4f71baae356" integrity sha512-/3iqoQdiWergnShZYl0xACb4ADeYCJ7X/RgmwtXshn6cIvautRPAFzhd58frQlokLO6Jb4/3JXvmm6WNTPtiTw== @@ -967,173 +517,21 @@ "@babel/helper-plugin-utils" "^7.14.5" "@babel/helper-skip-transparent-expression-wrappers" "^7.14.5" -"@babel/plugin-transform-sticky-regex@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.13.tgz#760ffd936face73f860ae646fb86ee82f3d06d1f" - integrity sha512-Jc3JSaaWT8+fr7GRvQP02fKDsYk4K/lYwWq38r/UGfaxo89ajud321NH28KRQ7xy1Ybc0VUE5Pz8psjNNDUglg== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-template-literals@^7.0.0", "@babel/plugin-transform-template-literals@^7.13.0": +"@babel/plugin-transform-template-literals@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.14.5.tgz#a5f2bc233937d8453885dc736bdd8d9ffabf3d93" integrity sha512-22btZeURqiepOfuy/VkFr+zStqlujWaarpMErvay7goJS6BWwdd6BY9zQyDLDa4x2S3VugxFb162IZ4m/S/+Gg== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-transform-typeof-symbol@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.12.13.tgz#785dd67a1f2ea579d9c2be722de8c84cb85f5a7f" - integrity sha512-eKv/LmUJpMnu4npgfvs3LiHhJua5fo/CysENxa45YCQXZwKnGCQKAg87bvoqSW1fFT+HA32l03Qxsm8ouTY3ZQ== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-typescript@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.13.0.tgz#4a498e1f3600342d2a9e61f60131018f55774853" - integrity sha512-elQEwluzaU8R8dbVuW2Q2Y8Nznf7hnjM7+DSCd14Lo5fF63C9qNLbwZYbmZrtV9/ySpSUpkRpQXvJb6xyu4hCQ== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.13.0" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-typescript" "^7.12.13" - -"@babel/plugin-transform-unicode-escapes@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.12.13.tgz#840ced3b816d3b5127dd1d12dcedc5dead1a5e74" - integrity sha512-0bHEkdwJ/sN/ikBHfSmOXPypN/beiGqjo+o4/5K+vxEFNPRPdImhviPakMKG4x96l85emoa0Z6cDflsdBusZbw== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-unicode-regex@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.12.13.tgz#b52521685804e155b1202e83fc188d34bb70f5ac" - integrity sha512-mDRzSNY7/zopwisPZ5kM9XKCfhchqIYwAKRERtEnhYscZB79VRekuRSoYbN0+KVe3y8+q1h6A4svXtP7N+UoCA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.12.13" - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/preset-env@^7.12.1", "@babel/preset-env@^7.12.16": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.13.12.tgz#6dff470478290582ac282fb77780eadf32480237" - integrity sha512-JzElc6jk3Ko6zuZgBtjOd01pf9yYDEIH8BcqVuYIuOkzOwDesoa/Nz4gIo4lBG6K861KTV9TvIgmFuT6ytOaAA== - dependencies: - "@babel/compat-data" "^7.13.12" - "@babel/helper-compilation-targets" "^7.13.10" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-validator-option" "^7.12.17" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.13.12" - "@babel/plugin-proposal-async-generator-functions" "^7.13.8" - "@babel/plugin-proposal-class-properties" "^7.13.0" - "@babel/plugin-proposal-dynamic-import" "^7.13.8" - "@babel/plugin-proposal-export-namespace-from" "^7.12.13" - "@babel/plugin-proposal-json-strings" "^7.13.8" - "@babel/plugin-proposal-logical-assignment-operators" "^7.13.8" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.13.8" - "@babel/plugin-proposal-numeric-separator" "^7.12.13" - "@babel/plugin-proposal-object-rest-spread" "^7.13.8" - "@babel/plugin-proposal-optional-catch-binding" "^7.13.8" - "@babel/plugin-proposal-optional-chaining" "^7.13.12" - "@babel/plugin-proposal-private-methods" "^7.13.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.12.13" - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/plugin-syntax-class-properties" "^7.12.13" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - "@babel/plugin-syntax-json-strings" "^7.8.3" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - "@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.12.13" - "@babel/plugin-transform-arrow-functions" "^7.13.0" - "@babel/plugin-transform-async-to-generator" "^7.13.0" - "@babel/plugin-transform-block-scoped-functions" "^7.12.13" - "@babel/plugin-transform-block-scoping" "^7.12.13" - "@babel/plugin-transform-classes" "^7.13.0" - "@babel/plugin-transform-computed-properties" "^7.13.0" - "@babel/plugin-transform-destructuring" "^7.13.0" - "@babel/plugin-transform-dotall-regex" "^7.12.13" - "@babel/plugin-transform-duplicate-keys" "^7.12.13" - "@babel/plugin-transform-exponentiation-operator" "^7.12.13" - "@babel/plugin-transform-for-of" "^7.13.0" - "@babel/plugin-transform-function-name" "^7.12.13" - "@babel/plugin-transform-literals" "^7.12.13" - "@babel/plugin-transform-member-expression-literals" "^7.12.13" - "@babel/plugin-transform-modules-amd" "^7.13.0" - "@babel/plugin-transform-modules-commonjs" "^7.13.8" - "@babel/plugin-transform-modules-systemjs" "^7.13.8" - "@babel/plugin-transform-modules-umd" "^7.13.0" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.12.13" - "@babel/plugin-transform-new-target" "^7.12.13" - "@babel/plugin-transform-object-super" "^7.12.13" - "@babel/plugin-transform-parameters" "^7.13.0" - "@babel/plugin-transform-property-literals" "^7.12.13" - "@babel/plugin-transform-regenerator" "^7.12.13" - "@babel/plugin-transform-reserved-words" "^7.12.13" - "@babel/plugin-transform-shorthand-properties" "^7.12.13" - "@babel/plugin-transform-spread" "^7.13.0" - "@babel/plugin-transform-sticky-regex" "^7.12.13" - "@babel/plugin-transform-template-literals" "^7.13.0" - "@babel/plugin-transform-typeof-symbol" "^7.12.13" - "@babel/plugin-transform-unicode-escapes" "^7.12.13" - "@babel/plugin-transform-unicode-regex" "^7.12.13" - "@babel/preset-modules" "^0.1.4" - "@babel/types" "^7.13.12" - babel-plugin-polyfill-corejs2 "^0.1.4" - babel-plugin-polyfill-corejs3 "^0.1.3" - babel-plugin-polyfill-regenerator "^0.1.2" - core-js-compat "^3.9.0" - semver "^6.3.0" - -"@babel/preset-modules@^0.1.4": - version "0.1.4" - resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.4.tgz#362f2b68c662842970fdb5e254ffc8fc1c2e415e" - integrity sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" - "@babel/plugin-transform-dotall-regex" "^7.4.4" - "@babel/types" "^7.4.4" - esutils "^2.0.2" - -"@babel/preset-react@^7.12.13", "@babel/preset-react@^7.12.5": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.12.13.tgz#5f911b2eb24277fa686820d5bd81cad9a0602a0a" - integrity sha512-TYM0V9z6Abb6dj1K7i5NrEhA13oS5ujUYQYDfqIBXYHOc2c2VkFgc+q9kyssIyUfy4/hEwqrgSlJ/Qgv8zJLsA== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - "@babel/plugin-transform-react-display-name" "^7.12.13" - "@babel/plugin-transform-react-jsx" "^7.12.13" - "@babel/plugin-transform-react-jsx-development" "^7.12.12" - "@babel/plugin-transform-react-pure-annotations" "^7.12.1" - -"@babel/preset-typescript@^7.12.16": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.13.0.tgz#ab107e5f050609d806fbb039bec553b33462c60a" - integrity sha512-LXJwxrHy0N3f6gIJlYbLta1D9BDtHpQeqwzM0LIfjDlr6UE/D5Mc7W4iDiQzaE+ks0sTjT26ArcHWnJVt0QiHw== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-validator-option" "^7.12.17" - "@babel/plugin-transform-typescript" "^7.13.0" - -"@babel/runtime-corejs3@^7.12.13": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.13.10.tgz#14c3f4c85de22ba88e8e86685d13e8861a82fe86" - integrity sha512-x/XYVQ1h684pp1mJwOV4CyvqZXqbc8CMsMGUnAbuc82ZCdv1U63w5RSUzgDSXQHG5Rps/kiksH6g2D5BuaKyXg== - dependencies: - core-js-pure "^3.0.0" - regenerator-runtime "^0.13.4" - -"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.10.3", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.5", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5": version "7.17.9" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.17.9.tgz#d19fbf802d01a8cb6cf053a64e472d42c434ba72" integrity sha512-lSiBBvodq29uShpWGNbgFdKYNiFDo5/HIYsaCEY9ff4sb10x9jizo2+pRrSyF4jKZCXqgzuqBOQKbUm90gQwJg== dependencies: regenerator-runtime "^0.13.4" -"@babel/template@^7.12.13", "@babel/template@^7.12.7", "@babel/template@^7.14.5", "@babel/template@^7.3.3": +"@babel/template@^7.14.5", "@babel/template@^7.3.3": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.14.5.tgz#a9bc9d8b33354ff6e55a9c60d1109200a68974f4" integrity sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g== @@ -1157,7 +555,7 @@ globals "^11.1.0" lodash "^4.17.19" -"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.12.13", "@babel/traverse@^7.12.9", "@babel/traverse@^7.13.0", "@babel/traverse@^7.14.5", "@babel/traverse@^7.4.5": +"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.13.0", "@babel/traverse@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.14.5.tgz#c111b0f58afab4fea3d3385a406f692748c59870" integrity sha512-G3BiS15vevepdmFqmUc9X+64y0viZYygubAMO8SvBmKARuF6CPSZtH4Ng9vi/lrWlZFGe3FWdXNy835akH8Glg== @@ -1181,7 +579,7 @@ lodash "^4.17.19" to-fast-properties "^2.0.0" -"@babel/types@^7.0.0", "@babel/types@^7.12.13", "@babel/types@^7.12.6", "@babel/types@^7.12.7", "@babel/types@^7.13.0", "@babel/types@^7.13.12", "@babel/types@^7.14.5", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": +"@babel/types@^7.0.0", "@babel/types@^7.12.13", "@babel/types@^7.14.5", "@babel/types@^7.3.0", "@babel/types@^7.3.3": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.14.5.tgz#3bb997ba829a2104cedb20689c4a5b8121d383ff" integrity sha512-M/NzBpEL95I5Hh4dwhin5JlE7EzO5PHMAuzjxss3tiOBD46KfQvVedN/3jEPZvdRvtsK2222XfdHogNIttFgcg== @@ -1194,13 +592,6 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@choojs/findup@^0.2.1": - version "0.2.1" - resolved "https://registry.yarnpkg.com/@choojs/findup/-/findup-0.2.1.tgz#ac13c59ae7be6e1da64de0779a0a7f03d75615a3" - integrity sha512-YstAqNb0MCN8PjdLCDfRsBcGVRN41f3vgLvaI0IrIcBp4AqILRSS0DeWNGkicC+f/zRIPJLc+9RURVSepwvfBw== - dependencies: - commander "^2.15.1" - "@cnakazawa/watch@^1.0.3": version "1.0.4" resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" @@ -1265,11 +656,6 @@ dot "^1.1.3" fs-extra "^9.0.1" -"@csstools/convert-colors@^1.4.0": - version "1.4.0" - resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" - integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw== - "@decentral.ee/web3-helpers@0.5.3": version "0.5.3" resolved "https://registry.yarnpkg.com/@decentral.ee/web3-helpers/-/web3-helpers-0.5.3.tgz#710aa9e90b186c5f7267150c4c5f3894fb52a2b4" @@ -1277,367 +663,6 @@ dependencies: web3-utils "^1.3.4" -"@docsearch/css@3.0.0-alpha.34": - version "3.0.0-alpha.34" - resolved "https://registry.yarnpkg.com/@docsearch/css/-/css-3.0.0-alpha.34.tgz#5d5c39955956e237884a9997eb29e28c8adc99fa" - integrity sha512-ZUbmxbN9gQp3vuBo9GDnm+ywB9aZQSh0ogjt6865PmeRUvyCCvgSwyZktliLPvAztoGX56qewQjxNcso3RrSow== - -"@docsearch/react@^3.0.0-alpha.33": - version "3.0.0-alpha.34" - resolved "https://registry.yarnpkg.com/@docsearch/react/-/react-3.0.0-alpha.34.tgz#fb7e31e31593c26dadb607b9451d274b84b0b05a" - integrity sha512-BBVxu2qY1fyhxJfrGZvknFL6j1fJ3wLZvf2DsmVfmihu/RhYYnf8/C1gbc7RWX2fSoSzbQCcSuNbn4RvjuUJ+A== - dependencies: - "@algolia/autocomplete-core" "1.0.0-alpha.44" - "@algolia/autocomplete-preset-algolia" "1.0.0-alpha.44" - "@docsearch/css" "3.0.0-alpha.34" - algoliasearch "^4.0.0" - -"@docusaurus/core@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/core/-/core-2.0.0-alpha.72.tgz#f1acff2d84b3cbca9c35906186c49ba16d019ce3" - integrity sha512-PV0rlvVRvVEdqs1I4PktwZBJkhFg4O4bVeqseaTYuA1u/poQSiiZ+rhrZRJ+/OcTHZ8VlYZw7tCHaRH4RLbP2g== - dependencies: - "@babel/core" "^7.12.16" - "@babel/generator" "^7.12.15" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.12.13" - "@babel/plugin-proposal-optional-chaining" "^7.12.16" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - "@babel/plugin-transform-runtime" "^7.12.15" - "@babel/preset-env" "^7.12.16" - "@babel/preset-react" "^7.12.13" - "@babel/preset-typescript" "^7.12.16" - "@babel/runtime" "^7.12.5" - "@babel/runtime-corejs3" "^7.12.13" - "@babel/traverse" "^7.12.13" - "@docusaurus/cssnano-preset" "2.0.0-alpha.72" - "@docusaurus/react-loadable" "5.5.0" - "@docusaurus/types" "2.0.0-alpha.72" - "@docusaurus/utils" "2.0.0-alpha.72" - "@docusaurus/utils-validation" "2.0.0-alpha.72" - "@endiliey/static-site-generator-webpack-plugin" "^4.0.0" - "@svgr/webpack" "^5.5.0" - autoprefixer "^10.2.5" - babel-loader "^8.2.2" - babel-plugin-dynamic-import-node "2.3.0" - boxen "^5.0.0" - cache-loader "^4.1.0" - chalk "^4.1.0" - chokidar "^3.5.1" - clean-css "^5.1.1" - commander "^5.1.0" - copy-webpack-plugin "^6.4.1" - core-js "^3.9.1" - css-loader "^5.1.1" - del "^6.0.0" - detect-port "^1.3.0" - eta "^1.12.1" - express "^4.17.1" - file-loader "^6.2.0" - fs-extra "^9.1.0" - github-slugger "^1.3.0" - globby "^11.0.2" - html-minifier-terser "^5.1.1" - html-tags "^3.1.0" - html-webpack-plugin "^4.5.0" - import-fresh "^3.3.0" - is-root "^2.1.0" - joi "^17.4.0" - leven "^3.1.0" - lodash "^4.17.20" - mini-css-extract-plugin "^0.8.0" - module-alias "^2.2.2" - nprogress "^0.2.0" - null-loader "^4.0.0" - optimize-css-assets-webpack-plugin "^5.0.4" - pnp-webpack-plugin "^1.6.4" - postcss "^8.2.7" - postcss-loader "^4.1.0" - postcss-preset-env "^6.7.0" - prompts "^2.4.0" - react-dev-utils "^11.0.1" - react-helmet "^6.1.0" - react-loadable "^5.5.0" - react-loadable-ssr-addon "^0.3.0" - react-router "^5.2.0" - react-router-config "^5.1.1" - react-router-dom "^5.2.0" - resolve-pathname "^3.0.0" - semver "^7.3.4" - serve-handler "^6.1.3" - shelljs "^0.8.4" - std-env "^2.2.1" - terser-webpack-plugin "^4.1.0" - update-notifier "^5.1.0" - url-loader "^4.1.1" - wait-on "^5.2.1" - webpack "^4.44.1" - webpack-bundle-analyzer "^4.4.0" - webpack-dev-server "^3.11.2" - webpack-merge "^4.2.2" - webpackbar "^5.0.0-3" - -"@docusaurus/cssnano-preset@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/cssnano-preset/-/cssnano-preset-2.0.0-alpha.72.tgz#03433315207b5f43f5ba280a75b8c00f2e02b461" - integrity sha512-7W/dlemTaipVd/zrd9Fjq/xp6IX/qn2z/GDaPbJ2SPklHbts5nWuRAt++wkG8Ue+Qxc9Q5uOBjW0ihVb4478+A== - dependencies: - cssnano-preset-advanced "^4.0.7" - postcss "^7.0.2" - postcss-sort-media-queries "^1.7.26" - -"@docusaurus/mdx-loader@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/mdx-loader/-/mdx-loader-2.0.0-alpha.72.tgz#03369c9fc156318a4696ece15b65b78f8ba727d0" - integrity sha512-tG8EZc3w4xt7IKJIniPFChfVY1/adpn6w6vsXVxE96Y/1PmqKjIp6mtVKdzTShaf6MCnKrAOtEUSQR0eCRHOjQ== - dependencies: - "@babel/parser" "^7.12.16" - "@babel/traverse" "^7.12.13" - "@docusaurus/core" "2.0.0-alpha.72" - "@docusaurus/utils" "2.0.0-alpha.72" - "@mdx-js/mdx" "^1.6.21" - "@mdx-js/react" "^1.6.21" - escape-html "^1.0.3" - file-loader "^6.2.0" - fs-extra "^9.1.0" - github-slugger "^1.3.0" - gray-matter "^4.0.2" - loader-utils "^2.0.0" - mdast-util-to-string "^2.0.0" - remark-emoji "^2.1.0" - stringify-object "^3.3.0" - unist-util-visit "^2.0.2" - url-loader "^4.1.1" - webpack "^4.44.1" - -"@docusaurus/plugin-content-blog@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.0.0-alpha.72.tgz#478fe3c1011b8cfdb3ba7d782f8e192206954aee" - integrity sha512-q1noOyULAQ5CkSNciUZDf1v0ly234jX3Ts6ckAy/XK5B3F340Ou8UuEFNbVap2fkRC1hOXe7RnEmFwW1PxmqmA== - dependencies: - "@docusaurus/core" "2.0.0-alpha.72" - "@docusaurus/mdx-loader" "2.0.0-alpha.72" - "@docusaurus/types" "2.0.0-alpha.72" - "@docusaurus/utils" "2.0.0-alpha.72" - "@docusaurus/utils-validation" "2.0.0-alpha.72" - chalk "^4.1.0" - feed "^4.2.2" - fs-extra "^9.1.0" - globby "^11.0.2" - joi "^17.4.0" - loader-utils "^1.2.3" - lodash "^4.17.20" - reading-time "^1.3.0" - remark-admonitions "^1.2.1" - webpack "^4.44.1" - -"@docusaurus/plugin-content-docs@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.0.0-alpha.72.tgz#65255a0fa4fabbc5f3469b04c07f263ec93c67ac" - integrity sha512-EpMt0z/Z7SsOuQFIZlo31XsndxJ0blp7n0bVNcIlcFiNHYoBVVPbYb4VKP2W+1Sfw5K1XouUxoXRM30FyDrjhw== - dependencies: - "@docusaurus/core" "2.0.0-alpha.72" - "@docusaurus/mdx-loader" "2.0.0-alpha.72" - "@docusaurus/types" "2.0.0-alpha.72" - "@docusaurus/utils" "2.0.0-alpha.72" - "@docusaurus/utils-validation" "2.0.0-alpha.72" - chalk "^4.1.0" - execa "^5.0.0" - fs-extra "^9.1.0" - globby "^11.0.2" - import-fresh "^3.2.2" - joi "^17.4.0" - loader-utils "^1.2.3" - lodash "^4.17.20" - remark-admonitions "^1.2.1" - shelljs "^0.8.4" - utility-types "^3.10.0" - webpack "^4.44.1" - -"@docusaurus/plugin-content-pages@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.0.0-alpha.72.tgz#5b1ddf48f5270b8295f9b20d18f76cd230147c2b" - integrity sha512-ETBx+3+U+1sj0C/E8C3huQj5lGcSlmj0ZHBrBb3qP3zHS8+gWHAyUiXst3bvFs5mJX7JHkxfaHZc2hLxXLpaJg== - dependencies: - "@docusaurus/core" "2.0.0-alpha.72" - "@docusaurus/mdx-loader" "2.0.0-alpha.72" - "@docusaurus/types" "2.0.0-alpha.72" - "@docusaurus/utils" "2.0.0-alpha.72" - "@docusaurus/utils-validation" "2.0.0-alpha.72" - globby "^11.0.2" - joi "^17.4.0" - loader-utils "^1.2.3" - lodash "^4.17.20" - minimatch "^3.0.4" - remark-admonitions "^1.2.1" - slash "^3.0.0" - webpack "^4.44.1" - -"@docusaurus/plugin-debug@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-debug/-/plugin-debug-2.0.0-alpha.72.tgz#79f31decce97094117924875dfe267ae7572f48c" - integrity sha512-j2xR7i0Hw8v4SBtNvf8H5zoeKFZHScLdfJ93aUHe4ERf3AfACZuG8/tjnsarrfQK59HjbwWqbRC1mUgc2nFfwA== - dependencies: - "@docusaurus/core" "2.0.0-alpha.72" - "@docusaurus/types" "2.0.0-alpha.72" - "@docusaurus/utils" "2.0.0-alpha.72" - react-json-view "^1.21.1" - -"@docusaurus/plugin-google-analytics@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.0.0-alpha.72.tgz#57b66682e6aad5cd5a70c9bf9ab8ef7177832aae" - integrity sha512-A73FA1hRHxbCZ7WVUthrEty5jRAdWlWAg9pijwSFFg5YG2kb0thNqGqMU/P5dqcV/ytE4907WvXMpKYmLtFVOg== - dependencies: - "@docusaurus/core" "2.0.0-alpha.72" - -"@docusaurus/plugin-google-gtag@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.0.0-alpha.72.tgz#c7cbc4daa1be148b607ac3d1df3d396eede344f6" - integrity sha512-161+C6XZAziT/MRF9HZFCzg0ybzzkW/NHIuIKPmiQjeBB+DXYopvEmldKcPlZbs8YCSD9nMxkTx39pr1AWjffw== - dependencies: - "@docusaurus/core" "2.0.0-alpha.72" - -"@docusaurus/plugin-sitemap@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.0.0-alpha.72.tgz#6ad55c894c19315c91847d17f0c9dcfb145132f8" - integrity sha512-ZaMeJFDdey+PDMxg7qI2u9Wm7ylZb30FBR14wPSH5da+yMnNtl8wAlWEW8RkEgKYo04mE7DMvdEZ1YdsPF7cQg== - dependencies: - "@docusaurus/core" "2.0.0-alpha.72" - "@docusaurus/types" "2.0.0-alpha.72" - "@docusaurus/utils" "2.0.0-alpha.72" - fs-extra "^9.1.0" - joi "^17.4.0" - sitemap "^6.3.6" - -"@docusaurus/preset-classic@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/preset-classic/-/preset-classic-2.0.0-alpha.72.tgz#8f20437207d53718387676cddccdb8d6f2eaf055" - integrity sha512-Z5XKcgyrZWyUvqQZ7cAJ+E3rHkXZPRo8/23vOV5f/5sM7HeW871e+FU37RXIEFu8E8fhpCgQQ6FPEVMyiVS7Uw== - dependencies: - "@docusaurus/core" "2.0.0-alpha.72" - "@docusaurus/plugin-content-blog" "2.0.0-alpha.72" - "@docusaurus/plugin-content-docs" "2.0.0-alpha.72" - "@docusaurus/plugin-content-pages" "2.0.0-alpha.72" - "@docusaurus/plugin-debug" "2.0.0-alpha.72" - "@docusaurus/plugin-google-analytics" "2.0.0-alpha.72" - "@docusaurus/plugin-google-gtag" "2.0.0-alpha.72" - "@docusaurus/plugin-sitemap" "2.0.0-alpha.72" - "@docusaurus/theme-classic" "2.0.0-alpha.72" - "@docusaurus/theme-search-algolia" "2.0.0-alpha.72" - -"@docusaurus/react-loadable@5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@docusaurus/react-loadable/-/react-loadable-5.5.0.tgz#6d6f0c8fd9a434b62a1ab1f8645ee7bde5a9ec21" - integrity sha512-Ld/kwUE6yATIOTLq3JCsWiTa/drisajwKqBQ2Rw6IcT+sFsKfYek8F2jSH8f68AT73xX97UehduZeCSlnuCBIg== - dependencies: - prop-types "^15.6.2" - -"@docusaurus/theme-classic@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-classic/-/theme-classic-2.0.0-alpha.72.tgz#355ed24e4252ad6e24b774496e4a52598013116a" - integrity sha512-X5kDmMG6xCw+PpkOysnulcq9OuSsljR7Z/JiAkOeAFfd6LNeMk983q+Eu72xWxpmhmBBBkE56rhdxuBXKQJCsw== - dependencies: - "@docusaurus/core" "2.0.0-alpha.72" - "@docusaurus/plugin-content-blog" "2.0.0-alpha.72" - "@docusaurus/plugin-content-docs" "2.0.0-alpha.72" - "@docusaurus/plugin-content-pages" "2.0.0-alpha.72" - "@docusaurus/theme-common" "2.0.0-alpha.72" - "@docusaurus/types" "2.0.0-alpha.72" - "@docusaurus/utils" "2.0.0-alpha.72" - "@docusaurus/utils-validation" "2.0.0-alpha.72" - "@mdx-js/mdx" "^1.6.21" - "@mdx-js/react" "^1.6.21" - "@types/react-toggle" "^4.0.2" - chalk "^4.1.0" - clsx "^1.1.1" - copy-text-to-clipboard "^3.0.0" - fs-extra "^9.1.0" - globby "^11.0.2" - infima "0.2.0-alpha.21" - joi "^17.4.0" - lodash "^4.17.20" - parse-numeric-range "^1.2.0" - postcss "^7.0.2" - prism-react-renderer "^1.1.1" - prismjs "^1.23.0" - prop-types "^15.7.2" - react-router-dom "^5.2.0" - react-toggle "^4.1.2" - rtlcss "^2.6.2" - -"@docusaurus/theme-common@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-common/-/theme-common-2.0.0-alpha.72.tgz#509426c81986676038e8300d457d1dc1bdda6c65" - integrity sha512-4NI3VCIBVJvOUk1YhBs2V4QwH1CR65sQQt2MFhHbeAmkKh1V0dYDFF8bVxrTSl7NhTICVk2Azn+tItRNkAXbdg== - dependencies: - "@docusaurus/core" "2.0.0-alpha.72" - "@docusaurus/plugin-content-blog" "2.0.0-alpha.72" - "@docusaurus/plugin-content-docs" "2.0.0-alpha.72" - "@docusaurus/plugin-content-pages" "2.0.0-alpha.72" - "@docusaurus/types" "2.0.0-alpha.72" - -"@docusaurus/theme-live-codeblock@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-live-codeblock/-/theme-live-codeblock-2.0.0-alpha.72.tgz#db2010e19af5a3e23cb242b39a67c10242cdf2ff" - integrity sha512-Rf7s+4EkkSzXTKUJ8lYS1+ChW0d6TzBzwh1gZmkozXT+n3i8cPcV47zThJIQfGfUUU5UUx/ulEEn7npgxz/K9w== - dependencies: - "@docusaurus/core" "2.0.0-alpha.72" - "@philpl/buble" "^0.19.7" - clsx "^1.1.1" - joi "^17.4.0" - parse-numeric-range "^1.2.0" - prism-react-renderer "^1.1.1" - react-live "^2.2.3" - -"@docusaurus/theme-search-algolia@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.0.0-alpha.72.tgz#3b9e074f6dd38b4fe0b51ac42eec64a4735b37ec" - integrity sha512-K+7WvYx0vkclaCN6nvcX4rFD/M+0b0YpjAbg+aFLzeAo77vIJESgByOc6RuK3XNALX4H2U8k7j0+wWIPsJtM1Q== - dependencies: - "@docsearch/react" "^3.0.0-alpha.33" - "@docusaurus/core" "2.0.0-alpha.72" - "@docusaurus/theme-common" "2.0.0-alpha.72" - "@docusaurus/utils" "2.0.0-alpha.72" - algoliasearch "^4.8.4" - algoliasearch-helper "^3.3.4" - clsx "^1.1.1" - eta "^1.12.1" - joi "^17.4.0" - lodash "^4.17.20" - -"@docusaurus/types@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/types/-/types-2.0.0-alpha.72.tgz#5805b0536d584b67b914b937b0f08b17a47b8c18" - integrity sha512-/AfFD2Kdfm2rvG5j1v0w0L5gVuTPIE2vGOgLZh6EGzJT/Xx6CDdso9aAbhHiGfQkQS3bu1BPpLWqKlX9Ovi/aw== - dependencies: - "@types/webpack" "^4.41.0" - commander "^5.1.0" - joi "^17.4.0" - querystring "0.2.0" - webpack-merge "^4.2.2" - -"@docusaurus/utils-validation@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/utils-validation/-/utils-validation-2.0.0-alpha.72.tgz#38f2fa7907a57e3c5a1427b6ba0a514df1ea1d48" - integrity sha512-qhpyCVCCCTy0ui62GxXz6vLazcRCGal/jBGcgnxSgQ4AyXrU2NpPQH2hunOLknL6D3BivTb+w+IAFHE9JAMX0Q== - dependencies: - "@docusaurus/utils" "2.0.0-alpha.72" - chalk "^4.1.0" - joi "^17.4.0" - -"@docusaurus/utils@2.0.0-alpha.72": - version "2.0.0-alpha.72" - resolved "https://registry.yarnpkg.com/@docusaurus/utils/-/utils-2.0.0-alpha.72.tgz#04469cd9fee615d76b74b01680368af41129e916" - integrity sha512-seWNBdX9LI1jREiogh0azXZaf2HStzb3MECsjAVrtEikQFbfG7K7S27C9WXDlUeQw6LVL/q0JEjHFOJD+cTSLA== - dependencies: - "@docusaurus/types" "2.0.0-alpha.72" - "@types/github-slugger" "^1.3.0" - chalk "^4.1.0" - escape-string-regexp "^4.0.0" - fs-extra "^9.1.0" - gray-matter "^4.0.2" - lodash "^4.17.20" - resolve-pathname "^3.0.0" - "@dsherret/to-absolute-glob@^2.0.2": version "2.0.2" resolved "https://registry.yarnpkg.com/@dsherret/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1f6475dc8bd974cea07a2daf3864b317b1dd332c" @@ -1646,28 +671,6 @@ is-absolute "^1.0.0" is-negated-glob "^1.0.0" -"@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" - integrity sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA== - 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" - integrity sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw== - -"@emotion/stylis@^0.8.4": - version "0.8.5" - resolved "https://registry.yarnpkg.com/@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" - integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg== - "@endemolshinegroup/cosmiconfig-typescript-loader@3.0.2": version "3.0.2" resolved "https://registry.yarnpkg.com/@endemolshinegroup/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-3.0.2.tgz#eea4635828dde372838b0909693ebd9aafeec22d" @@ -1678,17 +681,6 @@ ts-node "^9" tslib "^2" -"@endiliey/static-site-generator-webpack-plugin@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@endiliey/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.0.tgz#94bfe58fd83aeda355de797fcb5112adaca3a6b1" - integrity sha512-3MBqYCs30qk1OBRC697NqhGouYbs71D1B8hrk/AFJC6GwF2QaJOQZtA1JYAaGSe650sZ8r5ppRTtCRXepDWlng== - dependencies: - bluebird "^3.7.1" - cheerio "^0.22.0" - eval "^0.1.4" - url "^0.11.0" - webpack-sources "^1.4.3" - "@ensdomains/address-encoder@^0.1.7": version "0.1.9" resolved "https://registry.yarnpkg.com/@ensdomains/address-encoder/-/address-encoder-0.1.9.tgz#f948c485443d9ef7ed2c0c4790e931c33334d02d" @@ -3014,18 +2006,6 @@ tslib "~2.2.0" value-or-promise "1.0.6" -"@hapi/hoek@^9.0.0": - version "9.1.1" - resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.1.1.tgz#9daf5745156fd84b8e9889a2dc721f0c58e894aa" - integrity sha512-CAEbWH7OIur6jEOzaai83jq3FmKmv4PmX1JYfs9IrYcGEVI/lyL1EXJGCj7eFVJ0bg5QR8LMxBlEtA+xKiLpFw== - -"@hapi/topo@^5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@hapi/topo/-/topo-5.0.0.tgz#c19af8577fa393a06e9c77b60995af959be721e7" - integrity sha512-tFJlT47db0kMqVm3H4nQYgn6Pwg10GTZHb1pwmSiv1K4ks6drQOtfEF5ZnPjkvC+y4/bUPHK+bc87QvLcL+WMw== - dependencies: - "@hapi/hoek" "^9.0.0" - "@iarna/toml@^2.2.5": version "2.2.5" resolved "https://registry.yarnpkg.com/@iarna/toml/-/toml-2.2.5.tgz#b32366c89b43c6f8cefbdefac778b9c828e3ba8c" @@ -3913,46 +2893,6 @@ npmlog "^4.1.2" write-file-atomic "^2.3.0" -"@mdx-js/mdx@^1.6.21": - version "1.6.22" - resolved "https://registry.yarnpkg.com/@mdx-js/mdx/-/mdx-1.6.22.tgz#8a723157bf90e78f17dc0f27995398e6c731f1ba" - integrity sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA== - dependencies: - "@babel/core" "7.12.9" - "@babel/plugin-syntax-jsx" "7.12.1" - "@babel/plugin-syntax-object-rest-spread" "7.8.3" - "@mdx-js/util" "1.6.22" - babel-plugin-apply-mdx-type-prop "1.6.22" - babel-plugin-extract-import-names "1.6.22" - camelcase-css "2.0.1" - detab "2.0.4" - hast-util-raw "6.0.1" - lodash.uniq "4.5.0" - mdast-util-to-hast "10.0.1" - remark-footnotes "2.0.0" - remark-mdx "1.6.22" - remark-parse "8.0.3" - remark-squeeze-paragraphs "4.0.0" - style-to-object "0.3.0" - unified "9.2.0" - unist-builder "2.0.3" - unist-util-visit "2.0.3" - -"@mdx-js/react@^1.6.21": - version "1.6.22" - resolved "https://registry.yarnpkg.com/@mdx-js/react/-/react-1.6.22.tgz#ae09b4744fddc74714ee9f9d6f17a66e77c43573" - integrity sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg== - -"@mdx-js/util@1.6.22": - version "1.6.22" - resolved "https://registry.yarnpkg.com/@mdx-js/util/-/util-1.6.22.tgz#219dfd89ae5b97a8801f015323ffa4b62f45718b" - integrity sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA== - -"@metamask/contract-metadata@1.25.0": - version "1.25.0" - resolved "https://registry.yarnpkg.com/@metamask/contract-metadata/-/contract-metadata-1.25.0.tgz#442ace91fb40165310764b68d8096d0017bb0492" - integrity sha512-yhmYB9CQPv0dckNcPoWDcgtrdUp0OgK0uvkRE5QIBv4b3qENI1/03BztvK2ijbTuMlORUpjPq7/1MQDUPoRPVw== - "@metamask/contract-metadata@1.31.0": version "1.31.0" resolved "https://registry.yarnpkg.com/@metamask/contract-metadata/-/contract-metadata-1.31.0.tgz#9e3e46de7a955ea1ca61f7db20d9a17b5e91d3d0" @@ -4204,26 +3144,6 @@ web3 "^1.2.1" web3-utils "^1.2.1" -"@philpl/buble@^0.19.7": - version "0.19.7" - resolved "https://registry.yarnpkg.com/@philpl/buble/-/buble-0.19.7.tgz#27231e6391393793b64bc1c982fc7b593198b893" - integrity sha512-wKTA2DxAGEW+QffRQvOhRQ0VBiYU2h2p8Yc1oBNlqSKws48/8faxqKNIuub0q4iuyTuLwtB8EkwiKwhlfV1PBA== - dependencies: - acorn "^6.1.1" - acorn-class-fields "^0.2.1" - acorn-dynamic-import "^4.0.0" - acorn-jsx "^5.0.1" - chalk "^2.4.2" - magic-string "^0.25.2" - minimist "^1.2.0" - os-homedir "^1.0.1" - regexpu-core "^4.5.4" - -"@polka/url@^1.0.0-next.9": - version "1.0.0-next.11" - resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.11.tgz#aeb16f50649a91af79dbe36574b66d0f9e4d9f71" - integrity sha512-3NsZsJIA/22P3QUyrEDNA2D133H4j224twJrdipXN38dpnIOzAbUDtOwkcJ5pXmn75w7LSQDjA4tO9dm1XlqlA== - "@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2": version "1.1.2" resolved "https://registry.yarnpkg.com/@protobufjs/aspromise/-/aspromise-1.1.2.tgz#9b8b0cc663d669a7d8f6f5d0893a14d348f30fbf" @@ -4389,23 +3309,6 @@ "@sentry/types" "5.30.0" tslib "^1.9.3" -"@sideway/address@^4.1.0": - version "4.1.1" - resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.1.tgz#9e321e74310963fdf8eebfbee09c7bd69972de4d" - integrity sha512-+I5aaQr3m0OAmMr7RQ3fR9zx55sejEYR2BFJaxL+zT3VM2611X0SHvPWIbAUBZVTn/YzYKbV8gJ2oT/QELknfQ== - dependencies: - "@hapi/hoek" "^9.0.0" - -"@sideway/formula@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@sideway/formula/-/formula-3.0.0.tgz#fe158aee32e6bd5de85044be615bc08478a0a13c" - integrity sha512-vHe7wZ4NOXVfkoRb8T5otiENVlT7a3IAiw7H5M2+GO+9CDgcVUUsX1zalAztCmwyOr2RUTGJdgB+ZvSVqmdHmg== - -"@sideway/pinpoint@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df" - integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ== - "@sindresorhus/is@^0.14.0": version "0.14.0" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" @@ -4488,109 +3391,6 @@ lodash "^4.17.21" tsify "^5.0.4" -"@svgr/babel-plugin-add-jsx-attribute@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-5.4.0.tgz#81ef61947bb268eb9d50523446f9c638fb355906" - integrity sha512-ZFf2gs/8/6B8PnSofI0inYXr2SDNTDScPXhN7k5EqD4aZ3gi6u+rbmZHVB8IM3wDyx8ntKACZbtXSm7oZGRqVg== - -"@svgr/babel-plugin-remove-jsx-attribute@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-5.4.0.tgz#6b2c770c95c874654fd5e1d5ef475b78a0a962ef" - integrity sha512-yaS4o2PgUtwLFGTKbsiAy6D0o3ugcUhWK0Z45umJ66EPWunAz9fuFw2gJuje6wqQvQWOTJvIahUwndOXb7QCPg== - -"@svgr/babel-plugin-remove-jsx-empty-expression@^5.0.1": - version "5.0.1" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-5.0.1.tgz#25621a8915ed7ad70da6cea3d0a6dbc2ea933efd" - integrity sha512-LA72+88A11ND/yFIMzyuLRSMJ+tRKeYKeQ+mR3DcAZ5I4h5CPWN9AHyUzJbWSYp/u2u0xhmgOe0+E41+GjEueA== - -"@svgr/babel-plugin-replace-jsx-attribute-value@^5.0.1": - version "5.0.1" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-5.0.1.tgz#0b221fc57f9fcd10e91fe219e2cd0dd03145a897" - integrity sha512-PoiE6ZD2Eiy5mK+fjHqwGOS+IXX0wq/YDtNyIgOrc6ejFnxN4b13pRpiIPbtPwHEc+NT2KCjteAcq33/F1Y9KQ== - -"@svgr/babel-plugin-svg-dynamic-title@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-5.4.0.tgz#139b546dd0c3186b6e5db4fefc26cb0baea729d7" - integrity sha512-zSOZH8PdZOpuG1ZVx/cLVePB2ibo3WPpqo7gFIjLV9a0QsuQAzJiwwqmuEdTaW2pegyBE17Uu15mOgOcgabQZg== - -"@svgr/babel-plugin-svg-em-dimensions@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-5.4.0.tgz#6543f69526632a133ce5cabab965deeaea2234a0" - integrity sha512-cPzDbDA5oT/sPXDCUYoVXEmm3VIoAWAPT6mSPTJNbQaBNUuEKVKyGH93oDY4e42PYHRW67N5alJx/eEol20abw== - -"@svgr/babel-plugin-transform-react-native-svg@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-5.4.0.tgz#00bf9a7a73f1cad3948cdab1f8dfb774750f8c80" - integrity sha512-3eYP/SaopZ41GHwXma7Rmxcv9uRslRDTY1estspeB1w1ueZWd/tPlMfEOoccYpEMZU3jD4OU7YitnXcF5hLW2Q== - -"@svgr/babel-plugin-transform-svg-component@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-5.5.0.tgz#583a5e2a193e214da2f3afeb0b9e8d3250126b4a" - integrity sha512-q4jSH1UUvbrsOtlo/tKcgSeiCHRSBdXoIoqX1pgcKK/aU3JD27wmMKwGtpB8qRYUYoyXvfGxUVKchLuR5pB3rQ== - -"@svgr/babel-preset@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-preset/-/babel-preset-5.5.0.tgz#8af54f3e0a8add7b1e2b0fcd5a882c55393df327" - integrity sha512-4FiXBjvQ+z2j7yASeGPEi8VD/5rrGQk4Xrq3EdJmoZgz/tpqChpo5hgXDvmEauwtvOc52q8ghhZK4Oy7qph4ig== - dependencies: - "@svgr/babel-plugin-add-jsx-attribute" "^5.4.0" - "@svgr/babel-plugin-remove-jsx-attribute" "^5.4.0" - "@svgr/babel-plugin-remove-jsx-empty-expression" "^5.0.1" - "@svgr/babel-plugin-replace-jsx-attribute-value" "^5.0.1" - "@svgr/babel-plugin-svg-dynamic-title" "^5.4.0" - "@svgr/babel-plugin-svg-em-dimensions" "^5.4.0" - "@svgr/babel-plugin-transform-react-native-svg" "^5.4.0" - "@svgr/babel-plugin-transform-svg-component" "^5.5.0" - -"@svgr/core@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@svgr/core/-/core-5.5.0.tgz#82e826b8715d71083120fe8f2492ec7d7874a579" - integrity sha512-q52VOcsJPvV3jO1wkPtzTuKlvX7Y3xIcWRpCMtBF3MrteZJtBfQw/+u0B1BHy5ColpQc1/YVTrPEtSYIMNZlrQ== - dependencies: - "@svgr/plugin-jsx" "^5.5.0" - camelcase "^6.2.0" - cosmiconfig "^7.0.0" - -"@svgr/hast-util-to-babel-ast@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-5.5.0.tgz#5ee52a9c2533f73e63f8f22b779f93cd432a5461" - integrity sha512-cAaR/CAiZRB8GP32N+1jocovUtvlj0+e65TB50/6Lcime+EA49m/8l+P2ko+XPJ4dw3xaPS3jOL4F2X4KWxoeQ== - dependencies: - "@babel/types" "^7.12.6" - -"@svgr/plugin-jsx@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@svgr/plugin-jsx/-/plugin-jsx-5.5.0.tgz#1aa8cd798a1db7173ac043466d7b52236b369000" - integrity sha512-V/wVh33j12hGh05IDg8GpIUXbjAPnTdPTKuP4VNLggnwaHMPNQNae2pRnyTAILWCQdz5GyMqtO488g7CKM8CBA== - dependencies: - "@babel/core" "^7.12.3" - "@svgr/babel-preset" "^5.5.0" - "@svgr/hast-util-to-babel-ast" "^5.5.0" - svg-parser "^2.0.2" - -"@svgr/plugin-svgo@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@svgr/plugin-svgo/-/plugin-svgo-5.5.0.tgz#02da55d85320549324e201c7b2e53bf431fcc246" - integrity sha512-r5swKk46GuQl4RrVejVwpeeJaydoxkdwkM1mBKOgJLBUJPGaLci6ylg/IjhrRsREKDkr4kbMWdgOtbXEh0fyLQ== - dependencies: - cosmiconfig "^7.0.0" - deepmerge "^4.2.2" - svgo "^1.2.2" - -"@svgr/webpack@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@svgr/webpack/-/webpack-5.5.0.tgz#aae858ee579f5fa8ce6c3166ef56c6a1b381b640" - integrity sha512-DOBOK255wfQxguUta2INKkzPj6AIS6iafZYiYmHn6W3pHlycSRRlvWKCfLDG10fXfLWqE3DJHgRUOyJYmARa7g== - dependencies: - "@babel/core" "^7.12.3" - "@babel/plugin-transform-react-constant-elements" "^7.12.1" - "@babel/preset-env" "^7.12.1" - "@babel/preset-react" "^7.12.5" - "@svgr/core" "^5.5.0" - "@svgr/plugin-jsx" "^5.5.0" - "@svgr/plugin-svgo" "^5.5.0" - loader-utils "^2.0.0" - "@szmarczak/http-timer@^1.1.2": version "1.1.2" resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421" @@ -4872,11 +3672,6 @@ resolved "https://registry.yarnpkg.com/@types/abstract-leveldown/-/abstract-leveldown-5.0.2.tgz#ee81917fe38f770e29eec8139b6f16ee4a8b0a5f" integrity sha512-+jA1XXF3jsz+Z7FcuiNqgK53hTa/luglT2TyTpKPqoYbxVY+mCPF22Rm+q3KPBrMHJwNXFrTViHszBOfU4vftQ== -"@types/anymatch@*": - version "1.3.1" - resolved "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a" - integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA== - "@types/babel__core@^7.0.0", "@types/babel__core@^7.1.7": version "7.1.14" resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.14.tgz#faaeefc4185ec71c389f4501ee5ec84b170cc402" @@ -5008,11 +3803,6 @@ "@types/qs" "*" "@types/serve-static" "*" -"@types/github-slugger@^1.3.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@types/github-slugger/-/github-slugger-1.3.0.tgz#16ab393b30d8ae2a111ac748a015ac05a1fc5524" - integrity sha512-J/rMZa7RqiH/rT29TEVZO4nBoDP9XJOjnbbIofg7GQKs4JIduEO3WLpte+6WeUz/TcrXKlY+bM7FYrp8yFB+3g== - "@types/glob@^7.1.1": version "7.1.3" resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.3.tgz#e6ba80f36b7daad2c685acd9266382e68985c183" @@ -5028,18 +3818,6 @@ dependencies: "@types/node" "*" -"@types/hast@^2.0.0": - version "2.3.1" - resolved "https://registry.yarnpkg.com/@types/hast/-/hast-2.3.1.tgz#b16872f2a6144c7025f296fb9636a667ebb79cd9" - integrity sha512-viwwrB+6xGzw+G1eWpF9geV3fnsDgXqHG+cqgiHrvQfDUW5hzhCyV7Sy3UJxhfRFBsgky2SSW33qi/YrIkjX5Q== - dependencies: - "@types/unist" "*" - -"@types/html-minifier-terser@^5.0.0": - version "5.1.1" - resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#3c9ee980f1a10d6021ae6632ca3e79ca2ec4fb50" - integrity sha512-giAlZwstKbmvMk1OO7WXSj4OZ0keXAcl2TQq4LWHiiPH2ByaH7WeUzng+Qej8UPxxv+8lRTuouo0iaNDBuzIBA== - "@types/http-proxy-agent@^2.0.2": version "2.0.2" resolved "https://registry.yarnpkg.com/@types/http-proxy-agent/-/http-proxy-agent-2.0.2.tgz#942c1f35c7e1f0edd1b6ffae5d0f9051cfb32be1" @@ -5103,7 +3881,7 @@ resolved "https://registry.yarnpkg.com/@types/js-yaml/-/js-yaml-4.0.1.tgz#5544730b65a480b18ace6b6ce914e519cec2d43b" integrity sha512-xdOvNmXmrZqqPy3kuCQ+fz6wA0xU5pji9cd1nDrflWaAWtYLLGk5ykW0H6yg5TVyehHP1pfmuuSaZkhP+kspVA== -"@types/json-schema@^7.0.3", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.6": +"@types/json-schema@^7.0.3", "@types/json-schema@^7.0.6": version "7.0.7" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.7.tgz#98a993516c859eb0d5c4c8f098317a9ea68db9ad" integrity sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA== @@ -5161,13 +3939,6 @@ resolved "https://registry.yarnpkg.com/@types/lru-cache/-/lru-cache-5.1.1.tgz#c48c2e27b65d2a153b19bfc1a317e30872e01eef" integrity sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw== -"@types/mdast@^3.0.0": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.3.tgz#2d7d671b1cd1ea3deb306ea75036c2a0407d2deb" - integrity sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw== - dependencies: - "@types/unist" "*" - "@types/mime@^1": version "1.3.2" resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a" @@ -5233,11 +4004,6 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.6.tgz#7b73cce37352936e628c5ba40326193443cfba25" integrity sha512-sRVq8d+ApGslmkE9e3i+D3gFGk7aZHAT+G4cIpIEdLJYPsWiSPwcAnJEjddLQQDqV3Ra2jOclX/Sv6YrvGYiWA== -"@types/node@^14.14.28": - version "14.14.35" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.35.tgz#42c953a4e2b18ab931f72477e7012172f4ffa313" - integrity sha512-Lt+wj8NVPx0zUmUwumiVXapmaLUcAk3yPuHCFVXras9k5VT9TdhJqKqGVUQCD60OTMCl0qxJ57OiTL0Mic3Iag== - "@types/normalize-package-data@^2.4.0": version "2.4.0" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" @@ -5248,11 +4014,6 @@ resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== -"@types/parse5@^5.0.0": - version "5.0.3" - resolved "https://registry.yarnpkg.com/@types/parse5/-/parse5-5.0.3.tgz#e7b5aebbac150f8b5fdd4a46e7f0bd8e65e19109" - integrity sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw== - "@types/pbkdf2@^3.0.0": version "3.1.0" resolved "https://registry.yarnpkg.com/@types/pbkdf2/-/pbkdf2-3.1.0.tgz#039a0e9b67da0cdc4ee5dab865caa6b267bb66b1" @@ -5265,16 +4026,6 @@ resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.2.3.tgz#ef65165aea2924c9359205bf748865b8881753c0" integrity sha512-PijRCG/K3s3w1We6ynUKdxEc5AcuuH3NBmMDP8uvKVp6X43UY7NQlTzczakXP3DJR0F4dfNQIGjU2cUeRYs2AA== -"@types/prop-types@*": - version "15.7.3" - resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7" - integrity sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw== - -"@types/q@^1.5.1": - version "1.5.4" - resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24" - integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug== - "@types/qs@*": version "6.9.6" resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.6.tgz#df9c3c8b31a247ec315e6996566be3171df4b3b1" @@ -5285,22 +4036,6 @@ resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c" integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== -"@types/react-toggle@^4.0.2": - version "4.0.2" - resolved "https://registry.yarnpkg.com/@types/react-toggle/-/react-toggle-4.0.2.tgz#46ffa5af1a55de5f25d0aa78ef0b557b5c8bf276" - integrity sha512-sHqfoKFnL0YU2+OC4meNEC8Ptx9FE8/+nFeFvNcdBa6ANA8KpAzj3R9JN8GtrvlLgjKDoYgI7iILgXYcTPo2IA== - dependencies: - "@types/react" "*" - -"@types/react@*": - version "17.0.3" - resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.3.tgz#ba6e215368501ac3826951eef2904574c262cc79" - integrity sha512-wYOUxIgs2HZZ0ACNiIayItyluADNbONl7kt8lkLjVK8IitMH5QMyAh75Fwhmo37r1m7L2JaFj03sIfxBVDvRAg== - dependencies: - "@types/prop-types" "*" - "@types/scheduler" "*" - csstype "^3.0.2" - "@types/resolve@^0.0.8": version "0.0.8" resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-0.0.8.tgz#f26074d238e02659e323ce1a13d041eee280e194" @@ -5308,18 +4043,6 @@ dependencies: "@types/node" "*" -"@types/sax@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@types/sax/-/sax-1.2.1.tgz#e0248be936ece791a82db1a57f3fb5f7c87e8172" - integrity sha512-dqYdvN7Sbw8QT/0Ci5rhjE4/iCMJEM0Y9rHpCu+gGXD9Lwbz28t6HI2yegsB6BoV1sShRMU6lAmAcgRjmFy7LA== - dependencies: - "@types/node" "*" - -"@types/scheduler@*": - version "0.16.1" - resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.1.tgz#18845205e86ff0038517aab7a18a62a6b9f71275" - integrity sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA== - "@types/secp256k1@^4.0.1": version "4.0.1" resolved "https://registry.yarnpkg.com/@types/secp256k1/-/secp256k1-4.0.1.tgz#fb3aa61a1848ad97d7425ff9dcba784549fca5a4" @@ -5355,11 +4078,6 @@ dependencies: "@sinonjs/fake-timers" "^7.1.0" -"@types/source-list-map@*": - version "0.1.2" - resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" - integrity sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA== - "@types/stack-utils@^2.0.0": version "2.0.0" resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.0.tgz#7036640b4e21cc2f259ae826ce843d277dad8cff" @@ -5390,11 +4108,6 @@ dependencies: "@types/superagent" "*" -"@types/tapable@*", "@types/tapable@^1.0.5": - version "1.0.6" - resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.6.tgz#a9ca4b70a18b270ccb2bc0aaafefd1d486b7ea74" - integrity sha512-W+bw9ds02rAQaMvaLYxAbJ6cvguW/iJXNT6lTssS1ps6QdrMKttqEAMEG/b5CR8TZl3/L7/lH0ZV5nNR1LXikA== - "@types/through@*": version "0.0.30" resolved "https://registry.yarnpkg.com/@types/through/-/through-0.0.30.tgz#e0e42ce77e897bd6aead6f6ea62aeb135b8a3895" @@ -5402,23 +4115,11 @@ dependencies: "@types/node" "*" -"@types/uglify-js@*": - version "3.13.0" - resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.13.0.tgz#1cad8df1fb0b143c5aba08de5712ea9d1ff71124" - integrity sha512-EGkrJD5Uy+Pg0NUR8uA4bJ5WMfljyad0G+784vLCNUkD+QwOJXUbBYExXfVGf7YtyzdQp3L/XMYcliB987kL5Q== - dependencies: - source-map "^0.6.1" - "@types/underscore@*": version "1.11.3" resolved "https://registry.yarnpkg.com/@types/underscore/-/underscore-1.11.3.tgz#d6734f3741ce41b2630018c6b61c6745f6188c07" integrity sha512-Fl1TX1dapfXyDqFg2ic9M+vlXRktcPJrc4PR7sRc7sdVrjavg/JHlbUXBt8qWWqhJrmSqg3RNAkAPRiOYw6Ahw== -"@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2", "@types/unist@^2.0.3": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz#9c088679876f374eb5983f150d4787aa6fb32d7e" - integrity sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ== - "@types/web3@1.0.19": version "1.0.19" resolved "https://registry.yarnpkg.com/@types/web3/-/web3-1.0.19.tgz#46b85d91d398ded9ab7c85a5dd57cb33ac558924" @@ -5427,27 +4128,6 @@ "@types/bn.js" "*" "@types/underscore" "*" -"@types/webpack-sources@*": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-2.1.0.tgz#8882b0bd62d1e0ce62f183d0d01b72e6e82e8c10" - integrity sha512-LXn/oYIpBeucgP1EIJbKQ2/4ZmpvRl+dlrFdX7+94SKRUV3Evy3FsfMZY318vGhkWUS5MPhtOM3w1/hCOAOXcg== - dependencies: - "@types/node" "*" - "@types/source-list-map" "*" - source-map "^0.7.3" - -"@types/webpack@^4.41.0", "@types/webpack@^4.41.8": - version "4.41.26" - resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.26.tgz#27a30d7d531e16489f9c7607c747be6bc1a459ef" - integrity sha512-7ZyTfxjCRwexh+EJFwRUM+CDB2XvgHl4vfuqf1ZKrgGvcS5BrNvPQqJh3tsZ0P6h6Aa1qClVHaJZszLPzpqHeA== - dependencies: - "@types/anymatch" "*" - "@types/node" "*" - "@types/tapable" "*" - "@types/uglify-js" "*" - "@types/webpack-sources" "*" - source-map "^0.6.0" - "@types/websocket@1.0.2": version "1.0.2" resolved "https://registry.yarnpkg.com/@types/websocket/-/websocket-1.0.2.tgz#d2855c6a312b7da73ed16ba6781815bf30c6187a" @@ -5793,7 +4473,7 @@ abstract-leveldown@~6.2.1: level-supports "~1.0.0" xtend "~4.0.0" -accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7: +accepts@~1.3.4, accepts@~1.3.7: version "1.3.7" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" integrity sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== @@ -5801,16 +4481,6 @@ accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7: mime-types "~2.1.24" negotiator "0.6.2" -acorn-class-fields@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/acorn-class-fields/-/acorn-class-fields-0.2.1.tgz#748058bceeb0ef25164bbc671993984083f5a085" - integrity sha512-US/kqTe0H8M4LN9izoL+eykVAitE68YMuYZ3sHn3i1fjniqR7oQ3SPvuMK/VT1kjOQHrx5Q88b90TtOKgAv2hQ== - -acorn-dynamic-import@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz#482210140582a36b83c3e342e1cfebcaa9240948" - integrity sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw== - acorn-globals@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" @@ -5819,7 +4489,7 @@ acorn-globals@^6.0.0: acorn "^7.1.1" acorn-walk "^7.1.1" -acorn-jsx@^5.0.0, acorn-jsx@^5.0.1, acorn-jsx@^5.3.1: +acorn-jsx@^5.0.0, acorn-jsx@^5.3.1: version "5.3.2" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== @@ -5848,7 +4518,7 @@ acorn@7.1.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.1.1.tgz#e35668de0b402f359de515c5482a1ab9f89a69bf" integrity sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg== -acorn@^6.0.7, acorn@^6.1.1, acorn@^6.4.1: +acorn@^6.0.7, acorn@^6.4.1: version "6.4.2" resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== @@ -5863,11 +4533,6 @@ acorn@^8.0.4, acorn@^8.0.5: resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.1.0.tgz#52311fd7037ae119cbb134309e901aa46295b3fe" integrity sha512-LWCF/Wn0nfHOmJ9rzQApGnxnvgfROzGilS8936rqN/lfcYkY9MYZzdMqN+2NJ4SlTc+m5HiSa+kNfDtI64dwUA== -address@1.1.2, address@^1.0.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/address/-/address-1.1.2.tgz#bf1116c9c758c51b7a933d296b72c221ed9428b6" - integrity sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA== - adm-zip@^0.4.16: version "0.4.16" resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.4.16.tgz#cf4c508fdffab02c269cbc7f471a875f05570365" @@ -5969,38 +4634,6 @@ ajv@^8.0.1, ajv@^8.9.0: require-from-string "^2.0.2" uri-js "^4.2.2" -algoliasearch-helper@^3.3.4: - version "3.7.0" - resolved "https://registry.yarnpkg.com/algoliasearch-helper/-/algoliasearch-helper-3.7.0.tgz#c0a0493df84d850360f664ad7a9d4fc78a94fd78" - integrity sha512-XJ3QfERBLfeVCyTVx80gon7r3/rgm/CE8Ha1H7cbablRe/X7SfYQ14g/eO+MhjVKIQp+gy9oC6G5ilmLwS1k6w== - dependencies: - "@algolia/events" "^4.0.1" - -algoliasearch@^4.0.0, algoliasearch@^4.8.4: - version "4.8.6" - resolved "https://registry.yarnpkg.com/algoliasearch/-/algoliasearch-4.8.6.tgz#8d6d7d2315bb052705a8ef5c8dbf57a19d357c2b" - integrity sha512-G8IA3lcgaQB4r9HuQ4G+uSFjjz0Wv2OgEPiQ8emA+G2UUlroOfMl064j1bq/G+QTW0LmTQp9JwrFDRWxFM9J7w== - dependencies: - "@algolia/cache-browser-local-storage" "4.8.6" - "@algolia/cache-common" "4.8.6" - "@algolia/cache-in-memory" "4.8.6" - "@algolia/client-account" "4.8.6" - "@algolia/client-analytics" "4.8.6" - "@algolia/client-common" "4.8.6" - "@algolia/client-recommendation" "4.8.6" - "@algolia/client-search" "4.8.6" - "@algolia/logger-common" "4.8.6" - "@algolia/logger-console" "4.8.6" - "@algolia/requester-browser-xhr" "4.8.6" - "@algolia/requester-common" "4.8.6" - "@algolia/requester-node-http" "4.8.6" - "@algolia/transporter" "4.8.6" - -alphanum-sort@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" - integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= - amd-loader@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/amd-loader/-/amd-loader-0.0.8.tgz#1022928040e567e8e6a6fb58bda052f819189206" @@ -6011,13 +4644,6 @@ amdefine@>=0.0.4: resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" integrity sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU= -ansi-align@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.0.tgz#b536b371cf687caaef236c18d3e21fe3797467cb" - integrity sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw== - dependencies: - string-width "^3.0.0" - ansi-colors@3.2.3: version "3.2.3" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" @@ -6030,7 +4656,7 @@ ansi-colors@^1.0.1: dependencies: ansi-wrap "^0.1.0" -ansi-colors@^3.0.0, ansi-colors@^3.2.3: +ansi-colors@^3.2.3: version "3.2.4" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf" integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA== @@ -6059,11 +4685,6 @@ ansi-gray@^0.1.1: dependencies: ansi-wrap "0.1.0" -ansi-html@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" - integrity sha1-gTWEAhliqenm/QOflA0S9WynhZ4= - ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" @@ -6199,11 +4820,6 @@ arg@^4.1.0: resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== -arg@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.0.tgz#a20e2bb5710e82950a516b3f933fee5ed478be90" - integrity sha512-4P8Zm2H+BRS+c/xX1LrHw0qKpEhdlZjLCgWy+d78T9vqa2Z2SiD2wMrYuWIAFy5IZUD7nnNXroRttz+0RzlrzQ== - argparse@^1.0.7: version "1.0.10" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" @@ -6277,11 +4893,6 @@ array-flatten@1.1.1: resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= -array-flatten@^2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" - integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== - array-from@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/array-from/-/array-from-2.1.1.tgz#cfe9d8c26628b9dc5aecc62a9f5d8f1f352c1195" @@ -6457,7 +5068,7 @@ async@2.6.2: dependencies: lodash "^4.17.11" -async@^2.0.1, async@^2.1.2, async@^2.4.0, async@^2.5.0, async@^2.6.1, async@^2.6.2: +async@^2.0.1, async@^2.1.2, async@^2.4.0, async@^2.5.0, async@^2.6.1: version "2.6.3" resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== @@ -6484,46 +5095,11 @@ atob@^2.1.2: resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== -aurelius@0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/aurelius/-/aurelius-0.1.3.tgz#36049644b2c12443c10b64c42a1808e2238a54ba" - integrity sha512-xFzrp6OH+ZOOUMNwM+Q4Rz/IxpBmpFMWW8u9Q0wfqHuttT9yq3VvAnkJZhJQ8uTfv2BAZetRUN24WdUgMG+FLw== - dependencies: - glob "^7.1.6" - minimist "^1.2.0" - mkdirp "^1.0.3" - ora "^4.0.3" - auto-bind@^4.0.0, auto-bind@~4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/auto-bind/-/auto-bind-4.0.0.tgz#e3589fc6c2da8f7ca43ba9f84fa52a744fc997fb" integrity sha512-Hdw8qdNiqdJ8LqT0iK0sVzkFbzg6fhnQqqfWhBDxcHZvU75+B+ayzTy8x+k5Ix0Y92XOhOUlx74ps+bA6BeYMQ== -autoprefixer@^10.2.5: - version "10.2.5" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.2.5.tgz#096a0337dbc96c0873526d7fef5de4428d05382d" - integrity sha512-7H4AJZXvSsn62SqZyJCP+1AWwOuoYpUfK6ot9vm0e87XD6mT8lDywc9D9OTJPMULyGcvmIxzTAMeG2Cc+YX+fA== - dependencies: - browserslist "^4.16.3" - caniuse-lite "^1.0.30001196" - colorette "^1.2.2" - fraction.js "^4.0.13" - normalize-range "^0.1.2" - postcss-value-parser "^4.1.0" - -autoprefixer@^9.4.7, autoprefixer@^9.6.1: - version "9.8.6" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.6.tgz#3b73594ca1bf9266320c5acf1588d74dea74210f" - integrity sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg== - dependencies: - browserslist "^4.12.0" - caniuse-lite "^1.0.30001109" - colorette "^1.2.1" - normalize-range "^0.1.2" - num2fraction "^1.2.2" - postcss "^7.0.32" - postcss-value-parser "^4.1.0" - available-typed-arrays@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.2.tgz#6b098ca9d8039079ee3f77f7b783c4480ba513f5" @@ -6562,13 +5138,6 @@ axios@0.27.2: follow-redirects "^1.14.9" form-data "^4.0.0" -axios@^0.21.1: - version "0.21.1" - resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.1.tgz#22563481962f4d6bde9a76d516ef0e5d3c09b2b8" - integrity sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA== - dependencies: - follow-redirects "^1.10.0" - axios@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/axios/-/axios-1.2.2.tgz#72681724c6e6a43a9fea860fc558127dbe32f9f1" @@ -6753,16 +5322,6 @@ babel-jest@^26.6.3: graceful-fs "^4.2.4" slash "^3.0.0" -babel-loader@^8.2.2: - version "8.2.2" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.2.tgz#9363ce84c10c9a40e6c753748e1441b60c8a0b81" - integrity sha512-JvTd0/D889PQBtUXJ2PXaKU/pjZDMtHA9V2ecm+eNRmmBCMR09a+fmpGTNwnJtFmFl5Ei7Vy47LjBb+L0wQ99g== - dependencies: - find-cache-dir "^3.3.1" - loader-utils "^1.4.0" - make-dir "^3.1.0" - schema-utils "^2.6.5" - babel-messages@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" @@ -6770,14 +5329,6 @@ babel-messages@^6.23.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-apply-mdx-type-prop@1.6.22: - version "1.6.22" - resolved "https://registry.yarnpkg.com/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz#d216e8fd0de91de3f1478ef3231e05446bc8705b" - integrity sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ== - dependencies: - "@babel/helper-plugin-utils" "7.10.4" - "@mdx-js/util" "1.6.22" - babel-plugin-check-es2015-constants@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" @@ -6785,13 +5336,6 @@ babel-plugin-check-es2015-constants@^6.22.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-dynamic-import-node@2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz#f00f507bdaa3c3e3ff6e7e5e98d90a7acab96f7f" - integrity sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ== - dependencies: - object.assign "^4.1.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" @@ -6799,13 +5343,6 @@ babel-plugin-dynamic-import-node@^2.3.3: dependencies: object.assign "^4.1.0" -babel-plugin-extract-import-names@1.6.22: - version "1.6.22" - resolved "https://registry.yarnpkg.com/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz#de5f9a28eb12f3eb2578bf74472204e66d1a13dc" - integrity sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ== - dependencies: - "@babel/helper-plugin-utils" "7.10.4" - babel-plugin-istanbul@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz#e159ccdc9af95e0b570c75b4573b7c34d671d765" @@ -6851,16 +5388,6 @@ babel-plugin-polyfill-regenerator@^0.1.2: dependencies: "@babel/helper-define-polyfill-provider" "^0.1.5" -"babel-plugin-styled-components@>= 1": - version "1.12.0" - resolved "https://registry.yarnpkg.com/babel-plugin-styled-components/-/babel-plugin-styled-components-1.12.0.tgz#1dec1676512177de6b827211e9eda5a30db4f9b9" - integrity sha512-FEiD7l5ZABdJPpLssKXjBUJMYqzbcNzBowfXDCdJhOpbhWiewapUaY+LZGT8R4Jg2TwOjGjG4RKeyrO5p9sBkA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-module-imports" "^7.0.0" - babel-plugin-syntax-jsx "^6.18.0" - lodash "^4.17.11" - babel-plugin-syntax-async-functions@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" @@ -6871,11 +5398,6 @@ babel-plugin-syntax-exponentiation-operator@^6.8.0: resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" integrity sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4= -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" - integrity sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY= - babel-plugin-syntax-trailing-function-commas@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" @@ -7286,11 +5808,6 @@ backoff@^2.5.0: dependencies: precond "0.2" -bail@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.5.tgz#b6fa133404a392cbc1f8c4bf63f5953351e7a776" - integrity sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ== - balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" @@ -7303,11 +5820,6 @@ base-x@^3.0.2, base-x@^3.0.8: dependencies: safe-buffer "^5.0.1" -base16@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/base16/-/base16-1.0.0.tgz#e297f60d7ec1014a7a971a39ebc8a98c0b681e70" - integrity sha1-4pf2DX7BAUp6lxo568ipjAtoHnA= - base64-js@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-0.0.8.tgz#1101e9544f4a76b1bc3b26d452ca96d7a35e7978" @@ -7460,7 +5972,7 @@ blakejs@^1.1.0: resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.1.0.tgz#69df92ef953aa88ca51a32df6ab1c54a155fc7a5" integrity sha1-ad+S75U6qIylGjLfarHFShVfx6U= -bluebird@3.7.2, bluebird@^3.4.7, bluebird@^3.5.0, bluebird@^3.5.1, bluebird@^3.5.2, bluebird@^3.5.3, bluebird@^3.5.5, bluebird@^3.7.1: +bluebird@3.7.2, bluebird@^3.4.7, bluebird@^3.5.0, bluebird@^3.5.1, bluebird@^3.5.2, bluebird@^3.5.3, bluebird@^3.5.5: version "3.7.2" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== @@ -7475,11 +5987,6 @@ bn.js@4.11.8: resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" integrity sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== -bn.js@5.1.3: - version "5.1.3" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.1.3.tgz#beca005408f642ebebea80b042b4d18d2ac0ee6b" - integrity sha512-GkTiFpjFtUzU9CbMeJ5iazkCzGL3jrhzerzZIuqLABjbwRaFt33I9tUdSNryIptM+RxDet6OKm2WnLXzW51KsQ== - bn.js@5.2.1, bn.js@^5.0.0, bn.js@^5.1.1, bn.js@^5.1.2, bn.js@^5.1.3, bn.js@^5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" @@ -7506,19 +6013,7 @@ body-parser@1.19.0, body-parser@^1.16.0: raw-body "2.4.0" type-is "~1.6.17" -bonjour@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" - integrity sha1-jokKGD2O6aI5OzhExpGkK897yfU= - dependencies: - array-flatten "^2.1.0" - deep-equal "^1.0.1" - dns-equal "^1.0.0" - dns-txt "^2.0.2" - multicast-dns "^6.0.1" - multicast-dns-service-types "^1.1.0" - -boolbase@^1.0.0, boolbase@~1.0.0: +boolbase@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= @@ -7532,20 +6027,6 @@ borsh@^0.7.0: bs58 "^4.0.0" text-encoding-utf-8 "^1.0.2" -boxen@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/boxen/-/boxen-5.0.0.tgz#64fe9b16066af815f51057adcc800c3730120854" - integrity sha512-5bvsqw+hhgUi3oYGK0Vf4WpIkyemp60WBInn7+WNfoISzAqk/HX4L7WNROq38E6UR/y3YADpv6pEm4BfkeEAdA== - dependencies: - ansi-align "^3.0.0" - camelcase "^6.2.0" - chalk "^4.1.0" - cli-boxes "^2.2.1" - string-width "^4.2.0" - type-fest "^0.20.2" - widest-line "^3.1.0" - wrap-ansi "^7.0.0" - brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -7778,16 +6259,6 @@ browserify@^17.0.0: vm-browserify "^1.0.0" xtend "^4.0.0" -browserslist@4.14.2: - version "4.14.2" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.2.tgz#1b3cec458a1ba87588cc5e9be62f19b6d48813ce" - integrity sha512-HI4lPveGKUR0x2StIz+2FXfDk9SfVMrxn6PLh1JeGUwcuoDkdKZebWiyLRJ68iIPDpMI4JLVDf7S7XzslgWOhw== - dependencies: - caniuse-lite "^1.0.30001125" - electron-to-chromium "^1.3.564" - escalade "^3.0.2" - node-releases "^1.1.61" - browserslist@^3.2.6: version "3.2.8" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-3.2.8.tgz#b0005361d6471f0f5952797a76fc985f1f978fc6" @@ -7796,7 +6267,7 @@ browserslist@^3.2.6: caniuse-lite "^1.0.30000844" electron-to-chromium "^1.3.47" -browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.16.3, browserslist@^4.16.6, browserslist@^4.6.4: +browserslist@^4.16.3, browserslist@^4.16.6: version "4.16.6" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.6.tgz#d7901277a5a88e554ed305b183ec9b0c08f66fa2" integrity sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ== @@ -7847,18 +6318,6 @@ btoa@^1.2.1: resolved "https://registry.yarnpkg.com/btoa/-/btoa-1.2.1.tgz#01a9909f8b2c93f6bf680ba26131eb30f7fa3d73" integrity sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g== -buble@0.19.6: - version "0.19.6" - resolved "https://registry.yarnpkg.com/buble/-/buble-0.19.6.tgz#915909b6bd5b11ee03b1c885ec914a8b974d34d3" - integrity sha512-9kViM6nJA1Q548Jrd06x0geh+BG2ru2+RMDkIHHgJY/8AcyCs34lTHwra9BX7YdPrZXd5aarkpr/SY8bmPgPdg== - dependencies: - chalk "^2.4.1" - magic-string "^0.25.1" - minimist "^1.2.0" - os-homedir "^1.0.1" - regexpu-core "^4.2.0" - vlq "^1.0.0" - buffer-alloc-unsafe@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0" @@ -7897,16 +6356,6 @@ buffer-from@1.x, buffer-from@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== -buffer-indexof@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" - integrity sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g== - -buffer-json@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/buffer-json/-/buffer-json-2.0.0.tgz#f73e13b1e42f196fe2fd67d001c7d7107edd7c23" - integrity sha512-+jjPFVqyfF1esi9fvfUs3NqM0pH1ziZ36VP4hmA/y/Ssfo/5w5xHKfTw9BwQjoJ1w/oVtpLomqwUHKdefGyuHw== - buffer-to-arraybuffer@^0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz#6064a40fa76eb43c723aba9ef8f6e1216d10511a" @@ -7996,11 +6445,6 @@ byte-size@^5.0.1: resolved "https://registry.yarnpkg.com/byte-size/-/byte-size-5.0.1.tgz#4b651039a5ecd96767e71a3d7ed380e48bed4191" integrity sha512-/XuKeqWocKsYa/cBY1YbSJSWWqTi4cFgr9S6OyM7PBaPbr9zvNGwWP33vt0uqGhwDdN+y3yhbXVILEUpnwEWGw== -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= - bytes@3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" @@ -8080,18 +6524,6 @@ cache-base@^1.0.1: union-value "^1.0.0" unset-value "^1.0.0" -cache-loader@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cache-loader/-/cache-loader-4.1.0.tgz#9948cae353aec0a1fcb1eafda2300816ec85387e" - integrity sha512-ftOayxve0PwKzBF/GLsZNC9fJBXl8lkZE3TOsjkboHfVHVkL39iUEs1FO07A33mizmci5Dudt38UZrrYXDtbhw== - dependencies: - buffer-json "^2.0.0" - find-cache-dir "^3.0.0" - loader-utils "^1.2.3" - mkdirp "^0.5.1" - neo-async "^2.6.1" - schema-utils "^2.0.0" - cacheable-request@^6.0.0: version "6.1.0" resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912" @@ -8186,11 +6618,6 @@ camel-case@^3.0.0: no-case "^2.2.0" upper-case "^1.1.1" -camelcase-css@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" - integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== - camelcase-keys@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" @@ -8237,27 +6664,12 @@ camelcase@^5.0.0, camelcase@^5.3.1: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.0.0, camelcase@^6.2.0: +camelcase@^6.0.0: version "6.2.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== -camelize@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/camelize/-/camelize-1.0.0.tgz#164a5483e630fa4321e5af07020e531831b2609b" - integrity sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs= - -caniuse-api@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" - integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== - dependencies: - browserslist "^4.0.0" - caniuse-lite "^1.0.0" - lodash.memoize "^4.1.2" - lodash.uniq "^4.5.0" - -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000844, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001125, caniuse-lite@^1.0.30001196, caniuse-lite@^1.0.30001219: +caniuse-lite@^1.0.30000844, caniuse-lite@^1.0.30001219: version "1.0.30001245" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001245.tgz#45b941bbd833cb0fa53861ff2bae746b3c6ca5d4" integrity sha512-768fM9j1PKXpOCKws6eTo3RHmvTUsG9UrpT4WoREFeZgJBTi4/X9g565azS/rVUGtqb8nt7FjLeF5u4kukERnA== @@ -8301,11 +6713,6 @@ cbor@^5.0.2, cbor@^5.1.0: bignumber.js "^9.0.1" nofilter "^1.0.4" -ccount@^1.0.0, ccount@^1.0.3: - version "1.1.0" - resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.1.0.tgz#246687debb6014735131be8abab2d93898f8d043" - integrity sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg== - chai-bn@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/chai-bn/-/chai-bn-0.2.1.tgz#1dad95e24c3afcd8139ab0262e9bbefff8a30ab7" @@ -8323,15 +6730,6 @@ chai@4.3.4, chai@^4.2.0: pathval "^1.1.1" type-detect "^4.0.5" -chalk@2.4.2, chalk@^2.0.0, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.3.2, chalk@^2.4.1, chalk@^2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - chalk@4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" @@ -8351,6 +6749,15 @@ chalk@^1.0.0, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" +chalk@^2.0.0, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.3.2, chalk@^2.4.1, chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + chalk@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" @@ -8430,21 +6837,6 @@ char-regex@^1.0.2: resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== -character-entities-legacy@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1" - integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA== - -character-entities@^1.0.0: - version "1.2.4" - resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.4.tgz#e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b" - integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw== - -character-reference-invalid@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" - integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== - chardet@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" @@ -8473,28 +6865,6 @@ cheerio-select@^1.5.0: domhandler "^4.3.1" domutils "^2.8.0" -cheerio@^0.22.0: - version "0.22.0" - resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-0.22.0.tgz#a9baa860a3f9b595a6b81b1a86873121ed3a269e" - integrity sha1-qbqoYKP5tZWmuBsahocxIe06Jp4= - dependencies: - css-select "~1.2.0" - dom-serializer "~0.1.0" - entities "~1.1.1" - htmlparser2 "^3.9.1" - lodash.assignin "^4.0.9" - lodash.bind "^4.1.4" - lodash.defaults "^4.0.1" - lodash.filter "^4.4.0" - lodash.flatten "^4.2.0" - lodash.foreach "^4.3.0" - lodash.map "^4.4.0" - lodash.merge "^4.4.0" - lodash.pick "^4.2.1" - lodash.reduce "^4.4.0" - lodash.reject "^4.4.0" - lodash.some "^4.4.0" - cheerio@^1.0.0-rc.2, cheerio@^1.0.0-rc.3: version "1.0.0-rc.10" resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.10.tgz#2ba3dcdfcc26e7956fc1f440e61d51c643379f3e" @@ -8595,11 +6965,6 @@ 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.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.1.1.tgz#9a32fcefdf7bcdb6f0a7e1c0f8098ec57897b80a" - integrity sha512-kdRWLBIJwdsYJWYJFtAFFYxybguqeF91qpZaggjG5Nf8QKdizFG2hjqvaTXbxFIcYbSaD74KpAXv6BSm17DHEQ== - cids@^0.7.1: version "0.7.5" resolved "https://registry.yarnpkg.com/cids/-/cids-0.7.5.tgz#60a08138a99bfb69b6be4ceb63bfef7a396b28b2" @@ -8639,11 +7004,6 @@ class-utils@^0.3.5: isobject "^3.0.0" static-extend "^0.1.1" -classnames@2.2.6, classnames@^2.2.5: - version "2.2.6" - resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce" - integrity sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q== - clean-css@^4.1.6, clean-css@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz#507b5de7d97b48ee53d84adb0160ff6216380f78" @@ -8651,23 +7011,11 @@ clean-css@^4.1.6, clean-css@^4.2.3: dependencies: source-map "~0.6.0" -clean-css@^5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.1.2.tgz#6ea0da7286b4ddc2469a1b776e2461a5007eed54" - integrity sha512-QcaGg9OuMo+0Ds933yLOY+gHPWbxhxqF0HDexmToPf8pczvmvZGYzd+QqWp9/mkucAOKViI+dSFOqoZIvXbeBw== - 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" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== -cli-boxes@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" - integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== - cli-cursor@^2.0.0, cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" @@ -8682,7 +7030,7 @@ cli-cursor@^3.1.0: dependencies: restore-cursor "^3.1.0" -cli-spinners@^2.2.0, cli-spinners@^2.5.0: +cli-spinners@^2.5.0: version "2.6.1" resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.6.1.tgz#adc954ebe281c37a6319bfa401e6dd2488ffb70d" integrity sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g== @@ -8784,25 +7132,11 @@ clone@^1.0.2, clone@^1.0.4: resolved "https://registry.yarnpkg.com/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" - integrity sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA== - 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= -coa@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.2.tgz#43f6c21151b4ef2bf57187db0d73de229e3e7ec3" - integrity sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA== - dependencies: - "@types/q" "^1.5.1" - chalk "^2.4.1" - q "^1.1.2" - code-block-writer@^7.2.0: version "7.3.1" resolved "https://registry.yarnpkg.com/code-block-writer/-/code-block-writer-7.3.1.tgz#b3b921b885fe7fb869866c0648491eae6c08cfa9" @@ -8813,11 +7147,6 @@ code-point-at@^1.0.0: resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= -collapse-white-space@^1.0.2: - version "1.0.6" - resolved "https://registry.yarnpkg.com/collapse-white-space/-/collapse-white-space-1.0.6.tgz#e63629c0016665792060dbbeb79c42239d2c5287" - integrity sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ== - 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" @@ -8831,7 +7160,7 @@ collection-visit@^1.0.0: map-visit "^1.0.0" object-visit "^1.0.0" -color-convert@^1.9.0, color-convert@^1.9.1: +color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== @@ -8850,33 +7179,17 @@ color-name@1.1.3: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= -color-name@^1.0.0, color-name@~1.1.4: +color-name@~1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -color-string@^1.5.4: - version "1.5.5" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.5.tgz#65474a8f0e7439625f3d27a6a19d89fc45223014" - integrity sha512-jgIoum0OfQfq9Whcfc2z/VhCNcmQjWbey6qBX0vqt7YICflUmBCh9E9CiQD5GSJ+Uehixm3NUwHVhqUAWRivZg== - dependencies: - color-name "^1.0.0" - simple-swizzle "^0.2.2" - color-support@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== -color@^3.0.0: - version "3.1.3" - resolved "https://registry.yarnpkg.com/color/-/color-3.1.3.tgz#ca67fb4e7b97d611dcde39eceed422067d91596e" - integrity sha512-xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ== - dependencies: - color-convert "^1.9.1" - color-string "^1.5.4" - -colorette@^1.2.1, colorette@^1.2.2: +colorette@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94" integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w== @@ -8911,11 +7224,6 @@ combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: dependencies: delayed-stream "~1.0.0" -comma-separated-tokens@^1.0.0: - version "1.0.8" - resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz#632b80b6117867a158f1080ad498b2fbe7e3f5ea" - integrity sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw== - command-exists@^1.2.8: version "1.2.9" resolved "https://registry.yarnpkg.com/command-exists/-/command-exists-1.2.9.tgz#c50725af3808c8ab0260fd60b01fbfa25b954f69" @@ -8945,7 +7253,7 @@ commander@3.0.2, commander@^3.0.2: resolved "https://registry.yarnpkg.com/commander/-/commander-3.0.2.tgz#6837c3fb677ad9933d1cfba42dd14d5117d6b39e" integrity sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow== -commander@^2.15.1, commander@^2.20.0, commander@^2.8.1, commander@^2.9.0: +commander@^2.20.0, commander@^2.8.1, commander@^2.9.0: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== @@ -8955,11 +7263,6 @@ commander@^4.1.1: resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== -commander@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae" - integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== - commander@^6.2.0: version "6.2.1" resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" @@ -8993,36 +7296,6 @@ component-emitter@^1.2.1, component-emitter@^1.3.0: resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== -component-props@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/component-props/-/component-props-1.1.1.tgz#f9b7df9b9927b6e6d97c9bd272aa867670f34944" - integrity sha1-+bffm5kntubZfJvScqqGdnDzSUQ= - -component-xor@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/component-xor/-/component-xor-0.0.4.tgz#c55d83ccc1b94cd5089a4e93fa7891c7263e59aa" - integrity sha1-xV2DzMG5TNUImk6T+niRxyY+Wao= - -compressible@~2.0.16: - version "2.0.18" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" - integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== - dependencies: - mime-db ">= 1.43.0 < 2" - -compression@^1.7.4: - version "1.7.4" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" - integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== - dependencies: - accepts "~1.3.5" - bytes "3.0.0" - compressible "~2.0.16" - debug "2.6.9" - on-headers "~1.0.2" - safe-buffer "5.1.2" - vary "~1.1.2" - concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" @@ -9056,23 +7329,6 @@ config-chain@^1.1.11: ini "^1.3.4" proto-list "~1.2.1" -configstore@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/configstore/-/configstore-5.0.1.tgz#d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96" - integrity sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA== - dependencies: - dot-prop "^5.2.0" - graceful-fs "^4.1.2" - make-dir "^3.0.0" - unique-string "^2.0.0" - write-file-atomic "^3.0.0" - xdg-basedir "^4.0.0" - -connect-history-api-fallback@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" - integrity sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg== - connect@^3.6.6: version "3.7.0" resolved "https://registry.yarnpkg.com/connect/-/connect-3.7.0.tgz#5d49348910caa5e07a01800b030d0c35f20484f8" @@ -9083,11 +7339,6 @@ connect@^3.6.6: parseurl "~1.3.3" utils-merge "1.0.1" -consola@^2.15.0: - version "2.15.3" - resolved "https://registry.yarnpkg.com/consola/-/consola-2.15.3.tgz#2e11f98d6a4be71ff72e0bdf07bd23e12cb61550" - integrity sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw== - console-browserify@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" @@ -9125,11 +7376,6 @@ contains-path@^0.1.0: resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= -content-disposition@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" - integrity sha1-DPaLud318r55YcOoUXjLhdunjLQ= - content-disposition@0.5.3: version "0.5.3" resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" @@ -9283,29 +7529,7 @@ copy-descriptor@^0.1.0: resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= -copy-text-to-clipboard@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/copy-text-to-clipboard/-/copy-text-to-clipboard-3.0.1.tgz#8cbf8f90e0a47f12e4a24743736265d157bce69c" - integrity sha512-rvVsHrpFcL4F2P8ihsoLdFHmd404+CMg71S756oRSeQgqk51U3kicGdnvfkrxva0xXH92SjGS62B0XIJsbh+9Q== - -copy-webpack-plugin@^6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-6.4.1.tgz#138cd9b436dbca0a6d071720d5414848992ec47e" - integrity sha512-MXyPCjdPVx5iiWyl40Va3JGh27bKzOTNY3NjUTrosD2q7dR/cLD0013uqJ3BpFbUjyONINjb6qI7nDIJujrMbA== - dependencies: - cacache "^15.0.5" - fast-glob "^3.2.4" - find-cache-dir "^3.3.1" - glob-parent "^5.1.1" - globby "^11.0.1" - loader-utils "^2.0.0" - normalize-path "^3.0.0" - p-limit "^3.0.2" - schema-utils "^3.0.0" - serialize-javascript "^5.0.1" - webpack-sources "^1.4.3" - -core-js-compat@^3.8.1, core-js-compat@^3.9.0: +core-js-compat@^3.8.1: version "3.9.1" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.9.1.tgz#4e572acfe90aff69d76d8c37759d21a5c59bb455" integrity sha512-jXAirMQxrkbiiLsCx9bQPJFA6llDadKMpYrBJQJ3/c4/vsPP/fAf29h24tviRlvwUL6AmY5CHLu2GvjuYviQqA== @@ -9313,26 +7537,16 @@ core-js-compat@^3.8.1, core-js-compat@^3.9.0: browserslist "^4.16.3" semver "7.0.0" -core-js-pure@^3.0.0, core-js-pure@^3.0.1: +core-js-pure@^3.0.1: version "3.15.2" resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.15.2.tgz#c8e0874822705f3385d3197af9348f7c9ae2e3ce" integrity sha512-D42L7RYh1J2grW8ttxoY1+17Y4wXZeKe7uyplAI3FkNQyI5OgBIAjUfFiTPfL1rs0qLpxaabITNbjKl1Sp82tA== -core-js@3.6.5: - version "3.6.5" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.6.5.tgz#7395dc273af37fb2e50e9bd3d9fe841285231d1a" - integrity sha512-vZVEEwZoIsI+vPEuoF9Iqf5H7/M3eeQqWlQnYa8FSKKePuYTf5MWnxb5SDAzCa60b3JBRS5g9b+Dq7b1y/RCrA== - -core-js@^2.4.0, core-js@^2.4.1, core-js@^2.5.0: +core-js@^2.4.0, core-js@^2.5.0: version "2.6.12" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== -core-js@^3.9.1: - version "3.9.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.9.1.tgz#cec8de593db8eb2a85ffb0dbdeb312cb6e5460ae" - integrity sha512-gSjRvzkxQc1zjM/5paAmL4idJBFzuJoo+jDjF1tStYFMV2ERfD02HhahhCGXUyHxQRG4yFKVSdO6g62eoRMcDg== - core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" @@ -9364,7 +7578,7 @@ cosmiconfig@7.0.0, cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" -cosmiconfig@^5.0.0, cosmiconfig@^5.0.7, cosmiconfig@^5.1.0, cosmiconfig@^5.2.1: +cosmiconfig@^5.0.7, cosmiconfig@^5.1.0, cosmiconfig@^5.2.1: version "5.2.1" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== @@ -9476,15 +7690,6 @@ cross-fetch@^2.1.0, cross-fetch@^2.1.1: node-fetch "^2.6.7" whatwg-fetch "^2.0.4" -cross-spawn@7.0.3, cross-spawn@^7.0.0, cross-spawn@^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" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - cross-spawn@^5.0.1: version "5.1.0" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" @@ -9505,6 +7710,15 @@ cross-spawn@^6.0.0, cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" +cross-spawn@^7.0.0, cross-spawn@^7.0.1, cross-spawn@^7.0.2: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + crypto-addr-codec@^0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/crypto-addr-codec/-/crypto-addr-codec-0.1.7.tgz#e16cea892730178fe25a38f6d15b680cab3124ae" @@ -9540,89 +7754,11 @@ crypto-js@^3.1.9-1: resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.3.0.tgz#846dd1cce2f68aacfa156c8578f926a609b7976b" integrity sha512-DIT51nX0dCfKltpRiXV+/TVZq+Qq2NgF4644+K7Ttnla7zEzqc+kjJyiB96BHNyUTBxyjzRcZYpUdZa+QAqi6Q== -crypto-random-string@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" - integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== - css-b64-images@~0.2.5: version "0.2.5" resolved "https://registry.yarnpkg.com/css-b64-images/-/css-b64-images-0.2.5.tgz#42005d83204b2b4a5d93b6b1a5644133b5927a02" integrity sha1-QgBdgyBLK0pdk7axpWRBM7WSegI= -css-blank-pseudo@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz#dfdefd3254bf8a82027993674ccf35483bfcb3c5" - integrity sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w== - dependencies: - postcss "^7.0.5" - -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" - integrity sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU= - -css-color-names@0.0.4, css-color-names@^0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" - integrity sha1-gIrcLnnPhHOAabZGyyDsJ762KeA= - -css-declaration-sorter@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz#c198940f63a76d7e36c1e71018b001721054cb22" - integrity sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA== - dependencies: - postcss "^7.0.1" - timsort "^0.3.0" - -css-has-pseudo@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz#3c642ab34ca242c59c41a125df9105841f6966ee" - integrity sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ== - dependencies: - postcss "^7.0.6" - postcss-selector-parser "^5.0.0-rc.4" - -css-loader@^5.1.1: - version "5.2.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-5.2.0.tgz#a9ecda190500863673ce4434033710404efbff00" - integrity sha512-MfRo2MjEeLXMlUkeUwN71Vx5oc6EJnx5UQ4Yi9iUtYQvrPtwLUucYptz0hc6n++kdNcyF5olYBS4vPjJDAcLkw== - dependencies: - camelcase "^6.2.0" - cssesc "^3.0.0" - icss-utils "^5.1.0" - loader-utils "^2.0.0" - postcss "^8.2.8" - postcss-modules-extract-imports "^3.0.0" - postcss-modules-local-by-default "^4.0.0" - postcss-modules-scope "^3.0.0" - postcss-modules-values "^4.0.0" - postcss-value-parser "^4.1.0" - schema-utils "^3.0.0" - semver "^7.3.4" - -css-prefers-color-scheme@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz#6f830a2714199d4f0d0d0bb8a27916ed65cff1f4" - integrity sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg== - dependencies: - postcss "^7.0.5" - -css-select-base-adapter@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" - integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== - -css-select@^2.0.0, css-select@^2.0.2: - version "2.1.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-2.1.0.tgz#6a34653356635934a81baca68d0255432105dbef" - integrity sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ== - dependencies: - boolbase "^1.0.0" - css-what "^3.2.1" - domutils "^1.7.0" - nth-check "^1.0.2" - css-select@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b" @@ -9634,158 +7770,11 @@ css-select@^4.3.0: domutils "^2.8.0" nth-check "^2.0.1" -css-select@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" - integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= - dependencies: - boolbase "~1.0.0" - css-what "2.1" - domutils "1.5.1" - nth-check "~1.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" - integrity sha512-Ro1yETZA813eoyUp2GDBhG2j+YggidUmzO1/v9eYBKR2EHVEniE2MI/NqpTQ954BMpTPZFsGNPm46qFB9dpaPQ== - dependencies: - camelize "^1.0.0" - css-color-keywords "^1.0.0" - postcss-value-parser "^4.0.2" - -css-tree@1.0.0-alpha.37: - version "1.0.0-alpha.37" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.37.tgz#98bebd62c4c1d9f960ec340cf9f7522e30709a22" - integrity sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg== - dependencies: - mdn-data "2.0.4" - source-map "^0.6.1" - -css-tree@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.2.tgz#9ae393b5dafd7dae8a622475caec78d3d8fbd7b5" - integrity sha512-wCoWush5Aeo48GLhfHPbmvZs59Z+M7k5+B1xDnXbdWNcEF423DoFdqSWE0PM5aNk5nI5cp1q7ms36zGApY/sKQ== - dependencies: - mdn-data "2.0.14" - source-map "^0.6.1" - -css-what@2.1: - version "2.1.3" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz#a6d7604573365fe74686c3f311c56513d88285f2" - integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg== - -css-what@^3.2.1: - version "3.4.2" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.2.tgz#ea7026fcb01777edbde52124e21f327e7ae950e4" - integrity sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ== - css-what@^6.0.1: version "6.1.0" resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== -cssdb@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-4.4.0.tgz#3bf2f2a68c10f5c6a08abd92378331ee803cddb0" - integrity sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ== - -cssesc@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-2.0.0.tgz#3b13bd1bb1cb36e1bcb5a4dcd27f54c5dcb35703" - integrity sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg== - -cssesc@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" - integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== - -cssnano-preset-advanced@^4.0.7: - version "4.0.7" - resolved "https://registry.yarnpkg.com/cssnano-preset-advanced/-/cssnano-preset-advanced-4.0.7.tgz#d981527b77712e2f3f3f09c73313e9b71b278b88" - integrity sha512-j1O5/DQnaAqEyFFQfC+Z/vRlLXL3LxJHN+lvsfYqr7KgPH74t69+Rsy2yXkovWNaJjZYBpdz2Fj8ab2nH7pZXw== - dependencies: - autoprefixer "^9.4.7" - cssnano-preset-default "^4.0.7" - postcss-discard-unused "^4.0.1" - postcss-merge-idents "^4.0.1" - postcss-reduce-idents "^4.0.2" - postcss-zindex "^4.0.1" - -cssnano-preset-default@^4.0.7: - version "4.0.7" - resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-4.0.7.tgz#51ec662ccfca0f88b396dcd9679cdb931be17f76" - integrity sha512-x0YHHx2h6p0fCl1zY9L9roD7rnlltugGu7zXSKQx6k2rYw0Hi3IqxcoAGF7u9Q5w1nt7vK0ulxV8Lo+EvllGsA== - dependencies: - css-declaration-sorter "^4.0.1" - cssnano-util-raw-cache "^4.0.1" - postcss "^7.0.0" - postcss-calc "^7.0.1" - postcss-colormin "^4.0.3" - postcss-convert-values "^4.0.1" - postcss-discard-comments "^4.0.2" - postcss-discard-duplicates "^4.0.2" - postcss-discard-empty "^4.0.1" - postcss-discard-overridden "^4.0.1" - postcss-merge-longhand "^4.0.11" - postcss-merge-rules "^4.0.3" - postcss-minify-font-values "^4.0.2" - postcss-minify-gradients "^4.0.2" - postcss-minify-params "^4.0.2" - postcss-minify-selectors "^4.0.2" - postcss-normalize-charset "^4.0.1" - postcss-normalize-display-values "^4.0.2" - postcss-normalize-positions "^4.0.2" - postcss-normalize-repeat-style "^4.0.2" - postcss-normalize-string "^4.0.2" - postcss-normalize-timing-functions "^4.0.2" - postcss-normalize-unicode "^4.0.1" - postcss-normalize-url "^4.0.1" - postcss-normalize-whitespace "^4.0.2" - postcss-ordered-values "^4.1.2" - postcss-reduce-initial "^4.0.3" - postcss-reduce-transforms "^4.0.2" - postcss-svgo "^4.0.2" - postcss-unique-selectors "^4.0.1" - -cssnano-util-get-arguments@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz#ed3a08299f21d75741b20f3b81f194ed49cc150f" - integrity sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8= - -cssnano-util-get-match@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz#c0e4ca07f5386bb17ec5e52250b4f5961365156d" - integrity sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0= - -cssnano-util-raw-cache@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz#b26d5fd5f72a11dfe7a7846fb4c67260f96bf282" - integrity sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA== - dependencies: - postcss "^7.0.0" - -cssnano-util-same-parent@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz#574082fb2859d2db433855835d9a8456ea18bbf3" - integrity sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q== - -cssnano@^4.1.10: - version "4.1.10" - resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-4.1.10.tgz#0ac41f0b13d13d465487e111b778d42da631b8b2" - integrity sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ== - dependencies: - cosmiconfig "^5.0.0" - cssnano-preset-default "^4.0.7" - is-resolvable "^1.0.0" - postcss "^7.0.0" - -csso@^4.0.2: - version "4.2.0" - resolved "https://registry.yarnpkg.com/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" @@ -9803,11 +7792,6 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" -csstype@^3.0.2: - version "3.0.7" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.7.tgz#2a5fb75e1015e84dd15692f71e89a1450290950b" - integrity sha512-KxnUB0ZMlnUWCsx2Z8MUsr6qV6ja1w9ArPErJaJaF8a5SOWoHLIszeCTKGRGRgtLgYrs1E8CHkNSP1VZTTPc9g== - currently-unhandled@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" @@ -9884,7 +7868,7 @@ debounce@^1.2.0: resolved "https://registry.yarnpkg.com/debounce/-/debounce-1.2.1.tgz#38881d8f4166a5c5848020c11827b834bcb3e0a5" integrity sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug== -debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.8, debug@^2.6.9: +debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== @@ -9912,7 +7896,7 @@ debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.2.0, debug@^4.3.1, d dependencies: ms "2.1.2" -debug@^3.1.0, debug@^3.1.1, debug@^3.2.6: +debug@^3.1.0: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== @@ -10026,7 +8010,7 @@ deep-eql@^3.0.1: dependencies: type-detect "^4.0.0" -deep-equal@^1.0.0, deep-equal@^1.0.1, deep-equal@~1.1.1: +deep-equal@^1.0.0, deep-equal@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz#b5c98c942ceffaf7cb051e24e1434a25a2e6076a" integrity sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g== @@ -10053,14 +8037,6 @@ deepmerge@^4.2.2: resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== -default-gateway@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-4.2.0.tgz#167104c7500c2115f6dd69b0a536bb8ed720552b" - integrity sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA== - dependencies: - execa "^1.0.0" - ip-regex "^2.1.0" - default-require-extensions@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-3.0.0.tgz#e03f93aac9b2b6443fc52e5e4a37b3ad9ad8df96" @@ -10137,33 +8113,6 @@ defined@^1.0.0, defined@~1.0.0: resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" integrity sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM= -del@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz#9e8f117222ea44a31ff3a156c049b99052a9f0b4" - integrity sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ== - dependencies: - "@types/glob" "^7.1.1" - globby "^6.1.0" - is-path-cwd "^2.0.0" - is-path-in-cwd "^2.0.0" - p-map "^2.0.0" - pify "^4.0.1" - rimraf "^2.6.3" - -del@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/del/-/del-6.0.0.tgz#0b40d0332cea743f1614f818be4feb717714c952" - integrity sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ== - dependencies: - globby "^11.0.1" - graceful-fs "^4.2.4" - is-glob "^4.0.1" - is-path-cwd "^2.2.0" - is-path-inside "^3.0.2" - p-map "^4.0.0" - rimraf "^3.0.2" - slash "^3.0.0" - delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -10217,13 +8166,6 @@ destroy@~1.0.4: resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= -detab@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/detab/-/detab-2.0.4.tgz#b927892069aff405fbb9a186fe97a44a92a94b43" - integrity sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g== - dependencies: - repeat-string "^1.5.4" - detect-file@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" @@ -10251,27 +8193,6 @@ detect-newline@^3.0.0: resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== -detect-node@^2.0.4: - version "2.0.5" - resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.5.tgz#9d270aa7eaa5af0b72c4c9d9b814e7f4ce738b79" - integrity sha512-qi86tE6hRcFHy8jI1m2VG+LaPUR1LhqDa5G8tVjuUXmOrpuAgqsA1pN0+ldgr3aKUH+QLI9hCY/OcRYisERejw== - -detect-port-alt@1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/detect-port-alt/-/detect-port-alt-1.1.6.tgz#24707deabe932d4a3cf621302027c2b266568275" - integrity sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q== - dependencies: - address "^1.0.1" - debug "^2.6.0" - -detect-port@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/detect-port/-/detect-port-1.3.0.tgz#d9c40e9accadd4df5cac6a782aefd014d573d1f1" - integrity sha512-E+B1gzkl2gqxt1IhUzwjrxBKRqx1UzC3WLONHinn8S3T6lwV/agVCyitiFOsGJ/eYuEUBvD71MZHy3Pv1G9doQ== - dependencies: - address "^1.0.1" - debug "^2.6.0" - detective@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/detective/-/detective-5.2.0.tgz#feb2a77e85b904ecdea459ad897cc90a99bd2a7b" @@ -10350,26 +8271,6 @@ dir-glob@^3.0.1: dependencies: path-type "^4.0.0" -dns-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" - integrity sha1-s55/HabrCnW6nBcySzR1PEfgZU0= - -dns-packet@^1.3.1: - version "1.3.4" - resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.4.tgz#e3455065824a2507ba886c55a89963bb107dec6f" - integrity sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA== - dependencies: - ip "^1.1.0" - safe-buffer "^5.0.1" - -dns-txt@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" - integrity sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY= - dependencies: - buffer-indexof "^1.0.0" - doctrine@1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" @@ -10385,36 +8286,6 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" -docusaurus-plugin-typedoc@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/docusaurus-plugin-typedoc/-/docusaurus-plugin-typedoc-0.2.0.tgz#ddb703eedbd53495a03528b5ba6468d16e5736d7" - integrity sha512-i50Lsn08eXxdfGFH0Ldbxm0ZpHJzum03nk49JhOcdi2O0qe8vP2MxptG+dLYYWu8jG71a1S/sEifPLa7POjFyQ== - dependencies: - fs-extra "^9.0.1" - -dom-converter@^0.2: - version "0.2.0" - resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" - integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== - dependencies: - utila "~0.4" - -dom-iterator@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dom-iterator/-/dom-iterator-1.0.0.tgz#9c09899846ec41c2d257adc4d6015e4759ef05ad" - integrity sha512-7dsMOQI07EMU98gQM8NSB3GsAiIeBYIPKpnxR3c9xOvdvBjChAcOM0iJ222I3p5xyiZO9e5oggkNaCusuTdYig== - dependencies: - component-props "1.1.1" - component-xor "0.0.4" - -dom-serializer@0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" - integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g== - dependencies: - domelementtype "^2.0.1" - entities "^2.0.0" - dom-serializer@^1.0.1, dom-serializer@^1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91" @@ -10424,14 +8295,6 @@ dom-serializer@^1.0.1, dom-serializer@^1.3.2: domhandler "^4.2.0" entities "^2.0.0" -dom-serializer@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0" - integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA== - dependencies: - domelementtype "^1.3.0" - entities "^1.1.1" - dom-walk@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84" @@ -10442,11 +8305,6 @@ domain-browser@^1.1.1, domain-browser@^1.2.0: resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== -domelementtype@1, domelementtype@^1.3.0, domelementtype@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" - integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== - domelementtype@^2.0.1, domelementtype@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" @@ -10459,13 +8317,6 @@ domexception@^2.0.1: dependencies: webidl-conversions "^5.0.0" -domhandler@^2.3.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" - integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA== - dependencies: - domelementtype "1" - domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" @@ -10473,22 +8324,6 @@ domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1: dependencies: domelementtype "^2.2.0" -domutils@1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= - dependencies: - dom-serializer "0" - domelementtype "1" - -domutils@^1.5.1, domutils@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" - integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== - dependencies: - dom-serializer "0" - domelementtype "1" - domutils@^2.5.2, domutils@^2.8.0: version "2.8.0" resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" @@ -10520,7 +8355,7 @@ dot-prop@^4.2.0: dependencies: is-obj "^1.0.0" -dot-prop@^5.1.0, dot-prop@^5.2.0: +dot-prop@^5.1.0: version "5.3.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== @@ -10649,7 +8484,7 @@ eip1559-fee-suggestions-ethers@1.3.3: ethers "^5.4.2" moving-averages "^4.0.6" -electron-to-chromium@^1.3.47, electron-to-chromium@^1.3.564, electron-to-chromium@^1.3.723: +electron-to-chromium@^1.3.47, electron-to-chromium@^1.3.723: version "1.3.778" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.778.tgz#bf01048736c95b78f2988e88005e0ebb385942a4" integrity sha512-Lw04qJaPtWdq0d7qKHJTgkam+FhFi3hm/scf1EyqJWdjO3ZIGUJhNmZJRXWb7yb/bRYXQyVGSpa9RqVpjjWMQw== @@ -10700,11 +8535,6 @@ emittery@^0.7.1: resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.7.2.tgz#25595908e13af0f5674ab419396e2fb394cdfa82" integrity sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ== -"emoji-regex@>=6.0.0 <=6.1.1": - version "6.1.1" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.1.1.tgz#c6cd0ec1b0642e2a3c67a1137efc5e796da4f88e" - integrity sha1-xs0OwbBkLio8Z6ETfvxeeW2k+I4= - emoji-regex@^10.0.0: version "10.1.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-10.1.0.tgz#d50e383743c0f7a5945c47087295afc112e3cf66" @@ -10725,11 +8555,6 @@ emojis-list@^3.0.0: resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== -emoticon@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/emoticon/-/emoticon-3.2.0.tgz#c008ca7d7620fac742fe1bf4af8ff8fed154ae7f" - integrity sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg== - encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" @@ -10770,7 +8595,7 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0: dependencies: once "^1.4.0" -enhanced-resolve@^4.0.0, enhanced-resolve@^4.1.1, enhanced-resolve@^4.3.0, enhanced-resolve@^4.5.0: +enhanced-resolve@^4.0.0, enhanced-resolve@^4.1.1, enhanced-resolve@^4.3.0: version "4.5.0" resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz#2f3cfd84dbe3b487f18f2db2ef1e064a571ca5ec" integrity sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg== @@ -10786,11 +8611,6 @@ enquirer@^2.3.0, enquirer@^2.3.5, enquirer@^2.3.6: dependencies: ansi-colors "^4.1.1" -entities@^1.1.1, entities@~1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" - integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== - entities@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" @@ -10844,7 +8664,7 @@ error-polyfill@^0.1.3: o3 "^1.0.3" u3 "^0.1.1" -es-abstract@^1.17.2, es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2: +es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2: version "1.18.0" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0.tgz#ab80b359eecb7ede4c298000390bc5ac3ec7b5a4" integrity sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw== @@ -10954,17 +8774,12 @@ es6-symbol@^3.1.1, es6-symbol@~3.1.1, es6-symbol@~3.1.3: d "^1.0.1" ext "^1.1.2" -escalade@^3.0.2, escalade@^3.1.1: +escalade@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== -escape-goat@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/escape-goat/-/escape-goat-2.1.1.tgz#1b2dc77003676c457ec760b2dc68edb648188675" - integrity sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q== - -escape-html@^1.0.3, escape-html@~1.0.3: +escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= @@ -10974,7 +8789,7 @@ escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1 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, escape-string-regexp@^2.0.0: +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== @@ -11296,11 +9111,6 @@ esutils@~1.0.0: resolved "https://registry.yarnpkg.com/esutils/-/esutils-1.0.0.tgz#8151d358e20c8acc7fb745e7472c0025fe496570" integrity sha1-gVHTWOIMisx/t0XnRywAJf5JZXA= -eta@^1.12.1: - version "1.12.1" - resolved "https://registry.yarnpkg.com/eta/-/eta-1.12.1.tgz#d985766591676c323f02dfc48a67539212745937" - integrity sha512-H8npoci2J/7XiPnVcCVulBSPsTNGvGaINyMjQDU8AFqp9LGsEYS88g2CiU+d01Sg44WtX7o4nb8wUJ9vnI+tiA== - etag@~1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" @@ -11908,13 +9718,6 @@ ethjs-util@0.1.6, ethjs-util@^0.1.3: is-hex-prefixed "1.0.0" strip-hex-prefix "1.0.0" -eval@^0.1.4: - version "0.1.6" - resolved "https://registry.yarnpkg.com/eval/-/eval-0.1.6.tgz#9620d7d8c85515e97e6b47c5814f46ae381cb3cc" - integrity sha512-o0XUw+5OGkXw4pJZzQoXUk+H87DHuC+7ZE//oSrRGtatTmr12oTnLfg6QOq9DyTt0c/p4TwzgmkKrBzWTSizyQ== - dependencies: - require-like ">= 0.1.1" - event-emitter@~0.3.5: version "0.3.5" resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" @@ -11966,11 +9769,6 @@ events@^3.0.0: resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== -eventsource@^1.0.7: - version "1.1.2" - resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-1.1.2.tgz#bc75ae1c60209e7cb1541231980460343eaea7c2" - integrity sha512-xAH3zWhgO2/3KIniEKYPr8plNSzlGINOUqYj0m0u7AB81iRw8b/3E73W6AuU+6klLbaSFmZnaETQ2lXPfAydrA== - evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" @@ -12025,21 +9823,6 @@ execa@^4.0.0, execa@^4.1.0: signal-exit "^3.0.2" strip-final-newline "^2.0.0" -execa@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-5.0.0.tgz#4029b0007998a841fbd1032e5f4de86a3c1e3376" - integrity sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ== - dependencies: - cross-spawn "^7.0.3" - get-stream "^6.0.0" - human-signals "^2.1.0" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.1" - onetime "^5.1.2" - signal-exit "^3.0.3" - strip-final-newline "^2.0.0" - exit-on-epipe@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz#0bdd92e87d5285d267daa8171d0eb06159689692" @@ -12164,7 +9947,7 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@^3.0.0, extend@~3.0.2: +extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -12270,7 +10053,7 @@ fast-glob@^2.0.2, fast-glob@^2.2.6: merge2 "^1.2.3" micromatch "^3.1.10" -fast-glob@^3.1.1, fast-glob@^3.2.4: +fast-glob@^3.1.1: version "3.2.5" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.5.tgz#7939af2a656de79a4f1901903ee8adcaa7cb9661" integrity sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg== @@ -12297,13 +10080,6 @@ fast-safe-stringify@^2.0.6, fast-safe-stringify@^2.0.7: resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz#124aa885899261f68aedb42a7c080de9da608743" integrity sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA== -fast-url-parser@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/fast-url-parser/-/fast-url-parser-1.1.3.tgz#f4af3ea9f34d8a271cf58ad2b3759f431f0b318d" - integrity sha1-9K8+qfNNiicc9YrSs3WfQx8LMY0= - dependencies: - punycode "^1.3.2" - fastq@^1.6.0: version "1.11.0" resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.11.0.tgz#bb9fb955a07130a918eb63c1f5161cc32a5d0858" @@ -12311,7 +10087,7 @@ fastq@^1.6.0: dependencies: reusify "^1.0.4" -faye-websocket@0.11.x, faye-websocket@^0.11.3: +faye-websocket@0.11.x: version "0.11.3" resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.3.tgz#5c0e9a8968e8912c286639fde977a8b209f2508e" integrity sha512-D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA== @@ -12325,13 +10101,6 @@ fb-watchman@^2.0.0: dependencies: bser "2.1.1" -fbemitter@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/fbemitter/-/fbemitter-3.0.0.tgz#00b2a1af5411254aab416cd75f9e6289bee4bff3" - integrity sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw== - dependencies: - fbjs "^3.0.0" - fbjs-css-vars@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz#216551136ae02fe255932c3ec8775f18e2c078b8" @@ -12357,13 +10126,6 @@ fd-slicer@~1.1.0: dependencies: pend "~1.2.0" -feed@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/feed/-/feed-4.2.2.tgz#865783ef6ed12579e2c44bbef3c9113bc4956a7e" - integrity sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ== - dependencies: - xml-js "^1.6.11" - fetch-ponyfill@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/fetch-ponyfill/-/fetch-ponyfill-4.1.0.tgz#ae3ce5f732c645eab87e4ae8793414709b239893" @@ -12412,14 +10174,6 @@ file-entry-cache@^6.0.1: 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" - integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== - dependencies: - loader-utils "^2.0.0" - schema-utils "^3.0.0" - file-type@^3.8.0: version "3.9.0" resolved "https://registry.yarnpkg.com/file-type/-/file-type-3.9.0.tgz#257a078384d1db8087bc449d107d52a52672b9e9" @@ -12445,7 +10199,7 @@ filename-regex@^2.0.0: resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" integrity sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY= -filesize@6.1.0, filesize@^6.1.0: +filesize@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/filesize/-/filesize-6.1.0.tgz#e81bdaa780e2451d714d71c0d7a4f3238d37ad00" integrity sha512-LpCHtPQ3sFx67z+uh2HnSyWSLLu5Jxo21795uRDuar/EOuYWXib5EmPaGIBuSnRqH2IODiKA2k5re/K9OnN/Yg== @@ -12505,7 +10259,7 @@ find-cache-dir@^2.1.0: make-dir "^2.0.0" pkg-dir "^3.0.0" -find-cache-dir@^3.0.0, find-cache-dir@^3.2.0, find-cache-dir@^3.3.1: +find-cache-dir@^3.2.0, find-cache-dir@^3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880" integrity sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ== @@ -12534,14 +10288,6 @@ find-up@3.0.0, find-up@^3.0.0: dependencies: locate-path "^3.0.0" -find-up@4.1.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" - integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== - dependencies: - locate-path "^5.0.0" - path-exists "^4.0.0" - find-up@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" @@ -12557,6 +10303,14 @@ find-up@^2.0.0, find-up@^2.1.0: 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" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + find-yarn-workspace-root@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/find-yarn-workspace-root/-/find-yarn-workspace-root-1.2.1.tgz#40eb8e6e7c2502ddfaa2577c176f221422f860db" @@ -12621,11 +10375,6 @@ flatted@^3.1.0: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.1.tgz#c4b489e80096d9df1dfc97c79871aea7c617c469" integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA== -flatten@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.3.tgz#c1283ac9f27b368abc1e36d1ff7b04501a30356b" - integrity sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg== - flow-stoplight@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/flow-stoplight/-/flow-stoplight-1.0.0.tgz#4a292c5bcff8b39fa6cc0cb1a853d86f27eeff7b" @@ -12639,15 +10388,7 @@ flush-write-stream@^1.0.0: inherits "^2.0.3" readable-stream "^2.3.6" -flux@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/flux/-/flux-4.0.1.tgz#7843502b02841d4aaa534af0b373034a1f75ee5c" - integrity sha512-emk4RCvJ8RzNP2lNpphKnG7r18q8elDYNAPx7xn+bDeOIo9FFfxEfIQ2y6YbQNmnsGD3nH1noxtLE64Puz1bRQ== - dependencies: - fbemitter "^3.0.0" - fbjs "^3.0.0" - -follow-redirects@^1.0.0, follow-redirects@^1.10.0, follow-redirects@^1.12.1, follow-redirects@^1.14.9: +follow-redirects@^1.12.1, follow-redirects@^1.14.9: version "1.15.1" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.1.tgz#0ca6a452306c9b276e4d3127483e29575e207ad5" integrity sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA== @@ -12711,19 +10452,6 @@ forever-agent@~0.6.1: resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= -fork-ts-checker-webpack-plugin@4.1.6: - version "4.1.6" - resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-4.1.6.tgz#5055c703febcf37fa06405d400c122b905167fc5" - integrity sha512-DUxuQaKoqfNne8iikd14SAkh5uw4+8vNifp6gmA73yYNS6ywLIWSLD/n/mBzHQRpW3J7rbATEakmiA8JvkTyZw== - dependencies: - "@babel/code-frame" "^7.5.5" - chalk "^2.4.1" - micromatch "^3.1.10" - minimatch "^3.0.4" - semver "^5.6.0" - tapable "^1.0.0" - worker-rpc "^0.1.0" - form-data@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.0.tgz#31b7e39c85f1355b7139ee0c647cf0de7f83c682" @@ -12780,11 +10508,6 @@ fp-ts@^1.0.0: resolved "https://registry.yarnpkg.com/fp-ts/-/fp-ts-1.19.5.tgz#3da865e585dfa1fdfd51785417357ac50afc520a" integrity sha512-wDNqTimnzs8QqpldiId9OavWK2NptormjXnRJTQecNjzwfyp6P/8s/zG8e4h3ja3oqkKaY72UlTjQYt/1yXf9A== -fraction.js@^4.0.13: - version "4.0.13" - resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.0.13.tgz#3c1c315fa16b35c85fffa95725a36fa729c69dfe" - integrity sha512-E1fz2Xs9ltlUp+qbiyx9wmt2n9dRzPsS11Jtdb8D2o+cC7wr9xkkKsVKJuBX0ST+LVS+LhLO+SbLJNtfWcJvXA== - fragment-cache@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" @@ -12999,7 +10722,7 @@ genfun@^5.0.0: resolved "https://registry.yarnpkg.com/genfun/-/genfun-5.0.0.tgz#9dd9710a06900a5c4a5bf57aca5da4e52fe76537" integrity sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA== -gensync@^1.0.0-beta.1, gensync@^1.0.0-beta.2: +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" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== @@ -13091,11 +10814,6 @@ get-stream@^5.0.0, get-stream@^5.1.0: dependencies: pump "^3.0.0" -get-stream@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.0.tgz#3e0012cb6827319da2706e601a1583e8629a6718" - integrity sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg== - get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" @@ -13157,13 +10875,6 @@ gitconfiglocal@^1.0.0: dependencies: ini "^1.3.2" -github-slugger@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.3.0.tgz#9bd0a95c5efdfc46005e82a906ef8e2a059124c9" - integrity sha512-gwJScWVNhFYSRDvURk/8yhcFBee6aFjye2a7Lhb2bUyRulpIoek9p0I9Kt7PT67d/nUlZbFu8L9RLiA0woQN8Q== - dependencies: - emoji-regex ">=6.0.0 <=6.1.1" - glob-base@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" @@ -13187,7 +10898,7 @@ glob-parent@^3.1.0: is-glob "^3.1.0" path-dirname "^1.0.0" -glob-parent@^5.0.0, glob-parent@^5.1.0, glob-parent@^5.1.1, glob-parent@~5.1.0: +glob-parent@^5.0.0, glob-parent@^5.1.0, glob-parent@~5.1.0: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== @@ -13234,7 +10945,7 @@ glob@^5.0.15: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.0, glob@^7.0.3, glob@^7.1.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: +glob@^7.0.0, glob@^7.1.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.2.0" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== @@ -13258,20 +10969,6 @@ glob@~7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" -global-dirs@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-3.0.0.tgz#70a76fe84ea315ab37b1f5576cbde7d48ef72686" - integrity sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA== - dependencies: - ini "2.0.0" - -global-modules@2.0.0, global-modules@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" - integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A== - dependencies: - global-prefix "^3.0.0" - global-modules@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" @@ -13281,6 +10978,13 @@ global-modules@^1.0.0: is-windows "^1.0.1" resolve-dir "^1.0.0" +global-modules@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" + integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A== + dependencies: + global-prefix "^3.0.0" + global-prefix@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" @@ -13333,19 +11037,7 @@ globals@^9.18.0: resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== -globby@11.0.1: - version "11.0.1" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.1.tgz#9a2bf107a068f3ffeabc49ad702c79ede8cfd357" - integrity sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ== - dependencies: - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.1.1" - ignore "^5.1.4" - merge2 "^1.3.0" - slash "^3.0.0" - -globby@11.0.3, globby@^11.0.0, globby@^11.0.1, globby@^11.0.2: +globby@11.0.3, globby@^11.0.0, globby@^11.0.1: version "11.0.3" resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.3.tgz#9b1f0cb523e171dd1ad8c7b2a9fb4b644b9593cb" integrity sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg== @@ -13357,17 +11049,6 @@ globby@11.0.3, globby@^11.0.0, globby@^11.0.1, globby@^11.0.2: merge2 "^1.3.0" slash "^3.0.0" -globby@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" - integrity sha1-9abXDoOV4hyFj7BInWTfAkJNUGw= - dependencies: - array-union "^1.0.1" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - globby@^8.0.1: version "8.0.2" resolved "https://registry.yarnpkg.com/globby/-/globby-8.0.2.tgz#5697619ccd95c5275dbb2d6faa42087c1a941d8d" @@ -13494,16 +11175,6 @@ graphql@15.5.1: resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.5.1.tgz#f2f84415d8985e7b84731e7f3536f8bb9d383aad" integrity sha512-FeTRX67T3LoE3LWAxxOlW2K3Bz+rMYAC18rRguK4wgXaTZMiJwSUwDmPFo3UadAKbzirKIg5Qy+sNJXbpPRnQw== -gray-matter@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/gray-matter/-/gray-matter-4.0.2.tgz#9aa379e3acaf421193fce7d2a28cebd4518ac454" - integrity sha512-7hB/+LxrOjq/dd8APlK0r24uL/67w7SkYnfwhNFwg/VDIGWGmduTDYf3WNstLW2fbbmRwrDGCVSJ2isuf2+4Hw== - dependencies: - js-yaml "^3.11.0" - kind-of "^6.0.2" - section-matter "^1.0.0" - strip-bom-string "^1.0.0" - growl@1.10.3: version "1.10.3" resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.3.tgz#1926ba90cf3edfe2adb4927f5880bc22c66c790f" @@ -13519,14 +11190,6 @@ growly@^1.3.0: resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= -gzip-size@5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-5.1.1.tgz#cb9bee692f87c0612b232840a873904e4c135274" - integrity sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA== - dependencies: - duplexer "^0.1.1" - pify "^4.0.1" - gzip-size@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462" @@ -13534,11 +11197,6 @@ gzip-size@^6.0.0: dependencies: duplexer "^0.1.2" -handle-thing@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" - integrity sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg== - handlebars@^4.0.1, handlebars@^4.3.3, handlebars@^4.7.6: version "4.7.7" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" @@ -13707,11 +11365,6 @@ has-values@^1.0.0: is-number "^3.0.0" kind-of "^4.0.0" -has-yarn@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-2.1.0.tgz#137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77" - integrity sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw== - has@^1.0.0, has@^1.0.1, has@^1.0.3, has@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" @@ -13752,95 +11405,6 @@ hasha@^5.0.0: is-stream "^2.0.0" type-fest "^0.8.0" -hast-to-hyperscript@^9.0.0: - version "9.0.1" - resolved "https://registry.yarnpkg.com/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz#9b67fd188e4c81e8ad66f803855334173920218d" - integrity sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA== - dependencies: - "@types/unist" "^2.0.3" - comma-separated-tokens "^1.0.0" - property-information "^5.3.0" - space-separated-tokens "^1.0.0" - style-to-object "^0.3.0" - unist-util-is "^4.0.0" - web-namespaces "^1.0.0" - -hast-util-from-parse5@^5.0.0: - version "5.0.3" - resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-5.0.3.tgz#3089dc0ee2ccf6ec8bc416919b51a54a589e097c" - integrity sha512-gOc8UB99F6eWVWFtM9jUikjN7QkWxB3nY0df5Z0Zq1/Nkwl5V4hAAsl0tmwlgWl/1shlTF8DnNYLO8X6wRV9pA== - dependencies: - ccount "^1.0.3" - hastscript "^5.0.0" - property-information "^5.0.0" - web-namespaces "^1.1.2" - xtend "^4.0.1" - -hast-util-from-parse5@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz#554e34abdeea25ac76f5bd950a1f0180e0b3bc2a" - integrity sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA== - dependencies: - "@types/parse5" "^5.0.0" - hastscript "^6.0.0" - property-information "^5.0.0" - vfile "^4.0.0" - vfile-location "^3.2.0" - web-namespaces "^1.0.0" - -hast-util-parse-selector@^2.0.0: - version "2.2.5" - resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz#d57c23f4da16ae3c63b3b6ca4616683313499c3a" - integrity sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ== - -hast-util-raw@6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-6.0.1.tgz#973b15930b7529a7b66984c98148b46526885977" - integrity sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig== - dependencies: - "@types/hast" "^2.0.0" - hast-util-from-parse5 "^6.0.0" - hast-util-to-parse5 "^6.0.0" - html-void-elements "^1.0.0" - parse5 "^6.0.0" - unist-util-position "^3.0.0" - vfile "^4.0.0" - web-namespaces "^1.0.0" - xtend "^4.0.0" - zwitch "^1.0.0" - -hast-util-to-parse5@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz#1ec44650b631d72952066cea9b1445df699f8479" - integrity sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ== - dependencies: - hast-to-hyperscript "^9.0.0" - property-information "^5.0.0" - web-namespaces "^1.0.0" - xtend "^4.0.0" - zwitch "^1.0.0" - -hastscript@^5.0.0: - version "5.1.2" - resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-5.1.2.tgz#bde2c2e56d04c62dd24e8c5df288d050a355fb8a" - integrity sha512-WlztFuK+Lrvi3EggsqOkQ52rKbxkXL3RwB6t5lwoa8QLMemoWfBuL43eDrwOamJyR7uKQKdmKYaBH1NZBiIRrQ== - dependencies: - comma-separated-tokens "^1.0.0" - hast-util-parse-selector "^2.0.0" - property-information "^5.0.0" - space-separated-tokens "^1.0.0" - -hastscript@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-6.0.0.tgz#e8768d7eac56c3fdeac8a92830d58e811e5bf640" - integrity sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w== - dependencies: - "@types/hast" "^2.0.0" - comma-separated-tokens "^1.0.0" - hast-util-parse-selector "^2.0.0" - property-information "^5.0.0" - space-separated-tokens "^1.0.0" - he@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" @@ -13872,12 +11436,7 @@ heap@0.2.6: resolved "https://registry.yarnpkg.com/heap/-/heap-0.2.6.tgz#087e1f10b046932fc8594dd9e6d378afc9d1e5ac" integrity sha1-CH4fELBGky/IWU3Z5tN4r8nR5aw= -hex-color-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" - integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== - -highlight.js@^10.0.0, highlight.js@^10.4.1: +highlight.js@^10.4.1: version "10.7.3" resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-10.7.3.tgz#697272e3991356e40c3cac566a74eef681756531" integrity sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A== @@ -13887,18 +11446,6 @@ highlightjs-solidity@^2.0.5: resolved "https://registry.yarnpkg.com/highlightjs-solidity/-/highlightjs-solidity-2.0.5.tgz#48b945f41886fa49af9f06023e6e87fffc243745" integrity sha512-ReXxQSGQkODMUgHcWzVSnfDCDrL2HshOYgw3OlIYmfHeRzUPkfJTUIp95pK4CmbiNG2eMTOmNLpfCz9Zq7Cwmg== -history@^4.9.0: - version "4.10.1" - resolved "https://registry.yarnpkg.com/history/-/history-4.10.1.tgz#33371a65e3a83b267434e2b3f3b1b4c58aad4cf3" - integrity sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew== - dependencies: - "@babel/runtime" "^7.1.2" - loose-envify "^1.2.0" - resolve-pathname "^3.0.0" - tiny-invariant "^1.0.2" - tiny-warning "^1.0.0" - value-equal "^1.0.1" - hmac-drbg@^1.0.0, hmac-drbg@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" @@ -13908,13 +11455,6 @@ hmac-drbg@^1.0.0, hmac-drbg@^1.0.1: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.1" -hoist-non-react-statics@^3.0.0, hoist-non-react-statics@^3.1.0: - version "3.3.2" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" - integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== - dependencies: - react-is "^16.7.0" - home-or-tmp@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" @@ -13942,31 +11482,6 @@ hosted-git-info@^4.0.1: dependencies: lru-cache "^6.0.0" -hpack.js@^2.1.6: - version "2.1.6" - resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" - integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= - dependencies: - inherits "^2.0.1" - obuf "^1.0.0" - readable-stream "^2.0.1" - wbuf "^1.1.0" - -hsl-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hsl-regex/-/hsl-regex-1.0.0.tgz#d49330c789ed819e276a4c0d272dffa30b18fe6e" - integrity sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4= - -hsla-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hsla-regex/-/hsla-regex-1.0.0.tgz#c1ce7a3168c8c6614033a4b5f7877f3b225f9c38" - integrity sha1-wc56MWjIxmFAM6S194d/OyJfnDg= - -html-comment-regex@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.2.tgz#97d4688aeb5c81886a364faa0cad1dda14d433a7" - integrity sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ== - 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" @@ -13974,7 +11489,7 @@ html-encoding-sniffer@^2.0.1: dependencies: whatwg-encoding "^1.0.5" -html-entities@^1.2.1, html-entities@^1.3.1: +html-entities@^1.2.1: version "1.4.0" resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.4.0.tgz#cfbd1b01d2afaf9adca1b10ae7dffab98c71d2dc" integrity sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA== @@ -13984,7 +11499,7 @@ html-escaper@^2.0.0: resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== -html-minifier-terser@^5.0.1, html-minifier-terser@^5.1.1: +html-minifier-terser@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#922e96f1f3bb60832c2634b79884096389b1f054" integrity sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg== @@ -13997,48 +11512,11 @@ html-minifier-terser@^5.0.1, html-minifier-terser@^5.1.1: relateurl "^0.2.7" terser "^4.6.3" -html-tags@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.1.0.tgz#7b5e6f7e665e9fb41f30007ed9e0d41e97fb2140" - integrity sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg== - -html-void-elements@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-1.0.5.tgz#ce9159494e86d95e45795b166c2021c2cfca4483" - integrity sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w== - -html-webpack-plugin@^4.5.0: - version "4.5.2" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz#76fc83fa1a0f12dd5f7da0404a54e2699666bc12" - integrity sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A== - dependencies: - "@types/html-minifier-terser" "^5.0.0" - "@types/tapable" "^1.0.5" - "@types/webpack" "^4.41.8" - html-minifier-terser "^5.0.1" - loader-utils "^1.2.3" - lodash "^4.17.20" - pretty-error "^2.1.1" - tapable "^1.1.3" - util.promisify "1.0.0" - htmlescape@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/htmlescape/-/htmlescape-1.1.1.tgz#3a03edc2214bca3b66424a3e7959349509cb0351" integrity sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E= -htmlparser2@^3.10.1, htmlparser2@^3.9.1: - version "3.10.1" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f" - integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ== - dependencies: - domelementtype "^1.3.1" - domhandler "^2.3.0" - domutils "^1.5.1" - entities "^1.1.1" - inherits "^2.0.1" - readable-stream "^3.1.1" - htmlparser2@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" @@ -14069,11 +11547,6 @@ http-cache-semantics@^4.0.0: resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== -http-deceiver@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" - integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= - http-errors@1.7.2: version "1.7.2" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" @@ -14144,25 +11617,6 @@ http-proxy-agent@^4.0.1: agent-base "6" debug "4" -http-proxy-middleware@0.19.1: - version "0.19.1" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz#183c7dc4aa1479150306498c210cdaf96080a43a" - integrity sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q== - dependencies: - http-proxy "^1.17.0" - is-glob "^4.0.0" - lodash "^4.17.11" - micromatch "^3.1.10" - -http-proxy@^1.17.0: - version "1.18.1" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" - integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== - dependencies: - eventemitter3 "^4.0.0" - follow-redirects "^1.0.0" - requires-port "^1.0.0" - http-shutdown@1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/http-shutdown/-/http-shutdown-1.2.2.tgz#41bc78fc767637c4c95179bc492f312c0ae64c5f" @@ -14208,11 +11662,6 @@ human-signals@^1.1.1: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== -human-signals@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/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" @@ -14246,11 +11695,6 @@ iconv-lite@^0.6.2: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -icss-utils@^5.0.0, icss-utils@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" - integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== - idna-uts46-hx@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/idna-uts46-hx/-/idna-uts46-hx-2.3.1.tgz#a1dc5c4df37eee522bf66d969cc980e00e8711f9" @@ -14300,11 +11744,6 @@ immediate@~3.2.3: resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.2.3.tgz#d140fa8f614659bd6541233097ddaac25cdd991c" integrity sha1-0UD6j2FGWb1lQSMwl92qwlzdmRw= -immer@8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/immer/-/immer-8.0.1.tgz#9c73db683e2b3975c424fb0572af5889877ae656" - integrity sha512-aqXhGP7//Gui2+UrEtvxZxSquQVXTpZ7KDxfCcKAF3Vysvw0CViVaW9RZ1j1xlIYqaaaipBoqdqeibkc18PNvA== - immutable@^4.0.0-rc.12: version "4.0.0-rc.14" resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.0.0-rc.14.tgz#29ba96631ec10867d1348515ac4e6bdba462f071" @@ -14323,7 +11762,7 @@ import-fresh@^2.0.0: caller-path "^2.0.0" resolve-from "^3.0.0" -import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1, import-fresh@^3.2.2, import-fresh@^3.3.0: +import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1: version "3.3.0" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== @@ -14338,11 +11777,6 @@ import-from@3.0.0: dependencies: resolve-from "^5.0.0" -import-lazy@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" - integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM= - import-local@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" @@ -14381,21 +11815,11 @@ indent-string@^4.0.0: resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== -indexes-of@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" - integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= - infer-owner@^1.0.3, infer-owner@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== -infima@0.2.0-alpha.21: - version "0.2.0-alpha.21" - resolved "https://registry.yarnpkg.com/infima/-/infima-0.2.0-alpha.21.tgz#53cc49dbcaf5a8d165cbe4acf214eee02bca6154" - integrity sha512-32uq+rWIrLNZx0jzNrwJWE8Go9NvpP0JTRKMXJ8aYlWZ0vm9OCgAEcVquwFBSW6ZP7R2rjBUjPy/nJ3PK7MhUA== - inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -14404,7 +11828,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.0, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3, inherits@~2.0.4: +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3, inherits@~2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -14419,11 +11843,6 @@ inherits@2.0.3: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= -ini@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ini/-/ini-2.0.0.tgz#e5fd556ecdd5726be978fa1001862eacb0a94bc5" - integrity sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA== - ini@^1.3.2, ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: version "1.3.8" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" @@ -14450,11 +11869,6 @@ inline-source-map@~0.6.0: dependencies: source-map "~0.5.3" -inline-style-parser@0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1" - integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== - inquirer@8.2.0: version "8.2.0" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-8.2.0.tgz#f44f008dd344bbfc4b30031f45d984e034a3ac3a" @@ -14534,14 +11948,6 @@ inside@^1.0.0: resolved "https://registry.yarnpkg.com/inside/-/inside-1.0.0.tgz#db45e993573cdb3db70b9832e8285bad46424770" integrity sha1-20Xpk1c82z23C5gy6ChbrUZCR3A= -internal-ip@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-4.3.0.tgz#845452baad9d2ca3b69c635a137acb9a0dad0907" - integrity sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg== - dependencies: - default-gateway "^4.2.0" - ipaddr.js "^1.9.0" - interpret@^1.0.0, interpret@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" @@ -14571,17 +11977,12 @@ io-ts@1.10.4: dependencies: fp-ts "^1.0.0" -ip-regex@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" - integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= - -ip@1.1.5, ip@^1.1.0, ip@^1.1.5: +ip@1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= -ipaddr.js@1.9.1, ipaddr.js@^1.9.0: +ipaddr.js@1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== @@ -14599,16 +12000,6 @@ irregular-plurals@^3.2.0: resolved "https://registry.yarnpkg.com/irregular-plurals/-/irregular-plurals-3.2.0.tgz#b19c490a0723798db51b235d7e39add44dab0822" integrity sha512-YqTdPLfwP7YFN0SsD3QUVCkm9ZG2VzOXv3DOrw5G5mkMbVwptTwVcFv7/C0vOpBmgTxAeTG19XpUs1E522LW9Q== -is-absolute-url@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" - integrity sha1-UFMN+4T8yap9vnhS6Do3uTufKqY= - -is-absolute-url@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" - integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== - is-absolute@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" @@ -14631,19 +12022,6 @@ is-accessor-descriptor@^1.0.0: dependencies: kind-of "^6.0.0" -is-alphabetical@1.0.4, is-alphabetical@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" - integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== - -is-alphanumerical@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" - integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A== - dependencies: - is-alphabetical "^1.0.0" - is-decimal "^1.0.0" - is-arguments@^1.0.4: version "1.1.0" resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.0.tgz#62353031dfbee07ceb34656a6bde59efecae8dd9" @@ -14656,11 +12034,6 @@ is-arrayish@^0.2.1: resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= -is-arrayish@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" - integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== - is-bigint@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.1.tgz#6923051dfcbc764278540b9ce0e6b3213aa5ebc2" @@ -14692,7 +12065,7 @@ is-buffer@^1.1.0, is-buffer@^1.1.5: resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== -is-buffer@^2.0.0, is-buffer@^2.0.3, is-buffer@~2.0.3: +is-buffer@^2.0.3, is-buffer@~2.0.3: version "2.0.5" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== @@ -14709,18 +12082,6 @@ is-ci@^2.0.0: dependencies: ci-info "^2.0.0" -is-color-stop@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-color-stop/-/is-color-stop-1.1.0.tgz#cfff471aee4dd5c9e158598fbe12967b5cdad345" - integrity sha1-z/9HGu5N1cnhWFmPvhKWe1za00U= - dependencies: - css-color-names "^0.0.4" - hex-color-regex "^1.1.0" - hsl-regex "^1.0.0" - hsla-regex "^1.0.0" - rgb-regex "^1.0.1" - rgba-regex "^1.0.0" - is-core-module@^2.8.1: version "2.8.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" @@ -14747,11 +12108,6 @@ is-date-object@^1.0.1: resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== -is-decimal@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" - integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== - is-descriptor@^0.1.0: version "0.1.6" resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" @@ -14882,19 +12238,6 @@ is-hex-prefixed@1.0.0: resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554" integrity sha1-fY035q135dEnFIkTxXPggtd39VQ= -is-hexadecimal@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7" - integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== - -is-installed-globally@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.4.0.tgz#9a0fd407949c30f86eb6959ef1b7994ed0b7b520" - integrity sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ== - dependencies: - global-dirs "^3.0.0" - is-path-inside "^3.0.2" - is-interactive@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" @@ -14929,11 +12272,6 @@ is-negative-zero@^2.0.1: resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== -is-npm@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-5.0.0.tgz#43e8d65cc56e1b67f8d47262cf667099193f45a8" - integrity sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA== - is-number-object@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.4.tgz#36ac95e741cf18b283fc1ddf5e83da798e3ec197" @@ -14985,36 +12323,12 @@ is-observable@^1.1.0: dependencies: symbol-observable "^1.1.0" -is-path-cwd@^2.0.0, is-path-cwd@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" - integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== - -is-path-in-cwd@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz#bfe2dca26c69f397265a4009963602935a053acb" - integrity sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ== - dependencies: - is-path-inside "^2.1.0" - -is-path-inside@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-2.1.0.tgz#7c9810587d659a40d27bcdb4d5616eab059494b2" - integrity sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg== - dependencies: - path-is-inside "^1.0.2" - -is-path-inside@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" - integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== - 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" integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= -is-plain-obj@^2.0.0, is-plain-obj@^2.1.0: +is-plain-obj@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== @@ -15083,21 +12397,11 @@ is-relative@^1.0.0: dependencies: is-unc-path "^1.0.0" -is-resolvable@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" - integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== - is-retry-allowed@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz#d778488bd0a4666a3be8a1482b9f2baafedea8b4" integrity sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg== -is-root@2.1.0, is-root@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.1.0.tgz#809e18129cf1129644302a4f8544035d51984a9c" - integrity sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg== - is-ssh@^1.3.0: version "1.3.2" resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.3.2.tgz#a4b82ab63d73976fd8263cceee27f99a88bdae2b" @@ -15120,13 +12424,6 @@ is-string@^1.0.5: resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz#40493ed198ef3ff477b8c7f92f644ec82a5cd3a6" integrity sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ== -is-svg@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75" - integrity sha512-gi4iHK53LR2ujhLVVj+37Ykh9GLqYHX6JOVXbLAucaG/Cqw9xwdFOjDM2qeifLs1sF1npXXFvDu0r5HNgCMrzQ== - dependencies: - html-comment-regex "^1.1.0" - is-symbol@^1.0.2, is-symbol@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" @@ -15193,21 +12490,11 @@ is-utf8@^0.2.0: resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= -is-whitespace-character@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz#0858edd94a95594c7c9dd0b5c174ec6e45ee4aa7" - integrity sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w== - is-windows@^1.0.0, is-windows@^1.0.1, is-windows@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== -is-word-character@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-word-character/-/is-word-character-1.0.4.tgz#ce0e73216f98599060592f62ff31354ddbeb0230" - integrity sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA== - is-wsl@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" @@ -15220,11 +12507,6 @@ is-wsl@^2.1.1, is-wsl@^2.2.0: dependencies: is-docker "^2.0.0" -is-yarn-global@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/is-yarn-global/-/is-yarn-global-0.3.0.tgz#d502d3382590ea3004893746754c89139973e232" - integrity sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw== - isarray@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" @@ -15752,17 +13034,6 @@ jest@26.4.2: import-local "^3.0.2" jest-cli "^26.4.2" -joi@^17.3.0, joi@^17.4.0: - version "17.4.0" - resolved "https://registry.yarnpkg.com/joi/-/joi-17.4.0.tgz#b5c2277c8519e016316e49ababd41a1908d9ef20" - integrity sha512-F4WiW2xaV6wc1jxete70Rw4V/VuMd6IN+a5ilZsxG4uYtUXWu2kq9W5P2dz30e7Gmw8RCbY/u/uk+dMPma9tAg== - dependencies: - "@hapi/hoek" "^9.0.0" - "@hapi/topo" "^5.0.0" - "@sideway/address" "^4.1.0" - "@sideway/formula" "^3.0.0" - "@sideway/pinpoint" "^2.0.0" - js-sha256@^0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/js-sha256/-/js-sha256-0.9.0.tgz#0b89ac166583e91ef9123644bd3c5334ce9d0966" @@ -15811,7 +13082,7 @@ js-yaml@3.13.1: argparse "^1.0.7" esprima "^4.0.0" -js-yaml@3.x, js-yaml@^3.11.0, js-yaml@^3.12.0, js-yaml@^3.13.0, js-yaml@^3.13.1: +js-yaml@3.x, js-yaml@^3.12.0, js-yaml@^3.13.0, js-yaml@^3.13.1: version "3.14.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== @@ -15980,11 +13251,6 @@ json-to-pretty-yaml@^1.2.2: remedial "^1.0.7" remove-trailing-spaces "^1.0.6" -json3@^3.3.3: - version "3.3.3" - resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.3.tgz#7fc10e375fc5ae42c4705a5cc0aa6f62be305b81" - integrity sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA== - json5@2.x, json5@^2.1.0, json5@^2.1.2: version "2.2.0" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" @@ -16121,11 +13387,6 @@ keyv@^3.0.0: dependencies: json-buffer "3.0.0" -killable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892" - integrity sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg== - kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: version "3.2.2" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" @@ -16169,11 +13430,6 @@ kleur@^3.0.3: resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== -klona@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.4.tgz#7bb1e3affb0cb8624547ef7e8f6708ea2e39dfc0" - integrity sha512-ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA== - labeled-stream-splicer@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/labeled-stream-splicer/-/labeled-stream-splicer-2.0.2.tgz#42a41a16abcd46fd046306cf4f2c3576fffb1c21" @@ -16182,15 +13438,7 @@ labeled-stream-splicer@^2.0.0: inherits "^2.0.1" stream-splicer "^2.0.0" -last-call-webpack-plugin@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz#9742df0e10e3cf46e5c0381c2de90d3a7a2d7555" - integrity sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w== - dependencies: - lodash "^4.17.5" - webpack-sources "^1.1.0" - -latest-version@5.1.0, latest-version@^5.1.0: +latest-version@5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-5.1.0.tgz#119dfe908fe38d15dfa43ecd13fa12ec8832face" integrity sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA== @@ -16618,16 +13866,7 @@ loader-runner@^2.4.0: resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== -loader-utils@2.0.0, loader-utils@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.0.tgz#e4cace5b816d425a166b5f097e10cd12b36064b0" - integrity sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ== - dependencies: - big.js "^5.2.2" - emojis-list "^3.0.0" - json5 "^2.1.2" - -loader-utils@^1.1.0, loader-utils@^1.2.3, loader-utils@^1.4.0: +loader-utils@^1.2.3, loader-utils@^1.4.0: version "1.4.2" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.2.tgz#29a957f3a63973883eb684f10ffd3d151fec01a3" integrity sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg== @@ -16636,6 +13875,15 @@ loader-utils@^1.1.0, loader-utils@^1.2.3, loader-utils@^1.4.0: emojis-list "^3.0.0" json5 "^1.0.1" +loader-utils@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.0.tgz#e4cace5b816d425a166b5f097e10cd12b36064b0" + integrity sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ== + dependencies: + big.js "^5.2.2" + emojis-list "^3.0.0" + json5 "^2.1.2" + locate-path@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" @@ -16669,47 +13917,22 @@ lodash.assign@^4.0.3, lodash.assign@^4.0.6: resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" integrity sha1-DZnzzNem0mHRm9rrkkUAXShYCOc= -lodash.assignin@^4.0.9: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.assignin/-/lodash.assignin-4.2.0.tgz#ba8df5fb841eb0a3e8044232b0e263a8dc6a28a2" - integrity sha1-uo31+4QesKPoBEIysOJjqNxqKKI= - -lodash.bind@^4.1.4: - version "4.2.1" - resolved "https://registry.yarnpkg.com/lodash.bind/-/lodash.bind-4.2.1.tgz#7ae3017e939622ac31b7d7d7dcb1b34db1690d35" - integrity sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU= - lodash.clonedeep@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= -lodash.curry@^4.0.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.curry/-/lodash.curry-4.1.1.tgz#248e36072ede906501d75966200a86dab8b23170" - integrity sha1-JI42By7ekGUB11lmIAqG2riyMXA= - lodash.debounce@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= -lodash.defaults@^4.0.1: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" - integrity sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw= - -lodash.filter@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.filter/-/lodash.filter-4.6.0.tgz#668b1d4981603ae1cc5a6fa760143e480b4c4ace" - integrity sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4= - lodash.flatmap@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.flatmap/-/lodash.flatmap-4.5.0.tgz#ef8cbf408f6e48268663345305c6acc0b778702e" integrity sha1-74y/QI9uSCaGYzRTBcaswLd4cC4= -lodash.flatten@^4.2.0, lodash.flatten@^4.4.0: +lodash.flatten@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" integrity sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8= @@ -16719,16 +13942,6 @@ lodash.flattendeep@^4.4.0: resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2" integrity sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI= -lodash.flow@^3.3.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/lodash.flow/-/lodash.flow-3.5.0.tgz#87bf40292b8cf83e4e8ce1a3ae4209e20071675a" - integrity sha1-h79AKSuM+D5OjOGjrkIJ4gBxZ1o= - -lodash.foreach@^4.3.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz#1a6a35eace401280c7f06dddec35165ab27e3e53" - integrity sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM= - lodash.get@^4, lodash.get@^4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" @@ -16774,12 +13987,7 @@ lodash.isstring@^4.0.1: resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" integrity sha1-1SfftUVuynzJu5XV2ur4i6VKVFE= -lodash.map@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.map/-/lodash.map-4.6.0.tgz#771ec7839e3473d9c4cde28b19394c3562f4f6d3" - integrity sha1-dx7Hg540c9nEzeKLGTlMNWL09tM= - -lodash.memoize@4.x, lodash.memoize@^4.1.2: +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= @@ -16789,7 +13997,7 @@ lodash.memoize@~3.0.3: resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-3.0.4.tgz#2dcbd2c287cbc0a55cc42328bd0c736150d53e3f" integrity sha1-LcvSwofLwKVcxCMovQxzYVDVPj8= -lodash.merge@^4.4.0, lodash.merge@^4.6.2: +lodash.merge@^4.6.2: version "4.6.2" resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== @@ -16799,31 +14007,11 @@ lodash.once@^4.0.0: resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= -lodash.pick@^4.2.1: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" - integrity sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM= - -lodash.reduce@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.reduce/-/lodash.reduce-4.6.0.tgz#f1ab6b839299ad48f784abbf476596f03b914d3b" - integrity sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs= - -lodash.reject@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.reject/-/lodash.reject-4.6.0.tgz#80d6492dc1470864bbf583533b651f42a9f52415" - integrity sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU= - lodash.set@^4.3.2: version "4.3.2" resolved "https://registry.yarnpkg.com/lodash.set/-/lodash.set-4.3.2.tgz#d8757b1da807dde24816b0d6a84bea1a76230b23" integrity sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM= -lodash.some@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.some/-/lodash.some-4.6.0.tgz#1bb9f314ef6b8baded13b549169b2a945eb68e4d" - integrity sha1-G7nzFO9ri63tE7VJFpsqlF62jk0= - lodash.sortby@^4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" @@ -16844,17 +14032,12 @@ lodash.templatesettings@^4.0.0: dependencies: lodash._reinterpolate "^3.0.0" -lodash.toarray@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.toarray/-/lodash.toarray-4.4.0.tgz#24c4bfcd6b2fba38bfd0594db1179d8e9b656561" - integrity sha1-JMS/zWsvuji/0FlNsRedjptlZWE= - lodash.truncate@^4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" integrity sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw== -lodash.uniq@4.5.0, lodash.uniq@^4.5.0: +lodash.uniq@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= @@ -16864,7 +14047,7 @@ lodash@4.17.20: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52" integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA== -lodash@4.17.21, lodash@^4.14.2, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.1, lodash@^4.7.0, lodash@~4.17.0: +lodash@4.17.21, lodash@^4.14.2, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.2.1, lodash@^4.7.0, lodash@~4.17.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -16874,7 +14057,7 @@ log-driver@^1.2.7: resolved "https://registry.yarnpkg.com/log-driver/-/log-driver-1.2.7.tgz#63b95021f0702fedfa2c9bb0a24e7797d71871d8" integrity sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg== -log-symbols@3.0.0, log-symbols@^3.0.0: +log-symbols@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-3.0.0.tgz#f3a08516a5dea893336a7dee14d18a1cfdab77c4" integrity sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ== @@ -16920,7 +14103,7 @@ loglevel-plugin-prefix@^0.8.4: resolved "https://registry.yarnpkg.com/loglevel-plugin-prefix/-/loglevel-plugin-prefix-0.8.4.tgz#2fe0e05f1a820317d98d8c123e634c1bd84ff644" integrity sha512-WpG9CcFAOjz/FtNht+QJeGpvVl/cdR6P0z6OcXSkr8wFJOsV2GRj2j10JLfjuA4aYkcKCNIEqRGCyTife9R8/g== -loglevel@^1.6.4, loglevel@^1.6.8: +loglevel@^1.6.4: version "1.7.1" resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.7.1.tgz#005fde2f5e6e47068f935ff28573e125ef72f197" integrity sha512-Hesni4s5UkWkwCGJMQGAh71PaLUmKFM60dHvq0zi/vDhhrzuk+4GgNbTXJ12YYQJn6ZKBDNIjYcuQGKudvqrIw== @@ -16940,7 +14123,7 @@ looper@^3.0.0: resolved "https://registry.yarnpkg.com/looper/-/looper-3.0.0.tgz#2efa54c3b1cbaba9b94aee2e5914b0be57fbb749" integrity sha1-LvpUw7HLq6m5Su4uWRSwvlf7t0k= -loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0: +loose-envify@^1.0.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== @@ -17035,7 +14218,7 @@ ltgt@~2.1.1: resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.1.3.tgz#10851a06d9964b971178441c23c9e52698eece34" integrity sha1-EIUaBtmWS5cReEQcI8nlJpjuzjQ= -lunr@^2.3.6, lunr@^2.3.9: +lunr@^2.3.6: version "2.3.9" resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" integrity sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow== @@ -17052,13 +14235,6 @@ magic-string@0.25.1: dependencies: sourcemap-codec "^1.4.1" -magic-string@^0.25.1, magic-string@^0.25.2: - version "0.25.7" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051" - integrity sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA== - dependencies: - sourcemap-codec "^1.4.4" - make-dir@^1.0.0: version "1.3.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" @@ -17074,7 +14250,7 @@ make-dir@^2.0.0, make-dir@^2.1.0: pify "^4.0.1" semver "^5.6.0" -make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0: +make-dir@^3.0.0, make-dir@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== @@ -17149,21 +14325,11 @@ map-visit@^1.0.0: dependencies: object-visit "^1.0.0" -markdown-escapes@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/markdown-escapes/-/markdown-escapes-1.0.4.tgz#c95415ef451499d7602b91095f3c8e8975f78535" - integrity sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg== - marked@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/marked/-/marked-0.7.0.tgz#b64201f051d271b1edc10a04d1ae9b74bb8e5c0e" integrity sha512-c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg== -marked@^1.1.1: - version "1.2.9" - resolved "https://registry.yarnpkg.com/marked/-/marked-1.2.9.tgz#53786f8b05d4c01a2a5a76b7d1ec9943d29d72dc" - integrity sha512-H8lIX2SvyitGX+TRdtS06m1jHMijKN/XjfH6Ooii9fvxMlh8QdqBfBDkGUpMWH2kQNrtixjzYUa3SH8ROTgRRw== - math-random@^1.0.1: version "1.0.4" resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.4.tgz#5dd6943c938548267016d4e34f057583080c514c" @@ -17185,54 +14351,6 @@ md5.js@^1.3.4: inherits "^2.0.1" safe-buffer "^5.1.2" -mdast-squeeze-paragraphs@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz#7c4c114679c3bee27ef10b58e2e015be79f1ef97" - integrity sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ== - dependencies: - unist-util-remove "^2.0.0" - -mdast-util-definitions@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz#c5c1a84db799173b4dcf7643cda999e440c24db2" - integrity sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ== - dependencies: - unist-util-visit "^2.0.0" - -mdast-util-to-hast@10.0.1: - version "10.0.1" - resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz#0cfc82089494c52d46eb0e3edb7a4eb2aea021eb" - integrity sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA== - dependencies: - "@types/mdast" "^3.0.0" - "@types/unist" "^2.0.0" - mdast-util-definitions "^4.0.0" - mdurl "^1.0.0" - unist-builder "^2.0.0" - unist-util-generated "^1.0.0" - unist-util-position "^3.0.0" - unist-util-visit "^2.0.0" - -mdast-util-to-string@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz#b8cfe6a713e1091cb5b728fc48885a4767f8b97b" - integrity sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w== - -mdn-data@2.0.14: - version "2.0.14" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" - integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== - -mdn-data@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.4.tgz#699b3c38ac6f1d728091a64650b65d388502fd5b" - integrity sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA== - -mdurl@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" - integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= - media-typer@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" @@ -17447,11 +14565,6 @@ methods@1.1.2, methods@^1.1.2, methods@~1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= -microevent.ts@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/microevent.ts/-/microevent.ts-0.1.1.tgz#70b09b83f43df5172d0205a63025bce0f7357fa0" - integrity sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g== - micromatch@^2.1.5: version "2.3.11" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" @@ -17506,24 +14619,12 @@ miller-rabin@^4.0.0: bn.js "^4.0.0" brorand "^1.0.1" -mime-db@1.46.0, "mime-db@>= 1.43.0 < 2": +mime-db@1.46.0: version "1.46.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.46.0.tgz#6267748a7f799594de3cbc8cde91def349661cee" integrity sha512-svXaP8UQRZ5K7or+ZmfNhg2xX3yKDMUzqadsSqi4NCH/KomcH75MAMYAGVlvXn4+b/xOPhS3I2uHKRUzvjY7BQ== -mime-db@~1.33.0: - version "1.33.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" - integrity sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ== - -mime-types@2.1.18: - version "2.1.18" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" - integrity sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ== - dependencies: - mime-db "~1.33.0" - -mime-types@^2.1.12, mime-types@^2.1.16, mime-types@^2.1.27, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24: +mime-types@^2.1.12, mime-types@^2.1.16, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24: version "2.1.29" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.29.tgz#1d4ab77da64b91f5f72489df29236563754bb1b2" integrity sha512-Y/jMt/S5sR9OaqteJtslsFZKWOIIqMACsJSiHghlCAyhf7jfVYjKBmLiX8OgpWeW+fjJ2b+Az69aPFPkUOY6xQ== @@ -17535,7 +14636,7 @@ mime@1.6.0: resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mime@^2.3.1, mime@^2.4.4, mime@^2.4.6: +mime@^2.4.6: version "2.5.2" resolved "https://registry.yarnpkg.com/mime/-/mime-2.5.2.tgz#6e3dc6cc2b9510643830e5f19d5cb753da5eeabe" integrity sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg== @@ -17567,24 +14668,6 @@ min-indent@^1.0.0: resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== -mini-create-react-context@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/mini-create-react-context/-/mini-create-react-context-0.4.1.tgz#072171561bfdc922da08a60c2197a497cc2d1d5e" - integrity sha512-YWCYEmd5CQeHGSAKrYvXgmzzkrvssZcuuQDDeqkT+PziKGMgE+0MCCtcKbROzocGBG1meBLl2FotlRwf4gAzbQ== - dependencies: - "@babel/runtime" "^7.12.1" - tiny-warning "^1.0.3" - -mini-css-extract-plugin@^0.8.0: - version "0.8.2" - resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.2.tgz#a875e169beb27c88af77dd962771c9eedc3da161" - integrity sha512-a3Y4of27Wz+mqK3qrcd3VhYz6cU0iW5x3Sgvqzbj+XmlrSizmvu8QQMl5oMYJjgHOC4iyt+w7l4umP+dQeW3bw== - dependencies: - loader-utils "^1.1.0" - normalize-url "1.9.1" - schema-utils "^1.0.0" - webpack-sources "^1.1.0" - minify@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/minify/-/minify-6.0.1.tgz#d53413fc2e67b47642269087bc912da60ab6492e" @@ -17759,11 +14842,6 @@ mnemonist@^0.38.0: dependencies: obliterator "^1.6.1" -mobx@5.15.6: - version "5.15.6" - resolved "https://registry.yarnpkg.com/mobx/-/mobx-5.15.6.tgz#24750af56f87bcf9c3cf82ece4c79eb91bb71968" - integrity sha512-U5nnx3UNdRkUjntpwzO060VWifGVx/JZeu/aMw4y28dTjDNjoY3vNKs6tFNm7z1qIfcPInsd9L9HIm8H0zTDqg== - mocha@^4.0.1: version "4.1.0" resolved "https://registry.yarnpkg.com/mocha/-/mocha-4.1.0.tgz#7d86cfbcf35cb829e2754c32e17355ec05338794" @@ -17820,11 +14898,6 @@ modify-values@^1.0.0: resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== -module-alias@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/module-alias/-/module-alias-2.2.2.tgz#151cdcecc24e25739ff0aa6e51e1c5716974c0e0" - integrity sha512-A/78XjoX2EmNvppVWEhM2oGk3x4lLxnkEA4jTbaK97QKSDjkIoOsKQlfylt/d3kKKi596Qy3NP5XrXJ6fZIC9Q== - module-deps@^6.2.3: version "6.2.3" resolved "https://registry.yarnpkg.com/module-deps/-/module-deps-6.2.3.tgz#15490bc02af4b56cf62299c7c17cba32d71a96ee" @@ -17918,19 +14991,6 @@ multibase@~0.6.0: base-x "^3.0.8" buffer "^5.5.0" -multicast-dns-service-types@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" - integrity sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE= - -multicast-dns@^6.0.1: - version "6.2.3" - resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229" - integrity sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g== - dependencies: - dns-packet "^1.3.1" - thunky "^1.0.2" - multicodec@^0.5.5: version "0.5.7" resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-0.5.7.tgz#1fb3f9dd866a10a55d226e194abba2dcc1ee9ffd" @@ -18034,11 +15094,6 @@ nano-json-stream-parser@^0.1.2: resolved "https://registry.yarnpkg.com/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz#0cc8f6d0e2b622b479c40d499c46d64b755c6f5f" integrity sha1-DMj20OK2IrR5xA1JnEbWS3Vcb18= -nanoid@^3.1.20: - version "3.2.0" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.2.0.tgz#62667522da6673971cca916a6d3eff3f415ff80c" - integrity sha512-fmsZYa9lpn69Ad5eDn7FMcnnSR+8R34W9qJEijxYhTbfOWzr22n1QxCMzXLK+ODyW2973V3Fux959iQoUxzUIA== - nanomatch@^1.2.9: version "1.2.13" resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" @@ -18123,13 +15178,6 @@ node-dijkstra@2.5.0: resolved "https://registry.yarnpkg.com/node-dijkstra/-/node-dijkstra-2.5.0.tgz#0feb76c5a05f35b56e786de6df4d3364af28d4e8" integrity sha1-D+t2xaBfNbVueG3m300zZK8o1Og= -node-emoji@^1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-1.10.0.tgz#8886abd25d9c7bb61802a658523d1f8d2a89b2da" - integrity sha512-Yt3384If5H6BYGVHiHwTL+99OzJKHhgp82S8/dktEK73T26BazdgZ4JZh92xSVtGNJvz9UbXdNAc5hcrXV42vw== - dependencies: - lodash.toarray "^4.4.0" - node-environment-flags@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.6.tgz#a30ac13621f6f7d674260a54dede048c3982c088" @@ -18167,11 +15215,6 @@ node-fetch@~1.7.1: encoding "^0.1.11" is-stream "^1.0.1" -node-forge@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.10.0.tgz#32dea2afb3e9926f02ee5ce8794902691a676bf3" - integrity sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA== - node-gyp-build@^4.2.0: version "4.2.3" resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.2.3.tgz#ce6277f853835f718829efb47db20f3e4d9c4739" @@ -18252,7 +15295,7 @@ node-preload@^0.2.1: dependencies: process-on-spawn "^1.0.0" -node-releases@^1.1.61, node-releases@^1.1.71: +node-releases@^1.1.71: version "1.1.73" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.73.tgz#dd4e81ddd5277ff846b80b52bb40c49edf7a7b20" integrity sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg== @@ -18309,22 +15352,7 @@ normalize-path@^3.0.0, normalize-path@~3.0.0: resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= - -normalize-url@1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" - integrity sha1-LMDWazHqIwNkWENuNiDYWVTGbDw= - dependencies: - object-assign "^4.0.1" - prepend-http "^1.0.0" - query-string "^4.1.0" - sort-keys "^1.0.0" - -normalize-url@^3.0.0, normalize-url@^3.3.0: +normalize-url@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== @@ -18431,7 +15459,7 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -npm-run-path@^4.0.0, npm-run-path@^4.0.1: +npm-run-path@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== @@ -18448,18 +15476,6 @@ npmlog@^4.1.2: gauge "~2.7.3" set-blocking "~2.0.0" -nprogress@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/nprogress/-/nprogress-0.2.0.tgz#cb8f34c53213d895723fcbab907e9422adbcafb1" - integrity sha1-y480xTIT2JVyP8urkH6UIq28r7E= - -nth-check@^1.0.2, nth-check@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" - integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== - dependencies: - boolbase "~1.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" @@ -18467,24 +15483,11 @@ nth-check@^2.0.1: dependencies: boolbase "^1.0.0" -null-loader@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/null-loader/-/null-loader-4.0.1.tgz#8e63bd3a2dd3c64236a4679428632edd0a6dbc6a" - integrity sha512-pxqVbi4U6N26lq+LmgIbB5XATP0VdZKOG25DhHi8btMmJJefGArFyDg1yc4U3hWCJbMqSrw0qyrz1UQX+qYXqg== - dependencies: - loader-utils "^2.0.0" - schema-utils "^3.0.0" - nullthrows@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/nullthrows/-/nullthrows-1.1.1.tgz#7818258843856ae971eae4208ad7d7eb19a431b1" integrity sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw== -num2fraction@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" - integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= - 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" @@ -18617,7 +15620,7 @@ object.assign@^4.1.0, object.assign@^4.1.2: has-symbols "^1.0.1" object-keys "^1.1.1" -object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.0, object.getownpropertydescriptors@^2.1.1: +object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.2.tgz#1bd63aeacf0d5d2d2f31b5e393b03a7c601a23f7" integrity sha512-WtxeKSzfBjlzL+F9b7M7hewDzMwy+C8NRssHd1YrNlzHzIDrXcXiNOMrezdAEM4UXixgV+vvnyBeN7Rygl2ttQ== @@ -18641,7 +15644,7 @@ object.pick@^1.3.0: dependencies: isobject "^3.0.1" -object.values@^1.1.0, object.values@^1.1.1: +object.values@^1.1.1: version "1.1.3" resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.3.tgz#eaa8b1e17589f02f698db093f7c62ee1699742ee" integrity sha512-nkF6PfDB9alkOUxpf1HNm/QlkeW3SReqL5WXeBLpEJJnlPSvRaDQpW3gQTksTN3fgJX4hL42RzKyOin6ff3tyw== @@ -18670,11 +15673,6 @@ oboe@2.1.5: dependencies: http-https "^1.0.0" -obuf@^1.0.0, obuf@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" - integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== - octokit-pagination-methods@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/octokit-pagination-methods/-/octokit-pagination-methods-1.1.0.tgz#cf472edc9d551055f9ef73f6e42b4dbb4c80bea4" @@ -18706,14 +15704,14 @@ onetime@^2.0.0: dependencies: mimic-fn "^1.0.0" -onetime@^5.1.0, onetime@^5.1.2: +onetime@^5.1.0: version "5.1.2" resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" -open@^7.0.2, open@^7.4.2: +open@^7.4.2: version "7.4.2" resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321" integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q== @@ -18731,13 +15729,6 @@ opener@^1.5.2: resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== -opn@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/opn/-/opn-5.5.0.tgz#fc7164fab56d235904c51c3b27da6758ca3b9bfc" - integrity sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA== - dependencies: - is-wsl "^1.1.0" - opn@latest: version "6.0.0" resolved "https://registry.yarnpkg.com/opn/-/opn-6.0.0.tgz#3c5b0db676d5f97da1233d1ed42d182bc5a27d2d" @@ -18745,14 +15736,6 @@ opn@latest: dependencies: is-wsl "^1.1.0" -optimize-css-assets-webpack-plugin@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.4.tgz#85883c6528aaa02e30bbad9908c92926bb52dc90" - integrity sha512-wqd6FdI2a5/FdoiCNNkEvLeA//lHHfG24Ln2Xm2qqdIk4aOlsR18jwpyOihqQ8849W3qu2DX8fOYxpvTMj+93A== - dependencies: - cssnano "^4.1.10" - last-call-webpack-plugin "^3.0.0" - optionator@^0.8.1, optionator@^0.8.2: version "0.8.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" @@ -18777,20 +15760,6 @@ optionator@^0.9.1: type-check "^0.4.0" word-wrap "^1.2.3" -ora@^4.0.3: - version "4.1.1" - resolved "https://registry.yarnpkg.com/ora/-/ora-4.1.1.tgz#566cc0348a15c36f5f0e979612842e02ba9dddbc" - integrity sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A== - dependencies: - chalk "^3.0.0" - cli-cursor "^3.1.0" - cli-spinners "^2.2.0" - is-interactive "^1.0.0" - log-symbols "^3.0.0" - mute-stream "0.0.8" - strip-ansi "^6.0.0" - wcwidth "^1.0.1" - ora@^5.4.1: version "5.4.1" resolved "https://registry.yarnpkg.com/ora/-/ora-5.4.1.tgz#1b2678426af4ac4a509008e5e4ac9e9959db9e18" @@ -18811,7 +15780,7 @@ os-browserify@^0.3.0, os-browserify@~0.3.0: resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= -os-homedir@^1.0.0, os-homedir@^1.0.1: +os-homedir@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= @@ -18977,13 +15946,6 @@ p-reduce@^1.0.0: resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa" integrity sha1-GMKw3ZNqRpClKfgjH1ig/bakffo= -p-retry@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-3.0.1.tgz#316b4c8893e2c8dc1cfa891f406c4b422bebf328" - integrity sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w== - dependencies: - retry "^0.12.0" - p-timeout@^1.1.1: version "1.2.1" resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-1.2.1.tgz#5eb3b353b7fce99f101a1038880bb054ebbea386" @@ -19087,18 +16049,6 @@ parse-asn1@^5.0.0, parse-asn1@^5.1.5: pbkdf2 "^3.0.3" safe-buffer "^5.1.1" -parse-entities@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-2.0.0.tgz#53c6eb5b9314a1f4ec99fa0fdf7ce01ecda0cbe8" - integrity sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ== - dependencies: - character-entities "^1.0.0" - character-entities-legacy "^1.0.0" - character-reference-invalid "^1.0.0" - is-alphanumerical "^1.0.0" - is-decimal "^1.0.0" - is-hexadecimal "^1.0.0" - parse-filepath@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" @@ -19158,11 +16108,6 @@ parse-node-version@^1.0.0: resolved "https://registry.yarnpkg.com/parse-node-version/-/parse-node-version-1.0.1.tgz#e2b5dbede00e7fa9bc363607f53327e8b073189b" integrity sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA== -parse-numeric-range@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/parse-numeric-range/-/parse-numeric-range-1.2.0.tgz#aa70b00f29624ed13e9f943e9461b306e386b0fa" - integrity sha512-1q2tXpAOplPxcl8vrIGPWz1dJxxfmdRkCFcpxxMBerDnGuuHalOWF/xj9L8Nn5XoTUoB/6F0CeQBp2fMgkOYFg== - parse-passwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" @@ -19195,16 +16140,11 @@ parse5-htmlparser2-tree-adapter@^6.0.1: dependencies: parse5 "^6.0.1" -parse5@6.0.1, parse5@^6.0.0, parse5@^6.0.1: +parse5@6.0.1, parse5@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== -parse5@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.1.tgz#f68e4e5ba1852ac2cadc00f4555fff6c2abb6178" - integrity sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug== - parseurl@~1.3.2, parseurl@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" @@ -19320,7 +16260,7 @@ path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-is-inside@1.0.2, path-is-inside@^1.0.2: +path-is-inside@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= @@ -19362,18 +16302,6 @@ path-to-regexp@0.1.7: resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= -path-to-regexp@2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-2.2.1.tgz#90b617025a16381a879bc82a38d4e8bdeb2bcf45" - integrity sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ== - -path-to-regexp@^1.7.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.8.0.tgz#887b3ba9d84393e87a0a0b9f4cb756198b53548a" - integrity sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA== - dependencies: - isarray "0.0.1" - path-type@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" @@ -19501,763 +16429,69 @@ pinkie@^2.0.0: pirates@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" - integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== - dependencies: - node-modules-regexp "^1.0.0" - -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@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" - integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== - dependencies: - find-up "^3.0.0" - -pkg-dir@^4.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" - integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== - dependencies: - find-up "^4.0.0" - -pkg-up@3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" - integrity sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA== - dependencies: - find-up "^3.0.0" - -platform@^1.3.3: - version "1.3.6" - resolved "https://registry.yarnpkg.com/platform/-/platform-1.3.6.tgz#48b4ce983164b209c2d45a107adb31f473a6e7a7" - integrity sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg== - -please-upgrade-node@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz#aeddd3f994c933e4ad98b99d9a556efa0e2fe942" - integrity sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg== - dependencies: - semver-compare "^1.0.0" - -plugin-error@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/plugin-error/-/plugin-error-1.0.1.tgz#77016bd8919d0ac377fdcdd0322328953ca5781c" - integrity sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA== - dependencies: - ansi-colors "^1.0.1" - arr-diff "^4.0.0" - arr-union "^3.1.0" - extend-shallow "^3.0.2" - -plur@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/plur/-/plur-4.0.0.tgz#729aedb08f452645fe8c58ef115bf16b0a73ef84" - integrity sha512-4UGewrYgqDFw9vV6zNV+ADmPAUAfJPKtGvb/VdpQAx25X5f3xXdGdyOEVFwkl8Hl/tl7+xbeHqSEM+D5/TirUg== - dependencies: - irregular-plurals "^3.2.0" - -png-js@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/png-js/-/png-js-1.0.0.tgz#e5484f1e8156996e383aceebb3789fd75df1874d" - integrity sha512-k+YsbhpA9e+EFfKjTCH3VW6aoKlyNYI6NYdTfDL4CIvFnvsuO84ttonmZE7rc+v23SLTH8XX+5w/Ak9v0xGY4g== - -pnp-webpack-plugin@^1.6.4: - version "1.6.4" - resolved "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz#c9711ac4dc48a685dabafc86f8b6dd9f8df84149" - integrity sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg== - dependencies: - ts-pnp "^1.1.6" - -portfinder@^1.0.26: - version "1.0.28" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.28.tgz#67c4622852bd5374dd1dd900f779f53462fac778" - integrity sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA== - dependencies: - async "^2.6.2" - debug "^3.1.1" - mkdirp "^0.5.5" - -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= - -postcss-attribute-case-insensitive@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz#d93e46b504589e94ac7277b0463226c68041a880" - integrity sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^6.0.2" - -postcss-calc@^7.0.1: - version "7.0.5" - resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.5.tgz#f8a6e99f12e619c2ebc23cf6c486fdc15860933e" - integrity sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg== - dependencies: - postcss "^7.0.27" - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.0.2" - -postcss-color-functional-notation@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz#5efd37a88fbabeb00a2966d1e53d98ced93f74e0" - integrity sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-gray@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz#532a31eb909f8da898ceffe296fdc1f864be8547" - integrity sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.5" - postcss-values-parser "^2.0.0" - -postcss-color-hex-alpha@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz#a8d9ca4c39d497c9661e374b9c51899ef0f87388" - integrity sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw== - dependencies: - postcss "^7.0.14" - postcss-values-parser "^2.0.1" - -postcss-color-mod-function@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz#816ba145ac11cc3cb6baa905a75a49f903e4d31d" - integrity sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-rebeccapurple@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz#c7a89be872bb74e45b1e3022bfe5748823e6de77" - integrity sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-colormin@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-4.0.3.tgz#ae060bce93ed794ac71264f08132d550956bd381" - integrity sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw== - dependencies: - browserslist "^4.0.0" - color "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-convert-values@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz#ca3813ed4da0f812f9d43703584e449ebe189a7f" - integrity sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-custom-media@^7.0.8: - version "7.0.8" - resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz#fffd13ffeffad73621be5f387076a28b00294e0c" - integrity sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg== - dependencies: - postcss "^7.0.14" - -postcss-custom-properties@^8.0.11: - version "8.0.11" - resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz#2d61772d6e92f22f5e0d52602df8fae46fa30d97" - integrity sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA== - dependencies: - postcss "^7.0.17" - postcss-values-parser "^2.0.1" - -postcss-custom-selectors@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz#64858c6eb2ecff2fb41d0b28c9dd7b3db4de7fba" - integrity sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-dir-pseudo-class@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz#6e3a4177d0edb3abcc85fdb6fbb1c26dabaeaba2" - integrity sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-discard-comments@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz#1fbabd2c246bff6aaad7997b2b0918f4d7af4033" - integrity sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg== - dependencies: - postcss "^7.0.0" - -postcss-discard-duplicates@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz#3fe133cd3c82282e550fc9b239176a9207b784eb" - integrity sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ== - dependencies: - postcss "^7.0.0" - -postcss-discard-empty@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz#c8c951e9f73ed9428019458444a02ad90bb9f765" - integrity sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w== - dependencies: - postcss "^7.0.0" - -postcss-discard-overridden@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz#652aef8a96726f029f5e3e00146ee7a4e755ff57" - integrity sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg== - dependencies: - postcss "^7.0.0" - -postcss-discard-unused@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-unused/-/postcss-discard-unused-4.0.1.tgz#ee7cc66af8c7e8c19bd36f12d09c4bde4039abea" - integrity sha512-/3vq4LU0bLH2Lj4NYN7BTf2caly0flUB7Xtrk9a5K3yLuXMkHMqMO/x3sDq8W2b1eQFSCyY0IVz2L+0HP8kUUA== - dependencies: - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - uniqs "^2.0.0" - -postcss-double-position-gradients@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz#fc927d52fddc896cb3a2812ebc5df147e110522e" - integrity sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA== - dependencies: - postcss "^7.0.5" - postcss-values-parser "^2.0.0" - -postcss-env-function@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/postcss-env-function/-/postcss-env-function-2.0.2.tgz#0f3e3d3c57f094a92c2baf4b6241f0b0da5365d7" - integrity sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-focus-visible@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz#477d107113ade6024b14128317ade2bd1e17046e" - integrity sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g== - dependencies: - postcss "^7.0.2" - -postcss-focus-within@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz#763b8788596cee9b874c999201cdde80659ef680" - integrity sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w== - dependencies: - postcss "^7.0.2" - -postcss-font-variant@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-4.0.1.tgz#42d4c0ab30894f60f98b17561eb5c0321f502641" - integrity sha512-I3ADQSTNtLTTd8uxZhtSOrTCQ9G4qUVKPjHiDk0bV75QSxXjVWiJVJ2VLdspGUi9fbW9BcjKJoRvxAH1pckqmA== - dependencies: - postcss "^7.0.2" - -postcss-gap-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz#431c192ab3ed96a3c3d09f2ff615960f902c1715" - integrity sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg== - dependencies: - postcss "^7.0.2" - -postcss-image-set-function@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz#28920a2f29945bed4c3198d7df6496d410d3f288" - integrity sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-initial@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-3.0.2.tgz#f018563694b3c16ae8eaabe3c585ac6319637b2d" - integrity sha512-ugA2wKonC0xeNHgirR4D3VWHs2JcU08WAi1KFLVcnb7IN89phID6Qtg2RIctWbnvp1TM2BOmDtX8GGLCKdR8YA== - dependencies: - lodash.template "^4.5.0" - postcss "^7.0.2" - -postcss-lab-function@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz#bb51a6856cd12289ab4ae20db1e3821ef13d7d2e" - integrity sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-loader@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-4.2.0.tgz#f6993ea3e0f46600fb3ee49bbd010448123a7db4" - integrity sha512-mqgScxHqbiz1yxbnNcPdKYo/6aVt+XExURmEbQlviFVWogDbM4AJ0A/B+ZBpYsJrTRxKw7HyRazg9x0Q9SWwLA== - dependencies: - cosmiconfig "^7.0.0" - klona "^2.0.4" - loader-utils "^2.0.0" - schema-utils "^3.0.0" - semver "^7.3.4" - -postcss-logical@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-3.0.0.tgz#2495d0f8b82e9f262725f75f9401b34e7b45d5b5" - integrity sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA== - dependencies: - postcss "^7.0.2" - -postcss-media-minmax@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz#b75bb6cbc217c8ac49433e12f22048814a4f5ed5" - integrity sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw== - dependencies: - postcss "^7.0.2" - -postcss-merge-idents@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-merge-idents/-/postcss-merge-idents-4.0.1.tgz#b7df282a92f052ea0a66c62d8f8812e6d2cbed23" - integrity sha512-43S/VNdF6II0NZ31YxcvNYq4gfURlPAAsJW/z84avBXQCaP4I4qRHUH18slW/SOlJbcxxCobflPNUApYDddS7A== - dependencies: - cssnano-util-same-parent "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-merge-longhand@^4.0.11: - version "4.0.11" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz#62f49a13e4a0ee04e7b98f42bb16062ca2549e24" - integrity sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw== - dependencies: - css-color-names "0.0.4" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - stylehacks "^4.0.0" - -postcss-merge-rules@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz#362bea4ff5a1f98e4075a713c6cb25aefef9a650" - integrity sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ== - dependencies: - browserslist "^4.0.0" - caniuse-api "^3.0.0" - cssnano-util-same-parent "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - vendors "^1.0.0" - -postcss-minify-font-values@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz#cd4c344cce474343fac5d82206ab2cbcb8afd5a6" - integrity sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-minify-gradients@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz#93b29c2ff5099c535eecda56c4aa6e665a663471" - integrity sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q== - dependencies: - cssnano-util-get-arguments "^4.0.0" - is-color-stop "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-minify-params@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz#6b9cef030c11e35261f95f618c90036d680db874" - integrity sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg== - dependencies: - alphanum-sort "^1.0.0" - browserslist "^4.0.0" - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - uniqs "^2.0.0" - -postcss-minify-selectors@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz#e2e5eb40bfee500d0cd9243500f5f8ea4262fbd8" - integrity sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g== - dependencies: - alphanum-sort "^1.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - -postcss-modules-extract-imports@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d" - integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw== - -postcss-modules-local-by-default@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz#ebbb54fae1598eecfdf691a02b3ff3b390a5a51c" - integrity sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ== - dependencies: - icss-utils "^5.0.0" - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.1.0" - -postcss-modules-scope@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06" - integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg== - dependencies: - postcss-selector-parser "^6.0.4" - -postcss-modules-values@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" - integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== - dependencies: - icss-utils "^5.0.0" - -postcss-nesting@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-7.0.1.tgz#b50ad7b7f0173e5b5e3880c3501344703e04c052" - integrity sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg== - dependencies: - postcss "^7.0.2" - -postcss-normalize-charset@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz#8b35add3aee83a136b0471e0d59be58a50285dd4" - integrity sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g== - dependencies: - postcss "^7.0.0" - -postcss-normalize-display-values@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz#0dbe04a4ce9063d4667ed2be476bb830c825935a" - integrity sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ== - dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-positions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz#05f757f84f260437378368a91f8932d4b102917f" - integrity sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA== - dependencies: - cssnano-util-get-arguments "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-repeat-style@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz#c4ebbc289f3991a028d44751cbdd11918b17910c" - integrity sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q== - dependencies: - cssnano-util-get-arguments "^4.0.0" - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-string@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz#cd44c40ab07a0c7a36dc5e99aace1eca4ec2690c" - integrity sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA== - dependencies: - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-timing-functions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz#8e009ca2a3949cdaf8ad23e6b6ab99cb5e7d28d9" - integrity sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A== - dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-unicode@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz#841bd48fdcf3019ad4baa7493a3d363b52ae1cfb" - integrity sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg== - dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-url@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz#10e437f86bc7c7e58f7b9652ed878daaa95faae1" - integrity sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA== - dependencies: - is-absolute-url "^2.0.0" - normalize-url "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-whitespace@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz#bf1d4070fe4fcea87d1348e825d8cc0c5faa7d82" - integrity sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-ordered-values@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz#0cf75c820ec7d5c4d280189559e0b571ebac0eee" - integrity sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw== - dependencies: - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-overflow-shorthand@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz#31ecf350e9c6f6ddc250a78f0c3e111f32dd4c30" - integrity sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g== - dependencies: - postcss "^7.0.2" - -postcss-page-break@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-page-break/-/postcss-page-break-2.0.0.tgz#add52d0e0a528cabe6afee8b46e2abb277df46bf" - integrity sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ== - dependencies: - postcss "^7.0.2" - -postcss-place@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-4.0.1.tgz#e9f39d33d2dc584e46ee1db45adb77ca9d1dcc62" - integrity sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-preset-env@^6.7.0: - version "6.7.0" - resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz#c34ddacf8f902383b35ad1e030f178f4cdf118a5" - integrity sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg== - dependencies: - autoprefixer "^9.6.1" - browserslist "^4.6.4" - caniuse-lite "^1.0.30000981" - css-blank-pseudo "^0.1.4" - css-has-pseudo "^0.10.0" - css-prefers-color-scheme "^3.1.1" - cssdb "^4.4.0" - postcss "^7.0.17" - postcss-attribute-case-insensitive "^4.0.1" - postcss-color-functional-notation "^2.0.1" - postcss-color-gray "^5.0.0" - postcss-color-hex-alpha "^5.0.3" - postcss-color-mod-function "^3.0.3" - postcss-color-rebeccapurple "^4.0.1" - postcss-custom-media "^7.0.8" - postcss-custom-properties "^8.0.11" - postcss-custom-selectors "^5.1.2" - postcss-dir-pseudo-class "^5.0.0" - postcss-double-position-gradients "^1.0.0" - postcss-env-function "^2.0.2" - postcss-focus-visible "^4.0.0" - postcss-focus-within "^3.0.0" - postcss-font-variant "^4.0.0" - postcss-gap-properties "^2.0.0" - postcss-image-set-function "^3.0.1" - postcss-initial "^3.0.0" - postcss-lab-function "^2.0.1" - postcss-logical "^3.0.0" - postcss-media-minmax "^4.0.0" - postcss-nesting "^7.0.0" - postcss-overflow-shorthand "^2.0.0" - postcss-page-break "^2.0.0" - postcss-place "^4.0.1" - postcss-pseudo-class-any-link "^6.0.0" - postcss-replace-overflow-wrap "^3.0.0" - postcss-selector-matches "^4.0.0" - postcss-selector-not "^4.0.0" - -postcss-pseudo-class-any-link@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz#2ed3eed393b3702879dec4a87032b210daeb04d1" - integrity sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-reduce-idents@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-reduce-idents/-/postcss-reduce-idents-4.0.2.tgz#30447a6ec20941e78e21bd4482a11f569c4f455b" - integrity sha512-Tz70Ri10TclPoCtFfftjFVddx3fZGUkr0dEDbIEfbYhFUOFQZZ77TEqRrU0e6TvAvF+Wa5VVzYTpFpq0uwFFzw== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-reduce-initial@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz#7fd42ebea5e9c814609639e2c2e84ae270ba48df" - integrity sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA== - dependencies: - browserslist "^4.0.0" - caniuse-api "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" - -postcss-reduce-transforms@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz#17efa405eacc6e07be3414a5ca2d1074681d4e29" - integrity sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg== - dependencies: - cssnano-util-get-match "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-replace-overflow-wrap@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz#61b360ffdaedca84c7c918d2b0f0d0ea559ab01c" - integrity sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw== - dependencies: - postcss "^7.0.2" - -postcss-selector-matches@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz#71c8248f917ba2cc93037c9637ee09c64436fcff" - integrity sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww== - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" - -postcss-selector-not@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-4.0.1.tgz#263016eef1cf219e0ade9a913780fc1f48204cbf" - integrity sha512-YolvBgInEK5/79C+bdFMyzqTg6pkYqDbzZIST/PDMqa/o3qtXenD05apBG2jLgT0/BQ77d4U2UK12jWpilqMAQ== - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" - -postcss-selector-parser@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz#b310f5c4c0fdaf76f94902bbaa30db6aa84f5270" - integrity sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA== - dependencies: - dot-prop "^5.2.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz#249044356697b33b64f1a8f7c80922dddee7195c" - integrity sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ== - dependencies: - cssesc "^2.0.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4: - version "6.0.4" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3" - integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw== + integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== dependencies: - cssesc "^3.0.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - util-deprecate "^1.0.2" + node-modules-regexp "^1.0.0" -postcss-sort-media-queries@^1.7.26: - version "1.31.21" - resolved "https://registry.yarnpkg.com/postcss-sort-media-queries/-/postcss-sort-media-queries-1.31.21.tgz#3225ec6eb490402602284ac99963b80461783cee" - integrity sha512-h+HbXXfOVFeLvCJOzl/Z9SqQ25MNpG/73k71756ftisaaJy75h06/Dn6KOwC4OCMN10ewT2PXMzHV03JNKwBbg== +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: - postcss "^7.0.27" - sort-css-media-queries "1.5.0" + find-up "^2.1.0" -postcss-svgo@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-4.0.2.tgz#17b997bc711b333bab143aaed3b8d3d6e3d38258" - integrity sha512-C6wyjo3VwFm0QgBy+Fu7gCYOkCmgmClghO+pjcxvrcBKtiKt0uCF+hvbMO1fyv5BMImRK90SMb+dwUnfbGd+jw== +pkg-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" + integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== dependencies: - is-svg "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - svgo "^1.0.0" + find-up "^3.0.0" -postcss-unique-selectors@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz#9446911f3289bfd64c6d680f073c03b1f9ee4bac" - integrity sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg== +pkg-dir@^4.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" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== dependencies: - alphanum-sort "^1.0.0" - postcss "^7.0.0" - uniqs "^2.0.0" - -postcss-value-parser@^3.0.0: - version "3.3.1" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" - integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== + find-up "^4.0.0" -postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" - integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== +platform@^1.3.3: + version "1.3.6" + resolved "https://registry.yarnpkg.com/platform/-/platform-1.3.6.tgz#48b4ce983164b209c2d45a107adb31f473a6e7a7" + integrity sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg== -postcss-values-parser@^2.0.0, postcss-values-parser@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz#da8b472d901da1e205b47bdc98637b9e9e550e5f" - integrity sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg== +please-upgrade-node@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz#aeddd3f994c933e4ad98b99d9a556efa0e2fe942" + integrity sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg== dependencies: - flatten "^1.0.2" - indexes-of "^1.0.1" - uniq "^1.0.1" + semver-compare "^1.0.0" -postcss-zindex@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-zindex/-/postcss-zindex-4.0.1.tgz#8db6a4cec3111e5d3fd99ea70abeda61873d10c1" - integrity sha512-d/8BlQcUdEugZNRM9AdCA2V4fqREUtn/wcixLN3L6ITgc2P/FMcVVYz8QZkhItWT9NB5qr8wuN2dJCE4/+dlrA== +plugin-error@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/plugin-error/-/plugin-error-1.0.1.tgz#77016bd8919d0ac377fdcdd0322328953ca5781c" + integrity sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA== dependencies: - has "^1.0.0" - postcss "^7.0.0" - uniqs "^2.0.0" + ansi-colors "^1.0.1" + arr-diff "^4.0.0" + arr-union "^3.1.0" + extend-shallow "^3.0.2" -postcss@^6.0.23: - version "6.0.23" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" - integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag== +plur@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/plur/-/plur-4.0.0.tgz#729aedb08f452645fe8c58ef115bf16b0a73ef84" + integrity sha512-4UGewrYgqDFw9vV6zNV+ADmPAUAfJPKtGvb/VdpQAx25X5f3xXdGdyOEVFwkl8Hl/tl7+xbeHqSEM+D5/TirUg== dependencies: - chalk "^2.4.1" - source-map "^0.6.1" - supports-color "^5.4.0" + irregular-plurals "^3.2.0" -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6: - version "7.0.35" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24" - integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg== - dependencies: - chalk "^2.4.2" - source-map "^0.6.1" - supports-color "^6.1.0" +png-js@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/png-js/-/png-js-1.0.0.tgz#e5484f1e8156996e383aceebb3789fd75df1874d" + integrity sha512-k+YsbhpA9e+EFfKjTCH3VW6aoKlyNYI6NYdTfDL4CIvFnvsuO84ttonmZE7rc+v23SLTH8XX+5w/Ak9v0xGY4g== -postcss@^8.2.7, postcss@^8.2.8: - version "8.2.8" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.2.8.tgz#0b90f9382efda424c4f0f69a2ead6f6830d08ece" - integrity sha512-1F0Xb2T21xET7oQV9eKuctbM9S7BC0fetoHCc4H13z0PT6haiRLP4T0ZY4XWh7iLP0usgqykT6p9B2RtOf4FPw== - dependencies: - colorette "^1.2.2" - nanoid "^3.1.20" - source-map "^0.6.1" +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= postinstall-postinstall@^2.1.0: version "2.1.0" @@ -20279,7 +16513,7 @@ prelude-ls@~1.1.2: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= -prepend-http@^1.0.0, prepend-http@^1.0.1: +prepend-http@^1.0.1: version "1.0.4" resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= @@ -20321,14 +16555,6 @@ prettier@^1.14.3: resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== -pretty-error@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.2.tgz#be89f82d81b1c86ec8fdfbc385045882727f93b6" - integrity sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw== - dependencies: - lodash "^4.17.20" - renderkid "^2.0.4" - pretty-format@^25.2.1, pretty-format@^25.5.0: version "25.5.0" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-25.5.0.tgz#7873c1d774f682c34b8d48b6743a2bf2ac55791a" @@ -20349,26 +16575,11 @@ pretty-format@^26.0.0, pretty-format@^26.6.2: ansi-styles "^4.0.0" react-is "^17.0.1" -pretty-time@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pretty-time/-/pretty-time-1.1.0.tgz#ffb7429afabb8535c346a34e41873adf3d74dd0e" - integrity sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA== - printj@~1.1.0: version "1.1.2" resolved "https://registry.yarnpkg.com/printj/-/printj-1.1.2.tgz#d90deb2975a8b9f600fb3a1c94e3f4c53c78a222" integrity sha512-zA2SmoLaxZyArQTOPj5LXecR+RagfPSU5Kw1qP+jkWeNlrq+eJZyY2oS68SU1Z/7/myXM4lo9716laOFAVStCQ== -prism-react-renderer@^1.0.1, prism-react-renderer@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/prism-react-renderer/-/prism-react-renderer-1.2.0.tgz#5ad4f90c3e447069426c8a53a0eafde60909cdf4" - integrity sha512-GHqzxLYImx1iKN1jJURcuRoA/0ygCcNhfGw1IT8nPIMzarmKQ3Nc+JcG0gi8JXQzuh0C5ShE4npMIoqNin40hg== - -prismjs@^1.23.0: - version "1.27.0" - resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.27.0.tgz#bb6ee3138a0b438a3653dd4d6ce0cc6510a45057" - integrity sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA== - private@^0.1.6, private@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" @@ -20391,7 +16602,7 @@ process@^0.11.10, process@~0.11.0: resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= -progress@^2.0.0, progress@^2.0.3: +progress@^2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== @@ -20424,7 +16635,7 @@ promise@^7.1.1: dependencies: asap "~2.0.3" -prompts@2.4.0, prompts@^2.0.1, prompts@^2.4.0: +prompts@^2.0.1: version "2.4.0" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.0.tgz#4aa5de0723a231d1ee9121c40fdf663df73f61d7" integrity sha512-awZAKrk3vN6CroQukBL+R9051a4R3zCZBlJm/HBfrSZ8iTpYix3VX1vU4mveiLpiwmOJT4wokTF9m6HUk4KqWQ== @@ -20439,22 +16650,6 @@ promzard@^0.3.0: dependencies: read "1" -prop-types@^15.5.0, prop-types@^15.5.8, prop-types@^15.6.2, prop-types@^15.7.2: - version "15.7.2" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" - integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== - dependencies: - loose-envify "^1.4.0" - object-assign "^4.1.1" - react-is "^16.8.1" - -property-information@^5.0.0, property-information@^5.3.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/property-information/-/property-information-5.6.0.tgz#61675545fb23002f245c6540ec46077d4da3ed69" - integrity sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA== - dependencies: - xtend "^4.0.0" - proto-list@~1.2.1: version "1.2.4" resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" @@ -20629,24 +16824,12 @@ punycode@^2.1.0, punycode@^2.1.1: resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== -pupa@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/pupa/-/pupa-2.1.1.tgz#f5e8fd4afc2c5d97828faa523549ed8744a20d62" - integrity sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A== - dependencies: - escape-goat "^2.0.0" - -pure-color@^1.2.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/pure-color/-/pure-color-1.3.0.tgz#1fe064fb0ac851f0de61320a8bf796836422f33e" - integrity sha1-H+Bk+wrIUfDeYTIKi/eWg2Qi8z4= - pure-rand@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-5.0.1.tgz#97a287b4b4960b2a3448c0932bf28f2405cac51d" integrity sha512-ksWccjmXOHU2gJBnH0cK1lSYdvSZ0zLoCMSz/nTGh6hDvCSgcRxDyIcOBD6KNxFz3xhMPm/T267Tbe2JRymKEQ== -q@^1.1.2, q@^1.5.1: +q@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= @@ -20668,14 +16851,6 @@ qs@~6.5.2: resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== -query-string@^4.1.0: - version "4.3.4" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" - integrity sha1-u7aTucqRXCMlFbIosaArYJBD2+s= - dependencies: - object-assign "^4.1.0" - strict-uri-encode "^1.0.0" - query-string@^5.0.1: version "5.1.1" resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.1.1.tgz#a78c012b71c17e05f2e3fa2319dd330682efb3cb" @@ -20705,11 +16880,6 @@ querystring@0.2.0: resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= -querystringify@^2.1.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" - integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== - queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -20763,12 +16933,7 @@ randomhex@0.1.5: resolved "https://registry.yarnpkg.com/randomhex/-/randomhex-0.1.5.tgz#baceef982329091400f2a2912c6cd02f1094f585" integrity sha1-us7vmCMpCRQA8qKRLGzQLxCU9YU= -range-parser@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" - integrity sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4= - -range-parser@^1.2.1, range-parser@~1.2.1: +range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== @@ -20803,77 +16968,7 @@ rc@^1.2.8: minimist "^1.2.0" strip-json-comments "~2.0.1" -react-base16-styling@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/react-base16-styling/-/react-base16-styling-0.6.0.tgz#ef2156d66cf4139695c8a167886cb69ea660792c" - integrity sha1-7yFW1mz0E5aVyKFniGy2nqZgeSw= - dependencies: - base16 "^1.0.0" - lodash.curry "^4.0.1" - lodash.flow "^3.3.0" - pure-color "^1.2.0" - -react-dev-utils@^11.0.1: - version "11.0.4" - resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-11.0.4.tgz#a7ccb60257a1ca2e0efe7a83e38e6700d17aa37a" - integrity sha512-dx0LvIGHcOPtKbeiSUM4jqpBl3TcY7CDjZdfOIcKeznE7BWr9dg0iPG90G5yfVQ+p/rGNMXdbfStvzQZEVEi4A== - dependencies: - "@babel/code-frame" "7.10.4" - address "1.1.2" - browserslist "4.14.2" - chalk "2.4.2" - cross-spawn "7.0.3" - detect-port-alt "1.1.6" - escape-string-regexp "2.0.0" - filesize "6.1.0" - find-up "4.1.0" - fork-ts-checker-webpack-plugin "4.1.6" - global-modules "2.0.0" - globby "11.0.1" - gzip-size "5.1.1" - immer "8.0.1" - is-root "2.1.0" - loader-utils "2.0.0" - open "^7.0.2" - pkg-up "3.1.0" - prompts "2.4.0" - react-error-overlay "^6.0.9" - recursive-readdir "2.2.2" - shell-quote "1.7.2" - strip-ansi "6.0.0" - text-table "0.2.0" - -react-dom@16.13.1: - version "16.13.1" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.13.1.tgz#c1bd37331a0486c078ee54c4740720993b2e0e7f" - integrity sha512-81PIMmVLnCNLO/fFOQxdQkvEq/+Hfpv24XNJfpyZhTRfO0QcmQIF/PgCa1zCOj2w1hrn12MFLyaJ/G0+Mxtfag== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - scheduler "^0.19.1" - -react-error-overlay@^6.0.9: - version "6.0.9" - resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.9.tgz#3c743010c9359608c375ecd6bc76f35d93995b0a" - integrity sha512-nQTTcUu+ATDbrSD1BZHr5kgSD4oF8OFjxun8uAaL8RwPBacGBNPf/yAuVVdx17N8XNzRDMrZ9XcKZHCjPW+9ew== - -react-fast-compare@^3.1.1: - version "3.2.0" - resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.0.tgz#641a9da81b6a6320f270e89724fb45a0b39e43bb" - integrity sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA== - -react-helmet@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/react-helmet/-/react-helmet-6.1.0.tgz#a750d5165cb13cf213e44747502652e794468726" - integrity sha512-4uMzEY9nlDlgxr61NL3XbKRy1hEkXmKNXhjbAIOVw5vcFrsdYbH2FEwcNyWvWinl103nXgzYNlns9ca+8kFiWw== - dependencies: - object-assign "^4.1.1" - prop-types "^15.7.2" - react-fast-compare "^3.1.1" - react-side-effect "^2.1.0" - -react-is@^16.12.0, react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1: +react-is@^16.12.0: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== @@ -20883,119 +16978,6 @@ react-is@^17.0.1: resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== -react-json-view@^1.21.1: - version "1.21.3" - resolved "https://registry.yarnpkg.com/react-json-view/-/react-json-view-1.21.3.tgz#f184209ee8f1bf374fb0c41b0813cff54549c475" - integrity sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw== - dependencies: - flux "^4.0.1" - react-base16-styling "^0.6.0" - react-lifecycles-compat "^3.0.4" - react-textarea-autosize "^8.3.2" - -react-lifecycles-compat@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362" - integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA== - -react-live@^2.2.3: - version "2.2.3" - resolved "https://registry.yarnpkg.com/react-live/-/react-live-2.2.3.tgz#260f99194213799f0005e473e7a4154c699d6a7c" - integrity sha512-tpKruvfytNETuzO3o1mrQUj180GVrq35IE8F5gH1NJVPt4szYCx83/dOSCOyjgRhhc3gQvl0pQ3k/CjOjwJkKQ== - dependencies: - buble "0.19.6" - core-js "^2.4.1" - dom-iterator "^1.0.0" - prism-react-renderer "^1.0.1" - prop-types "^15.5.8" - react-simple-code-editor "^0.10.0" - unescape "^1.0.1" - -react-loadable-ssr-addon@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/react-loadable-ssr-addon/-/react-loadable-ssr-addon-0.3.0.tgz#ae9b2d3b11721930f8d8255476d288c0e9f9290f" - integrity sha512-E+lnmDakV0k6ut6R2J77vurwCOwTKEwKlHs9S62G8ez+ujecLPcqjt3YAU8M58kIGjp2QjFlZ7F9QWkq/mr6Iw== - dependencies: - "@babel/runtime" "^7.10.3" - -react-loadable@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/react-loadable/-/react-loadable-5.5.0.tgz#582251679d3da86c32aae2c8e689c59f1196d8c4" - integrity sha512-C8Aui0ZpMd4KokxRdVAm2bQtI03k2RMRNzOB+IipV3yxFTSVICv7WoUr5L9ALB5BmKO1iHgZtWM8EvYG83otdg== - dependencies: - prop-types "^15.5.0" - -react-router-config@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/react-router-config/-/react-router-config-5.1.1.tgz#0f4263d1a80c6b2dc7b9c1902c9526478194a988" - integrity sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg== - dependencies: - "@babel/runtime" "^7.1.2" - -react-router-dom@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.2.0.tgz#9e65a4d0c45e13289e66c7b17c7e175d0ea15662" - integrity sha512-gxAmfylo2QUjcwxI63RhQ5G85Qqt4voZpUXSEqCwykV0baaOTQDR1f0PmY8AELqIyVc0NEZUj0Gov5lNGcXgsA== - dependencies: - "@babel/runtime" "^7.1.2" - history "^4.9.0" - loose-envify "^1.3.1" - prop-types "^15.6.2" - react-router "5.2.0" - tiny-invariant "^1.0.2" - tiny-warning "^1.0.0" - -react-router@5.2.0, react-router@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.2.0.tgz#424e75641ca8747fbf76e5ecca69781aa37ea293" - integrity sha512-smz1DUuFHRKdcJC0jobGo8cVbhO3x50tCL4icacOlcwDOEQPq4TMqwx3sY1TP+DvtTgz4nm3thuo7A+BK2U0Dw== - dependencies: - "@babel/runtime" "^7.1.2" - history "^4.9.0" - hoist-non-react-statics "^3.1.0" - loose-envify "^1.3.1" - mini-create-react-context "^0.4.0" - path-to-regexp "^1.7.0" - prop-types "^15.6.2" - react-is "^16.6.0" - tiny-invariant "^1.0.2" - tiny-warning "^1.0.0" - -react-side-effect@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/react-side-effect/-/react-side-effect-2.1.1.tgz#66c5701c3e7560ab4822a4ee2742dee215d72eb3" - integrity sha512-2FoTQzRNTncBVtnzxFOk2mCpcfxQpenBMbk5kSVBg5UcPqV9fRbgY2zhb7GTWWOlpFmAxhClBDlIq8Rsubz1yQ== - -react-simple-code-editor@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/react-simple-code-editor/-/react-simple-code-editor-0.10.0.tgz#73e7ac550a928069715482aeb33ccba36efe2373" - integrity sha512-bL5W5mAxSW6+cLwqqVWY47Silqgy2DKDTR4hDBrLrUqC5BXc29YVx17l2IZk5v36VcDEq1Bszu2oHm1qBwKqBA== - -react-textarea-autosize@^8.3.2: - version "8.3.2" - resolved "https://registry.yarnpkg.com/react-textarea-autosize/-/react-textarea-autosize-8.3.2.tgz#4f9374d357b0a6f6469956726722549124a1b2db" - integrity sha512-JrMWVgQSaExQByP3ggI1eA8zF4mF0+ddVuX7acUeK2V7bmrpjVOY72vmLz2IXFJSAXoY3D80nEzrn0GWajWK3Q== - dependencies: - "@babel/runtime" "^7.10.2" - use-composed-ref "^1.0.0" - use-latest "^1.0.0" - -react-toggle@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/react-toggle/-/react-toggle-4.1.2.tgz#b00500832f925ad524356d909821821ae39f6c52" - integrity sha512-4Ohw31TuYQdhWfA6qlKafeXx3IOH7t4ZHhmRdwsm1fQREwOBGxJT+I22sgHqR/w8JRdk+AeMCJXPImEFSrNXow== - dependencies: - classnames "^2.2.5" - -react@16.13.1: - version "16.13.1" - resolved "https://registry.yarnpkg.com/react/-/react-16.13.1.tgz#2e818822f1a9743122c063d6410d85c1e3afe48e" - integrity sha512-YMZQQq32xHLX0bz5Mnibv1/LHb3Sqzngu7xstSM+vrkE5Kzr9xE0yMByK5kMoTK30YVJE61WfbxIFFvfeDKT1w== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - read-cmd-shim@^1.0.1: version "1.0.5" resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-1.0.5.tgz#87e43eba50098ba5a32d0ceb583ab8e43b961c16" @@ -21119,7 +17101,7 @@ read@1, read@~1.0.1: string_decoder "~1.1.1" util-deprecate "~1.0.1" -"readable-stream@2 || 3", readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.0.6, readable-stream@^3.1.0, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.5.0, readable-stream@^3.6.0: +"readable-stream@2 || 3", readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.0.6, readable-stream@^3.1.0, readable-stream@^3.4.0, readable-stream@^3.5.0, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -21181,11 +17163,6 @@ readdirp@~3.5.0: dependencies: picomatch "^2.2.1" -reading-time@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/reading-time/-/reading-time-1.3.0.tgz#d13e74431589a4a9038669f24d5acbc08bbb015d" - integrity sha512-RJ8J5O6UvrclfZpcPSPuKusrdRfoY7uXXoYOOdeswZNtSkQaewT3919yz6RyloDBR+iwcUyz5zGOUjhgvfuv3g== - rechoir@^0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" @@ -21193,13 +17170,6 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" -recursive-readdir@2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/recursive-readdir/-/recursive-readdir-2.2.2.tgz#9946fb3274e1628de6e36b2f6714953b4845094f" - integrity sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg== - dependencies: - minimatch "3.0.4" - redent@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" @@ -21224,14 +17194,7 @@ redent@^3.0.0: indent-string "^4.0.0" strip-indent "^3.0.0" -regenerate-unicode-properties@^8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec" - integrity sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA== - dependencies: - regenerate "^1.4.0" - -regenerate@^1.2.1, regenerate@^1.4.0: +regenerate@^1.2.1: version "1.4.2" resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== @@ -21255,13 +17218,6 @@ regenerator-transform@^0.10.0: babel-types "^6.19.0" private "^0.1.6" -regenerator-transform@^0.14.2: - version "0.14.5" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.5.tgz#c98da154683671c9c4dcb16ece736517e1b7feb4" - integrity sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw== - dependencies: - "@babel/runtime" "^7.8.4" - regex-cache@^0.4.2: version "0.4.4" resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" @@ -21304,18 +17260,6 @@ regexpu-core@^2.0.0: regjsgen "^0.2.0" regjsparser "^0.1.4" -regexpu-core@^4.2.0, regexpu-core@^4.5.4, regexpu-core@^4.7.1: - version "4.7.1" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.1.tgz#2dea5a9a07233298fbf0db91fa9abc4c6e0f8ad6" - integrity sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ== - dependencies: - regenerate "^1.4.0" - regenerate-unicode-properties "^8.2.0" - regjsgen "^0.5.1" - regjsparser "^0.6.4" - unicode-match-property-ecmascript "^1.0.4" - unicode-match-property-value-ecmascript "^1.2.0" - regextras@^0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/regextras/-/regextras-0.7.1.tgz#be95719d5f43f9ef0b9fa07ad89b7c606995a3b2" @@ -21340,11 +17284,6 @@ regjsgen@^0.2.0: resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= -regjsgen@^0.5.1: - version "0.5.2" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.2.tgz#92ff295fb1deecbf6ecdab2543d207e91aa33733" - integrity sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A== - regjsparser@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" @@ -21352,22 +17291,6 @@ regjsparser@^0.1.4: dependencies: jsesc "~0.5.0" -regjsparser@^0.6.4: - version "0.6.9" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.9.tgz#b489eef7c9a2ce43727627011429cf833a7183e6" - integrity sha512-ZqbNRz1SNjLAiYuwY0zoXW8Ne675IX5q+YHioAGbCw4X96Mjl2+dcX9B2ciaeyYjViDAfvIjFpQjJgLttTEERQ== - dependencies: - jsesc "~0.5.0" - -rehype-parse@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/rehype-parse/-/rehype-parse-6.0.2.tgz#aeb3fdd68085f9f796f1d3137ae2b85a98406964" - integrity sha512-0S3CpvpTAgGmnz8kiCyFLGuW5yA4OQhyNTm/nwPopZ7+PI11WnGl1TTWTGv/2hPEe/g2jRLlhVVSsoDH8waRug== - dependencies: - hast-util-from-parse5 "^5.0.0" - parse5 "^5.0.0" - xtend "^4.0.0" - relateurl@^0.2.7: version "0.2.7" resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" @@ -21421,72 +17344,6 @@ remap-istanbul@0.13.0: source-map "0.6.1" through2 "3.0.0" -remark-admonitions@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/remark-admonitions/-/remark-admonitions-1.2.1.tgz#87caa1a442aa7b4c0cafa04798ed58a342307870" - integrity sha512-Ji6p68VDvD+H1oS95Fdx9Ar5WA2wcDA4kwrrhVU7fGctC6+d3uiMICu7w7/2Xld+lnU7/gi+432+rRbup5S8ow== - dependencies: - rehype-parse "^6.0.2" - unified "^8.4.2" - unist-util-visit "^2.0.1" - -remark-emoji@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/remark-emoji/-/remark-emoji-2.1.0.tgz#69165d1181b98a54ad5d9ef811003d53d7ebc7db" - integrity sha512-lDddGsxXURV01WS9WAiS9rO/cedO1pvr9tahtLhr6qCGFhHG4yZSJW3Ha4Nw9Uk1hLNmUBtPC0+m45Ms+xEitg== - dependencies: - emoticon "^3.2.0" - node-emoji "^1.10.0" - unist-util-visit "^2.0.2" - -remark-footnotes@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/remark-footnotes/-/remark-footnotes-2.0.0.tgz#9001c4c2ffebba55695d2dd80ffb8b82f7e6303f" - integrity sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ== - -remark-mdx@1.6.22: - version "1.6.22" - resolved "https://registry.yarnpkg.com/remark-mdx/-/remark-mdx-1.6.22.tgz#06a8dab07dcfdd57f3373af7f86bd0e992108bbd" - integrity sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ== - dependencies: - "@babel/core" "7.12.9" - "@babel/helper-plugin-utils" "7.10.4" - "@babel/plugin-proposal-object-rest-spread" "7.12.1" - "@babel/plugin-syntax-jsx" "7.12.1" - "@mdx-js/util" "1.6.22" - is-alphabetical "1.0.4" - remark-parse "8.0.3" - unified "9.2.0" - -remark-parse@8.0.3: - version "8.0.3" - resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-8.0.3.tgz#9c62aa3b35b79a486454c690472906075f40c7e1" - integrity sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q== - dependencies: - ccount "^1.0.0" - collapse-white-space "^1.0.2" - is-alphabetical "^1.0.0" - is-decimal "^1.0.0" - is-whitespace-character "^1.0.0" - is-word-character "^1.0.0" - markdown-escapes "^1.0.0" - parse-entities "^2.0.0" - repeat-string "^1.5.4" - state-toggle "^1.0.0" - trim "0.0.1" - trim-trailing-lines "^1.0.0" - unherit "^1.0.4" - unist-util-remove-position "^2.0.0" - vfile-location "^3.0.0" - xtend "^4.0.1" - -remark-squeeze-paragraphs@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz#76eb0e085295131c84748c8e43810159c5653ead" - integrity sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw== - dependencies: - mdast-squeeze-paragraphs "^4.0.0" - remedial@^1.0.7: version "1.0.8" resolved "https://registry.yarnpkg.com/remedial/-/remedial-1.0.8.tgz#a5e4fd52a0e4956adbaf62da63a5a46a78c578a0" @@ -21502,23 +17359,12 @@ remove-trailing-spaces@^1.0.6: resolved "https://registry.yarnpkg.com/remove-trailing-spaces/-/remove-trailing-spaces-1.0.8.tgz#4354d22f3236374702f58ee373168f6d6887ada7" integrity sha512-O3vsMYfWighyFbTd8hk8VaSj9UAGENxAtX+//ugIst2RMk5e03h6RoIS+0ylsFxY1gvmPuAY/PO4It+gPEeySA== -renderkid@^2.0.4: - version "2.0.5" - resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.5.tgz#483b1ac59c6601ab30a7a596a5965cabccfdd0a5" - integrity sha512-ccqoLg+HLOHq1vdfYNm4TBeaCDIi1FLt3wGojTDSvdewUv65oTmI3cnT2E4hRjl1gzKZIPK+KZrXzlUYKnR+vQ== - dependencies: - css-select "^2.0.2" - dom-converter "^0.2" - htmlparser2 "^3.10.1" - lodash "^4.17.20" - strip-ansi "^3.0.0" - repeat-element@^1.1.2: version "1.1.3" resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== -repeat-string@^1.5.2, repeat-string@^1.5.4, repeat-string@^1.6.1: +repeat-string@^1.5.2, repeat-string@^1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= @@ -21592,11 +17438,6 @@ require-from-string@^2.0.0, require-from-string@^2.0.2: resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== -"require-like@>= 0.1.1": - version "0.1.2" - resolved "https://registry.yarnpkg.com/require-like/-/require-like-0.1.2.tgz#ad6f30c13becd797010c468afa775c0c0a6b47fa" - integrity sha1-rW8wwTvs15cBDEaK+ndcDAprR/o= - require-main-filename@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" @@ -21607,11 +17448,6 @@ require-main-filename@^2.0.0: resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= - resolve-cwd@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" @@ -21649,11 +17485,6 @@ resolve-from@^4.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== -resolve-pathname@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-3.0.0.tgz#99d02224d3cf263689becbb393bc560313025dcd" - integrity sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng== - resolve-url@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" @@ -21671,7 +17502,7 @@ resolve@1.17.0, resolve@~1.17.0: dependencies: path-parse "^1.0.6" -resolve@^1.0.0, resolve@^1.1.4, resolve@^1.1.5, resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.20.0, resolve@^1.3.2, resolve@^1.4.0, resolve@^1.8.1: +resolve@^1.0.0, resolve@^1.1.4, resolve@^1.1.5, resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.20.0, resolve@^1.4.0, resolve@^1.8.1: version "1.22.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== @@ -21727,26 +17558,11 @@ retry@^0.10.0: resolved "https://registry.yarnpkg.com/retry/-/retry-0.10.1.tgz#e76388d217992c252750241d3d3956fed98d8ff4" integrity sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q= -retry@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/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" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rgb-regex@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/rgb-regex/-/rgb-regex-1.0.1.tgz#c0e0d6882df0e23be254a475e8edd41915feaeb1" - integrity sha1-wODWiC3w4jviVKR16O3UGRX+rrE= - -rgba-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" - integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= - rimraf@2.6.3: version "2.6.3" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" @@ -21793,17 +17609,6 @@ rsvp@^4.8.4: resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== -rtlcss@^2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/rtlcss/-/rtlcss-2.6.2.tgz#55b572b52c70015ba6e03d497e5c5cb8137104b4" - integrity sha512-06LFAr+GAPo+BvaynsXRfoYTJvSaWRyOhURCQ7aeI1MKph9meM222F+Zkt3bDamyHHJuGi3VPtiRkpyswmQbGA== - dependencies: - "@choojs/findup" "^0.2.1" - chalk "^2.4.2" - mkdirp "^0.5.1" - postcss "^6.0.23" - strip-json-comments "^2.0.0" - run-async@^2.2.0, run-async@^2.4.0: version "2.4.1" resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" @@ -21828,7 +17633,7 @@ rustbn.js@~0.2.0: resolved "https://registry.yarnpkg.com/rustbn.js/-/rustbn.js-0.2.0.tgz#8082cb886e707155fd1cb6f23bd591ab8d55d0ca" integrity sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA== -rxjs@^6.3.3, rxjs@^6.4.0, rxjs@^6.6.0, rxjs@^6.6.3, rxjs@^6.6.6: +rxjs@^6.3.3, rxjs@^6.4.0, rxjs@^6.6.0, rxjs@^6.6.6: version "6.6.7" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== @@ -21893,7 +17698,7 @@ satoshi-bitcoin@1.0.4: dependencies: big.js "^3.1.3" -sax@^1.2.1, sax@^1.2.4, sax@~1.2.4: +sax@^1.2.1: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== @@ -21905,14 +17710,6 @@ saxes@^5.0.1: dependencies: xmlchars "^2.2.0" -scheduler@^0.19.1: - version "0.19.1" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.19.1.tgz#4f3e2ed2c1a7d65681f4c854fa8c5a1ccb40f196" - integrity sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - schema-utils@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" @@ -21922,15 +17719,6 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" -schema-utils@^2.0.0, schema-utils@^2.6.5: - version "2.7.1" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" - integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== - dependencies: - "@types/json-schema" "^7.0.5" - ajv "^6.12.4" - ajv-keywords "^3.5.2" - schema-utils@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.0.0.tgz#67502f6aa2b66a2d4032b4279a2944978a0913ef" @@ -22008,14 +17796,6 @@ secp256k1@4.0.2, secp256k1@^4.0.1: node-addon-api "^2.0.0" node-gyp-build "^4.2.0" -section-matter@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/section-matter/-/section-matter-1.0.0.tgz#e9041953506780ec01d59f292a19c7b850b84167" - integrity sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA== - dependencies: - extend-shallow "^2.0.1" - kind-of "^6.0.0" - seedrandom@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/seedrandom/-/seedrandom-3.0.1.tgz#eb3dde015bcf55df05a233514e5df44ef9dce083" @@ -22028,18 +17808,6 @@ seek-bzip@^1.0.5: dependencies: commander "^2.8.1" -select-hose@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" - integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= - -selfsigned@^1.10.8: - version "1.10.8" - resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.8.tgz#0d17208b7d12c33f8eac85c41835f27fc3d81a30" - integrity sha512-2P4PtieJeEwVgTU9QEcwIRDQ/mXJLX8/+I3ur+Pg16nS8oNbrGxEso9NyYWy8NAmXiNl4dlAp5MwoNeCWzON4w== - dependencies: - node-forge "^0.10.0" - semaphore-async-await@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/semaphore-async-await/-/semaphore-async-await-1.5.1.tgz#857bef5e3644601ca4b9570b87e9df5ca12974fa" @@ -22055,13 +17823,6 @@ semver-compare@^1.0.0: resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w= -semver-diff@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-3.1.1.tgz#05f77ce59f325e00e2706afd67bb506ddb1ca32b" - integrity sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg== - dependencies: - semver "^6.3.0" - "semver@2 || 3 || 4 || 5", "semver@2.x || 3.x || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0, semver@^5.7.1: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" @@ -22149,20 +17910,6 @@ serialize-javascript@^5.0.1: dependencies: randombytes "^2.1.0" -serve-handler@^6.1.3: - version "6.1.3" - resolved "https://registry.yarnpkg.com/serve-handler/-/serve-handler-6.1.3.tgz#1bf8c5ae138712af55c758477533b9117f6435e8" - integrity sha512-FosMqFBNrLyeiIDvP1zgO6YoTzFYHxLDEIavhlmQ+knB2Z7l1t+kGLHkZIDN7UVWqQAmKI3D20A6F6jo3nDd4w== - dependencies: - bytes "3.0.0" - content-disposition "0.5.2" - fast-url-parser "1.1.3" - mime-types "2.1.18" - minimatch "3.0.4" - path-is-inside "1.0.2" - path-to-regexp "2.2.1" - range-parser "1.2.0" - serve-index@^1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" @@ -22269,11 +18016,6 @@ shallow-copy@~0.0.1: resolved "https://registry.yarnpkg.com/shallow-copy/-/shallow-copy-0.0.1.tgz#415f42702d73d810330292cc5ee86eae1a11a170" integrity sha1-QV9CcC1z2BAzApLMXuhurhoRoXA= -shallowequal@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" - integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== - shasum-object@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/shasum-object/-/shasum-object-1.0.0.tgz#0b7b74ff5b66ecf9035475522fa05090ac47e29e" @@ -22305,12 +18047,12 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shell-quote@1.7.2, shell-quote@^1.6.1: +shell-quote@^1.6.1: version "1.7.2" resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.2.tgz#67a7d02c76c9da24f99d20808fcaded0e0e04be2" integrity sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg== -shelljs@0.8.5, shelljs@^0.8.1, shelljs@^0.8.4: +shelljs@0.8.5, shelljs@^0.8.1: version "0.8.5" resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.5.tgz#de055408d8361bed66c669d2f000538ced8ee20c" integrity sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow== @@ -22342,7 +18084,7 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" -signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: +signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== @@ -22371,37 +18113,11 @@ simple-statistics@7.4.0: resolved "https://registry.yarnpkg.com/simple-statistics/-/simple-statistics-7.4.0.tgz#4319348aff39d9cc3aababe02671568674807515" integrity sha512-1mXlR6NEIwMsKWjD+exMd4vvRWmrrBk+MT1n3O5NBjbxjIh1E1YlQikwyNdQjPcq8E+EgUkFmj67gr2bfAIwGg== -simple-swizzle@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" - integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= - dependencies: - is-arrayish "^0.3.1" - -sirv@^1.0.7: - version "1.0.11" - resolved "https://registry.yarnpkg.com/sirv/-/sirv-1.0.11.tgz#81c19a29202048507d6ec0d8ba8910fda52eb5a4" - integrity sha512-SR36i3/LSWja7AJNRBz4fF/Xjpn7lQFI30tZ434dIy+bitLYSP+ZEenHg36i23V2SGEz+kqjksg0uOGZ5LPiqg== - dependencies: - "@polka/url" "^1.0.0-next.9" - mime "^2.3.1" - totalist "^1.0.0" - sisteransi@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== -sitemap@^6.3.6: - version "6.4.0" - resolved "https://registry.yarnpkg.com/sitemap/-/sitemap-6.4.0.tgz#b4bc4edf36de742405a7572bc3e467ba484b852e" - integrity sha512-DoPKNc2/apQZTUnfiOONWctwq7s6dZVspxAZe2VPMNtoqNq7HgXRvlRnbIpKjf+8+piQdWncwcy+YhhTGY5USQ== - dependencies: - "@types/node" "^14.14.28" - "@types/sax" "^1.2.1" - arg "^5.0.0" - sax "^1.2.4" - slash@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" @@ -22504,27 +18220,6 @@ snapdragon@^0.8.1: source-map-resolve "^0.5.0" use "^3.1.0" -sockjs-client@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.5.0.tgz#2f8ff5d4b659e0d092f7aba0b7c386bd2aa20add" - integrity sha512-8Dt3BDi4FYNrCFGTL/HtwVzkARrENdwOUf1ZoW/9p3M8lZdFT35jVdrHza+qgxuG9H3/shR4cuX/X9umUrjP8Q== - dependencies: - debug "^3.2.6" - eventsource "^1.0.7" - faye-websocket "^0.11.3" - inherits "^2.0.4" - json3 "^3.3.3" - url-parse "^1.4.7" - -sockjs@^0.3.21: - version "0.3.21" - resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.21.tgz#b34ffb98e796930b60a0cfa11904d6a339a7d417" - integrity sha512-DhbPFGpxjc6Z3I+uX07Id5ZO2XwYsWOrYjaSeieES78cq+JaJvVe5q/m1uvjIQhXinhIeCFRH6JgXe+mvVMyXw== - dependencies: - faye-websocket "^0.11.3" - uuid "^3.4.0" - websocket-driver "^0.7.4" - socks-proxy-agent@^4.0.0: version "4.0.2" resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz#3c8991f3145b2799e70e11bd5fbc8b1963116386" @@ -22651,18 +18346,6 @@ solparse@2.2.8: pegjs "^0.10.0" yargs "^10.0.3" -sort-css-media-queries@1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/sort-css-media-queries/-/sort-css-media-queries-1.5.0.tgz#8f605ad372caad0b81be010311882c046e738093" - integrity sha512-QofNE7CEVH1AKdhS7L9IPbV9UtyQYNXyw++8lC+xG6iOLlpzsmncZRiKbihTAESvZ8wOhwnPoesHbMrehrQyyw== - -sort-keys@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" - integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0= - dependencies: - is-plain-obj "^1.0.0" - sort-keys@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" @@ -22751,16 +18434,11 @@ source-map@~0.2.0: dependencies: amdefine ">=0.0.4" -sourcemap-codec@^1.4.1, sourcemap-codec@^1.4.4: +sourcemap-codec@^1.4.1: version "1.4.8" resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== -space-separated-tokens@^1.0.0: - version "1.1.5" - resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz#85f32c3d10d9682007e917414ddc5c26d1aa6899" - integrity sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA== - spawn-wrap@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/spawn-wrap/-/spawn-wrap-2.0.0.tgz#103685b8b8f9b79771318827aa78650a610d457e" @@ -22794,33 +18472,10 @@ spdx-expression-parse@^3.0.0, spdx-expression-parse@^3.0.1: spdx-exceptions "^2.1.0" spdx-license-ids "^3.0.0" -spdx-license-ids@^3.0.0: - version "3.0.7" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz#e9c18a410e5ed7e12442a549fbd8afa767038d65" - integrity sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ== - -spdy-transport@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31" - integrity sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw== - dependencies: - debug "^4.1.0" - detect-node "^2.0.4" - hpack.js "^2.1.6" - obuf "^1.1.2" - readable-stream "^3.0.6" - wbuf "^1.7.3" - -spdy@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.2.tgz#b74f466203a3eda452c02492b91fb9e84a27677b" - integrity sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA== - dependencies: - debug "^4.1.0" - handle-thing "^2.0.0" - http-deceiver "^1.2.7" - select-hose "^2.0.0" - spdy-transport "^3.0.0" +spdx-license-ids@^3.0.0: + version "3.0.7" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz#e9c18a410e5ed7e12442a549fbd8afa767038d65" + integrity sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ== split-on-first@^1.0.0: version "1.1.0" @@ -22903,11 +18558,6 @@ ssri@^8.0.1: 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" - integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== - stack-trace@0.0.10: version "0.0.10" resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" @@ -22927,11 +18577,6 @@ stacktrace-parser@^0.1.10: dependencies: type-fest "^0.7.1" -state-toggle@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/state-toggle/-/state-toggle-1.0.3.tgz#e123b16a88e143139b09c6852221bc9815917dfe" - integrity sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ== - static-eval@^2.0.5: version "2.1.0" resolved "https://registry.yarnpkg.com/static-eval/-/static-eval-2.1.0.tgz#a16dbe54522d7fa5ef1389129d813fd47b148014" @@ -22972,13 +18617,6 @@ static-module@^3.0.2: resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= -std-env@^2.2.1: - version "2.3.0" - resolved "https://registry.yarnpkg.com/std-env/-/std-env-2.3.0.tgz#66d4a4a4d5224242ed8e43f5d65cfa9095216eee" - integrity sha512-4qT5B45+Kjef2Z6pE0BkskzsH0GO7GrND0wGlTM1ioUe3v0dGYx9ZJH0Aro/YyA8fqQ5EyIKDRjZojJYMFTflw== - dependencies: - ci-info "^3.0.0" - stealthy-require@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" @@ -23124,7 +18762,7 @@ string-width@^3.0.0, string-width@^3.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" -string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -23195,13 +18833,6 @@ stringify-object@^3.3.0: is-obj "^1.0.1" is-regexp "^1.0.0" -strip-ansi@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" - integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== - dependencies: - ansi-regex "^5.0.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" @@ -23230,11 +18861,6 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: dependencies: ansi-regex "^5.0.1" -strip-bom-string@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-bom-string/-/strip-bom-string-1.0.0.tgz#e5211e9224369fbb81d633a2f00044dc8cedad92" - integrity sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI= - strip-bom@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" @@ -23314,38 +18940,6 @@ strong-log-transformer@^2.0.0: minimist "^1.2.0" through "^2.3.4" -style-to-object@0.3.0, style-to-object@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-0.3.0.tgz#b1b790d205991cc783801967214979ee19a76e46" - integrity sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA== - dependencies: - inline-style-parser "0.1.1" - -styled-components@5.2.1: - version "5.2.1" - resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-5.2.1.tgz#6ed7fad2dc233825f64c719ffbdedd84ad79101a" - integrity sha512-sBdgLWrCFTKtmZm/9x7jkIabjFNVzCUeKfoQsM6R3saImkUnjx0QYdLwJHBjY9ifEcmjDamJDVfknWm1yxZPxQ== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/traverse" "^7.4.5" - "@emotion/is-prop-valid" "^0.8.8" - "@emotion/stylis" "^0.8.4" - "@emotion/unitless" "^0.7.4" - babel-plugin-styled-components ">= 1" - css-to-react-native "^3.0.0" - hoist-non-react-statics "^3.0.0" - shallowequal "^1.1.0" - supports-color "^5.5.0" - -stylehacks@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-4.0.3.tgz#6718fcaf4d1e07d8a1318690881e8d96726a71d5" - integrity sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g== - dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - subarg@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/subarg/-/subarg-1.0.0.tgz#f62cf17581e996b48fc965699f54c06ae268b8d2" @@ -23415,7 +19009,7 @@ supports-color@^3.1.0: dependencies: has-flag "^1.0.0" -supports-color@^5.3.0, supports-color@^5.4.0, supports-color@^5.5.0: +supports-color@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== @@ -23449,11 +19043,6 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -svg-parser@^2.0.2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/svg-parser/-/svg-parser-2.0.4.tgz#fdc2e29e13951736140b76cb122c8ee6630eb6b5" - integrity sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ== - svg-to-pdfkit@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/svg-to-pdfkit/-/svg-to-pdfkit-0.1.8.tgz#5921765922044843f0c1a5b25ec1ef8a4a33b8af" @@ -23461,25 +19050,6 @@ svg-to-pdfkit@^0.1.8: dependencies: pdfkit ">=0.8.1" -svgo@^1.0.0, svgo@^1.2.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.2.tgz#b6dc511c063346c9e415b81e43401145b96d4167" - integrity sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw== - dependencies: - chalk "^2.4.1" - coa "^2.0.2" - css-select "^2.0.0" - css-select-base-adapter "^0.1.1" - css-tree "1.0.0-alpha.37" - csso "^4.0.2" - js-yaml "^3.13.1" - mkdirp "~0.5.1" - object.values "^1.1.0" - sax "~1.2.4" - stable "^0.1.8" - unquote "~1.1.1" - util.promisify "~1.0.0" - swap-case@^1.1.0: version "1.1.2" resolved "https://registry.yarnpkg.com/swap-case/-/swap-case-1.1.2.tgz#c39203a4587385fad3c850a0bd1bcafa081974e3" @@ -23665,7 +19235,7 @@ terminal-link@^2.0.0: ansi-escapes "^4.2.1" supports-hyperlinks "^2.0.0" -terser-webpack-plugin@4.2.3, terser-webpack-plugin@^4.1.0: +terser-webpack-plugin@4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz#28daef4a83bd17c1db0297070adc07fc8cfc6a9a" integrity sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ== @@ -23745,7 +19315,7 @@ text-extensions@^1.0.0: resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26" integrity sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ== -text-table@0.2.0, text-table@^0.2.0: +text-table@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= @@ -23810,11 +19380,6 @@ through@~2.2.7: resolved "https://registry.yarnpkg.com/through/-/through-2.2.7.tgz#6e8e21200191d4eb6a99f6f010df46aa1c6eb2bd" integrity sha1-bo4hIAGR1OtqmfbwEN9Gqhxusr0= -thunky@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" - integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== - time-stamp@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.1.0.tgz#764a5a11af50561921b133f3b44e618687e0f5c3" @@ -23839,26 +19404,11 @@ timers-browserify@^2.0.4: dependencies: setimmediate "^1.0.4" -timsort@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" - integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= - tiny-inflate@^1.0.0, tiny-inflate@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/tiny-inflate/-/tiny-inflate-1.0.3.tgz#122715494913a1805166aaf7c93467933eea26c4" integrity sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw== -tiny-invariant@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.1.0.tgz#634c5f8efdc27714b7f386c35e6760991d230875" - integrity sha512-ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw== - -tiny-warning@^1.0.0, tiny-warning@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.3.tgz#94a30db453df4c643d0fd566060d60a875d84754" - integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA== - title-case@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/title-case/-/title-case-2.1.1.tgz#3e127216da58d2bc5becf137ab91dae3a7cd8faa" @@ -23955,11 +19505,6 @@ toidentifier@1.0.0: resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== -totalist@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/totalist/-/totalist-1.1.0.tgz#a4d65a3e546517701e3e5c37a47a70ac97fe56df" - integrity sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g== - tough-cookie@^2.3.3, tough-cookie@~2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" @@ -24031,21 +19576,6 @@ trim-right@^1.0.1: resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= -trim-trailing-lines@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz#bd4abbec7cc880462f10b2c8b5ce1d8d1ec7c2c0" - integrity sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ== - -trim@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/trim/-/trim-0.0.1.tgz#5858547f6b290757ee95cccc666fb50084c460dd" - integrity sha1-WFhUf2spB1fulczMZm+1AITEYN0= - -trough@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.5.tgz#b8b639cefad7d0bb2abd37d433ff8293efa5f406" - integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA== - "true-case-path@^2.2.1": version "2.2.1" resolved "https://registry.yarnpkg.com/true-case-path/-/true-case-path-2.2.1.tgz#c5bf04a5bbec3fd118be4084461b3a27c4d796bf" @@ -24066,11 +19596,6 @@ ts-essentials@^1.0.0: resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-1.0.4.tgz#ce3b5dade5f5d97cf69889c11bf7d2da8555b15a" integrity sha512-q3N1xS4vZpRouhYHDPwO0bDW3EZ6SK9CrrDHxi/D6BPReSjpVgWIOpLS2o0gSBZm+7q/wyKp6RVM1AeeW7uyfQ== -ts-essentials@^2.0.3: - version "2.0.12" - resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-2.0.12.tgz#c9303f3d74f75fa7528c3d49b80e089ab09d8745" - integrity sha512-3IVX4nI6B5cc31/GFFE+i8ey/N2eA0CZDbo6n0yrz0zDX8ZJ8djmU1p+XRz7G3is0F3bB3pu2pAroFdAWQKU3w== - ts-essentials@^6.0.3: version "6.0.7" resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-6.0.7.tgz#5f4880911b7581a873783740ce8b94da163d18a6" @@ -24185,11 +19710,6 @@ ts-node@^9: source-map-support "^0.5.17" yn "3.1.1" -ts-pnp@^1.1.6: - version "1.2.0" - resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92" - integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw== - ts-simple-ast@12.4.0: version "12.4.0" resolved "https://registry.yarnpkg.com/ts-simple-ast/-/ts-simple-ast-12.4.0.tgz#6b53f6d6a59145da637dfe0e8c646d1e66ba278a" @@ -24440,35 +19960,6 @@ typedarray@^0.0.6: resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= -typedoc-default-themes@^0.11.1: - version "0.11.4" - resolved "https://registry.yarnpkg.com/typedoc-default-themes/-/typedoc-default-themes-0.11.4.tgz#1bc55b7c8d1132844616ff6f570e1e2cd0eb7343" - integrity sha512-Y4Lf+qIb9NTydrexlazAM46SSLrmrQRqWiD52593g53SsmUFioAsMWt8m834J6qsp+7wHRjxCXSZeiiW5cMUdw== - -typedoc-plugin-markdown@3.0.5: - version "3.0.5" - resolved "https://registry.yarnpkg.com/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.0.5.tgz#89d2e41d004b65d04ac84ff4b65e45b560089f16" - integrity sha512-ubuX7v9UmW6Tw6jcefChJwR8iqTFjjE8wu+OZ3/wDfAfQ8jvyXxjjA842owHFy7OunDwRHNZ+n1eFB+UpaJNQg== - dependencies: - handlebars "^4.7.6" - -typedoc@0.19.1: - version "0.19.1" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.19.1.tgz#1c92608fc4944c6e2223cf3a43b603272b4ac94d" - integrity sha512-EqZpRJQUnkwHA1yBhaDExEXUZIiWKddkrDXhRcfUzpnu6pizxNmVTw5IZ3mu682Noa4zQCniE0YNjaAwHQodrA== - dependencies: - fs-extra "^9.0.1" - handlebars "^4.7.6" - highlight.js "^10.0.0" - lodash "^4.17.20" - lunr "^2.3.9" - marked "^1.1.1" - minimatch "^3.0.0" - progress "^2.0.3" - semver "^7.3.2" - shelljs "^0.8.4" - typedoc-default-themes "^0.11.1" - typescript@2.9.1: version "2.9.1" resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.9.1.tgz#fdb19d2c67a15d11995fd15640e373e09ab09961" @@ -24587,39 +20078,6 @@ undici@^5.4.0: dependencies: busboy "^1.6.0" -unescape@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/unescape/-/unescape-1.0.1.tgz#956e430f61cad8a4d57d82c518f5e6cc5d0dda96" - integrity sha512-O0+af1Gs50lyH1nUu3ZyYS1cRh01Q/kUKatTOkSs7jukXE6/NebucDVxyiDsA9AQ4JC1V1jUH9EO8JX2nMDgGQ== - dependencies: - extend-shallow "^2.0.1" - -unherit@^1.0.4: - version "1.1.3" - resolved "https://registry.yarnpkg.com/unherit/-/unherit-1.1.3.tgz#6c9b503f2b41b262330c80e91c8614abdaa69c22" - integrity sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ== - dependencies: - inherits "^2.0.0" - xtend "^4.0.0" - -unicode-canonical-property-names-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" - integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== - -unicode-match-property-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" - integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== - dependencies: - unicode-canonical-property-names-ecmascript "^1.0.4" - unicode-property-aliases-ecmascript "^1.0.4" - -unicode-match-property-value-ecmascript@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz#0d91f600eeeb3096aa962b1d6fc88876e64ea531" - integrity sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ== - unicode-properties@^1.2.2: version "1.3.1" resolved "https://registry.yarnpkg.com/unicode-properties/-/unicode-properties-1.3.1.tgz#cc642b6314bde2c691d65dd94cece09ed84f1282" @@ -24628,11 +20086,6 @@ unicode-properties@^1.2.2: base64-js "^1.3.0" unicode-trie "^2.0.0" -unicode-property-aliases-ecmascript@^1.0.4: - version "1.1.0" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" - integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== - unicode-trie@^0.3.0: version "0.3.1" resolved "https://registry.yarnpkg.com/unicode-trie/-/unicode-trie-0.3.1.tgz#d671dddd89101a08bac37b6a5161010602052085" @@ -24657,29 +20110,6 @@ unicode-trie@^2.0.0: pako "^0.2.5" tiny-inflate "^1.0.0" -unified@9.2.0: - version "9.2.0" - resolved "https://registry.yarnpkg.com/unified/-/unified-9.2.0.tgz#67a62c627c40589edebbf60f53edfd4d822027f8" - integrity sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg== - dependencies: - bail "^1.0.0" - extend "^3.0.0" - is-buffer "^2.0.0" - is-plain-obj "^2.0.0" - trough "^1.0.0" - vfile "^4.0.0" - -unified@^8.4.2: - version "8.4.2" - resolved "https://registry.yarnpkg.com/unified/-/unified-8.4.2.tgz#13ad58b4a437faa2751a4a4c6a16f680c500fff1" - integrity sha512-JCrmN13jI4+h9UAyKEoGcDZV+i1E7BLFuG7OsaDvTXI5P0qhHX+vZO/kOhz9jn8HGENDKbwSeB0nVOg4gVStGA== - dependencies: - bail "^1.0.0" - extend "^3.0.0" - is-plain-obj "^2.0.0" - trough "^1.0.0" - vfile "^4.0.0" - union-value@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" @@ -24690,16 +20120,6 @@ union-value@^1.0.0: is-extendable "^0.1.1" set-value "^2.0.1" -uniq@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" - integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= - -uniqs@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" - integrity sha1-/+3ks2slKQaW5uFl1KWe25mOawI= - unique-filename@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" @@ -24714,71 +20134,6 @@ unique-slug@^2.0.0: dependencies: imurmurhash "^0.1.4" -unique-string@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" - integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== - dependencies: - crypto-random-string "^2.0.0" - -unist-builder@2.0.3, unist-builder@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/unist-builder/-/unist-builder-2.0.3.tgz#77648711b5d86af0942f334397a33c5e91516436" - integrity sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw== - -unist-util-generated@^1.0.0: - version "1.1.6" - resolved "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-1.1.6.tgz#5ab51f689e2992a472beb1b35f2ce7ff2f324d4b" - integrity sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg== - -unist-util-is@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.1.0.tgz#976e5f462a7a5de73d94b706bac1b90671b57797" - integrity sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg== - -unist-util-position@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-3.1.0.tgz#1c42ee6301f8d52f47d14f62bbdb796571fa2d47" - integrity sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA== - -unist-util-remove-position@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz#5d19ca79fdba712301999b2b73553ca8f3b352cc" - integrity sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA== - dependencies: - unist-util-visit "^2.0.0" - -unist-util-remove@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unist-util-remove/-/unist-util-remove-2.0.1.tgz#fa13c424ff8e964f3aa20d1098b9a690c6bfaa39" - integrity sha512-YtuetK6o16CMfG+0u4nndsWpujgsHDHHLyE0yGpJLLn5xSjKeyGyzEBOI2XbmoUHCYabmNgX52uxlWoQhcvR7Q== - dependencies: - unist-util-is "^4.0.0" - -unist-util-stringify-position@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz#cce3bfa1cdf85ba7375d1d5b17bdc4cada9bd9da" - integrity sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g== - dependencies: - "@types/unist" "^2.0.2" - -unist-util-visit-parents@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz#65a6ce698f78a6b0f56aa0e88f13801886cdaef6" - integrity sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg== - dependencies: - "@types/unist" "^2.0.0" - unist-util-is "^4.0.0" - -unist-util-visit@2.0.3, unist-util-visit@^2.0.0, unist-util-visit@^2.0.1, unist-util-visit@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-2.0.3.tgz#c3703893146df47203bb8a9795af47d7b971208c" - integrity sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q== - dependencies: - "@types/unist" "^2.0.0" - unist-util-is "^4.0.0" - unist-util-visit-parents "^3.0.0" - universal-user-agent@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-4.0.1.tgz#fd8d6cb773a679a709e967ef8288a31fcc03e557" @@ -24823,11 +20178,6 @@ unpipe@1.0.0, unpipe@~1.0.0: resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= -unquote@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" - integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= - unset-value@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" @@ -24841,26 +20191,6 @@ upath@^1.1.1, upath@^1.2.0: resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== -update-notifier@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-5.1.0.tgz#4ab0d7c7f36a231dd7316cf7729313f0214d9ad9" - integrity sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw== - dependencies: - boxen "^5.0.0" - chalk "^4.1.0" - configstore "^5.0.1" - has-yarn "^2.1.0" - import-lazy "^2.1.0" - is-ci "^2.0.0" - is-installed-globally "^0.4.0" - is-npm "^5.0.0" - is-yarn-global "^0.3.0" - latest-version "^5.1.0" - pupa "^2.1.1" - semver "^7.3.4" - semver-diff "^3.1.1" - xdg-basedir "^4.0.0" - upper-case-first@^1.1.0, upper-case-first@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/upper-case-first/-/upper-case-first-1.1.2.tgz#5d79bedcff14419518fd2edb0a0507c9b6859115" @@ -24899,15 +20229,6 @@ urix@^0.1.0: resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= -url-loader@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" - integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== - dependencies: - loader-utils "^2.0.0" - mime-types "^2.1.27" - schema-utils "^3.0.0" - url-parse-lax@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" @@ -24922,14 +20243,6 @@ url-parse-lax@^3.0.0: dependencies: prepend-http "^2.0.0" -url-parse@^1.4.7: - version "1.5.10" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" - integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== - dependencies: - querystringify "^2.1.1" - requires-port "^1.0.0" - url-set-query@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/url-set-query/-/url-set-query-1.0.0.tgz#016e8cfd7c20ee05cafe7795e892bd0702faa339" @@ -24948,25 +20261,6 @@ url@^0.11.0, url@~0.11.0: punycode "1.3.2" querystring "0.2.0" -use-composed-ref@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/use-composed-ref/-/use-composed-ref-1.1.0.tgz#9220e4e94a97b7b02d7d27eaeab0b37034438bbc" - integrity sha512-my1lNHGWsSDAhhVAT4MKs6IjBUtG6ZG11uUqexPH9PptiIZDQOzaF4f5tEbJ2+7qvNbtXNBbU3SfmN+fXlWDhg== - dependencies: - ts-essentials "^2.0.3" - -use-isomorphic-layout-effect@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.1.tgz#7bb6589170cd2987a152042f9084f9effb75c225" - integrity sha512-L7Evj8FGcwo/wpbv/qvSfrkHFtOpCzvM5yl2KVyDJoylVuSvzphiiasmjgQPttIGBAy2WKiBNR98q8w7PiNgKQ== - -use-latest@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/use-latest/-/use-latest-1.2.0.tgz#a44f6572b8288e0972ec411bdd0840ada366f232" - integrity sha512-d2TEuG6nSLKQLAfW3By8mKr8HurOlTkul0sOpxbClIv4SQ4iOd7BYr7VIzdbktUCnv7dua/60xzd8igMU6jmyw== - dependencies: - use-isomorphic-layout-effect "^1.0.0" - use@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" @@ -24984,7 +20278,7 @@ utf8@3.0.0, utf8@^3.0.0: resolved "https://registry.yarnpkg.com/utf8/-/utf8-3.0.0.tgz#f052eed1364d696e769ef058b183df88c87f69d1" integrity sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ== -util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.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" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= @@ -24996,14 +20290,6 @@ util-promisify@^2.1.0: dependencies: object.getownpropertydescriptors "^2.0.3" -util.promisify@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" - integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== - dependencies: - define-properties "^1.1.2" - object.getownpropertydescriptors "^2.0.3" - util.promisify@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.1.1.tgz#77832f57ced2c9478174149cae9b96e9918cd54b" @@ -25015,16 +20301,6 @@ util.promisify@^1.0.0: has-symbols "^1.0.1" object.getownpropertydescriptors "^2.1.1" -util.promisify@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz#6baf7774b80eeb0f7520d8b81d07982a59abbaee" - integrity sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.2" - has-symbols "^1.0.1" - object.getownpropertydescriptors "^2.1.0" - util@0.10.3: version "0.10.3" resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" @@ -25051,16 +20327,6 @@ util@^0.12.0, util@~0.12.0: safe-buffer "^5.1.2" which-typed-array "^1.1.2" -utila@~0.4: - version "0.4.0" - resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" - integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= - -utility-types@^3.10.0: - version "3.10.0" - resolved "https://registry.yarnpkg.com/utility-types/-/utility-types-3.10.0.tgz#ea4148f9a741015f05ed74fd615e1d20e6bed82b" - integrity sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg== - utils-merge@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" @@ -25076,7 +20342,7 @@ uuid@3.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== -uuid@^3.0.0, uuid@^3.0.1, uuid@^3.3.2, uuid@^3.3.3, uuid@^3.4.0: +uuid@^3.0.0, uuid@^3.0.1, uuid@^3.3.2, uuid@^3.3.3: version "3.4.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== @@ -25120,11 +20386,6 @@ validate-npm-package-name@^3.0.0: dependencies: builtins "^1.0.3" -value-equal@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-1.0.1.tgz#1e0b794c734c5c0cade179c437d356d931a34d6c" - integrity sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw== - value-or-promise@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/value-or-promise/-/value-or-promise-1.0.6.tgz#218aa4794aa2ee24dcf48a29aba4413ed584747f" @@ -25140,11 +20401,6 @@ vary@^1, vary@~1.1.2: resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= -vendors@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.4.tgz#e2b800a53e7a29b93506c3cf41100d16c4c4ad8e" - integrity sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w== - verror@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" @@ -25154,34 +20410,6 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" -vfile-location@^3.0.0, vfile-location@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-3.2.0.tgz#d8e41fbcbd406063669ebf6c33d56ae8721d0f3c" - integrity sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA== - -vfile-message@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-2.0.4.tgz#5b43b88171d409eae58477d13f23dd41d52c371a" - integrity sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ== - dependencies: - "@types/unist" "^2.0.0" - unist-util-stringify-position "^2.0.0" - -vfile@^4.0.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/vfile/-/vfile-4.2.1.tgz#03f1dce28fc625c625bc6514350fbdb00fa9e624" - integrity sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA== - dependencies: - "@types/unist" "^2.0.0" - is-buffer "^2.0.0" - unist-util-stringify-position "^2.0.0" - vfile-message "^2.0.0" - -vlq@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/vlq/-/vlq-1.0.1.tgz#c003f6e7c0b4c1edd623fd6ee50bbc0d6a1de468" - integrity sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w== - vm-browserify@^1.0.0, vm-browserify@^1.0.1: version "1.1.2" resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" @@ -25201,17 +20429,6 @@ w3c-xmlserializer@^2.0.0: dependencies: xml-name-validator "^3.0.0" -wait-on@^5.2.1: - version "5.3.0" - resolved "https://registry.yarnpkg.com/wait-on/-/wait-on-5.3.0.tgz#584e17d4b3fe7b46ac2b9f8e5e102c005c2776c7" - integrity sha512-DwrHrnTK+/0QFaB9a8Ol5Lna3k7WvUR4jzSKmz0YaPBpuN2sACyiPVKVfj6ejnjcajAcvn3wlbTyMIn9AZouOg== - dependencies: - axios "^0.21.1" - joi "^17.3.0" - lodash "^4.17.21" - minimist "^1.2.5" - rxjs "^6.6.3" - walker@^1.0.7, walker@~1.0.5: version "1.0.7" resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" @@ -25237,13 +20454,6 @@ watchpack@^1.7.4: chokidar "^3.4.1" watchpack-chokidar2 "^2.0.1" -wbuf@^1.1.0, wbuf@^1.7.3: - version "1.7.3" - resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" - integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== - dependencies: - minimalistic-assert "^1.0.0" - wcwidth@^1.0.0, wcwidth@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" @@ -25251,11 +20461,6 @@ wcwidth@^1.0.0, wcwidth@^1.0.1: dependencies: defaults "^1.0.3" -web-namespaces@^1.0.0, web-namespaces@^1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-1.1.4.tgz#bc98a3de60dadd7faefc403d1076d529f5e030ec" - integrity sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw== - web3-bzz@1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.2.1.tgz#c3bd1e8f0c02a13cd6d4e3c3e9e1713f144f6f0d" @@ -26728,21 +21933,6 @@ webpack-bundle-analyzer@4.2.0: opener "^1.5.2" ws "^7.3.1" -webpack-bundle-analyzer@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.4.0.tgz#74013106e7e2b07cbd64f3a5ae847f7e814802c7" - integrity sha512-9DhNa+aXpqdHk8LkLPTBU/dMfl84Y+WE2+KnfI6rSpNRNVKa0VGLjPd2pjFubDeqnWmulFggxmWBxhfJXZnR0g== - dependencies: - acorn "^8.0.4" - acorn-walk "^8.0.0" - chalk "^4.1.0" - commander "^6.2.0" - gzip-size "^6.0.0" - lodash "^4.17.20" - opener "^1.5.2" - sirv "^1.0.7" - ws "^7.3.1" - webpack-cli@3.3.12: version "3.3.12" resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.12.tgz#94e9ada081453cd0aa609c99e500012fd3ad2d4a" @@ -26760,72 +21950,7 @@ webpack-cli@3.3.12: v8-compile-cache "^2.1.1" yargs "^13.3.2" -webpack-dev-middleware@^3.7.2: - version "3.7.3" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz#0639372b143262e2b84ab95d3b91a7597061c2c5" - integrity sha512-djelc/zGiz9nZj/U7PTBi2ViorGJXEWo/3ltkPbDyxCXhhEXkW0ce99falaok4TPj+AsxLiXJR0EBOb0zh9fKQ== - dependencies: - memory-fs "^0.4.1" - mime "^2.4.4" - mkdirp "^0.5.1" - range-parser "^1.2.1" - webpack-log "^2.0.0" - -webpack-dev-server@^3.11.2: - version "3.11.2" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.11.2.tgz#695ebced76a4929f0d5de7fd73fafe185fe33708" - integrity sha512-A80BkuHRQfCiNtGBS1EMf2ChTUs0x+B3wGDFmOeT4rmJOHhHTCH2naNxIHhmkr0/UillP4U3yeIyv1pNp+QDLQ== - dependencies: - ansi-html "0.0.7" - bonjour "^3.5.0" - chokidar "^2.1.8" - compression "^1.7.4" - connect-history-api-fallback "^1.6.0" - debug "^4.1.1" - del "^4.1.1" - express "^4.17.1" - html-entities "^1.3.1" - http-proxy-middleware "0.19.1" - import-local "^2.0.0" - internal-ip "^4.3.0" - ip "^1.1.5" - is-absolute-url "^3.0.3" - killable "^1.0.1" - loglevel "^1.6.8" - opn "^5.5.0" - p-retry "^3.0.1" - portfinder "^1.0.26" - schema-utils "^1.0.0" - selfsigned "^1.10.8" - semver "^6.3.0" - serve-index "^1.9.1" - sockjs "^0.3.21" - sockjs-client "^1.5.0" - spdy "^4.0.2" - strip-ansi "^3.0.1" - supports-color "^6.1.0" - url "^0.11.0" - webpack-dev-middleware "^3.7.2" - webpack-log "^2.0.0" - ws "^6.2.1" - yargs "^13.3.2" - -webpack-log@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-2.0.0.tgz#5b7928e0637593f119d32f6227c1e0ac31e1b47f" - integrity sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg== - dependencies: - ansi-colors "^3.0.0" - uuid "^3.3.2" - -webpack-merge@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.2.2.tgz#a27c52ea783d1398afd2087f547d7b9d2f43634d" - integrity sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g== - dependencies: - lodash "^4.17.15" - -webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: +webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== @@ -26862,50 +21987,7 @@ webpack@4.44.2: watchpack "^1.7.4" webpack-sources "^1.4.1" -webpack@^4.44.1: - version "4.46.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.46.0.tgz#bf9b4404ea20a073605e0a011d188d77cb6ad542" - integrity sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-module-context" "1.9.0" - "@webassemblyjs/wasm-edit" "1.9.0" - "@webassemblyjs/wasm-parser" "1.9.0" - acorn "^6.4.1" - ajv "^6.10.2" - ajv-keywords "^3.4.1" - chrome-trace-event "^1.0.2" - enhanced-resolve "^4.5.0" - eslint-scope "^4.0.3" - json-parse-better-errors "^1.0.2" - loader-runner "^2.4.0" - loader-utils "^1.2.3" - memory-fs "^0.4.1" - micromatch "^3.1.10" - mkdirp "^0.5.3" - neo-async "^2.6.1" - node-libs-browser "^2.2.1" - schema-utils "^1.0.0" - tapable "^1.1.3" - terser-webpack-plugin "^1.4.3" - watchpack "^1.7.4" - webpack-sources "^1.4.1" - -webpackbar@^5.0.0-3: - version "5.0.0-3" - resolved "https://registry.yarnpkg.com/webpackbar/-/webpackbar-5.0.0-3.tgz#f4f96c8fb13001b2bb1348252db4c980ab93aaac" - integrity sha512-viW6KCYjMb0NPoDrw2jAmLXU2dEOhRrtku28KmOfeE1vxbfwCYuTbTaMhnkrCZLFAFyY9Q49Z/jzYO80Dw5b8g== - dependencies: - ansi-escapes "^4.3.1" - chalk "^4.1.0" - consola "^2.15.0" - figures "^3.2.0" - pretty-time "^1.1.0" - std-env "^2.2.1" - text-table "^0.2.0" - wrap-ansi "^7.0.0" - -websocket-driver@>=0.5.1, websocket-driver@^0.7.4: +websocket-driver@>=0.5.1: version "0.7.4" resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.4.tgz#89ad5295bbf64b480abcba31e4953aca706f5760" integrity sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg== @@ -27056,13 +22138,6 @@ wide-align@1.1.3, wide-align@^1.1.0: dependencies: string-width "^1.0.2 || 2" -widest-line@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" - integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== - dependencies: - string-width "^4.0.0" - window-size@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075" @@ -27092,13 +22167,6 @@ worker-farm@^1.7.0: dependencies: errno "~0.1.7" -worker-rpc@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/worker-rpc/-/worker-rpc-0.1.1.tgz#cb565bd6d7071a8f16660686051e969ad32f54d5" - integrity sha512-P1WjMrUB3qgJNI9jfmpZ/htmBEjFh//6l/5y8SD9hg1Ef5zTTVVoRjTrTEzPrNBQvmhMxkoTsjOXN10GWU7aCg== - dependencies: - microevent.ts "~0.1.1" - wrap-ansi@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" @@ -27236,18 +22304,6 @@ ws@^5.1.1: resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.3.tgz#160835b63c7d97bfab418fc1b8a9fced2ac01a74" integrity sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg== -ws@^6.2.1: - version "6.2.1" - resolved "https://registry.yarnpkg.com/ws/-/ws-6.2.1.tgz#442fdf0a47ed64f59b6a5d8ff130f4748ed524fb" - integrity sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA== - dependencies: - async-limiter "~1.0.0" - -xdg-basedir@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" - integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== - xhr-request-promise@^0.1.2: version "0.1.3" resolved "https://registry.yarnpkg.com/xhr-request-promise/-/xhr-request-promise-0.1.3.tgz#2d5f4b16d8c6c893be97f1a62b0ed4cf3ca5f96c" @@ -27285,13 +22341,6 @@ xhr@^2.0.4, xhr@^2.2.0, xhr@^2.3.3: parse-headers "^2.0.0" xtend "^4.0.0" -xml-js@^1.6.11: - version "1.6.11" - resolved "https://registry.yarnpkg.com/xml-js/-/xml-js-1.6.11.tgz#927d2f6947f7f1c19a316dd8eea3614e8b18f8e9" - integrity sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g== - dependencies: - sax "^1.2.4" - 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" @@ -27564,8 +22613,3 @@ yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== - -zwitch@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-1.0.5.tgz#d11d7381ffed16b742f6af7b3f223d5cd9fe9920" - integrity sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw== From 0d35b338c95d5f33158d09dba7712f2a4ece7046 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 31 Jan 2023 13:03:25 +0100 Subject: [PATCH 04/50] fix axios version --- packages/smart-contracts/package.json | 2 +- yarn.lock | 1762 ++++++++++++++++++++++--- 2 files changed, 1604 insertions(+), 160 deletions(-) diff --git a/packages/smart-contracts/package.json b/packages/smart-contracts/package.json index b345ca951f..acdd30133a 100644 --- a/packages/smart-contracts/package.json +++ b/packages/smart-contracts/package.json @@ -70,7 +70,7 @@ "@types/chai": "4.2.21", "@types/mocha": "8.2.3", "@types/node": "14.14.16", - "axios": "^1.2.2", + "axios": "0.27.2", "chai": "4.3.4", "dotenv": "10.0.0", "ethereum-waffle": "3.4.0", diff --git a/yarn.lock b/yarn.lock index 25e47f62d6..4a9aa1fb2f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -21,19 +21,31 @@ dependencies: "@babel/highlight" "^7.10.4" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.14.5": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.13.tgz#dcfc826beef65e75c50e21d3837d7d95798dd658" + integrity sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g== + dependencies: + "@babel/highlight" "^7.12.13" + +"@babel/code-frame@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.14.5.tgz#23b08d740e83f49c5e59945fbf1b43e80bbf4edb" integrity sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw== dependencies: "@babel/highlight" "^7.14.5" -"@babel/compat-data@^7.13.0", "@babel/compat-data@^7.14.5": +"@babel/compat-data@^7.13.0", "@babel/compat-data@^7.13.8": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.13.12.tgz#a8a5ccac19c200f9dd49624cac6e19d7be1236a1" + integrity sha512-3eJJ841uKxeV8dcN/2yGEUy+RfgQspPEgQat85umsE1rotuquQ2AbIub4S6j7c50a2d+4myc+zSlnXeIHrOnhQ== + +"@babel/compat-data@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.14.5.tgz#8ef4c18e58e801c5c95d3c1c0f2874a2680fadea" integrity sha512-kixrYn4JwfAVPa0f2yfzc2AWti6WRRyO3XjWW5PJAvtE11qhSayrrcrEnee05KAtNaPC+EwehE8Qt1UedEVB8w== -"@babel/core@^7.0.0", "@babel/core@^7.1.0", "@babel/core@^7.7.5": +"@babel/core@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.14.5.tgz#d281f46a9905f07d1b3bf71ead54d9c7d89cb1e3" integrity sha512-RN/AwP2DJmQTZSfiDaD+JQQ/J99KsIpOCfBE5pL+5jJSt7nI3nYGoAXZu+ffYSQ029NLs2DstZb+eR81uuARgg== @@ -54,6 +66,28 @@ semver "^6.3.0" source-map "^0.5.0" +"@babel/core@^7.1.0", "@babel/core@^7.7.5": + version "7.13.10" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.13.10.tgz#07de050bbd8193fcd8a3c27918c0890613a94559" + integrity sha512-bfIYcT0BdKeAZrovpMqX2Mx5NrgAckGbwT982AkdS5GNfn3KMGiprlBAtmBcFZRUmpaufS6WZFP8trvx8ptFDw== + dependencies: + "@babel/code-frame" "^7.12.13" + "@babel/generator" "^7.13.9" + "@babel/helper-compilation-targets" "^7.13.10" + "@babel/helper-module-transforms" "^7.13.0" + "@babel/helpers" "^7.13.10" + "@babel/parser" "^7.13.10" + "@babel/template" "^7.12.13" + "@babel/traverse" "^7.13.0" + "@babel/types" "^7.13.0" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.1.2" + lodash "^4.17.19" + semver "^6.3.0" + source-map "^0.5.0" + "@babel/generator@^7.12.13", "@babel/generator@^7.14.5", "@babel/generator@^7.5.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.14.5.tgz#848d7b9f031caca9d0cd0af01b063f226f52d785" @@ -63,6 +97,15 @@ jsesc "^2.5.1" source-map "^0.5.0" +"@babel/generator@^7.13.0", "@babel/generator@^7.13.9": + version "7.13.9" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.13.9.tgz#3a7aa96f9efb8e2be42d38d80e2ceb4c64d8de39" + integrity sha512-mHOOmY0Axl/JCTkxTU6Lf5sWOg/v8nUa+Xkt4zMTftX0wqmb6Sh7J8gvcehBw7q0AhrhAR+FDacKjCZ2X8K+Sw== + dependencies: + "@babel/types" "^7.13.0" + jsesc "^2.5.1" + source-map "^0.5.0" + "@babel/helper-annotate-as-pure@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.14.5.tgz#7bf478ec3b71726d56a8ca5775b046fc29879e61" @@ -70,7 +113,17 @@ dependencies: "@babel/types" "^7.14.5" -"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.14.5": +"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.13.10": + version "7.13.10" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.10.tgz#1310a1678cb8427c07a753750da4f8ce442bdd0c" + integrity sha512-/Xju7Qg1GQO4mHZ/Kcs6Au7gfafgZnwm+a7sy/ow/tV1sHeraRUHbjdat8/UvDor4Tez+siGKDk6zIKtCPKVJA== + dependencies: + "@babel/compat-data" "^7.13.8" + "@babel/helper-validator-option" "^7.12.17" + browserslist "^4.14.5" + semver "^6.3.0" + +"@babel/helper-compilation-targets@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.5.tgz#7a99c5d0967911e972fe2c3411f7d5b498498ecf" integrity sha512-v+QtZqXEiOnpO6EYvlImB6zCD2Lel06RzOPzmkz/D/XgQiUu3C/Jb1LOqSt/AIA34TYi/Q+KlT8vTQrgdxkbLw== @@ -106,7 +159,16 @@ resolve "^1.14.2" semver "^6.1.2" -"@babel/helper-function-name@^7.12.13", "@babel/helper-function-name@^7.14.5": +"@babel/helper-function-name@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz#93ad656db3c3c2232559fd7b2c3dbdcbe0eb377a" + integrity sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA== + dependencies: + "@babel/helper-get-function-arity" "^7.12.13" + "@babel/template" "^7.12.13" + "@babel/types" "^7.12.13" + +"@babel/helper-function-name@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz#89e2c474972f15d8e233b52ee8c480e2cfcd50c4" integrity sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ== @@ -115,6 +177,13 @@ "@babel/template" "^7.14.5" "@babel/types" "^7.14.5" +"@babel/helper-get-function-arity@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz#bc63451d403a3b3082b97e1d8b3fe5bd4091e583" + integrity sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg== + dependencies: + "@babel/types" "^7.12.13" + "@babel/helper-get-function-arity@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz#25fbfa579b0937eee1f3b805ece4ce398c431815" @@ -129,6 +198,13 @@ dependencies: "@babel/types" "^7.14.5" +"@babel/helper-member-expression-to-functions@^7.13.12": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz#dfe368f26d426a07299d8d6513821768216e6d72" + integrity sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw== + dependencies: + "@babel/types" "^7.13.12" + "@babel/helper-member-expression-to-functions@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.5.tgz#d5c70e4ad13b402c95156c7a53568f504e2fb7b8" @@ -136,13 +212,34 @@ dependencies: "@babel/types" "^7.14.5" -"@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.14.5": +"@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.13.12": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz#c6a369a6f3621cb25da014078684da9196b61977" + integrity sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA== + dependencies: + "@babel/types" "^7.13.12" + +"@babel/helper-module-imports@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz#6d1a44df6a38c957aa7c312da076429f11b422f3" integrity sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ== dependencies: "@babel/types" "^7.14.5" +"@babel/helper-module-transforms@^7.13.0": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.13.12.tgz#600e58350490828d82282631a1422268e982ba96" + integrity sha512-7zVQqMO3V+K4JOOj40kxiCrMf6xlQAkewBB0eu2b03OO/Q21ZutOzjpfD79A5gtE/2OWi1nv625MrDlGlkbknQ== + dependencies: + "@babel/helper-module-imports" "^7.13.12" + "@babel/helper-replace-supers" "^7.13.12" + "@babel/helper-simple-access" "^7.13.12" + "@babel/helper-split-export-declaration" "^7.12.13" + "@babel/helper-validator-identifier" "^7.12.11" + "@babel/template" "^7.12.13" + "@babel/traverse" "^7.13.0" + "@babel/types" "^7.13.12" + "@babel/helper-module-transforms@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.14.5.tgz#7de42f10d789b423eb902ebd24031ca77cb1e10e" @@ -157,6 +254,13 @@ "@babel/traverse" "^7.14.5" "@babel/types" "^7.14.5" +"@babel/helper-optimise-call-expression@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz#5c02d171b4c8615b1e7163f888c1c81c30a2aaea" + integrity sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA== + dependencies: + "@babel/types" "^7.12.13" + "@babel/helper-optimise-call-expression@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz#f27395a8619e0665b3f0364cddb41c25d71b499c" @@ -164,11 +268,26 @@ dependencies: "@babel/types" "^7.14.5" -"@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.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.8.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz#806526ce125aed03373bc416a828321e3a6a33af" + integrity sha512-ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ== + +"@babel/helper-plugin-utils@^7.14.5": 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/helper-replace-supers@^7.13.12": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.13.12.tgz#6442f4c1ad912502481a564a7386de0c77ff3804" + integrity sha512-Gz1eiX+4yDO8mT+heB94aLVNCL+rbuT2xy4YfyNqu8F+OI6vMvJK891qGBTqL9Uc8wxEvRW92Id6G7sDen3fFw== + dependencies: + "@babel/helper-member-expression-to-functions" "^7.13.12" + "@babel/helper-optimise-call-expression" "^7.12.13" + "@babel/traverse" "^7.13.0" + "@babel/types" "^7.13.12" + "@babel/helper-replace-supers@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.14.5.tgz#0ecc0b03c41cd567b4024ea016134c28414abb94" @@ -179,6 +298,13 @@ "@babel/traverse" "^7.14.5" "@babel/types" "^7.14.5" +"@babel/helper-simple-access@^7.13.12": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz#dd6c538afb61819d205a012c31792a39c7a5eaf6" + integrity sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA== + dependencies: + "@babel/types" "^7.13.12" + "@babel/helper-simple-access@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.14.5.tgz#66ea85cf53ba0b4e588ba77fc813f53abcaa41c4" @@ -193,23 +319,49 @@ dependencies: "@babel/types" "^7.14.5" -"@babel/helper-split-export-declaration@^7.12.13", "@babel/helper-split-export-declaration@^7.14.5": +"@babel/helper-split-export-declaration@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz#e9430be00baf3e88b0e13e6f9d4eaf2136372b05" + integrity sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg== + dependencies: + "@babel/types" "^7.12.13" + +"@babel/helper-split-export-declaration@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz#22b23a54ef51c2b7605d851930c1976dd0bc693a" integrity sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA== dependencies: "@babel/types" "^7.14.5" -"@babel/helper-validator-identifier@^7.12.11", "@babel/helper-validator-identifier@^7.14.5": +"@babel/helper-validator-identifier@^7.12.11": + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz#c9a1f021917dcb5ccf0d4e453e399022981fc9ed" + integrity sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw== + +"@babel/helper-validator-identifier@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz#d0f0e277c512e0c938277faa85a3968c9a44c0e8" integrity sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg== +"@babel/helper-validator-option@^7.12.17": + version "7.12.17" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz#d1fbf012e1a79b7eebbfdc6d270baaf8d9eb9831" + integrity sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw== + "@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/helpers@^7.13.10": + version "7.13.10" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.13.10.tgz#fd8e2ba7488533cdeac45cc158e9ebca5e3c7df8" + integrity sha512-4VO883+MWPDUVRF3PhiLBUFHoX/bsLTGFpFK/HqvvfBZz2D57u9XzPVNFVBTc0PW/CWR9BXTOKt8NF4DInUHcQ== + dependencies: + "@babel/template" "^7.12.13" + "@babel/traverse" "^7.13.0" + "@babel/types" "^7.13.0" + "@babel/helpers@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.14.5.tgz#4870f8d9a6fdbbd65e5674a3558b4ff7fef0d9b2" @@ -219,7 +371,16 @@ "@babel/traverse" "^7.14.5" "@babel/types" "^7.14.5" -"@babel/highlight@^7.10.4", "@babel/highlight@^7.14.5": +"@babel/highlight@^7.10.4", "@babel/highlight@^7.12.13": + version "7.13.10" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.13.10.tgz#a8b2a66148f5b27d666b15d81774347a731d52d1" + integrity sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg== + dependencies: + "@babel/helper-validator-identifier" "^7.12.11" + chalk "^2.0.0" + js-tokens "^4.0.0" + +"@babel/highlight@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.5.tgz#6861a52f03966405001f6aa534a01a24d99e8cd9" integrity sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg== @@ -233,11 +394,16 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.12.16.tgz#cc31257419d2c3189d394081635703f549fc1ed4" integrity sha512-c/+u9cqV6F0+4Hpq01jnJO+GLp2DdT63ppz9Xa+6cHaajM9VFzK/iDXiKK65YtpeVwu+ctfS6iqlMqRgQRzeCw== -"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.12.13", "@babel/parser@^7.14.5": +"@babel/parser@^7.0.0", "@babel/parser@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.14.5.tgz#4cd2f346261061b2518873ffecdf1612cb032829" integrity sha512-TM8C+xtH/9n1qzX+JNHi7AN2zHMTiPUtspO0ZdHflW8KaskkALhMmuMHb4bCmNdv9VAPzJX3/bXqkVLnAvsPfg== +"@babel/parser@^7.1.0", "@babel/parser@^7.12.13", "@babel/parser@^7.13.0", "@babel/parser@^7.13.10": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.13.12.tgz#ba320059420774394d3b0c0233ba40e4250b81d1" + integrity sha512-4T7Pb244rxH24yR116LAuJ+adxXXnHhZaLJjegJVKSdoNCe4x1eDBaud5YIcQFcqzsaD5BHvJw5BQ0AZapdCRw== + "@babel/plugin-proposal-class-properties@^7.0.0": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.14.5.tgz#40d1ee140c5b1e31a350f4f5eed945096559b42e" @@ -524,14 +690,30 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5": + version "7.13.10" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.13.10.tgz#47d42a57b6095f4468da440388fdbad8bebf0d7d" + integrity sha512-4QPkjJq6Ns3V/RgpEahRk+AGfL0eO6RHHtTWoNNr5mO49G6B5+X6d6THgWEAvTrznU5xYpbAlVKRYcsCgh/Akw== + dependencies: + regenerator-runtime "^0.13.4" + +"@babel/runtime@^7.4.4": version "7.17.9" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.17.9.tgz#d19fbf802d01a8cb6cf053a64e472d42c434ba72" integrity sha512-lSiBBvodq29uShpWGNbgFdKYNiFDo5/HIYsaCEY9ff4sb10x9jizo2+pRrSyF4jKZCXqgzuqBOQKbUm90gQwJg== dependencies: regenerator-runtime "^0.13.4" -"@babel/template@^7.14.5", "@babel/template@^7.3.3": +"@babel/template@^7.12.13", "@babel/template@^7.3.3": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.12.13.tgz#530265be8a2589dbb37523844c5bcb55947fb327" + integrity sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA== + dependencies: + "@babel/code-frame" "^7.12.13" + "@babel/parser" "^7.12.13" + "@babel/types" "^7.12.13" + +"@babel/template@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.14.5.tgz#a9bc9d8b33354ff6e55a9c60d1109200a68974f4" integrity sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g== @@ -555,7 +737,7 @@ globals "^11.1.0" lodash "^4.17.19" -"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.13.0", "@babel/traverse@^7.14.5": +"@babel/traverse@^7.0.0", "@babel/traverse@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.14.5.tgz#c111b0f58afab4fea3d3385a406f692748c59870" integrity sha512-G3BiS15vevepdmFqmUc9X+64y0viZYygubAMO8SvBmKARuF6CPSZtH4Ng9vi/lrWlZFGe3FWdXNy835akH8Glg== @@ -570,6 +752,21 @@ debug "^4.1.0" globals "^11.1.0" +"@babel/traverse@^7.1.0", "@babel/traverse@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.13.0.tgz#6d95752475f86ee7ded06536de309a65fc8966cc" + integrity sha512-xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ== + dependencies: + "@babel/code-frame" "^7.12.13" + "@babel/generator" "^7.13.0" + "@babel/helper-function-name" "^7.12.13" + "@babel/helper-split-export-declaration" "^7.12.13" + "@babel/parser" "^7.13.0" + "@babel/types" "^7.13.0" + debug "^4.1.0" + globals "^11.1.0" + lodash "^4.17.19" + "@babel/types@7.12.13": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.12.13.tgz#8be1aa8f2c876da11a9cf650c0ecf656913ad611" @@ -579,7 +776,16 @@ lodash "^4.17.19" to-fast-properties "^2.0.0" -"@babel/types@^7.0.0", "@babel/types@^7.12.13", "@babel/types@^7.14.5", "@babel/types@^7.3.0", "@babel/types@^7.3.3": +"@babel/types@^7.0.0", "@babel/types@^7.12.13", "@babel/types@^7.13.0", "@babel/types@^7.13.12", "@babel/types@^7.3.0", "@babel/types@^7.3.3": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.13.12.tgz#edbf99208ef48852acdff1c8a681a1e4ade580cd" + integrity sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA== + dependencies: + "@babel/helper-validator-identifier" "^7.12.11" + lodash "^4.17.19" + to-fast-properties "^2.0.0" + +"@babel/types@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.14.5.tgz#3bb997ba829a2104cedb20689c4a5b8121d383ff" integrity sha512-M/NzBpEL95I5Hh4dwhin5JlE7EzO5PHMAuzjxss3tiOBD46KfQvVedN/3jEPZvdRvtsK2222XfdHogNIttFgcg== @@ -816,7 +1022,7 @@ lru-cache "^5.1.1" semaphore-async-await "^1.5.1" -"@ethereumjs/common@^2.3.0", "@ethereumjs/common@^2.3.1", "@ethereumjs/common@^2.4.0", "@ethereumjs/common@^2.5.0", "@ethereumjs/common@^2.6.3": +"@ethereumjs/common@^2.3.0", "@ethereumjs/common@^2.3.1", "@ethereumjs/common@^2.5.0", "@ethereumjs/common@^2.6.3": version "2.6.3" resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.6.3.tgz#39ddece7300b336276bad6c02f6a9f1a082caa05" integrity sha512-mQwPucDL7FDYIg9XQ8DL31CnIYZwGhU5hyOO5E+BMmT71G0+RHvIT5rIkLBirJEKxV6+Rcf9aEIY0kXInxUWpQ== @@ -824,6 +1030,14 @@ crc-32 "^1.2.0" ethereumjs-util "^7.1.4" +"@ethereumjs/common@^2.4.0": + version "2.4.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.4.0.tgz#2d67f6e6ba22246c5c89104e6b9a119fb3039766" + integrity sha512-UdkhFWzWcJCZVsj1O/H8/oqj/0RVYjLc1OhPjBrQdALAkQHpCp8xXI4WLnuGTADqTdJZww0NtgwG+TRPkXt27w== + dependencies: + crc-32 "^1.2.0" + ethereumjs-util "^7.1.0" + "@ethereumjs/ethash@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@ethereumjs/ethash/-/ethash-1.1.0.tgz#7c5918ffcaa9cb9c1dc7d12f77ef038c11fb83fb" @@ -835,7 +1049,15 @@ ethereumjs-util "^7.1.1" miller-rabin "^4.0.0" -"@ethereumjs/tx@^3.2.1", "@ethereumjs/tx@^3.3.2", "@ethereumjs/tx@^3.5.1": +"@ethereumjs/tx@^3.2.1": + version "3.3.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.3.0.tgz#14ed1b7fa0f28e1cd61e3ecbdab824205f6a4378" + integrity sha512-yTwEj2lVzSMgE6Hjw9Oa1DZks/nKTWM8Wn4ykDNapBPua2f4nXO3qKnni86O6lgDj5fVNRqbDsD0yy7/XNGDEA== + dependencies: + "@ethereumjs/common" "^2.4.0" + ethereumjs-util "^7.1.0" + +"@ethereumjs/tx@^3.3.2", "@ethereumjs/tx@^3.5.1": version "3.5.1" resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.5.1.tgz#8d941b83a602b4a89949c879615f7ea9a90e6671" integrity sha512-xzDrTiu4sqZXUcaBxJ4n4W5FrppwxLxZB4ZDGVLtxSQR4lVuOnFR6RcUHdg1mpUhAPVrmnzLJpxaeXnPxIyhWA== @@ -891,7 +1113,22 @@ "@ethersproject/properties" "^5.0.3" "@ethersproject/strings" "^5.0.4" -"@ethersproject/abi@5.5.0": +"@ethersproject/abi@5.4.0", "@ethersproject/abi@^5.0.1", "@ethersproject/abi@^5.1.2", "@ethersproject/abi@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.4.0.tgz#a6d63bdb3672f738398846d4279fa6b6c9818242" + integrity sha512-9gU2H+/yK1j2eVMdzm6xvHSnMxk8waIHQGYCZg5uvAyH0rsAzxkModzBSpbAkAuhKFEovC2S9hM4nPuLym8IZw== + dependencies: + "@ethersproject/address" "^5.4.0" + "@ethersproject/bignumber" "^5.4.0" + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/constants" "^5.4.0" + "@ethersproject/hash" "^5.4.0" + "@ethersproject/keccak256" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/properties" "^5.4.0" + "@ethersproject/strings" "^5.4.0" + +"@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== @@ -906,7 +1143,7 @@ "@ethersproject/properties" "^5.5.0" "@ethersproject/strings" "^5.5.0" -"@ethersproject/abi@5.6.0", "@ethersproject/abi@^5.0.1", "@ethersproject/abi@^5.1.2", "@ethersproject/abi@^5.5.0", "@ethersproject/abi@^5.6.0": +"@ethersproject/abi@5.6.0", "@ethersproject/abi@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.6.0.tgz#ea07cbc1eec2374d32485679c12408005895e9f3" integrity sha512-AhVByTwdXCc2YQ20v300w6KVHle9g2OFc28ZAFCPnJyEpkv1xKXjZcSTgWOlv1i+0dqlgF8RCF2Rn2KC1t+1Vg== @@ -921,7 +1158,20 @@ "@ethersproject/properties" "^5.6.0" "@ethersproject/strings" "^5.6.0" -"@ethersproject/abstract-provider@5.5.1": +"@ethersproject/abstract-provider@5.4.0", "@ethersproject/abstract-provider@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.4.0.tgz#415331031b0f678388971e1987305244edc04e1d" + integrity sha512-vPBR7HKUBY0lpdllIn7tLIzNN7DrVnhCLKSzY0l8WAwxz686m/aL7ASDzrVxV93GJtIub6N2t4dfZ29CkPOxgA== + dependencies: + "@ethersproject/bignumber" "^5.4.0" + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/networks" "^5.4.0" + "@ethersproject/properties" "^5.4.0" + "@ethersproject/transactions" "^5.4.0" + "@ethersproject/web" "^5.4.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== @@ -934,7 +1184,7 @@ "@ethersproject/transactions" "^5.5.0" "@ethersproject/web" "^5.5.0" -"@ethersproject/abstract-provider@5.6.0", "@ethersproject/abstract-provider@^5.5.0", "@ethersproject/abstract-provider@^5.6.0": +"@ethersproject/abstract-provider@5.6.0", "@ethersproject/abstract-provider@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.6.0.tgz#0c4ac7054650dbd9c476cf5907f588bbb6ef3061" integrity sha512-oPMFlKLN+g+y7a79cLK3WiLcjWFnZQtXWgnLAbHZcN3s7L4v90UHpTOrLk+m3yr0gt+/h9STTM6zrr7PM8uoRw== @@ -947,7 +1197,18 @@ "@ethersproject/transactions" "^5.6.0" "@ethersproject/web" "^5.6.0" -"@ethersproject/abstract-signer@5.5.0": +"@ethersproject/abstract-signer@5.4.0", "@ethersproject/abstract-signer@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.4.0.tgz#cd5f50b93141ee9f9f49feb4075a0b3eafb57d65" + integrity sha512-AieQAzt05HJZS2bMofpuxMEp81AHufA5D6M4ScKwtolj041nrfIbIi8ciNW7+F59VYxXq+V4c3d568Q6l2m8ew== + dependencies: + "@ethersproject/abstract-provider" "^5.4.0" + "@ethersproject/bignumber" "^5.4.0" + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/properties" "^5.4.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== @@ -958,7 +1219,7 @@ "@ethersproject/logger" "^5.5.0" "@ethersproject/properties" "^5.5.0" -"@ethersproject/abstract-signer@5.6.0", "@ethersproject/abstract-signer@^5.5.0", "@ethersproject/abstract-signer@^5.6.0": +"@ethersproject/abstract-signer@5.6.0", "@ethersproject/abstract-signer@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.6.0.tgz#9cd7ae9211c2b123a3b29bf47aab17d4d016e3e7" integrity sha512-WOqnG0NJKtI8n0wWZPReHtaLkDByPL67tn4nBaDAhmVq8sjHTPbCdz4DRhVu/cfTOvfy9w3iq5QZ7BX7zw56BQ== @@ -969,7 +1230,18 @@ "@ethersproject/logger" "^5.6.0" "@ethersproject/properties" "^5.6.0" -"@ethersproject/address@5.5.0": +"@ethersproject/address@5.4.0", "@ethersproject/address@>=5.0.0-beta.128", "@ethersproject/address@^5.0.2", "@ethersproject/address@^5.0.4", "@ethersproject/address@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.4.0.tgz#ba2d00a0f8c4c0854933b963b9a3a9f6eb4a37a3" + integrity sha512-SD0VgOEkcACEG/C6xavlU1Hy3m5DGSXW3CUHkaaEHbAPPsgi0coP5oNPsxau8eTlZOk/bpa/hKeCNoK5IzVI2Q== + dependencies: + "@ethersproject/bignumber" "^5.4.0" + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/keccak256" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/rlp" "^5.4.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== @@ -980,7 +1252,7 @@ "@ethersproject/logger" "^5.5.0" "@ethersproject/rlp" "^5.5.0" -"@ethersproject/address@5.6.0", "@ethersproject/address@>=5.0.0-beta.128", "@ethersproject/address@^5.0.2", "@ethersproject/address@^5.0.4", "@ethersproject/address@^5.5.0", "@ethersproject/address@^5.6.0": +"@ethersproject/address@5.6.0", "@ethersproject/address@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.6.0.tgz#13c49836d73e7885fc148ad633afad729da25012" integrity sha512-6nvhYXjbXsHPS+30sHZ+U4VMagFC/9zAk6Gd/h3S21YW4+yfb0WfRtaAIZ4kfM4rrVwqiy284LP0GtL5HXGLxQ== @@ -991,21 +1263,47 @@ "@ethersproject/logger" "^5.6.0" "@ethersproject/rlp" "^5.6.0" -"@ethersproject/base64@5.5.0": +"@ethersproject/address@^5.0.9": + version "5.0.11" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.0.11.tgz#12022e8c590c33939beb5ab18b401ecf585eac59" + integrity sha512-Et4GBdD8/tsBGjCEOKee9upN29qjL5kbRcmJifb4Penmiuh9GARXL2/xpXvEp5EW+EIW/rfCHFJrkYBgoQFQBw== + dependencies: + "@ethersproject/bignumber" "^5.0.13" + "@ethersproject/bytes" "^5.0.9" + "@ethersproject/keccak256" "^5.0.7" + "@ethersproject/logger" "^5.0.8" + "@ethersproject/rlp" "^5.0.7" + +"@ethersproject/base64@5.4.0", "@ethersproject/base64@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.4.0.tgz#7252bf65295954c9048c7ca5f43e5c86441b2a9a" + integrity sha512-CjQw6E17QDSSC5jiM9YpF7N1aSCHmYGMt9bWD8PWv6YPMxjsys2/Q8xLrROKI3IWJ7sFfZ8B3flKDTM5wlWuZQ== + dependencies: + "@ethersproject/bytes" "^5.4.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/base64@5.6.0", "@ethersproject/base64@^5.5.0", "@ethersproject/base64@^5.6.0": +"@ethersproject/base64@5.6.0", "@ethersproject/base64@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.6.0.tgz#a12c4da2a6fb86d88563216b0282308fc15907c9" integrity sha512-2Neq8wxJ9xHxCF9TUgmKeSh9BXJ6OAxWfeGWvbauPh8FuHEjamgHilllx8KkSd5ErxyHIX7Xv3Fkcud2kY9ezw== dependencies: "@ethersproject/bytes" "^5.6.0" -"@ethersproject/basex@5.5.0": +"@ethersproject/basex@5.4.0", "@ethersproject/basex@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.4.0.tgz#0a2da0f4e76c504a94f2b21d3161ed9438c7f8a6" + integrity sha512-J07+QCVJ7np2bcpxydFVf/CuYo9mZ7T73Pe7KQY4c1lRlrixMeblauMxHXD0MPwFmUHZIILDNViVkykFBZylbg== + dependencies: + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/properties" "^5.4.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== @@ -1013,7 +1311,7 @@ "@ethersproject/bytes" "^5.5.0" "@ethersproject/properties" "^5.5.0" -"@ethersproject/basex@5.6.0", "@ethersproject/basex@^5.5.0", "@ethersproject/basex@^5.6.0": +"@ethersproject/basex@5.6.0", "@ethersproject/basex@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.6.0.tgz#9ea7209bf0a1c3ddc2a90f180c3a7f0d7d2e8a69" integrity sha512-qN4T+hQd/Md32MoJpc69rOwLYRUXwjTlhHDIeUkUmiN/JyWkkLLMoG0TqvSQKNqZOMgN5stbUYN6ILC+eD7MEQ== @@ -1021,7 +1319,16 @@ "@ethersproject/bytes" "^5.6.0" "@ethersproject/properties" "^5.6.0" -"@ethersproject/bignumber@5.5.0": +"@ethersproject/bignumber@5.4.0", "@ethersproject/bignumber@>=5.0.0-beta.130", "@ethersproject/bignumber@^5.0.7", "@ethersproject/bignumber@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.4.0.tgz#be8dea298c0ec71208ee60f0b245be0761217ad9" + integrity sha512-OXUu9f9hO3vGRIPxU40cignXZVaYyfx6j9NNMjebKdnaCL3anCLSSy8/b8d03vY6dh7duCC0kW72GEC4tZer2w== + dependencies: + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + bn.js "^4.11.9" + +"@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== @@ -1030,7 +1337,7 @@ "@ethersproject/logger" "^5.5.0" bn.js "^4.11.9" -"@ethersproject/bignumber@5.6.0", "@ethersproject/bignumber@>=5.0.0-beta.130", "@ethersproject/bignumber@^5.0.7", "@ethersproject/bignumber@^5.5.0", "@ethersproject/bignumber@^5.6.0": +"@ethersproject/bignumber@5.6.0", "@ethersproject/bignumber@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.6.0.tgz#116c81b075c57fa765a8f3822648cf718a8a0e26" integrity sha512-VziMaXIUHQlHJmkv1dlcd6GY2PmT0khtAqaMctCIDogxkrarMzA9L94KN1NeXqqOfFD6r0sJT3vCTOFSmZ07DA== @@ -1039,34 +1346,87 @@ "@ethersproject/logger" "^5.6.0" bn.js "^4.11.9" -"@ethersproject/bytes@5.5.0": +"@ethersproject/bignumber@^5.0.13": + version "5.0.15" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.0.15.tgz#b089b3f1e0381338d764ac1c10512f0c93b184ed" + integrity sha512-MTADqnyacvdRwtKh7o9ujwNDSM1SDJjYDMYAzjIgjoi9rh6TY4suMbhCa3i2vh3SUXiXSICyTI8ui+NPdrZ9Lw== + dependencies: + "@ethersproject/bytes" "^5.0.9" + "@ethersproject/logger" "^5.0.8" + bn.js "^4.4.0" + +"@ethersproject/bytes@5.4.0", "@ethersproject/bytes@>=5.0.0-beta.129", "@ethersproject/bytes@^5.0.4", "@ethersproject/bytes@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.4.0.tgz#56fa32ce3bf67153756dbaefda921d1d4774404e" + integrity sha512-H60ceqgTHbhzOj4uRc/83SCN9d+BSUnOkrr2intevqdtEMO1JFVZ1XL84OEZV+QjV36OaZYxtnt4lGmxcGsPfA== + dependencies: + "@ethersproject/logger" "^5.4.0" + +"@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/bytes@5.6.1", "@ethersproject/bytes@>=5.0.0-beta.129", "@ethersproject/bytes@^5.0.4", "@ethersproject/bytes@^5.5.0", "@ethersproject/bytes@^5.6.0": +"@ethersproject/bytes@5.6.1", "@ethersproject/bytes@^5.6.0": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.6.1.tgz#24f916e411f82a8a60412344bf4a813b917eefe7" integrity sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g== dependencies: "@ethersproject/logger" "^5.6.0" -"@ethersproject/constants@5.5.0": +"@ethersproject/bytes@^5.0.9": + version "5.0.11" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.0.11.tgz#21118e75b1d00db068984c15530e316021101276" + integrity sha512-D51plLYY5qF05AsoVQwIZVLqlBkaTPVHVP/1WmmBIWyHB0cRW0C9kh0kx5Exo51rB63Hk8PfHxc7SmpoaQFEyg== + dependencies: + "@ethersproject/logger" "^5.0.8" + +"@ethersproject/constants@5.4.0", "@ethersproject/constants@>=5.0.0-beta.128", "@ethersproject/constants@^5.0.4", "@ethersproject/constants@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.4.0.tgz#ee0bdcb30bf1b532d2353c977bf2ef1ee117958a" + integrity sha512-tzjn6S7sj9+DIIeKTJLjK9WGN2Tj0P++Z8ONEIlZjyoTkBuODN+0VfhAyYksKi43l1Sx9tX2VlFfzjfmr5Wl3Q== + dependencies: + "@ethersproject/bignumber" "^5.4.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/constants@5.6.0", "@ethersproject/constants@>=5.0.0-beta.128", "@ethersproject/constants@^5.0.4", "@ethersproject/constants@^5.5.0", "@ethersproject/constants@^5.6.0": +"@ethersproject/constants@5.6.0", "@ethersproject/constants@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.6.0.tgz#55e3eb0918584d3acc0688e9958b0cedef297088" integrity sha512-SrdaJx2bK0WQl23nSpV/b1aq293Lh0sUaZT/yYKPDKn4tlAbkH96SPJwIhwSwTsoQQZxuh1jnqsKwyymoiBdWA== dependencies: "@ethersproject/bignumber" "^5.6.0" +"@ethersproject/constants@^5.0.8": + version "5.0.10" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.0.10.tgz#eb0c604fbc44c53ba9641eed31a1d0c9e1ebcadc" + integrity sha512-OSo8jxkHLDXieCy8bgOFR7lMfgPxEzKvSDdP+WAWHCDM8+orwch0B6wzkTmiQFgryAtIctrBt5glAdJikZ3hGw== + dependencies: + "@ethersproject/bignumber" "^5.0.13" + +"@ethersproject/contracts@5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.4.0.tgz#e05fe6bd33acc98741e27d553889ec5920078abb" + integrity sha512-hkO3L3IhS1Z3ZtHtaAG/T87nQ7KiPV+/qnvutag35I0IkiQ8G3ZpCQ9NNOpSCzn4pWSW4CfzmtE02FcqnLI+hw== + dependencies: + "@ethersproject/abi" "^5.4.0" + "@ethersproject/abstract-provider" "^5.4.0" + "@ethersproject/abstract-signer" "^5.4.0" + "@ethersproject/address" "^5.4.0" + "@ethersproject/bignumber" "^5.4.0" + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/constants" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/properties" "^5.4.0" + "@ethersproject/transactions" "^5.4.0" + "@ethersproject/contracts@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.5.0.tgz#b735260d4bd61283a670a82d5275e2a38892c197" @@ -1108,7 +1468,21 @@ ethers "^5.5.0" scrypt-js "3.0.1" -"@ethersproject/hash@5.5.0": +"@ethersproject/hash@5.4.0", "@ethersproject/hash@>=5.0.0-beta.128", "@ethersproject/hash@^5.0.4", "@ethersproject/hash@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.4.0.tgz#d18a8e927e828e22860a011f39e429d388344ae0" + integrity sha512-xymAM9tmikKgbktOCjW60Z5sdouiIIurkZUr9oW5NOex5uwxrbsYG09kb5bMcNjlVeJD3yPivTNzViIs1GCbqA== + dependencies: + "@ethersproject/abstract-signer" "^5.4.0" + "@ethersproject/address" "^5.4.0" + "@ethersproject/bignumber" "^5.4.0" + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/keccak256" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/properties" "^5.4.0" + "@ethersproject/strings" "^5.4.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== @@ -1122,7 +1496,7 @@ "@ethersproject/properties" "^5.5.0" "@ethersproject/strings" "^5.5.0" -"@ethersproject/hash@5.6.0", "@ethersproject/hash@>=5.0.0-beta.128", "@ethersproject/hash@^5.0.4", "@ethersproject/hash@^5.5.0", "@ethersproject/hash@^5.6.0": +"@ethersproject/hash@5.6.0", "@ethersproject/hash@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.6.0.tgz#d24446a5263e02492f9808baa99b6e2b4c3429a2" integrity sha512-fFd+k9gtczqlr0/BruWLAu7UAOas1uRRJvOR84uDf4lNZ+bTkGl366qvniUZHKtlqxBRU65MkOobkmvmpHU+jA== @@ -1136,7 +1510,25 @@ "@ethersproject/properties" "^5.6.0" "@ethersproject/strings" "^5.6.0" -"@ethersproject/hdnode@5.5.0": +"@ethersproject/hdnode@5.4.0", "@ethersproject/hdnode@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.4.0.tgz#4bc9999b9a12eb5ce80c5faa83114a57e4107cac" + integrity sha512-pKxdS0KAaeVGfZPp1KOiDLB0jba11tG6OP1u11QnYfb7pXn6IZx0xceqWRr6ygke8+Kw74IpOoSi7/DwANhy8Q== + dependencies: + "@ethersproject/abstract-signer" "^5.4.0" + "@ethersproject/basex" "^5.4.0" + "@ethersproject/bignumber" "^5.4.0" + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/pbkdf2" "^5.4.0" + "@ethersproject/properties" "^5.4.0" + "@ethersproject/sha2" "^5.4.0" + "@ethersproject/signing-key" "^5.4.0" + "@ethersproject/strings" "^5.4.0" + "@ethersproject/transactions" "^5.4.0" + "@ethersproject/wordlists" "^5.4.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== @@ -1154,7 +1546,7 @@ "@ethersproject/transactions" "^5.5.0" "@ethersproject/wordlists" "^5.5.0" -"@ethersproject/hdnode@5.6.0", "@ethersproject/hdnode@^5.5.0", "@ethersproject/hdnode@^5.6.0": +"@ethersproject/hdnode@5.6.0", "@ethersproject/hdnode@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.6.0.tgz#9dcbe8d629bbbcf144f2cae476337fe92d320998" integrity sha512-61g3Jp3nwDqJcL/p4nugSyLrpl/+ChXIOtCEM8UDmWeB3JCAt5FoLdOMXQc3WWkc0oM2C0aAn6GFqqMcS/mHTw== @@ -1172,7 +1564,26 @@ "@ethersproject/transactions" "^5.6.0" "@ethersproject/wordlists" "^5.6.0" -"@ethersproject/json-wallets@5.5.0": +"@ethersproject/json-wallets@5.4.0", "@ethersproject/json-wallets@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.4.0.tgz#2583341cfe313fc9856642e8ace3080154145e95" + integrity sha512-igWcu3fx4aiczrzEHwG1xJZo9l1cFfQOWzTqwRw/xcvxTk58q4f9M7cjh51EKphMHvrJtcezJ1gf1q1AUOfEQQ== + dependencies: + "@ethersproject/abstract-signer" "^5.4.0" + "@ethersproject/address" "^5.4.0" + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/hdnode" "^5.4.0" + "@ethersproject/keccak256" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/pbkdf2" "^5.4.0" + "@ethersproject/properties" "^5.4.0" + "@ethersproject/random" "^5.4.0" + "@ethersproject/strings" "^5.4.0" + "@ethersproject/transactions" "^5.4.0" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@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== @@ -1191,7 +1602,7 @@ aes-js "3.0.0" scrypt-js "3.0.1" -"@ethersproject/json-wallets@5.6.0", "@ethersproject/json-wallets@^5.5.0", "@ethersproject/json-wallets@^5.6.0": +"@ethersproject/json-wallets@5.6.0", "@ethersproject/json-wallets@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.6.0.tgz#4c2fc27f17e36c583e7a252fb938bc46f98891e5" integrity sha512-fmh86jViB9r0ibWXTQipxpAGMiuxoqUf78oqJDlCAJXgnJF024hOOX7qVgqsjtbeoxmcLwpPsXNU0WEe/16qPQ== @@ -1210,7 +1621,15 @@ aes-js "3.0.0" scrypt-js "3.0.1" -"@ethersproject/keccak256@5.5.0": +"@ethersproject/keccak256@5.4.0", "@ethersproject/keccak256@>=5.0.0-beta.127", "@ethersproject/keccak256@^5.0.3", "@ethersproject/keccak256@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.4.0.tgz#7143b8eea4976080241d2bd92e3b1f1bf7025318" + integrity sha512-FBI1plWet+dPUvAzPAeHzRKiPpETQzqSUWR1wXJGHVWi4i8bOSrpC3NwpkPjgeXG7MnugVc1B42VbfnQikyC/A== + dependencies: + "@ethersproject/bytes" "^5.4.0" + js-sha3 "0.5.7" + +"@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== @@ -1218,7 +1637,7 @@ "@ethersproject/bytes" "^5.5.0" js-sha3 "0.8.0" -"@ethersproject/keccak256@5.6.0", "@ethersproject/keccak256@>=5.0.0-beta.127", "@ethersproject/keccak256@^5.0.3", "@ethersproject/keccak256@^5.5.0", "@ethersproject/keccak256@^5.6.0": +"@ethersproject/keccak256@5.6.0", "@ethersproject/keccak256@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.6.0.tgz#fea4bb47dbf8f131c2e1774a1cecbfeb9d606459" integrity sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w== @@ -1226,31 +1645,85 @@ "@ethersproject/bytes" "^5.6.0" js-sha3 "0.8.0" -"@ethersproject/logger@5.5.0": +"@ethersproject/keccak256@^5.0.7": + version "5.0.9" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.0.9.tgz#ca0d86e4af56c13b1ef25e533bde3e96d28f647d" + integrity sha512-zhdUTj6RGtCJSgU+bDrWF6cGbvW453LoIC1DSNWrTlXzC7WuH4a+EiPrgc7/kNoRxerKuA/cxYlI8GwNtVtDlw== + dependencies: + "@ethersproject/bytes" "^5.0.9" + js-sha3 "0.5.7" + +"@ethersproject/logger@5.4.0", "@ethersproject/logger@>=5.0.0-beta.129", "@ethersproject/logger@^5.0.5", "@ethersproject/logger@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.4.0.tgz#f39adadf62ad610c420bcd156fd41270e91b3ca9" + integrity sha512-xYdWGGQ9P2cxBayt64d8LC8aPFJk6yWCawQi/4eJ4+oJdMMjEBMrIcIMZ9AxhwpPVmnBPrsB10PcXGmGAqgUEQ== + +"@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/logger@5.6.0", "@ethersproject/logger@>=5.0.0-beta.129", "@ethersproject/logger@^5.0.5", "@ethersproject/logger@^5.5.0", "@ethersproject/logger@^5.6.0": +"@ethersproject/logger@5.6.0", "@ethersproject/logger@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.6.0.tgz#d7db1bfcc22fd2e4ab574cba0bb6ad779a9a3e7a" integrity sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg== -"@ethersproject/networks@5.5.0": +"@ethersproject/logger@^5.0.8": + version "5.0.10" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.0.10.tgz#fd884688b3143253e0356ef92d5f22d109d2e026" + integrity sha512-0y2T2NqykDrbPM3Zw9RSbPkDOxwChAL8detXaom76CfYoGxsOnRP/zTX8OUAV+x9LdwzgbWvWmeXrc0M7SuDZw== + +"@ethersproject/networks@5.4.1": + version "5.4.1" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.4.1.tgz#2ce83b8e42aa85216e5d277a7952d97b6ce8d852" + integrity sha512-8SvowCKz9Uf4xC5DTKI8+il8lWqOr78kmiqAVLYT9lzB8aSmJHQMD1GSuJI0CW4hMAnzocpGpZLgiMdzsNSPig== + dependencies: + "@ethersproject/logger" "^5.4.0" + +"@ethersproject/networks@5.5.0", "@ethersproject/networks@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.5.0.tgz#babec47cab892c51f8dd652ce7f2e3e14283981a" integrity sha512-KWfP3xOnJeF89Uf/FCJdV1a2aDJe5XTN2N52p4fcQ34QhDqQFkgQKZ39VGtiqUgHcLI8DfT0l9azC3KFTunqtA== dependencies: "@ethersproject/logger" "^5.5.0" -"@ethersproject/networks@5.6.1", "@ethersproject/networks@^5.5.0", "@ethersproject/networks@^5.6.0": +"@ethersproject/networks@5.5.1": + version "5.5.1" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.5.1.tgz#b7f7b9fb88dec1ea48f739b7fb9621311aa8ce6c" + integrity sha512-tYRDM4zZtSUcKnD4UMuAlj7SeXH/k5WC4SP2u1Pn57++JdXHkRu2zwNkgNogZoxHzhm9Q6qqurDBVptHOsW49Q== + dependencies: + "@ethersproject/logger" "^5.5.0" + +"@ethersproject/networks@5.5.2": + 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/networks@5.6.1", "@ethersproject/networks@^5.6.0": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.6.1.tgz#7a21ed1f83e86121737b16841961ec99ccf5c9c7" integrity sha512-b2rrupf3kCTcc3jr9xOWBuHylSFtbpJf79Ga7QR98ienU2UqGimPGEsYMgbI29KHJfA5Us89XwGVmxrlxmSrMg== dependencies: "@ethersproject/logger" "^5.6.0" -"@ethersproject/pbkdf2@5.5.0": +"@ethersproject/networks@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.4.0.tgz#71eecd3ef3755118b42c1a5d2a44a7e07202e10a" + integrity sha512-5fywtKRDcnaVeA5SjxXH3DOQqe/IbeD/plwydi94SdPps1fbDUrnO6SzDExaruBZXxpxJcO9upG9UComsei4bg== + dependencies: + "@ethersproject/logger" "^5.4.0" + +"@ethersproject/pbkdf2@5.4.0", "@ethersproject/pbkdf2@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.4.0.tgz#ed88782a67fda1594c22d60d0ca911a9d669641c" + integrity sha512-x94aIv6tiA04g6BnazZSLoRXqyusawRyZWlUhKip2jvoLpzJuLb//KtMM6PEovE47pMbW+Qe1uw+68ameJjB7g== + dependencies: + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/sha2" "^5.4.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== @@ -1258,7 +1731,7 @@ "@ethersproject/bytes" "^5.5.0" "@ethersproject/sha2" "^5.5.0" -"@ethersproject/pbkdf2@5.6.0", "@ethersproject/pbkdf2@^5.5.0", "@ethersproject/pbkdf2@^5.6.0": +"@ethersproject/pbkdf2@5.6.0", "@ethersproject/pbkdf2@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.6.0.tgz#04fcc2d7c6bff88393f5b4237d906a192426685a" integrity sha512-Wu1AxTgJo3T3H6MIu/eejLFok9TYoSdgwRr5oGY1LTLfmGesDoSx05pemsbrPT2gG4cQME+baTSCp5sEo2erZQ== @@ -1266,20 +1739,59 @@ "@ethersproject/bytes" "^5.6.0" "@ethersproject/sha2" "^5.6.0" -"@ethersproject/properties@5.5.0": +"@ethersproject/properties@5.4.0", "@ethersproject/properties@>=5.0.0-beta.131", "@ethersproject/properties@^5.0.3", "@ethersproject/properties@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.4.0.tgz#38ba20539b44dcc5d5f80c45ad902017dcdbefe7" + integrity sha512-7jczalGVRAJ+XSRvNA6D5sAwT4gavLq3OXPuV/74o3Rd2wuzSL035IMpIMgei4CYyBdialJMrTqkOnzccLHn4A== + dependencies: + "@ethersproject/logger" "^5.4.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/properties@5.6.0", "@ethersproject/properties@>=5.0.0-beta.131", "@ethersproject/properties@^5.0.3", "@ethersproject/properties@^5.5.0", "@ethersproject/properties@^5.6.0": +"@ethersproject/properties@5.6.0", "@ethersproject/properties@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.6.0.tgz#38904651713bc6bdd5bdd1b0a4287ecda920fa04" integrity sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg== dependencies: "@ethersproject/logger" "^5.6.0" +"@ethersproject/properties@^5.0.7": + version "5.0.9" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.0.9.tgz#d7aae634680760136ea522e25c3ef043ec15b5c2" + integrity sha512-ZCjzbHYTw+rF1Pn8FDCEmx3gQttwIHcm/6Xee8g/M3Ga3SfW4tccNMbs5zqnBH0E4RoOPaeNgyg1O68TaF0tlg== + dependencies: + "@ethersproject/logger" "^5.0.8" + +"@ethersproject/providers@5.4.1": + version "5.4.1" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.4.1.tgz#654267b563b833046b9c9647647cfc8267cb93b4" + integrity sha512-p06eiFKz8nu/5Ju0kIX024gzEQIgE5pvvGrBCngpyVjpuLtUIWT3097Agw4mTn9/dEA0FMcfByzFqacBMSgCVg== + dependencies: + "@ethersproject/abstract-provider" "^5.4.0" + "@ethersproject/abstract-signer" "^5.4.0" + "@ethersproject/address" "^5.4.0" + "@ethersproject/basex" "^5.4.0" + "@ethersproject/bignumber" "^5.4.0" + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/constants" "^5.4.0" + "@ethersproject/hash" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/networks" "^5.4.0" + "@ethersproject/properties" "^5.4.0" + "@ethersproject/random" "^5.4.0" + "@ethersproject/rlp" "^5.4.0" + "@ethersproject/sha2" "^5.4.0" + "@ethersproject/strings" "^5.4.0" + "@ethersproject/transactions" "^5.4.0" + "@ethersproject/web" "^5.4.0" + bech32 "1.1.4" + ws "7.4.6" + "@ethersproject/providers@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.5.0.tgz#bc2876a8fe5e0053ed9828b1f3767ae46e43758b" @@ -1305,7 +1817,57 @@ bech32 "1.1.4" ws "7.4.6" -"@ethersproject/providers@5.6.2", "@ethersproject/providers@^5.5.0", "@ethersproject/providers@^5.5.3": +"@ethersproject/providers@5.5.1": + version "5.5.1" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.5.1.tgz#ba87e3c93219bbd2e2edf8b369873aee774abf04" + integrity sha512-2zdD5sltACDWhjUE12Kucg2PcgM6V2q9JMyVvObtVGnzJu+QSmibbP+BHQyLWZUBfLApx2942+7DC5D+n4wBQQ== + 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" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/providers@5.5.3", "@ethersproject/providers@^5.5.0": + 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" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/providers@5.6.2", "@ethersproject/providers@^5.5.3": version "5.6.2" resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.6.2.tgz#b9807b1c8c6f59fa2ee4b3cf6519724d07a9f422" integrity sha512-6/EaFW/hNWz+224FXwl8+HdMRzVHt8DpPmu5MZaIQqx/K/ELnC9eY236SMV7mleCM3NnEArFwcAAxH5kUUgaRg== @@ -1330,7 +1892,15 @@ bech32 "1.1.4" ws "7.4.6" -"@ethersproject/random@5.5.0": +"@ethersproject/random@5.4.0", "@ethersproject/random@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.4.0.tgz#9cdde60e160d024be39cc16f8de3b9ce39191e16" + integrity sha512-pnpWNQlf0VAZDEOVp1rsYQosmv2o0ITS/PecNw+mS2/btF8eYdspkN0vIXrCMtkX09EAh9bdk8GoXmFXM1eAKw== + dependencies: + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + +"@ethersproject/random@5.5.0", "@ethersproject/random@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.5.0.tgz#305ed9e033ca537735365ac12eed88580b0f81f9" integrity sha512-egGYZwZ/YIFKMHcoBUo8t3a8Hb/TKYX8BCBoLjudVCZh892welR3jOxgOmb48xznc9bTcMm7Tpwc1gHC1PFNFQ== @@ -1338,7 +1908,15 @@ "@ethersproject/bytes" "^5.5.0" "@ethersproject/logger" "^5.5.0" -"@ethersproject/random@5.6.0", "@ethersproject/random@^5.5.0", "@ethersproject/random@^5.6.0": +"@ethersproject/random@5.5.1": + version "5.5.1" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.5.1.tgz#7cdf38ea93dc0b1ed1d8e480ccdaf3535c555415" + integrity sha512-YaU2dQ7DuhL5Au7KbcQLHxcRHfgyNgvFV4sQOo0HrtW3Zkrc9ctWNz8wXQ4uCSfSDsqX2vcjhroxU5RQRV0nqA== + dependencies: + "@ethersproject/bytes" "^5.5.0" + "@ethersproject/logger" "^5.5.0" + +"@ethersproject/random@5.6.0", "@ethersproject/random@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.6.0.tgz#1505d1ab6a250e0ee92f436850fa3314b2cb5ae6" integrity sha512-si0PLcLjq+NG/XHSZz90asNf+YfKEqJGVdxoEkSukzbnBgC8rydbgbUgBbBGLeHN4kAJwUFEKsu3sCXT93YMsw== @@ -1346,7 +1924,15 @@ "@ethersproject/bytes" "^5.6.0" "@ethersproject/logger" "^5.6.0" -"@ethersproject/rlp@5.5.0": +"@ethersproject/rlp@5.4.0", "@ethersproject/rlp@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.4.0.tgz#de61afda5ff979454e76d3b3310a6c32ad060931" + integrity sha512-0I7MZKfi+T5+G8atId9QaQKHRvvasM/kqLyAH4XxBCBchAooH2EX5rL9kYZWwcm3awYV+XC7VF6nLhfeQFKVPg== + dependencies: + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/logger" "^5.4.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== @@ -1354,7 +1940,7 @@ "@ethersproject/bytes" "^5.5.0" "@ethersproject/logger" "^5.5.0" -"@ethersproject/rlp@5.6.0", "@ethersproject/rlp@^5.5.0", "@ethersproject/rlp@^5.6.0": +"@ethersproject/rlp@5.6.0", "@ethersproject/rlp@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.6.0.tgz#55a7be01c6f5e64d6e6e7edb6061aa120962a717" integrity sha512-dz9WR1xpcTL+9DtOT/aDO+YyxSSdO8YIS0jyZwHHSlAmnxA6cKU3TrTd4Xc/bHayctxTgGLYNuVVoiXE4tTq1g== @@ -1362,7 +1948,24 @@ "@ethersproject/bytes" "^5.6.0" "@ethersproject/logger" "^5.6.0" -"@ethersproject/sha2@5.5.0": +"@ethersproject/rlp@^5.0.7": + version "5.0.9" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.0.9.tgz#da205bf8a34d3c3409eb73ddd237130a4b376aff" + integrity sha512-ns1U7ZMVeruUW6JXc4om+1w3w4ynHN/0fpwmeNTsAjwGKoF8SAUgue6ylKpHKWSti2idx7jDxbn8hNNFHk67CA== + dependencies: + "@ethersproject/bytes" "^5.0.9" + "@ethersproject/logger" "^5.0.8" + +"@ethersproject/sha2@5.4.0", "@ethersproject/sha2@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.4.0.tgz#c9a8db1037014cbc4e9482bd662f86c090440371" + integrity sha512-siheo36r1WD7Cy+bDdE1BJ8y0bDtqXCOxRMzPa4bV1TGt/eTUUt03BHoJNB6reWJD8A30E/pdJ8WFkq+/uz4Gg== + dependencies: + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + hash.js "1.1.7" + +"@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== @@ -1371,7 +1974,7 @@ "@ethersproject/logger" "^5.5.0" hash.js "1.1.7" -"@ethersproject/sha2@5.6.0", "@ethersproject/sha2@^5.5.0", "@ethersproject/sha2@^5.6.0": +"@ethersproject/sha2@5.6.0", "@ethersproject/sha2@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.6.0.tgz#364c4c11cc753bda36f31f001628706ebadb64d9" integrity sha512-1tNWCPFLu1n3JM9t4/kytz35DkuF9MxqkGGEHNauEbaARdm2fafnOyw1s0tIQDPKF/7bkP1u3dbrmjpn5CelyA== @@ -1380,7 +1983,19 @@ "@ethersproject/logger" "^5.6.0" hash.js "1.1.7" -"@ethersproject/signing-key@5.5.0": +"@ethersproject/signing-key@5.4.0", "@ethersproject/signing-key@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.4.0.tgz#2f05120984e81cf89a3d5f6dec5c68ee0894fbec" + integrity sha512-q8POUeywx6AKg2/jX9qBYZIAmKSB4ubGXdQ88l40hmATj29JnG5pp331nAWwwxPn2Qao4JpWHNZsQN+bPiSW9A== + dependencies: + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/properties" "^5.4.0" + bn.js "^4.11.9" + elliptic "6.5.4" + 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== @@ -1392,7 +2007,7 @@ elliptic "6.5.4" hash.js "1.1.7" -"@ethersproject/signing-key@5.6.0", "@ethersproject/signing-key@^5.5.0", "@ethersproject/signing-key@^5.6.0": +"@ethersproject/signing-key@5.6.0", "@ethersproject/signing-key@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.6.0.tgz#4f02e3fb09e22b71e2e1d6dc4bcb5dafa69ce042" integrity sha512-S+njkhowmLeUu/r7ir8n78OUKx63kBdMCPssePS89So1TH4hZqnWFsThEd/GiXYp9qMxVrydf7KdM9MTGPFukA== @@ -1404,6 +2019,27 @@ elliptic "6.5.4" hash.js "1.1.7" +"@ethersproject/signing-key@^5.0.8": + version "5.0.11" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.0.11.tgz#19fc5c4597e18ad0a5efc6417ba5b74069fdd2af" + integrity sha512-Jfcru/BGwdkXhLxT+8WCZtFy7LL0TPFZw05FAb5asxB/MyVsEfNdNxGDtjVE9zXfmRSPe/EusXYY4K7wcygOyQ== + dependencies: + "@ethersproject/bytes" "^5.0.9" + "@ethersproject/logger" "^5.0.8" + "@ethersproject/properties" "^5.0.7" + elliptic "6.5.4" + +"@ethersproject/solidity@5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.4.0.tgz#1305e058ea02dc4891df18b33232b11a14ece9ec" + integrity sha512-XFQTZ7wFSHOhHcV1DpcWj7VXECEiSrBuv7JErJvB9Uo+KfCdc3QtUZV+Vjh/AAaYgezUEKbCtE6Khjm44seevQ== + dependencies: + "@ethersproject/bignumber" "^5.4.0" + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/keccak256" "^5.4.0" + "@ethersproject/sha2" "^5.4.0" + "@ethersproject/strings" "^5.4.0" + "@ethersproject/solidity@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.5.0.tgz#2662eb3e5da471b85a20531e420054278362f93f" @@ -1428,7 +2064,16 @@ "@ethersproject/sha2" "^5.6.0" "@ethersproject/strings" "^5.6.0" -"@ethersproject/strings@5.5.0": +"@ethersproject/strings@5.4.0", "@ethersproject/strings@>=5.0.0-beta.130", "@ethersproject/strings@^5.0.4", "@ethersproject/strings@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.4.0.tgz#fb12270132dd84b02906a8d895ae7e7fa3d07d9a" + integrity sha512-k/9DkH5UGDhv7aReXLluFG5ExurwtIpUfnDNhQA29w896Dw3i4uDTz01Quaptbks1Uj9kI8wo9tmW73wcIEaWA== + dependencies: + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/constants" "^5.4.0" + "@ethersproject/logger" "^5.4.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== @@ -1437,7 +2082,7 @@ "@ethersproject/constants" "^5.5.0" "@ethersproject/logger" "^5.5.0" -"@ethersproject/strings@5.6.0", "@ethersproject/strings@>=5.0.0-beta.130", "@ethersproject/strings@^5.0.4", "@ethersproject/strings@^5.5.0", "@ethersproject/strings@^5.6.0": +"@ethersproject/strings@5.6.0", "@ethersproject/strings@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.6.0.tgz#9891b26709153d996bf1303d39a7f4bc047878fd" integrity sha512-uv10vTtLTZqrJuqBZR862ZQjTIa724wGPWQqZrofaPI/kUsf53TBG0I0D+hQ1qyNtllbNzaW+PDPHHUI6/65Mg== @@ -1446,7 +2091,22 @@ "@ethersproject/constants" "^5.6.0" "@ethersproject/logger" "^5.6.0" -"@ethersproject/transactions@5.5.0": +"@ethersproject/transactions@5.4.0", "@ethersproject/transactions@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.4.0.tgz#a159d035179334bd92f340ce0f77e83e9e1522e0" + integrity sha512-s3EjZZt7xa4BkLknJZ98QGoIza94rVjaEed0rzZ/jB9WrIuu/1+tjvYCWzVrystXtDswy7TPBeIepyXwSYa4WQ== + dependencies: + "@ethersproject/address" "^5.4.0" + "@ethersproject/bignumber" "^5.4.0" + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/constants" "^5.4.0" + "@ethersproject/keccak256" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/properties" "^5.4.0" + "@ethersproject/rlp" "^5.4.0" + "@ethersproject/signing-key" "^5.4.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== @@ -1461,7 +2121,7 @@ "@ethersproject/rlp" "^5.5.0" "@ethersproject/signing-key" "^5.5.0" -"@ethersproject/transactions@5.6.0", "@ethersproject/transactions@^5.0.0-beta.135", "@ethersproject/transactions@^5.5.0", "@ethersproject/transactions@^5.6.0": +"@ethersproject/transactions@5.6.0", "@ethersproject/transactions@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.6.0.tgz#4b594d73a868ef6e1529a2f8f94a785e6791ae4e" integrity sha512-4HX+VOhNjXHZyGzER6E/LVI2i6lf9ejYeWD6l4g50AdmimyuStKc39kvKf1bXWQMg7QNVh+uC7dYwtaZ02IXeg== @@ -1476,6 +2136,30 @@ "@ethersproject/rlp" "^5.6.0" "@ethersproject/signing-key" "^5.6.0" +"@ethersproject/transactions@^5.0.0-beta.135": + version "5.0.11" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.0.11.tgz#b31df5292f47937136a45885d6ee6112477c13df" + integrity sha512-ftsRvR9+gQp7L63F6+XmstvsZ4w8GtWvQB08e/zB+oB86Fnhq8+i/tkgpJplSHC8I/qgiCisva+M3u2GVhDFPA== + dependencies: + "@ethersproject/address" "^5.0.9" + "@ethersproject/bignumber" "^5.0.13" + "@ethersproject/bytes" "^5.0.9" + "@ethersproject/constants" "^5.0.8" + "@ethersproject/keccak256" "^5.0.7" + "@ethersproject/logger" "^5.0.8" + "@ethersproject/properties" "^5.0.7" + "@ethersproject/rlp" "^5.0.7" + "@ethersproject/signing-key" "^5.0.8" + +"@ethersproject/units@5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.4.0.tgz#d57477a4498b14b88b10396062c8cbbaf20c79fe" + integrity sha512-Z88krX40KCp+JqPCP5oPv5p750g+uU6gopDYRTBGcDvOASh6qhiEYCRatuM/suC4S2XW9Zz90QI35MfSrTIaFg== + dependencies: + "@ethersproject/bignumber" "^5.4.0" + "@ethersproject/constants" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/units@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.5.0.tgz#104d02db5b5dc42cc672cc4587bafb87a95ee45e" @@ -1494,6 +2178,27 @@ "@ethersproject/constants" "^5.6.0" "@ethersproject/logger" "^5.6.0" +"@ethersproject/wallet@5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.4.0.tgz#fa5b59830b42e9be56eadd45a16a2e0933ad9353" + integrity sha512-wU29majLjM6AjCjpat21mPPviG+EpK7wY1+jzKD0fg3ui5fgedf2zEu1RDgpfIMsfn8fJHJuzM4zXZ2+hSHaSQ== + dependencies: + "@ethersproject/abstract-provider" "^5.4.0" + "@ethersproject/abstract-signer" "^5.4.0" + "@ethersproject/address" "^5.4.0" + "@ethersproject/bignumber" "^5.4.0" + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/hash" "^5.4.0" + "@ethersproject/hdnode" "^5.4.0" + "@ethersproject/json-wallets" "^5.4.0" + "@ethersproject/keccak256" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/properties" "^5.4.0" + "@ethersproject/random" "^5.4.0" + "@ethersproject/signing-key" "^5.4.0" + "@ethersproject/transactions" "^5.4.0" + "@ethersproject/wordlists" "^5.4.0" + "@ethersproject/wallet@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.5.0.tgz#322a10527a440ece593980dca6182f17d54eae75" @@ -1536,7 +2241,18 @@ "@ethersproject/transactions" "^5.6.0" "@ethersproject/wordlists" "^5.6.0" -"@ethersproject/web@5.5.0": +"@ethersproject/web@5.4.0", "@ethersproject/web@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.4.0.tgz#49fac173b96992334ed36a175538ba07a7413d1f" + integrity sha512-1bUusGmcoRLYgMn6c1BLk1tOKUIFuTg8j+6N8lYlbMpDesnle+i3pGSagGNvwjaiLo4Y5gBibwctpPRmjrh4Og== + dependencies: + "@ethersproject/base64" "^5.4.0" + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/properties" "^5.4.0" + "@ethersproject/strings" "^5.4.0" + +"@ethersproject/web@5.5.0", "@ethersproject/web@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.5.0.tgz#0e5bb21a2b58fb4960a705bfc6522a6acf461e28" integrity sha512-BEgY0eL5oH4mAo37TNYVrFeHsIXLRxggCRG/ksRIxI2X5uj5IsjGmcNiRN/VirQOlBxcUhCgHhaDLG4m6XAVoA== @@ -1547,7 +2263,18 @@ "@ethersproject/properties" "^5.5.0" "@ethersproject/strings" "^5.5.0" -"@ethersproject/web@5.6.0", "@ethersproject/web@^5.5.0", "@ethersproject/web@^5.6.0": +"@ethersproject/web@5.5.1": + 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/web@5.6.0", "@ethersproject/web@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.6.0.tgz#4bf8b3cbc17055027e1a5dd3c357e37474eaaeb8" integrity sha512-G/XHj0hV1FxI2teHRfCGvfBUHFmU+YOSbCxlAMqJklxSa7QMiHFQfAxvwY2PFqgvdkxEKwRNr/eCjfAPEm2Ctg== @@ -1558,7 +2285,18 @@ "@ethersproject/properties" "^5.6.0" "@ethersproject/strings" "^5.6.0" -"@ethersproject/wordlists@5.5.0": +"@ethersproject/wordlists@5.4.0", "@ethersproject/wordlists@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.4.0.tgz#f34205ec3bbc9e2c49cadaee774cf0b07e7573d7" + integrity sha512-FemEkf6a+EBKEPxlzeVgUaVSodU7G0Na89jqKjmWMlDB0tomoU8RlEMgUvXyqtrg8N4cwpLh8nyRnm1Nay1isA== + dependencies: + "@ethersproject/bytes" "^5.4.0" + "@ethersproject/hash" "^5.4.0" + "@ethersproject/logger" "^5.4.0" + "@ethersproject/properties" "^5.4.0" + "@ethersproject/strings" "^5.4.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== @@ -1569,7 +2307,7 @@ "@ethersproject/properties" "^5.5.0" "@ethersproject/strings" "^5.5.0" -"@ethersproject/wordlists@5.6.0", "@ethersproject/wordlists@^5.5.0", "@ethersproject/wordlists@^5.6.0": +"@ethersproject/wordlists@5.6.0", "@ethersproject/wordlists@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.6.0.tgz#79e62c5276e091d8575f6930ba01a29218ded032" integrity sha512-q0bxNBfIX3fUuAo9OmjlEYxP40IB8ABgb7HjEZCL5IKubzV3j30CWi2rqQbjTS2HfoyQbfINoKcTVWP4ejwR7Q== @@ -3448,7 +4186,16 @@ "@truffle/error" "^0.1.0" colors "1.4.0" -"@truffle/contract-schema@^3.1.0", "@truffle/contract-schema@^3.4.4": +"@truffle/contract-schema@^3.1.0": + version "3.3.4" + resolved "https://registry.yarnpkg.com/@truffle/contract-schema/-/contract-schema-3.3.4.tgz#95f0265cac7de7bcaa0542f5fe671a7896011bfe" + integrity sha512-HzscBl/GhZBvPNQeD9l6ewSHSkvNmE+bA0iTVa0Y2mNf5GD5Y3fK2NPyfbOdtckOvLqebvYGEDEPRiXc3BZ05g== + dependencies: + ajv "^6.10.0" + crypto-js "^3.1.9-1" + debug "^4.3.1" + +"@truffle/contract-schema@^3.4.4": version "3.4.6" resolved "https://registry.yarnpkg.com/@truffle/contract-schema/-/contract-schema-3.4.6.tgz#f80e52e6035c30755989bf7a9455ed507c2bb515" integrity sha512-YzVAoPxEnM7pz7vLrQvtgtnpIwERrZcbYRjRTEJP8Y7rxudYDYaZ8PwjHD3j0SQxE6Y0WquDi3PtbfgZB9BwYQ== @@ -3984,16 +4731,21 @@ "@types/node" "*" form-data "^3.0.0" -"@types/node@*", "@types/node@>= 8", "@types/node@>=13.7.0": - version "17.0.31" - resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.31.tgz#a5bb84ecfa27eec5e1c802c6bbf8139bdb163a5d" - integrity sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q== +"@types/node@*", "@types/node@>= 8": + version "14.14.35" + resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.35.tgz#42c953a4e2b18ab931f72477e7012172f4ffa313" + integrity sha512-Lt+wj8NVPx0zUmUwumiVXapmaLUcAk3yPuHCFVXras9k5VT9TdhJqKqGVUQCD60OTMCl0qxJ57OiTL0Mic3Iag== "@types/node@14.14.16": version "14.14.16" resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.16.tgz#3cc351f8d48101deadfed4c9e4f116048d437b4b" integrity sha512-naXYePhweTi+BMv11TgioE2/FXU4fSl29HAH1ffxVciNsH3rYXjNP2yM8wqmSm7jS20gM8TIklKiTen+1iVncw== +"@types/node@>=13.7.0": + version "17.0.31" + resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.31.tgz#a5bb84ecfa27eec5e1c802c6bbf8139bdb163a5d" + integrity sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q== + "@types/node@^10.12.18", "@types/node@^10.3.2": version "10.17.55" resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.55.tgz#a147f282edec679b894d4694edb5abeb595fecbd" @@ -4489,11 +5241,16 @@ acorn-globals@^6.0.0: acorn "^7.1.1" acorn-walk "^7.1.1" -acorn-jsx@^5.0.0, acorn-jsx@^5.3.1: +acorn-jsx@^5.0.0: version "5.3.2" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== +acorn-jsx@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b" + integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng== + acorn-node@^1.2.0, acorn-node@^1.3.0, acorn-node@^1.5.2, acorn-node@^1.6.1: version "1.8.2" resolved "https://registry.yarnpkg.com/acorn-node/-/acorn-node-1.8.2.tgz#114c95d64539e53dede23de8b9d96df7c7ae2af8" @@ -4624,6 +5381,16 @@ ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.12.3, ajv@^6.12.4, ajv json-schema-traverse "^0.4.1" uri-js "^4.2.2" +ajv@^7.0.2: + version "7.2.1" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-7.2.1.tgz#a5ac226171912447683524fa2f1248fcf8bac83d" + integrity sha512-+nu0HDv7kNSOua9apAVc979qd932rrZeb3WOvoiD31A/p1mIE5/9bN2027pE2rOPYEdS3UHzsvof4hY+lM9/WQ== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + ajv@^8.0.1, ajv@^8.9.0: version "8.11.0" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.11.0.tgz#977e91dd96ca669f54a11e23e378e33b884a565f" @@ -4700,7 +5467,12 @@ ansi-regex@^4.1.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== -ansi-regex@^5.0.0, ansi-regex@^5.0.1: +ansi-regex@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" + integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== + +ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== @@ -5138,15 +5910,6 @@ axios@0.27.2: follow-redirects "^1.14.9" form-data "^4.0.0" -axios@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.2.2.tgz#72681724c6e6a43a9fea860fc558127dbe32f9f1" - integrity sha512-bz/J4gS2S3I7mpN/YZfGFTqhXTYzRho8Ay38w2otuuDR322KzFIWm/4W2K6gIwvWaws5n+mnb7D1lN9uD+QH6Q== - dependencies: - follow-redirects "^1.15.0" - form-data "^4.0.0" - proxy-from-env "^1.1.0" - babel-code-frame@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" @@ -5905,7 +6668,7 @@ big.js@^6.0.3: resolved "https://registry.yarnpkg.com/big.js/-/big.js-6.1.1.tgz#63b35b19dc9775c94991ee5db7694880655d5537" integrity sha512-1vObw81a8ylZO5ePrtMay0n018TcftpTA5HFKDaSuiUDBo8biRBtjIobw60OpwuvrGk+FsxKamqN4cnmj/eXdg== -bignumber.js@*, bignumber.js@^9.0.0, bignumber.js@^9.0.1: +bignumber.js@*: version "9.0.2" resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.0.2.tgz#71c6c6bed38de64e24a65ebe16cfcf23ae693673" integrity sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw== @@ -5915,6 +6678,11 @@ bignumber.js@^7.2.1: resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-7.2.1.tgz#80c048759d826800807c4bfd521e50edbba57a5f" integrity sha512-S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ== +bignumber.js@^9.0.0, bignumber.js@^9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.0.1.tgz#8d7ba124c882bfd8e43260c67475518d0689e4e5" + integrity sha512-IdZR9mh6ahOBv/hYGiXyVuyCetmGJhtYkqLBpTStdhEGjegpPlUawydyaF3pbIOFynJTpllEs+NP+CS9jKFLjA== + binary-extensions@^1.0.0: version "1.13.1" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" @@ -5987,7 +6755,7 @@ bn.js@4.11.8: resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" integrity sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== -bn.js@5.2.1, bn.js@^5.0.0, bn.js@^5.1.1, bn.js@^5.1.2, bn.js@^5.1.3, bn.js@^5.2.0: +bn.js@5.2.1, bn.js@^5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== @@ -5997,6 +6765,11 @@ bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.10.0, bn.js@^4.11.0, bn.js@^4.11.1, bn.js@^ resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== +bn.js@^5.0.0, bn.js@^5.1.1, bn.js@^5.1.2, bn.js@^5.1.3: + version "5.2.0" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002" + integrity sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw== + body-parser@1.19.0, body-parser@^1.16.0: version "1.19.0" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" @@ -6267,7 +7040,18 @@ browserslist@^3.2.6: caniuse-lite "^1.0.30000844" electron-to-chromium "^1.3.47" -browserslist@^4.16.3, browserslist@^4.16.6: +browserslist@^4.14.5, browserslist@^4.16.3: + version "4.16.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.3.tgz#340aa46940d7db878748567c5dea24a48ddf3717" + integrity sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw== + dependencies: + caniuse-lite "^1.0.30001181" + colorette "^1.2.1" + electron-to-chromium "^1.3.649" + escalade "^3.1.1" + node-releases "^1.1.70" + +browserslist@^4.16.6: version "4.16.6" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.6.tgz#d7901277a5a88e554ed305b183ec9b0c08f66fa2" integrity sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ== @@ -6351,7 +7135,12 @@ buffer-fill@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c" integrity sha1-+PeLdniYiO858gXNY39o5wISKyw= -buffer-from@1.x, buffer-from@^1.0.0: +buffer-from@1.x: + version "1.1.1" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" + integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== + +buffer-from@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== @@ -6669,11 +7458,21 @@ camelcase@^6.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== -caniuse-lite@^1.0.30000844, caniuse-lite@^1.0.30001219: +caniuse-lite@^1.0.30000844: version "1.0.30001245" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001245.tgz#45b941bbd833cb0fa53861ff2bae746b3c6ca5d4" integrity sha512-768fM9j1PKXpOCKws6eTo3RHmvTUsG9UrpT4WoREFeZgJBTi4/X9g565azS/rVUGtqb8nt7FjLeF5u4kukERnA== +caniuse-lite@^1.0.30001181: + version "1.0.30001204" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001204.tgz#256c85709a348ec4d175e847a3b515c66e79f2aa" + integrity sha512-JUdjWpcxfJ9IPamy2f5JaRDCaqJOxDzOSKtbdx4rH9VivMd1vIzoPumsJa9LoMIi4Fx2BV2KZOxWhNkBjaYivQ== + +caniuse-lite@^1.0.30001219: + version "1.0.30001236" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001236.tgz#0a80de4cdf62e1770bb46a30d884fc8d633e3958" + integrity sha512-o0PRQSrSCGJKCPZcgMzl5fUaj5xHe8qA2m4QRvnyY4e1lITqoNkr7q/Oh1NcpGSy0Th97UZ35yoKcINPoq7YOQ== + capability@^0.2.5: version "0.2.5" resolved "https://registry.yarnpkg.com/capability/-/capability-0.2.5.tgz#51ad87353f1936ffd77f2f21c74633a4dea88801" @@ -6730,7 +7529,7 @@ chai@4.3.4, chai@^4.2.0: pathval "^1.1.1" type-detect "^4.0.5" -chalk@4.1.0: +chalk@4.1.0, chalk@^4.0.0, chalk@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== @@ -6766,7 +7565,7 @@ chalk@^3.0.0: ansi-styles "^4.1.0" supports-color "^7.1.0" -chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1: +chalk@^4.1.1: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== @@ -6854,6 +7653,17 @@ checkpoint-store@^1.1.0: dependencies: functional-red-black-tree "^1.0.1" +cheerio-select-tmp@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/cheerio-select-tmp/-/cheerio-select-tmp-0.1.1.tgz#55bbef02a4771710195ad736d5e346763ca4e646" + integrity sha512-YYs5JvbpU19VYJyj+F7oYrIE2BOll1/hRU7rEy/5+v9BzkSo3bK81iAeeQEMI92vRIxz677m72UmJUiVwwgjfQ== + dependencies: + css-select "^3.1.2" + css-what "^4.0.0" + domelementtype "^2.1.0" + domhandler "^4.0.0" + domutils "^2.4.4" + cheerio-select@^1.5.0: version "1.6.0" resolved "https://registry.yarnpkg.com/cheerio-select/-/cheerio-select-1.6.0.tgz#489f36604112c722afa147dedd0d4609c09e1696" @@ -6865,7 +7675,7 @@ cheerio-select@^1.5.0: domhandler "^4.3.1" domutils "^2.8.0" -cheerio@^1.0.0-rc.2, cheerio@^1.0.0-rc.3: +cheerio@^1.0.0-rc.2: version "1.0.0-rc.10" resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.10.tgz#2ba3dcdfcc26e7956fc1f440e61d51c643379f3e" integrity sha512-g0J0q/O6mW8z5zxQ3A8E8J1hUgp4SMOvEoW/x84OwyHKe/Zccz83PVT4y5Crcr530FV6NgmKI1qvGTKVl9XXVw== @@ -6878,6 +7688,19 @@ cheerio@^1.0.0-rc.2, cheerio@^1.0.0-rc.3: parse5-htmlparser2-tree-adapter "^6.0.1" tslib "^2.2.0" +cheerio@^1.0.0-rc.3: + version "1.0.0-rc.5" + resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.5.tgz#88907e1828674e8f9fee375188b27dadd4f0fa2f" + integrity sha512-yoqps/VCaZgN4pfXtenwHROTp8NG6/Hlt4Jpz2FEP0ZJQ+ZUkVDd0hAPDNKhj3nakpfPt/CNs57yEtxD1bXQiw== + dependencies: + cheerio-select-tmp "^0.1.0" + dom-serializer "~1.2.0" + domhandler "^4.0.0" + entities "~2.1.0" + htmlparser2 "^6.0.0" + parse5 "^6.0.0" + parse5-htmlparser2-tree-adapter "^6.0.0" + chokidar@3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.3.0.tgz#12c0714668c55800f659e262d4962a97faf554a6" @@ -7097,6 +7920,15 @@ cliui@^6.0.0: strip-ansi "^6.0.0" wrap-ansi "^6.2.0" +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + cliui@^8.0.1: version "8.0.1" resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" @@ -7189,7 +8021,7 @@ color-support@^1.1.3: resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== -colorette@^1.2.2: +colorette@^1.2.1, colorette@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94" integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w== @@ -7759,6 +8591,17 @@ css-b64-images@~0.2.5: resolved "https://registry.yarnpkg.com/css-b64-images/-/css-b64-images-0.2.5.tgz#42005d83204b2b4a5d93b6b1a5644133b5927a02" integrity sha1-QgBdgyBLK0pdk7axpWRBM7WSegI= +css-select@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-3.1.2.tgz#d52cbdc6fee379fba97fb0d3925abbd18af2d9d8" + integrity sha512-qmss1EihSuBNWNNhHjxzxSfJoFBM/lERB/Q4EnsJQQC62R2evJDW481091oAdOr9uh46/0n4nrg0It5cAnj1RA== + dependencies: + boolbase "^1.0.0" + css-what "^4.0.0" + domhandler "^4.0.0" + domutils "^2.4.3" + nth-check "^2.0.0" + css-select@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b" @@ -7770,6 +8613,11 @@ css-select@^4.3.0: domutils "^2.8.0" nth-check "^2.0.1" +css-what@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-4.0.0.tgz#35e73761cab2eeb3d3661126b23d7aa0e8432233" + integrity sha512-teijzG7kwYfNVsUh2H/YN62xW3KK9YhXEgSlbxMlcyjPNvdKJqFx5lrwlJgoFP1ZHlB89iGDlo/JyshKeRhv5A== + css-what@^6.0.1: version "6.1.0" resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" @@ -7889,10 +8737,10 @@ debug@3.2.6: dependencies: ms "^2.1.1" -debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.2.0, debug@^4.3.1, debug@^4.3.3: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== +debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.2.0, debug@^4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" + integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== dependencies: ms "2.1.2" @@ -7903,6 +8751,13 @@ debug@^3.1.0: dependencies: ms "^2.1.1" +debug@^4.3.3: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + debuglog@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" @@ -8286,7 +9141,16 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" -dom-serializer@^1.0.1, dom-serializer@^1.3.2: +dom-serializer@^1.0.1, dom-serializer@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.2.0.tgz#3433d9136aeb3c627981daa385fc7f32d27c48f1" + integrity sha512-n6kZFH/KlCrqs/1GHMOd5i2fd/beQHuehKdWvNNffbGHTr/almdhuVvTVFb3V7fglz+nC50fFusu3lY33h12pA== + dependencies: + domelementtype "^2.0.1" + domhandler "^4.0.0" + entities "^2.0.0" + +dom-serializer@^1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91" integrity sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig== @@ -8305,7 +9169,12 @@ domain-browser@^1.1.1, domain-browser@^1.2.0: resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== -domelementtype@^2.0.1, domelementtype@^2.2.0: +domelementtype@^2.0.1, domelementtype@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.1.0.tgz#a851c080a6d1c3d94344aed151d99f669edf585e" + integrity sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w== + +domelementtype@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== @@ -8317,13 +9186,29 @@ domexception@^2.0.1: dependencies: webidl-conversions "^5.0.0" -domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1: +domhandler@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.0.0.tgz#01ea7821de996d85f69029e81fa873c21833098e" + integrity sha512-KPTbnGQ1JeEMQyO1iYXoagsI6so/C96HZiFyByU3T6iAzpXn8EGEvct6unm1ZGoed8ByO2oirxgwxBmqKF9haA== + dependencies: + domelementtype "^2.1.0" + +domhandler@^4.2.0, domhandler@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== dependencies: domelementtype "^2.2.0" +domutils@^2.4.3, domutils@^2.4.4: + version "2.5.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.5.0.tgz#42f49cffdabb92ad243278b331fd761c1c2d3039" + integrity sha512-Ho16rzNMOFk2fPwChGh3D2D9OEHAfG19HgmRR2l+WLSsIstNsAYBzePH412bL0y5T44ejABIVfTHQ8nqi/tBCg== + dependencies: + dom-serializer "^1.0.1" + domelementtype "^2.0.1" + domhandler "^4.0.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" @@ -8484,11 +9369,21 @@ eip1559-fee-suggestions-ethers@1.3.3: ethers "^5.4.2" moving-averages "^4.0.6" -electron-to-chromium@^1.3.47, electron-to-chromium@^1.3.723: +electron-to-chromium@^1.3.47: version "1.3.778" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.778.tgz#bf01048736c95b78f2988e88005e0ebb385942a4" integrity sha512-Lw04qJaPtWdq0d7qKHJTgkam+FhFi3hm/scf1EyqJWdjO3ZIGUJhNmZJRXWb7yb/bRYXQyVGSpa9RqVpjjWMQw== +electron-to-chromium@^1.3.649: + version "1.3.699" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.699.tgz#854eea9db8bc8109c409a4807bfdb200dd75a2c7" + integrity sha512-fjt43CPXdPYwD9ybmKbNeLwZBmCVdLY2J5fGZub7/eMPuiqQznOGNXv/wurnpXIlE7ScHnvG9Zi+H4/i6uMKmw== + +electron-to-chromium@^1.3.723: + version "1.3.752" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.752.tgz#0728587f1b9b970ec9ffad932496429aef750d09" + integrity sha512-2Tg+7jSl3oPxgsBsWKh5H83QazTkmWG/cnNwJplmyZc7KcN61+I10oUgaXSVk/NwfvN3BdkKDR4FYuRBQQ2v0A== + elegant-spinner@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" @@ -8616,6 +9511,11 @@ entities@^2.0.0: resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== +entities@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" + integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w== + env-paths@^2.2.0: version "2.2.1" resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" @@ -9512,7 +10412,31 @@ ethereumjs-util@^5.0.0, ethereumjs-util@^5.0.1, ethereumjs-util@^5.1.1, ethereum rlp "^2.0.0" safe-buffer "^5.1.1" -ethereumjs-util@^7.0.10, ethereumjs-util@^7.0.2, ethereumjs-util@^7.1.0, ethereumjs-util@^7.1.1, ethereumjs-util@^7.1.4: +ethereumjs-util@^7.0.10, ethereumjs-util@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.0.tgz#e2b43a30bfcdbcb432a4eb42bd5f2393209b3fd5" + integrity sha512-kR+vhu++mUDARrsMMhsjjzPduRVAeundLGXucGRHF3B4oEltOUspfgCVco4kckucj3FMlLaZHUl9n7/kdmr6Tw== + dependencies: + "@types/bn.js" "^5.1.0" + bn.js "^5.1.2" + create-hash "^1.1.2" + ethereum-cryptography "^0.1.3" + ethjs-util "0.1.6" + rlp "^2.2.4" + +ethereumjs-util@^7.0.2: + version "7.0.9" + resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.0.9.tgz#2038baeb30f370a3e576ec175bd70bbbb6807d42" + integrity sha512-cRqvYYKJoitq6vMKMf8pXeVwvTrX+dRD0JwHaYqm8jvogK14tqIoCWH/KUHcRwnVxVXEYF/o6pup5jRG4V0xzg== + dependencies: + "@types/bn.js" "^5.1.0" + bn.js "^5.1.2" + create-hash "^1.1.2" + ethereum-cryptography "^0.1.3" + ethjs-util "0.1.6" + rlp "^2.2.4" + +ethereumjs-util@^7.1.1, ethereumjs-util@^7.1.4: version "7.1.4" resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.4.tgz#a6885bcdd92045b06f596c7626c3e89ab3312458" integrity sha512-p6KmuPCX4mZIqsQzXfmSx9Y0l2hqf+VkAiwSisW3UKUFdk8ZkAt+AYaor83z2nSi6CU2zSsXMlD80hAbNEGM0A== @@ -9657,7 +10581,43 @@ ethers@^4.0.0-beta.1, ethers@^4.0.32: uuid "2.0.1" xmlhttprequest "1.8.0" -ethers@^5.0.0, ethers@^5.0.1, ethers@^5.0.13, ethers@^5.0.2, ethers@^5.4.2, ethers@^5.5.0, ethers@^5.5.4: +ethers@^5.0.0, ethers@^5.0.1, ethers@^5.0.2: + version "5.4.1" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.4.1.tgz#bcff1e9f45bf1a061bf313ec04e8d9881d2d53f9" + integrity sha512-SrcddMdCgP1hukDvCPd87Aipbf4NWjQvdfAbZ65XSZGbfyuYPtIrUJPDH5B1SBRsdlfiEgX3eoz28DdBDzMNFg== + dependencies: + "@ethersproject/abi" "5.4.0" + "@ethersproject/abstract-provider" "5.4.0" + "@ethersproject/abstract-signer" "5.4.0" + "@ethersproject/address" "5.4.0" + "@ethersproject/base64" "5.4.0" + "@ethersproject/basex" "5.4.0" + "@ethersproject/bignumber" "5.4.0" + "@ethersproject/bytes" "5.4.0" + "@ethersproject/constants" "5.4.0" + "@ethersproject/contracts" "5.4.0" + "@ethersproject/hash" "5.4.0" + "@ethersproject/hdnode" "5.4.0" + "@ethersproject/json-wallets" "5.4.0" + "@ethersproject/keccak256" "5.4.0" + "@ethersproject/logger" "5.4.0" + "@ethersproject/networks" "5.4.1" + "@ethersproject/pbkdf2" "5.4.0" + "@ethersproject/properties" "5.4.0" + "@ethersproject/providers" "5.4.1" + "@ethersproject/random" "5.4.0" + "@ethersproject/rlp" "5.4.0" + "@ethersproject/sha2" "5.4.0" + "@ethersproject/signing-key" "5.4.0" + "@ethersproject/solidity" "5.4.0" + "@ethersproject/strings" "5.4.0" + "@ethersproject/transactions" "5.4.0" + "@ethersproject/units" "5.4.0" + "@ethersproject/wallet" "5.4.0" + "@ethersproject/web" "5.4.0" + "@ethersproject/wordlists" "5.4.0" + +ethers@^5.0.13, ethers@^5.5.4: version "5.6.2" resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.6.2.tgz#e75bac7f038c5e0fdde667dba62fc223924143a2" integrity sha512-EzGCbns24/Yluu7+ToWnMca3SXJ1Jk1BvWB7CCmVNxyOeM4LLvw2OLuIHhlkhQk1dtOcj9UMsdkxUh8RiG1dxQ== @@ -9693,6 +10653,78 @@ ethers@^5.0.0, ethers@^5.0.1, ethers@^5.0.13, ethers@^5.0.2, ethers@^5.4.2, ethe "@ethersproject/web" "5.6.0" "@ethersproject/wordlists" "5.6.0" +ethers@^5.4.2: + 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" + +ethers@^5.5.0: + version "5.5.2" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.5.2.tgz#cd2e508c7342c44fa70392f722e8de8f2416489f" + integrity sha512-EF5W+6Wwcu6BqVwpgmyR5U2+L4c1FQzlM/02dkZOugN3KF0cG9bzHZP+TDJglmPm2/IzCEJDT7KBxzayk7SAHw== + 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.1" + "@ethersproject/pbkdf2" "5.5.0" + "@ethersproject/properties" "5.5.0" + "@ethersproject/providers" "5.5.1" + "@ethersproject/random" "5.5.0" + "@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" + ethjs-abi@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/ethjs-abi/-/ethjs-abi-0.2.1.tgz#e0a7a93a7e81163a94477bad56ede524ab6de533" @@ -10388,16 +11420,16 @@ flush-write-stream@^1.0.0: inherits "^2.0.3" readable-stream "^2.3.6" -follow-redirects@^1.12.1, follow-redirects@^1.14.9: +follow-redirects@^1.12.1: + version "1.14.9" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.9.tgz#dd4ea157de7bfaf9ea9b3fbd85aa16951f78d8d7" + integrity sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w== + +follow-redirects@^1.14.9: version "1.15.1" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.1.tgz#0ca6a452306c9b276e4d3127483e29575e207ad5" integrity sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA== -follow-redirects@^1.15.0: - version "1.15.2" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" - integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== - fontkit@^1.8.0: version "1.8.1" resolved "https://registry.yarnpkg.com/fontkit/-/fontkit-1.8.1.tgz#ae77485376f1096b45548bf6ced9a07af62a7846" @@ -10945,10 +11977,10 @@ glob@^5.0.15: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.0, glob@^7.1.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: - version "7.2.0" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" - integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== +glob@^7.0.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@~7.1.6: + version "7.1.7" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" + integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -10957,10 +11989,10 @@ glob@^7.0.0, glob@^7.1.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, gl once "^1.3.0" path-is-absolute "^1.0.0" -glob@~7.1.6: - version "7.1.7" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" - integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== +glob@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" + integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -11135,7 +12167,7 @@ graphql-config@^3.3.0: minimatch "3.0.4" string-env-interpolation "1.0.1" -graphql-request@3.4.0: +graphql-request@3.4.0, graphql-request@^3.3.0: version "3.4.0" resolved "https://registry.yarnpkg.com/graphql-request/-/graphql-request-3.4.0.tgz#3a400cd5511eb3c064b1873afb059196bbea9c2b" integrity sha512-acrTzidSlwAj8wBNO7Q/UQHS8T+z5qRGquCQRv9J1InwR01BBWV9ObnoE+JS5nCCEj8wSGS0yrDXVDoRiKZuOg== @@ -11144,7 +12176,7 @@ graphql-request@3.4.0: extract-files "^9.0.0" form-data "^3.0.0" -graphql-request@^3.3.0, graphql-request@^3.7.0: +graphql-request@^3.7.0: version "3.7.0" resolved "https://registry.yarnpkg.com/graphql-request/-/graphql-request-3.7.0.tgz#c7406e537084f8b9788541e3e6704340ca13055b" integrity sha512-dw5PxHCgBneN2DDNqpWu8QkbbJ07oOziy8z+bK/TAXufsOLaETuVO4GkXrbs0WjhdKhBMN3BkpN/RIvUHkmNUQ== @@ -11517,6 +12549,16 @@ htmlescape@^1.1.0: resolved "https://registry.yarnpkg.com/htmlescape/-/htmlescape-1.1.1.tgz#3a03edc2214bca3b66424a3e7959349509cb0351" integrity sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E= +htmlparser2@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.0.1.tgz#422521231ef6d42e56bd411da8ba40aa36e91446" + integrity sha512-GDKPd+vk4jvSuvCbyuzx/unmXkk090Azec7LovXP8as1Hn8q9p3hbjmDGbUqqhknw0ajwit6LiiWqfiTUPMK7w== + dependencies: + domelementtype "^2.0.1" + domhandler "^4.0.0" + domutils "^2.4.4" + entities "^2.0.0" + htmlparser2@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" @@ -12082,6 +13124,13 @@ is-ci@^2.0.0: dependencies: ci-info "^2.0.0" +is-core-module@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.2.0.tgz#97037ef3d52224d85163f5597b2b63d9afed981a" + integrity sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ== + dependencies: + has "^1.0.3" + is-core-module@^2.8.1: version "2.8.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" @@ -14603,7 +15652,7 @@ micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4: snapdragon "^0.8.1" to-regex "^3.0.2" -micromatch@^4.0.0, micromatch@^4.0.2: +micromatch@^4.0.0: version "4.0.4" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9" integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== @@ -14611,6 +15660,14 @@ micromatch@^4.0.0, micromatch@^4.0.2: braces "^3.0.1" picomatch "^2.2.3" +micromatch@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" + integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== + dependencies: + braces "^3.0.1" + picomatch "^2.0.5" + miller-rabin@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" @@ -14724,7 +15781,17 @@ minimist@0.0.8: resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= -minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5, minimist@~1.2.5: +minimist@^1.1.0: + version "1.2.6" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" + integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== + +minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.5, minimist@~1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" + integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== + +minimist@^1.2.0: version "1.2.7" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18" integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== @@ -15295,6 +16362,11 @@ node-preload@^0.2.1: dependencies: process-on-spawn "^1.0.0" +node-releases@^1.1.70: + version "1.1.71" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.71.tgz#cb1334b179896b1c89ecfdd4b725fb7bbdfc7dbb" + integrity sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg== + node-releases@^1.1.71: version "1.1.73" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.73.tgz#dd4e81ddd5277ff846b80b52bb40c49edf7a7b20" @@ -15476,6 +16548,13 @@ npmlog@^4.1.2: gauge "~2.7.3" set-blocking "~2.0.0" +nth-check@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.0.0.tgz#1bb4f6dac70072fc313e8c9cd1417b5074c0a125" + integrity sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q== + dependencies: + boolbase "^1.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" @@ -16133,14 +17212,14 @@ parse-url@^5.0.0: parse-path "^4.0.0" protocols "^1.4.0" -parse5-htmlparser2-tree-adapter@^6.0.1: +parse5-htmlparser2-tree-adapter@^6.0.0, parse5-htmlparser2-tree-adapter@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz#2cdf9ad823321140370d4dbf5d3e92c7c8ddc6e6" integrity sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA== dependencies: parse5 "^6.0.1" -parse5@6.0.1, parse5@^6.0.1: +parse5@6.0.1, parse5@^6.0.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== @@ -16342,7 +17421,18 @@ pause-stream@0.0.11: dependencies: through "~2.3" -pbkdf2@^3.0.17, pbkdf2@^3.0.3, pbkdf2@^3.0.9: +pbkdf2@^3.0.17, pbkdf2@^3.0.3: + version "3.1.1" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.1.tgz#cb8724b0fada984596856d1a6ebafd3584654b94" + integrity sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg== + dependencies: + create-hash "^1.1.2" + create-hmac "^1.1.4" + ripemd160 "^2.0.1" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +pbkdf2@^3.0.9: version "3.1.2" resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075" integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA== @@ -16389,7 +17479,12 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3: +picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1: + version "2.2.2" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" + integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== + +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== @@ -16545,7 +17640,7 @@ prettier@2.1.1: resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.1.1.tgz#d9485dd5e499daa6cb547023b87a6cf51bee37d6" integrity sha512-9bY+5ZWCfqj3ghYBLxApy2zf6m+NJo5GzmLTpr9FsApsfjriNnS2dahWReHMi7qNPhhHl9SYHJs2cHZLgexNIw== -prettier@2.6.2, prettier@^2.1.2: +prettier@2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.6.2.tgz#e26d71a18a74c3d0f0597f55f01fb6c06c206032" integrity sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew== @@ -16555,6 +17650,11 @@ prettier@^1.14.3: resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== +prettier@^2.1.2: + version "2.2.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.2.1.tgz#795a1a78dd52f073da0cd42b21f9c91381923ff5" + integrity sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q== + pretty-format@^25.2.1, pretty-format@^25.5.0: version "25.5.0" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-25.5.0.tgz#7873c1d774f682c34b8d48b6743a2bf2ac55791a" @@ -16694,11 +17794,6 @@ proxy-addr@~2.0.5: forwarded "~0.1.2" ipaddr.js "1.9.1" -proxy-from-env@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" - integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== - proxy-middleware@latest: version "0.15.0" resolved "https://registry.yarnpkg.com/proxy-middleware/-/proxy-middleware-0.15.0.tgz#a3fdf1befb730f951965872ac2f6074c61477a56" @@ -16834,7 +17929,7 @@ q@^1.5.1: resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= -qs@6.10.3, qs@^6.7.0, qs@^6.9.4: +qs@6.10.3: version "6.10.3" resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ== @@ -16846,6 +17941,13 @@ qs@6.7.0: resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== +qs@^6.7.0, 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== + 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" @@ -17502,7 +18604,15 @@ resolve@1.17.0, resolve@~1.17.0: dependencies: path-parse "^1.0.6" -resolve@^1.0.0, resolve@^1.1.4, resolve@^1.1.5, resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.20.0, resolve@^1.4.0, resolve@^1.8.1: +resolve@^1.0.0, resolve@^1.1.5, resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.20.0, resolve@^1.8.1: + version "1.20.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" + integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== + dependencies: + is-core-module "^2.2.0" + path-parse "^1.0.6" + +resolve@^1.1.4, resolve@^1.4.0: version "1.22.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== @@ -17633,13 +18743,20 @@ rustbn.js@~0.2.0: resolved "https://registry.yarnpkg.com/rustbn.js/-/rustbn.js-0.2.0.tgz#8082cb886e707155fd1cb6f23bd591ab8d55d0ca" integrity sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA== -rxjs@^6.3.3, rxjs@^6.4.0, rxjs@^6.6.0, rxjs@^6.6.6: +rxjs@^6.3.3, rxjs@^6.6.0: version "6.6.7" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== dependencies: tslib "^1.9.0" +rxjs@^6.4.0, rxjs@^6.6.6: + version "6.6.6" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.6.tgz#14d8417aa5a07c5e633995b525e1e3c0dec03b70" + integrity sha512-/oTwee4N4iWzAMAL9xdGKjkEHmIwupR3oXbQjCKywF1BeFohswF3vZdogbmEF6pZkOsXTzWkrZszrWpQTByYVg== + dependencies: + tslib "^1.9.0" + rxjs@^7.2.0: version "7.5.1" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.1.tgz#af73df343cbcab37628197f43ea0c8256f54b157" @@ -17843,10 +18960,10 @@ semver@7.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== -semver@7.x, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: - version "7.3.7" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f" - integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== +semver@7.x, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4: + 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" @@ -17855,6 +18972,13 @@ semver@^6.0.0, semver@^6.1.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semve resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== +semver@^7.3.5: + version "7.3.7" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f" + integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== + dependencies: + lru-cache "^6.0.0" + semver@~5.4.1: version "5.4.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" @@ -18762,7 +19886,16 @@ string-width@^3.0.0, string-width@^3.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" -string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +string-width@^4.1.0, string-width@^4.2.0: + version "4.2.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz#dafd4f9559a7585cfba529c6a0a4f73488ebd4c5" + integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.0" + +string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -18854,7 +19987,14 @@ strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: dependencies: ansi-regex "^4.1.0" -strip-ansi@^6.0.0, strip-ansi@^6.0.1: +strip-ansi@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" + integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== + dependencies: + ansi-regex "^5.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" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -19135,7 +20275,17 @@ table@^5.2.3: slice-ansi "^2.1.0" string-width "^3.0.0" -table@^6.0.4, table@^6.8.0: +table@^6.0.4: + version "6.0.7" + resolved "https://registry.yarnpkg.com/table/-/table-6.0.7.tgz#e45897ffbcc1bcf9e8a87bf420f2c9e5a7a52a34" + integrity sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g== + dependencies: + ajv "^7.0.2" + lodash "^4.17.20" + slice-ansi "^4.0.0" + string-width "^4.2.0" + +table@^6.8.0: version "6.8.1" resolved "https://registry.yarnpkg.com/table/-/table-6.8.1.tgz#ea2b71359fe03b017a5fbc296204471158080bdf" integrity sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA== @@ -19768,7 +20918,7 @@ tsify@^5.0.4: through2 "^2.0.0" tsconfig "^5.0.3" -tslib@2.3.1, tslib@^2, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.2.0: +tslib@2.3.1, tslib@^2.2.0: version "2.3.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== @@ -19778,20 +20928,20 @@ tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@~2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.3.tgz#8e0741ac45fc0c226e58a17bfc3e64b9bc6ca61c" - integrity sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ== +tslib@^2, tslib@^2.1.0, tslib@~2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.2.0.tgz#fb2c475977e35e241311ede2693cee1ec6698f5c" + integrity sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w== -tslib@~2.1.0: +tslib@^2.0.3, tslib@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.1.0.tgz#da60860f1c2ecaa5703ab7d39bc05b6bf988b97a" integrity sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A== -tslib@~2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.2.0.tgz#fb2c475977e35e241311ede2693cee1ec6698f5c" - integrity sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w== +tslib@~2.0.1: + version "2.0.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.3.tgz#8e0741ac45fc0c226e58a17bfc3e64b9bc6ca61c" + integrity sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ== tsort@0.0.1: version "0.0.1" @@ -19965,11 +21115,21 @@ typescript@2.9.1: resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.9.1.tgz#fdb19d2c67a15d11995fd15640e373e09ab09961" integrity sha512-h6pM2f/GDchCFlldnriOhs1QHuwbnmj6/v7499eMHqPeW4V2G0elua2eIc2nu8v2NdHV0Gm+tzX83Hr6nUFjQA== -typescript@4.4.4, typescript@^4.0.3, typescript@^4.3.4: +typescript@4.4.4: version "4.4.4" resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.4.4.tgz#2cd01a1a1f160704d3101fd5a58ff0f9fcb8030c" integrity sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA== +typescript@^4.0.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.2.3.tgz#39062d8019912d43726298f09493d598048c1ce3" + integrity sha512-qOcYwxaByStAWrBf4x0fibwZvMRG+r4cQoTjbPtUlrWjBHbmCAww1i448U0GJ+3cNNEtebDteo/cHOR3xJ4wEw== + +typescript@^4.3.4: + version "4.3.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.3.5.tgz#4d1c37cc16e893973c45a06886b7113234f119f4" + integrity sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA== + typewise-core@^1.2, typewise-core@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/typewise-core/-/typewise-core-1.2.0.tgz#97eb91805c7f55d2f941748fa50d315d991ef195" @@ -20315,7 +21475,19 @@ util@^0.11.0: dependencies: inherits "2.0.3" -util@^0.12.0, util@~0.12.0: +util@^0.12.0: + version "0.12.3" + resolved "https://registry.yarnpkg.com/util/-/util-0.12.3.tgz#971bb0292d2cc0c892dab7c6a5d37c2bec707888" + integrity sha512-I8XkoQwE+fPQEhy9v012V+TSdH2kp9ts29i20TaaDUXsg7x/onePbhFJUExBfv/2ay1ZOp/Vsm3nDlmnFGSAog== + dependencies: + inherits "^2.0.3" + is-arguments "^1.0.4" + is-generator-function "^1.0.7" + is-typed-array "^1.1.3" + safe-buffer "^5.1.2" + which-typed-array "^1.1.2" + +util@~0.12.0: version "0.12.4" resolved "https://registry.yarnpkg.com/util/-/util-0.12.4.tgz#66121a31420df8f01ca0c464be15dfa1d1850253" integrity sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw== @@ -20490,6 +21662,16 @@ web3-bzz@1.2.9: swarm-js "^0.1.40" underscore "1.9.1" +web3-bzz@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.3.4.tgz#9be529353c4063bc68395370cb5d8e414c6b6c87" + integrity sha512-DBRVQB8FAgoAtZCpp2GAGPCJjgBgsuwOKEasjV044AAZiONpXcKHbkO6G1SgItIixnrJsRJpoGLGw52Byr6FKw== + dependencies: + "@types/node" "^12.12.6" + got "9.6.0" + swarm-js "^0.1.40" + underscore "1.9.1" + web3-bzz@1.5.3: version "1.5.3" resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.5.3.tgz#e36456905ce051138f9c3ce3623cbc73da088c2b" @@ -20535,6 +21717,15 @@ web3-core-helpers@1.2.9: web3-eth-iban "1.2.9" web3-utils "1.2.9" +web3-core-helpers@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.3.4.tgz#b8549740bf24d5c71688d89c3cdd802d8d36b4e4" + integrity sha512-n7BqDalcTa1stncHMmrnFtyTgDhX5Fy+avNaHCf6qcOP2lwTQC8+mdHVBONWRJ6Yddvln+c8oY/TAaB6PzWK0A== + dependencies: + underscore "1.9.1" + web3-eth-iban "1.3.4" + web3-utils "1.3.4" + web3-core-helpers@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.3.6.tgz#c478246a9abe4e5456acf42657dac2f7c330be74" @@ -20603,6 +21794,18 @@ web3-core-method@1.2.9: web3-core-subscriptions "1.2.9" web3-utils "1.2.9" +web3-core-method@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.3.4.tgz#6c2812d96dd6c811b9e6c8a5d25050d2c22b9527" + integrity sha512-JxmQrujsAWYRRN77P/RY7XuZDCzxSiiQJrgX/60Lfyf7FF1Y0le4L/UMCi7vUJnuYkbU1Kfl9E0udnqwyPqlvQ== + dependencies: + "@ethersproject/transactions" "^5.0.0-beta.135" + underscore "1.9.1" + web3-core-helpers "1.3.4" + web3-core-promievent "1.3.4" + web3-core-subscriptions "1.3.4" + web3-utils "1.3.4" + web3-core-method@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.3.6.tgz#4b0334edd94b03dfec729d113c69a4eb6ebc68ae" @@ -20660,6 +21863,13 @@ web3-core-promievent@1.2.9: dependencies: eventemitter3 "3.1.2" +web3-core-promievent@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.3.4.tgz#d166239012d91496cdcbe91d5d54071ea818bc73" + integrity sha512-V61dZIeBwogg6hhZZUt0qL9hTp1WDhnsdjP++9fhTDr4vy/Gz8T5vibqT2LLg6lQC8i+Py33yOpMeMNjztaUaw== + dependencies: + eventemitter3 "4.0.4" + web3-core-promievent@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.3.6.tgz#6c27dc79de8f71b74f5d17acaf9aaf593d3cb0c9" @@ -20714,6 +21924,18 @@ web3-core-requestmanager@1.2.9: web3-providers-ipc "1.2.9" web3-providers-ws "1.2.9" +web3-core-requestmanager@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.3.4.tgz#e105ced735c2b5fcedd5771e0ecf9879ae9c373f" + integrity sha512-xriouCrhVnVDYQ04TZXdEREZm0OOJzkSEsoN5bu4JYsA6e/HzROeU+RjDpMUxFMzN4wxmFZ+HWbpPndS3QwMag== + dependencies: + underscore "1.9.1" + util "^0.12.0" + web3-core-helpers "1.3.4" + web3-providers-http "1.3.4" + web3-providers-ipc "1.3.4" + web3-providers-ws "1.3.4" + web3-core-requestmanager@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.3.6.tgz#4fea269fe913fd4fca464b4f7c65cb94857b5b2a" @@ -20775,6 +21997,15 @@ web3-core-subscriptions@1.2.9: underscore "1.9.1" web3-core-helpers "1.2.9" +web3-core-subscriptions@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.3.4.tgz#7b00e92bde21f792620cd02e6e508fcf4f4c31d3" + integrity sha512-drVHVDxh54hv7xmjIm44g4IXjfGj022fGw4/meB5R2D8UATFI40F73CdiBlyqk3DysP9njDOLTJFSQvEkLFUOg== + dependencies: + eventemitter3 "4.0.4" + underscore "1.9.1" + web3-core-helpers "1.3.4" + web3-core-subscriptions@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.3.6.tgz#ee24e7974d1d72ff6c992c599deba4ef9b308415" @@ -20836,6 +22067,19 @@ web3-core@1.2.9: web3-core-requestmanager "1.2.9" web3-utils "1.2.9" +web3-core@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.3.4.tgz#2cc7ba7f35cc167f7a0a46fd5855f86e51d34ce8" + integrity sha512-7OJu46RpCEfTerl+gPvHXANR2RkLqAfW7l2DAvQ7wN0pnCzl9nEfdgW6tMhr31k3TR2fWucwKzCyyxMGzMHeSA== + dependencies: + "@types/bn.js" "^4.11.5" + "@types/node" "^12.12.6" + bignumber.js "^9.0.0" + web3-core-helpers "1.3.4" + web3-core-method "1.3.4" + web3-core-requestmanager "1.3.4" + web3-utils "1.3.4" + web3-core@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.3.6.tgz#a6a761d1ff2f3ee462b8dab679229d2f8e267504" @@ -20902,6 +22146,15 @@ web3-eth-abi@1.2.9: underscore "1.9.1" web3-utils "1.2.9" +web3-eth-abi@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.3.4.tgz#10f5d8b6080dbb6cbaa1bcef7e0c70573da6566f" + integrity sha512-PVSLXJ2dzdXsC+R24llIIEOS6S1KhG5qwNznJjJvXZFe3sqgdSe47eNvwUamZtCBjcrdR/HQr+L/FTxqJSf80Q== + dependencies: + "@ethersproject/abi" "5.0.7" + underscore "1.9.1" + web3-utils "1.3.4" + web3-eth-abi@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.3.6.tgz#4272ca48d817aa651bbf97b269f5ff10abc2b8a9" @@ -20978,6 +22231,23 @@ web3-eth-accounts@1.2.9: web3-core-method "1.2.9" web3-utils "1.2.9" +web3-eth-accounts@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.3.4.tgz#cf513d78531c13ce079a5e7862820570350e79a5" + integrity sha512-gz9ReSmQEjqbYAjpmAx+UZF4CVMbyS4pfjSYWGAnNNI+Xz0f0u0kCIYXQ1UEaE+YeLcYiE+ZlZdgg6YoatO5nA== + dependencies: + crypto-browserify "3.12.0" + eth-lib "0.2.8" + ethereumjs-common "^1.3.2" + ethereumjs-tx "^2.1.1" + scrypt-js "^3.0.1" + underscore "1.9.1" + uuid "3.3.2" + web3-core "1.3.4" + web3-core-helpers "1.3.4" + web3-core-method "1.3.4" + web3-utils "1.3.4" + web3-eth-accounts@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.3.6.tgz#f9fcb50b28ee58090ab292a10d996155caa2b474" @@ -21073,6 +22343,21 @@ web3-eth-contract@1.2.9: web3-eth-abi "1.2.9" web3-utils "1.2.9" +web3-eth-contract@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.3.4.tgz#1ea2dd71be0c4a9cf4772d4f75dbb2fa99751472" + integrity sha512-Fvy8ZxUksQY2ePt+XynFfOiSqxgQtMn4m2NJs6VXRl2Inl17qyRi/nIJJVKTcENLocm+GmZ/mxq2eOE5u02nPg== + dependencies: + "@types/bn.js" "^4.11.5" + underscore "1.9.1" + web3-core "1.3.4" + web3-core-helpers "1.3.4" + web3-core-method "1.3.4" + web3-core-promievent "1.3.4" + web3-core-subscriptions "1.3.4" + web3-eth-abi "1.3.4" + web3-utils "1.3.4" + web3-eth-contract@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.3.6.tgz#cccf4d32dc56917fb6923e778498a9ba2a5ba866" @@ -21160,6 +22445,21 @@ web3-eth-ens@1.2.9: web3-eth-contract "1.2.9" web3-utils "1.2.9" +web3-eth-ens@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.3.4.tgz#a7e4bb18481fb0e2ce5bfb3b3da2fbb0ad78cefe" + integrity sha512-b0580tQyQwpV2wyacwQiBEfQmjCUln5iPhge3IBIMXaI43BUNtH3lsCL9ERFQeOdweB4o+6rYyNYr6xbRcSytg== + dependencies: + content-hash "^2.5.2" + eth-ens-namehash "2.0.8" + underscore "1.9.1" + web3-core "1.3.4" + web3-core-helpers "1.3.4" + web3-core-promievent "1.3.4" + web3-eth-abi "1.3.4" + web3-eth-contract "1.3.4" + web3-utils "1.3.4" + web3-eth-ens@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.3.6.tgz#0d28c5d4ea7b4462ef6c077545a77956a6cdf175" @@ -21227,6 +22527,14 @@ web3-eth-iban@1.2.9: bn.js "4.11.8" web3-utils "1.2.9" +web3-eth-iban@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.3.4.tgz#5eb7a564e0dcf68730d68f48f95dd207cd173d81" + integrity sha512-Y7/hLjVvIN/OhaAyZ8L/hxbTqVX6AFTl2RwUXR6EEU9oaLydPcMjAx/Fr8mghUvQS3QJSr+UGubP3W4SkyNiYw== + dependencies: + bn.js "^4.11.9" + web3-utils "1.3.4" + web3-eth-iban@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.3.6.tgz#0d6ba21fe78f190af8919e9cd5453882457209e0" @@ -21294,6 +22602,18 @@ web3-eth-personal@1.2.9: web3-net "1.2.9" web3-utils "1.2.9" +web3-eth-personal@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.3.4.tgz#0d0e0abea3447283d7ee5658ed312990c9bf48dd" + integrity sha512-JiTbaktYVk1j+S2EDooXAhw5j/VsdvZfKRmHtXUe/HizPM9ETXmj1+ne4RT6m+950jQ7DJwUF3XU1FKYNtEDwQ== + dependencies: + "@types/node" "^12.12.6" + web3-core "1.3.4" + web3-core-helpers "1.3.4" + web3-core-method "1.3.4" + web3-net "1.3.4" + web3-utils "1.3.4" + web3-eth-personal@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.3.6.tgz#226137916754c498f0284f22c55924c87a2efcf0" @@ -21387,6 +22707,25 @@ web3-eth@1.2.9: web3-net "1.2.9" web3-utils "1.2.9" +web3-eth@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.3.4.tgz#7c4607685e66a1c43e3e315e526c959f24f96907" + integrity sha512-8OIVMLbvmx+LB5RZ4tDhXuFGWSdNMrCZ4HM0+PywQ08uEcmAcqTMFAn4vdPii+J8gCatZR501r1KdzX3SDLoPw== + dependencies: + underscore "1.9.1" + web3-core "1.3.4" + web3-core-helpers "1.3.4" + web3-core-method "1.3.4" + web3-core-subscriptions "1.3.4" + web3-eth-abi "1.3.4" + web3-eth-accounts "1.3.4" + web3-eth-contract "1.3.4" + web3-eth-ens "1.3.4" + web3-eth-iban "1.3.4" + web3-eth-personal "1.3.4" + web3-net "1.3.4" + web3-utils "1.3.4" + web3-eth@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.3.6.tgz#2c650893d540a7a0eb1365dd5b2dca24ac919b7c" @@ -21469,6 +22808,15 @@ web3-net@1.2.9: web3-core-method "1.2.9" web3-utils "1.2.9" +web3-net@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.3.4.tgz#d76158bf0b4a7b3b14352b4f95472db9efc57a2a" + integrity sha512-wVyqgVC3Zt/0uGnBiR3GpnsS8lvOFTDgWZMxAk9C6Guh8aJD9MUc7pbsw5rHrPUVe6S6RUfFJvh/Xq8oMIQgSw== + dependencies: + web3-core "1.3.4" + web3-core-method "1.3.4" + web3-utils "1.3.4" + web3-net@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.3.6.tgz#a56492e2227475e38db29394f8bac305a2446e41" @@ -21546,6 +22894,14 @@ web3-providers-http@1.2.9: web3-core-helpers "1.2.9" xhr2-cookies "1.1.0" +web3-providers-http@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.3.4.tgz#89389e18e27148faa2fef58842740ffadbdda8cc" + integrity sha512-aIg/xHXvxpqpFU70sqfp+JC3sGkLfAimRKTUhG4oJZ7U+tTcYTHoxBJj+4A3Id4JAoKiiv0k1/qeyQ8f3rMC3g== + dependencies: + web3-core-helpers "1.3.4" + xhr2-cookies "1.1.0" + web3-providers-http@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.3.6.tgz#36e8724a7424d52827819d53fd75dbf31f5422c2" @@ -21597,6 +22953,15 @@ web3-providers-ipc@1.2.9: underscore "1.9.1" web3-core-helpers "1.2.9" +web3-providers-ipc@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.3.4.tgz#b963518989b1b7847063cdd461ff73b83855834a" + integrity sha512-E0CvXEJElr/TIlG1YfJeO3Le5NI/4JZM+1SsEdiPIfBUAJN18oOoum138EBGKv5+YaLKZUtUuJSXWjIIOR/0Ig== + dependencies: + oboe "2.1.5" + underscore "1.9.1" + web3-core-helpers "1.3.4" + web3-providers-ipc@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.3.6.tgz#cef8d12c1ebb47adce5ebf597f553c623362cb4a" @@ -21651,6 +23016,16 @@ web3-providers-ws@1.2.9: web3-core-helpers "1.2.9" websocket "^1.0.31" +web3-providers-ws@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.3.4.tgz#b94c2e0ec51a0c472abdec53a472b5bf8176bec1" + integrity sha512-WBd9hk2fUAdrbA3kUyUk94ZeILtE6txLeoVVvIKAw2bPegx+RjkLyxC1Du0oceKgQ/qQWod8CCzl1E/GgTP+MQ== + dependencies: + eventemitter3 "4.0.4" + underscore "1.9.1" + web3-core-helpers "1.3.4" + websocket "^1.0.32" + web3-providers-ws@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.3.6.tgz#e1df617bc89d66165abdf2191da0014c505bfaac" @@ -21718,6 +23093,16 @@ web3-shh@1.2.9: web3-core-subscriptions "1.2.9" web3-net "1.2.9" +web3-shh@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.3.4.tgz#b7d29e118f26416c1a74575e585be379cc01a77a" + integrity sha512-zoeww5mxLh3xKcqbX85irQbtFe5pc5XwrgjvmdMkhkOdZzPASlWOgqzUFtaPykpLwC3yavVx4jG5RqifweXLUA== + dependencies: + web3-core "1.3.4" + web3-core-method "1.3.4" + web3-core-subscriptions "1.3.4" + web3-net "1.3.4" + web3-shh@1.5.3: version "1.5.3" resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.5.3.tgz#3c04aa4cda9ba0b746d7225262401160f8e38b13" @@ -21779,6 +23164,20 @@ web3-utils@1.2.9: underscore "1.9.1" utf8 "3.0.0" +web3-utils@1.3.4, web3-utils@^1.2.1: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.3.4.tgz#9b1aa30d7549f860b573e7bb7e690999e7192198" + integrity sha512-/vC2v0MaZNpWooJfpRw63u0Y3ag2gNjAWiLtMSL6QQLmCqCy4SQIndMt/vRyx0uMoeGt1YTwSXEcHjUzOhLg0A== + dependencies: + bn.js "^4.11.9" + eth-lib "0.2.8" + ethereum-bloom-filters "^1.0.6" + ethjs-unit "0.1.6" + number-to-bn "1.7.0" + randombytes "^2.1.0" + underscore "1.9.1" + utf8 "3.0.0" + web3-utils@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.3.6.tgz#390bc9fa3a7179746963cfaca55bb80ac4d8dc10" @@ -21819,7 +23218,7 @@ web3-utils@1.6.1: randombytes "^2.1.0" utf8 "3.0.0" -web3-utils@1.7.3, web3-utils@^1.0.0-beta.31, web3-utils@^1.2.1, web3-utils@^1.3.4: +web3-utils@1.7.3, web3-utils@^1.3.4: version "1.7.3" resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.7.3.tgz#b214d05f124530d8694ad364509ac454d05f207c" integrity sha512-g6nQgvb/bUpVUIxJE+ezVN+rYwYmlFyMvMIRSuqpi1dk6ApDD00YNArrk7sPcZnjvxOJ76813Xs2vIN2rgh4lg== @@ -21832,6 +23231,20 @@ web3-utils@1.7.3, web3-utils@^1.0.0-beta.31, web3-utils@^1.2.1, web3-utils@^1.3. randombytes "^2.1.0" utf8 "3.0.0" +web3-utils@^1.0.0-beta.31: + version "1.4.0" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.4.0.tgz#e8cb381c81b242dc1d4ecb397200356d404410e6" + integrity sha512-b8mEhwh/J928Xk+SQFjtqrR2EGPhpknWLcIt9aCpVPVRXiqjUGo/kpOHKz0azu9c6/onEJ9tWXZt0cVjmH0N5Q== + dependencies: + bn.js "^4.11.9" + eth-lib "0.2.8" + ethereum-bloom-filters "^1.0.6" + ethjs-unit "0.1.6" + number-to-bn "1.7.0" + randombytes "^2.1.0" + underscore "1.12.1" + utf8 "3.0.0" + web3@1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/web3/-/web3-1.2.1.tgz#5d8158bcca47838ab8c2b784a2dee4c3ceb4179b" @@ -21884,7 +23297,7 @@ web3@1.5.3: web3-shh "1.5.3" web3-utils "1.5.3" -web3@1.7.3, web3@^1.0.0-beta.34, web3@^1.2.1: +web3@1.7.3: version "1.7.3" resolved "https://registry.yarnpkg.com/web3/-/web3-1.7.3.tgz#30fe786338b2cc775881cb28c056ee5da4be65b8" integrity sha512-UgBvQnKIXncGYzsiGacaiHtm0xzQ/JtGqcSO/ddzQHYxnNuwI72j1Pb4gskztLYihizV9qPNQYHMSCiBlStI9A== @@ -21897,6 +23310,19 @@ web3@1.7.3, web3@^1.0.0-beta.34, web3@^1.2.1: web3-shh "1.7.3" web3-utils "1.7.3" +web3@^1.0.0-beta.34, web3@^1.2.1: + version "1.3.4" + resolved "https://registry.yarnpkg.com/web3/-/web3-1.3.4.tgz#31e014873360aa5840eb17f9f171190c967cffb7" + integrity sha512-D6cMb2EtTMLHgdGbkTPGl/Qi7DAfczR+Lp7iFX3bcu/bsD9V8fZW69hA8v5cRPNGzXUwVQebk3bS17WKR4cD2w== + dependencies: + web3-bzz "1.3.4" + web3-core "1.3.4" + web3-eth "1.3.4" + web3-eth-personal "1.3.4" + web3-net "1.3.4" + web3-shh "1.3.4" + web3-utils "1.3.4" + webidl-conversions@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" @@ -22278,7 +23704,7 @@ ws@7.4.5: resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.5.tgz#a484dd851e9beb6fdb420027e3885e8ce48986c1" integrity sha512-xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g== -ws@7.4.6: +ws@7.4.6, "ws@^5.2.0 || ^6.0.0 || ^7.0.0": version "7.4.6" resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== @@ -22299,7 +23725,12 @@ ws@^5.1.1: dependencies: async-limiter "~1.0.0" -"ws@^5.2.0 || ^6.0.0 || ^7.0.0", ws@^7.3.1, ws@^7.4.4, ws@^7.4.6: +ws@^7.3.1, ws@^7.4.4: + version "7.4.4" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.4.tgz#383bc9742cb202292c9077ceab6f6047b17f2d59" + integrity sha512-Qm8k8ojNQIMx7S+Zp8u/uHOx7Qazv3Yv4q68MiWWWOJhiwG5W3x7iqmRtJo8xxrciZUY4vRxUTJCKuRnF28ZZw== + +ws@^7.4.6: version "7.5.3" resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.3.tgz#160835b63c7d97bfab418fc1b8a9fced2ac01a74" integrity sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg== @@ -22452,7 +23883,7 @@ yargs-parser@^2.4.1: camelcase "^3.0.0" lodash.assign "^4.0.6" -yargs-parser@^20.2.3: +yargs-parser@^20.2.2, yargs-parser@^20.2.3: version "20.2.7" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz#61df85c113edfb5a7a4e36eb8aa60ef423cbc90a" integrity sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw== @@ -22511,7 +23942,7 @@ yargs@13.3.2, yargs@^13.3.0, yargs@^13.3.2: y18n "^4.0.0" yargs-parser "^13.1.2" -yargs@17.6.2, yargs@^17.0.0: +yargs@17.6.2: version "17.6.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.6.2.tgz#2e23f2944e976339a1ee00f18c77fedee8332541" integrity sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw== @@ -22576,6 +24007,19 @@ yargs@^15.0.2, yargs@^15.3.1, yargs@^15.4.1: y18n "^4.0.0" yargs-parser "^18.1.2" +yargs@^17.0.0: + version "17.0.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.0.1.tgz#6a1ced4ed5ee0b388010ba9fd67af83b9362e0bb" + integrity sha512-xBBulfCc8Y6gLFcrPvtqKz9hz8SO0l1Ni8GgDekvBX2ro0HRQImDGnikfc33cgzcYUSncapnNcZDjVFIH3f6KQ== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + yargs@^4.7.1: version "4.8.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-4.8.1.tgz#c0c42924ca4aaa6b0e6da1739dfb216439f9ddc0" From b06bd1e6f3c3189654a4837d53bcc6707c91f7bb Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 31 Jan 2023 16:53:11 +0100 Subject: [PATCH 05/50] finish & test --- packages/smart-contracts/README.md | 12 ++++++- packages/smart-contracts/hardhat.config.ts | 7 ++++ .../scripts-create2/compute-one-address.ts | 2 +- .../smart-contracts/scripts-create2/deploy.ts | 2 +- .../scripts-create2/tenderly.ts | 33 +++++++++++++++---- .../scripts-create2/utils/chains.ts | 23 +++++++++++++ .../scripts-create2/{ => utils}/utils.ts | 2 +- .../smart-contracts/scripts-create2/verify.ts | 2 +- .../src/lib/ContractArtifact.ts | 18 ++++++++++ .../src/lib/artifacts/index.ts | 1 + .../toolbox/src/commands/transaction/utils.ts | 16 +-------- 11 files changed, 92 insertions(+), 26 deletions(-) create mode 100644 packages/smart-contracts/scripts-create2/utils/chains.ts rename packages/smart-contracts/scripts-create2/{ => utils}/utils.ts (98%) diff --git a/packages/smart-contracts/README.md b/packages/smart-contracts/README.md index 5747ec767e..8e36c7fbd1 100644 --- a/packages/smart-contracts/README.md +++ b/packages/smart-contracts/README.md @@ -108,7 +108,7 @@ The deployer contract should be deployed at `0xE99Ab70a5FAE59551544FA326fA048f7B Be sure to run `yarn build:sol` before deploying the deployer or a contract. -The contracts implemented are listed in the array `create2ContractDeploymentList` in [Utils](./scripts-create2/utils.ts). +The contracts implemented are listed in the array `create2ContractDeploymentList` in [Utils](scripts-create2/utils/utils.ts). ### Deploy the request deployer (once per chain) @@ -166,6 +166,16 @@ See `hardhat.config.ts`. yarn hardhat verify-contract-from-deployer --network ``` +### Add the contracts to Tenderly + +Once the contract has been added to the artifacts (`./src/lib/artifacts`), run the following command to synchronize +contracts with the Tenderly account. +Environment variables needed: `TENDERLY_...` (see `hardhat.config.ts`). + +```bash +yarn hardhat tenderly-monitor-contracts +``` + #### Verify the contracts manually With Hardhat (legacy) A more generic way to verify any contract by setting constructor argments manually: diff --git a/packages/smart-contracts/hardhat.config.ts b/packages/smart-contracts/hardhat.config.ts index ba41e113b0..bf24928a4a 100644 --- a/packages/smart-contracts/hardhat.config.ts +++ b/packages/smart-contracts/hardhat.config.ts @@ -15,6 +15,7 @@ import { VerifyCreate2FromList } from './scripts-create2/verify'; import { deployWithCreate2FromList } from './scripts-create2/deploy'; import { NUMBER_ERRORS } from './scripts/utils'; import { networkRpcs } from '@requestnetwork/utils'; +import { tenderlyPushAll } from './scripts-create2/tenderly'; config(); @@ -272,6 +273,12 @@ task( await VerifyCreate2FromList(hre as HardhatRuntimeEnvironmentExtended); }); +task('tenderly-monitor-contracts', 'Adds all contracts to the Tenderly account').setAction( + async (_args, hre) => { + await tenderlyPushAll(hre as HardhatRuntimeEnvironmentExtended); + }, +); + subtask(DEPLOYER_KEY_GUARD, 'prevent usage of the deployer master key').setAction(async () => { if (accounts && accounts[0] === process.env.DEPLOYER_MASTER_KEY) { throw new Error('The deployer master key should not be used for this action'); diff --git a/packages/smart-contracts/scripts-create2/compute-one-address.ts b/packages/smart-contracts/scripts-create2/compute-one-address.ts index e3f8ed19fd..9aa09611e6 100644 --- a/packages/smart-contracts/scripts-create2/compute-one-address.ts +++ b/packages/smart-contracts/scripts-create2/compute-one-address.ts @@ -1,6 +1,6 @@ import { IDeploymentParams, HardhatRuntimeEnvironmentExtended } from './types'; import { requestDeployer } from '../src/lib'; -import { create2ContractDeploymentList } from './utils'; +import { create2ContractDeploymentList } from './utils/utils'; import { getConstructorArgs } from './constructor-args'; // Deploys, set up the contracts diff --git a/packages/smart-contracts/scripts-create2/deploy.ts b/packages/smart-contracts/scripts-create2/deploy.ts index 6ed99b521c..00f75ddac6 100644 --- a/packages/smart-contracts/scripts-create2/deploy.ts +++ b/packages/smart-contracts/scripts-create2/deploy.ts @@ -1,4 +1,4 @@ -import { create2ContractDeploymentList, isContractDeployed } from './utils'; +import { create2ContractDeploymentList, isContractDeployed } from './utils/utils'; import { IDeploymentParams } from './types'; import { HardhatRuntimeEnvironmentExtended } from './types'; import { xdeploy } from './xdeployer'; diff --git a/packages/smart-contracts/scripts-create2/tenderly.ts b/packages/smart-contracts/scripts-create2/tenderly.ts index ddf2de1896..a334e3866f 100644 --- a/packages/smart-contracts/scripts-create2/tenderly.ts +++ b/packages/smart-contracts/scripts-create2/tenderly.ts @@ -1,21 +1,42 @@ import { HardhatRuntimeEnvironmentExtended } from './types'; import axios from 'axios'; +import * as artifacts from '../src/lib/artifacts'; +import { getChainConfig } from './utils/chains'; +import { ContractArtifact } from '../src/lib'; +import { Contract } from 'ethers'; +import * as console from 'console'; const getTenderlyAxiosInstance = (hre: HardhatRuntimeEnvironmentExtended) => { return axios.create({ baseURL: 'https://api.tenderly.co', headers: { - 'x-access-key': hre.config.tenderly.accessKey, + 'X-Access-Key': hre.config.tenderly.accessKey, }, }); }; -export const pushToTenderly = async ( - hre: HardhatRuntimeEnvironmentExtended, - contracts: Array<{ name: string; address: string; networkId: number }>, -): Promise => { +const capitalizeFirstLetter = (string: string) => string.charAt(0).toUpperCase() + string.slice(1); + +export const tenderlyPushAll = async (hre: HardhatRuntimeEnvironmentExtended): Promise => { const { username, project } = hre.config.tenderly; try { + const contracts: Array<{ name: string; address: string; networkId: number }> = []; + for (const artifactName in artifacts) { + const artifact = (artifacts as any)[artifactName] as ContractArtifact; + const deployments = artifact.getAllAddressesFromAllNetworks(); + for (const deployment of deployments) { + const { networkName } = deployment; + if (['private', 'rinkeby', 'bsctest', 'alfajores'].includes(networkName)) continue; + const chainConfig = await getChainConfig(networkName); + if (!chainConfig) continue; + const sanitizedArtifactName = artifactName.replace(/Artifact/i, ''); + contracts.push({ + name: `${capitalizeFirstLetter(sanitizedArtifactName)}-${deployment.version}`, + address: deployment.address, + networkId: chainConfig.chainId, + }); + } + } const axiosInstance = getTenderlyAxiosInstance(hre); await axiosInstance.post(`/api/v2/accounts/${username}/projects/${project}/contracts`, { contracts: contracts.map((contract) => ({ @@ -25,6 +46,6 @@ export const pushToTenderly = async ( })), }); } catch (err) { - console.error('Error while adding contract(s) to Tenderly', err); + console.error('Error while adding contract(s) to Tenderly', err.response?.data || err); } }; diff --git a/packages/smart-contracts/scripts-create2/utils/chains.ts b/packages/smart-contracts/scripts-create2/utils/chains.ts new file mode 100644 index 0000000000..fd7b162a44 --- /dev/null +++ b/packages/smart-contracts/scripts-create2/utils/chains.ts @@ -0,0 +1,23 @@ +import axios from 'axios'; + +type ChainConfig = { + name: string; + chainId: number; + rpcUrls: string[]; +}; + +const cachedChainConfigs: Record = {}; + +export const getChainConfig = async (chainName: string) => { + try { + if (cachedChainConfigs[chainName]) return cachedChainConfigs[chainName]; + const { data } = await axios.get( + `https://api.request.network/currency/chains/${chainName}`, + ); + cachedChainConfigs[chainName] = data; + return data; + } catch (e) { + console.warn(e.message); + return null; + } +}; diff --git a/packages/smart-contracts/scripts-create2/utils.ts b/packages/smart-contracts/scripts-create2/utils/utils.ts similarity index 98% rename from packages/smart-contracts/scripts-create2/utils.ts rename to packages/smart-contracts/scripts-create2/utils/utils.ts index 8fad5f5132..eac7777754 100644 --- a/packages/smart-contracts/scripts-create2/utils.ts +++ b/packages/smart-contracts/scripts-create2/utils/utils.ts @@ -1,5 +1,5 @@ import { Contract } from 'ethers'; -import * as artifacts from '../src/lib'; +import * as artifacts from '../../src/lib'; /** * List of smart contract that we deploy using the CREATE2 scheme through the Request Deployer contract diff --git a/packages/smart-contracts/scripts-create2/verify.ts b/packages/smart-contracts/scripts-create2/verify.ts index 682748c931..f9cf4bdadc 100644 --- a/packages/smart-contracts/scripts-create2/verify.ts +++ b/packages/smart-contracts/scripts-create2/verify.ts @@ -2,7 +2,7 @@ import { computeCreate2DeploymentAddress } from './compute-one-address'; import { getConstructorArgs } from './constructor-args'; import { HardhatRuntimeEnvironmentExtended } from './types'; import { IDeploymentParams } from './types'; -import { create2ContractDeploymentList } from './utils'; +import { create2ContractDeploymentList } from './utils/utils'; export const verifyOne = async ( contractAddress: string, diff --git a/packages/smart-contracts/src/lib/ContractArtifact.ts b/packages/smart-contracts/src/lib/ContractArtifact.ts index ad2a38de21..ab5d7f0a01 100644 --- a/packages/smart-contracts/src/lib/ContractArtifact.ts +++ b/packages/smart-contracts/src/lib/ContractArtifact.ts @@ -94,6 +94,24 @@ export class ContractArtifact { })); } + /** + * Retrieve all addresses for all versions for all networks + * @returns the addresses of the deployed contract and the associated network and version. + */ + getAllAddressesFromAllNetworks(): { version: string; address: string; networkName: string }[] { + const deployments = []; + for (const version in this.info) { + for (const networkName in this.info[version].deployment) { + deployments.push({ + version, + address: this.info[version].deployment[networkName].address, + networkName, + }); + } + } + return deployments; + } + /** * Retrieve the block creation number from the artifact of the used version * deployed into the specified network diff --git a/packages/smart-contracts/src/lib/artifacts/index.ts b/packages/smart-contracts/src/lib/artifacts/index.ts index 9a6987fa8d..8a9301c97f 100644 --- a/packages/smart-contracts/src/lib/artifacts/index.ts +++ b/packages/smart-contracts/src/lib/artifacts/index.ts @@ -1,6 +1,7 @@ /* * Payment Proxies & Swap */ + export * from './ChainlinkConversionPath'; export * from './Erc20ConversionProxy'; export * from './ERC20FeeProxy'; diff --git a/packages/toolbox/src/commands/transaction/utils.ts b/packages/toolbox/src/commands/transaction/utils.ts index 1be457d24b..8638d16f92 100644 --- a/packages/toolbox/src/commands/transaction/utils.ts +++ b/packages/toolbox/src/commands/transaction/utils.ts @@ -1,6 +1,6 @@ import { getDefaultProvider } from '@requestnetwork/payment-detection'; import { providers, Wallet } from 'ethers'; -import axios from 'axios'; +import { getChainConfig } from '@requestnetwork/smart-contracts/scripts-create2/utils/chains'; export const getWallet = async ({ chainName, @@ -31,17 +31,3 @@ export const getProvider = async (chainName: string) => { } return getDefaultProvider(chainName); }; - -const getChainConfig = async (chainName: string) => { - try { - const { data } = await axios.get<{ - name: string; - chainId: number; - rpcUrls: string[]; - }>(`https://api.request.network/currency/chains/${chainName}`); - return data; - } catch (e) { - console.warn(e.message); - return null; - } -}; From 9fcffbcc1fd84e648733bad5aeed244684c21721 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 31 Jan 2023 16:56:00 +0100 Subject: [PATCH 06/50] wording --- packages/smart-contracts/hardhat.config.ts | 6 +++--- packages/smart-contracts/scripts-create2/tenderly.ts | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/smart-contracts/hardhat.config.ts b/packages/smart-contracts/hardhat.config.ts index bf24928a4a..053c3f00a2 100644 --- a/packages/smart-contracts/hardhat.config.ts +++ b/packages/smart-contracts/hardhat.config.ts @@ -15,7 +15,7 @@ import { VerifyCreate2FromList } from './scripts-create2/verify'; import { deployWithCreate2FromList } from './scripts-create2/deploy'; import { NUMBER_ERRORS } from './scripts/utils'; import { networkRpcs } from '@requestnetwork/utils'; -import { tenderlyPushAll } from './scripts-create2/tenderly'; +import { tenderlyImportAll } from './scripts-create2/tenderly'; config(); @@ -273,9 +273,9 @@ task( await VerifyCreate2FromList(hre as HardhatRuntimeEnvironmentExtended); }); -task('tenderly-monitor-contracts', 'Adds all contracts to the Tenderly account').setAction( +task('tenderly-monitor-contracts', 'Import all contracts to a Tenderly account').setAction( async (_args, hre) => { - await tenderlyPushAll(hre as HardhatRuntimeEnvironmentExtended); + await tenderlyImportAll(hre as HardhatRuntimeEnvironmentExtended); }, ); diff --git a/packages/smart-contracts/scripts-create2/tenderly.ts b/packages/smart-contracts/scripts-create2/tenderly.ts index a334e3866f..3c967998e9 100644 --- a/packages/smart-contracts/scripts-create2/tenderly.ts +++ b/packages/smart-contracts/scripts-create2/tenderly.ts @@ -17,7 +17,7 @@ const getTenderlyAxiosInstance = (hre: HardhatRuntimeEnvironmentExtended) => { const capitalizeFirstLetter = (string: string) => string.charAt(0).toUpperCase() + string.slice(1); -export const tenderlyPushAll = async (hre: HardhatRuntimeEnvironmentExtended): Promise => { +export const tenderlyImportAll = async (hre: HardhatRuntimeEnvironmentExtended): Promise => { const { username, project } = hre.config.tenderly; try { const contracts: Array<{ name: string; address: string; networkId: number }> = []; From 222c30f588da5dead83845ad3abe9d59eaf173fd Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 31 Jan 2023 17:00:04 +0100 Subject: [PATCH 07/50] undo --- packages/smart-contracts/src/lib/artifacts/index.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/smart-contracts/src/lib/artifacts/index.ts b/packages/smart-contracts/src/lib/artifacts/index.ts index 8a9301c97f..9a6987fa8d 100644 --- a/packages/smart-contracts/src/lib/artifacts/index.ts +++ b/packages/smart-contracts/src/lib/artifacts/index.ts @@ -1,7 +1,6 @@ /* * Payment Proxies & Swap */ - export * from './ChainlinkConversionPath'; export * from './Erc20ConversionProxy'; export * from './ERC20FeeProxy'; From 5fa415ecf6ff06de5c5bedc7d14e70df8f9663f2 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 31 Jan 2023 18:04:10 +0100 Subject: [PATCH 08/50] rename file --- packages/smart-contracts/README.md | 2 +- packages/smart-contracts/scripts-create2/compute-one-address.ts | 2 +- packages/smart-contracts/scripts-create2/deploy.ts | 2 +- .../scripts-create2/utils/{utils.ts => index.ts} | 0 packages/smart-contracts/scripts-create2/verify.ts | 2 +- 5 files changed, 4 insertions(+), 4 deletions(-) rename packages/smart-contracts/scripts-create2/utils/{utils.ts => index.ts} (100%) diff --git a/packages/smart-contracts/README.md b/packages/smart-contracts/README.md index 8e36c7fbd1..cfa9b8457d 100644 --- a/packages/smart-contracts/README.md +++ b/packages/smart-contracts/README.md @@ -108,7 +108,7 @@ The deployer contract should be deployed at `0xE99Ab70a5FAE59551544FA326fA048f7B Be sure to run `yarn build:sol` before deploying the deployer or a contract. -The contracts implemented are listed in the array `create2ContractDeploymentList` in [Utils](scripts-create2/utils/utils.ts). +The contracts implemented are listed in the array `create2ContractDeploymentList` in [Utils](scripts-create2/utils/index.ts). ### Deploy the request deployer (once per chain) diff --git a/packages/smart-contracts/scripts-create2/compute-one-address.ts b/packages/smart-contracts/scripts-create2/compute-one-address.ts index 9aa09611e6..e3f8ed19fd 100644 --- a/packages/smart-contracts/scripts-create2/compute-one-address.ts +++ b/packages/smart-contracts/scripts-create2/compute-one-address.ts @@ -1,6 +1,6 @@ import { IDeploymentParams, HardhatRuntimeEnvironmentExtended } from './types'; import { requestDeployer } from '../src/lib'; -import { create2ContractDeploymentList } from './utils/utils'; +import { create2ContractDeploymentList } from './utils'; import { getConstructorArgs } from './constructor-args'; // Deploys, set up the contracts diff --git a/packages/smart-contracts/scripts-create2/deploy.ts b/packages/smart-contracts/scripts-create2/deploy.ts index 00f75ddac6..6ed99b521c 100644 --- a/packages/smart-contracts/scripts-create2/deploy.ts +++ b/packages/smart-contracts/scripts-create2/deploy.ts @@ -1,4 +1,4 @@ -import { create2ContractDeploymentList, isContractDeployed } from './utils/utils'; +import { create2ContractDeploymentList, isContractDeployed } from './utils'; import { IDeploymentParams } from './types'; import { HardhatRuntimeEnvironmentExtended } from './types'; import { xdeploy } from './xdeployer'; diff --git a/packages/smart-contracts/scripts-create2/utils/utils.ts b/packages/smart-contracts/scripts-create2/utils/index.ts similarity index 100% rename from packages/smart-contracts/scripts-create2/utils/utils.ts rename to packages/smart-contracts/scripts-create2/utils/index.ts diff --git a/packages/smart-contracts/scripts-create2/verify.ts b/packages/smart-contracts/scripts-create2/verify.ts index f9cf4bdadc..682748c931 100644 --- a/packages/smart-contracts/scripts-create2/verify.ts +++ b/packages/smart-contracts/scripts-create2/verify.ts @@ -2,7 +2,7 @@ import { computeCreate2DeploymentAddress } from './compute-one-address'; import { getConstructorArgs } from './constructor-args'; import { HardhatRuntimeEnvironmentExtended } from './types'; import { IDeploymentParams } from './types'; -import { create2ContractDeploymentList } from './utils/utils'; +import { create2ContractDeploymentList } from './utils'; export const verifyOne = async ( contractAddress: string, From dc410f60dcdf9e6f03cddd3e49c390bda9e09e31 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 31 Jan 2023 20:05:53 +0100 Subject: [PATCH 09/50] WIP --- .../currency/src/erc20/networks/avalanche.ts | 2 +- packages/currency/src/erc20/networks/bsc.ts | 2 +- .../currency/src/erc20/networks/bsctest.ts | 2 +- packages/currency/src/erc20/networks/celo.ts | 2 +- .../currency/src/erc20/networks/fantom.ts | 2 +- .../currency/src/erc20/networks/goerli.ts | 2 +- packages/currency/src/erc20/networks/index.ts | 40 ++++++++--------- .../currency/src/erc20/networks/mainnet.ts | 2 +- packages/currency/src/erc20/networks/matic.ts | 2 +- .../currency/src/erc20/networks/moonbeam.ts | 2 +- .../currency/src/erc20/networks/optimism.ts | 2 +- .../currency/src/erc20/networks/rinkeby.ts | 2 +- packages/currency/src/erc20/networks/types.ts | 1 - packages/currency/src/erc20/networks/xdai.ts | 2 +- .../currency/src/erc777/networks/index.ts | 2 +- .../currency/src/erc777/networks/rinkeby.ts | 2 +- .../currency/src/networks/arbitrum-one.ts | 4 ++ .../currency/src/networks/arbitrum-rinkeby.ts | 4 ++ packages/currency/src/networks/avalanche.ts | 7 +++ packages/currency/src/networks/bsc.ts | 7 +++ packages/currency/src/networks/bsctest.ts | 7 +++ packages/currency/src/networks/celo.ts | 7 +++ packages/currency/src/networks/fantom.ts | 7 +++ packages/currency/src/networks/fuse.ts | 4 ++ packages/currency/src/networks/goerli.ts | 7 +++ packages/currency/src/networks/index.ts | 45 +++++++++++++++++++ packages/currency/src/networks/mainnet.ts | 7 +++ packages/currency/src/networks/matic.ts | 7 +++ packages/currency/src/networks/moonbeam.ts | 7 +++ packages/currency/src/networks/mumbai.ts | 4 ++ packages/currency/src/networks/optimism.ts | 7 +++ packages/currency/src/networks/private.ts | 4 ++ packages/currency/src/networks/rinkeby.ts | 9 ++++ packages/currency/src/networks/ronin.ts | 4 ++ packages/currency/src/networks/tombchain.ts | 1 + packages/currency/src/networks/xdai.ts | 7 +++ packages/currency/src/types.ts | 11 +++++ .../src/lib/ContractArtifact.ts | 27 +++++++---- packages/types/src/currency-types.ts | 23 ++++++++++ packages/types/src/index.ts | 2 + 40 files changed, 244 insertions(+), 44 deletions(-) delete mode 100644 packages/currency/src/erc20/networks/types.ts create mode 100644 packages/currency/src/networks/arbitrum-one.ts create mode 100644 packages/currency/src/networks/arbitrum-rinkeby.ts create mode 100644 packages/currency/src/networks/avalanche.ts create mode 100644 packages/currency/src/networks/bsc.ts create mode 100644 packages/currency/src/networks/bsctest.ts create mode 100644 packages/currency/src/networks/celo.ts create mode 100644 packages/currency/src/networks/fantom.ts create mode 100644 packages/currency/src/networks/fuse.ts create mode 100644 packages/currency/src/networks/goerli.ts create mode 100644 packages/currency/src/networks/index.ts create mode 100644 packages/currency/src/networks/mainnet.ts create mode 100644 packages/currency/src/networks/matic.ts create mode 100644 packages/currency/src/networks/moonbeam.ts create mode 100644 packages/currency/src/networks/mumbai.ts create mode 100644 packages/currency/src/networks/optimism.ts create mode 100644 packages/currency/src/networks/private.ts create mode 100644 packages/currency/src/networks/rinkeby.ts create mode 100644 packages/currency/src/networks/ronin.ts create mode 100644 packages/currency/src/networks/tombchain.ts create mode 100644 packages/currency/src/networks/xdai.ts create mode 100644 packages/types/src/currency-types.ts diff --git a/packages/currency/src/erc20/networks/avalanche.ts b/packages/currency/src/erc20/networks/avalanche.ts index a6baabb97c..b9ca4bd490 100644 --- a/packages/currency/src/erc20/networks/avalanche.ts +++ b/packages/currency/src/erc20/networks/avalanche.ts @@ -1,4 +1,4 @@ -import { TokenMap } from './types'; +import { TokenMap } from '../../types'; // List of the supported bsc network tokens export const supportedAvalancheERC20: TokenMap = { diff --git a/packages/currency/src/erc20/networks/bsc.ts b/packages/currency/src/erc20/networks/bsc.ts index cfd9e8f731..c423a1003d 100644 --- a/packages/currency/src/erc20/networks/bsc.ts +++ b/packages/currency/src/erc20/networks/bsc.ts @@ -1,4 +1,4 @@ -import { TokenMap } from './types'; +import { TokenMap } from '../../types'; // List of the supported bsc network tokens export const supportedBSCERC20: TokenMap = { diff --git a/packages/currency/src/erc20/networks/bsctest.ts b/packages/currency/src/erc20/networks/bsctest.ts index 8bb28cf363..e5dd428752 100644 --- a/packages/currency/src/erc20/networks/bsctest.ts +++ b/packages/currency/src/erc20/networks/bsctest.ts @@ -1,4 +1,4 @@ -import { TokenMap } from './types'; +import { TokenMap } from '../../types'; // List of the supported bsctest network tokens export const supportedBSCTestERC20: TokenMap = { diff --git a/packages/currency/src/erc20/networks/celo.ts b/packages/currency/src/erc20/networks/celo.ts index cc107ec1c8..9e56e7882f 100644 --- a/packages/currency/src/erc20/networks/celo.ts +++ b/packages/currency/src/erc20/networks/celo.ts @@ -1,4 +1,4 @@ -import { TokenMap } from './types'; +import { TokenMap } from '../../types'; // List of the supported celo network tokens export const supportedCeloERC20: TokenMap = { diff --git a/packages/currency/src/erc20/networks/fantom.ts b/packages/currency/src/erc20/networks/fantom.ts index ca191095d7..123fed6649 100644 --- a/packages/currency/src/erc20/networks/fantom.ts +++ b/packages/currency/src/erc20/networks/fantom.ts @@ -1,4 +1,4 @@ -import { TokenMap } from './types'; +import { TokenMap } from '../../types'; export const supportedFantomTokens: TokenMap = { '0xD3b71117E6C1558c1553305b44988cd944e97300': { diff --git a/packages/currency/src/erc20/networks/goerli.ts b/packages/currency/src/erc20/networks/goerli.ts index b8529468ec..68596661dd 100644 --- a/packages/currency/src/erc20/networks/goerli.ts +++ b/packages/currency/src/erc20/networks/goerli.ts @@ -1,4 +1,4 @@ -import { TokenMap } from './types'; +import { TokenMap } from '../../types'; // List of the supported goerli ERC20 tokens export const supportedGoerliERC20: TokenMap = { diff --git a/packages/currency/src/erc20/networks/index.ts b/packages/currency/src/erc20/networks/index.ts index a93f6c1def..b8118d6c18 100644 --- a/packages/currency/src/erc20/networks/index.ts +++ b/packages/currency/src/erc20/networks/index.ts @@ -1,31 +1,31 @@ -import { supportedRinkebyERC20 } from './rinkeby'; -import { supportedMainnetERC20 } from './mainnet'; +import { TokenMap } from '../../types'; +import { CurrencyTypes } from '@requestnetwork/types'; + +import { supportedAvalancheERC20 } from './avalanche'; +import { supportedBSCERC20 } from './bsc'; +import { supportedBSCTestERC20 } from './bsctest'; import { supportedCeloERC20 } from './celo'; -import { supportedMaticERC20 } from './matic'; -import type { TokenMap } from './types'; import { supportedFantomTokens } from './fantom'; -import { supportedBSCTestERC20 } from './bsctest'; -import { supportedBSCERC20 } from './bsc'; -import { supportedXDAIERC20 } from './xdai'; import { supportedGoerliERC20 } from './goerli'; -import { supportedAvalancheERC20 } from './avalanche'; -import { supportedOptimismERC20 } from './optimism'; +import { supportedMainnetERC20 } from './mainnet'; +import { supportedMaticERC20 } from './matic'; import { supportedMoonbeamERC20 } from './moonbeam'; +import { supportedOptimismERC20 } from './optimism'; +import { supportedRinkebyERC20 } from './rinkeby'; +import { supportedXDAIERC20 } from './xdai'; -export const supportedNetworks: Record = { +export const supportedNetworks: Partial> = { + avalanche: supportedAvalancheERC20, + bsc: supportedBSCERC20, + bsctest: supportedBSCTestERC20, celo: supportedCeloERC20, - // FIXME: Rinkeby is deprecated - rinkeby: supportedRinkebyERC20, + fantom: supportedFantomTokens, goerli: supportedGoerliERC20, mainnet: supportedMainnetERC20, matic: supportedMaticERC20, - fantom: supportedFantomTokens, - bsctest: supportedBSCTestERC20, - bsc: supportedBSCERC20, - xdai: supportedXDAIERC20, - avalanche: supportedAvalancheERC20, - optimism: supportedOptimismERC20, moonbeam: supportedMoonbeamERC20, + optimism: supportedOptimismERC20, + // FIXME: Rinkeby is deprecated + rinkeby: supportedRinkebyERC20, + xdai: supportedXDAIERC20, }; - -export type { TokenMap }; diff --git a/packages/currency/src/erc20/networks/mainnet.ts b/packages/currency/src/erc20/networks/mainnet.ts index 1744a84ca4..4026029f12 100644 --- a/packages/currency/src/erc20/networks/mainnet.ts +++ b/packages/currency/src/erc20/networks/mainnet.ts @@ -1,5 +1,5 @@ import * as metamaskContractMap from '@metamask/contract-metadata'; -import { TokenMap } from './types'; +import { TokenMap } from '../../types'; // These interfaces are declared here because they should be used only in this context // A Token description from the eth-contract-metadata list diff --git a/packages/currency/src/erc20/networks/matic.ts b/packages/currency/src/erc20/networks/matic.ts index cdfd13754f..a3b8a01a7a 100644 --- a/packages/currency/src/erc20/networks/matic.ts +++ b/packages/currency/src/erc20/networks/matic.ts @@ -1,4 +1,4 @@ -import { TokenMap } from './types'; +import { TokenMap } from '../../types'; // List of the supported matic network tokens export const supportedMaticERC20: TokenMap = { diff --git a/packages/currency/src/erc20/networks/moonbeam.ts b/packages/currency/src/erc20/networks/moonbeam.ts index 88d9626ff8..12aca53a59 100644 --- a/packages/currency/src/erc20/networks/moonbeam.ts +++ b/packages/currency/src/erc20/networks/moonbeam.ts @@ -1,4 +1,4 @@ -import { TokenMap } from './types'; +import { TokenMap } from '../../types'; // List of the supported bsc network tokens export const supportedMoonbeamERC20: TokenMap = { diff --git a/packages/currency/src/erc20/networks/optimism.ts b/packages/currency/src/erc20/networks/optimism.ts index 8069f44a49..439c079c8c 100644 --- a/packages/currency/src/erc20/networks/optimism.ts +++ b/packages/currency/src/erc20/networks/optimism.ts @@ -1,4 +1,4 @@ -import { TokenMap } from './types'; +import { TokenMap } from '../../types'; // List of the supported bsc network tokens export const supportedOptimismERC20: TokenMap = { diff --git a/packages/currency/src/erc20/networks/rinkeby.ts b/packages/currency/src/erc20/networks/rinkeby.ts index 992e11a090..8540c0faab 100644 --- a/packages/currency/src/erc20/networks/rinkeby.ts +++ b/packages/currency/src/erc20/networks/rinkeby.ts @@ -1,4 +1,4 @@ -import { TokenMap } from './types'; +import { TokenMap } from '../../types'; // List of the supported rinkeby ERC20 tokens export const supportedRinkebyERC20: TokenMap = { diff --git a/packages/currency/src/erc20/networks/types.ts b/packages/currency/src/erc20/networks/types.ts deleted file mode 100644 index 0ca9bf4f8b..0000000000 --- a/packages/currency/src/erc20/networks/types.ts +++ /dev/null @@ -1 +0,0 @@ -export type TokenMap = Record; diff --git a/packages/currency/src/erc20/networks/xdai.ts b/packages/currency/src/erc20/networks/xdai.ts index 51b31f8b23..2dbbbb4114 100644 --- a/packages/currency/src/erc20/networks/xdai.ts +++ b/packages/currency/src/erc20/networks/xdai.ts @@ -1,4 +1,4 @@ -import { TokenMap } from './types'; +import { TokenMap } from '../../types'; // List of the supported bsc network tokens export const supportedXDAIERC20: TokenMap = { diff --git a/packages/currency/src/erc777/networks/index.ts b/packages/currency/src/erc777/networks/index.ts index 9613ad7866..7a04e6684d 100644 --- a/packages/currency/src/erc777/networks/index.ts +++ b/packages/currency/src/erc777/networks/index.ts @@ -1,5 +1,5 @@ import { supportedRinkebyERC777 } from './rinkeby'; -import type { TokenMap } from '../../erc20/networks/types'; +import { TokenMap } from '../../types'; export const supportedNetworks: Record = { rinkeby: supportedRinkebyERC777, diff --git a/packages/currency/src/erc777/networks/rinkeby.ts b/packages/currency/src/erc777/networks/rinkeby.ts index 53d1f842ab..407297a0ea 100644 --- a/packages/currency/src/erc777/networks/rinkeby.ts +++ b/packages/currency/src/erc777/networks/rinkeby.ts @@ -1,4 +1,4 @@ -import { TokenMap } from '../../erc20/networks/types'; +import { TokenMap } from '../../types'; // List of the supported rinkeby ERC777 tokens export const supportedRinkebyERC777: TokenMap = { diff --git a/packages/currency/src/networks/arbitrum-one.ts b/packages/currency/src/networks/arbitrum-one.ts new file mode 100644 index 0000000000..8972677c57 --- /dev/null +++ b/packages/currency/src/networks/arbitrum-one.ts @@ -0,0 +1,4 @@ +import { TokenMap } from '../types'; + +export const chainId = 42161; +export const currencies: TokenMap = {}; diff --git a/packages/currency/src/networks/arbitrum-rinkeby.ts b/packages/currency/src/networks/arbitrum-rinkeby.ts new file mode 100644 index 0000000000..afbb8d88eb --- /dev/null +++ b/packages/currency/src/networks/arbitrum-rinkeby.ts @@ -0,0 +1,4 @@ +import { TokenMap } from '../types'; + +export const chainId = 421611; +export const currencies: TokenMap = {}; diff --git a/packages/currency/src/networks/avalanche.ts b/packages/currency/src/networks/avalanche.ts new file mode 100644 index 0000000000..6a87f2ab4a --- /dev/null +++ b/packages/currency/src/networks/avalanche.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../types'; +import { supportedAvalancheERC20 } from '../erc20/networks/avalanche'; + +export const chainId = 43114; +export const currencies: TokenMap = { + ...supportedAvalancheERC20, +}; diff --git a/packages/currency/src/networks/bsc.ts b/packages/currency/src/networks/bsc.ts new file mode 100644 index 0000000000..822a938386 --- /dev/null +++ b/packages/currency/src/networks/bsc.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../types'; +import { supportedBSCERC20 } from '../erc20/networks/bsc'; + +export const chainId = 56; +export const currencies: TokenMap = { + ...supportedBSCERC20, +}; diff --git a/packages/currency/src/networks/bsctest.ts b/packages/currency/src/networks/bsctest.ts new file mode 100644 index 0000000000..b29b15acae --- /dev/null +++ b/packages/currency/src/networks/bsctest.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../types'; +import { supportedBSCTestERC20 } from '../erc20/networks/bsctest'; + +export const chainId = 97; +export const currencies: TokenMap = { + ...supportedBSCTestERC20, +}; diff --git a/packages/currency/src/networks/celo.ts b/packages/currency/src/networks/celo.ts new file mode 100644 index 0000000000..f0c5c6657e --- /dev/null +++ b/packages/currency/src/networks/celo.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../types'; +import { supportedCeloERC20 } from '../erc20/networks/celo'; + +export const chainId = 42220; +export const currencies: TokenMap = { + ...supportedCeloERC20, +}; diff --git a/packages/currency/src/networks/fantom.ts b/packages/currency/src/networks/fantom.ts new file mode 100644 index 0000000000..60c072f523 --- /dev/null +++ b/packages/currency/src/networks/fantom.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../types'; +import { supportedFantomTokens } from '../erc20/networks/fantom'; + +export const chainId = 250; +export const currencies: TokenMap = { + ...supportedFantomTokens, +}; diff --git a/packages/currency/src/networks/fuse.ts b/packages/currency/src/networks/fuse.ts new file mode 100644 index 0000000000..1003b1416d --- /dev/null +++ b/packages/currency/src/networks/fuse.ts @@ -0,0 +1,4 @@ +import { TokenMap } from '../types'; + +export const chainId = 122; +export const currencies: TokenMap = {}; diff --git a/packages/currency/src/networks/goerli.ts b/packages/currency/src/networks/goerli.ts new file mode 100644 index 0000000000..ae1ee3c3ac --- /dev/null +++ b/packages/currency/src/networks/goerli.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../types'; +import { supportedGoerliERC20 } from '../erc20/networks/goerli'; + +export const chainId = 5; +export const currencies: TokenMap = { + ...supportedGoerliERC20, +}; diff --git a/packages/currency/src/networks/index.ts b/packages/currency/src/networks/index.ts new file mode 100644 index 0000000000..d7cdd7ef88 --- /dev/null +++ b/packages/currency/src/networks/index.ts @@ -0,0 +1,45 @@ +import { CurrencyTypes } from '@requestnetwork/types'; +import { NetworkDefinition } from '../types'; + +import * as ArbitrumOneDefinition from './arbitrum-one'; +import * as ArbitrumRinkebyDefinition from './arbitrum-rinkeby'; +import * as AvalancheDefinition from './avalanche'; +import * as BscDefinition from './bsc'; +import * as BscTestDefinition from './bsctest'; +import * as CeloDefinition from './celo'; +import * as FantomDefinition from './fantom'; +import * as FuseDefinition from './fuse'; +import * as GoerliDefinition from './goerli'; +import * as MainnetDefinition from './mainnet'; +import * as MaticDefinition from './matic'; +import * as MoonbeamDefinition from './moonbeam'; +import * as MumbaiDefinition from './mumbai'; +import * as OptimismDefinition from './optimism'; +import * as PrivateDefinition from './private'; +import * as RinkebyDefinition from './rinkeby'; +import * as RoninDefinition from './ronin'; +import * as TombchainDefinition from './tombchain'; +import * as XDaiDefinition from './xdai'; + +export const networks: Record = { + 'arbitrum-one': ArbitrumOneDefinition, + 'arbitrum-rinkeby': ArbitrumRinkebyDefinition, + avalanche: AvalancheDefinition, + bsc: BscDefinition, + bsctest: BscTestDefinition, + celo: CeloDefinition, + fantom: FantomDefinition, + fuse: FuseDefinition, + goerli: GoerliDefinition, + mainnet: MainnetDefinition, + matic: MaticDefinition, + moonbeam: MoonbeamDefinition, + mumbai: MumbaiDefinition, + optimism: OptimismDefinition, + private: PrivateDefinition, + // FIXME: Rinkeby is deprecated + rinkeby: RinkebyDefinition, + ronin: RoninDefinition, + tombchain: TombchainDefinition, + xdai: XDaiDefinition, +}; diff --git a/packages/currency/src/networks/mainnet.ts b/packages/currency/src/networks/mainnet.ts new file mode 100644 index 0000000000..ca66affc4e --- /dev/null +++ b/packages/currency/src/networks/mainnet.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../types'; +import { supportedMainnetERC20 } from '../erc20/networks/mainnet'; + +export const chainId = 1; +export const currencies: TokenMap = { + ...supportedMainnetERC20, +}; diff --git a/packages/currency/src/networks/matic.ts b/packages/currency/src/networks/matic.ts new file mode 100644 index 0000000000..e8e6a7fc34 --- /dev/null +++ b/packages/currency/src/networks/matic.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../types'; +import { supportedMaticERC20 } from '../erc20/networks/matic'; + +export const chainId = 137; +export const currencies: TokenMap = { + ...supportedMaticERC20, +}; diff --git a/packages/currency/src/networks/moonbeam.ts b/packages/currency/src/networks/moonbeam.ts new file mode 100644 index 0000000000..7519df7d0b --- /dev/null +++ b/packages/currency/src/networks/moonbeam.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../types'; +import { supportedMoonbeamERC20 } from '../erc20/networks/moonbeam'; + +export const chainId = 1284; +export const currencies: TokenMap = { + ...supportedMoonbeamERC20, +}; diff --git a/packages/currency/src/networks/mumbai.ts b/packages/currency/src/networks/mumbai.ts new file mode 100644 index 0000000000..8b328ef1e1 --- /dev/null +++ b/packages/currency/src/networks/mumbai.ts @@ -0,0 +1,4 @@ +import { TokenMap } from '../types'; + +export const chainId = 80001; +export const currencies: TokenMap = {}; diff --git a/packages/currency/src/networks/optimism.ts b/packages/currency/src/networks/optimism.ts new file mode 100644 index 0000000000..9e559dd55a --- /dev/null +++ b/packages/currency/src/networks/optimism.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../types'; +import { supportedOptimismERC20 } from '../erc20/networks/optimism'; + +export const chainId = 10; +export const currencies: TokenMap = { + ...supportedOptimismERC20, +}; diff --git a/packages/currency/src/networks/private.ts b/packages/currency/src/networks/private.ts new file mode 100644 index 0000000000..e97b25098f --- /dev/null +++ b/packages/currency/src/networks/private.ts @@ -0,0 +1,4 @@ +import { TokenMap } from '../types'; + +export const chainId = 31337; +export const currencies: TokenMap = {}; diff --git a/packages/currency/src/networks/rinkeby.ts b/packages/currency/src/networks/rinkeby.ts new file mode 100644 index 0000000000..7b710df44a --- /dev/null +++ b/packages/currency/src/networks/rinkeby.ts @@ -0,0 +1,9 @@ +import { TokenMap } from '../types'; +import { supportedRinkebyERC20 } from '../erc20/networks/rinkeby'; +import { supportedRinkebyERC777 } from '../erc777/networks/rinkeby'; + +export const chainId = 4; +export const currencies: TokenMap = { + ...supportedRinkebyERC20, + ...supportedRinkebyERC777, +}; diff --git a/packages/currency/src/networks/ronin.ts b/packages/currency/src/networks/ronin.ts new file mode 100644 index 0000000000..2f8306461d --- /dev/null +++ b/packages/currency/src/networks/ronin.ts @@ -0,0 +1,4 @@ +import { TokenMap } from '../types'; + +export const chainId = 2020; +export const currencies: TokenMap = {}; diff --git a/packages/currency/src/networks/tombchain.ts b/packages/currency/src/networks/tombchain.ts new file mode 100644 index 0000000000..43cc4b72b6 --- /dev/null +++ b/packages/currency/src/networks/tombchain.ts @@ -0,0 +1 @@ +export const chainId = 6969; diff --git a/packages/currency/src/networks/xdai.ts b/packages/currency/src/networks/xdai.ts new file mode 100644 index 0000000000..8383a349ea --- /dev/null +++ b/packages/currency/src/networks/xdai.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../types'; +import { supportedXDAIERC20 } from '../erc20/networks/xdai'; + +export const chainId = 100; +export const currencies: TokenMap = { + ...supportedXDAIERC20, +}; diff --git a/packages/currency/src/types.ts b/packages/currency/src/types.ts index 2437712f0c..7ec8b9ae15 100644 --- a/packages/currency/src/types.ts +++ b/packages/currency/src/types.ts @@ -1,5 +1,16 @@ import { RequestLogicTypes } from '@requestnetwork/types'; +/** + * Common types used in token configuration files + */ +type TokenAddress = string; +type TokenDefinition = { name: string; symbol: string; decimals: number }; +export type TokenMap = Record; +export type NetworkDefinition = { + chainId: number; + currencies?: TokenMap; +}; + /** * A native blockchain token (ETH, MATIC, ETH-rinkeby...) */ diff --git a/packages/smart-contracts/src/lib/ContractArtifact.ts b/packages/smart-contracts/src/lib/ContractArtifact.ts index ad2a38de21..453f3a5657 100644 --- a/packages/smart-contracts/src/lib/ContractArtifact.ts +++ b/packages/smart-contracts/src/lib/ContractArtifact.ts @@ -1,5 +1,6 @@ import { Contract, providers, Signer } from 'ethers'; import type { JsonFragment } from '@ethersproject/abi'; +import type { CurrencyTypes } from '@requestnetwork/types'; /** * Contract information specific to a network @@ -14,13 +15,13 @@ export type ArtifactNetworkInfo = { /** Deployment information and ABI per network */ export type ArtifactDeploymentInfo = { abi: JsonFragment[]; - deployment: Record; + deployment: Partial>; }; /** Deployment information and ABI per version and network */ export type ArtifactInfo< TVersion extends string = string, - TNetwork extends string = string, + TNetwork extends string = CurrencyTypes.NetworkName, > = Record>; export type DeploymentInformation = { @@ -33,7 +34,7 @@ export type DeploymentInformation = { * and utilities to connect to it **/ export class ContractArtifact { - constructor(private info: ArtifactInfo, private lastVersion: string) { + constructor(private info: ArtifactInfo, private lastVersion: string) { this.connect = this.connect.bind(this); this.getInterface = this.getInterface.bind(this); this.getContractAbi = this.getContractAbi.bind(this); @@ -48,7 +49,7 @@ export class ContractArtifact { * Returns an ethers contract instance for the given `networkName` */ connect( - networkName: string, + networkName: CurrencyTypes.NetworkName, signerOrProvider: Signer | providers.Provider, version: string = this.lastVersion, ): TContract { @@ -77,7 +78,7 @@ export class ContractArtifact { * @param networkName the name of the network where the contract is deployed * @returns the address of the deployed contract */ - getAddress(networkName: string, version = this.lastVersion): string { + getAddress(networkName: CurrencyTypes.NetworkName, version = this.lastVersion): string { return this.getDeploymentInformation(networkName, version).address; } @@ -86,7 +87,9 @@ export class ContractArtifact { * @param networkName the name of the network where the contract is deployed * @returns the addresses of the deployed contract and the associated version. */ - getAllAddresses(networkName: string): { version: string; address: string }[] { + getAllAddresses( + networkName: CurrencyTypes.NetworkName, + ): { version: string; address: string | undefined }[] { const entries = Object.entries(this.info); return entries.map(([version, { deployment }]) => ({ version, @@ -100,7 +103,10 @@ export class ContractArtifact { * @param networkName the name of the network where the contract is deployed * @returns the number of the block where the contract was deployed */ - getCreationBlockNumber(networkName: string, version = this.lastVersion): number { + getCreationBlockNumber( + networkName: CurrencyTypes.NetworkName, + version = this.lastVersion, + ): number { return this.getDeploymentInformation(networkName, version).creationBlockNumber; } @@ -110,7 +116,10 @@ export class ContractArtifact { * @param networkName the name of the network where the contract is deployed * @returns The address and the number of the creation block */ - getDeploymentInformation(networkName: string, version = this.lastVersion): DeploymentInformation { + getDeploymentInformation( + networkName: CurrencyTypes.NetworkName, + version = this.lastVersion, + ): DeploymentInformation { const versionInfo = this.info[version]; if (!versionInfo) { throw Error(`No deployment for version: ${version}.`); @@ -130,7 +139,7 @@ export class ContractArtifact { * @returns The address and the number of the creation block, or null if not found */ getOptionalDeploymentInformation( - networkName: string, + networkName: CurrencyTypes.NetworkName, version = this.lastVersion, ): DeploymentInformation | null { return this.info[version]?.deployment[networkName] || null; diff --git a/packages/types/src/currency-types.ts b/packages/types/src/currency-types.ts new file mode 100644 index 0000000000..5e21eeacb1 --- /dev/null +++ b/packages/types/src/currency-types.ts @@ -0,0 +1,23 @@ +/** + * List of supported network names + */ +export type NetworkName = + | 'arbitrum-one' + | 'arbitrum-rinkeby' + | 'avalanche' + | 'bsc' + | 'bsctest' + | 'celo' + | 'fantom' + | 'fuse' + | 'goerli' + | 'mainnet' + | 'matic' + | 'moonbeam' + | 'mumbai' + | 'optimism' + | 'private' + | 'rinkeby' + | 'ronin' + | 'tombchain' + | 'xdai'; diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index eeb0627617..fbe554d28a 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -1,5 +1,6 @@ import * as AdvancedLogicTypes from './advanced-logic-types'; import * as ClientTypes from './client-types'; +import * as CurrencyTypes from './currency-types'; import * as DataAccessTypes from './data-access-types'; import * as DecryptionProviderTypes from './decryption-provider-types'; import * as EncryptionTypes from './encryption-types'; @@ -18,6 +19,7 @@ import * as TypesUtils from './utils'; export { AdvancedLogicTypes, ClientTypes, + CurrencyTypes, DataAccessTypes, DecryptionProviderTypes, EncryptionTypes, From ed3b672e343031df64272fafbdb69619f2d8c61e Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Fri, 3 Feb 2023 13:58:51 +0100 Subject: [PATCH 10/50] WIP --- .../payment-network/address-based.ts | 3 +- packages/currency/src/chains/btc/index.ts | 28 +++++++ packages/currency/src/chains/btc/mainnet.ts | 1 + packages/currency/src/chains/btc/testnet.ts | 1 + packages/currency/src/chains/evm/alfajores.ts | 1 + .../currency/src/chains/evm/arbitrum-one.ts | 1 + .../src/chains/evm/arbitrum-rinkeby.ts | 1 + .../currency/src/chains/evm/aurora-testnet.ts | 1 + packages/currency/src/chains/evm/aurora.ts | 1 + packages/currency/src/chains/evm/avalanche.ts | 7 ++ packages/currency/src/chains/evm/bsc.ts | 7 ++ packages/currency/src/chains/evm/bsctest.ts | 7 ++ packages/currency/src/chains/evm/celo.ts | 7 ++ packages/currency/src/chains/evm/fantom.ts | 7 ++ .../src/{networks => chains/evm}/fuse.ts | 2 +- packages/currency/src/chains/evm/goerli.ts | 7 ++ .../src/{networks => chains/evm}/index.ts | 33 +++++++- packages/currency/src/chains/evm/mainnet.ts | 7 ++ packages/currency/src/chains/evm/matic.ts | 7 ++ packages/currency/src/chains/evm/moonbeam.ts | 7 ++ .../src/{networks => chains/evm}/mumbai.ts | 2 +- packages/currency/src/chains/evm/optimism.ts | 7 ++ packages/currency/src/chains/evm/private.ts | 1 + packages/currency/src/chains/evm/rinkeby.ts | 9 +++ packages/currency/src/chains/evm/ronin.ts | 1 + packages/currency/src/chains/evm/sokol.ts | 1 + .../src/{networks => chains/evm}/tombchain.ts | 0 packages/currency/src/chains/evm/xdai.ts | 7 ++ packages/currency/src/chains/index.ts | 21 +++++ packages/currency/src/chains/utils.ts | 28 +++++++ .../erc20/{networks => chains}/avalanche.ts | 0 .../src/erc20/{networks => chains}/bsc.ts | 0 .../src/erc20/{networks => chains}/bsctest.ts | 0 .../src/erc20/{networks => chains}/celo.ts | 0 .../src/erc20/{networks => chains}/fantom.ts | 0 .../src/erc20/{networks => chains}/goerli.ts | 0 .../src/erc20/{networks => chains}/index.ts | 2 +- .../src/erc20/{networks => chains}/mainnet.ts | 0 .../src/erc20/{networks => chains}/matic.ts | 0 .../erc20/{networks => chains}/moonbeam.ts | 0 .../erc20/{networks => chains}/optimism.ts | 0 .../src/erc20/{networks => chains}/rinkeby.ts | 0 .../src/erc20/{networks => chains}/xdai.ts | 0 packages/currency/src/erc20/index.ts | 7 +- .../src/erc777/{networks => chains}/index.ts | 3 +- .../erc777/{networks => chains}/rinkeby.ts | 0 packages/currency/src/erc777/index.ts | 7 +- packages/currency/src/index.ts | 1 + packages/currency/src/native.ts | 10 ++- .../currency/src/networks/arbitrum-one.ts | 4 - .../currency/src/networks/arbitrum-rinkeby.ts | 4 - packages/currency/src/networks/avalanche.ts | 7 -- packages/currency/src/networks/bsc.ts | 7 -- packages/currency/src/networks/bsctest.ts | 7 -- packages/currency/src/networks/celo.ts | 7 -- packages/currency/src/networks/fantom.ts | 7 -- packages/currency/src/networks/goerli.ts | 7 -- packages/currency/src/networks/mainnet.ts | 7 -- packages/currency/src/networks/matic.ts | 7 -- packages/currency/src/networks/moonbeam.ts | 7 -- packages/currency/src/networks/optimism.ts | 7 -- packages/currency/src/networks/private.ts | 4 - packages/currency/src/networks/rinkeby.ts | 9 --- packages/currency/src/networks/ronin.ts | 4 - packages/currency/src/networks/xdai.ts | 7 -- packages/currency/src/types.ts | 21 +++-- packages/currency/test/currency/erc20.test.ts | 2 +- packages/ethereum-storage/package.json | 1 + packages/ethereum-storage/src/config.ts | 4 +- .../src/ethereum-storage-ethers.ts | 6 +- .../ethereum-storage/src/ethereum-utils.ts | 76 +++++++++---------- .../ethereum-storage/src/gas-price-definer.ts | 8 +- .../etherchain-provider.ts | 5 +- .../gas-price-providers/etherscan-provider.ts | 5 +- .../ethgasstation-provider.ts | 5 +- packages/ethereum-storage/src/index.ts | 4 + .../src/smart-contract-manager.ts | 19 +++-- .../test/ethereum-utils.test.ts | 75 +++++++----------- .../test/gas-price-definer.test.ts | 11 ++- .../src/any/any-to-erc20-proxy.ts | 13 +++- .../src/any/any-to-eth-proxy.ts | 14 +++- .../payment-detection/src/erc20/currency.ts | 24 ++++-- .../src/erc20/fee-proxy-contract.ts | 9 ++- .../src/erc20/proxy-contract.ts | 9 ++- .../src/erc777/superfluid-detector.ts | 9 ++- .../src/eth/fee-proxy-detector.ts | 9 ++- .../payment-detection/src/eth/input-data.ts | 9 ++- .../src/near/near-conversion-detector.ts | 14 +++- .../src/near/near-detector.ts | 9 ++- .../src/payment-network-factory.ts | 5 +- .../src/reference-based-detector.ts | 12 ++- .../src/thegraph/info-retriever.ts | 4 +- packages/payment-detection/src/utils.ts | 9 ++- .../src/payment/batch-conversion-proxy.ts | 3 +- .../src/payment/batch-proxy.ts | 9 ++- .../src/payment/erc20-escrow-payment.ts | 27 +++++-- .../src/payment/erc20-fee-proxy.ts | 9 ++- .../src/payment/swap-any-to-erc20.ts | 5 +- .../src/payment/swap-erc20-fee-proxy.ts | 10 ++- .../src/payment/swap-erc20.ts | 13 +++- .../payment-processor/src/payment/utils.ts | 17 ++++- packages/request-node/src/thegraph-node.ts | 18 ++--- .../scripts-create2/compute-one-address.ts | 7 +- .../scripts-create2/constructor-args.ts | 6 +- .../contract-setup/adminTasks.ts | 7 +- .../setupBatchConversionPayments.ts | 13 ++-- .../setupERC20SwapToConversion.ts | 2 + .../contract-setup/setupETHConversionProxy.ts | 3 +- .../setupErc20ConversionProxy.ts | 2 + .../smart-contracts/scripts-create2/deploy.ts | 30 ++++---- .../smart-contracts/scripts-create2/utils.ts | 14 +++- .../smart-contracts/scripts-create2/verify.ts | 6 +- .../smart-contracts/scripts/deploy-one.ts | 5 +- ...test-deploy-batch-conversion-deployment.ts | 8 +- .../test-deploy-batch-erc-eth-deployment.ts | 5 +- .../src/lib/ContractArtifact.ts | 14 ++-- packages/types/src/currency-types.ts | 16 +++- .../pn-any-to-any-conversion-types.ts | 3 +- .../src/extensions/pn-any-to-erc20-types.ts | 2 + packages/types/src/payment-types.ts | 2 + packages/types/src/request-logic-types.ts | 3 +- packages/types/src/storage-types.ts | 4 +- 122 files changed, 620 insertions(+), 379 deletions(-) create mode 100644 packages/currency/src/chains/btc/index.ts create mode 100644 packages/currency/src/chains/btc/mainnet.ts create mode 100644 packages/currency/src/chains/btc/testnet.ts create mode 100644 packages/currency/src/chains/evm/alfajores.ts create mode 100644 packages/currency/src/chains/evm/arbitrum-one.ts create mode 100644 packages/currency/src/chains/evm/arbitrum-rinkeby.ts create mode 100644 packages/currency/src/chains/evm/aurora-testnet.ts create mode 100644 packages/currency/src/chains/evm/aurora.ts create mode 100644 packages/currency/src/chains/evm/avalanche.ts create mode 100644 packages/currency/src/chains/evm/bsc.ts create mode 100644 packages/currency/src/chains/evm/bsctest.ts create mode 100644 packages/currency/src/chains/evm/celo.ts create mode 100644 packages/currency/src/chains/evm/fantom.ts rename packages/currency/src/{networks => chains/evm}/fuse.ts (63%) create mode 100644 packages/currency/src/chains/evm/goerli.ts rename packages/currency/src/{networks => chains/evm}/index.ts (54%) create mode 100644 packages/currency/src/chains/evm/mainnet.ts create mode 100644 packages/currency/src/chains/evm/matic.ts create mode 100644 packages/currency/src/chains/evm/moonbeam.ts rename packages/currency/src/{networks => chains/evm}/mumbai.ts (63%) create mode 100644 packages/currency/src/chains/evm/optimism.ts create mode 100644 packages/currency/src/chains/evm/private.ts create mode 100644 packages/currency/src/chains/evm/rinkeby.ts create mode 100644 packages/currency/src/chains/evm/ronin.ts create mode 100644 packages/currency/src/chains/evm/sokol.ts rename packages/currency/src/{networks => chains/evm}/tombchain.ts (100%) create mode 100644 packages/currency/src/chains/evm/xdai.ts create mode 100644 packages/currency/src/chains/index.ts create mode 100644 packages/currency/src/chains/utils.ts rename packages/currency/src/erc20/{networks => chains}/avalanche.ts (100%) rename packages/currency/src/erc20/{networks => chains}/bsc.ts (100%) rename packages/currency/src/erc20/{networks => chains}/bsctest.ts (100%) rename packages/currency/src/erc20/{networks => chains}/celo.ts (100%) rename packages/currency/src/erc20/{networks => chains}/fantom.ts (100%) rename packages/currency/src/erc20/{networks => chains}/goerli.ts (100%) rename packages/currency/src/erc20/{networks => chains}/index.ts (92%) rename packages/currency/src/erc20/{networks => chains}/mainnet.ts (100%) rename packages/currency/src/erc20/{networks => chains}/matic.ts (100%) rename packages/currency/src/erc20/{networks => chains}/moonbeam.ts (100%) rename packages/currency/src/erc20/{networks => chains}/optimism.ts (100%) rename packages/currency/src/erc20/{networks => chains}/rinkeby.ts (100%) rename packages/currency/src/erc20/{networks => chains}/xdai.ts (100%) rename packages/currency/src/erc777/{networks => chains}/index.ts (52%) rename packages/currency/src/erc777/{networks => chains}/rinkeby.ts (100%) delete mode 100644 packages/currency/src/networks/arbitrum-one.ts delete mode 100644 packages/currency/src/networks/arbitrum-rinkeby.ts delete mode 100644 packages/currency/src/networks/avalanche.ts delete mode 100644 packages/currency/src/networks/bsc.ts delete mode 100644 packages/currency/src/networks/bsctest.ts delete mode 100644 packages/currency/src/networks/celo.ts delete mode 100644 packages/currency/src/networks/fantom.ts delete mode 100644 packages/currency/src/networks/goerli.ts delete mode 100644 packages/currency/src/networks/mainnet.ts delete mode 100644 packages/currency/src/networks/matic.ts delete mode 100644 packages/currency/src/networks/moonbeam.ts delete mode 100644 packages/currency/src/networks/optimism.ts delete mode 100644 packages/currency/src/networks/private.ts delete mode 100644 packages/currency/src/networks/rinkeby.ts delete mode 100644 packages/currency/src/networks/ronin.ts delete mode 100644 packages/currency/src/networks/xdai.ts diff --git a/packages/advanced-logic/src/extensions/payment-network/address-based.ts b/packages/advanced-logic/src/extensions/payment-network/address-based.ts index a21350b02e..ae221793ce 100644 --- a/packages/advanced-logic/src/extensions/payment-network/address-based.ts +++ b/packages/advanced-logic/src/extensions/payment-network/address-based.ts @@ -2,6 +2,7 @@ import { CurrencyManager, UnsupportedCurrencyError } from '@requestnetwork/curre import { ExtensionTypes, IdentityTypes, RequestLogicTypes } from '@requestnetwork/types'; import { areEqualIdentities, deepCopy } from '@requestnetwork/utils'; import DeclarativePaymentNetwork from './declarative'; +import { CurrencyTypes } from '@requestnetwork/types/src'; /** * Core of the address based payment networks @@ -155,7 +156,7 @@ export default abstract class AddressBasedPaymentNetwork< protected isValidAddressForSymbolAndNetwork( address: string, symbol: string, - network: string, + network: CurrencyTypes.ChainName, ): boolean { const currencyManager = CurrencyManager.getDefault(); const currency = currencyManager.from(symbol, network); diff --git a/packages/currency/src/chains/btc/index.ts b/packages/currency/src/chains/btc/index.ts new file mode 100644 index 0000000000..3196bd5a5b --- /dev/null +++ b/packages/currency/src/chains/btc/index.ts @@ -0,0 +1,28 @@ +import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { BtcChainDefinition } from '../../types'; +import { addNativeCurrenciesToChains, genericAssertChainSupported } from '../utils'; + +import * as MainnetDefinition from './mainnet'; +import * as TestnetDefinition from './testnet'; + +export const chains: Record = { + mainnet: MainnetDefinition, + testnet: TestnetDefinition, +}; + +export const chainNames = Object.keys(chains) as CurrencyTypes.BtcChainName[]; + +// add native currencies +addNativeCurrenciesToChains(chains, RequestLogicTypes.CURRENCY.BTC); + +export function assertChainSupported( + chainKey: string, +): asserts chainKey is CurrencyTypes.BtcChainName { + genericAssertChainSupported(chainKey, chainNames); +} + +export const getChainId = (chainName: CurrencyTypes.BtcChainName): string => + chains[chainName].chainId; + +export const getChainName = (chainId: string): CurrencyTypes.BtcChainName | undefined => + chainNames.find((chainName) => chains[chainName].chainId === chainId); diff --git a/packages/currency/src/chains/btc/mainnet.ts b/packages/currency/src/chains/btc/mainnet.ts new file mode 100644 index 0000000000..2e046f8fd4 --- /dev/null +++ b/packages/currency/src/chains/btc/mainnet.ts @@ -0,0 +1 @@ +export const chainId = '000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f'; diff --git a/packages/currency/src/chains/btc/testnet.ts b/packages/currency/src/chains/btc/testnet.ts new file mode 100644 index 0000000000..61ad4860df --- /dev/null +++ b/packages/currency/src/chains/btc/testnet.ts @@ -0,0 +1 @@ +export const chainId = '000000000933ea01ad0ee984209779baaec3ced90fa3f408719526f8d77f4943'; diff --git a/packages/currency/src/chains/evm/alfajores.ts b/packages/currency/src/chains/evm/alfajores.ts new file mode 100644 index 0000000000..8614655cb8 --- /dev/null +++ b/packages/currency/src/chains/evm/alfajores.ts @@ -0,0 +1 @@ +export const chainId = 44787; diff --git a/packages/currency/src/chains/evm/arbitrum-one.ts b/packages/currency/src/chains/evm/arbitrum-one.ts new file mode 100644 index 0000000000..7dd7a3a62d --- /dev/null +++ b/packages/currency/src/chains/evm/arbitrum-one.ts @@ -0,0 +1 @@ +export const chainId = 42161; diff --git a/packages/currency/src/chains/evm/arbitrum-rinkeby.ts b/packages/currency/src/chains/evm/arbitrum-rinkeby.ts new file mode 100644 index 0000000000..dd24630b18 --- /dev/null +++ b/packages/currency/src/chains/evm/arbitrum-rinkeby.ts @@ -0,0 +1 @@ +export const chainId = 421611; diff --git a/packages/currency/src/chains/evm/aurora-testnet.ts b/packages/currency/src/chains/evm/aurora-testnet.ts new file mode 100644 index 0000000000..c3cf2aa077 --- /dev/null +++ b/packages/currency/src/chains/evm/aurora-testnet.ts @@ -0,0 +1 @@ +export const chainId = 1313161555; diff --git a/packages/currency/src/chains/evm/aurora.ts b/packages/currency/src/chains/evm/aurora.ts new file mode 100644 index 0000000000..fa63fe9a68 --- /dev/null +++ b/packages/currency/src/chains/evm/aurora.ts @@ -0,0 +1 @@ +export const chainId = 1313161554; diff --git a/packages/currency/src/chains/evm/avalanche.ts b/packages/currency/src/chains/evm/avalanche.ts new file mode 100644 index 0000000000..fc5c392c1d --- /dev/null +++ b/packages/currency/src/chains/evm/avalanche.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../types'; +import { supportedAvalancheERC20 } from '../../erc20/chains/avalanche'; + +export const chainId = 43114; +export const currencies: TokenMap = { + ...supportedAvalancheERC20, +}; diff --git a/packages/currency/src/chains/evm/bsc.ts b/packages/currency/src/chains/evm/bsc.ts new file mode 100644 index 0000000000..cc56450cbf --- /dev/null +++ b/packages/currency/src/chains/evm/bsc.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../types'; +import { supportedBSCERC20 } from '../../erc20/chains/bsc'; + +export const chainId = 56; +export const currencies: TokenMap = { + ...supportedBSCERC20, +}; diff --git a/packages/currency/src/chains/evm/bsctest.ts b/packages/currency/src/chains/evm/bsctest.ts new file mode 100644 index 0000000000..018c898285 --- /dev/null +++ b/packages/currency/src/chains/evm/bsctest.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../types'; +import { supportedBSCTestERC20 } from '../../erc20/chains/bsctest'; + +export const chainId = 97; +export const currencies: TokenMap = { + ...supportedBSCTestERC20, +}; diff --git a/packages/currency/src/chains/evm/celo.ts b/packages/currency/src/chains/evm/celo.ts new file mode 100644 index 0000000000..4b94ade661 --- /dev/null +++ b/packages/currency/src/chains/evm/celo.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../types'; +import { supportedCeloERC20 } from '../../erc20/chains/celo'; + +export const chainId = 42220; +export const currencies: TokenMap = { + ...supportedCeloERC20, +}; diff --git a/packages/currency/src/chains/evm/fantom.ts b/packages/currency/src/chains/evm/fantom.ts new file mode 100644 index 0000000000..8c1628f91c --- /dev/null +++ b/packages/currency/src/chains/evm/fantom.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../types'; +import { supportedFantomTokens } from '../../erc20/chains/fantom'; + +export const chainId = 250; +export const currencies: TokenMap = { + ...supportedFantomTokens, +}; diff --git a/packages/currency/src/networks/fuse.ts b/packages/currency/src/chains/evm/fuse.ts similarity index 63% rename from packages/currency/src/networks/fuse.ts rename to packages/currency/src/chains/evm/fuse.ts index 1003b1416d..1451c27232 100644 --- a/packages/currency/src/networks/fuse.ts +++ b/packages/currency/src/chains/evm/fuse.ts @@ -1,4 +1,4 @@ -import { TokenMap } from '../types'; +import { TokenMap } from '../../types'; export const chainId = 122; export const currencies: TokenMap = {}; diff --git a/packages/currency/src/chains/evm/goerli.ts b/packages/currency/src/chains/evm/goerli.ts new file mode 100644 index 0000000000..1e254ba60f --- /dev/null +++ b/packages/currency/src/chains/evm/goerli.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../types'; +import { supportedGoerliERC20 } from '../../erc20/chains/goerli'; + +export const chainId = 5; +export const currencies: TokenMap = { + ...supportedGoerliERC20, +}; diff --git a/packages/currency/src/networks/index.ts b/packages/currency/src/chains/evm/index.ts similarity index 54% rename from packages/currency/src/networks/index.ts rename to packages/currency/src/chains/evm/index.ts index d7cdd7ef88..a20b986ede 100644 --- a/packages/currency/src/networks/index.ts +++ b/packages/currency/src/chains/evm/index.ts @@ -1,8 +1,12 @@ -import { CurrencyTypes } from '@requestnetwork/types'; -import { NetworkDefinition } from '../types'; +import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { EvmChainDefinition } from '../../types'; +import { addNativeCurrenciesToChains, genericAssertChainSupported } from '../utils'; +import * as AlfajoresDefinition from './alfajores'; import * as ArbitrumOneDefinition from './arbitrum-one'; import * as ArbitrumRinkebyDefinition from './arbitrum-rinkeby'; +import * as AuroraDefinition from './aurora'; +import * as AuroraTestnetDefinition from './aurora-testnet'; import * as AvalancheDefinition from './avalanche'; import * as BscDefinition from './bsc'; import * as BscTestDefinition from './bsctest'; @@ -18,12 +22,16 @@ import * as OptimismDefinition from './optimism'; import * as PrivateDefinition from './private'; import * as RinkebyDefinition from './rinkeby'; import * as RoninDefinition from './ronin'; +import * as SokolDefinition from './sokol'; import * as TombchainDefinition from './tombchain'; import * as XDaiDefinition from './xdai'; -export const networks: Record = { +export const chains: Record = { + alfajores: AlfajoresDefinition, 'arbitrum-one': ArbitrumOneDefinition, 'arbitrum-rinkeby': ArbitrumRinkebyDefinition, + aurora: AuroraDefinition, + 'aurora-testnet': AuroraTestnetDefinition, avalanche: AvalancheDefinition, bsc: BscDefinition, bsctest: BscTestDefinition, @@ -35,11 +43,30 @@ export const networks: Record = { matic: MaticDefinition, moonbeam: MoonbeamDefinition, mumbai: MumbaiDefinition, + 'near-testnet': AuroraTestnetDefinition, optimism: OptimismDefinition, private: PrivateDefinition, // FIXME: Rinkeby is deprecated rinkeby: RinkebyDefinition, ronin: RoninDefinition, + sokol: SokolDefinition, tombchain: TombchainDefinition, xdai: XDaiDefinition, }; + +export const chainNames = Object.keys(chains) as CurrencyTypes.EvmChainName[]; + +// add native currencies +addNativeCurrenciesToChains(chains, RequestLogicTypes.CURRENCY.ETH); + +export function assertChainSupported( + chainKey: string, +): asserts chainKey is CurrencyTypes.EvmChainName { + genericAssertChainSupported(chainKey, chainNames); +} + +export const getChainId = (chainName: CurrencyTypes.EvmChainName): number => + chains[chainName].chainId; + +export const getChainName = (chainId: number): CurrencyTypes.EvmChainName | undefined => + chainNames.find((chainName) => chains[chainName].chainId === chainId); diff --git a/packages/currency/src/chains/evm/mainnet.ts b/packages/currency/src/chains/evm/mainnet.ts new file mode 100644 index 0000000000..1153da2ba5 --- /dev/null +++ b/packages/currency/src/chains/evm/mainnet.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../types'; +import { supportedMainnetERC20 } from '../../erc20/chains/mainnet'; + +export const chainId = 1; +export const currencies: TokenMap = { + ...supportedMainnetERC20, +}; diff --git a/packages/currency/src/chains/evm/matic.ts b/packages/currency/src/chains/evm/matic.ts new file mode 100644 index 0000000000..883e0d45f0 --- /dev/null +++ b/packages/currency/src/chains/evm/matic.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../types'; +import { supportedMaticERC20 } from '../../erc20/chains/matic'; + +export const chainId = 137; +export const currencies: TokenMap = { + ...supportedMaticERC20, +}; diff --git a/packages/currency/src/chains/evm/moonbeam.ts b/packages/currency/src/chains/evm/moonbeam.ts new file mode 100644 index 0000000000..7271170203 --- /dev/null +++ b/packages/currency/src/chains/evm/moonbeam.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../types'; +import { supportedMoonbeamERC20 } from '../../erc20/chains/moonbeam'; + +export const chainId = 1284; +export const currencies: TokenMap = { + ...supportedMoonbeamERC20, +}; diff --git a/packages/currency/src/networks/mumbai.ts b/packages/currency/src/chains/evm/mumbai.ts similarity index 63% rename from packages/currency/src/networks/mumbai.ts rename to packages/currency/src/chains/evm/mumbai.ts index 8b328ef1e1..bff6513b89 100644 --- a/packages/currency/src/networks/mumbai.ts +++ b/packages/currency/src/chains/evm/mumbai.ts @@ -1,4 +1,4 @@ -import { TokenMap } from '../types'; +import { TokenMap } from '../../types'; export const chainId = 80001; export const currencies: TokenMap = {}; diff --git a/packages/currency/src/chains/evm/optimism.ts b/packages/currency/src/chains/evm/optimism.ts new file mode 100644 index 0000000000..1b37cf1abb --- /dev/null +++ b/packages/currency/src/chains/evm/optimism.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../types'; +import { supportedOptimismERC20 } from '../../erc20/chains/optimism'; + +export const chainId = 10; +export const currencies: TokenMap = { + ...supportedOptimismERC20, +}; diff --git a/packages/currency/src/chains/evm/private.ts b/packages/currency/src/chains/evm/private.ts new file mode 100644 index 0000000000..8334ef3906 --- /dev/null +++ b/packages/currency/src/chains/evm/private.ts @@ -0,0 +1 @@ +export const chainId = 0; diff --git a/packages/currency/src/chains/evm/rinkeby.ts b/packages/currency/src/chains/evm/rinkeby.ts new file mode 100644 index 0000000000..1c95f961ec --- /dev/null +++ b/packages/currency/src/chains/evm/rinkeby.ts @@ -0,0 +1,9 @@ +import { TokenMap } from '../../types'; +import { supportedRinkebyERC20 } from '../../erc20/chains/rinkeby'; +import { supportedRinkebyERC777 } from '../../erc777/chains/rinkeby'; + +export const chainId = 4; +export const currencies: TokenMap = { + ...supportedRinkebyERC20, + ...supportedRinkebyERC777, +}; diff --git a/packages/currency/src/chains/evm/ronin.ts b/packages/currency/src/chains/evm/ronin.ts new file mode 100644 index 0000000000..ca79b559f7 --- /dev/null +++ b/packages/currency/src/chains/evm/ronin.ts @@ -0,0 +1 @@ +export const chainId = 2020; diff --git a/packages/currency/src/chains/evm/sokol.ts b/packages/currency/src/chains/evm/sokol.ts new file mode 100644 index 0000000000..ba023a8140 --- /dev/null +++ b/packages/currency/src/chains/evm/sokol.ts @@ -0,0 +1 @@ +export const chainId = 77; diff --git a/packages/currency/src/networks/tombchain.ts b/packages/currency/src/chains/evm/tombchain.ts similarity index 100% rename from packages/currency/src/networks/tombchain.ts rename to packages/currency/src/chains/evm/tombchain.ts diff --git a/packages/currency/src/chains/evm/xdai.ts b/packages/currency/src/chains/evm/xdai.ts new file mode 100644 index 0000000000..fe601d5fcc --- /dev/null +++ b/packages/currency/src/chains/evm/xdai.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../types'; +import { supportedXDAIERC20 } from '../../erc20/chains/xdai'; + +export const chainId = 100; +export const currencies: TokenMap = { + ...supportedXDAIERC20, +}; diff --git a/packages/currency/src/chains/index.ts b/packages/currency/src/chains/index.ts new file mode 100644 index 0000000000..b2ef20cff7 --- /dev/null +++ b/packages/currency/src/chains/index.ts @@ -0,0 +1,21 @@ +import { CurrencyTypes } from '@requestnetwork/types'; +import * as EVM from './evm'; +import * as BTC from './btc'; + +export function assertChainSupported( + chainKey: string, +): asserts chainKey is CurrencyTypes.EvmChainName { + const chainSupported = [EVM, BTC].some((chainType) => { + try { + chainType.assertChainSupported(chainKey); + return true; + } catch (e) { + return false; + } + }); + if (!chainSupported) { + throw new Error(`Unsupported chain ${chainKey}`); + } +} + +export { EVM, BTC }; diff --git a/packages/currency/src/chains/utils.ts b/packages/currency/src/chains/utils.ts new file mode 100644 index 0000000000..61f04991bb --- /dev/null +++ b/packages/currency/src/chains/utils.ts @@ -0,0 +1,28 @@ +import { nativeCurrencies } from '../native'; +import { ChainDefinition, NamedNativeCurrency, TokenMap } from '../types'; +import { RequestLogicTypes } from '@requestnetwork/types'; + +export function genericAssertChainSupported( + chainKey: string, + supportedChains: T[], +): asserts chainKey is T { + if (!(supportedChains as string[]).includes(chainKey)) + throw new Error(`Unsupported chain ${chainKey}`); +} + +export const addNativeCurrenciesToChains = ( + chains: Record, + currencyType: RequestLogicTypes.CURRENCY.ETH | RequestLogicTypes.CURRENCY.BTC, +): void => { + const chainNames = Object.keys(chains); + chainNames.forEach((chainName) => { + const nativeCurrency = (nativeCurrencies[currencyType] as NamedNativeCurrency[]).find( + (currency) => currency.network === chainName, + ); + if (nativeCurrency) { + const chainCurrencies: TokenMap = chains[chainName].currencies || {}; + chainCurrencies.native = nativeCurrency; + chains[chainName].currencies = chainCurrencies; + } + }); +}; diff --git a/packages/currency/src/erc20/networks/avalanche.ts b/packages/currency/src/erc20/chains/avalanche.ts similarity index 100% rename from packages/currency/src/erc20/networks/avalanche.ts rename to packages/currency/src/erc20/chains/avalanche.ts diff --git a/packages/currency/src/erc20/networks/bsc.ts b/packages/currency/src/erc20/chains/bsc.ts similarity index 100% rename from packages/currency/src/erc20/networks/bsc.ts rename to packages/currency/src/erc20/chains/bsc.ts diff --git a/packages/currency/src/erc20/networks/bsctest.ts b/packages/currency/src/erc20/chains/bsctest.ts similarity index 100% rename from packages/currency/src/erc20/networks/bsctest.ts rename to packages/currency/src/erc20/chains/bsctest.ts diff --git a/packages/currency/src/erc20/networks/celo.ts b/packages/currency/src/erc20/chains/celo.ts similarity index 100% rename from packages/currency/src/erc20/networks/celo.ts rename to packages/currency/src/erc20/chains/celo.ts diff --git a/packages/currency/src/erc20/networks/fantom.ts b/packages/currency/src/erc20/chains/fantom.ts similarity index 100% rename from packages/currency/src/erc20/networks/fantom.ts rename to packages/currency/src/erc20/chains/fantom.ts diff --git a/packages/currency/src/erc20/networks/goerli.ts b/packages/currency/src/erc20/chains/goerli.ts similarity index 100% rename from packages/currency/src/erc20/networks/goerli.ts rename to packages/currency/src/erc20/chains/goerli.ts diff --git a/packages/currency/src/erc20/networks/index.ts b/packages/currency/src/erc20/chains/index.ts similarity index 92% rename from packages/currency/src/erc20/networks/index.ts rename to packages/currency/src/erc20/chains/index.ts index b8118d6c18..585a97ce9c 100644 --- a/packages/currency/src/erc20/networks/index.ts +++ b/packages/currency/src/erc20/chains/index.ts @@ -14,7 +14,7 @@ import { supportedOptimismERC20 } from './optimism'; import { supportedRinkebyERC20 } from './rinkeby'; import { supportedXDAIERC20 } from './xdai'; -export const supportedNetworks: Partial> = { +export const supportedNetworks: Partial> = { avalanche: supportedAvalancheERC20, bsc: supportedBSCERC20, bsctest: supportedBSCTestERC20, diff --git a/packages/currency/src/erc20/networks/mainnet.ts b/packages/currency/src/erc20/chains/mainnet.ts similarity index 100% rename from packages/currency/src/erc20/networks/mainnet.ts rename to packages/currency/src/erc20/chains/mainnet.ts diff --git a/packages/currency/src/erc20/networks/matic.ts b/packages/currency/src/erc20/chains/matic.ts similarity index 100% rename from packages/currency/src/erc20/networks/matic.ts rename to packages/currency/src/erc20/chains/matic.ts diff --git a/packages/currency/src/erc20/networks/moonbeam.ts b/packages/currency/src/erc20/chains/moonbeam.ts similarity index 100% rename from packages/currency/src/erc20/networks/moonbeam.ts rename to packages/currency/src/erc20/chains/moonbeam.ts diff --git a/packages/currency/src/erc20/networks/optimism.ts b/packages/currency/src/erc20/chains/optimism.ts similarity index 100% rename from packages/currency/src/erc20/networks/optimism.ts rename to packages/currency/src/erc20/chains/optimism.ts diff --git a/packages/currency/src/erc20/networks/rinkeby.ts b/packages/currency/src/erc20/chains/rinkeby.ts similarity index 100% rename from packages/currency/src/erc20/networks/rinkeby.ts rename to packages/currency/src/erc20/chains/rinkeby.ts diff --git a/packages/currency/src/erc20/networks/xdai.ts b/packages/currency/src/erc20/chains/xdai.ts similarity index 100% rename from packages/currency/src/erc20/networks/xdai.ts rename to packages/currency/src/erc20/chains/xdai.ts diff --git a/packages/currency/src/erc20/index.ts b/packages/currency/src/erc20/index.ts index b9ad3d9692..9a8bc5b7a3 100644 --- a/packages/currency/src/erc20/index.ts +++ b/packages/currency/src/erc20/index.ts @@ -1,5 +1,6 @@ -import { ERC20Currency } from '../types'; -import { supportedNetworks } from './networks'; +import { ERC20Currency, TokenMap } from '../types'; +import { supportedNetworks } from './chains'; +import { CurrencyTypes } from '@requestnetwork/types'; /** * Returns a list of supported ERC20 tokens @@ -7,7 +8,7 @@ import { supportedNetworks } from './networks'; * @returns List of supported ERC20 tokens */ export function getSupportedERC20Tokens(): ERC20Currency[] { - return Object.entries(supportedNetworks).reduce( + return (Object.entries(supportedNetworks) as [CurrencyTypes.EvmChainName, TokenMap][]).reduce( (acc: ERC20Currency[], [networkName, supportedCurrencies]) => { return [ ...acc, diff --git a/packages/currency/src/erc777/networks/index.ts b/packages/currency/src/erc777/chains/index.ts similarity index 52% rename from packages/currency/src/erc777/networks/index.ts rename to packages/currency/src/erc777/chains/index.ts index 7a04e6684d..ebcef6fa34 100644 --- a/packages/currency/src/erc777/networks/index.ts +++ b/packages/currency/src/erc777/chains/index.ts @@ -1,7 +1,8 @@ import { supportedRinkebyERC777 } from './rinkeby'; import { TokenMap } from '../../types'; +import { CurrencyTypes } from '@requestnetwork/types'; -export const supportedNetworks: Record = { +export const supportedNetworks: Partial> = { rinkeby: supportedRinkebyERC777, }; diff --git a/packages/currency/src/erc777/networks/rinkeby.ts b/packages/currency/src/erc777/chains/rinkeby.ts similarity index 100% rename from packages/currency/src/erc777/networks/rinkeby.ts rename to packages/currency/src/erc777/chains/rinkeby.ts diff --git a/packages/currency/src/erc777/index.ts b/packages/currency/src/erc777/index.ts index eb37f2dbca..36e2f5f53a 100644 --- a/packages/currency/src/erc777/index.ts +++ b/packages/currency/src/erc777/index.ts @@ -1,5 +1,6 @@ -import { ERC777Currency } from '../types'; -import { supportedNetworks } from './networks'; +import { ERC777Currency, TokenMap } from '../types'; +import { supportedNetworks } from './chains'; +import { CurrencyTypes } from '@requestnetwork/types'; /** * Returns a list of supported ERC777 tokens @@ -7,7 +8,7 @@ import { supportedNetworks } from './networks'; * @returns List of supported ERC777 tokens */ export function getSupportedERC777Tokens(): ERC777Currency[] { - return Object.entries(supportedNetworks).reduce( + return (Object.entries(supportedNetworks) as [CurrencyTypes.EvmChainName, TokenMap][]).reduce( (acc: ERC777Currency[], [networkName, supportedCurrencies]) => { return [ ...acc, diff --git a/packages/currency/src/index.ts b/packages/currency/src/index.ts index c08a5e8f54..4727cc7576 100644 --- a/packages/currency/src/index.ts +++ b/packages/currency/src/index.ts @@ -1,3 +1,4 @@ +export { assertChainSupported, EVM, BTC } from './chains'; export { getSupportedERC20Tokens } from './erc20'; export { getSupportedERC777Tokens } from './erc777'; export { diff --git a/packages/currency/src/native.ts b/packages/currency/src/native.ts index be240b3060..d70c6b9a6d 100644 --- a/packages/currency/src/native.ts +++ b/packages/currency/src/native.ts @@ -1,7 +1,11 @@ -import { RequestLogicTypes } from '@requestnetwork/types'; -import { NativeCurrency, NativeCurrencyType } from './types'; +import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { NamedNativeCurrency } from './types'; -export const nativeCurrencies: Record = { +type NativeEthCurrency = NamedNativeCurrency & { network: CurrencyTypes.EvmChainName }; +type NativeBtcCurrency = NamedNativeCurrency & { network: CurrencyTypes.BtcChainName }; + +export const nativeCurrencies: Record & + Record = { [RequestLogicTypes.CURRENCY.ETH]: [ { symbol: 'ETH', diff --git a/packages/currency/src/networks/arbitrum-one.ts b/packages/currency/src/networks/arbitrum-one.ts deleted file mode 100644 index 8972677c57..0000000000 --- a/packages/currency/src/networks/arbitrum-one.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { TokenMap } from '../types'; - -export const chainId = 42161; -export const currencies: TokenMap = {}; diff --git a/packages/currency/src/networks/arbitrum-rinkeby.ts b/packages/currency/src/networks/arbitrum-rinkeby.ts deleted file mode 100644 index afbb8d88eb..0000000000 --- a/packages/currency/src/networks/arbitrum-rinkeby.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { TokenMap } from '../types'; - -export const chainId = 421611; -export const currencies: TokenMap = {}; diff --git a/packages/currency/src/networks/avalanche.ts b/packages/currency/src/networks/avalanche.ts deleted file mode 100644 index 6a87f2ab4a..0000000000 --- a/packages/currency/src/networks/avalanche.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../types'; -import { supportedAvalancheERC20 } from '../erc20/networks/avalanche'; - -export const chainId = 43114; -export const currencies: TokenMap = { - ...supportedAvalancheERC20, -}; diff --git a/packages/currency/src/networks/bsc.ts b/packages/currency/src/networks/bsc.ts deleted file mode 100644 index 822a938386..0000000000 --- a/packages/currency/src/networks/bsc.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../types'; -import { supportedBSCERC20 } from '../erc20/networks/bsc'; - -export const chainId = 56; -export const currencies: TokenMap = { - ...supportedBSCERC20, -}; diff --git a/packages/currency/src/networks/bsctest.ts b/packages/currency/src/networks/bsctest.ts deleted file mode 100644 index b29b15acae..0000000000 --- a/packages/currency/src/networks/bsctest.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../types'; -import { supportedBSCTestERC20 } from '../erc20/networks/bsctest'; - -export const chainId = 97; -export const currencies: TokenMap = { - ...supportedBSCTestERC20, -}; diff --git a/packages/currency/src/networks/celo.ts b/packages/currency/src/networks/celo.ts deleted file mode 100644 index f0c5c6657e..0000000000 --- a/packages/currency/src/networks/celo.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../types'; -import { supportedCeloERC20 } from '../erc20/networks/celo'; - -export const chainId = 42220; -export const currencies: TokenMap = { - ...supportedCeloERC20, -}; diff --git a/packages/currency/src/networks/fantom.ts b/packages/currency/src/networks/fantom.ts deleted file mode 100644 index 60c072f523..0000000000 --- a/packages/currency/src/networks/fantom.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../types'; -import { supportedFantomTokens } from '../erc20/networks/fantom'; - -export const chainId = 250; -export const currencies: TokenMap = { - ...supportedFantomTokens, -}; diff --git a/packages/currency/src/networks/goerli.ts b/packages/currency/src/networks/goerli.ts deleted file mode 100644 index ae1ee3c3ac..0000000000 --- a/packages/currency/src/networks/goerli.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../types'; -import { supportedGoerliERC20 } from '../erc20/networks/goerli'; - -export const chainId = 5; -export const currencies: TokenMap = { - ...supportedGoerliERC20, -}; diff --git a/packages/currency/src/networks/mainnet.ts b/packages/currency/src/networks/mainnet.ts deleted file mode 100644 index ca66affc4e..0000000000 --- a/packages/currency/src/networks/mainnet.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../types'; -import { supportedMainnetERC20 } from '../erc20/networks/mainnet'; - -export const chainId = 1; -export const currencies: TokenMap = { - ...supportedMainnetERC20, -}; diff --git a/packages/currency/src/networks/matic.ts b/packages/currency/src/networks/matic.ts deleted file mode 100644 index e8e6a7fc34..0000000000 --- a/packages/currency/src/networks/matic.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../types'; -import { supportedMaticERC20 } from '../erc20/networks/matic'; - -export const chainId = 137; -export const currencies: TokenMap = { - ...supportedMaticERC20, -}; diff --git a/packages/currency/src/networks/moonbeam.ts b/packages/currency/src/networks/moonbeam.ts deleted file mode 100644 index 7519df7d0b..0000000000 --- a/packages/currency/src/networks/moonbeam.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../types'; -import { supportedMoonbeamERC20 } from '../erc20/networks/moonbeam'; - -export const chainId = 1284; -export const currencies: TokenMap = { - ...supportedMoonbeamERC20, -}; diff --git a/packages/currency/src/networks/optimism.ts b/packages/currency/src/networks/optimism.ts deleted file mode 100644 index 9e559dd55a..0000000000 --- a/packages/currency/src/networks/optimism.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../types'; -import { supportedOptimismERC20 } from '../erc20/networks/optimism'; - -export const chainId = 10; -export const currencies: TokenMap = { - ...supportedOptimismERC20, -}; diff --git a/packages/currency/src/networks/private.ts b/packages/currency/src/networks/private.ts deleted file mode 100644 index e97b25098f..0000000000 --- a/packages/currency/src/networks/private.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { TokenMap } from '../types'; - -export const chainId = 31337; -export const currencies: TokenMap = {}; diff --git a/packages/currency/src/networks/rinkeby.ts b/packages/currency/src/networks/rinkeby.ts deleted file mode 100644 index 7b710df44a..0000000000 --- a/packages/currency/src/networks/rinkeby.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { TokenMap } from '../types'; -import { supportedRinkebyERC20 } from '../erc20/networks/rinkeby'; -import { supportedRinkebyERC777 } from '../erc777/networks/rinkeby'; - -export const chainId = 4; -export const currencies: TokenMap = { - ...supportedRinkebyERC20, - ...supportedRinkebyERC777, -}; diff --git a/packages/currency/src/networks/ronin.ts b/packages/currency/src/networks/ronin.ts deleted file mode 100644 index 2f8306461d..0000000000 --- a/packages/currency/src/networks/ronin.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { TokenMap } from '../types'; - -export const chainId = 2020; -export const currencies: TokenMap = {}; diff --git a/packages/currency/src/networks/xdai.ts b/packages/currency/src/networks/xdai.ts deleted file mode 100644 index 8383a349ea..0000000000 --- a/packages/currency/src/networks/xdai.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../types'; -import { supportedXDAIERC20 } from '../erc20/networks/xdai'; - -export const chainId = 100; -export const currencies: TokenMap = { - ...supportedXDAIERC20, -}; diff --git a/packages/currency/src/types.ts b/packages/currency/src/types.ts index 7ec8b9ae15..9eac8ad154 100644 --- a/packages/currency/src/types.ts +++ b/packages/currency/src/types.ts @@ -1,4 +1,4 @@ -import { RequestLogicTypes } from '@requestnetwork/types'; +import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; /** * Common types used in token configuration files @@ -6,10 +6,18 @@ import { RequestLogicTypes } from '@requestnetwork/types'; type TokenAddress = string; type TokenDefinition = { name: string; symbol: string; decimals: number }; export type TokenMap = Record; -export type NetworkDefinition = { - chainId: number; +export type ChainDefinition = { + chainId: number | string; currencies?: TokenMap; }; +export type EvmChainDefinition = ChainDefinition & { + chainId: number; +}; +export type BtcChainDefinition = ChainDefinition & { + chainId: string; +}; + +type NamedCurrency = { name: string }; /** * A native blockchain token (ETH, MATIC, ETH-rinkeby...) @@ -17,8 +25,9 @@ export type NetworkDefinition = { export type NativeCurrency = { symbol: string; decimals: number; - network: string; + network: CurrencyTypes.EvmChainName | CurrencyTypes.BtcChainName; }; +export type NamedNativeCurrency = NativeCurrency & NamedCurrency; /** Native Currency types */ export type NativeCurrencyType = RequestLogicTypes.CURRENCY.BTC | RequestLogicTypes.CURRENCY.ETH; @@ -37,7 +46,7 @@ export type ISO4217Currency = { export type ERC20Currency = { symbol: string; decimals: number; - network: string; + network: CurrencyTypes.EvmChainName; address: string; }; @@ -47,7 +56,7 @@ export type ERC20Currency = { export type ERC777Currency = { symbol: string; decimals: number; - network: string; + network: CurrencyTypes.EvmChainName; address: string; }; diff --git a/packages/currency/test/currency/erc20.test.ts b/packages/currency/test/currency/erc20.test.ts index b43c3cfc3f..5e39700650 100644 --- a/packages/currency/test/currency/erc20.test.ts +++ b/packages/currency/test/currency/erc20.test.ts @@ -1,6 +1,6 @@ import { getSupportedERC20Tokens } from '../../src/erc20'; import * as metamaskContractMap from '@metamask/contract-metadata'; -import { extraERC20Tokens } from '../../src/erc20/networks/mainnet'; +import { extraERC20Tokens } from '../../src/erc20/chains/mainnet'; import { utils } from 'ethers'; describe('erc20', () => { diff --git a/packages/ethereum-storage/package.json b/packages/ethereum-storage/package.json index 844f154b0c..96ba97ec10 100644 --- a/packages/ethereum-storage/package.json +++ b/packages/ethereum-storage/package.json @@ -40,6 +40,7 @@ "init-ipfs": "node scripts/init-ipfs.js" }, "dependencies": { + "@requestnetwork/currency": "0.9.0", "@requestnetwork/smart-contracts": "0.29.0", "@requestnetwork/types": "0.36.0", "@requestnetwork/utils": "0.36.0", diff --git a/packages/ethereum-storage/src/config.ts b/packages/ethereum-storage/src/config.ts index ced6ca7724..77e0d80daf 100644 --- a/packages/ethereum-storage/src/config.ts +++ b/packages/ethereum-storage/src/config.ts @@ -1,4 +1,4 @@ -import { StorageTypes } from '@requestnetwork/types'; +import { CurrencyTypes, StorageTypes } from '@requestnetwork/types'; import { BigNumber } from 'ethers'; // This contains default values used to use Ethereum Network and IPFS @@ -73,7 +73,7 @@ export function getDefaultEthereumProviderTimeout(): number { * Retrieve from config the default name of the network for Ethereum * @returns the name of the network */ -export function getDefaultEthereumNetwork(): string { +export function getDefaultEthereumNetwork(): CurrencyTypes.EvmChainName { return config.ethereum.default; } diff --git a/packages/ethereum-storage/src/ethereum-storage-ethers.ts b/packages/ethereum-storage/src/ethereum-storage-ethers.ts index 05e7737ddc..34817a143e 100644 --- a/packages/ethereum-storage/src/ethereum-storage-ethers.ts +++ b/packages/ethereum-storage/src/ethereum-storage-ethers.ts @@ -1,7 +1,7 @@ import { EventEmitter } from 'events'; import { BigNumber, ContractReceipt, providers, Signer } from 'ethers'; import TypedEmitter from 'typed-emitter'; -import { LogTypes, StorageTypes } from '@requestnetwork/types'; +import { CurrencyTypes, LogTypes, StorageTypes } from '@requestnetwork/types'; import { requestHashSubmitterArtifact } from '@requestnetwork/smart-contracts'; import { EthereumTransactionSubmitter } from './ethereum-tx-submitter'; import { getCurrentTimestampInSecond, SimpleLogger } from '@requestnetwork/utils'; @@ -11,7 +11,7 @@ export type GasDefinerProps = { }; export type SubmitterProps = GasDefinerProps & { - network: string; + network: CurrencyTypes.EvmChainName; signer: Signer; logger?: LogTypes.ILogger; }; @@ -29,7 +29,7 @@ export class EthereumStorageEthers implements StorageTypes.IStorageWrite { private readonly logger: LogTypes.ILogger; private readonly ipfsStorage: StorageTypes.IIpfsStorage; - private readonly network: string; + private readonly network: CurrencyTypes.EvmChainName; private readonly txSubmitter: EthereumTransactionSubmitter; constructor({ network, signer, ipfsStorage, logger, gasPriceMin }: StorageProps) { diff --git a/packages/ethereum-storage/src/ethereum-utils.ts b/packages/ethereum-storage/src/ethereum-utils.ts index 75351078fa..00e57f373c 100644 --- a/packages/ethereum-storage/src/ethereum-utils.ts +++ b/packages/ethereum-storage/src/ethereum-utils.ts @@ -1,50 +1,46 @@ -import { StorageTypes } from '@requestnetwork/types'; +import { CurrencyTypes, StorageTypes } from '@requestnetwork/types'; import * as config from './config'; import { BigNumber } from 'ethers'; +import { EVM } from '@requestnetwork/currency'; -const networks = { - [StorageTypes.EthereumNetwork.PRIVATE]: 'private', - [StorageTypes.EthereumNetwork.MAINNET]: 'mainnet', - [StorageTypes.EthereumNetwork.KOVAN]: 'kovan', - [StorageTypes.EthereumNetwork.RINKEBY]: 'rinkeby', - [StorageTypes.EthereumNetwork.GOERLI]: 'goerli', - [StorageTypes.EthereumNetwork.SOKOL]: 'sokol', - [StorageTypes.EthereumNetwork.XDAI]: 'xdai', -}; +/** + * Collection of utils functions related to Ethereum Storage + */ /** - * Collection of utils functions related to Ethereum + * Get the name of the Ethereum network from its id + * + * @param networkId Id of the network + * @return name of the network */ -export default { - /** - * Get the name of the Ethereum network from its id - * - * @param networkId Id of the network - * @return name of the network - */ - getEthereumNetworkNameFromId(networkId: StorageTypes.EthereumNetwork): string { - return networks[networkId]; - }, +export const getEthereumStorageNetworkNameFromId = ( + networkId: StorageTypes.EthereumNetwork, +): CurrencyTypes.EvmChainName => { + const chainName = EVM.getChainName(networkId); + if (!chainName) { + // this should never happen + throw new Error('Storage chain is not a supported EVM chain'); + } + return chainName; +}; - getEthereumIdFromNetworkName(name: string): StorageTypes.EthereumNetwork | undefined { - const id = Object.entries(networks).find((entry) => entry[1] === name)?.[0]; - if (!id) { - return undefined; - } - return Number(id) as StorageTypes.EthereumNetwork; - }, +export const getEthereumStorageNetworkIdFromName = ( + name: CurrencyTypes.EvmChainName, +): number | undefined => { + const networkId = EVM.getChainId(name); + return Object.values(StorageTypes.EthereumNetwork).includes(networkId) ? networkId : undefined; +}; - /** - * Ensure the gas price returned by an API is safe to use - * An API could return a high value if it's corrupted or if the format changes - * The web3 provider would not in certain cases ask the user for confirmation - * therefore we have to ensure the gas price is not too high - * - * @param gasPrice Value of the gas price - * @returns True if the gas price can be used - */ - isGasPriceSafe(gasPrice: BigNumber): boolean { - return gasPrice.gt(0) && gasPrice.lt(config.getSafeGasPriceLimit()); - }, +/** + * Ensure the gas price returned by an API is safe to use + * An API could return a high value if it's corrupted or if the format changes + * The web3 provider would not in certain cases ask the user for confirmation + * therefore we have to ensure the gas price is not too high + * + * @param gasPrice Value of the gas price + * @returns True if the gas price can be used + */ +export const isGasPriceSafe = (gasPrice: BigNumber): boolean => { + return gasPrice.gt(0) && gasPrice.lt(config.getSafeGasPriceLimit()); }; diff --git a/packages/ethereum-storage/src/gas-price-definer.ts b/packages/ethereum-storage/src/gas-price-definer.ts index 7bd232392b..bf6c1209a1 100644 --- a/packages/ethereum-storage/src/gas-price-definer.ts +++ b/packages/ethereum-storage/src/gas-price-definer.ts @@ -1,15 +1,15 @@ import * as config from './config'; -import EthereumUtils from './ethereum-utils'; import EtherchainProvider from './gas-price-providers/etherchain-provider'; import EtherscanProvider from './gas-price-providers/etherscan-provider'; import EthGasStationProvider from './gas-price-providers/ethgasstation-provider'; -import { LogTypes, StorageTypes } from '@requestnetwork/types'; +import { CurrencyTypes, LogTypes, StorageTypes } from '@requestnetwork/types'; import { BigNumber } from 'ethers'; import XDaiFixedProvider from './gas-price-providers/xdai-fixed-provider'; import { GasDefinerProps } from './ethereum-storage-ethers'; import { SimpleLogger } from '@requestnetwork/utils'; +import { getEthereumStorageNetworkIdFromName } from './ethereum-utils'; /** * Determines the gas price to use depending on the used network @@ -61,9 +61,9 @@ export class GasPriceDefiner { */ public async getGasPrice( type: StorageTypes.GasPriceType, - networkName: string, + networkName: CurrencyTypes.EvmChainName, ): Promise { - const network = EthereumUtils.getEthereumIdFromNetworkName(networkName); + const network = getEthereumStorageNetworkIdFromName(networkName); if (network) { const gasPriceArray = await this.pollProviders(type, network); if (gasPriceArray.length > 0) { diff --git a/packages/ethereum-storage/src/gas-price-providers/etherchain-provider.ts b/packages/ethereum-storage/src/gas-price-providers/etherchain-provider.ts index 3f7b9e5a79..135612fc41 100644 --- a/packages/ethereum-storage/src/gas-price-providers/etherchain-provider.ts +++ b/packages/ethereum-storage/src/gas-price-providers/etherchain-provider.ts @@ -1,11 +1,10 @@ -import EthereumUtils from '../ethereum-utils'; - import { StorageTypes } from '@requestnetwork/types'; import Axios from 'axios'; import { BigNumber } from 'ethers'; import { retry } from '@requestnetwork/utils'; +import { isGasPriceSafe } from '../ethereum-utils'; // Maximum number of api requests to retry when an error is encountered (ECONNRESET, EPIPE, ENOTFOUND) const ETHERCHAIN_REQUEST_MAX_RETRY = 3; @@ -68,7 +67,7 @@ export default class EtherchainProvider implements StorageTypes.IGasPriceProvide ) * API_MULTIPLIER, ); - if (!EthereumUtils.isGasPriceSafe(apiGasPrice)) { + if (!isGasPriceSafe(apiGasPrice)) { throw Error(`Etherchain provided gas price not safe to use: ${apiGasPrice}`); } diff --git a/packages/ethereum-storage/src/gas-price-providers/etherscan-provider.ts b/packages/ethereum-storage/src/gas-price-providers/etherscan-provider.ts index f84928d4ac..40272bdeef 100644 --- a/packages/ethereum-storage/src/gas-price-providers/etherscan-provider.ts +++ b/packages/ethereum-storage/src/gas-price-providers/etherscan-provider.ts @@ -1,11 +1,10 @@ -import EthereumUtils from '../ethereum-utils'; - import { StorageTypes } from '@requestnetwork/types'; import Axios from 'axios'; import { BigNumber } from 'ethers'; import { retry } from '@requestnetwork/utils'; +import { isGasPriceSafe } from '../ethereum-utils'; // Maximum number of api requests to retry when an error is encountered (ECONNRESET, EPIPE, ENOTFOUND) const ETHERSCAN_REQUEST_MAX_RETRY = 3; @@ -76,7 +75,7 @@ export default class EtherscanProvider implements StorageTypes.IGasPriceProvider ) * API_MULTIPLIER, ); - if (!EthereumUtils.isGasPriceSafe(apiGasPrice)) { + if (!isGasPriceSafe(apiGasPrice)) { throw Error(`Etherscan provided gas price not safe to use: ${apiGasPrice}`); } diff --git a/packages/ethereum-storage/src/gas-price-providers/ethgasstation-provider.ts b/packages/ethereum-storage/src/gas-price-providers/ethgasstation-provider.ts index 411a75e0b2..65c5146061 100644 --- a/packages/ethereum-storage/src/gas-price-providers/ethgasstation-provider.ts +++ b/packages/ethereum-storage/src/gas-price-providers/ethgasstation-provider.ts @@ -1,10 +1,9 @@ -import EthereumUtils from '../ethereum-utils'; - import { StorageTypes } from '@requestnetwork/types'; import Axios from 'axios'; import { BigNumber } from 'ethers'; import { retry } from '@requestnetwork/utils'; +import { isGasPriceSafe } from '../ethereum-utils'; // Maximum number of api requests to retry when an error is encountered (ECONNRESET, EPIPE, ENOTFOUND) const ETHGASSTATION_REQUEST_MAX_RETRY = 3; @@ -67,7 +66,7 @@ export default class EthGasStationProvider implements StorageTypes.IGasPriceProv ) * API_MULTIPLIER, ); - if (!EthereumUtils.isGasPriceSafe(apiGasPrice)) { + if (!isGasPriceSafe(apiGasPrice)) { throw Error(`EthGasStation provided gas price not safe to use: ${apiGasPrice}`); } diff --git a/packages/ethereum-storage/src/index.ts b/packages/ethereum-storage/src/index.ts index 4af2a8b5c3..a80514931c 100644 --- a/packages/ethereum-storage/src/index.ts +++ b/packages/ethereum-storage/src/index.ts @@ -1,4 +1,8 @@ export { EthereumStorage } from './ethereum-storage'; +export { + getEthereumStorageNetworkNameFromId, + getEthereumStorageNetworkIdFromName, +} from './ethereum-utils'; export { EthereumStorageEthers } from './ethereum-storage-ethers'; export { EthereumTransactionSubmitter } from './ethereum-tx-submitter'; export { GasPriceDefiner } from './gas-price-definer'; diff --git a/packages/ethereum-storage/src/smart-contract-manager.ts b/packages/ethereum-storage/src/smart-contract-manager.ts index 2c184c37ae..b0ac0fd02c 100644 --- a/packages/ethereum-storage/src/smart-contract-manager.ts +++ b/packages/ethereum-storage/src/smart-contract-manager.ts @@ -1,16 +1,9 @@ import * as SmartContracts from '@requestnetwork/smart-contracts'; -import { LogTypes, StorageTypes } from '@requestnetwork/types'; +import { CurrencyTypes, LogTypes, StorageTypes } from '@requestnetwork/types'; import * as Bluebird from 'bluebird'; import * as config from './config'; import EthereumBlocks from './ethereum-blocks'; -import EthereumUtils from './ethereum-utils'; import { GasPriceDefiner } from './gas-price-definer'; - -// eslint-disable-next-line @typescript-eslint/no-var-requires -const web3Eth = require('web3-eth'); -// eslint-disable-next-line @typescript-eslint/no-var-requires -const web3Utils = require('web3-utils'); - import { BigNumber } from 'ethers'; import { flatten2DimensionsArray, @@ -18,6 +11,12 @@ import { SimpleLogger, timeoutPromise, } from '@requestnetwork/utils'; +import { getEthereumStorageNetworkNameFromId } from './ethereum-utils'; + +// eslint-disable-next-line @typescript-eslint/no-var-requires +const web3Eth = require('web3-eth'); +// eslint-disable-next-line @typescript-eslint/no-var-requires +const web3Utils = require('web3-utils'); // Maximum number of attempt to create ethereum metadata when transaction to add hash and size to Ethereum is confirmed // 23 is the number of call of the transaction's confirmation event function @@ -51,7 +50,7 @@ export default class SmartContractManager { */ public maxConcurrency: number; - protected networkName = ''; + protected networkName: CurrencyTypes.EvmChainName = 'private'; protected hashStorageAddress: string; protected hashSubmitterAddress: string; @@ -134,7 +133,7 @@ export default class SmartContractManager { this.networkName = typeof web3Connection.networkId === 'undefined' ? config.getDefaultEthereumNetwork() - : EthereumUtils.getEthereumNetworkNameFromId(web3Connection.networkId); + : getEthereumStorageNetworkNameFromId(web3Connection.networkId); // If networkName is undefined, it means the network doesn't exist if (typeof this.networkName === 'undefined') { diff --git a/packages/ethereum-storage/test/ethereum-utils.test.ts b/packages/ethereum-storage/test/ethereum-utils.test.ts index a423b9ddad..d2f8f91c1b 100644 --- a/packages/ethereum-storage/test/ethereum-utils.test.ts +++ b/packages/ethereum-storage/test/ethereum-utils.test.ts @@ -1,86 +1,63 @@ import { StorageTypes } from '@requestnetwork/types'; import { getSafeGasPriceLimit } from '../src/config'; -import EthereumUtils from '../src/ethereum-utils'; import { BigNumber } from 'ethers'; +import { + getEthereumStorageNetworkIdFromName, + getEthereumStorageNetworkNameFromId, + isGasPriceSafe, +} from '../src/ethereum-utils'; /* eslint-disable @typescript-eslint/no-unused-expressions */ describe('Ethereum Utils', () => { - describe('getEthereumNetworkNameFromId', () => { + describe('getEthereumStorageNetworkNameFromId', () => { it('allows to get the correct network name', async () => { - expect(EthereumUtils.getEthereumNetworkNameFromId(StorageTypes.EthereumNetwork.PRIVATE)).toBe( + expect(getEthereumStorageNetworkNameFromId(StorageTypes.EthereumNetwork.PRIVATE)).toBe( 'private', ); - expect(EthereumUtils.getEthereumNetworkNameFromId(StorageTypes.EthereumNetwork.MAINNET)).toBe( + expect(getEthereumStorageNetworkNameFromId(StorageTypes.EthereumNetwork.MAINNET)).toBe( 'mainnet', ); - expect(EthereumUtils.getEthereumNetworkNameFromId(StorageTypes.EthereumNetwork.KOVAN)).toBe( - 'kovan', - ); - expect(EthereumUtils.getEthereumNetworkNameFromId(StorageTypes.EthereumNetwork.RINKEBY)).toBe( + expect(getEthereumStorageNetworkNameFromId(StorageTypes.EthereumNetwork.RINKEBY)).toBe( 'rinkeby', ); - expect(EthereumUtils.getEthereumNetworkNameFromId(StorageTypes.EthereumNetwork.GOERLI)).toBe( + expect(getEthereumStorageNetworkNameFromId(StorageTypes.EthereumNetwork.GOERLI)).toBe( 'goerli', ); - expect(EthereumUtils.getEthereumNetworkNameFromId(StorageTypes.EthereumNetwork.SOKOL)).toBe( - 'sokol', - ); - expect(EthereumUtils.getEthereumNetworkNameFromId(StorageTypes.EthereumNetwork.XDAI)).toBe( - 'xdai', - ); + expect(getEthereumStorageNetworkNameFromId(StorageTypes.EthereumNetwork.XDAI)).toBe('xdai'); }); it(`should return undefined if the network doesn't exist`, async () => { - expect(EthereumUtils.getEthereumNetworkNameFromId(2000)).toBeUndefined(); + expect(getEthereumStorageNetworkNameFromId(2000)).toBeUndefined(); }); }); - describe('getEthereumIdFromNetworkName', () => { + describe('getEthereumStorageNetworkIdFromName', () => { it('allows to get the correct network name', async () => { - expect(EthereumUtils.getEthereumIdFromNetworkName('private')).toBe( - StorageTypes.EthereumNetwork.PRIVATE, - ); - expect(EthereumUtils.getEthereumIdFromNetworkName('mainnet')).toBe( - StorageTypes.EthereumNetwork.MAINNET, - ); - expect(EthereumUtils.getEthereumIdFromNetworkName('kovan')).toBe( - StorageTypes.EthereumNetwork.KOVAN, - ); - expect(EthereumUtils.getEthereumIdFromNetworkName('rinkeby')).toBe( - StorageTypes.EthereumNetwork.RINKEBY, - ); - expect(EthereumUtils.getEthereumIdFromNetworkName('goerli')).toBe( - StorageTypes.EthereumNetwork.GOERLI, - ); - expect(EthereumUtils.getEthereumIdFromNetworkName('sokol')).toBe( - StorageTypes.EthereumNetwork.SOKOL, - ); - expect(EthereumUtils.getEthereumIdFromNetworkName('xdai')).toBe( - StorageTypes.EthereumNetwork.XDAI, - ); + expect(getEthereumStorageNetworkIdFromName('private')).toBe(0); + expect(getEthereumStorageNetworkIdFromName('mainnet')).toBe(1); + expect(getEthereumStorageNetworkIdFromName('rinkeby')).toBe(4); + expect(getEthereumStorageNetworkIdFromName('goerli')).toBe(5); + expect(getEthereumStorageNetworkIdFromName('xdai')).toBe(100); }); - it(`should return undefined if the network doesn't exist`, async () => { - expect(EthereumUtils.getEthereumIdFromNetworkName('wrong')).toBeUndefined(); + it(`should return undefined if the network is not supported for storage`, async () => { + expect(getEthereumStorageNetworkIdFromName('aurora')).toBeUndefined(); + expect(getEthereumStorageNetworkIdFromName('mumbai')).toBeUndefined(); }); }); describe('isGasPriceSafe', () => { it('should return true when a safe value is given', async () => { - expect(EthereumUtils.isGasPriceSafe(BigNumber.from(1))).toBe(true); - expect(EthereumUtils.isGasPriceSafe(BigNumber.from(1000))).toBe(true); - expect( - EthereumUtils.isGasPriceSafe(BigNumber.from(parseInt(getSafeGasPriceLimit()) - 1)), - ).toBe(true); + expect(isGasPriceSafe(BigNumber.from(1))).toBe(true); + expect(isGasPriceSafe(BigNumber.from(1000))).toBe(true); + expect(isGasPriceSafe(BigNumber.from(parseInt(getSafeGasPriceLimit()) - 1))).toBe(true); }); it('should return false when an unsafe value is given', async () => { - expect(EthereumUtils.isGasPriceSafe(BigNumber.from(0))).toBe(false); - expect(EthereumUtils.isGasPriceSafe(BigNumber.from(parseInt(getSafeGasPriceLimit())))).toBe( - false, - ); + expect(isGasPriceSafe(BigNumber.from(0))).toBe(false); + expect(isGasPriceSafe(BigNumber.from(parseInt(getSafeGasPriceLimit())))).toBe(false); }); }); }); diff --git a/packages/ethereum-storage/test/gas-price-definer.test.ts b/packages/ethereum-storage/test/gas-price-definer.test.ts index 0dea696cd4..8f19e3e317 100644 --- a/packages/ethereum-storage/test/gas-price-definer.test.ts +++ b/packages/ethereum-storage/test/gas-price-definer.test.ts @@ -1,10 +1,9 @@ /* eslint-disable no-magic-numbers */ import { StorageTypes } from '@requestnetwork/types'; -import EthereumUtils from '../src/ethereum-utils'; +import { GasPriceDefiner, getEthereumStorageNetworkNameFromId } from '../src'; import * as config from '../src/config'; -import { GasPriceDefiner } from '../src/gas-price-definer'; import { BigNumber } from 'ethers'; @@ -24,7 +23,7 @@ describe('GasPriceDefiner', () => { }; const gasPrice = await gasPriceDefiner.getGasPrice( StorageTypes.GasPriceType.STANDARD, - EthereumUtils.getEthereumNetworkNameFromId(StorageTypes.EthereumNetwork.RINKEBY), + getEthereumStorageNetworkNameFromId(StorageTypes.EthereumNetwork.RINKEBY), ); expect(gasPrice).toEqual(config.getDefaultEthereumGasPrice()); @@ -41,7 +40,7 @@ describe('GasPriceDefiner', () => { }; const gasPrice = await gasPriceDefiner.getGasPrice( StorageTypes.GasPriceType.STANDARD, - EthereumUtils.getEthereumNetworkNameFromId(StorageTypes.EthereumNetwork.XDAI), + getEthereumStorageNetworkNameFromId(StorageTypes.EthereumNetwork.XDAI), ); expect(gasPrice).toEqual(BigNumber.from(2)); @@ -53,7 +52,7 @@ describe('GasPriceDefiner', () => { ): Promise => Promise.resolve([]); const gasPrice = await gasPriceDefiner.getGasPrice( StorageTypes.GasPriceType.STANDARD, - EthereumUtils.getEthereumNetworkNameFromId(StorageTypes.EthereumNetwork.MAINNET), + getEthereumStorageNetworkNameFromId(StorageTypes.EthereumNetwork.MAINNET), ); expect(gasPrice).toEqual(config.getDefaultEthereumGasPrice()); @@ -72,7 +71,7 @@ describe('GasPriceDefiner', () => { const gasPrice = await gasPriceDefiner.getGasPrice( StorageTypes.GasPriceType.STANDARD, - EthereumUtils.getEthereumNetworkNameFromId(StorageTypes.EthereumNetwork.MAINNET), + getEthereumStorageNetworkNameFromId(StorageTypes.EthereumNetwork.MAINNET), ); expect(gasPrice).toEqual(BigNumber.from(300)); diff --git a/packages/payment-detection/src/any/any-to-erc20-proxy.ts b/packages/payment-detection/src/any/any-to-erc20-proxy.ts index 9e336cc8c8..b3c129334f 100644 --- a/packages/payment-detection/src/any/any-to-erc20-proxy.ts +++ b/packages/payment-detection/src/any/any-to-erc20-proxy.ts @@ -1,11 +1,17 @@ import { erc20ConversionProxy } from '@requestnetwork/smart-contracts'; -import { ExtensionTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { + CurrencyTypes, + ExtensionTypes, + PaymentTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; import { ERC20FeeProxyPaymentDetectorBase } from '../erc20/fee-proxy-contract'; import { AnyToErc20InfoRetriever } from './retrievers/any-to-erc20-proxy'; import { TheGraphInfoRetriever } from '../thegraph'; import { makeGetDeploymentInformation } from '../utils'; import { PaymentNetworkOptions, ReferenceBasedDetectorOptions } from '../types'; import { generate8randomBytes } from '@requestnetwork/utils'; +import { EVM } from '@requestnetwork/currency'; const PROXY_CONTRACT_ADDRESS_MAP = { ['0.1.0']: '0.1.0', @@ -78,7 +84,7 @@ export class AnyToERC20PaymentDetector extends ERC20FeeProxyPaymentDetectorBase< toAddress: string | undefined, paymentReference: string, requestCurrency: RequestLogicTypes.ICurrency, - paymentChain: string, + paymentChain: CurrencyTypes.EvmChainName, paymentNetwork: ExtensionTypes.IState, ): Promise> { if (!toAddress) { @@ -130,11 +136,12 @@ export class AnyToERC20PaymentDetector extends ERC20FeeProxyPaymentDetectorBase< }; } - protected getPaymentChain(request: RequestLogicTypes.IRequest): string { + protected getPaymentChain(request: RequestLogicTypes.IRequest): CurrencyTypes.EvmChainName { const network = this.getPaymentExtension(request).values.network; if (!network) { throw Error(`request.extensions[${this.paymentNetworkId}].values.network must be defined`); } + EVM.assertChainSupported(network); return network; } diff --git a/packages/payment-detection/src/any/any-to-eth-proxy.ts b/packages/payment-detection/src/any/any-to-eth-proxy.ts index 839a692320..82ad51437c 100644 --- a/packages/payment-detection/src/any/any-to-eth-proxy.ts +++ b/packages/payment-detection/src/any/any-to-eth-proxy.ts @@ -1,7 +1,12 @@ import * as SmartContracts from '@requestnetwork/smart-contracts'; -import { ExtensionTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { + CurrencyTypes, + ExtensionTypes, + PaymentTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; -import { UnsupportedCurrencyError } from '@requestnetwork/currency'; +import { EVM, UnsupportedCurrencyError } from '@requestnetwork/currency'; import { AnyToEthInfoRetriever } from './retrievers/any-to-eth-proxy'; import { AnyToAnyDetector } from '../any-to-any-detector'; @@ -58,7 +63,7 @@ export class AnyToEthFeeProxyPaymentDetector extends AnyToAnyDetector< toAddress: string | undefined, paymentReference: string, requestCurrency: RequestLogicTypes.ICurrency, - paymentChain: string, + paymentChain: CurrencyTypes.EvmChainName, paymentNetwork: ExtensionTypes.IState, ): Promise> { if (!toAddress) { @@ -117,11 +122,12 @@ export class AnyToEthFeeProxyPaymentDetector extends AnyToAnyDetector< * @param paymentNetwork the payment network * @returns The network of payment */ - protected getPaymentChain(request: RequestLogicTypes.IRequest): string { + protected getPaymentChain(request: RequestLogicTypes.IRequest): CurrencyTypes.EvmChainName { const network = this.getPaymentExtension(request).values.network; if (!network) { throw Error(`request.extensions[${this.paymentNetworkId}].values.network must be defined`); } + EVM.assertChainSupported(network); return network; } diff --git a/packages/payment-detection/src/erc20/currency.ts b/packages/payment-detection/src/erc20/currency.ts index 68b8888a14..70b44ec749 100644 --- a/packages/payment-detection/src/erc20/currency.ts +++ b/packages/payment-detection/src/erc20/currency.ts @@ -1,6 +1,7 @@ import { CurrencyDefinition, CurrencyManager, + EVM, getCurrencyHash, StorageCurrency, } from '@requestnetwork/currency'; @@ -8,32 +9,39 @@ import { RequestLogicTypes } from '@requestnetwork/types'; import { ERC20__factory } from '@requestnetwork/smart-contracts/types'; import { isAddress } from 'ethers/lib/utils'; import { getDefaultProvider } from '@requestnetwork/utils'; +import { ERC20CurrencyInput } from '@requestnetwork/currency/src'; export const loadCurrencyFromContract = async ( currency: StorageCurrency, ): Promise => { - if (!currency.network || !isAddress(currency.value)) { - return null; - } - try { - const contract = ERC20__factory.connect(currency.value, getDefaultProvider(currency.network)); + const { network, value } = currency; + + if (!network || !isAddress(value)) { + return null; + } + EVM.assertChainSupported(network); + + const contract = ERC20__factory.connect(value, getDefaultProvider(network)); const decimals = await contract.decimals(); if (!decimals) { return null; } + const symbol = await contract.symbol(); if (!symbol) { return null; } - const definition = { - address: currency.value, + + const definition: ERC20CurrencyInput = { + address: value, decimals, symbol, - network: currency.network, + network: network, type: RequestLogicTypes.CURRENCY.ERC20, }; + return { ...definition, id: CurrencyManager.currencyId(definition), diff --git a/packages/payment-detection/src/erc20/fee-proxy-contract.ts b/packages/payment-detection/src/erc20/fee-proxy-contract.ts index 14c7417ba5..3bca522a78 100644 --- a/packages/payment-detection/src/erc20/fee-proxy-contract.ts +++ b/packages/payment-detection/src/erc20/fee-proxy-contract.ts @@ -1,5 +1,10 @@ import { erc20FeeProxyArtifact } from '@requestnetwork/smart-contracts'; -import { ExtensionTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { + CurrencyTypes, + ExtensionTypes, + PaymentTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; import { CurrencyDefinition, ICurrencyManager } from '@requestnetwork/currency'; import ProxyInfoRetriever from './proxy-info-retriever'; @@ -84,7 +89,7 @@ export class ERC20FeeProxyPaymentDetector extends ERC20FeeProxyPaymentDetectorBa toAddress: string | undefined, paymentReference: string, requestCurrency: RequestLogicTypes.ICurrency, - paymentChain: string, + paymentChain: CurrencyTypes.EvmChainName, paymentNetwork: ExtensionTypes.IState, ): Promise> { if (!toAddress) { diff --git a/packages/payment-detection/src/erc20/proxy-contract.ts b/packages/payment-detection/src/erc20/proxy-contract.ts index 3c7a334f5f..8b34772b98 100644 --- a/packages/payment-detection/src/erc20/proxy-contract.ts +++ b/packages/payment-detection/src/erc20/proxy-contract.ts @@ -1,4 +1,9 @@ -import { ExtensionTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { + CurrencyTypes, + ExtensionTypes, + PaymentTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; import { erc20ProxyArtifact } from '@requestnetwork/smart-contracts'; import ProxyInfoRetriever from './proxy-info-retriever'; import { TheGraphInfoRetriever } from '../thegraph'; @@ -50,7 +55,7 @@ export class ERC20ProxyPaymentDetector extends ReferenceBasedDetector< toAddress: string | undefined, paymentReference: string, requestCurrency: RequestLogicTypes.ICurrency, - paymentChain: string, + paymentChain: CurrencyTypes.EvmChainName, paymentNetwork: ExtensionTypes.IState, ): Promise> { if (!toAddress) { diff --git a/packages/payment-detection/src/erc777/superfluid-detector.ts b/packages/payment-detection/src/erc777/superfluid-detector.ts index b85ee84fb1..24e47edbc5 100644 --- a/packages/payment-detection/src/erc777/superfluid-detector.ts +++ b/packages/payment-detection/src/erc777/superfluid-detector.ts @@ -1,4 +1,9 @@ -import { ExtensionTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { + CurrencyTypes, + ExtensionTypes, + PaymentTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; import { SuperFluidInfoRetriever } from './superfluid-retriever'; import { ReferenceBasedDetector } from '../reference-based-detector'; import PaymentReferenceCalculator from '../payment-reference-calculator'; @@ -91,7 +96,7 @@ export class SuperFluidPaymentDetector extends ReferenceBasedDetector< address: string | undefined, paymentReference: string, requestCurrency: RequestLogicTypes.ICurrency, - paymentChain: string, + paymentChain: CurrencyTypes.EvmChainName, ): Promise> { if (!address) { return { diff --git a/packages/payment-detection/src/eth/fee-proxy-detector.ts b/packages/payment-detection/src/eth/fee-proxy-detector.ts index 5df331b9fa..34b8f434b0 100644 --- a/packages/payment-detection/src/eth/fee-proxy-detector.ts +++ b/packages/payment-detection/src/eth/fee-proxy-detector.ts @@ -1,5 +1,10 @@ import * as SmartContracts from '@requestnetwork/smart-contracts'; -import { ExtensionTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { + CurrencyTypes, + ExtensionTypes, + PaymentTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; import { EthProxyInfoRetriever } from './proxy-info-retriever'; import { FeeReferenceBasedDetector } from '../fee-reference-based-detector'; @@ -57,7 +62,7 @@ export class EthFeeProxyPaymentDetector extends FeeReferenceBasedDetector< toAddress: string | undefined, paymentReference: string, _requestCurrency: RequestLogicTypes.ICurrency, - paymentChain: string, + paymentChain: CurrencyTypes.EvmChainName, paymentNetwork: ExtensionTypes.PnFeeReferenceBased.IFeeReferenceBased extends ExtensionTypes.IExtension< infer X > diff --git a/packages/payment-detection/src/eth/input-data.ts b/packages/payment-detection/src/eth/input-data.ts index fcdb36549e..7442b81f6c 100644 --- a/packages/payment-detection/src/eth/input-data.ts +++ b/packages/payment-detection/src/eth/input-data.ts @@ -1,5 +1,10 @@ import * as SmartContracts from '@requestnetwork/smart-contracts'; -import { ExtensionTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { + CurrencyTypes, + ExtensionTypes, + PaymentTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; import { EthInputDataInfoRetriever } from './info-retriever'; import { EthProxyInfoRetriever } from './proxy-info-retriever'; import { ReferenceBasedDetector } from '../reference-based-detector'; @@ -63,7 +68,7 @@ export class EthInputDataPaymentDetector extends ReferenceBasedDetector< toAddress: string | undefined, paymentReference: string, _requestCurrency: RequestLogicTypes.ICurrency, - paymentChain: string, + paymentChain: CurrencyTypes.EvmChainName, paymentNetwork: ExtensionTypes.IState, ): Promise< PaymentTypes.AllNetworkEvents< diff --git a/packages/payment-detection/src/near/near-conversion-detector.ts b/packages/payment-detection/src/near/near-conversion-detector.ts index 15c8085a1f..b38b46838d 100644 --- a/packages/payment-detection/src/near/near-conversion-detector.ts +++ b/packages/payment-detection/src/near/near-conversion-detector.ts @@ -1,5 +1,10 @@ -import { ExtensionTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types'; -import { UnsupportedCurrencyError } from '@requestnetwork/currency'; +import { + CurrencyTypes, + ExtensionTypes, + PaymentTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; +import { EVM, UnsupportedCurrencyError } from '@requestnetwork/currency'; import { NearConversionInfoRetriever } from './retrievers/near-conversion-info-retriever'; import { AnyToNativeDetector } from '../any-to-native-detector'; import { NetworkNotSupported } from '../balance-error'; @@ -58,7 +63,7 @@ export class NearConversionNativeTokenPaymentDetector extends AnyToNativeDetecto address: string | undefined, paymentReference: string, requestCurrency: RequestLogicTypes.ICurrency, - paymentChain: string, + paymentChain: CurrencyTypes.EvmChainName, paymentNetwork: ExtensionTypes.IState, ): Promise> { if (!address) { @@ -90,11 +95,12 @@ export class NearConversionNativeTokenPaymentDetector extends AnyToNativeDetecto }; } - protected getPaymentChain(request: RequestLogicTypes.IRequest): string { + protected getPaymentChain(request: RequestLogicTypes.IRequest): CurrencyTypes.EvmChainName { const network = this.getPaymentExtension(request).values.network; if (!network) { throw Error(`request.extensions[${this.paymentNetworkId}].values.network must be defined`); } + EVM.assertChainSupported(network); return network; } diff --git a/packages/payment-detection/src/near/near-detector.ts b/packages/payment-detection/src/near/near-detector.ts index 861ab74010..a20c6f7d33 100644 --- a/packages/payment-detection/src/near/near-detector.ts +++ b/packages/payment-detection/src/near/near-detector.ts @@ -1,4 +1,9 @@ -import { ExtensionTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { + CurrencyTypes, + ExtensionTypes, + PaymentTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; import { NearInfoRetriever } from './retrievers/near-info-retriever'; import { NativeTokenPaymentDetector } from '../native-token-detector'; import { NetworkNotSupported } from '../balance-error'; @@ -58,7 +63,7 @@ export class NearNativeTokenPaymentDetector extends NativeTokenPaymentDetector { address: string | undefined, paymentReference: string, _requestCurrency: RequestLogicTypes.ICurrency, - paymentChain: string, + paymentChain: CurrencyTypes.EvmChainName, paymentNetwork: ExtensionTypes.IState, ): Promise> { if (!address) { diff --git a/packages/payment-detection/src/payment-network-factory.ts b/packages/payment-detection/src/payment-network-factory.ts index 8204115fb6..e197155736 100644 --- a/packages/payment-detection/src/payment-network-factory.ts +++ b/packages/payment-detection/src/payment-network-factory.ts @@ -1,5 +1,6 @@ import { AdvancedLogicTypes, + CurrencyTypes, ExtensionTypes, PaymentTypes, RequestLogicTypes, @@ -116,7 +117,7 @@ export class PaymentNetworkFactory { public createPaymentNetwork( paymentNetworkId: ExtensionTypes.PAYMENT_NETWORK_ID, currencyType: RequestLogicTypes.CURRENCY, - paymentChain?: string, + paymentChain?: CurrencyTypes.ChainName, paymentNetworkVersion?: string, ): PaymentTypes.IPaymentNetwork { const network = paymentChain ?? 'mainnet'; @@ -147,7 +148,7 @@ export class PaymentNetworkFactory { if (detector.extension && 'getDeploymentInformation' in detectorClass) { // this throws when the contract isn't deployed and was mandatory for payment detection (detectorClass as ContractBasedDetector).getDeploymentInformation( - network, + network as CurrencyTypes.EvmChainName, paymentNetworkVersion || detector.extension.currentVersion, ); } diff --git a/packages/payment-detection/src/reference-based-detector.ts b/packages/payment-detection/src/reference-based-detector.ts index 934e2c34e0..0c0cca54c1 100644 --- a/packages/payment-detection/src/reference-based-detector.ts +++ b/packages/payment-detection/src/reference-based-detector.ts @@ -1,4 +1,10 @@ -import { ExtensionTypes, PaymentTypes, RequestLogicTypes, TypesUtils } from '@requestnetwork/types'; +import { + CurrencyTypes, + ExtensionTypes, + PaymentTypes, + RequestLogicTypes, + TypesUtils, +} from '@requestnetwork/types'; import { ICurrencyManager } from '@requestnetwork/currency'; import PaymentReferenceCalculator from './payment-reference-calculator'; @@ -141,7 +147,7 @@ export abstract class ReferenceBasedDetector< address: string | undefined, paymentReference: string, requestCurrency: RequestLogicTypes.ICurrency, - paymentChain: string, + paymentChain: CurrencyTypes.ChainName, paymentNetwork: TExtension extends ExtensionTypes.IExtension ? ExtensionTypes.IState : never, @@ -151,7 +157,7 @@ export abstract class ReferenceBasedDetector< * Get the network of the payment * @returns The network of payment */ - protected getPaymentChain(request: RequestLogicTypes.IRequest): string { + protected getPaymentChain(request: RequestLogicTypes.IRequest): CurrencyTypes.ChainName { const network = request.currency.network; if (!network) { throw Error(`request.currency.network must be defined for ${this.paymentNetworkId}`); diff --git a/packages/payment-detection/src/thegraph/info-retriever.ts b/packages/payment-detection/src/thegraph/info-retriever.ts index 7f7fadd888..5d7cdd3af2 100644 --- a/packages/payment-detection/src/thegraph/info-retriever.ts +++ b/packages/payment-detection/src/thegraph/info-retriever.ts @@ -1,4 +1,4 @@ -import { PaymentTypes } from '@requestnetwork/types'; +import { CurrencyTypes, PaymentTypes } from '@requestnetwork/types'; import { ICurrencyManager } from '@requestnetwork/currency'; import { utils } from 'ethers'; import { pick, mapValues } from 'lodash'; @@ -14,7 +14,7 @@ type TransferEventsParams = { /** The address of the payment proxy */ contractAddress: string; /** The chain to check for payment */ - paymentChain: string; + paymentChain: CurrencyTypes.EvmChainName; /** Indicates if it is an address for payment or refund */ eventName: PaymentTypes.EVENTS_NAMES; /** The list of ERC20 tokens addresses accepted for payments and refunds */ diff --git a/packages/payment-detection/src/utils.ts b/packages/payment-detection/src/utils.ts index ba2cdc3944..6a64326a33 100644 --- a/packages/payment-detection/src/utils.ts +++ b/packages/payment-detection/src/utils.ts @@ -1,5 +1,10 @@ import { CurrencyDefinition } from '@requestnetwork/currency'; -import { ExtensionTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { + CurrencyTypes, + ExtensionTypes, + PaymentTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; import { BigNumber, BigNumberish, Contract, errors, logger } from 'ethers'; import { getAddress, keccak256, LogDescription } from 'ethers/lib/utils'; import { ContractArtifact, DeploymentInformation } from '@requestnetwork/smart-contracts'; @@ -57,7 +62,7 @@ const getChainlinkPaddingSize = ({ export type DeploymentInformationWithVersion = DeploymentInformation & { contractVersion: string }; export type GetDeploymentInformation = ( - network: string, + network: CurrencyTypes.EvmChainName, paymentNetworkVersion: string, ) => TAllowUndefined extends false ? DeploymentInformationWithVersion diff --git a/packages/payment-processor/src/payment/batch-conversion-proxy.ts b/packages/payment-processor/src/payment/batch-conversion-proxy.ts index ecaff095fd..86f4649798 100644 --- a/packages/payment-processor/src/payment/batch-conversion-proxy.ts +++ b/packages/payment-processor/src/payment/batch-conversion-proxy.ts @@ -3,6 +3,7 @@ import { batchConversionPaymentsArtifact } from '@requestnetwork/smart-contracts import { BatchConversionPayments__factory } from '@requestnetwork/smart-contracts/types'; import { ClientTypes, + CurrencyTypes, ExtensionTypes, PaymentTypes, RequestLogicTypes, @@ -273,7 +274,7 @@ function getUSDPathsForFeeLimit( * @returns */ function getBatchDeploymentInformation( - network: string, + network: CurrencyTypes.EvmChainName, version?: string, ): { address: string } | null { return { address: batchConversionPaymentsArtifact.getAddress(network, version) }; diff --git a/packages/payment-processor/src/payment/batch-proxy.ts b/packages/payment-processor/src/payment/batch-proxy.ts index b30bd3ee72..1b56b0c532 100644 --- a/packages/payment-processor/src/payment/batch-proxy.ts +++ b/packages/payment-processor/src/payment/batch-proxy.ts @@ -15,6 +15,7 @@ import { import { validateEthFeeProxyRequest } from './eth-fee-proxy'; import { IPreparedTransaction } from './prepared-transaction'; import { checkErc20Allowance, encodeApproveAnyErc20 } from './erc20'; +import { EVM } from '@requestnetwork/currency'; /** * ERC20 Batch Proxy payment details: @@ -211,7 +212,7 @@ export function getBatchArgs( /** * Get Batch contract Address * @param request The request to pay - * @param version The version version of the batch proxy, which can be different from request pn version + * @param version The version of the batch proxy, which can be different from request pn version */ export function getBatchProxyAddress(request: ClientTypes.IRequestData, version: string): string { const pn = getPaymentNetworkExtension(request); @@ -219,11 +220,13 @@ export function getBatchProxyAddress(request: ClientTypes.IRequestData, version: if (!pnId) { throw new Error('No payment network Id'); } - if (!request.currencyInfo.network) { + const { network } = request.currencyInfo; + if (!network) { throw new Error('No currency network'); } + EVM.assertChainSupported(network); - const proxyAddress = batchPaymentsArtifact.getAddress(request.currencyInfo.network, version); + const proxyAddress = batchPaymentsArtifact.getAddress(network, version); if (!proxyAddress) { throw new Error(`No deployment found for network ${pn}, version ${pn?.version}`); diff --git a/packages/payment-processor/src/payment/erc20-escrow-payment.ts b/packages/payment-processor/src/payment/erc20-escrow-payment.ts index 03230e97ee..cd1f7b66c4 100644 --- a/packages/payment-processor/src/payment/erc20-escrow-payment.ts +++ b/packages/payment-processor/src/payment/erc20-escrow-payment.ts @@ -13,6 +13,17 @@ import { import { ITransactionOverrides } from './transaction-overrides'; import { encodeApproveAnyErc20 } from './erc20'; import { IPreparedTransaction } from './prepared-transaction'; +import { EVM } from '@requestnetwork/currency'; + +/** + * Returns the EscrowToPay contract address corresponding to the request payment network + * @param request request to pay + */ +function getContractAddress(request: ClientTypes.IRequestData) { + const { network } = request.currencyInfo; + EVM.assertChainSupported(network!); + return erc20EscrowToPayArtifact.getAddress(network); +} /** * Prepare the approval transaction of the payment ERC20 to be spent by the escrow contract @@ -29,7 +40,7 @@ export function prepareErc20EscrowApproval( amount?: BigNumber, overrides?: ITransactionOverrides, ): IPreparedTransaction { - const contractAddress = erc20EscrowToPayArtifact.getAddress(request.currencyInfo.network!); + const contractAddress = getContractAddress(request); const encodedTx = encodeApproveAnyErc20( paymentTokenAddress, contractAddress, @@ -101,8 +112,8 @@ export async function freezeRequest( signerOrProvider: providers.Web3Provider | Signer = getProvider(), overrides?: ITransactionOverrides, ): Promise { + const contractAddress = getContractAddress(request); const encodedTx = encodeFreezeRequest(request); - const contractAddress = erc20EscrowToPayArtifact.getAddress(request.currencyInfo.network!); const signer = getSigner(signerOrProvider); const tx = await signer.sendTransaction({ @@ -125,8 +136,8 @@ export async function payRequestFromEscrow( signerOrProvider: providers.Web3Provider | Signer = getProvider(), overrides?: ITransactionOverrides, ): Promise { + const contractAddress = getContractAddress(request); const encodedTx = encodePayRequestFromEscrow(request); - const contractAddress = erc20EscrowToPayArtifact.getAddress(request.currencyInfo.network!); const signer = getSigner(signerOrProvider); const tx = await signer.sendTransaction({ @@ -149,8 +160,8 @@ export async function initiateEmergencyClaim( signerOrProvider: providers.Web3Provider | Signer = getProvider(), overrides?: ITransactionOverrides, ): Promise { + const contractAddress = getContractAddress(request); const encodedTx = encodeInitiateEmergencyClaim(request); - const contractAddress = erc20EscrowToPayArtifact.getAddress(request.currencyInfo.network!); const signer = getSigner(signerOrProvider); const tx = await signer.sendTransaction({ @@ -173,8 +184,8 @@ export async function completeEmergencyClaim( signerOrProvider: providers.Web3Provider | Signer = getProvider(), overrides?: ITransactionOverrides, ): Promise { + const contractAddress = getContractAddress(request); const encodedTx = encodeCompleteEmergencyClaim(request); - const contractAddress = erc20EscrowToPayArtifact.getAddress(request.currencyInfo.network!); const signer = getSigner(signerOrProvider); const tx = await signer.sendTransaction({ @@ -197,8 +208,8 @@ export async function revertEmergencyClaim( signerOrProvider: providers.Web3Provider | Signer = getProvider(), overrides?: ITransactionOverrides, ): Promise { + const contractAddress = getContractAddress(request); const encodedTx = encodeRevertEmergencyClaim(request); - const contractAddress = erc20EscrowToPayArtifact.getAddress(request.currencyInfo.network!); const signer = getSigner(signerOrProvider); const tx = await signer.sendTransaction({ @@ -221,8 +232,8 @@ export async function refundFrozenFunds( signerOrProvider: providers.Web3Provider | Signer = getProvider(), overrides?: ITransactionOverrides, ): Promise { + const contractAddress = getContractAddress(request); const encodedTx = encodeRefundFrozenFunds(request); - const contractAddress = erc20EscrowToPayArtifact.getAddress(request.currencyInfo.network!); const signer = getSigner(signerOrProvider); const tx = await signer.sendTransaction({ @@ -281,8 +292,8 @@ export function preparePayEscrow( feeAmount?: BigNumberish, overrides?: ITransactionOverrides, ): IPreparedTransaction { + const contractAddress = getContractAddress(request); const encodedTx = encodePayEscrow(request, amount, feeAmount); - const contractAddress = erc20EscrowToPayArtifact.getAddress(request.currencyInfo.network!); return { data: encodedTx, to: contractAddress, diff --git a/packages/payment-processor/src/payment/erc20-fee-proxy.ts b/packages/payment-processor/src/payment/erc20-fee-proxy.ts index 72174e3d87..3e48cf4ba4 100644 --- a/packages/payment-processor/src/payment/erc20-fee-proxy.ts +++ b/packages/payment-processor/src/payment/erc20-fee-proxy.ts @@ -4,6 +4,7 @@ import { erc20FeeProxyArtifact } from '@requestnetwork/smart-contracts'; import { ERC20FeeProxy__factory } from '@requestnetwork/smart-contracts/types'; import { ClientTypes, ExtensionTypes } from '@requestnetwork/types'; import { getPaymentNetworkExtension } from '@requestnetwork/payment-detection'; +import { EVM } from '@requestnetwork/currency'; import { ITransactionOverrides } from './transaction-overrides'; import { @@ -81,7 +82,9 @@ export function _getErc20FeeProxyPaymentUrl( validateRequest(request, ExtensionTypes.PAYMENT_NETWORK_ID.ERC20_FEE_PROXY_CONTRACT); const { paymentReference, paymentAddress, feeAddress, feeAmount, version } = getRequestPaymentValues(request); - const contractAddress = erc20FeeProxyArtifact.getAddress(request.currencyInfo.network!, version); + const { network } = request.currencyInfo; + EVM.assertChainSupported(network!); + const contractAddress = erc20FeeProxyArtifact.getAddress(network, version); const amountToPay = getAmountToPay(request, amount); const feeToPay = feeAmountOverride || BigNumber.from(feeAmount || 0); const parameters = `transferFromWithReferenceAndFee?address=${request.currencyInfo.value}&address=${paymentAddress}&uint256=${amountToPay}&bytes=${paymentReference}&uint256=${feeToPay}&address=${feeAddress}`; @@ -102,9 +105,11 @@ export function prepareErc20FeeProxyPaymentTransaction( ): IPreparedTransaction { validateErc20FeeProxyRequest(request, amount, feeAmountOverride); + const { network } = request.currencyInfo; + EVM.assertChainSupported(network!); const encodedTx = encodePayErc20FeeRequest(request, amount, feeAmountOverride); const pn = getPaymentNetworkExtension(request); - const proxyAddress = erc20FeeProxyArtifact.getAddress(request.currencyInfo.network!, pn?.version); + const proxyAddress = erc20FeeProxyArtifact.getAddress(network, pn?.version); return { data: encodedTx, diff --git a/packages/payment-processor/src/payment/swap-any-to-erc20.ts b/packages/payment-processor/src/payment/swap-any-to-erc20.ts index 08e9b4f502..a9b0c7fba9 100644 --- a/packages/payment-processor/src/payment/swap-any-to-erc20.ts +++ b/packages/payment-processor/src/payment/swap-any-to-erc20.ts @@ -1,4 +1,4 @@ -import { constants, ContractTransaction, Signer, BigNumber, providers } from 'ethers'; +import { BigNumber, constants, ContractTransaction, providers, Signer } from 'ethers'; import { AnyToERC20PaymentDetector } from '@requestnetwork/payment-detection'; import { erc20SwapConversionArtifact } from '@requestnetwork/smart-contracts'; @@ -13,7 +13,7 @@ import { getSigner, validateConversionFeeProxyRequest, } from './utils'; -import { CurrencyManager, UnsupportedCurrencyError } from '@requestnetwork/currency'; +import { CurrencyManager, EVM, UnsupportedCurrencyError } from '@requestnetwork/currency'; import { IRequestPaymentOptions } from './settings'; import { IPreparedTransaction } from './prepared-transaction'; @@ -91,6 +91,7 @@ export function encodeSwapToPayAnyToErc20Request( if (!network) { throw new Error(`Currency in conversion settings must have a network`); } + EVM.assertChainSupported(network); const requestCurrency = currencyManager.fromStorageCurrency(request.currencyInfo); if (!requestCurrency) { diff --git a/packages/payment-processor/src/payment/swap-erc20-fee-proxy.ts b/packages/payment-processor/src/payment/swap-erc20-fee-proxy.ts index dcf7d8ba21..3f39bb1cee 100644 --- a/packages/payment-processor/src/payment/swap-erc20-fee-proxy.ts +++ b/packages/payment-processor/src/payment/swap-erc20-fee-proxy.ts @@ -15,6 +15,7 @@ import { } from './utils'; import { IPreparedTransaction } from './prepared-transaction'; import { Erc20PaymentNetwork } from '@requestnetwork/payment-detection'; +import { EVM } from '@requestnetwork/currency'; /** * Details required for a token swap: @@ -83,13 +84,15 @@ export function prepareSwapToPayErc20FeeRequest( swapSettings: ISwapSettings, options?: ISwapTransactionOptions, ): IPreparedTransaction { + const { network } = request.currencyInfo; + EVM.assertChainSupported(network!); const encodedTx = encodeSwapToPayErc20FeeRequest( request, signerOrProvider, swapSettings, options, ); - const proxyAddress = erc20SwapToPayArtifact.getAddress(request.currencyInfo.network!); + const proxyAddress = erc20SwapToPayArtifact.getAddress(network); return { data: encodedTx, to: proxyAddress, @@ -111,6 +114,9 @@ export function encodeSwapToPayErc20FeeRequest( swapSettings: ISwapSettings, options?: IRequestPaymentOptions, ): string { + const { network } = request.currencyInfo; + EVM.assertChainSupported(network!); + validateErc20FeeProxyRequest(request, options?.amount, options?.feeAmount); const signer = getSigner(signerOrProvider); @@ -138,7 +144,7 @@ export function encodeSwapToPayErc20FeeRequest( Erc20PaymentNetwork.ERC20FeeProxyPaymentDetector.getDeploymentInformation, ); - const swapToPayAddress = erc20FeeProxyArtifact.getAddress(request.currencyInfo.network); + const swapToPayAddress = erc20FeeProxyArtifact.getAddress(network); const swapToPayContract = ERC20SwapToPay__factory.connect(swapToPayAddress, signer); return swapToPayContract.interface.encodeFunctionData('swapTransferWithReference', [ diff --git a/packages/payment-processor/src/payment/swap-erc20.ts b/packages/payment-processor/src/payment/swap-erc20.ts index 54ca6ddbc8..33ea1d55a9 100644 --- a/packages/payment-processor/src/payment/swap-erc20.ts +++ b/packages/payment-processor/src/payment/swap-erc20.ts @@ -1,4 +1,4 @@ -import { ContractTransaction, providers, Signer, BigNumberish, BigNumber } from 'ethers'; +import { BigNumber, BigNumberish, ContractTransaction, providers, Signer } from 'ethers'; import { erc20SwapToPayArtifact } from '@requestnetwork/smart-contracts'; import { ClientTypes } from '@requestnetwork/types'; @@ -7,6 +7,7 @@ import { ITransactionOverrides } from './transaction-overrides'; import { getProvider, getSigner } from './utils'; import { checkErc20Allowance, encodeApproveAnyErc20 } from './erc20'; import { IPreparedTransaction } from './prepared-transaction'; +import { EVM } from '@requestnetwork/currency'; /** * Processes the approval transaction of a given payment ERC20 to be spent by the swap router, @@ -54,12 +55,14 @@ export async function hasApprovalErc20ForSwapToPay( signerOrProvider: providers.Provider | Signer = getProvider(), minAmount: BigNumberish, ): Promise { - if (!request.currencyInfo.network) { + const { network } = request.currencyInfo; + if (!network) { throw new Error('Request currency network is missing'); } + EVM.assertChainSupported(network); return checkErc20Allowance( ownerAddress, - erc20SwapToPayArtifact.getAddress(request.currencyInfo.network), + erc20SwapToPayArtifact.getAddress(network), signerOrProvider, paymentTokenAddress, minAmount, @@ -104,9 +107,11 @@ export function prepareApprovalErc20ForSwapToPay( overrides?: ITransactionOverrides, amount?: BigNumber, ): IPreparedTransaction { + const { network } = request.currencyInfo; + EVM.assertChainSupported(network!); const encodedTx = encodeApproveAnyErc20( paymentTokenAddress, - erc20SwapToPayArtifact.getAddress(request.currencyInfo.network!), + erc20SwapToPayArtifact.getAddress(network), signerOrProvider, amount, ); diff --git a/packages/payment-processor/src/payment/utils.ts b/packages/payment-processor/src/payment/utils.ts index b61058cc7a..da498f5deb 100644 --- a/packages/payment-processor/src/payment/utils.ts +++ b/packages/payment-processor/src/payment/utils.ts @@ -1,8 +1,13 @@ import { ethers, Signer, providers, BigNumber, BigNumberish, ContractTransaction } from 'ethers'; import { getDefaultProvider, getPaymentReference } from '@requestnetwork/payment-detection'; -import { ClientTypes, ExtensionTypes, RequestLogicTypes } from '@requestnetwork/types'; -import { getCurrencyHash } from '@requestnetwork/currency'; +import { + ClientTypes, + CurrencyTypes, + ExtensionTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; +import { EVM, getCurrencyHash } from '@requestnetwork/currency'; import { ERC20__factory } from '@requestnetwork/smart-contracts/types'; import { getPaymentNetworkExtension } from '@requestnetwork/payment-detection'; @@ -74,7 +79,7 @@ export function getRequestPaymentValues(request: ClientTypes.IRequestData): { expectedStartDate?: string; tokensAccepted?: string[]; maxRateTimespan?: string; - network?: string; + network?: CurrencyTypes.ChainName; version: string; } { const extension = getPaymentNetworkExtension(request); @@ -153,10 +158,14 @@ export function getPnAndNetwork(request: ClientTypes.IRequestData): { */ export const getProxyAddress = ( request: ClientTypes.IRequestData, - getDeploymentInformation: (network: string, version: string) => { address: string } | null, + getDeploymentInformation: ( + network: CurrencyTypes.EvmChainName, + version: string, + ) => { address: string } | null, version?: string, ): string => { const { paymentNetwork, network } = getPnAndNetwork(request); + EVM.assertChainSupported(network); const deploymentInfo = getDeploymentInformation(network, version || paymentNetwork.version); if (!deploymentInfo) { throw new Error( diff --git a/packages/request-node/src/thegraph-node.ts b/packages/request-node/src/thegraph-node.ts index 757a603329..6c73885178 100644 --- a/packages/request-node/src/thegraph-node.ts +++ b/packages/request-node/src/thegraph-node.ts @@ -7,16 +7,12 @@ import { RequestNodeBase } from './requestNodeBase'; import * as config from './config'; import { getIpfsStorage } from './storageUtils'; import { TheGraphDataAccess } from '@requestnetwork/thegraph-data-access'; -import { EthereumStorageEthers } from '@requestnetwork/ethereum-storage'; +import { + EthereumStorageEthers, + getEthereumStorageNetworkNameFromId, +} from '@requestnetwork/ethereum-storage'; import { SimpleLogger } from '@requestnetwork/utils'; -const getNetworkFromId = (networkId: number) => { - const customNames: Record = { - 0: 'private', - 1: 'mainnet', - }; - return customNames[networkId] || providers.getNetwork(networkId).name; -}; export class TheGraphRequestNode extends RequestNodeBase { constructor(url: string, logger?: LogTypes.ILogger) { const initializationStoragePath = config.getInitializationStorageFilePath(); @@ -28,7 +24,11 @@ export class TheGraphRequestNode extends RequestNodeBase { }) : undefined; - const network = getNetworkFromId(config.getStorageNetworkId()); + const network = getEthereumStorageNetworkNameFromId(config.getStorageNetworkId()); + if (!network) { + throw new Error(`Storage network not supported: ${config.getStorageNetworkId()}`); + } + const wallet = Wallet.fromMnemonic(config.getMnemonic()).connect( new providers.StaticJsonRpcProvider(config.getStorageWeb3ProviderUrl()), ); diff --git a/packages/smart-contracts/scripts-create2/compute-one-address.ts b/packages/smart-contracts/scripts-create2/compute-one-address.ts index e3f8ed19fd..8f46d27d01 100644 --- a/packages/smart-contracts/scripts-create2/compute-one-address.ts +++ b/packages/smart-contracts/scripts-create2/compute-one-address.ts @@ -1,7 +1,8 @@ -import { IDeploymentParams, HardhatRuntimeEnvironmentExtended } from './types'; +import { HardhatRuntimeEnvironmentExtended, IDeploymentParams } from './types'; import { requestDeployer } from '../src/lib'; import { create2ContractDeploymentList } from './utils'; import { getConstructorArgs } from './constructor-args'; +import { EVM } from '@requestnetwork/currency'; // Deploys, set up the contracts export async function computeCreate2DeploymentAddress( @@ -46,6 +47,8 @@ export async function computeCreate2DeploymentAddress( export const computeCreate2DeploymentAddressesFromList = async ( hre: HardhatRuntimeEnvironmentExtended, ): Promise => { + const chain = hre.network.name; + EVM.assertChainSupported(chain); await Promise.all( create2ContractDeploymentList.map(async (contract) => { let address: string; @@ -59,7 +62,7 @@ export const computeCreate2DeploymentAddressesFromList = async ( case 'BatchConversionPayments': case 'ERC20SwapToConversion': { try { - const constructorArgs = getConstructorArgs(contract, hre.network.name); + const constructorArgs = getConstructorArgs(contract, chain); address = await computeCreate2DeploymentAddress({ contract, constructorArgs }, hre); console.log(`${contract.padEnd(36, ' ')}${address}`); } catch (e) { diff --git a/packages/smart-contracts/scripts-create2/constructor-args.ts b/packages/smart-contracts/scripts-create2/constructor-args.ts index 693fe1a912..a2cf39ede3 100644 --- a/packages/smart-contracts/scripts-create2/constructor-args.ts +++ b/packages/smart-contracts/scripts-create2/constructor-args.ts @@ -1,4 +1,5 @@ import * as artifacts from '../src/lib'; +import { CurrencyTypes } from '@requestnetwork/types'; const getAdminWalletAddress = (contract: string): string => { if (!process.env.ADMIN_WALLET_ADDRESS) { @@ -7,7 +8,10 @@ const getAdminWalletAddress = (contract: string): string => { return process.env.ADMIN_WALLET_ADDRESS; }; -export const getConstructorArgs = (contract: string, network?: string): string[] => { +export const getConstructorArgs = ( + contract: string, + network?: CurrencyTypes.EvmChainName, +): string[] => { switch (contract) { case 'ChainlinkConversionPath': { return ['0x0000000000000000000000000000000000000000', getAdminWalletAddress(contract)]; diff --git a/packages/smart-contracts/scripts-create2/contract-setup/adminTasks.ts b/packages/smart-contracts/scripts-create2/contract-setup/adminTasks.ts index 0b108e548a..6f94045aa7 100644 --- a/packages/smart-contracts/scripts-create2/contract-setup/adminTasks.ts +++ b/packages/smart-contracts/scripts-create2/contract-setup/adminTasks.ts @@ -10,6 +10,7 @@ import { getCeloProvider, getDefaultProvider, } from '@requestnetwork/utils'; +import { CurrencyTypes } from '@requestnetwork/types'; // Fees: 0.5% export const REQUEST_SWAP_FEES = 5; @@ -28,7 +29,7 @@ const BATCH_FEE_AMOUNT_USD_LIMIT = parseUnits('150', 8); */ export const updateChainlinkConversionPath = async ( contract: any, - network: string, + network: CurrencyTypes.EvmChainName, txOverrides: Overrides, version?: string, ): Promise => { @@ -120,7 +121,7 @@ export const updateBatchPaymentFeeAmountUSDLimit = async ( */ export const updatePaymentFeeProxyAddress = async ( contract: any, - network: string, + network: CurrencyTypes.EvmChainName, txOverrides: Overrides, proxyType: 'native' | 'erc20', version?: string, @@ -153,7 +154,7 @@ export const updatePaymentFeeProxyAddress = async ( */ export const updateBatchConversionProxy = async ( contract: any, - network: string, + network: CurrencyTypes.EvmChainName, txOverrides: Overrides, proxyName: | 'native' diff --git a/packages/smart-contracts/scripts-create2/contract-setup/setupBatchConversionPayments.ts b/packages/smart-contracts/scripts-create2/contract-setup/setupBatchConversionPayments.ts index 66c025f360..48b6656928 100644 --- a/packages/smart-contracts/scripts-create2/contract-setup/setupBatchConversionPayments.ts +++ b/packages/smart-contracts/scripts-create2/contract-setup/setupBatchConversionPayments.ts @@ -1,14 +1,14 @@ import { batchConversionPaymentsArtifact } from '../../src/lib'; import { HardhatRuntimeEnvironmentExtended } from '../types'; import { - updateBatchPaymentFees, + getSignerAndGasFees, updateBatchConversionProxy, updateBatchPaymentFeeAmountUSDLimit, + updateBatchPaymentFees, updateNativeAndUSDAddress, - getSignerAndGasFees, } from './adminTasks'; -import { CurrencyManager } from '@requestnetwork/currency'; -import { RequestLogicTypes } from '@requestnetwork/types'; +import { CurrencyManager, EVM } from '@requestnetwork/currency'; +import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; /** * Updates the values of the batch fees of the BatchConversionPayments contract, if needed. @@ -27,7 +27,7 @@ export const setupBatchConversionPayments = async ( // constants related to chainlink and conversion rate const currencyManager = CurrencyManager.getDefault(); - const setUpActions = async (network: string) => { + const setUpActions = async (network: CurrencyTypes.EvmChainName) => { console.log(`Setup BatchConversionPayments on ${network}`); const NativeAddress = currencyManager.getNativeCurrency( @@ -79,11 +79,12 @@ export const setupBatchConversionPayments = async ( }; for (const network of hre.config.xdeploy.networks) { try { + EVM.assertChainSupported(network); await Promise.resolve(setUpActions(network)); } catch (err) { console.warn(`An error occurred during the setup of BatchConversion on ${network}`); console.warn(err); } } - console.log('Setup for setupBatchConversionPayment successfull'); + console.log('Setup for setupBatchConversionPayment successful'); }; diff --git a/packages/smart-contracts/scripts-create2/contract-setup/setupERC20SwapToConversion.ts b/packages/smart-contracts/scripts-create2/contract-setup/setupERC20SwapToConversion.ts index 5e8690c071..212658f4e3 100644 --- a/packages/smart-contracts/scripts-create2/contract-setup/setupERC20SwapToConversion.ts +++ b/packages/smart-contracts/scripts-create2/contract-setup/setupERC20SwapToConversion.ts @@ -6,6 +6,7 @@ import { updateRequestSwapFees, updateSwapRouter, } from './adminTasks'; +import { EVM } from '@requestnetwork/currency'; /** * Updates the values of the chainlinkConversionPath and swap router of the ERC20SwapToConversion contract, if needed @@ -24,6 +25,7 @@ export const setupERC20SwapToConversion = async ( await Promise.all( hre.config.xdeploy.networks.map(async (network) => { try { + EVM.assertChainSupported(network); const { signer, txOverrides } = await getSignerAndGasFees(network, hre); const ERC20SwapToConversionConnected = await ERC20SwapToConversionContract.connect(signer); diff --git a/packages/smart-contracts/scripts-create2/contract-setup/setupETHConversionProxy.ts b/packages/smart-contracts/scripts-create2/contract-setup/setupETHConversionProxy.ts index f61318f008..9717559465 100644 --- a/packages/smart-contracts/scripts-create2/contract-setup/setupETHConversionProxy.ts +++ b/packages/smart-contracts/scripts-create2/contract-setup/setupETHConversionProxy.ts @@ -1,4 +1,4 @@ -import { CurrencyManager } from '@requestnetwork/currency'; +import { CurrencyManager, EVM } from '@requestnetwork/currency'; import { RequestLogicTypes } from '@requestnetwork/types'; import { ethConversionArtifact } from '../../src/lib'; import { HardhatRuntimeEnvironmentExtended } from '../types'; @@ -26,6 +26,7 @@ export const setupETHConversionProxy = async ( await Promise.all( hre.config.xdeploy.networks.map(async (network) => { try { + EVM.assertChainSupported(network); const { signer, txOverrides } = await getSignerAndGasFees(network, hre); const nativeTokenHash = CurrencyManager.getDefault().getNativeCurrency( RequestLogicTypes.CURRENCY.ETH, diff --git a/packages/smart-contracts/scripts-create2/contract-setup/setupErc20ConversionProxy.ts b/packages/smart-contracts/scripts-create2/contract-setup/setupErc20ConversionProxy.ts index 59095e5f21..54b52d0623 100644 --- a/packages/smart-contracts/scripts-create2/contract-setup/setupErc20ConversionProxy.ts +++ b/packages/smart-contracts/scripts-create2/contract-setup/setupErc20ConversionProxy.ts @@ -5,6 +5,7 @@ import { updateChainlinkConversionPath, updatePaymentFeeProxyAddress, } from './adminTasks'; +import { EVM } from '@requestnetwork/currency'; const ERC20ConversionVersion = '0.1.2'; @@ -25,6 +26,7 @@ export const setupErc20ConversionProxy = async ( await Promise.all( hre.config.xdeploy.networks.map(async (network) => { try { + EVM.assertChainSupported(network); const { signer, txOverrides } = await getSignerAndGasFees(network, hre); const Erc20ConversionProxyConnected = Erc20ConversionProxyContract.connect(signer); await updatePaymentFeeProxyAddress( diff --git a/packages/smart-contracts/scripts-create2/deploy.ts b/packages/smart-contracts/scripts-create2/deploy.ts index 6ed99b521c..5e1fbc27f4 100644 --- a/packages/smart-contracts/scripts-create2/deploy.ts +++ b/packages/smart-contracts/scripts-create2/deploy.ts @@ -1,16 +1,16 @@ import { create2ContractDeploymentList, isContractDeployed } from './utils'; -import { IDeploymentParams } from './types'; -import { HardhatRuntimeEnvironmentExtended } from './types'; +import { HardhatRuntimeEnvironmentExtended, IDeploymentParams } from './types'; import { xdeploy } from './xdeployer'; import { getConstructorArgs } from './constructor-args'; import { + setupBatchConversionPayments, + setupChainlinkConversionPath, + setupErc20ConversionProxy, setupERC20SwapToConversion, setupERC20SwapToPay, - setupBatchConversionPayments, setupETHConversionProxy, - setupErc20ConversionProxy, - setupChainlinkConversionPath, } from './contract-setup'; +import { EVM } from '@requestnetwork/currency'; // Deploys, set up the contracts and returns the address export const deployOneWithCreate2 = async ( @@ -22,33 +22,27 @@ export const deployOneWithCreate2 = async ( } // Deploy the contract on several network through xdeployer const deploymentResult = await xdeploy(deploymentParams, hre); - for (let i = 0; i < hre.config.xdeploy.networks.length; i++) { + hre.config.xdeploy.networks.forEach((network, i) => { if (deploymentResult[i].deployed) { console.log(`${deploymentParams.contract} successfully deployed:`); - console.log(` On network: ${hre.config.xdeploy.networks[i]}`); + console.log(` On network: ${network}`); console.log(` At address: ${deploymentResult[i].address}`); console.log(` At block: ${deploymentResult[i].receipt.blockNumber}`); } else { - if ( - isContractDeployed( - deploymentParams.contract, - hre.config.xdeploy.networks[i], - deploymentResult[i].address, - ) - ) { + if (isContractDeployed(deploymentParams.contract, network, deploymentResult[i].address)) { console.log(`${deploymentParams.contract} already deployed:`); - console.log(` On network: ${hre.config.xdeploy.networks[i]}`); + console.log(` On network: ${network}`); console.log(` At address: ${deploymentResult[i].address}`); } else { console.log(`${deploymentParams.contract} has not been deployed:`); - console.log(` On network: ${hre.config.xdeploy.networks[i]}`); + console.log(` On network: ${network}`); console.log(` Error: ${deploymentResult[i].error}`); console.log( ` Hint: Check admin wallet balance and that your artifacts are up to date`, ); } } - } + }); return deploymentResult[0].address; }; @@ -96,12 +90,14 @@ export const deployWithCreate2FromList = async ( } case 'ERC20EscrowToPay': { const network = hre.config.xdeploy.networks[0]; + EVM.assertChainSupported(network); const constructorArgs = getConstructorArgs(contract, network); await deployOneWithCreate2({ contract, constructorArgs }, hre); break; } case 'BatchConversionPayments': { const network = hre.config.xdeploy.networks[0]; + EVM.assertChainSupported(network); const constructorArgs = getConstructorArgs(contract, network); const address = await deployOneWithCreate2({ contract, constructorArgs }, hre); await setupBatchConversionPayments(address, hre); diff --git a/packages/smart-contracts/scripts-create2/utils.ts b/packages/smart-contracts/scripts-create2/utils.ts index 8fad5f5132..dcfe61cebe 100644 --- a/packages/smart-contracts/scripts-create2/utils.ts +++ b/packages/smart-contracts/scripts-create2/utils.ts @@ -1,5 +1,6 @@ import { Contract } from 'ethers'; import * as artifacts from '../src/lib'; +import { EVM } from '@requestnetwork/currency'; /** * List of smart contract that we deploy using the CREATE2 scheme through the Request Deployer contract @@ -56,7 +57,7 @@ export const getArtifact = (contract: string): artifacts.ContractArtifact { - const contractArtifact = getArtifact(contract); - const addresses = contractArtifact.getAllAddresses(network); - return addresses.some((x) => x.address === computedAddress); + try { + EVM.assertChainSupported(network); + const contractArtifact = getArtifact(contract); + const addresses = contractArtifact.getAllAddresses(network); + return addresses.some((x) => x.address === computedAddress); + } catch (e) { + return false; + } }; diff --git a/packages/smart-contracts/scripts-create2/verify.ts b/packages/smart-contracts/scripts-create2/verify.ts index b12b8b8665..7a590e9698 100644 --- a/packages/smart-contracts/scripts-create2/verify.ts +++ b/packages/smart-contracts/scripts-create2/verify.ts @@ -1,8 +1,8 @@ import { computeCreate2DeploymentAddress } from './compute-one-address'; import { getConstructorArgs } from './constructor-args'; -import { HardhatRuntimeEnvironmentExtended } from './types'; -import { IDeploymentParams } from './types'; +import { HardhatRuntimeEnvironmentExtended, IDeploymentParams } from './types'; import { create2ContractDeploymentList } from './utils'; +import { EVM } from '@requestnetwork/currency'; export const verifyOne = async ( contractAddress: string, @@ -51,6 +51,7 @@ export async function VerifyCreate2FromList(hre: HardhatRuntimeEnvironmentExtend } case 'ERC20EscrowToPay': { const network = hre.config.xdeploy.networks[0]; + EVM.assertChainSupported(network); const constructorArgs = getConstructorArgs(contract, network); address = await computeCreate2DeploymentAddress({ contract, constructorArgs }, hre); await verifyOne(address, { contract, constructorArgs }, hre); @@ -58,6 +59,7 @@ export async function VerifyCreate2FromList(hre: HardhatRuntimeEnvironmentExtend } case 'BatchConversionPayments': { const network = hre.config.xdeploy.networks[0]; + EVM.assertChainSupported(network); const constructorArgs = getConstructorArgs(contract, network); address = await computeCreate2DeploymentAddress({ contract, constructorArgs }, hre); await verifyOne(address, { contract, constructorArgs }, hre); diff --git a/packages/smart-contracts/scripts/deploy-one.ts b/packages/smart-contracts/scripts/deploy-one.ts index 0f10e76267..5644b75d7e 100644 --- a/packages/smart-contracts/scripts/deploy-one.ts +++ b/packages/smart-contracts/scripts/deploy-one.ts @@ -2,6 +2,7 @@ import '@nomiclabs/hardhat-ethers'; import { HardhatRuntimeEnvironment } from 'hardhat/types'; import { Contract } from 'ethers'; import { ContractArtifact } from '../src/lib'; +import { EVM } from '@requestnetwork/currency'; export interface DeploymentResult { address: string; @@ -59,7 +60,9 @@ export async function deployOne( const constructorArguments = options?.constructorArguments ?? []; if (options?.artifact) { try { - address = options.artifact.getAddress(hre.network.name, options.version); + const chain = hre.network.name; + EVM.assertChainSupported(chain); + address = options.artifact.getAddress(chain, options.version); const action = args.force ? '(forcing deployment)' : '(skipping)'; console.log( `Found ${contractName}${options.version ? ` v${options.version}` : ''} on ${ diff --git a/packages/smart-contracts/scripts/test-deploy-batch-conversion-deployment.ts b/packages/smart-contracts/scripts/test-deploy-batch-conversion-deployment.ts index ce9bdd5368..77dfa7ca0f 100644 --- a/packages/smart-contracts/scripts/test-deploy-batch-conversion-deployment.ts +++ b/packages/smart-contracts/scripts/test-deploy-batch-conversion-deployment.ts @@ -5,13 +5,13 @@ import { deployOne } from './deploy-one'; import { batchConversionPaymentsArtifact, chainlinkConversionPath, + chainlinkConversionPath as chainlinkConvArtifact, erc20ConversionProxy, erc20FeeProxyArtifact, ethConversionArtifact, ethereumFeeProxyArtifact, } from '../src/lib'; -import { chainlinkConversionPath as chainlinkConvArtifact } from '../src/lib'; -import { CurrencyManager } from '@requestnetwork/currency'; +import { CurrencyManager, EVM } from '@requestnetwork/currency'; import { deployAddressChecking } from './utils'; import { BigNumber } from 'ethers'; import { PRECISION_RATE } from './test-deploy_chainlink_contract'; @@ -25,6 +25,8 @@ export async function deployBatchConversionPayment( ): Promise { try { console.log('Deploy BatchConversionPayments'); + const chain = hre.network.name; + EVM.assertChainSupported(chain); const _ERC20FeeProxyAddress = erc20FeeProxyArtifact.getAddress('private'); const _EthereumFeeProxyAddress = ethereumFeeProxyArtifact.getAddress('private'); const _paymentErc20ConversionFeeProxy = erc20ConversionProxy.getAddress('private'); @@ -75,7 +77,7 @@ export async function deployBatchConversionPayment( ); // Initialize batch conversion fee, useful to others packages. - const batchConversion = batchConversionPaymentsArtifact.connect(hre.network.name, owner); + const batchConversion = batchConversionPaymentsArtifact.connect(chain, owner); await batchConversion.connect(owner).setBatchFee(30); await batchConversion .connect(owner) diff --git a/packages/smart-contracts/scripts/test-deploy-batch-erc-eth-deployment.ts b/packages/smart-contracts/scripts/test-deploy-batch-erc-eth-deployment.ts index 96fa279ccf..32c26b0156 100644 --- a/packages/smart-contracts/scripts/test-deploy-batch-erc-eth-deployment.ts +++ b/packages/smart-contracts/scripts/test-deploy-batch-erc-eth-deployment.ts @@ -4,10 +4,13 @@ import { deployOne } from '../scripts/deploy-one'; import { batchPaymentsArtifact } from '../src/lib'; import { deployAddressChecking } from './utils'; +import { EVM } from '@requestnetwork/currency'; // Deploys, set up the contracts export async function deployBatchPayment(args: any, hre: HardhatRuntimeEnvironment): Promise { try { + const chain = hre.network.name; + EVM.assertChainSupported(chain); const ERC20FeeProxyAddress = '0x75c35C980C0d37ef46DF04d31A140b65503c0eEd'; const EthereumFeeProxyAddress = '0x3d49d1eF2adE060a33c6E6Aa213513A7EE9a6241'; @@ -22,7 +25,7 @@ export async function deployBatchPayment(args: any, hre: HardhatRuntimeEnvironme // Initialize batch fee, useful to others packages. const [owner] = await hre.ethers.getSigners(); - const batch = batchPaymentsArtifact.connect(hre.network.name, owner); + const batch = batchPaymentsArtifact.connect(chain, owner); await batch.connect(owner).setBatchFee(10); // ---------------------------------- diff --git a/packages/smart-contracts/src/lib/ContractArtifact.ts b/packages/smart-contracts/src/lib/ContractArtifact.ts index 453f3a5657..737aafb95e 100644 --- a/packages/smart-contracts/src/lib/ContractArtifact.ts +++ b/packages/smart-contracts/src/lib/ContractArtifact.ts @@ -21,7 +21,7 @@ export type ArtifactDeploymentInfo = { /** Deployment information and ABI per version and network */ export type ArtifactInfo< TVersion extends string = string, - TNetwork extends string = CurrencyTypes.NetworkName, + TNetwork extends string = CurrencyTypes.EvmChainName, > = Record>; export type DeploymentInformation = { @@ -49,7 +49,7 @@ export class ContractArtifact { * Returns an ethers contract instance for the given `networkName` */ connect( - networkName: CurrencyTypes.NetworkName, + networkName: CurrencyTypes.EvmChainName, signerOrProvider: Signer | providers.Provider, version: string = this.lastVersion, ): TContract { @@ -78,7 +78,7 @@ export class ContractArtifact { * @param networkName the name of the network where the contract is deployed * @returns the address of the deployed contract */ - getAddress(networkName: CurrencyTypes.NetworkName, version = this.lastVersion): string { + getAddress(networkName: CurrencyTypes.EvmChainName, version = this.lastVersion): string { return this.getDeploymentInformation(networkName, version).address; } @@ -88,7 +88,7 @@ export class ContractArtifact { * @returns the addresses of the deployed contract and the associated version. */ getAllAddresses( - networkName: CurrencyTypes.NetworkName, + networkName: CurrencyTypes.EvmChainName, ): { version: string; address: string | undefined }[] { const entries = Object.entries(this.info); return entries.map(([version, { deployment }]) => ({ @@ -104,7 +104,7 @@ export class ContractArtifact { * @returns the number of the block where the contract was deployed */ getCreationBlockNumber( - networkName: CurrencyTypes.NetworkName, + networkName: CurrencyTypes.EvmChainName, version = this.lastVersion, ): number { return this.getDeploymentInformation(networkName, version).creationBlockNumber; @@ -117,7 +117,7 @@ export class ContractArtifact { * @returns The address and the number of the creation block */ getDeploymentInformation( - networkName: CurrencyTypes.NetworkName, + networkName: CurrencyTypes.EvmChainName, version = this.lastVersion, ): DeploymentInformation { const versionInfo = this.info[version]; @@ -139,7 +139,7 @@ export class ContractArtifact { * @returns The address and the number of the creation block, or null if not found */ getOptionalDeploymentInformation( - networkName: CurrencyTypes.NetworkName, + networkName: CurrencyTypes.EvmChainName, version = this.lastVersion, ): DeploymentInformation | null { return this.info[version]?.deployment[networkName] || null; diff --git a/packages/types/src/currency-types.ts b/packages/types/src/currency-types.ts index 5e21eeacb1..27e2d1f2c7 100644 --- a/packages/types/src/currency-types.ts +++ b/packages/types/src/currency-types.ts @@ -1,9 +1,12 @@ /** - * List of supported network names + * List of supported EVM chains */ -export type NetworkName = +export type EvmChainName = + | 'alfajores' | 'arbitrum-one' | 'arbitrum-rinkeby' + | 'aurora' + | 'aurora-testnet' | 'avalanche' | 'bsc' | 'bsctest' @@ -15,9 +18,18 @@ export type NetworkName = | 'matic' | 'moonbeam' | 'mumbai' + | 'near-testnet' | 'optimism' | 'private' | 'rinkeby' | 'ronin' + | 'sokol' | 'tombchain' | 'xdai'; + +/** + * List of supported BTC chains + */ +export type BtcChainName = 'mainnet' | 'testnet'; + +export type ChainName = EvmChainName | BtcChainName; diff --git a/packages/types/src/extensions/pn-any-to-any-conversion-types.ts b/packages/types/src/extensions/pn-any-to-any-conversion-types.ts index abd5da04b3..93460d3f7d 100644 --- a/packages/types/src/extensions/pn-any-to-any-conversion-types.ts +++ b/packages/types/src/extensions/pn-any-to-any-conversion-types.ts @@ -1,4 +1,5 @@ import { PnFeeReferenceBased } from '../extension-types'; +import { ChainName } from '../currency-types'; export { IAddPaymentAddressParameters, IAddRefundAddressParameters, @@ -12,5 +13,5 @@ export type IConversionReferenceBased /** Parameters for the creation action */ export interface ICreationParameters extends PnFeeReferenceBased.ICreationParameters { maxRateTimespan?: number; - network?: string; + network?: ChainName; } diff --git a/packages/types/src/extensions/pn-any-to-erc20-types.ts b/packages/types/src/extensions/pn-any-to-erc20-types.ts index dbdbd96a9f..9a6c130252 100644 --- a/packages/types/src/extensions/pn-any-to-erc20-types.ts +++ b/packages/types/src/extensions/pn-any-to-erc20-types.ts @@ -1,10 +1,12 @@ import * as PnAnyToAnyConversion from './pn-any-to-any-conversion-types'; +import { ChainName } from '../currency-types'; /** Any to ERC20 reference-based payment network extension interface */ export type IAnyToERC20 = PnAnyToAnyConversion.IConversionReferenceBased; /** Parameters for the creation action */ export interface ICreationParameters extends PnAnyToAnyConversion.ICreationParameters { + network?: ChainName; // FIXME: should be mandatory according to AnyToErc20ProxyPaymentNetwork createCreationAction() logic acceptedTokens?: string[]; } diff --git a/packages/types/src/payment-types.ts b/packages/types/src/payment-types.ts index f36bf2382e..11a57fe625 100644 --- a/packages/types/src/payment-types.ts +++ b/packages/types/src/payment-types.ts @@ -3,6 +3,7 @@ import * as RequestLogic from './request-logic-types'; import * as ExtensionTypes from './extension-types'; import { ICreationParameters } from './extensions/pn-any-declarative-types'; import { ICreationParameters as ICreationParametersAnyToAny } from './extensions/pn-any-to-any-conversion-types'; +import { EvmChainName } from './currency-types'; /** Interface for payment network extensions state and interpretation */ export interface IPaymentNetwork { @@ -34,6 +35,7 @@ export interface IFeeReferenceBasedCreationParameters extends IReferenceBasedCre /** Parameters to create a request with "any to erc20" payment network */ export interface IAnyToErc20CreationParameters extends ICreationParametersAnyToAny { acceptedTokens?: string[]; + network?: EvmChainName; } /** diff --git a/packages/types/src/request-logic-types.ts b/packages/types/src/request-logic-types.ts index f008317f4d..008d3d7b7c 100644 --- a/packages/types/src/request-logic-types.ts +++ b/packages/types/src/request-logic-types.ts @@ -5,6 +5,7 @@ import * as Extension from './extension-types'; import * as Identity from './identity-types'; import * as Signature from './signature-types'; import * as Transaction from './transaction-types'; +import { CurrencyTypes } from './index'; /** Request Logic layer */ export interface IRequestLogic { @@ -254,7 +255,7 @@ export interface ICurrency { /** The currency value (e.g.: '0x123...789', 'EUR', 'ETH') */ value: string; /** The currency network (e.g.: 'mainnet', 'rinkeby', 'bank_sandbox') */ - network?: string; + network?: CurrencyTypes.ChainName; } /** Enum of name possible in a action */ diff --git a/packages/types/src/storage-types.ts b/packages/types/src/storage-types.ts index d4902f1fc2..29ebf5352a 100644 --- a/packages/types/src/storage-types.ts +++ b/packages/types/src/storage-types.ts @@ -144,15 +144,13 @@ export enum EthereumNetwork { MAINNET = 1, RINKEBY = 4, GOERLI = 5, - KOVAN = 42, - SOKOL = 77, XDAI = 100, } /** Information to connect to a web3 provider */ export interface IWeb3Connection { web3Provider?: any; - networkId?: EthereumNetwork; + networkId?: number; timeout?: number; } From 924a70e6109454607fa84a0551461948f4b8c81a Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Fri, 3 Feb 2023 16:19:09 +0100 Subject: [PATCH 11/50] fixes --- .../src/extensions/payment-network/address-based.ts | 8 ++++++-- packages/currency/src/chains/btc/index.ts | 10 +++++++--- packages/currency/src/chains/evm/fuse.ts | 3 --- packages/currency/src/chains/evm/index.ts | 10 +++++++--- packages/currency/src/chains/evm/mumbai.ts | 3 --- packages/currency/src/chains/index.ts | 12 ++++++++---- packages/integration-test/test/node-client.test.ts | 2 +- .../integration-test/test/scheduled/btc-test-data.ts | 4 ++-- .../test/scheduled/erc777-stream.test.ts | 8 ++++---- packages/integration-test/test/utils.ts | 11 ++++++++--- packages/request-client.js/src/api/request.ts | 9 +++++++-- .../src/http-metamask-data-access.ts | 4 ++-- packages/toolbox/src/chainlinkConversionPathTools.ts | 11 ++++++++--- .../toolbox/src/commands/chainlink/contractUtils.ts | 5 ++++- packages/toolbox/src/commands/hash/submit.ts | 3 +++ 15 files changed, 67 insertions(+), 36 deletions(-) diff --git a/packages/advanced-logic/src/extensions/payment-network/address-based.ts b/packages/advanced-logic/src/extensions/payment-network/address-based.ts index ae221793ce..96b43937df 100644 --- a/packages/advanced-logic/src/extensions/payment-network/address-based.ts +++ b/packages/advanced-logic/src/extensions/payment-network/address-based.ts @@ -1,8 +1,12 @@ import { CurrencyManager, UnsupportedCurrencyError } from '@requestnetwork/currency'; -import { ExtensionTypes, IdentityTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { + CurrencyTypes, + ExtensionTypes, + IdentityTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; import { areEqualIdentities, deepCopy } from '@requestnetwork/utils'; import DeclarativePaymentNetwork from './declarative'; -import { CurrencyTypes } from '@requestnetwork/types/src'; /** * Core of the address based payment networks diff --git a/packages/currency/src/chains/btc/index.ts b/packages/currency/src/chains/btc/index.ts index 3196bd5a5b..8b7a26a63e 100644 --- a/packages/currency/src/chains/btc/index.ts +++ b/packages/currency/src/chains/btc/index.ts @@ -15,10 +15,14 @@ export const chainNames = Object.keys(chains) as CurrencyTypes.BtcChainName[]; // add native currencies addNativeCurrenciesToChains(chains, RequestLogicTypes.CURRENCY.BTC); +/** + * Asserts if a specific chain is supported across BTC-type supported chains + * @param chainName + */ export function assertChainSupported( - chainKey: string, -): asserts chainKey is CurrencyTypes.BtcChainName { - genericAssertChainSupported(chainKey, chainNames); + chainName: string, +): asserts chainName is CurrencyTypes.BtcChainName { + genericAssertChainSupported(chainName, chainNames); } export const getChainId = (chainName: CurrencyTypes.BtcChainName): string => diff --git a/packages/currency/src/chains/evm/fuse.ts b/packages/currency/src/chains/evm/fuse.ts index 1451c27232..010d964245 100644 --- a/packages/currency/src/chains/evm/fuse.ts +++ b/packages/currency/src/chains/evm/fuse.ts @@ -1,4 +1 @@ -import { TokenMap } from '../../types'; - export const chainId = 122; -export const currencies: TokenMap = {}; diff --git a/packages/currency/src/chains/evm/index.ts b/packages/currency/src/chains/evm/index.ts index a20b986ede..a53f2c2caa 100644 --- a/packages/currency/src/chains/evm/index.ts +++ b/packages/currency/src/chains/evm/index.ts @@ -59,10 +59,14 @@ export const chainNames = Object.keys(chains) as CurrencyTypes.EvmChainName[]; // add native currencies addNativeCurrenciesToChains(chains, RequestLogicTypes.CURRENCY.ETH); +/** + * Asserts if a specific chain is supported across EVM-type supported chains + * @param chainName + */ export function assertChainSupported( - chainKey: string, -): asserts chainKey is CurrencyTypes.EvmChainName { - genericAssertChainSupported(chainKey, chainNames); + chainName: string, +): asserts chainName is CurrencyTypes.EvmChainName { + genericAssertChainSupported(chainName, chainNames); } export const getChainId = (chainName: CurrencyTypes.EvmChainName): number => diff --git a/packages/currency/src/chains/evm/mumbai.ts b/packages/currency/src/chains/evm/mumbai.ts index bff6513b89..4e2cf0f738 100644 --- a/packages/currency/src/chains/evm/mumbai.ts +++ b/packages/currency/src/chains/evm/mumbai.ts @@ -1,4 +1 @@ -import { TokenMap } from '../../types'; - export const chainId = 80001; -export const currencies: TokenMap = {}; diff --git a/packages/currency/src/chains/index.ts b/packages/currency/src/chains/index.ts index b2ef20cff7..2befccfbbc 100644 --- a/packages/currency/src/chains/index.ts +++ b/packages/currency/src/chains/index.ts @@ -2,19 +2,23 @@ import { CurrencyTypes } from '@requestnetwork/types'; import * as EVM from './evm'; import * as BTC from './btc'; +/** + * Asserts if a specific chain is supported across all supported chain types (EVM + BTC) + * @param chainName + */ export function assertChainSupported( - chainKey: string, -): asserts chainKey is CurrencyTypes.EvmChainName { + chainName: string, +): asserts chainName is CurrencyTypes.EvmChainName { const chainSupported = [EVM, BTC].some((chainType) => { try { - chainType.assertChainSupported(chainKey); + chainType.assertChainSupported(chainName); return true; } catch (e) { return false; } }); if (!chainSupported) { - throw new Error(`Unsupported chain ${chainKey}`); + throw new Error(`Unsupported chain ${chainName}`); } } diff --git a/packages/integration-test/test/node-client.test.ts b/packages/integration-test/test/node-client.test.ts index 41a1ae5283..a070ea72be 100644 --- a/packages/integration-test/test/node-client.test.ts +++ b/packages/integration-test/test/node-client.test.ts @@ -541,7 +541,7 @@ describe('ERC20 localhost request creation and detection test', () => { it.only('can create ERC20 requests with any to erc20 proxy', async () => { const tokenContractAddress = '0x38cF23C52Bb4B13F051Aec09580a2dE845a7FA35'; - const currencies = [ + const currencies: CurrencyInput[] = [ ...CurrencyManager.getDefaultList(), { address: tokenContractAddress, diff --git a/packages/integration-test/test/scheduled/btc-test-data.ts b/packages/integration-test/test/scheduled/btc-test-data.ts index 24a89eacab..f4bcd52806 100644 --- a/packages/integration-test/test/scheduled/btc-test-data.ts +++ b/packages/integration-test/test/scheduled/btc-test-data.ts @@ -24,7 +24,7 @@ export const payer = { }, }; -export const testnetRequestData = { +export const testnetRequestData: RequestLogicTypes.ICreateParameters = { currency: { network: 'testnet', type: RequestLogicTypes.CURRENCY.BTC, @@ -36,7 +36,7 @@ export const testnetRequestData = { timestamp: arbitraryTimestamp, }; -export const requestData = { +export const requestData: RequestLogicTypes.ICreateParameters = { currency: { type: RequestLogicTypes.CURRENCY.BTC, value: 'BTC', diff --git a/packages/integration-test/test/scheduled/erc777-stream.test.ts b/packages/integration-test/test/scheduled/erc777-stream.test.ts index aca5430701..a57d187432 100644 --- a/packages/integration-test/test/scheduled/erc777-stream.test.ts +++ b/packages/integration-test/test/scheduled/erc777-stream.test.ts @@ -1,5 +1,6 @@ import { SuperFluidPaymentDetector } from '@requestnetwork/payment-detection'; import { + CurrencyTypes, ExtensionTypes, IdentityTypes, PaymentTypes, @@ -15,10 +16,9 @@ const createMockRequest = ({ paymentAddress, salt, requestId, -}: Record< - 'network' | 'tokenAddress' | 'paymentAddress' | 'salt' | 'requestId', - string ->): RequestLogicTypes.IRequest => ({ +}: Record<'tokenAddress' | 'paymentAddress' | 'salt' | 'requestId', string> & { + network: CurrencyTypes.EvmChainName; +}): RequestLogicTypes.IRequest => ({ creator: { type: IdentityTypes.TYPE.ETHEREUM_ADDRESS, value: '0x2' }, currency: { network, diff --git a/packages/integration-test/test/utils.ts b/packages/integration-test/test/utils.ts index 509e5a80d1..508fec8fb7 100644 --- a/packages/integration-test/test/utils.ts +++ b/packages/integration-test/test/utils.ts @@ -1,4 +1,9 @@ -import { ExtensionTypes, IdentityTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { + CurrencyTypes, + ExtensionTypes, + IdentityTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; export const createMockErc20FeeRequest = ({ network, @@ -9,9 +14,9 @@ export const createMockErc20FeeRequest = ({ feeAddress, feeAmount, }: Record< - 'network' | 'tokenAddress' | 'paymentAddress' | 'salt' | 'requestId' | 'feeAddress' | 'feeAmount', + 'tokenAddress' | 'paymentAddress' | 'salt' | 'requestId' | 'feeAddress' | 'feeAmount', string ->): RequestLogicTypes.IRequest => ({ +> & { network: CurrencyTypes.EvmChainName }): RequestLogicTypes.IRequest => ({ creator: { type: IdentityTypes.TYPE.ETHEREUM_ADDRESS, value: '0x2' }, currency: { network, diff --git a/packages/request-client.js/src/api/request.ts b/packages/request-client.js/src/api/request.ts index 9d236811b5..66fce5e211 100644 --- a/packages/request-client.js/src/api/request.ts +++ b/packages/request-client.js/src/api/request.ts @@ -3,7 +3,12 @@ import { DeclarativePaymentDetector, EscrowERC20InfoRetriever, } from '@requestnetwork/payment-detection'; -import { IdentityTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { + CurrencyTypes, + IdentityTypes, + PaymentTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; import { ICurrencyManager } from '@requestnetwork/currency'; import * as Types from '../types'; import ContentDataExtension from './content-data-extension'; @@ -653,7 +658,7 @@ export default class Request { public async getEscrowData( paymentReference: string, - network: string, + network: CurrencyTypes.EvmChainName, ): Promise { const escrowContractAddress = erc20EscrowToPayArtifact.getAddress(network); const escrowInfoRetriever = new EscrowERC20InfoRetriever( diff --git a/packages/request-client.js/src/http-metamask-data-access.ts b/packages/request-client.js/src/http-metamask-data-access.ts index ca27f67cfb..bd60090e04 100644 --- a/packages/request-client.js/src/http-metamask-data-access.ts +++ b/packages/request-client.js/src/http-metamask-data-access.ts @@ -1,6 +1,6 @@ import { Block } from '@requestnetwork/data-access'; import { requestHashSubmitterArtifact } from '@requestnetwork/smart-contracts'; -import { ClientTypes, DataAccessTypes, StorageTypes } from '@requestnetwork/types'; +import { ClientTypes, CurrencyTypes, DataAccessTypes, StorageTypes } from '@requestnetwork/types'; import axios, { AxiosRequestConfig } from 'axios'; import { ethers } from 'ethers'; import { EventEmitter } from 'events'; @@ -23,7 +23,7 @@ export default class HttpMetaMaskDataAccess extends HttpDataAccess { private submitterContract: ethers.Contract | undefined; private provider: ethers.providers.JsonRpcProvider | ethers.providers.Web3Provider; - private networkName = ''; + private networkName: CurrencyTypes.EvmChainName = 'private'; /** * Creates an instance of HttpDataAccess. diff --git a/packages/toolbox/src/chainlinkConversionPathTools.ts b/packages/toolbox/src/chainlinkConversionPathTools.ts index b92a3ea419..b7eea9090c 100644 --- a/packages/toolbox/src/chainlinkConversionPathTools.ts +++ b/packages/toolbox/src/chainlinkConversionPathTools.ts @@ -5,10 +5,11 @@ import { ChainlinkConversionPath__factory, ChainlinkConversionPath, } from '@requestnetwork/smart-contracts/types'; -import { CurrencyManager, UnsupportedCurrencyError } from '@requestnetwork/currency'; +import { CurrencyManager, UnsupportedCurrencyError, EVM } from '@requestnetwork/currency'; import Bluebird from 'bluebird'; import chunk from 'lodash/chunk'; import { retry } from '@requestnetwork/utils'; +import { CurrencyTypes } from '@requestnetwork/types'; export interface IOptions { network?: string; @@ -37,7 +38,7 @@ class ChainlinkConversionPathTools { * @param network The Ethereum network to use */ constructor( - private network: string, + private network: CurrencyTypes.EvmChainName, options?: { web3Url?: string; lastBlock?: number; maxRange?: number }, ) { const web3Url = @@ -142,7 +143,11 @@ const getCurrency = (symbol: string) => { }; export const listAggregators = async (options?: IOptions): Promise => { - const networks = options?.network ? [options.network] : ['private', 'rinkeby', 'mainnet']; + let networks: CurrencyTypes.EvmChainName[] = ['private', 'rinkeby', 'mainnet']; + if (options?.network) { + EVM.assertChainSupported(options.network); + networks = [options.network]; + } // Create an Object to be used by a dijkstra algorithm to find the best path between two currencies const allAggregators: Record>> = {}; diff --git a/packages/toolbox/src/commands/chainlink/contractUtils.ts b/packages/toolbox/src/commands/chainlink/contractUtils.ts index 9edf6e5a08..ef8e130aad 100644 --- a/packages/toolbox/src/commands/chainlink/contractUtils.ts +++ b/packages/toolbox/src/commands/chainlink/contractUtils.ts @@ -4,6 +4,7 @@ import { getDefaultProvider } from '@requestnetwork/payment-detection'; import { chainlinkConversionPath } from '@requestnetwork/smart-contracts'; import { GasFeeDefiner } from '@requestnetwork/ethereum-storage'; import { ChainlinkConversionPath } from '@requestnetwork/smart-contracts/types'; +import { EVM } from '@requestnetwork/currency'; export const runUpdate = async ( method: T, @@ -73,6 +74,8 @@ const connectChainlinkContracts = ({ dryRun, network, }: SharedOptions): ChainlinkContractWithVersion[] => { + EVM.assertChainSupported(network); + const provider = getDefaultProvider(network); const wallet = privateKey @@ -94,7 +97,7 @@ const connectChainlinkContracts = ({ return versions.map((version) => { return { version, - contract: chainlinkConversionPath.connect(network, wallet as any, version) as any, // TODO} + contract: chainlinkConversionPath.connect(network, wallet as any, version) as any, // TODO }; }); }; diff --git a/packages/toolbox/src/commands/hash/submit.ts b/packages/toolbox/src/commands/hash/submit.ts index 2005788730..85ac644967 100644 --- a/packages/toolbox/src/commands/hash/submit.ts +++ b/packages/toolbox/src/commands/hash/submit.ts @@ -6,6 +6,7 @@ import yargs from 'yargs'; import { getWallet } from '../transaction/utils'; import { EthereumTransactionSubmitter, IpfsStorage } from '@requestnetwork/ethereum-storage'; import { StorageTypes } from '@requestnetwork/types'; +import { EVM } from '@requestnetwork/currency'; export const command = 'hash submit '; export const describe = 'Forces the submission of an IPFS hash to the Request HashStorage contract'; @@ -17,6 +18,8 @@ export const builder = (y: yargs.Argv) => .option('dryRun', { type: 'boolean', default: false }); export const handler = async (argv: yargs.Arguments>>) => { + EVM.assertChainSupported(argv.chainName); + const wallet = await getWallet({ chainName: argv.chainName, dryRun: argv.dryRun }); const ipfsStorage = new IpfsStorage({ ipfsGatewayConnection: { From bae483032d22007eadfb5ebac292034b94723bb9 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Fri, 3 Feb 2023 16:34:06 +0100 Subject: [PATCH 12/50] fix ERC20 order --- packages/currency/src/erc20/chains/index.ts | 16 +-- .../currency/test/currencyManager.test.ts | 104 ++++++++++-------- 2 files changed, 64 insertions(+), 56 deletions(-) diff --git a/packages/currency/src/erc20/chains/index.ts b/packages/currency/src/erc20/chains/index.ts index 585a97ce9c..221e8f53ed 100644 --- a/packages/currency/src/erc20/chains/index.ts +++ b/packages/currency/src/erc20/chains/index.ts @@ -15,17 +15,17 @@ import { supportedRinkebyERC20 } from './rinkeby'; import { supportedXDAIERC20 } from './xdai'; export const supportedNetworks: Partial> = { - avalanche: supportedAvalancheERC20, - bsc: supportedBSCERC20, - bsctest: supportedBSCTestERC20, celo: supportedCeloERC20, - fantom: supportedFantomTokens, + // FIXME: Rinkeby is deprecated + rinkeby: supportedRinkebyERC20, goerli: supportedGoerliERC20, mainnet: supportedMainnetERC20, matic: supportedMaticERC20, - moonbeam: supportedMoonbeamERC20, - optimism: supportedOptimismERC20, - // FIXME: Rinkeby is deprecated - rinkeby: supportedRinkebyERC20, + fantom: supportedFantomTokens, + bsctest: supportedBSCTestERC20, + bsc: supportedBSCERC20, xdai: supportedXDAIERC20, + avalanche: supportedAvalancheERC20, + optimism: supportedOptimismERC20, + moonbeam: supportedMoonbeamERC20, }; diff --git a/packages/currency/test/currencyManager.test.ts b/packages/currency/test/currencyManager.test.ts index a81e04d989..aa94468dc6 100644 --- a/packages/currency/test/currencyManager.test.ts +++ b/packages/currency/test/currencyManager.test.ts @@ -1,5 +1,11 @@ import { RequestLogicTypes } from '@requestnetwork/types'; -import { CurrencyInput, CurrencyDefinition, CurrencyManager, ERC20Currency } from '../src'; +import { + CurrencyInput, + CurrencyDefinition, + CurrencyManager, + ERC20Currency, + StorageCurrency, +} from '../src'; const testCasesPerNetwork: Record>> = { mainnet: { @@ -111,7 +117,7 @@ describe('CurrencyManager', () => { it('can instantiate a currency manager based on a currency list', () => { const list: CurrencyInput[] = [ - { type: RequestLogicTypes.CURRENCY.ETH, decimals: 18, network: 'anything', symbol: 'ANY' }, + { type: RequestLogicTypes.CURRENCY.ETH, decimals: 18, network: 'mainnet', symbol: 'ANY' }, ]; currencyManager = new CurrencyManager(list); expect(currencyManager.from('ANY')).toBeDefined(); @@ -592,63 +598,64 @@ describe('CurrencyManager', () => { }); describe('Validate currencies', () => { - describe('Valid cases', () => { - it.each([ - { - currency: { - type: RequestLogicTypes.CURRENCY.ISO4217, - value: 'FIAT', - }, - label: 'ISO4217 Currency', + const currencies: { currency: StorageCurrency; label: string }[] = [ + { + currency: { + type: RequestLogicTypes.CURRENCY.ISO4217, + value: 'FIAT', }, - { - currency: { - type: RequestLogicTypes.CURRENCY.ETH, - value: 'ETH', - network: 'matic', - }, - label: 'native currency', + label: 'ISO4217 Currency', + }, + { + currency: { + type: RequestLogicTypes.CURRENCY.ETH, + value: 'ETH', + network: 'matic', }, - { - currency: { - type: RequestLogicTypes.CURRENCY.BTC, - value: 'BTC', - network: 'mainnet', - }, - label: 'Bitcoin currency', + label: 'native currency', + }, + { + currency: { + type: RequestLogicTypes.CURRENCY.BTC, + value: 'BTC', + network: 'mainnet', }, - { - currency: { - type: RequestLogicTypes.CURRENCY.ERC20, - value: '0x52908400098527886E0F7030069857D2E4169EE7', - network: 'optimism', - }, - label: 'ERC20 Currency - evm', + label: 'Bitcoin currency', + }, + { + currency: { + type: RequestLogicTypes.CURRENCY.ERC20, + value: '0x52908400098527886E0F7030069857D2E4169EE7', + network: 'optimism', }, - { - currency: { - type: RequestLogicTypes.CURRENCY.ERC20, - value: 'usdc.near', - network: 'aurora', - }, - label: 'ERC20 currency - near', + label: 'ERC20 Currency - evm', + }, + { + currency: { + type: RequestLogicTypes.CURRENCY.ERC20, + value: 'usdc.near', + network: 'aurora', }, - { - currency: { - type: RequestLogicTypes.CURRENCY.ERC777, - value: '0x52908400098527886E0F7030069857D2E4169EE7', - network: 'avalanche', - }, - label: 'ERC777 currency', + label: 'ERC20 currency - near', + }, + { + currency: { + type: RequestLogicTypes.CURRENCY.ERC777, + value: '0x52908400098527886E0F7030069857D2E4169EE7', + network: 'avalanche', }, - ])('Should validate $label', ({ currency }) => { + label: 'ERC777 currency', + }, + ]; + describe('Valid cases', () => { + it.each(currencies)('Should validate $label', ({ currency }) => { const result = CurrencyManager.validateCurrency(currency); expect(result).toBe(true); }); }); describe('Invalid cases', () => { - it.each([ + const currencies: { currency: StorageCurrency; label: string }[] = [ { currency: { type: RequestLogicTypes.CURRENCY.ERC20, @@ -673,7 +680,8 @@ describe('CurrencyManager', () => { }, label: 'ERC777 currency', }, - ])('Should not validate an invalid $label', ({ currency }) => { + ]; + it.each(currencies)('Should not validate an invalid $label', ({ currency }) => { const result = CurrencyManager.validateCurrency(currency); expect(result).toBe(false); }); From e7ecfb96317b972cf1dc58a3fdd1ac3c03150087 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Fri, 3 Feb 2023 16:48:33 +0100 Subject: [PATCH 13/50] fix indentation --- packages/currency/src/types.ts | 2 +- .../currency/test/currencyManager.test.ts | 88 +++++++++---------- 2 files changed, 45 insertions(+), 45 deletions(-) diff --git a/packages/currency/src/types.ts b/packages/currency/src/types.ts index 9eac8ad154..459b1cb1ce 100644 --- a/packages/currency/src/types.ts +++ b/packages/currency/src/types.ts @@ -25,7 +25,7 @@ type NamedCurrency = { name: string }; export type NativeCurrency = { symbol: string; decimals: number; - network: CurrencyTypes.EvmChainName | CurrencyTypes.BtcChainName; + network: CurrencyTypes.ChainName; }; export type NamedNativeCurrency = NativeCurrency & NamedCurrency; diff --git a/packages/currency/test/currencyManager.test.ts b/packages/currency/test/currencyManager.test.ts index aa94468dc6..31a9d6c282 100644 --- a/packages/currency/test/currencyManager.test.ts +++ b/packages/currency/test/currencyManager.test.ts @@ -598,56 +598,56 @@ describe('CurrencyManager', () => { }); describe('Validate currencies', () => { - const currencies: { currency: StorageCurrency; label: string }[] = [ - { - currency: { - type: RequestLogicTypes.CURRENCY.ISO4217, - value: 'FIAT', + describe('Valid cases', () => { + const currencies: { currency: StorageCurrency; label: string }[] = [ + { + currency: { + type: RequestLogicTypes.CURRENCY.ISO4217, + value: 'FIAT', + }, + label: 'ISO4217 Currency', }, - label: 'ISO4217 Currency', - }, - { - currency: { - type: RequestLogicTypes.CURRENCY.ETH, - value: 'ETH', - network: 'matic', + { + currency: { + type: RequestLogicTypes.CURRENCY.ETH, + value: 'ETH', + network: 'matic', + }, + label: 'native currency', }, - label: 'native currency', - }, - { - currency: { - type: RequestLogicTypes.CURRENCY.BTC, - value: 'BTC', - network: 'mainnet', + { + currency: { + type: RequestLogicTypes.CURRENCY.BTC, + value: 'BTC', + network: 'mainnet', + }, + label: 'Bitcoin currency', }, - label: 'Bitcoin currency', - }, - { - currency: { - type: RequestLogicTypes.CURRENCY.ERC20, - value: '0x52908400098527886E0F7030069857D2E4169EE7', - network: 'optimism', + { + currency: { + type: RequestLogicTypes.CURRENCY.ERC20, + value: '0x52908400098527886E0F7030069857D2E4169EE7', + network: 'optimism', + }, + label: 'ERC20 Currency - evm', }, - label: 'ERC20 Currency - evm', - }, - { - currency: { - type: RequestLogicTypes.CURRENCY.ERC20, - value: 'usdc.near', - network: 'aurora', + { + currency: { + type: RequestLogicTypes.CURRENCY.ERC20, + value: 'usdc.near', + network: 'aurora', + }, + label: 'ERC20 currency - near', }, - label: 'ERC20 currency - near', - }, - { - currency: { - type: RequestLogicTypes.CURRENCY.ERC777, - value: '0x52908400098527886E0F7030069857D2E4169EE7', - network: 'avalanche', + { + currency: { + type: RequestLogicTypes.CURRENCY.ERC777, + value: '0x52908400098527886E0F7030069857D2E4169EE7', + network: 'avalanche', + }, + label: 'ERC777 currency', }, - label: 'ERC777 currency', - }, - ]; - describe('Valid cases', () => { + ]; it.each(currencies)('Should validate $label', ({ currency }) => { const result = CurrencyManager.validateCurrency(currency); expect(result).toBe(true); From 87713899cb54b547a92fc7bb5fe6e81a78e76af0 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Fri, 3 Feb 2023 18:14:09 +0100 Subject: [PATCH 14/50] fix tests --- .../payment-network/any-to-near.test.ts | 6 +++--- .../test/smartcontract-manager.test.ts | 14 ++++++++----- .../any/any-to-erc20-proxy-contract.test.ts | 6 +++--- .../test/erc20/address-based.test.ts | 2 +- .../erc20/thegraph-info-retriever.test.ts | 6 +++--- .../test/erc777/superfluid-detector.test.ts | 3 ++- .../payment/any-to-erc20-batch-proxy.test.ts | 20 ++++++++++--------- .../test/payment/any-to-erc20-proxy.test.ts | 10 ++++++---- .../test/payment/any-to-eth-proxy.test.ts | 5 ++--- .../test/payment/any-to-near.test.ts | 3 +-- .../test/payment/btc-address-based.test.ts | 2 +- .../test/payment/encoder-approval.test.ts | 15 +++++++------- .../test/payment/encoder-payment.test.ts | 12 ++++++----- .../test/payment/encoder.test.ts | 12 +++++++---- .../test/payment/erc20-batch-proxy.test.ts | 15 +++++++------- .../test/payment/erc20-escrow-payment.test.ts | 11 ++++++---- .../test/payment/erc20-fee-proxy.test.ts | 10 ++++++---- .../test/payment/erc20-proxy.test.ts | 3 ++- .../test/payment/erc20.test.ts | 6 +++--- .../test/payment/erc777-stream.test.ts | 3 ++- .../test/payment/eth-batch-proxy.test.ts | 3 ++- .../test/payment/eth-fee-proxy.test.ts | 5 +++-- .../test/payment/eth-input-data.test.ts | 3 ++- .../test/payment/eth-proxy.test.ts | 3 ++- .../test/payment/index.test.ts | 4 ++-- .../test/payment/swap-any-to-erc20.test.ts | 2 +- .../test/payment/swap-erc20-fee-proxy.test.ts | 11 +++++++--- packages/request-client.js/test/index.test.ts | 8 ++++---- .../contracts/BatchConversionPayments.test.ts | 4 +++- 29 files changed, 120 insertions(+), 87 deletions(-) diff --git a/packages/advanced-logic/test/extensions/payment-network/any-to-near.test.ts b/packages/advanced-logic/test/extensions/payment-network/any-to-near.test.ts index b9e099d1ce..28ff4984a3 100644 --- a/packages/advanced-logic/test/extensions/payment-network/any-to-near.test.ts +++ b/packages/advanced-logic/test/extensions/payment-network/any-to-near.test.ts @@ -8,7 +8,7 @@ import { } from '../../utils/payment-network/any/generator-data-create'; import { AdvancedLogic } from '../../../src'; import { arbitraryTimestamp, payeeRaw, payerRaw } from '../../utils/test-data-generator'; -import { ExtensionTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { CurrencyTypes, ExtensionTypes, RequestLogicTypes } from '@requestnetwork/types'; import AnyToNearPaymentNetwork from '../../../src/extensions/payment-network/near/any-to-near'; import AnyToNativeTokenPaymentNetwork from '../../../src/extensions/payment-network/any-to-native'; import { CurrencyManager } from '@requestnetwork/currency'; @@ -52,7 +52,7 @@ describe('extensions/payment-network/any-to-native-token', () => { maxRateTimespan: 100000, feeAmount: '100', }, - ]; + ] as const; anyToNativeTokenTestCases.forEach((testCase) => { describe(`action creations for ${testCase.name}`, () => { @@ -184,7 +184,7 @@ describe('extensions/payment-network/any-to-native-token', () => { expect(() => { new AnyToNearPaymentNetwork(currencyManager).createCreationAction({ ...partialCreationParams, - network: 'another-chain', + network: 'another-chain' as CurrencyTypes.EvmChainName, }); }).toThrowError( `Payment network 'another-chain' is not supported by this extension (only aurora)`, diff --git a/packages/ethereum-storage/test/smartcontract-manager.test.ts b/packages/ethereum-storage/test/smartcontract-manager.test.ts index 1504e49186..e7cbc99d08 100644 --- a/packages/ethereum-storage/test/smartcontract-manager.test.ts +++ b/packages/ethereum-storage/test/smartcontract-manager.test.ts @@ -1,5 +1,5 @@ import * as SmartContracts from '@requestnetwork/smart-contracts'; -import { StorageTypes } from '@requestnetwork/types'; +import { CurrencyTypes, StorageTypes } from '@requestnetwork/types'; import EthereumBlocks from '../src/ethereum-blocks'; import SmartContractManager from '../src/smart-contract-manager'; @@ -412,14 +412,18 @@ describe('SmartContractManager', () => { }); it('getAddress in artifactsRequestHashStorageUtils with a invalid host network should throw an error', () => { - expect(() => SmartContracts.requestHashStorageArtifact.getAddress('nonexistent')).toThrowError( - 'No deployment for network', - ); + expect(() => + SmartContracts.requestHashStorageArtifact.getAddress( + 'nonexistent' as CurrencyTypes.EvmChainName, + ), + ).toThrowError('No deployment for network'); }); it('getAddress in artifactsRequestHashSubmitterUtils with a invalid host network should throw an error', () => { expect(() => - SmartContracts.requestHashSubmitterArtifact.getAddress('nonexistent'), + SmartContracts.requestHashSubmitterArtifact.getAddress( + 'nonexistent' as CurrencyTypes.EvmChainName, + ), ).toThrowError('No deployment for network'); }); diff --git a/packages/payment-detection/test/any/any-to-erc20-proxy-contract.test.ts b/packages/payment-detection/test/any/any-to-erc20-proxy-contract.test.ts index 28578a80da..e686d1008b 100644 --- a/packages/payment-detection/test/any/any-to-erc20-proxy-contract.test.ts +++ b/packages/payment-detection/test/any/any-to-erc20-proxy-contract.test.ts @@ -1,6 +1,7 @@ import { ethers } from 'ethers'; import { AdvancedLogicTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, PaymentTypes, @@ -8,8 +9,7 @@ import { } from '@requestnetwork/types'; import { CurrencyManager } from '@requestnetwork/currency'; import { ERC20__factory } from '@requestnetwork/smart-contracts/types'; -import { AnyToERC20PaymentDetector } from '../../src/any/any-to-erc20-proxy'; -import { getTheGraphClient } from '../../src/thegraph'; +import { AnyToERC20PaymentDetector, getTheGraphClient } from '../../src'; import { mocked } from 'ts-jest/utils'; import { mockAdvancedLogicBase } from '../utils'; @@ -55,7 +55,7 @@ describe('api/any/conversion-fee-proxy-contract', () => { jest.clearAllMocks(); }); - const testSuite = (network: string) => { + const testSuite = (network: CurrencyTypes.EvmChainName) => { it(`can createExtensionsDataForCreation on ${network}`, async () => { await anyToErc20Proxy.createExtensionsDataForCreation({ paymentAddress: 'ethereum address', diff --git a/packages/payment-detection/test/erc20/address-based.test.ts b/packages/payment-detection/test/erc20/address-based.test.ts index 5ec4070b6f..17e96378b9 100644 --- a/packages/payment-detection/test/erc20/address-based.test.ts +++ b/packages/payment-detection/test/erc20/address-based.test.ts @@ -118,7 +118,7 @@ describe('api/erc20/address-based', () => { await expect( erc20AddressedBased.getBalance({ currency: { network: 'wrong' }, - } as RequestLogicTypes.IRequest), + } as unknown as RequestLogicTypes.IRequest), ).resolves.not.toThrowError(); }); }); diff --git a/packages/payment-detection/test/erc20/thegraph-info-retriever.test.ts b/packages/payment-detection/test/erc20/thegraph-info-retriever.test.ts index 2d72749750..97f96fe8fa 100644 --- a/packages/payment-detection/test/erc20/thegraph-info-retriever.test.ts +++ b/packages/payment-detection/test/erc20/thegraph-info-retriever.test.ts @@ -1,5 +1,5 @@ /* eslint-disable @typescript-eslint/no-unused-expressions */ -import { TheGraphInfoRetriever, TheGraphClient } from '../../src/thegraph'; +import { TheGraphClient, TheGraphInfoRetriever } from '../../src/thegraph'; import PaymentReferenceCalculator from '../../src/payment-reference-calculator'; import { utils } from 'ethers'; import { PaymentTypes } from '@requestnetwork/types'; @@ -68,7 +68,7 @@ describe('api/erc20/thegraph-info-retriever', () => { block: 9606098, feeAddress: '0x5000EE9FB9c96A2A09D8efB695aC21D6C429fF11', feeAmount: '0', - }; + } as const; const paymentReference = PaymentReferenceCalculator.calculate( paymentData.requestId, paymentData.salt, @@ -107,7 +107,7 @@ describe('api/erc20/thegraph-info-retriever', () => { amount: '7000', block: 9610470, requestId: '0188791633ff0ec72a7dbdefb886d2db6cccfa98287320839c2f173c7a4e3ce7e1', - }; + } as const; const shortReference = PaymentReferenceCalculator.calculate( paymentData.requestId, diff --git a/packages/payment-detection/test/erc777/superfluid-detector.test.ts b/packages/payment-detection/test/erc777/superfluid-detector.test.ts index 5bc8a7b6da..33238f026e 100644 --- a/packages/payment-detection/test/erc777/superfluid-detector.test.ts +++ b/packages/payment-detection/test/erc777/superfluid-detector.test.ts @@ -1,5 +1,6 @@ import { AdvancedLogicTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, RequestLogicTypes, @@ -35,7 +36,7 @@ const mockAdvancedLogic: AdvancedLogicTypes.IAdvancedLogic = { const baseRequestData = { creator: { type: IdentityTypes.TYPE.ETHEREUM_ADDRESS, value: '0x2' }, currency: { - network: 'private', + network: 'private' as CurrencyTypes.EvmChainName, type: RequestLogicTypes.CURRENCY.ERC20, value: '0x9FBDa871d559710256a2502A2517b794B482Db40', // local ERC20 token }, diff --git a/packages/payment-processor/test/payment/any-to-erc20-batch-proxy.test.ts b/packages/payment-processor/test/payment/any-to-erc20-batch-proxy.test.ts index 14e5216031..2215c08d29 100644 --- a/packages/payment-processor/test/payment/any-to-erc20-batch-proxy.test.ts +++ b/packages/payment-processor/test/payment/any-to-erc20-batch-proxy.test.ts @@ -1,4 +1,4 @@ -import { Wallet, providers, BigNumber } from 'ethers'; +import { BigNumber, providers, Wallet } from 'ethers'; import { ClientTypes, @@ -6,19 +6,21 @@ import { IdentityTypes, RequestLogicTypes, } from '@requestnetwork/types'; -import { getErc20Balance } from '../../src/payment/erc20'; -import { deepCopy } from '@requestnetwork/utils'; -import { revokeErc20Approval } from '@requestnetwork/payment-processor/src/payment/utils'; -import { EnrichedRequest, IConversionPaymentSettings } from '../../src/index'; -import { batchConversionPaymentsArtifact } from '@requestnetwork/smart-contracts'; -import { CurrencyManager, UnsupportedCurrencyError } from '@requestnetwork/currency'; import { approveErc20BatchConversionIfNeeded, + EnrichedRequest, getBatchConversionProxyAddress, + getErc20Balance, + IConversionPaymentSettings, payBatchConversionProxyRequest, prepareBatchConversionPaymentTransaction, -} from '../../src/payment/batch-conversion-proxy'; +} from '../../src'; +import { deepCopy } from '@requestnetwork/utils'; +import { revokeErc20Approval } from '@requestnetwork/payment-processor/src/payment/utils'; +import { batchConversionPaymentsArtifact } from '@requestnetwork/smart-contracts'; +import { CurrencyManager, UnsupportedCurrencyError } from '@requestnetwork/currency'; import { IRequestPaymentOptions } from 'payment-processor/src/payment/settings'; +import { CurrencyTypes } from '@requestnetwork/types/src'; /* eslint-disable no-magic-numbers */ /* eslint-disable @typescript-eslint/no-unused-expressions */ @@ -579,7 +581,7 @@ describe('erc20-batch-conversion-proxy', () => { }); it("should throw an error if one request's currencyInfo has no network", async () => { - FAURequest.currencyInfo.network = ''; + FAURequest.currencyInfo.network = '' as CurrencyTypes.ChainName; await expect( payBatchConversionProxyRequest(enrichedRequests, wallet, options), ).rejects.toThrowError( diff --git a/packages/payment-processor/test/payment/any-to-erc20-proxy.test.ts b/packages/payment-processor/test/payment/any-to-erc20-proxy.test.ts index 48822ca8d1..fc96646aae 100644 --- a/packages/payment-processor/test/payment/any-to-erc20-proxy.test.ts +++ b/packages/payment-processor/test/payment/any-to-erc20-proxy.test.ts @@ -1,4 +1,4 @@ -import { Wallet, providers, BigNumber } from 'ethers'; +import { BigNumber, providers, Wallet } from 'ethers'; import { ClientTypes, ExtensionTypes, @@ -6,11 +6,13 @@ import { RequestLogicTypes, } from '@requestnetwork/types'; import { deepCopy } from '@requestnetwork/utils'; -import { approveErc20ForProxyConversionIfNeeded } from '../../src/payment/conversion-erc20'; -import { payAnyToErc20ProxyRequest } from '../../src/payment/any-to-erc20-proxy'; +import { + approveErc20ForProxyConversionIfNeeded, + IConversionPaymentSettings, + payAnyToErc20ProxyRequest, +} from '../../src'; import { ERC20__factory } from '@requestnetwork/smart-contracts/types'; import { currencyManager } from './shared'; -import { IConversionPaymentSettings } from '../../src/index'; import { UnsupportedCurrencyError } from '@requestnetwork/currency'; import { AnyToERC20PaymentDetector } from '@requestnetwork/payment-detection'; import { getProxyAddress, MAX_ALLOWANCE, revokeErc20Approval } from '../../src/payment/utils'; diff --git a/packages/payment-processor/test/payment/any-to-eth-proxy.test.ts b/packages/payment-processor/test/payment/any-to-eth-proxy.test.ts index 9ce12f0b2a..bb179cffdc 100644 --- a/packages/payment-processor/test/payment/any-to-eth-proxy.test.ts +++ b/packages/payment-processor/test/payment/any-to-eth-proxy.test.ts @@ -1,4 +1,4 @@ -import { Wallet, providers } from 'ethers'; +import { providers, Wallet } from 'ethers'; import { ClientTypes, ExtensionTypes, @@ -6,9 +6,8 @@ import { RequestLogicTypes, } from '@requestnetwork/types'; import { deepCopy } from '@requestnetwork/utils'; -import { payAnyToEthProxyRequest } from '../../src/payment/any-to-eth-proxy'; +import { IConversionPaymentSettings, payAnyToEthProxyRequest } from '../../src'; import { currencyManager } from './shared'; -import { IConversionPaymentSettings } from '../../src/index'; const paymentSettings: IConversionPaymentSettings = { maxToSpend: '2500000000000000', diff --git a/packages/payment-processor/test/payment/any-to-near.test.ts b/packages/payment-processor/test/payment/any-to-near.test.ts index 323bce6a07..0c673127fc 100644 --- a/packages/payment-processor/test/payment/any-to-near.test.ts +++ b/packages/payment-processor/test/payment/any-to-near.test.ts @@ -1,9 +1,8 @@ import { ExtensionTypes, RequestLogicTypes } from '@requestnetwork/types'; import { PaymentReferenceCalculator } from '@requestnetwork/payment-detection'; -import { IConversionPaymentSettings, _getPaymentUrl } from '../../src/payment'; +import { IConversionPaymentSettings, payNearConversionRequest } from '../../src'; import * as nearUtils from '../../src/payment/utils-near'; -import { payNearConversionRequest } from '../../src/payment/near-conversion'; import { deepCopy } from '@requestnetwork/utils'; /* eslint-disable @typescript-eslint/no-unused-expressions */ diff --git a/packages/payment-processor/test/payment/btc-address-based.test.ts b/packages/payment-processor/test/payment/btc-address-based.test.ts index b5edb1eb78..85460778cf 100644 --- a/packages/payment-processor/test/payment/btc-address-based.test.ts +++ b/packages/payment-processor/test/payment/btc-address-based.test.ts @@ -7,7 +7,7 @@ import { RequestLogicTypes, } from '@requestnetwork/types'; -import { getBtcPaymentUrl } from '../../src/payment/btc-address-based'; +import { getBtcPaymentUrl } from '../../src'; /* eslint-disable @typescript-eslint/no-unused-expressions */ /* eslint-disable @typescript-eslint/await-thenable */ diff --git a/packages/payment-processor/test/payment/encoder-approval.test.ts b/packages/payment-processor/test/payment/encoder-approval.test.ts index 86de74176a..4e351bd4f8 100644 --- a/packages/payment-processor/test/payment/encoder-approval.test.ts +++ b/packages/payment-processor/test/payment/encoder-approval.test.ts @@ -1,19 +1,20 @@ -import { Wallet, providers, BigNumber, utils } from 'ethers'; +import { BigNumber, providers, utils, Wallet } from 'ethers'; import { ClientTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, RequestLogicTypes, } from '@requestnetwork/types'; -import { encodeRequestErc20ApprovalIfNeeded } from '../../src'; +import { encodeRequestErc20ApprovalIfNeeded, IPreparedTransaction } from '../../src'; import { getProxyAddress, MAX_ALLOWANCE, revokeErc20Approval } from '../../src/payment/utils'; import { AnyToERC20PaymentDetector, Erc20PaymentNetwork } from '@requestnetwork/payment-detection'; import { currencyManager } from './shared'; -import { IPreparedTransaction } from '../../src/payment/prepared-transaction'; import { - erc20SwapToPayArtifact, erc20SwapConversionArtifact, + erc20SwapToPayArtifact, } from '@requestnetwork/smart-contracts'; +import { IConversionSettings } from '../../src/payment/settings'; /* eslint-disable @typescript-eslint/no-unused-expressions */ /* eslint-disable @typescript-eslint/await-thenable */ @@ -23,7 +24,7 @@ const feeAddress = '0xC5fdf4076b8F3A5357c5E395ab970B5B54098Fef'; // Cf. ERC20Alpha in TestERC20.sol const alphaContractAddress = '0x38cF23C52Bb4B13F051Aec09580a2dE845a7FA35'; -const alphaConversionSettings = { +const alphaConversionSettings: IConversionSettings = { currency: { type: RequestLogicTypes.CURRENCY.ERC20, value: alphaContractAddress, @@ -254,12 +255,12 @@ beforeAll(async () => { await revokeErc20Approval(proxyERC20Conv, alphaContractAddress, wallet); proxyERC20Swap = erc20SwapToPayArtifact.getAddress( - validRequestERC20FeeProxy.currencyInfo.network!, + validRequestERC20FeeProxy.currencyInfo.network! as CurrencyTypes.EvmChainName, ); await revokeErc20Approval(proxyERC20Swap, alphaContractAddress, wallet); proxyERC20SwapConv = erc20SwapConversionArtifact.getAddress( - validRequestERC20FeeProxy.currencyInfo.network!, + validRequestERC20FeeProxy.currencyInfo.network! as CurrencyTypes.EvmChainName, ); await revokeErc20Approval(proxyERC20SwapConv, alphaContractAddress, wallet); }); diff --git a/packages/payment-processor/test/payment/encoder-payment.test.ts b/packages/payment-processor/test/payment/encoder-payment.test.ts index f3338b0ac7..ad5f105636 100644 --- a/packages/payment-processor/test/payment/encoder-payment.test.ts +++ b/packages/payment-processor/test/payment/encoder-payment.test.ts @@ -1,6 +1,7 @@ -import { Wallet, providers, BigNumber } from 'ethers'; +import { BigNumber, providers, Wallet } from 'ethers'; import { ClientTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, RequestLogicTypes, @@ -20,10 +21,11 @@ import { } from '@requestnetwork/payment-detection'; import { currencyManager } from './shared'; import { - erc20SwapToPayArtifact, erc20SwapConversionArtifact, + erc20SwapToPayArtifact, } from '@requestnetwork/smart-contracts'; import { DAIX_ADDRESS } from './erc777-stream.test'; +import { IConversionSettings } from '../../src/payment/settings'; /* eslint-disable @typescript-eslint/no-unused-expressions */ /* eslint-disable @typescript-eslint/await-thenable */ @@ -33,7 +35,7 @@ const feeAddress = '0xC5fdf4076b8F3A5357c5E395ab970B5B54098Fef'; // Cf. ERC20Alpha in TestERC20.sol const alphaContractAddress = '0x38cF23C52Bb4B13F051Aec09580a2dE845a7FA35'; -const alphaConversionSettings = { +const alphaConversionSettings: IConversionSettings = { currency: { type: RequestLogicTypes.CURRENCY.ERC20, value: alphaContractAddress, @@ -314,7 +316,7 @@ describe('Payment encoder handles ERC20 Swap Proxy', () => { }); const proxyAddress = erc20SwapToPayArtifact.getAddress( - validRequestERC20FeeProxy.currencyInfo.network!, + validRequestERC20FeeProxy.currencyInfo.network! as CurrencyTypes.EvmChainName, ); expect(paymentTransaction).toEqual({ @@ -333,7 +335,7 @@ describe('Payment encoder handles ERC20 Swap & Conversion Proxy', () => { }); const proxyAddress = erc20SwapConversionArtifact.getAddress( - alphaConversionSettings.currency.network, + alphaConversionSettings.currency.network as CurrencyTypes.EvmChainName, ); expect(paymentTransaction).toEqual({ diff --git a/packages/payment-processor/test/payment/encoder.test.ts b/packages/payment-processor/test/payment/encoder.test.ts index 84c4a95bfd..803837cfab 100644 --- a/packages/payment-processor/test/payment/encoder.test.ts +++ b/packages/payment-processor/test/payment/encoder.test.ts @@ -6,7 +6,11 @@ import { RequestLogicTypes, } from '@requestnetwork/types'; import { encodeRequestApprovalAndPayment } from '../../src'; -import { IRequestPaymentOptions } from '../../src/payment/settings'; +import { + IApprovalSettings, + IConversionSettings, + IRequestPaymentOptions, +} from '../../src/payment/settings'; import { currencyManager } from './shared'; import { ERC20__factory } from '@requestnetwork/smart-contracts/types'; import { MAX_ALLOWANCE } from '../../src/payment/utils'; @@ -19,7 +23,7 @@ const feeAddress = '0xC5fdf4076b8F3A5357c5E395ab970B5B54098Fef'; // Cf. ERC20Alpha in TestERC20.sol const alphaContractAddress = '0x38cF23C52Bb4B13F051Aec09580a2dE845a7FA35'; -const alphaConversionSettings = { +const alphaConversionSettings: IConversionSettings = { currency: { type: RequestLogicTypes.CURRENCY.ERC20, value: alphaContractAddress, @@ -235,9 +239,9 @@ const getOption = (withApproval: boolean, type: Option): IRequestPaymentOptions return { conversion: alphaConversionSettings, approval: withApproval - ? { + ? ({ amount: alphaConversionSettings.maxToSpend, - } + } as IApprovalSettings) : undefined, }; } diff --git a/packages/payment-processor/test/payment/erc20-batch-proxy.test.ts b/packages/payment-processor/test/payment/erc20-batch-proxy.test.ts index 800685317c..867fa2d718 100644 --- a/packages/payment-processor/test/payment/erc20-batch-proxy.test.ts +++ b/packages/payment-processor/test/payment/erc20-batch-proxy.test.ts @@ -1,4 +1,4 @@ -import { Wallet, BigNumber, providers } from 'ethers'; +import { BigNumber, providers, Wallet } from 'ethers'; import { ClientTypes, @@ -9,14 +9,15 @@ import { import { deepCopy } from '@requestnetwork/utils'; import { batchPaymentsArtifact } from '@requestnetwork/smart-contracts'; -import { getErc20Balance } from '../../src/payment/erc20'; -import { getRequestPaymentValues } from '../../src/payment/utils'; import { - payBatchProxyRequest, approveErc20BatchIfNeeded, - prepareBatchPaymentTransaction, getBatchProxyAddress, -} from '../../src/payment/batch-proxy'; + getErc20Balance, + payBatchProxyRequest, + prepareBatchPaymentTransaction, +} from '../../src'; +import { getRequestPaymentValues } from '../../src/payment/utils'; +import { CurrencyTypes } from '@requestnetwork/types/src'; /* eslint-disable no-magic-numbers */ /* eslint-disable @typescript-eslint/no-unused-expressions */ @@ -138,7 +139,7 @@ const testSuite = ( }); it("should throw an error if one request's currencyInfo has no network", async () => { - request2.currencyInfo.network = ''; + request2.currencyInfo.network = '' as CurrencyTypes.ChainName; await expect( payBatchProxyRequest([request1, request2], batchVersion, wallet, batchFee), ).rejects.toThrowError( diff --git a/packages/payment-processor/test/payment/erc20-escrow-payment.test.ts b/packages/payment-processor/test/payment/erc20-escrow-payment.test.ts index 1391f50088..b515d97f3d 100644 --- a/packages/payment-processor/test/payment/erc20-escrow-payment.test.ts +++ b/packages/payment-processor/test/payment/erc20-escrow-payment.test.ts @@ -1,6 +1,7 @@ -import { Wallet, providers, BigNumber } from 'ethers'; +import { BigNumber, providers, Wallet } from 'ethers'; import { ClientTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, RequestLogicTypes, @@ -10,7 +11,7 @@ import { Escrow } from '../../src/'; import { getRequestPaymentValues, getSigner } from '../../src/payment/utils'; import { erc20EscrowToPayArtifact } from '@requestnetwork/smart-contracts'; -import { getErc20Balance } from '../../src/payment/erc20'; +import { getErc20Balance } from '../../src'; /* eslint-disable no-magic-numbers */ /* eslint-disable @typescript-eslint/no-unused-expressions */ @@ -66,7 +67,9 @@ const validRequest: ClientTypes.IRequestData = { version: '1.0', }; -const escrowAddress = erc20EscrowToPayArtifact.getAddress(validRequest.currencyInfo.network!); +const escrowAddress = erc20EscrowToPayArtifact.getAddress( + validRequest.currencyInfo.network! as CurrencyTypes.EvmChainName, +); const payerAddress = wallet.address; describe('erc20-escrow-payment tests:', () => { @@ -102,7 +105,7 @@ describe('erc20-escrow-payment tests:', () => { }); it('Should throw an error if currencyInfo has no network', async () => { const request = deepCopy(validRequest); - request.currencyInfo.network = ''; + request.currencyInfo.network = '' as CurrencyTypes.ChainName; await expect(Escrow.payEscrow(request, wallet)).rejects.toThrowError( 'request cannot be processed, or is not an pn-erc20-fee-proxy-contract request', ); diff --git a/packages/payment-processor/test/payment/erc20-fee-proxy.test.ts b/packages/payment-processor/test/payment/erc20-fee-proxy.test.ts index 592b5a527f..eaf7f1af5c 100644 --- a/packages/payment-processor/test/payment/erc20-fee-proxy.test.ts +++ b/packages/payment-processor/test/payment/erc20-fee-proxy.test.ts @@ -1,7 +1,8 @@ -import { Wallet, BigNumber, providers } from 'ethers'; +import { BigNumber, providers, Wallet } from 'ethers'; import { ClientTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, RequestLogicTypes, @@ -9,12 +10,13 @@ import { import { deepCopy } from '@requestnetwork/utils'; import { erc20FeeProxyArtifact } from '@requestnetwork/smart-contracts'; -import { approveErc20, getErc20Balance } from '../../src/payment/erc20'; import { _getErc20FeeProxyPaymentUrl, + approveErc20, + getErc20Balance, payErc20FeeProxyRequest, prepareErc20FeeProxyPaymentTransaction, -} from '../../src/payment/erc20-fee-proxy'; +} from '../../src'; import { getRequestPaymentValues } from '../../src/payment/utils'; /* eslint-disable no-magic-numbers */ @@ -106,7 +108,7 @@ describe('erc20-fee-proxy', () => { it('should throw an error if currencyInfo has no network', async () => { const request = deepCopy(validRequest); - request.currencyInfo.network = ''; + request.currencyInfo.network = '' as CurrencyTypes.ChainName; await expect(payErc20FeeProxyRequest(request, wallet)).rejects.toThrowError( 'request cannot be processed, or is not an pn-erc20-fee-proxy-contract request', ); diff --git a/packages/payment-processor/test/payment/erc20-proxy.test.ts b/packages/payment-processor/test/payment/erc20-proxy.test.ts index 5139c18ef9..dee210f1c8 100644 --- a/packages/payment-processor/test/payment/erc20-proxy.test.ts +++ b/packages/payment-processor/test/payment/erc20-proxy.test.ts @@ -2,6 +2,7 @@ import { Wallet, BigNumber, providers } from 'ethers'; import { ClientTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, RequestLogicTypes, @@ -91,7 +92,7 @@ describe('payErc20ProxyRequest', () => { it('should throw an error if currencyInfo has no network', async () => { const request = deepCopy(validRequest); - request.currencyInfo.network = ''; + request.currencyInfo.network = '' as CurrencyTypes.EvmChainName; await expect(payErc20ProxyRequest(request, wallet)).rejects.toThrowError( 'request cannot be processed, or is not an pn-erc20-proxy-contract request', ); diff --git a/packages/payment-processor/test/payment/erc20.test.ts b/packages/payment-processor/test/payment/erc20.test.ts index d1966ea7e7..2d59e91df8 100644 --- a/packages/payment-processor/test/payment/erc20.test.ts +++ b/packages/payment-processor/test/payment/erc20.test.ts @@ -4,15 +4,15 @@ import { IdentityTypes, RequestLogicTypes, } from '@requestnetwork/types'; -import { Wallet, providers, BigNumber } from 'ethers'; +import { BigNumber, providers, Wallet } from 'ethers'; import { erc20FeeProxyArtifact } from '@requestnetwork/smart-contracts'; import { _getErc20PaymentUrl, approveErc20, + checkErc20Allowance, getErc20Balance, hasErc20Approval, - checkErc20Allowance, -} from '../../src/payment/erc20'; +} from '../../src'; import { getProxyAddress, revokeErc20Approval } from '../../src/payment/utils'; import { Erc20PaymentNetwork } from '@requestnetwork/payment-detection'; diff --git a/packages/payment-processor/test/payment/erc777-stream.test.ts b/packages/payment-processor/test/payment/erc777-stream.test.ts index 2b01b425d9..911ddc04a6 100644 --- a/packages/payment-processor/test/payment/erc777-stream.test.ts +++ b/packages/payment-processor/test/payment/erc777-stream.test.ts @@ -3,6 +3,7 @@ import { Framework } from '@superfluid-finance/sdk-core'; import { ClientTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, RequestLogicTypes, @@ -109,7 +110,7 @@ describe('erc777-stream', () => { it('should throw an error if currencyInfo has no network', async () => { const request = deepCopy(validRequest); - request.currencyInfo.network = ''; + request.currencyInfo.network = '' as CurrencyTypes.EvmChainName; await expect(payErc777StreamRequest(request, wallet)).rejects.toThrowError( 'request cannot be processed, or is not an pn-erc777-stream request', ); diff --git a/packages/payment-processor/test/payment/eth-batch-proxy.test.ts b/packages/payment-processor/test/payment/eth-batch-proxy.test.ts index f44ae6fbed..471f687052 100644 --- a/packages/payment-processor/test/payment/eth-batch-proxy.test.ts +++ b/packages/payment-processor/test/payment/eth-batch-proxy.test.ts @@ -2,6 +2,7 @@ import { Wallet, providers, BigNumber } from 'ethers'; import { ClientTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, RequestLogicTypes, @@ -105,7 +106,7 @@ describe('payBatchProxyRequest', () => { it('should throw an error if in one request, currencyInfo has no network', async () => { const request = deepCopy(validRequest); - request.currencyInfo.network = ''; + request.currencyInfo.network = '' as CurrencyTypes.EvmChainName; await expect( payBatchProxyRequest([validRequest, request], batchVersion, wallet, batchFee), ).rejects.toThrowError( diff --git a/packages/payment-processor/test/payment/eth-fee-proxy.test.ts b/packages/payment-processor/test/payment/eth-fee-proxy.test.ts index 5f39d8d0c7..c5c1780f4d 100644 --- a/packages/payment-processor/test/payment/eth-fee-proxy.test.ts +++ b/packages/payment-processor/test/payment/eth-fee-proxy.test.ts @@ -1,6 +1,7 @@ -import { Wallet, providers } from 'ethers'; +import { providers, Wallet } from 'ethers'; import { ClientTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, RequestLogicTypes, @@ -85,7 +86,7 @@ describe('payEthFeeProxyRequest', () => { it('should throw an error if currencyInfo has no network', async () => { const request = deepCopy(validRequest); - request.currencyInfo.network = ''; + request.currencyInfo.network = '' as CurrencyTypes.EvmChainName; await expect(payEthFeeProxyRequest(request, wallet)).rejects.toThrowError( 'request cannot be processed, or is not an pn-eth-fee-proxy-contract request', ); diff --git a/packages/payment-processor/test/payment/eth-input-data.test.ts b/packages/payment-processor/test/payment/eth-input-data.test.ts index f4eaefd648..48b4d14588 100644 --- a/packages/payment-processor/test/payment/eth-input-data.test.ts +++ b/packages/payment-processor/test/payment/eth-input-data.test.ts @@ -2,6 +2,7 @@ import { Wallet, providers, BigNumber } from 'ethers'; import { ClientTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, RequestLogicTypes, @@ -81,7 +82,7 @@ describe('payEthInputDataRequest', () => { it('should throw an error if currencyInfo has no network', async () => { const request = deepCopy(validRequest); - request.currencyInfo.network = ''; + request.currencyInfo.network = '' as CurrencyTypes.EvmChainName; await expect(payEthInputDataRequest(request, wallet)).rejects.toThrowError( 'request cannot be processed, or is not an pn-eth-input-data request', ); diff --git a/packages/payment-processor/test/payment/eth-proxy.test.ts b/packages/payment-processor/test/payment/eth-proxy.test.ts index 979090db5a..5d6a426217 100644 --- a/packages/payment-processor/test/payment/eth-proxy.test.ts +++ b/packages/payment-processor/test/payment/eth-proxy.test.ts @@ -2,6 +2,7 @@ import { Wallet, BigNumber, providers } from 'ethers'; import { ClientTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, RequestLogicTypes, @@ -86,7 +87,7 @@ describe('payEthProxyRequest', () => { it('should throw an error if currencyInfo has no network', async () => { const request = deepCopy(validRequest); - request.currencyInfo.network = ''; + request.currencyInfo.network = '' as CurrencyTypes.EvmChainName; await expect(payEthProxyRequest(request, wallet)).rejects.toThrowError( 'request cannot be processed, or is not an pn-eth-input-data request', ); diff --git a/packages/payment-processor/test/payment/index.test.ts b/packages/payment-processor/test/payment/index.test.ts index 30111fba15..cd3578d96c 100644 --- a/packages/payment-processor/test/payment/index.test.ts +++ b/packages/payment-processor/test/payment/index.test.ts @@ -25,9 +25,9 @@ const wallet = Wallet.fromMnemonic(mnemonic).connect(provider); const fakeErc20: RequestLogicTypes.ICurrency = { type: RequestLogicTypes.CURRENCY.ERC20, value: 'any', - network: 'live', + network: 'mainnet', }; -const nearCurrency = { +const nearCurrency: RequestLogicTypes.ICurrency = { type: RequestLogicTypes.CURRENCY.ETH, network: 'aurora', value: 'near', diff --git a/packages/payment-processor/test/payment/swap-any-to-erc20.test.ts b/packages/payment-processor/test/payment/swap-any-to-erc20.test.ts index a95aec8c21..bf54913f1d 100644 --- a/packages/payment-processor/test/payment/swap-any-to-erc20.test.ts +++ b/packages/payment-processor/test/payment/swap-any-to-erc20.test.ts @@ -139,7 +139,7 @@ describe('swap-any-to-erc20', () => { }); it('should throw an error if the conversion currency is not an acceptedTokens', async () => { - const wrongCurrency = { + const wrongCurrency: RequestLogicTypes.ICurrency = { type: 'ERC20' as any, value: '0x17b4158805772ced11225e77339f90beb5aae968', network: 'private', diff --git a/packages/payment-processor/test/payment/swap-erc20-fee-proxy.test.ts b/packages/payment-processor/test/payment/swap-erc20-fee-proxy.test.ts index f87972ce5b..43d7bb0e2d 100644 --- a/packages/payment-processor/test/payment/swap-erc20-fee-proxy.test.ts +++ b/packages/payment-processor/test/payment/swap-erc20-fee-proxy.test.ts @@ -2,6 +2,7 @@ import { Wallet, providers, BigNumber } from 'ethers'; import { ClientTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, RequestLogicTypes, @@ -81,7 +82,9 @@ describe('swap-erc20-fee-proxy', () => { beforeAll(async () => { // revoke erc20SwapToPay approval await revokeErc20Approval( - erc20SwapToPayArtifact.getAddress(validRequest.currencyInfo.network!), + erc20SwapToPayArtifact.getAddress( + validRequest.currencyInfo.network! as CurrencyTypes.EvmChainName, + ), alphaErc20Address, wallet.provider, ); @@ -90,7 +93,9 @@ describe('swap-erc20-fee-proxy', () => { beforeAll(async () => { // revoke erc20SwapToPay approval await revokeErc20Approval( - erc20SwapToPayArtifact.getAddress(validRequest.currencyInfo.network!), + erc20SwapToPayArtifact.getAddress( + validRequest.currencyInfo.network! as CurrencyTypes.EvmChainName, + ), alphaErc20Address, wallet.provider, ); @@ -118,7 +123,7 @@ describe('swap-erc20-fee-proxy', () => { it('should throw an error if currencyInfo has no network', async () => { const request = deepCopy(validRequest); - request.currencyInfo.network = ''; + request.currencyInfo.network = '' as CurrencyTypes.EvmChainName; await expect( swapErc20FeeProxyRequest(request, wallet, validSwapSettings), ).rejects.toThrowError( diff --git a/packages/request-client.js/test/index.test.ts b/packages/request-client.js/test/index.test.ts index 140452cb74..43f137c00c 100644 --- a/packages/request-client.js/test/index.test.ts +++ b/packages/request-client.js/test/index.test.ts @@ -10,7 +10,7 @@ import { RequestLogicTypes, } from '@requestnetwork/types'; import { decrypt, random32Bytes } from '@requestnetwork/utils'; -import { ethers } from 'ethers'; +import { BigNumber, ethers } from 'ethers'; import AxiosMockAdapter from 'axios-mock-adapter'; import { Request, RequestNetwork, RequestNetworkBase } from '../src/index'; @@ -18,13 +18,13 @@ import * as TestData from './data-test'; import * as TestDataRealBTC from './data-test-real-btc'; import { PaymentReferenceCalculator } from '@requestnetwork/payment-detection'; -import { BigNumber } from 'ethers'; import EtherscanProviderMock from './etherscan-mock'; import httpConfigDefaults from '../src/http-config-defaults'; import { IRequestDataWithEvents } from '../src/types'; import HttpMetaMaskDataAccess from '../src/http-metamask-data-access'; import MockDataAccess from '../src/mock-data-access'; import MockStorage from '../src/mock-storage'; +import * as RequestLogic from '@requestnetwork/types/src/request-logic-types'; const packageJson = require('../package.json'); @@ -1789,7 +1789,7 @@ describe('request-client.js', () => { }); describe('Token lists', () => { - const testErc20Data = { + const testErc20Data: RequestLogic.ICreateParameters = { ...TestData.parametersWithoutExtensionsData, currency: { network: 'private', @@ -1797,7 +1797,7 @@ describe('request-client.js', () => { value: '0x9FBDa871d559710256a2502A2517b794B482Db40', // Test Erc20 }, }; - const daiData = { + const daiData: RequestLogic.ICreateParameters = { ...TestData.parametersWithoutExtensionsData, currency: { network: 'mainnet', diff --git a/packages/smart-contracts/test/contracts/BatchConversionPayments.test.ts b/packages/smart-contracts/test/contracts/BatchConversionPayments.test.ts index ff2c3bc0f7..f5ffa249af 100644 --- a/packages/smart-contracts/test/contracts/BatchConversionPayments.test.ts +++ b/packages/smart-contracts/test/contracts/BatchConversionPayments.test.ts @@ -13,7 +13,7 @@ import { import { PaymentTypes } from '@requestnetwork/types'; import { BigNumber, ContractTransaction, Signer } from 'ethers'; import { expect } from 'chai'; -import { CurrencyManager } from '@requestnetwork/currency'; +import { CurrencyManager, EVM } from '@requestnetwork/currency'; import { chainlinkConversionPath } from '../../src/lib'; import { FAU_USD_RATE } from '../../scripts/test-deploy-batch-conversion-deployment'; import { localERC20AlphaArtifact, secondLocalERC20AlphaArtifact } from './localArtifacts'; @@ -29,6 +29,7 @@ const BATCH_PAYMENT_NETWORK_ID = PaymentTypes.BATCH_PAYMENT_NETWORK_ID; describe('contract: BatchConversionPayments', async () => { const networkConfig = network.config as HttpNetworkConfig; + EVM.assertChainSupported(network.name); const provider = new ethers.providers.JsonRpcProvider(networkConfig.url); let adminAddress: string; @@ -124,6 +125,7 @@ describe('contract: BatchConversionPayments', async () => { [adminAddress, from, to, feeAddress] = (await ethers.getSigners()).map((s) => s.address); [adminSigner, fromSigner, , , signer4] = await ethers.getSigners(); + EVM.assertChainSupported(network.name); chainlinkPath = chainlinkConversionPath.connect(network.name, fromSigner); const erc20FeeProxy = await new ERC20FeeProxy__factory(adminSigner).deploy(); From d48802d9cb75642e4b9358103b8420a6aac66f01 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Fri, 3 Feb 2023 18:34:38 +0100 Subject: [PATCH 15/50] rollback changes --- packages/types/src/extensions/pn-any-to-erc20-types.ts | 4 ++-- packages/types/src/storage-types.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/types/src/extensions/pn-any-to-erc20-types.ts b/packages/types/src/extensions/pn-any-to-erc20-types.ts index 9a6c130252..143c8619dc 100644 --- a/packages/types/src/extensions/pn-any-to-erc20-types.ts +++ b/packages/types/src/extensions/pn-any-to-erc20-types.ts @@ -1,12 +1,12 @@ import * as PnAnyToAnyConversion from './pn-any-to-any-conversion-types'; -import { ChainName } from '../currency-types'; +import { EvmChainName } from '../currency-types'; /** Any to ERC20 reference-based payment network extension interface */ export type IAnyToERC20 = PnAnyToAnyConversion.IConversionReferenceBased; /** Parameters for the creation action */ export interface ICreationParameters extends PnAnyToAnyConversion.ICreationParameters { - network?: ChainName; + network?: EvmChainName; // FIXME: should be mandatory according to AnyToErc20ProxyPaymentNetwork createCreationAction() logic acceptedTokens?: string[]; } diff --git a/packages/types/src/storage-types.ts b/packages/types/src/storage-types.ts index 29ebf5352a..e60405e840 100644 --- a/packages/types/src/storage-types.ts +++ b/packages/types/src/storage-types.ts @@ -150,7 +150,7 @@ export enum EthereumNetwork { /** Information to connect to a web3 provider */ export interface IWeb3Connection { web3Provider?: any; - networkId?: number; + networkId?: EthereumNetwork; timeout?: number; } From 753fe99a6e278ca9054dee3dc38ea70f0ebab712 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Fri, 3 Feb 2023 18:47:05 +0100 Subject: [PATCH 16/50] fix tests --- .../any-to-erc20-proxy.test.ts | 2 +- .../payment-network/native-token.test.ts | 12 +++---- .../erc777/stream-create-data-generator.ts | 4 +-- .../ethereum-storage/src/ethereum-utils.ts | 2 +- .../src/smart-contract-manager.ts | 5 --- .../test/smartcontract-manager.test.ts | 2 +- .../payment-processor/test/payment/shared.ts | 31 ++++++++++--------- .../BatchNoConversionErc20Payments.test.ts | 13 ++++---- 8 files changed, 34 insertions(+), 37 deletions(-) diff --git a/packages/advanced-logic/test/extensions/payment-network/any-to-erc20-proxy.test.ts b/packages/advanced-logic/test/extensions/payment-network/any-to-erc20-proxy.test.ts index 7975ba1d62..f3f4bbdc1f 100644 --- a/packages/advanced-logic/test/extensions/payment-network/any-to-erc20-proxy.test.ts +++ b/packages/advanced-logic/test/extensions/payment-network/any-to-erc20-proxy.test.ts @@ -145,7 +145,7 @@ describe('extensions/payment-network/erc20/any-to-erc20-fee-proxy-contract', () anyToErc20Proxy.createCreationAction({ paymentAddress: '0x0000000000000000000000000000000000000001', salt: 'ea3bc7caf64110ca', - network: 'kovan', + network: 'goerli', acceptedTokens: ['0x0000000000000000000000000000000000000003'], }); }).toThrowError( diff --git a/packages/advanced-logic/test/extensions/payment-network/native-token.test.ts b/packages/advanced-logic/test/extensions/payment-network/native-token.test.ts index b8787e744e..7c54d7521f 100644 --- a/packages/advanced-logic/test/extensions/payment-network/native-token.test.ts +++ b/packages/advanced-logic/test/extensions/payment-network/native-token.test.ts @@ -11,7 +11,7 @@ import { } from '../../utils/payment-network/mocked_native_data'; import { AdvancedLogic } from '../../../src'; import { arbitraryTimestamp, payeeRaw } from '../../utils/test-data-generator'; -import { ExtensionTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { CurrencyTypes, ExtensionTypes, RequestLogicTypes } from '@requestnetwork/types'; import NearTestnetNativeNativePaymentNetwork from '../../../src/extensions/payment-network/near/near-testnet-native'; const salt = arbitrarySalt; @@ -21,17 +21,17 @@ describe('extensions/payment-network/native-token', () => { type: RequestLogicTypes.CURRENCY.ETH, value: 'NEAR', network: 'aurora', - }; + } as const; const auroraTestnetCurrency = { type: RequestLogicTypes.CURRENCY.ETH, value: 'NEAR-testnet', network: 'aurora-testnet', - }; + } as const; const nearTestnetCurrency = { type: RequestLogicTypes.CURRENCY.ETH, value: 'NEAR-testnet', network: 'near-testnet', - }; + } as const; const nativeTokenTestCases = [ { name: 'Near', @@ -60,7 +60,7 @@ describe('extensions/payment-network/native-token', () => { currency: nearTestnetCurrency, wrongCurrency: nearCurrency, }, - ]; + ] as const; nativeTokenTestCases.forEach((testCase) => { describe(`action creations for ${testCase.name}`, () => { @@ -325,7 +325,7 @@ describe('extensions/payment-network/native-token', () => { }); it('throws on a wrong payment network', () => { const advancedLogic = new AdvancedLogic(); - const wrongNetwork = `wrong network`; + const wrongNetwork = `wrong network` as CurrencyTypes.EvmChainName; const wrongNativeTokenRequestState: typeof requestStateNoExtensions = { ...requestStateNoExtensions, diff --git a/packages/advanced-logic/test/utils/payment-network/erc777/stream-create-data-generator.ts b/packages/advanced-logic/test/utils/payment-network/erc777/stream-create-data-generator.ts index ee088e7db6..3ee89b7229 100644 --- a/packages/advanced-logic/test/utils/payment-network/erc777/stream-create-data-generator.ts +++ b/packages/advanced-logic/test/utils/payment-network/erc777/stream-create-data-generator.ts @@ -160,7 +160,7 @@ const baseRequestState = { state: RequestLogicTypes.STATE.CREATED, timestamp: TestData.arbitraryTimestamp, version, -}; +} as const; const baseRequestEvent = { actionSigner: { @@ -174,7 +174,7 @@ const baseRequestEvent = { isSignedRequest: false, }, timestamp: arbitraryTimestamp, -}; +} as const; export const requestStateNoExtensions: RequestLogicTypes.IRequest = { ...baseRequestState, diff --git a/packages/ethereum-storage/src/ethereum-utils.ts b/packages/ethereum-storage/src/ethereum-utils.ts index 00e57f373c..fffe007c3f 100644 --- a/packages/ethereum-storage/src/ethereum-utils.ts +++ b/packages/ethereum-storage/src/ethereum-utils.ts @@ -20,7 +20,7 @@ export const getEthereumStorageNetworkNameFromId = ( const chainName = EVM.getChainName(networkId); if (!chainName) { // this should never happen - throw new Error('Storage chain is not a supported EVM chain'); + throw new Error(`Unsupported storage chain: ${networkId}`); } return chainName; }; diff --git a/packages/ethereum-storage/src/smart-contract-manager.ts b/packages/ethereum-storage/src/smart-contract-manager.ts index b0ac0fd02c..10765f588f 100644 --- a/packages/ethereum-storage/src/smart-contract-manager.ts +++ b/packages/ethereum-storage/src/smart-contract-manager.ts @@ -135,11 +135,6 @@ export default class SmartContractManager { ? config.getDefaultEthereumNetwork() : getEthereumStorageNetworkNameFromId(web3Connection.networkId); - // If networkName is undefined, it means the network doesn't exist - if (typeof this.networkName === 'undefined') { - throw Error(`The network id ${web3Connection.networkId} doesn't exist`); - } - this.hashStorageAddress = SmartContracts.requestHashStorageArtifact.getAddress( this.networkName, ); diff --git a/packages/ethereum-storage/test/smartcontract-manager.test.ts b/packages/ethereum-storage/test/smartcontract-manager.test.ts index e7cbc99d08..597a00c1fd 100644 --- a/packages/ethereum-storage/test/smartcontract-manager.test.ts +++ b/packages/ethereum-storage/test/smartcontract-manager.test.ts @@ -407,7 +407,7 @@ describe('SmartContractManager', () => { it('initializes smartcontract-manager with an invalid network should throw an error', () => { expect(() => new SmartContractManager(invalidNetworkWeb3Connection)).toThrowError( - `The network id ${invalidNetwork} doesn't exist`, + `Unsupported storage chain: ${invalidNetwork}`, ); }); diff --git a/packages/payment-processor/test/payment/shared.ts b/packages/payment-processor/test/payment/shared.ts index 734381a886..b2a61dce98 100644 --- a/packages/payment-processor/test/payment/shared.ts +++ b/packages/payment-processor/test/payment/shared.ts @@ -3,24 +3,25 @@ import { RequestLogicTypes } from '@requestnetwork/types'; export const currencyManager = new CurrencyManager([ ...CurrencyManager.getDefaultList(), - ...[ - { - network: 'private', - symbol: 'ETH', - decimals: 18, - type: RequestLogicTypes.CURRENCY.ETH, - } as CurrencyDefinition, - ], + { + network: 'private', + symbol: 'ETH', + decimals: 18, + type: RequestLogicTypes.CURRENCY.ETH, + } as CurrencyDefinition, ...[ '0x9FBDa871d559710256a2502A2517b794B482Db40', '0x38cF23C52Bb4B13F051Aec09580a2dE845a7FA35', '0x17b4158805772ced11225e77339f90beb5aae968', '0x775eb53d00dd0acd3ec1696472105d579b9b386b', - ].map((address, i) => ({ - address, - network: 'private', - decimals: 18, - symbol: 'ERC20_' + i, - type: RequestLogicTypes.CURRENCY.ERC20, - })), + ].map( + (address, i) => + ({ + address, + network: 'private', + decimals: 18, + symbol: 'ERC20_' + i, + type: RequestLogicTypes.CURRENCY.ERC20, + } as CurrencyDefinition), + ), ]); diff --git a/packages/smart-contracts/test/contracts/BatchNoConversionErc20Payments.test.ts b/packages/smart-contracts/test/contracts/BatchNoConversionErc20Payments.test.ts index eb02ac317a..b2e0bd2f3e 100644 --- a/packages/smart-contracts/test/contracts/BatchNoConversionErc20Payments.test.ts +++ b/packages/smart-contracts/test/contracts/BatchNoConversionErc20Payments.test.ts @@ -2,17 +2,17 @@ import { ethers, network } from 'hardhat'; import { BigNumber, Signer } from 'ethers'; import { expect } from 'chai'; import { - TestERC20__factory, - TestERC20, - ERC20FeeProxy, - EthereumFeeProxy__factory, BatchNoConversionPayments, - ERC20FeeProxy__factory, BatchNoConversionPayments__factory, ChainlinkConversionPath, + ERC20FeeProxy, + ERC20FeeProxy__factory, + EthereumFeeProxy__factory, + TestERC20, + TestERC20__factory, } from '../../src/types'; import { chainlinkConversionPath } from '../../src/lib'; -import { CurrencyManager } from '@requestnetwork/currency'; +import { CurrencyManager, EVM } from '@requestnetwork/currency'; import { RequestDetail } from 'types/dist/payment-types'; const logGasInfos = false; @@ -67,6 +67,7 @@ describe('contract: batchNoConversionPayments: ERC20', () => { erc20FeeProxy = await new ERC20FeeProxy__factory(owner).deploy(); const ethFeeProxy = await new EthereumFeeProxy__factory(owner).deploy(); + EVM.assertChainSupported(network.name); chainlinkPath = chainlinkConversionPath.connect(network.name, owner); batch = await new BatchNoConversionPayments__factory(owner).deploy( erc20FeeProxy.address, From 5bc4f963dc50166439017f54d87bb4ca6c50e6f1 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Fri, 3 Feb 2023 18:57:52 +0100 Subject: [PATCH 17/50] fix tests --- .../test/extensions/payment-network/address-based.test.ts | 4 ++-- .../test/extensions/payment-network/any-to-eth-proxy.test.ts | 4 ++-- .../test/near/near-native-conversion.test.ts | 5 ++--- .../test/contracts/BatchNoConversionEthPayments.test.ts | 3 ++- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/advanced-logic/test/extensions/payment-network/address-based.test.ts b/packages/advanced-logic/test/extensions/payment-network/address-based.test.ts index 29f7353a25..7b04f15ad8 100644 --- a/packages/advanced-logic/test/extensions/payment-network/address-based.test.ts +++ b/packages/advanced-logic/test/extensions/payment-network/address-based.test.ts @@ -37,7 +37,7 @@ describe('extensions/payment-network/address-based', () => { super(extensionId, currentVersion, supportedCurrencyType); } public testIsValidAddress() { - this.isValidAddressForSymbolAndNetwork('test', 'test', 'test'); + this.isValidAddressForSymbolAndNetwork('test', 'test', 'mainnet'); } } expect(() => { @@ -47,6 +47,6 @@ describe('extensions/payment-network/address-based', () => { RequestLogicTypes.CURRENCY.ERC20, ); testAddressBasedPaymentNetwork.testIsValidAddress(); - }).toThrowError(new UnsupportedCurrencyError({ value: 'test', network: 'test' })); + }).toThrowError(new UnsupportedCurrencyError({ value: 'test', network: 'mainnet' })); }); }); diff --git a/packages/advanced-logic/test/extensions/payment-network/any-to-eth-proxy.test.ts b/packages/advanced-logic/test/extensions/payment-network/any-to-eth-proxy.test.ts index 9c33c9d562..8525fbcdb4 100644 --- a/packages/advanced-logic/test/extensions/payment-network/any-to-eth-proxy.test.ts +++ b/packages/advanced-logic/test/extensions/payment-network/any-to-eth-proxy.test.ts @@ -1,4 +1,4 @@ -import { ExtensionTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { CurrencyTypes, ExtensionTypes, RequestLogicTypes } from '@requestnetwork/types'; import { deepCopy } from '@requestnetwork/utils'; import { CurrencyManager, UnsupportedCurrencyError } from '@requestnetwork/currency'; @@ -146,7 +146,7 @@ describe('extensions/payment-network/ethereum/any-to-eth-fee-proxy-contract', () requestCreatedNoExtension.currency = { type: RequestLogicTypes.CURRENCY.ETH, value: 'invalid value', - network: 'invalid network', + network: 'invalid network' as CurrencyTypes.EvmChainName, }; const action: ExtensionTypes.IAction = deepCopy( diff --git a/packages/payment-detection/test/near/near-native-conversion.test.ts b/packages/payment-detection/test/near/near-native-conversion.test.ts index f572c92ce4..2bf898d7a8 100644 --- a/packages/payment-detection/test/near/near-native-conversion.test.ts +++ b/packages/payment-detection/test/near/near-native-conversion.test.ts @@ -190,9 +190,8 @@ describe('Near payments detection', () => { expect(await paymentDetector.getBalance(requestWithWrongNetwork)).toMatchObject({ balance: null, error: { - code: 2, - message: - "Unconfigured near-conversion-detector chain 'unknown-network' and version '0.1.0'", + code: 0, + message: 'Unsupported chain unknown-network', }, events: [], }); diff --git a/packages/smart-contracts/test/contracts/BatchNoConversionEthPayments.test.ts b/packages/smart-contracts/test/contracts/BatchNoConversionEthPayments.test.ts index 93288dcaa7..8607a5d5ec 100644 --- a/packages/smart-contracts/test/contracts/BatchNoConversionEthPayments.test.ts +++ b/packages/smart-contracts/test/contracts/BatchNoConversionEthPayments.test.ts @@ -12,7 +12,7 @@ import { EthereumFeeProxy, BatchNoConversionPayments } from '../../src/types'; import { chainlinkConversionPath } from '../../src/lib'; import { HttpNetworkConfig } from 'hardhat/types'; import { PaymentTypes } from 'types/dist'; -import { CurrencyManager } from '@requestnetwork/currency'; +import { CurrencyManager, EVM } from '@requestnetwork/currency'; const logGasInfos = false; @@ -65,6 +65,7 @@ describe('contract: batchNoConversionPayments: Ethereum', () => { const erc20FeeProxy = await new ERC20FeeProxy__factory(owner).deploy(); ethFeeProxy = await new EthereumFeeProxy__factory(owner).deploy(); + EVM.assertChainSupported(network.name); chainlinkPath = chainlinkConversionPath.connect(network.name, owner); batch = await new BatchNoConversionPayments__factory(owner).deploy( erc20FeeProxy.address, From 5363d3c98d1d0aea614f49e53c69d1007e737158 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Fri, 3 Feb 2023 19:07:36 +0100 Subject: [PATCH 18/50] fix tests --- .../extensions/payment-network/any-to-erc20-proxy.test.ts | 2 +- packages/ethereum-storage/test/ethereum-utils.test.ts | 6 ++++-- .../test/contracts/ChainlinkConversionPath.test.ts | 3 ++- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/packages/advanced-logic/test/extensions/payment-network/any-to-erc20-proxy.test.ts b/packages/advanced-logic/test/extensions/payment-network/any-to-erc20-proxy.test.ts index f3f4bbdc1f..cda4dcd4b7 100644 --- a/packages/advanced-logic/test/extensions/payment-network/any-to-erc20-proxy.test.ts +++ b/packages/advanced-logic/test/extensions/payment-network/any-to-erc20-proxy.test.ts @@ -149,7 +149,7 @@ describe('extensions/payment-network/erc20/any-to-erc20-fee-proxy-contract', () acceptedTokens: ['0x0000000000000000000000000000000000000003'], }); }).toThrowError( - "The currency '0x0000000000000000000000000000000000000003' on kovan is unknown or not supported.", + "The currency '0x0000000000000000000000000000000000000003' on goerli is unknown or not supported.", ); }); diff --git a/packages/ethereum-storage/test/ethereum-utils.test.ts b/packages/ethereum-storage/test/ethereum-utils.test.ts index d2f8f91c1b..3fb182fed5 100644 --- a/packages/ethereum-storage/test/ethereum-utils.test.ts +++ b/packages/ethereum-storage/test/ethereum-utils.test.ts @@ -28,8 +28,10 @@ describe('Ethereum Utils', () => { expect(getEthereumStorageNetworkNameFromId(StorageTypes.EthereumNetwork.XDAI)).toBe('xdai'); }); - it(`should return undefined if the network doesn't exist`, async () => { - expect(getEthereumStorageNetworkNameFromId(2000)).toBeUndefined(); + it(`should throw if the storage network is not supported`, async () => { + expect(() => getEthereumStorageNetworkNameFromId(2000)).toThrowError( + 'Unsupported storage chain: 2000', + ); }); }); diff --git a/packages/smart-contracts/test/contracts/ChainlinkConversionPath.test.ts b/packages/smart-contracts/test/contracts/ChainlinkConversionPath.test.ts index 60c46c716c..ae67743b4e 100644 --- a/packages/smart-contracts/test/contracts/ChainlinkConversionPath.test.ts +++ b/packages/smart-contracts/test/contracts/ChainlinkConversionPath.test.ts @@ -1,5 +1,5 @@ import { expect } from 'chai'; -import { CurrencyManager } from '@requestnetwork/currency'; +import { CurrencyManager, EVM } from '@requestnetwork/currency'; import { ethers, network } from 'hardhat'; import '@nomiclabs/hardhat-ethers'; import { chainlinkConversionPath as chainlinkConvArtifact } from '../../src/lib'; @@ -25,6 +25,7 @@ let conversionPathInstance: ChainlinkConversionPath; describe('contract: ChainlinkConversionPath', () => { before(async () => { const [signer] = await ethers.getSigners(); + EVM.assertChainSupported(network.name); conversionPathInstance = chainlinkConvArtifact.connect(network.name, signer); USDT_address = localUSDTArtifact.getAddress(network.name); DAI_address = localERC20AlphaArtifact.getAddress(network.name); From 256b6df8660b3154c48fccbe55b19bf8cb4d62bf Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Fri, 3 Feb 2023 19:19:43 +0100 Subject: [PATCH 19/50] fix tests --- .../test/contracts/ERC20SwapToConversion.test.ts | 14 +++++++------- .../test/contracts/ERC20SwapToPay.test.ts | 15 ++++++++------- .../test/contracts/Erc20ConversionProxy.test.ts | 10 +++++----- .../test/contracts/EthConversionProxy.test.ts | 4 ++-- .../test/contracts/EthereumFeeProxy.test.ts | 2 ++ .../test/contracts/EthereumProxy.test.ts | 2 ++ .../smart-contracts/test/lib/artifact.test.ts | 7 ++++--- 7 files changed, 30 insertions(+), 24 deletions(-) diff --git a/packages/smart-contracts/test/contracts/ERC20SwapToConversion.test.ts b/packages/smart-contracts/test/contracts/ERC20SwapToConversion.test.ts index 347537c9e4..dcec568652 100644 --- a/packages/smart-contracts/test/contracts/ERC20SwapToConversion.test.ts +++ b/packages/smart-contracts/test/contracts/ERC20SwapToConversion.test.ts @@ -2,16 +2,16 @@ import { ethers, network } from 'hardhat'; import { BigNumber, Signer } from 'ethers'; import { expect, use } from 'chai'; import { solidity } from 'ethereum-waffle'; -import { CurrencyManager } from '@requestnetwork/currency'; +import { CurrencyManager, EVM } from '@requestnetwork/currency'; import { - TestERC20__factory, - TestERC20, - FakeSwapRouter__factory, - FakeSwapRouter, AggregatorMock__factory, + ChainlinkConversionPath, Erc20ConversionProxy, ERC20SwapToConversion, - ChainlinkConversionPath, + FakeSwapRouter, + FakeSwapRouter__factory, + TestERC20, + TestERC20__factory, } from '../../src/types'; import { chainlinkConversionPath as chainlinkConvArtifact, @@ -49,12 +49,12 @@ describe('contract: ERC20SwapToConversion', () => { const erc20Liquidity = erc20Decimal.mul(100); before(async () => { + EVM.assertChainSupported(network.name); [, from, to, builder] = (await ethers.getSigners()).map((s) => s.address); [adminSigner, signer] = await ethers.getSigners(); chainlinkConversion = chainlinkConvArtifact.connect(network.name, adminSigner); erc20ConversionProxy = erc20ConversionProxyArtifact.connect(network.name, adminSigner); swapConversionProxy = erc20SwapConversionArtifact.connect(network.name, adminSigner); - await swapConversionProxy.updateConversionPathAddress(chainlinkConversion.address); await swapConversionProxy.updateRequestSwapFees(requestSwapFees); }); diff --git a/packages/smart-contracts/test/contracts/ERC20SwapToPay.test.ts b/packages/smart-contracts/test/contracts/ERC20SwapToPay.test.ts index 1a36630d3b..f039d58856 100644 --- a/packages/smart-contracts/test/contracts/ERC20SwapToPay.test.ts +++ b/packages/smart-contracts/test/contracts/ERC20SwapToPay.test.ts @@ -3,16 +3,17 @@ import { BigNumber, Signer } from 'ethers'; import { expect, use } from 'chai'; import { solidity } from 'ethereum-waffle'; import { - TestERC20__factory, - TestERC20, - FakeSwapRouter__factory, - FakeSwapRouter, - BadERC20__factory, BadERC20, - ERC20SwapToPay, + BadERC20__factory, ERC20FeeProxy, + ERC20SwapToPay, + FakeSwapRouter, + FakeSwapRouter__factory, + TestERC20, + TestERC20__factory, } from '../../src/types'; import { erc20FeeProxyArtifact, erc20SwapToPayArtifact } from '../../src/lib'; +import { EVM } from '@requestnetwork/currency'; use(solidity); @@ -38,9 +39,9 @@ describe('contract: SwapToPay', () => { const erc20Liquidity = erc20Decimal.mul(100); before(async () => { + EVM.assertChainSupported(network.name); [, from, to, builder] = (await ethers.getSigners()).map((s) => s.address); [adminSigner, signer] = await ethers.getSigners(); - erc20FeeProxy = erc20FeeProxyArtifact.connect(network.name, adminSigner); testSwapToPay = erc20SwapToPayArtifact.connect(network.name, adminSigner); }); diff --git a/packages/smart-contracts/test/contracts/Erc20ConversionProxy.test.ts b/packages/smart-contracts/test/contracts/Erc20ConversionProxy.test.ts index 6807e26347..aee4bad8b4 100644 --- a/packages/smart-contracts/test/contracts/Erc20ConversionProxy.test.ts +++ b/packages/smart-contracts/test/contracts/Erc20ConversionProxy.test.ts @@ -1,17 +1,17 @@ import { ethers, network } from 'hardhat'; import { - ERC20FeeProxy__factory, + ChainlinkConversionPath, + Erc20ConversionProxy, Erc20ConversionProxy__factory, ERC20FeeProxy, - ChainlinkConversionPath, + ERC20FeeProxy__factory, TestERC20, - Erc20ConversionProxy, TestERC20__factory, } from '../../src/types'; import { BigNumber, Signer } from 'ethers'; import { expect, use } from 'chai'; import { solidity } from 'ethereum-waffle'; -import { CurrencyManager } from '@requestnetwork/currency'; +import { CurrencyManager, EVM } from '@requestnetwork/currency'; import { chainlinkConversionPath } from '../../src/lib'; import { localERC20AlphaArtifact } from './localArtifacts'; @@ -41,9 +41,9 @@ describe('contract: Erc20ConversionProxy', () => { let chainlinkPath: ChainlinkConversionPath; before(async () => { + EVM.assertChainSupported(network.name); [from, to, feeAddress] = (await ethers.getSigners()).map((s) => s.address); [signer] = await ethers.getSigners(); - chainlinkPath = chainlinkConversionPath.connect(network.name, signer); erc20FeeProxy = await new ERC20FeeProxy__factory(signer).deploy(); testErc20ConversionProxy = await new Erc20ConversionProxy__factory(signer).deploy( diff --git a/packages/smart-contracts/test/contracts/EthConversionProxy.test.ts b/packages/smart-contracts/test/contracts/EthConversionProxy.test.ts index c38750c164..9b65da983e 100644 --- a/packages/smart-contracts/test/contracts/EthConversionProxy.test.ts +++ b/packages/smart-contracts/test/contracts/EthConversionProxy.test.ts @@ -15,7 +15,7 @@ import { import { BigNumber, Signer } from 'ethers'; import { expect, use } from 'chai'; import { solidity } from 'ethereum-waffle'; -import { CurrencyManager } from '@requestnetwork/currency'; +import { CurrencyManager, EVM } from '@requestnetwork/currency'; import { chainlinkConversionPath } from '../../src/lib'; import { HttpNetworkConfig } from 'hardhat/types'; @@ -45,9 +45,9 @@ describe('contract: EthConversionProxy', () => { const provider = new ethers.providers.JsonRpcProvider(networkConfig.url); before(async () => { + EVM.assertChainSupported(network.name); [from, to, feeAddress] = (await ethers.getSigners()).map((s) => s.address); [signer] = await ethers.getSigners(); - chainlinkPath = chainlinkConversionPath.connect(network.name, signer); ethFeeProxy = await new EthereumFeeProxy__factory(signer).deploy(); testEthConversionProxy = await new EthConversionProxy__factory(signer).deploy( diff --git a/packages/smart-contracts/test/contracts/EthereumFeeProxy.test.ts b/packages/smart-contracts/test/contracts/EthereumFeeProxy.test.ts index 261c310002..c5b65db39e 100644 --- a/packages/smart-contracts/test/contracts/EthereumFeeProxy.test.ts +++ b/packages/smart-contracts/test/contracts/EthereumFeeProxy.test.ts @@ -11,6 +11,7 @@ import { } from '../../src/types'; import { ethereumFeeProxyArtifact } from '../../src/lib/'; import { HttpNetworkConfig } from 'hardhat/types'; +import { EVM } from '@requestnetwork/currency'; use(solidity); @@ -28,6 +29,7 @@ describe('contract: EthereumFeeProxy', () => { const feeAddress = '0xF4255c5e53a08f72b0573D1b8905C5a50aA9c2De'; before(async () => { + EVM.assertChainSupported(network.name); [, to] = (await ethers.getSigners()).map((s) => s.address); [signer] = await ethers.getSigners(); ethFeeProxy = ethereumFeeProxyArtifact.connect(network.name, signer); diff --git a/packages/smart-contracts/test/contracts/EthereumProxy.test.ts b/packages/smart-contracts/test/contracts/EthereumProxy.test.ts index 17d0f19d14..8d164c99cf 100644 --- a/packages/smart-contracts/test/contracts/EthereumProxy.test.ts +++ b/packages/smart-contracts/test/contracts/EthereumProxy.test.ts @@ -11,6 +11,7 @@ import { } from '../../src/types'; import { ethereumProxyArtifact } from '../../src/lib/'; import { HttpNetworkConfig } from 'hardhat/types'; +import { EVM } from '@requestnetwork/currency'; use(solidity); @@ -28,6 +29,7 @@ describe('contract: EthereumProxy', () => { const provider = new ethers.providers.JsonRpcProvider(networkConfig.url); before(async () => { + EVM.assertChainSupported(network.name); [from, to] = (await ethers.getSigners()).map((s) => s.address); [signer] = await ethers.getSigners(); ethProxy = ethereumProxyArtifact.connect(network.name, signer); diff --git a/packages/smart-contracts/test/lib/artifact.test.ts b/packages/smart-contracts/test/lib/artifact.test.ts index 1d4059cd2c..dd98e3475e 100644 --- a/packages/smart-contracts/test/lib/artifact.test.ts +++ b/packages/smart-contracts/test/lib/artifact.test.ts @@ -1,6 +1,7 @@ import { BigNumber, providers } from 'ethers'; import { RequestOpenHashSubmitter } from '../../src/types'; import { erc20FeeProxyArtifact, erc20ProxyArtifact } from '../../src/lib'; +import { CurrencyTypes } from '@requestnetwork/types'; describe('Artifact', () => { it('can get the contract info for latest version', () => { @@ -55,9 +56,9 @@ describe('Artifact', () => { }); it('throws for a non-existing network', () => { - expect(() => erc20ProxyArtifact.getDeploymentInformation('fakenetwork')).toThrowError( - `No deployment for network: fakenetwork`, - ); + expect(() => + erc20ProxyArtifact.getDeploymentInformation('fakenetwork' as CurrencyTypes.EvmChainName), + ).toThrowError(`No deployment for network: fakenetwork`); }); it('throws for a non-existing version', () => { From 21b92fc6f78b89e75343ed30ce81a4b26d8a7432 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Fri, 3 Feb 2023 19:43:08 +0100 Subject: [PATCH 20/50] rollback test --- .../test/ethereum-utils.test.ts | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/packages/ethereum-storage/test/ethereum-utils.test.ts b/packages/ethereum-storage/test/ethereum-utils.test.ts index 3fb182fed5..db5c1795b7 100644 --- a/packages/ethereum-storage/test/ethereum-utils.test.ts +++ b/packages/ethereum-storage/test/ethereum-utils.test.ts @@ -37,11 +37,19 @@ describe('Ethereum Utils', () => { describe('getEthereumStorageNetworkIdFromName', () => { it('allows to get the correct network name', async () => { - expect(getEthereumStorageNetworkIdFromName('private')).toBe(0); - expect(getEthereumStorageNetworkIdFromName('mainnet')).toBe(1); - expect(getEthereumStorageNetworkIdFromName('rinkeby')).toBe(4); - expect(getEthereumStorageNetworkIdFromName('goerli')).toBe(5); - expect(getEthereumStorageNetworkIdFromName('xdai')).toBe(100); + expect(getEthereumStorageNetworkIdFromName('private')).toBe( + StorageTypes.EthereumNetwork.PRIVATE, + ); + expect(getEthereumStorageNetworkIdFromName('mainnet')).toBe( + StorageTypes.EthereumNetwork.MAINNET, + ); + expect(getEthereumStorageNetworkIdFromName('rinkeby')).toBe( + StorageTypes.EthereumNetwork.RINKEBY, + ); + expect(getEthereumStorageNetworkIdFromName('goerli')).toBe( + StorageTypes.EthereumNetwork.GOERLI, + ); + expect(getEthereumStorageNetworkIdFromName('xdai')).toBe(StorageTypes.EthereumNetwork.XDAI); }); it(`should return undefined if the network is not supported for storage`, async () => { From 7bd75c78fb9e5c053354c0a78a12b5c117b3d2f2 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Fri, 3 Feb 2023 19:48:22 +0100 Subject: [PATCH 21/50] fix tests --- .../test/payment/erc20-escrow-payment.test.ts | 4 +--- .../test/payment/swap-erc20-fee-proxy.test.ts | 15 ++++++++------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/packages/payment-processor/test/payment/erc20-escrow-payment.test.ts b/packages/payment-processor/test/payment/erc20-escrow-payment.test.ts index b515d97f3d..489f4c9f1d 100644 --- a/packages/payment-processor/test/payment/erc20-escrow-payment.test.ts +++ b/packages/payment-processor/test/payment/erc20-escrow-payment.test.ts @@ -106,9 +106,7 @@ describe('erc20-escrow-payment tests:', () => { it('Should throw an error if currencyInfo has no network', async () => { const request = deepCopy(validRequest); request.currencyInfo.network = '' as CurrencyTypes.ChainName; - await expect(Escrow.payEscrow(request, wallet)).rejects.toThrowError( - 'request cannot be processed, or is not an pn-erc20-fee-proxy-contract request', - ); + await expect(Escrow.payEscrow(request, wallet)).rejects.toThrowError('Unsupported chain '); }); it('Should throw an error if request has no extension', async () => { const request = deepCopy(validRequest); diff --git a/packages/payment-processor/test/payment/swap-erc20-fee-proxy.test.ts b/packages/payment-processor/test/payment/swap-erc20-fee-proxy.test.ts index 43d7bb0e2d..5bd0b1f3a5 100644 --- a/packages/payment-processor/test/payment/swap-erc20-fee-proxy.test.ts +++ b/packages/payment-processor/test/payment/swap-erc20-fee-proxy.test.ts @@ -1,4 +1,4 @@ -import { Wallet, providers, BigNumber } from 'ethers'; +import { BigNumber, providers, Wallet } from 'ethers'; import { ClientTypes, @@ -9,10 +9,13 @@ import { } from '@requestnetwork/types'; import { deepCopy } from '@requestnetwork/utils'; -import { getErc20Balance } from '../../src/payment/erc20'; -import { approveErc20ForSwapToPayIfNeeded } from '../../src/payment/swap-erc20'; +import { + approveErc20ForSwapToPayIfNeeded, + getErc20Balance, + ISwapSettings, + swapErc20FeeProxyRequest, +} from '../../src'; import { ERC20__factory } from '@requestnetwork/smart-contracts/types'; -import { ISwapSettings, swapErc20FeeProxyRequest } from '../../src/payment/swap-erc20-fee-proxy'; import { erc20SwapToPayArtifact } from '@requestnetwork/smart-contracts'; import { revokeErc20Approval } from '../../src/payment/utils'; @@ -126,9 +129,7 @@ describe('swap-erc20-fee-proxy', () => { request.currencyInfo.network = '' as CurrencyTypes.EvmChainName; await expect( swapErc20FeeProxyRequest(request, wallet, validSwapSettings), - ).rejects.toThrowError( - 'request cannot be processed, or is not an pn-erc20-fee-proxy-contract request', - ); + ).rejects.toThrowError('Unsupported chain '); }); it('should throw an error if request has no extension', async () => { From d6ae451ecd548c5f27b6686fc721891e7eb9d2cc Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Feb 2023 10:55:35 +0100 Subject: [PATCH 22/50] remove aurora from evm --- packages/currency/src/chains/btc/index.ts | 33 ++++++++----- .../currency/src/chains/evm/aurora-testnet.ts | 1 - packages/currency/src/chains/evm/aurora.ts | 1 - packages/currency/src/chains/evm/index.ts | 41 +++++++++------- packages/currency/src/chains/near/index.ts | 47 +++++++++++++++++++ .../currency/src/chains/near/near-testnet.ts | 1 + packages/currency/src/chains/near/near.ts | 1 + packages/currency/src/chains/utils.ts | 30 ++++++++---- packages/currency/src/native.ts | 4 +- packages/currency/src/types.ts | 1 + packages/types/src/currency-types.ts | 16 +++++-- 11 files changed, 131 insertions(+), 45 deletions(-) delete mode 100644 packages/currency/src/chains/evm/aurora-testnet.ts delete mode 100644 packages/currency/src/chains/evm/aurora.ts create mode 100644 packages/currency/src/chains/near/index.ts create mode 100644 packages/currency/src/chains/near/near-testnet.ts create mode 100644 packages/currency/src/chains/near/near.ts diff --git a/packages/currency/src/chains/btc/index.ts b/packages/currency/src/chains/btc/index.ts index 8b7a26a63e..4eba84f233 100644 --- a/packages/currency/src/chains/btc/index.ts +++ b/packages/currency/src/chains/btc/index.ts @@ -1,6 +1,11 @@ import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; import { BtcChainDefinition } from '../../types'; -import { addNativeCurrenciesToChains, genericAssertChainSupported } from '../utils'; +import { + addNativeCurrenciesToChains, + genericAssertChainSupported, + genericGetChainId, + genericGetChainName, +} from '../utils'; import * as MainnetDefinition from './mainnet'; import * as TestnetDefinition from './testnet'; @@ -17,16 +22,22 @@ addNativeCurrenciesToChains(chains, RequestLogicTypes.CURRENCY.BTC); /** * Asserts if a specific chain is supported across BTC-type supported chains - * @param chainName */ -export function assertChainSupported( - chainName: string, -): asserts chainName is CurrencyTypes.BtcChainName { - genericAssertChainSupported(chainName, chainNames); -} +export const assertChainSupported = + genericAssertChainSupported(chainNames); -export const getChainId = (chainName: CurrencyTypes.BtcChainName): string => - chains[chainName].chainId; +/** + * Get the BTC chain ID from the chain name + */ +export const getChainId = genericGetChainId( + chains, +); -export const getChainName = (chainId: string): CurrencyTypes.BtcChainName | undefined => - chainNames.find((chainName) => chains[chainName].chainId === chainId); +/** + * Get the BTC chain name from its ID + */ +export const getChainName = genericGetChainName< + CurrencyTypes.BtcChainName, + BtcChainDefinition, + string +>(chains, chainNames); diff --git a/packages/currency/src/chains/evm/aurora-testnet.ts b/packages/currency/src/chains/evm/aurora-testnet.ts deleted file mode 100644 index c3cf2aa077..0000000000 --- a/packages/currency/src/chains/evm/aurora-testnet.ts +++ /dev/null @@ -1 +0,0 @@ -export const chainId = 1313161555; diff --git a/packages/currency/src/chains/evm/aurora.ts b/packages/currency/src/chains/evm/aurora.ts deleted file mode 100644 index fa63fe9a68..0000000000 --- a/packages/currency/src/chains/evm/aurora.ts +++ /dev/null @@ -1 +0,0 @@ -export const chainId = 1313161554; diff --git a/packages/currency/src/chains/evm/index.ts b/packages/currency/src/chains/evm/index.ts index a53f2c2caa..0fdd97c8f2 100644 --- a/packages/currency/src/chains/evm/index.ts +++ b/packages/currency/src/chains/evm/index.ts @@ -1,12 +1,15 @@ import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; import { EvmChainDefinition } from '../../types'; -import { addNativeCurrenciesToChains, genericAssertChainSupported } from '../utils'; +import { + addNativeCurrenciesToChains, + genericAssertChainSupported, + genericGetChainId, + genericGetChainName, +} from '../utils'; import * as AlfajoresDefinition from './alfajores'; import * as ArbitrumOneDefinition from './arbitrum-one'; import * as ArbitrumRinkebyDefinition from './arbitrum-rinkeby'; -import * as AuroraDefinition from './aurora'; -import * as AuroraTestnetDefinition from './aurora-testnet'; import * as AvalancheDefinition from './avalanche'; import * as BscDefinition from './bsc'; import * as BscTestDefinition from './bsctest'; @@ -30,8 +33,6 @@ export const chains: Record = { alfajores: AlfajoresDefinition, 'arbitrum-one': ArbitrumOneDefinition, 'arbitrum-rinkeby': ArbitrumRinkebyDefinition, - aurora: AuroraDefinition, - 'aurora-testnet': AuroraTestnetDefinition, avalanche: AvalancheDefinition, bsc: BscDefinition, bsctest: BscTestDefinition, @@ -43,11 +44,9 @@ export const chains: Record = { matic: MaticDefinition, moonbeam: MoonbeamDefinition, mumbai: MumbaiDefinition, - 'near-testnet': AuroraTestnetDefinition, optimism: OptimismDefinition, private: PrivateDefinition, - // FIXME: Rinkeby is deprecated - rinkeby: RinkebyDefinition, + rinkeby: RinkebyDefinition, // FIXME: Rinkeby is deprecated ronin: RoninDefinition, sokol: SokolDefinition, tombchain: TombchainDefinition, @@ -61,16 +60,22 @@ addNativeCurrenciesToChains(chains, RequestLogicTypes.CURRENCY.ETH); /** * Asserts if a specific chain is supported across EVM-type supported chains - * @param chainName */ -export function assertChainSupported( - chainName: string, -): asserts chainName is CurrencyTypes.EvmChainName { - genericAssertChainSupported(chainName, chainNames); -} +export const assertChainSupported = + genericAssertChainSupported(chainNames); -export const getChainId = (chainName: CurrencyTypes.EvmChainName): number => - chains[chainName].chainId; +/** + * Get the EVM chain ID from the chain name + */ +export const getChainId = genericGetChainId( + chains, +); -export const getChainName = (chainId: number): CurrencyTypes.EvmChainName | undefined => - chainNames.find((chainName) => chains[chainName].chainId === chainId); +/** + * Get the EVM chain name from its ID + */ +export const getChainName = genericGetChainName< + CurrencyTypes.EvmChainName, + EvmChainDefinition, + number +>(chains, chainNames); diff --git a/packages/currency/src/chains/near/index.ts b/packages/currency/src/chains/near/index.ts new file mode 100644 index 0000000000..f25d781b1e --- /dev/null +++ b/packages/currency/src/chains/near/index.ts @@ -0,0 +1,47 @@ +import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { NearChainDefinition } from '../../types'; +import { + addNativeCurrenciesToChains, + genericAssertChainSupported, + genericGetChainId, + genericGetChainName, +} from '../utils'; + +import * as NearDefinition from './near'; +import * as NearTestnetDefinition from './near-testnet'; + +export const chains: Record = { + aurora: NearDefinition, // FIXME: aurora should be removed from near chains (it is a mistake) + 'aurora-testnet': NearTestnetDefinition, // FIXME: aurora should be removed from near chains (it is a mistake) + near: NearDefinition, + 'near-testnet': NearTestnetDefinition, +}; + +export const chainNames = Object.keys(chains) as CurrencyTypes.NearChainName[]; + +// add native currencies +addNativeCurrenciesToChains(chains, RequestLogicTypes.CURRENCY.ETH); + +/** + * Asserts if a specific chain is supported across NEAR-type supported chains + */ +export const assertChainSupported = + genericAssertChainSupported(chainNames); + +/** + * Get the NEAR chain ID from the chain name + */ +export const getChainId = genericGetChainId< + CurrencyTypes.NearChainName, + NearChainDefinition, + string +>(chains); + +/** + * Get the NEAR chain name from its ID + */ +export const getChainName = genericGetChainName< + CurrencyTypes.NearChainName, + NearChainDefinition, + string +>(chains, chainNames); diff --git a/packages/currency/src/chains/near/near-testnet.ts b/packages/currency/src/chains/near/near-testnet.ts new file mode 100644 index 0000000000..aeffcb72cd --- /dev/null +++ b/packages/currency/src/chains/near/near-testnet.ts @@ -0,0 +1 @@ +export const chainId = 'testnet'; diff --git a/packages/currency/src/chains/near/near.ts b/packages/currency/src/chains/near/near.ts new file mode 100644 index 0000000000..bc1566c787 --- /dev/null +++ b/packages/currency/src/chains/near/near.ts @@ -0,0 +1 @@ +export const chainId = 'mainnet'; diff --git a/packages/currency/src/chains/utils.ts b/packages/currency/src/chains/utils.ts index 61f04991bb..387f9b7692 100644 --- a/packages/currency/src/chains/utils.ts +++ b/packages/currency/src/chains/utils.ts @@ -1,14 +1,13 @@ import { nativeCurrencies } from '../native'; import { ChainDefinition, NamedNativeCurrency, TokenMap } from '../types'; -import { RequestLogicTypes } from '@requestnetwork/types'; +import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; -export function genericAssertChainSupported( - chainKey: string, - supportedChains: T[], -): asserts chainKey is T { - if (!(supportedChains as string[]).includes(chainKey)) - throw new Error(`Unsupported chain ${chainKey}`); -} +export const genericAssertChainSupported = (chainNames: T[]) => { + return function (chainName: string): asserts chainName is T { + if (!(chainNames as string[]).includes(chainName)) + throw new Error(`Unsupported chain ${chainName}`); + }; +}; export const addNativeCurrenciesToChains = ( chains: Record, @@ -26,3 +25,18 @@ export const addNativeCurrenciesToChains = ( } }); }; + +export const genericGetChainId = + ( + chains: Record, + ) => + (chainName: T): S => + chains[chainName].chainId as S; + +export const genericGetChainName = + ( + chains: Record, + chainNames: T[], + ) => + (chainId: S): T | undefined => + chainNames.find((chainName) => chains[chainName].chainId === chainId); diff --git a/packages/currency/src/native.ts b/packages/currency/src/native.ts index d70c6b9a6d..714b25bd9d 100644 --- a/packages/currency/src/native.ts +++ b/packages/currency/src/native.ts @@ -1,7 +1,9 @@ import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; import { NamedNativeCurrency } from './types'; -type NativeEthCurrency = NamedNativeCurrency & { network: CurrencyTypes.EvmChainName }; +type NativeEthCurrency = NamedNativeCurrency & { + network: CurrencyTypes.EvmChainName | CurrencyTypes.NearChainName; +}; type NativeBtcCurrency = NamedNativeCurrency & { network: CurrencyTypes.BtcChainName }; export const nativeCurrencies: Record & diff --git a/packages/currency/src/types.ts b/packages/currency/src/types.ts index 459b1cb1ce..1a8a498955 100644 --- a/packages/currency/src/types.ts +++ b/packages/currency/src/types.ts @@ -16,6 +16,7 @@ export type EvmChainDefinition = ChainDefinition & { export type BtcChainDefinition = ChainDefinition & { chainId: string; }; +export type NearChainDefinition = ChainDefinition; type NamedCurrency = { name: string }; diff --git a/packages/types/src/currency-types.ts b/packages/types/src/currency-types.ts index 27e2d1f2c7..e256b91430 100644 --- a/packages/types/src/currency-types.ts +++ b/packages/types/src/currency-types.ts @@ -5,8 +5,6 @@ export type EvmChainName = | 'alfajores' | 'arbitrum-one' | 'arbitrum-rinkeby' - | 'aurora' - | 'aurora-testnet' | 'avalanche' | 'bsc' | 'bsctest' @@ -18,10 +16,9 @@ export type EvmChainName = | 'matic' | 'moonbeam' | 'mumbai' - | 'near-testnet' | 'optimism' | 'private' - | 'rinkeby' + | 'rinkeby' // FIXME: Rinkeby is deprecated | 'ronin' | 'sokol' | 'tombchain' @@ -32,4 +29,13 @@ export type EvmChainName = */ export type BtcChainName = 'mainnet' | 'testnet'; -export type ChainName = EvmChainName | BtcChainName; +/** + * List of supported NEAR chains + */ +export type NearChainName = + | 'aurora' // FIXME: aurora should be removed from near chains (it is a mistake) + | 'aurora-testnet' // FIXME: aurora should be removed from near chains (it is a mistake) + | 'near' + | 'near-testnet'; + +export type ChainName = EvmChainName | BtcChainName | NearChainName; From c7b3112acf9a552d86d5e1fe5838932c02f893ac Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Feb 2023 11:35:03 +0100 Subject: [PATCH 23/50] remove unused export --- packages/currency/src/erc777/chains/index.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/currency/src/erc777/chains/index.ts b/packages/currency/src/erc777/chains/index.ts index ebcef6fa34..05d09408bb 100644 --- a/packages/currency/src/erc777/chains/index.ts +++ b/packages/currency/src/erc777/chains/index.ts @@ -5,5 +5,3 @@ import { CurrencyTypes } from '@requestnetwork/types'; export const supportedNetworks: Partial> = { rinkeby: supportedRinkebyERC777, }; - -export type { TokenMap }; From e52eb10402f6a76a2c21c2360e08be9dbb721f19 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Feb 2023 11:39:58 +0100 Subject: [PATCH 24/50] fix missing export --- packages/currency/src/chains/evm/fantom.ts | 4 ++-- packages/currency/src/chains/index.ts | 9 +++++---- packages/currency/src/erc20/chains/fantom.ts | 2 +- packages/currency/src/erc20/chains/index.ts | 4 ++-- 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/packages/currency/src/chains/evm/fantom.ts b/packages/currency/src/chains/evm/fantom.ts index 8c1628f91c..e25f7b6168 100644 --- a/packages/currency/src/chains/evm/fantom.ts +++ b/packages/currency/src/chains/evm/fantom.ts @@ -1,7 +1,7 @@ import { TokenMap } from '../../types'; -import { supportedFantomTokens } from '../../erc20/chains/fantom'; +import { supportedFantomERC20 } from '../../erc20/chains/fantom'; export const chainId = 250; export const currencies: TokenMap = { - ...supportedFantomTokens, + ...supportedFantomERC20, }; diff --git a/packages/currency/src/chains/index.ts b/packages/currency/src/chains/index.ts index 2befccfbbc..1cdf4999b4 100644 --- a/packages/currency/src/chains/index.ts +++ b/packages/currency/src/chains/index.ts @@ -1,15 +1,16 @@ import { CurrencyTypes } from '@requestnetwork/types'; -import * as EVM from './evm'; import * as BTC from './btc'; +import * as EVM from './evm'; +import * as NEAR from './near'; /** - * Asserts if a specific chain is supported across all supported chain types (EVM + BTC) + * Asserts if a specific chain is supported across all supported chain types (BTC + EVM + NEAR) * @param chainName */ export function assertChainSupported( chainName: string, ): asserts chainName is CurrencyTypes.EvmChainName { - const chainSupported = [EVM, BTC].some((chainType) => { + const chainSupported = [BTC, EVM, NEAR].some((chainType) => { try { chainType.assertChainSupported(chainName); return true; @@ -22,4 +23,4 @@ export function assertChainSupported( } } -export { EVM, BTC }; +export { BTC, EVM, NEAR }; diff --git a/packages/currency/src/erc20/chains/fantom.ts b/packages/currency/src/erc20/chains/fantom.ts index 123fed6649..33c47b9b79 100644 --- a/packages/currency/src/erc20/chains/fantom.ts +++ b/packages/currency/src/erc20/chains/fantom.ts @@ -1,6 +1,6 @@ import { TokenMap } from '../../types'; -export const supportedFantomTokens: TokenMap = { +export const supportedFantomERC20: TokenMap = { '0xD3b71117E6C1558c1553305b44988cd944e97300': { name: 'YEL Token', symbol: 'YEL', diff --git a/packages/currency/src/erc20/chains/index.ts b/packages/currency/src/erc20/chains/index.ts index 221e8f53ed..a87dc6c8f4 100644 --- a/packages/currency/src/erc20/chains/index.ts +++ b/packages/currency/src/erc20/chains/index.ts @@ -5,7 +5,7 @@ import { supportedAvalancheERC20 } from './avalanche'; import { supportedBSCERC20 } from './bsc'; import { supportedBSCTestERC20 } from './bsctest'; import { supportedCeloERC20 } from './celo'; -import { supportedFantomTokens } from './fantom'; +import { supportedFantomERC20 } from './fantom'; import { supportedGoerliERC20 } from './goerli'; import { supportedMainnetERC20 } from './mainnet'; import { supportedMaticERC20 } from './matic'; @@ -21,7 +21,7 @@ export const supportedNetworks: Partial Date: Tue, 7 Feb 2023 11:49:46 +0100 Subject: [PATCH 25/50] change chaindefinition type name --- packages/currency/src/chains/btc/index.ts | 21 +++++++++++---------- packages/currency/src/chains/evm/index.ts | 21 +++++++++++---------- packages/currency/src/chains/near/index.ts | 21 +++++++++------------ packages/currency/src/chains/utils.ts | 8 ++++---- packages/currency/src/types.ts | 16 ++++++---------- 5 files changed, 41 insertions(+), 46 deletions(-) diff --git a/packages/currency/src/chains/btc/index.ts b/packages/currency/src/chains/btc/index.ts index 4eba84f233..d5dd2a3a5e 100644 --- a/packages/currency/src/chains/btc/index.ts +++ b/packages/currency/src/chains/btc/index.ts @@ -1,5 +1,5 @@ import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; -import { BtcChainDefinition } from '../../types'; +import { Chain } from '../../types'; import { addNativeCurrenciesToChains, genericAssertChainSupported, @@ -10,7 +10,11 @@ import { import * as MainnetDefinition from './mainnet'; import * as TestnetDefinition from './testnet'; -export const chains: Record = { +type BtcChain = Chain & { + chainId: string; +}; + +export const chains: Record = { mainnet: MainnetDefinition, testnet: TestnetDefinition, }; @@ -29,15 +33,12 @@ export const assertChainSupported = /** * Get the BTC chain ID from the chain name */ -export const getChainId = genericGetChainId( - chains, -); +export const getChainId = genericGetChainId(chains); /** * Get the BTC chain name from its ID */ -export const getChainName = genericGetChainName< - CurrencyTypes.BtcChainName, - BtcChainDefinition, - string ->(chains, chainNames); +export const getChainName = genericGetChainName( + chains, + chainNames, +); diff --git a/packages/currency/src/chains/evm/index.ts b/packages/currency/src/chains/evm/index.ts index 0fdd97c8f2..8b7dac3ef5 100644 --- a/packages/currency/src/chains/evm/index.ts +++ b/packages/currency/src/chains/evm/index.ts @@ -1,5 +1,5 @@ import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; -import { EvmChainDefinition } from '../../types'; +import { Chain } from '../../types'; import { addNativeCurrenciesToChains, genericAssertChainSupported, @@ -29,7 +29,11 @@ import * as SokolDefinition from './sokol'; import * as TombchainDefinition from './tombchain'; import * as XDaiDefinition from './xdai'; -export const chains: Record = { +type EvmChain = Chain & { + chainId: number; +}; + +export const chains: Record = { alfajores: AlfajoresDefinition, 'arbitrum-one': ArbitrumOneDefinition, 'arbitrum-rinkeby': ArbitrumRinkebyDefinition, @@ -67,15 +71,12 @@ export const assertChainSupported = /** * Get the EVM chain ID from the chain name */ -export const getChainId = genericGetChainId( - chains, -); +export const getChainId = genericGetChainId(chains); /** * Get the EVM chain name from its ID */ -export const getChainName = genericGetChainName< - CurrencyTypes.EvmChainName, - EvmChainDefinition, - number ->(chains, chainNames); +export const getChainName = genericGetChainName( + chains, + chainNames, +); diff --git a/packages/currency/src/chains/near/index.ts b/packages/currency/src/chains/near/index.ts index f25d781b1e..13e37910be 100644 --- a/packages/currency/src/chains/near/index.ts +++ b/packages/currency/src/chains/near/index.ts @@ -1,5 +1,5 @@ import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; -import { NearChainDefinition } from '../../types'; +import { Chain } from '../../types'; import { addNativeCurrenciesToChains, genericAssertChainSupported, @@ -10,7 +10,9 @@ import { import * as NearDefinition from './near'; import * as NearTestnetDefinition from './near-testnet'; -export const chains: Record = { +type NearChain = Chain; + +export const chains: Record = { aurora: NearDefinition, // FIXME: aurora should be removed from near chains (it is a mistake) 'aurora-testnet': NearTestnetDefinition, // FIXME: aurora should be removed from near chains (it is a mistake) near: NearDefinition, @@ -31,17 +33,12 @@ export const assertChainSupported = /** * Get the NEAR chain ID from the chain name */ -export const getChainId = genericGetChainId< - CurrencyTypes.NearChainName, - NearChainDefinition, - string ->(chains); +export const getChainId = genericGetChainId(chains); /** * Get the NEAR chain name from its ID */ -export const getChainName = genericGetChainName< - CurrencyTypes.NearChainName, - NearChainDefinition, - string ->(chains, chainNames); +export const getChainName = genericGetChainName( + chains, + chainNames, +); diff --git a/packages/currency/src/chains/utils.ts b/packages/currency/src/chains/utils.ts index 387f9b7692..f937e29d1f 100644 --- a/packages/currency/src/chains/utils.ts +++ b/packages/currency/src/chains/utils.ts @@ -1,5 +1,5 @@ import { nativeCurrencies } from '../native'; -import { ChainDefinition, NamedNativeCurrency, TokenMap } from '../types'; +import { Chain, NamedNativeCurrency, TokenMap } from '../types'; import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; export const genericAssertChainSupported = (chainNames: T[]) => { @@ -10,7 +10,7 @@ export const genericAssertChainSupported = (chainNames: T[]) = }; export const addNativeCurrenciesToChains = ( - chains: Record, + chains: Record, currencyType: RequestLogicTypes.CURRENCY.ETH | RequestLogicTypes.CURRENCY.BTC, ): void => { const chainNames = Object.keys(chains); @@ -27,14 +27,14 @@ export const addNativeCurrenciesToChains = ( }; export const genericGetChainId = - ( + ( chains: Record, ) => (chainName: T): S => chains[chainName].chainId as S; export const genericGetChainName = - ( + ( chains: Record, chainNames: T[], ) => diff --git a/packages/currency/src/types.ts b/packages/currency/src/types.ts index 1a8a498955..1a6bc7fb0d 100644 --- a/packages/currency/src/types.ts +++ b/packages/currency/src/types.ts @@ -6,19 +6,14 @@ import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; type TokenAddress = string; type TokenDefinition = { name: string; symbol: string; decimals: number }; export type TokenMap = Record; -export type ChainDefinition = { + +/** + * Common types used in chain configuration files + */ +export type Chain = { chainId: number | string; currencies?: TokenMap; }; -export type EvmChainDefinition = ChainDefinition & { - chainId: number; -}; -export type BtcChainDefinition = ChainDefinition & { - chainId: string; -}; -export type NearChainDefinition = ChainDefinition; - -type NamedCurrency = { name: string }; /** * A native blockchain token (ETH, MATIC, ETH-rinkeby...) @@ -28,6 +23,7 @@ export type NativeCurrency = { decimals: number; network: CurrencyTypes.ChainName; }; +type NamedCurrency = { name: string }; export type NamedNativeCurrency = NativeCurrency & NamedCurrency; /** Native Currency types */ From f4549361fdc345d9d4e4fa3e112d45ad7afc4c3a Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Feb 2023 11:56:27 +0100 Subject: [PATCH 26/50] edit README --- packages/currency/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/currency/README.md b/packages/currency/README.md index 9769df6dc7..9187cb49db 100644 --- a/packages/currency/README.md +++ b/packages/currency/README.md @@ -1,7 +1,7 @@ # @requestnetwork/currency `@requestnetwork/currency` is a typescript library part of the [Request Network protocol](https://github.com/RequestNetwork/requestNetwork). -It is a collection of tools for the currencies shared between the @requestnetwork packages. +It is a collection of tools for the currencies and chains shared between the @requestnetwork packages. ## Installation From 05ab7d5ef587de53bd2d8c3e3fb8181586535ef6 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Feb 2023 15:39:24 +0100 Subject: [PATCH 27/50] refactor chain types to classes --- .../currency/src/chains/ChainsAbstract.ts | 62 +++++++++++++++ packages/currency/src/chains/btc/BtcChains.ts | 6 ++ .../src/chains/btc/{ => data}/mainnet.ts | 0 .../src/chains/btc/{ => data}/testnet.ts | 0 packages/currency/src/chains/btc/index.ts | 38 +-------- packages/currency/src/chains/evm/EvmChains.ts | 6 ++ packages/currency/src/chains/evm/avalanche.ts | 7 -- packages/currency/src/chains/evm/bsc.ts | 7 -- packages/currency/src/chains/evm/bsctest.ts | 7 -- packages/currency/src/chains/evm/celo.ts | 7 -- .../src/chains/evm/{ => data}/alfajores.ts | 0 .../src/chains/evm/{ => data}/arbitrum-one.ts | 0 .../chains/evm/{ => data}/arbitrum-rinkeby.ts | 0 .../currency/src/chains/evm/data/avalanche.ts | 7 ++ packages/currency/src/chains/evm/data/bsc.ts | 7 ++ .../currency/src/chains/evm/data/bsctest.ts | 7 ++ packages/currency/src/chains/evm/data/celo.ts | 7 ++ .../currency/src/chains/evm/data/fantom.ts | 7 ++ .../src/chains/evm/{ => data}/fuse.ts | 0 .../currency/src/chains/evm/data/goerli.ts | 7 ++ .../currency/src/chains/evm/data/mainnet.ts | 7 ++ .../currency/src/chains/evm/data/matic.ts | 7 ++ .../currency/src/chains/evm/data/moonbeam.ts | 7 ++ .../src/chains/evm/{ => data}/mumbai.ts | 0 .../currency/src/chains/evm/data/optimism.ts | 7 ++ .../src/chains/evm/{ => data}/private.ts | 0 .../currency/src/chains/evm/data/rinkeby.ts | 9 +++ .../src/chains/evm/{ => data}/ronin.ts | 0 .../src/chains/evm/{ => data}/sokol.ts | 0 .../src/chains/evm/{ => data}/tombchain.ts | 0 packages/currency/src/chains/evm/data/xdai.ts | 7 ++ packages/currency/src/chains/evm/fantom.ts | 7 -- packages/currency/src/chains/evm/goerli.ts | 7 -- packages/currency/src/chains/evm/index.ts | 78 ++++++------------- packages/currency/src/chains/evm/mainnet.ts | 7 -- packages/currency/src/chains/evm/matic.ts | 7 -- packages/currency/src/chains/evm/moonbeam.ts | 7 -- packages/currency/src/chains/evm/optimism.ts | 7 -- packages/currency/src/chains/evm/rinkeby.ts | 9 --- packages/currency/src/chains/evm/xdai.ts | 7 -- packages/currency/src/chains/index.ts | 29 +------ .../currency/src/chains/near/NearChains.ts | 6 ++ .../chains/near/{ => data}/near-testnet.ts | 0 .../src/chains/near/{ => data}/near.ts | 0 packages/currency/src/chains/near/index.ts | 38 +-------- packages/currency/src/chains/utils.ts | 43 ++++++---- packages/currency/src/index.ts | 2 +- .../ethereum-storage/src/ethereum-utils.ts | 6 +- .../src/any/any-to-erc20-proxy.ts | 4 +- .../src/any/any-to-eth-proxy.ts | 4 +- .../payment-detection/src/erc20/currency.ts | 4 +- .../src/near/near-conversion-detector.ts | 6 +- .../src/near/near-detector.ts | 2 +- .../src/payment/batch-proxy.ts | 4 +- .../src/payment/erc20-escrow-payment.ts | 4 +- .../src/payment/erc20-fee-proxy.ts | 6 +- .../src/payment/swap-any-to-erc20.ts | 4 +- .../src/payment/swap-erc20-fee-proxy.ts | 6 +- .../src/payment/swap-erc20.ts | 6 +- .../payment-processor/src/payment/utils.ts | 4 +- .../scripts-create2/compute-one-address.ts | 4 +- .../setupBatchConversionPayments.ts | 4 +- .../setupERC20SwapToConversion.ts | 4 +- .../contract-setup/setupETHConversionProxy.ts | 4 +- .../setupErc20ConversionProxy.ts | 4 +- .../smart-contracts/scripts-create2/deploy.ts | 6 +- .../smart-contracts/scripts-create2/utils.ts | 4 +- .../smart-contracts/scripts-create2/verify.ts | 4 +- .../smart-contracts/scripts/deploy-one.ts | 4 +- ...test-deploy-batch-conversion-deployment.ts | 4 +- .../test-deploy-batch-erc-eth-deployment.ts | 4 +- .../contracts/BatchConversionPayments.test.ts | 6 +- .../BatchNoConversionErc20Payments.test.ts | 4 +- .../BatchNoConversionEthPayments.test.ts | 4 +- .../contracts/ChainlinkConversionPath.test.ts | 4 +- .../contracts/ERC20SwapToConversion.test.ts | 4 +- .../test/contracts/ERC20SwapToPay.test.ts | 4 +- .../contracts/Erc20ConversionProxy.test.ts | 4 +- .../test/contracts/EthConversionProxy.test.ts | 4 +- .../test/contracts/EthereumFeeProxy.test.ts | 4 +- .../test/contracts/EthereumProxy.test.ts | 4 +- .../src/chainlinkConversionPathTools.ts | 6 +- .../src/commands/chainlink/contractUtils.ts | 4 +- packages/toolbox/src/commands/hash/submit.ts | 4 +- 84 files changed, 312 insertions(+), 330 deletions(-) create mode 100644 packages/currency/src/chains/ChainsAbstract.ts create mode 100644 packages/currency/src/chains/btc/BtcChains.ts rename packages/currency/src/chains/btc/{ => data}/mainnet.ts (100%) rename packages/currency/src/chains/btc/{ => data}/testnet.ts (100%) create mode 100644 packages/currency/src/chains/evm/EvmChains.ts delete mode 100644 packages/currency/src/chains/evm/avalanche.ts delete mode 100644 packages/currency/src/chains/evm/bsc.ts delete mode 100644 packages/currency/src/chains/evm/bsctest.ts delete mode 100644 packages/currency/src/chains/evm/celo.ts rename packages/currency/src/chains/evm/{ => data}/alfajores.ts (100%) rename packages/currency/src/chains/evm/{ => data}/arbitrum-one.ts (100%) rename packages/currency/src/chains/evm/{ => data}/arbitrum-rinkeby.ts (100%) create mode 100644 packages/currency/src/chains/evm/data/avalanche.ts create mode 100644 packages/currency/src/chains/evm/data/bsc.ts create mode 100644 packages/currency/src/chains/evm/data/bsctest.ts create mode 100644 packages/currency/src/chains/evm/data/celo.ts create mode 100644 packages/currency/src/chains/evm/data/fantom.ts rename packages/currency/src/chains/evm/{ => data}/fuse.ts (100%) create mode 100644 packages/currency/src/chains/evm/data/goerli.ts create mode 100644 packages/currency/src/chains/evm/data/mainnet.ts create mode 100644 packages/currency/src/chains/evm/data/matic.ts create mode 100644 packages/currency/src/chains/evm/data/moonbeam.ts rename packages/currency/src/chains/evm/{ => data}/mumbai.ts (100%) create mode 100644 packages/currency/src/chains/evm/data/optimism.ts rename packages/currency/src/chains/evm/{ => data}/private.ts (100%) create mode 100644 packages/currency/src/chains/evm/data/rinkeby.ts rename packages/currency/src/chains/evm/{ => data}/ronin.ts (100%) rename packages/currency/src/chains/evm/{ => data}/sokol.ts (100%) rename packages/currency/src/chains/evm/{ => data}/tombchain.ts (100%) create mode 100644 packages/currency/src/chains/evm/data/xdai.ts delete mode 100644 packages/currency/src/chains/evm/fantom.ts delete mode 100644 packages/currency/src/chains/evm/goerli.ts delete mode 100644 packages/currency/src/chains/evm/mainnet.ts delete mode 100644 packages/currency/src/chains/evm/matic.ts delete mode 100644 packages/currency/src/chains/evm/moonbeam.ts delete mode 100644 packages/currency/src/chains/evm/optimism.ts delete mode 100644 packages/currency/src/chains/evm/rinkeby.ts delete mode 100644 packages/currency/src/chains/evm/xdai.ts create mode 100644 packages/currency/src/chains/near/NearChains.ts rename packages/currency/src/chains/near/{ => data}/near-testnet.ts (100%) rename packages/currency/src/chains/near/{ => data}/near.ts (100%) diff --git a/packages/currency/src/chains/ChainsAbstract.ts b/packages/currency/src/chains/ChainsAbstract.ts new file mode 100644 index 0000000000..c0937e5ca8 --- /dev/null +++ b/packages/currency/src/chains/ChainsAbstract.ts @@ -0,0 +1,62 @@ +import { Chain, NamedNativeCurrency, TokenMap } from '../types'; +import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { nativeCurrencies } from '../native'; + +export abstract class ChainsAbstract< + CHAIN_NAME extends CurrencyTypes.ChainName, + CHAIN extends Chain, + CHAIN_ID extends string | number, +> { + public chains: Record; + public chainNames: CHAIN_NAME[]; + + constructor( + chains: Record, + currencyType: RequestLogicTypes.CURRENCY.ETH | RequestLogicTypes.CURRENCY.BTC, + ) { + this.chains = chains; + this.chainNames = Object.keys(chains) as CHAIN_NAME[]; + this.addNativeCurrenciesToChains(currencyType); + } + + /** + * Adds the native currency to the list of currencies supported by each chain + */ + private addNativeCurrenciesToChains( + currencyType: RequestLogicTypes.CURRENCY.ETH | RequestLogicTypes.CURRENCY.BTC, + ): void { + this.chainNames.forEach((chainName) => { + const nativeCurrency = (nativeCurrencies[currencyType] as NamedNativeCurrency[]).find( + (currency) => currency.network === chainName, + ); + if (nativeCurrency) { + const chainCurrencies: TokenMap = this.chains[chainName].currencies || {}; + chainCurrencies.native = nativeCurrency; + this.chains[chainName].currencies = chainCurrencies; + } + }); + } + + /** + * Check if chainName lives amongst the list of supported chains by this chain type. + * Throws in the case it's not supported. + */ + public assertChainSupported(chainName: string): asserts chainName is CHAIN_NAME { + if (!(this.chainNames as string[]).includes(chainName)) + throw new Error(`Unsupported chain ${chainName}`); + } + + /** + * Retrieve the corresponding chain ID from Request Network's internal chain name representation + */ + public getChainId(chainName: CHAIN_NAME): CHAIN_ID { + return this.chains[chainName].chainId as CHAIN_ID; + } + + /** + * Retrieve Request Network's internal chain name representation from the corresponding chain ID + */ + public getChainName(chainId: CHAIN_ID): CHAIN_NAME | undefined { + return this.chainNames.find((chainName) => this.chains[chainName].chainId === chainId); + } +} diff --git a/packages/currency/src/chains/btc/BtcChains.ts b/packages/currency/src/chains/btc/BtcChains.ts new file mode 100644 index 0000000000..defd944134 --- /dev/null +++ b/packages/currency/src/chains/btc/BtcChains.ts @@ -0,0 +1,6 @@ +import { ChainsAbstract } from '../ChainsAbstract'; +import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { BtcChain, chains } from './index'; + +class BtcChains extends ChainsAbstract {} +export default new BtcChains(chains, RequestLogicTypes.CURRENCY.BTC); diff --git a/packages/currency/src/chains/btc/mainnet.ts b/packages/currency/src/chains/btc/data/mainnet.ts similarity index 100% rename from packages/currency/src/chains/btc/mainnet.ts rename to packages/currency/src/chains/btc/data/mainnet.ts diff --git a/packages/currency/src/chains/btc/testnet.ts b/packages/currency/src/chains/btc/data/testnet.ts similarity index 100% rename from packages/currency/src/chains/btc/testnet.ts rename to packages/currency/src/chains/btc/data/testnet.ts diff --git a/packages/currency/src/chains/btc/index.ts b/packages/currency/src/chains/btc/index.ts index d5dd2a3a5e..7c46a09b8e 100644 --- a/packages/currency/src/chains/btc/index.ts +++ b/packages/currency/src/chains/btc/index.ts @@ -1,16 +1,10 @@ -import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { CurrencyTypes } from '@requestnetwork/types'; import { Chain } from '../../types'; -import { - addNativeCurrenciesToChains, - genericAssertChainSupported, - genericGetChainId, - genericGetChainName, -} from '../utils'; -import * as MainnetDefinition from './mainnet'; -import * as TestnetDefinition from './testnet'; +import * as MainnetDefinition from './data/mainnet'; +import * as TestnetDefinition from './data/testnet'; -type BtcChain = Chain & { +export type BtcChain = Chain & { chainId: string; }; @@ -18,27 +12,3 @@ export const chains: Record = { mainnet: MainnetDefinition, testnet: TestnetDefinition, }; - -export const chainNames = Object.keys(chains) as CurrencyTypes.BtcChainName[]; - -// add native currencies -addNativeCurrenciesToChains(chains, RequestLogicTypes.CURRENCY.BTC); - -/** - * Asserts if a specific chain is supported across BTC-type supported chains - */ -export const assertChainSupported = - genericAssertChainSupported(chainNames); - -/** - * Get the BTC chain ID from the chain name - */ -export const getChainId = genericGetChainId(chains); - -/** - * Get the BTC chain name from its ID - */ -export const getChainName = genericGetChainName( - chains, - chainNames, -); diff --git a/packages/currency/src/chains/evm/EvmChains.ts b/packages/currency/src/chains/evm/EvmChains.ts new file mode 100644 index 0000000000..f9ee82f6de --- /dev/null +++ b/packages/currency/src/chains/evm/EvmChains.ts @@ -0,0 +1,6 @@ +import { ChainsAbstract } from '../ChainsAbstract'; +import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { chains, EvmChain } from './index'; + +class EvmChains extends ChainsAbstract {} +export default new EvmChains(chains, RequestLogicTypes.CURRENCY.ETH); diff --git a/packages/currency/src/chains/evm/avalanche.ts b/packages/currency/src/chains/evm/avalanche.ts deleted file mode 100644 index fc5c392c1d..0000000000 --- a/packages/currency/src/chains/evm/avalanche.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../../types'; -import { supportedAvalancheERC20 } from '../../erc20/chains/avalanche'; - -export const chainId = 43114; -export const currencies: TokenMap = { - ...supportedAvalancheERC20, -}; diff --git a/packages/currency/src/chains/evm/bsc.ts b/packages/currency/src/chains/evm/bsc.ts deleted file mode 100644 index cc56450cbf..0000000000 --- a/packages/currency/src/chains/evm/bsc.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../../types'; -import { supportedBSCERC20 } from '../../erc20/chains/bsc'; - -export const chainId = 56; -export const currencies: TokenMap = { - ...supportedBSCERC20, -}; diff --git a/packages/currency/src/chains/evm/bsctest.ts b/packages/currency/src/chains/evm/bsctest.ts deleted file mode 100644 index 018c898285..0000000000 --- a/packages/currency/src/chains/evm/bsctest.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../../types'; -import { supportedBSCTestERC20 } from '../../erc20/chains/bsctest'; - -export const chainId = 97; -export const currencies: TokenMap = { - ...supportedBSCTestERC20, -}; diff --git a/packages/currency/src/chains/evm/celo.ts b/packages/currency/src/chains/evm/celo.ts deleted file mode 100644 index 4b94ade661..0000000000 --- a/packages/currency/src/chains/evm/celo.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../../types'; -import { supportedCeloERC20 } from '../../erc20/chains/celo'; - -export const chainId = 42220; -export const currencies: TokenMap = { - ...supportedCeloERC20, -}; diff --git a/packages/currency/src/chains/evm/alfajores.ts b/packages/currency/src/chains/evm/data/alfajores.ts similarity index 100% rename from packages/currency/src/chains/evm/alfajores.ts rename to packages/currency/src/chains/evm/data/alfajores.ts diff --git a/packages/currency/src/chains/evm/arbitrum-one.ts b/packages/currency/src/chains/evm/data/arbitrum-one.ts similarity index 100% rename from packages/currency/src/chains/evm/arbitrum-one.ts rename to packages/currency/src/chains/evm/data/arbitrum-one.ts diff --git a/packages/currency/src/chains/evm/arbitrum-rinkeby.ts b/packages/currency/src/chains/evm/data/arbitrum-rinkeby.ts similarity index 100% rename from packages/currency/src/chains/evm/arbitrum-rinkeby.ts rename to packages/currency/src/chains/evm/data/arbitrum-rinkeby.ts diff --git a/packages/currency/src/chains/evm/data/avalanche.ts b/packages/currency/src/chains/evm/data/avalanche.ts new file mode 100644 index 0000000000..6bd1c9f5d6 --- /dev/null +++ b/packages/currency/src/chains/evm/data/avalanche.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../../types'; +import { supportedAvalancheERC20 } from '../../../erc20/chains/avalanche'; + +export const chainId = 43114; +export const currencies: TokenMap = { + ...supportedAvalancheERC20, +}; diff --git a/packages/currency/src/chains/evm/data/bsc.ts b/packages/currency/src/chains/evm/data/bsc.ts new file mode 100644 index 0000000000..b13f8f522a --- /dev/null +++ b/packages/currency/src/chains/evm/data/bsc.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../../types'; +import { supportedBSCERC20 } from '../../../erc20/chains/bsc'; + +export const chainId = 56; +export const currencies: TokenMap = { + ...supportedBSCERC20, +}; diff --git a/packages/currency/src/chains/evm/data/bsctest.ts b/packages/currency/src/chains/evm/data/bsctest.ts new file mode 100644 index 0000000000..7fc2bc374e --- /dev/null +++ b/packages/currency/src/chains/evm/data/bsctest.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../../types'; +import { supportedBSCTestERC20 } from '../../../erc20/chains/bsctest'; + +export const chainId = 97; +export const currencies: TokenMap = { + ...supportedBSCTestERC20, +}; diff --git a/packages/currency/src/chains/evm/data/celo.ts b/packages/currency/src/chains/evm/data/celo.ts new file mode 100644 index 0000000000..f07c603cd4 --- /dev/null +++ b/packages/currency/src/chains/evm/data/celo.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../../types'; +import { supportedCeloERC20 } from '../../../erc20/chains/celo'; + +export const chainId = 42220; +export const currencies: TokenMap = { + ...supportedCeloERC20, +}; diff --git a/packages/currency/src/chains/evm/data/fantom.ts b/packages/currency/src/chains/evm/data/fantom.ts new file mode 100644 index 0000000000..596a2db0db --- /dev/null +++ b/packages/currency/src/chains/evm/data/fantom.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../../types'; +import { supportedFantomERC20 } from '../../../erc20/chains/fantom'; + +export const chainId = 250; +export const currencies: TokenMap = { + ...supportedFantomERC20, +}; diff --git a/packages/currency/src/chains/evm/fuse.ts b/packages/currency/src/chains/evm/data/fuse.ts similarity index 100% rename from packages/currency/src/chains/evm/fuse.ts rename to packages/currency/src/chains/evm/data/fuse.ts diff --git a/packages/currency/src/chains/evm/data/goerli.ts b/packages/currency/src/chains/evm/data/goerli.ts new file mode 100644 index 0000000000..2668b32207 --- /dev/null +++ b/packages/currency/src/chains/evm/data/goerli.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../../types'; +import { supportedGoerliERC20 } from '../../../erc20/chains/goerli'; + +export const chainId = 5; +export const currencies: TokenMap = { + ...supportedGoerliERC20, +}; diff --git a/packages/currency/src/chains/evm/data/mainnet.ts b/packages/currency/src/chains/evm/data/mainnet.ts new file mode 100644 index 0000000000..4e6bb83ceb --- /dev/null +++ b/packages/currency/src/chains/evm/data/mainnet.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../../types'; +import { supportedMainnetERC20 } from '../../../erc20/chains/mainnet'; + +export const chainId = 1; +export const currencies: TokenMap = { + ...supportedMainnetERC20, +}; diff --git a/packages/currency/src/chains/evm/data/matic.ts b/packages/currency/src/chains/evm/data/matic.ts new file mode 100644 index 0000000000..a7738d898c --- /dev/null +++ b/packages/currency/src/chains/evm/data/matic.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../../types'; +import { supportedMaticERC20 } from '../../../erc20/chains/matic'; + +export const chainId = 137; +export const currencies: TokenMap = { + ...supportedMaticERC20, +}; diff --git a/packages/currency/src/chains/evm/data/moonbeam.ts b/packages/currency/src/chains/evm/data/moonbeam.ts new file mode 100644 index 0000000000..de586f0b7b --- /dev/null +++ b/packages/currency/src/chains/evm/data/moonbeam.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../../types'; +import { supportedMoonbeamERC20 } from '../../../erc20/chains/moonbeam'; + +export const chainId = 1284; +export const currencies: TokenMap = { + ...supportedMoonbeamERC20, +}; diff --git a/packages/currency/src/chains/evm/mumbai.ts b/packages/currency/src/chains/evm/data/mumbai.ts similarity index 100% rename from packages/currency/src/chains/evm/mumbai.ts rename to packages/currency/src/chains/evm/data/mumbai.ts diff --git a/packages/currency/src/chains/evm/data/optimism.ts b/packages/currency/src/chains/evm/data/optimism.ts new file mode 100644 index 0000000000..447d2f2300 --- /dev/null +++ b/packages/currency/src/chains/evm/data/optimism.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../../types'; +import { supportedOptimismERC20 } from '../../../erc20/chains/optimism'; + +export const chainId = 10; +export const currencies: TokenMap = { + ...supportedOptimismERC20, +}; diff --git a/packages/currency/src/chains/evm/private.ts b/packages/currency/src/chains/evm/data/private.ts similarity index 100% rename from packages/currency/src/chains/evm/private.ts rename to packages/currency/src/chains/evm/data/private.ts diff --git a/packages/currency/src/chains/evm/data/rinkeby.ts b/packages/currency/src/chains/evm/data/rinkeby.ts new file mode 100644 index 0000000000..1d3610f911 --- /dev/null +++ b/packages/currency/src/chains/evm/data/rinkeby.ts @@ -0,0 +1,9 @@ +import { TokenMap } from '../../../types'; +import { supportedRinkebyERC20 } from '../../../erc20/chains/rinkeby'; +import { supportedRinkebyERC777 } from '../../../erc777/chains/rinkeby'; + +export const chainId = 4; +export const currencies: TokenMap = { + ...supportedRinkebyERC20, + ...supportedRinkebyERC777, +}; diff --git a/packages/currency/src/chains/evm/ronin.ts b/packages/currency/src/chains/evm/data/ronin.ts similarity index 100% rename from packages/currency/src/chains/evm/ronin.ts rename to packages/currency/src/chains/evm/data/ronin.ts diff --git a/packages/currency/src/chains/evm/sokol.ts b/packages/currency/src/chains/evm/data/sokol.ts similarity index 100% rename from packages/currency/src/chains/evm/sokol.ts rename to packages/currency/src/chains/evm/data/sokol.ts diff --git a/packages/currency/src/chains/evm/tombchain.ts b/packages/currency/src/chains/evm/data/tombchain.ts similarity index 100% rename from packages/currency/src/chains/evm/tombchain.ts rename to packages/currency/src/chains/evm/data/tombchain.ts diff --git a/packages/currency/src/chains/evm/data/xdai.ts b/packages/currency/src/chains/evm/data/xdai.ts new file mode 100644 index 0000000000..edbf8ba0ce --- /dev/null +++ b/packages/currency/src/chains/evm/data/xdai.ts @@ -0,0 +1,7 @@ +import { TokenMap } from '../../../types'; +import { supportedXDAIERC20 } from '../../../erc20/chains/xdai'; + +export const chainId = 100; +export const currencies: TokenMap = { + ...supportedXDAIERC20, +}; diff --git a/packages/currency/src/chains/evm/fantom.ts b/packages/currency/src/chains/evm/fantom.ts deleted file mode 100644 index e25f7b6168..0000000000 --- a/packages/currency/src/chains/evm/fantom.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../../types'; -import { supportedFantomERC20 } from '../../erc20/chains/fantom'; - -export const chainId = 250; -export const currencies: TokenMap = { - ...supportedFantomERC20, -}; diff --git a/packages/currency/src/chains/evm/goerli.ts b/packages/currency/src/chains/evm/goerli.ts deleted file mode 100644 index 1e254ba60f..0000000000 --- a/packages/currency/src/chains/evm/goerli.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../../types'; -import { supportedGoerliERC20 } from '../../erc20/chains/goerli'; - -export const chainId = 5; -export const currencies: TokenMap = { - ...supportedGoerliERC20, -}; diff --git a/packages/currency/src/chains/evm/index.ts b/packages/currency/src/chains/evm/index.ts index 8b7dac3ef5..dc8c8ea2a3 100644 --- a/packages/currency/src/chains/evm/index.ts +++ b/packages/currency/src/chains/evm/index.ts @@ -1,35 +1,29 @@ -import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { CurrencyTypes } from '@requestnetwork/types'; import { Chain } from '../../types'; -import { - addNativeCurrenciesToChains, - genericAssertChainSupported, - genericGetChainId, - genericGetChainName, -} from '../utils'; -import * as AlfajoresDefinition from './alfajores'; -import * as ArbitrumOneDefinition from './arbitrum-one'; -import * as ArbitrumRinkebyDefinition from './arbitrum-rinkeby'; -import * as AvalancheDefinition from './avalanche'; -import * as BscDefinition from './bsc'; -import * as BscTestDefinition from './bsctest'; -import * as CeloDefinition from './celo'; -import * as FantomDefinition from './fantom'; -import * as FuseDefinition from './fuse'; -import * as GoerliDefinition from './goerli'; -import * as MainnetDefinition from './mainnet'; -import * as MaticDefinition from './matic'; -import * as MoonbeamDefinition from './moonbeam'; -import * as MumbaiDefinition from './mumbai'; -import * as OptimismDefinition from './optimism'; -import * as PrivateDefinition from './private'; -import * as RinkebyDefinition from './rinkeby'; -import * as RoninDefinition from './ronin'; -import * as SokolDefinition from './sokol'; -import * as TombchainDefinition from './tombchain'; -import * as XDaiDefinition from './xdai'; - -type EvmChain = Chain & { +import * as AlfajoresDefinition from './data/alfajores'; +import * as ArbitrumOneDefinition from './data/arbitrum-one'; +import * as ArbitrumRinkebyDefinition from './data/arbitrum-rinkeby'; +import * as AvalancheDefinition from './data/avalanche'; +import * as BscDefinition from './data/bsc'; +import * as BscTestDefinition from './data/bsctest'; +import * as CeloDefinition from './data/celo'; +import * as FantomDefinition from './data/fantom'; +import * as FuseDefinition from './data/fuse'; +import * as GoerliDefinition from './data/goerli'; +import * as MainnetDefinition from './data/mainnet'; +import * as MaticDefinition from './data/matic'; +import * as MoonbeamDefinition from './data/moonbeam'; +import * as MumbaiDefinition from './data/mumbai'; +import * as OptimismDefinition from './data/optimism'; +import * as PrivateDefinition from './data/private'; +import * as RinkebyDefinition from './data/rinkeby'; +import * as RoninDefinition from './data/ronin'; +import * as SokolDefinition from './data/sokol'; +import * as TombchainDefinition from './data/tombchain'; +import * as XDaiDefinition from './data/xdai'; + +export type EvmChain = Chain & { chainId: number; }; @@ -56,27 +50,3 @@ export const chains: Record = { tombchain: TombchainDefinition, xdai: XDaiDefinition, }; - -export const chainNames = Object.keys(chains) as CurrencyTypes.EvmChainName[]; - -// add native currencies -addNativeCurrenciesToChains(chains, RequestLogicTypes.CURRENCY.ETH); - -/** - * Asserts if a specific chain is supported across EVM-type supported chains - */ -export const assertChainSupported = - genericAssertChainSupported(chainNames); - -/** - * Get the EVM chain ID from the chain name - */ -export const getChainId = genericGetChainId(chains); - -/** - * Get the EVM chain name from its ID - */ -export const getChainName = genericGetChainName( - chains, - chainNames, -); diff --git a/packages/currency/src/chains/evm/mainnet.ts b/packages/currency/src/chains/evm/mainnet.ts deleted file mode 100644 index 1153da2ba5..0000000000 --- a/packages/currency/src/chains/evm/mainnet.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../../types'; -import { supportedMainnetERC20 } from '../../erc20/chains/mainnet'; - -export const chainId = 1; -export const currencies: TokenMap = { - ...supportedMainnetERC20, -}; diff --git a/packages/currency/src/chains/evm/matic.ts b/packages/currency/src/chains/evm/matic.ts deleted file mode 100644 index 883e0d45f0..0000000000 --- a/packages/currency/src/chains/evm/matic.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../../types'; -import { supportedMaticERC20 } from '../../erc20/chains/matic'; - -export const chainId = 137; -export const currencies: TokenMap = { - ...supportedMaticERC20, -}; diff --git a/packages/currency/src/chains/evm/moonbeam.ts b/packages/currency/src/chains/evm/moonbeam.ts deleted file mode 100644 index 7271170203..0000000000 --- a/packages/currency/src/chains/evm/moonbeam.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../../types'; -import { supportedMoonbeamERC20 } from '../../erc20/chains/moonbeam'; - -export const chainId = 1284; -export const currencies: TokenMap = { - ...supportedMoonbeamERC20, -}; diff --git a/packages/currency/src/chains/evm/optimism.ts b/packages/currency/src/chains/evm/optimism.ts deleted file mode 100644 index 1b37cf1abb..0000000000 --- a/packages/currency/src/chains/evm/optimism.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../../types'; -import { supportedOptimismERC20 } from '../../erc20/chains/optimism'; - -export const chainId = 10; -export const currencies: TokenMap = { - ...supportedOptimismERC20, -}; diff --git a/packages/currency/src/chains/evm/rinkeby.ts b/packages/currency/src/chains/evm/rinkeby.ts deleted file mode 100644 index 1c95f961ec..0000000000 --- a/packages/currency/src/chains/evm/rinkeby.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { TokenMap } from '../../types'; -import { supportedRinkebyERC20 } from '../../erc20/chains/rinkeby'; -import { supportedRinkebyERC777 } from '../../erc777/chains/rinkeby'; - -export const chainId = 4; -export const currencies: TokenMap = { - ...supportedRinkebyERC20, - ...supportedRinkebyERC777, -}; diff --git a/packages/currency/src/chains/evm/xdai.ts b/packages/currency/src/chains/evm/xdai.ts deleted file mode 100644 index fe601d5fcc..0000000000 --- a/packages/currency/src/chains/evm/xdai.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TokenMap } from '../../types'; -import { supportedXDAIERC20 } from '../../erc20/chains/xdai'; - -export const chainId = 100; -export const currencies: TokenMap = { - ...supportedXDAIERC20, -}; diff --git a/packages/currency/src/chains/index.ts b/packages/currency/src/chains/index.ts index 1cdf4999b4..cdac913071 100644 --- a/packages/currency/src/chains/index.ts +++ b/packages/currency/src/chains/index.ts @@ -1,26 +1,5 @@ -import { CurrencyTypes } from '@requestnetwork/types'; -import * as BTC from './btc'; -import * as EVM from './evm'; -import * as NEAR from './near'; +import BtcChains from './btc/BtcChains'; +import EvmChains from './evm/EvmChains'; +import NearChains from './near/NearChains'; -/** - * Asserts if a specific chain is supported across all supported chain types (BTC + EVM + NEAR) - * @param chainName - */ -export function assertChainSupported( - chainName: string, -): asserts chainName is CurrencyTypes.EvmChainName { - const chainSupported = [BTC, EVM, NEAR].some((chainType) => { - try { - chainType.assertChainSupported(chainName); - return true; - } catch (e) { - return false; - } - }); - if (!chainSupported) { - throw new Error(`Unsupported chain ${chainName}`); - } -} - -export { BTC, EVM, NEAR }; +export { BtcChains, EvmChains, NearChains }; diff --git a/packages/currency/src/chains/near/NearChains.ts b/packages/currency/src/chains/near/NearChains.ts new file mode 100644 index 0000000000..411d734c56 --- /dev/null +++ b/packages/currency/src/chains/near/NearChains.ts @@ -0,0 +1,6 @@ +import { ChainsAbstract } from '../ChainsAbstract'; +import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { NearChain, chains } from './index'; + +class NearChains extends ChainsAbstract {} +export default new NearChains(chains, RequestLogicTypes.CURRENCY.ETH); diff --git a/packages/currency/src/chains/near/near-testnet.ts b/packages/currency/src/chains/near/data/near-testnet.ts similarity index 100% rename from packages/currency/src/chains/near/near-testnet.ts rename to packages/currency/src/chains/near/data/near-testnet.ts diff --git a/packages/currency/src/chains/near/near.ts b/packages/currency/src/chains/near/data/near.ts similarity index 100% rename from packages/currency/src/chains/near/near.ts rename to packages/currency/src/chains/near/data/near.ts diff --git a/packages/currency/src/chains/near/index.ts b/packages/currency/src/chains/near/index.ts index 13e37910be..7d3a666531 100644 --- a/packages/currency/src/chains/near/index.ts +++ b/packages/currency/src/chains/near/index.ts @@ -1,16 +1,10 @@ -import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { CurrencyTypes } from '@requestnetwork/types'; import { Chain } from '../../types'; -import { - addNativeCurrenciesToChains, - genericAssertChainSupported, - genericGetChainId, - genericGetChainName, -} from '../utils'; -import * as NearDefinition from './near'; -import * as NearTestnetDefinition from './near-testnet'; +import * as NearDefinition from './data/near'; +import * as NearTestnetDefinition from './data/near-testnet'; -type NearChain = Chain; +export type NearChain = Chain; export const chains: Record = { aurora: NearDefinition, // FIXME: aurora should be removed from near chains (it is a mistake) @@ -18,27 +12,3 @@ export const chains: Record = { near: NearDefinition, 'near-testnet': NearTestnetDefinition, }; - -export const chainNames = Object.keys(chains) as CurrencyTypes.NearChainName[]; - -// add native currencies -addNativeCurrenciesToChains(chains, RequestLogicTypes.CURRENCY.ETH); - -/** - * Asserts if a specific chain is supported across NEAR-type supported chains - */ -export const assertChainSupported = - genericAssertChainSupported(chainNames); - -/** - * Get the NEAR chain ID from the chain name - */ -export const getChainId = genericGetChainId(chains); - -/** - * Get the NEAR chain name from its ID - */ -export const getChainName = genericGetChainName( - chains, - chainNames, -); diff --git a/packages/currency/src/chains/utils.ts b/packages/currency/src/chains/utils.ts index f937e29d1f..87c087094b 100644 --- a/packages/currency/src/chains/utils.ts +++ b/packages/currency/src/chains/utils.ts @@ -2,13 +2,9 @@ import { nativeCurrencies } from '../native'; import { Chain, NamedNativeCurrency, TokenMap } from '../types'; import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; -export const genericAssertChainSupported = (chainNames: T[]) => { - return function (chainName: string): asserts chainName is T { - if (!(chainNames as string[]).includes(chainName)) - throw new Error(`Unsupported chain ${chainName}`); - }; -}; - +/** + * Adds the native currency to the list of currencies supported by each chain + */ export const addNativeCurrenciesToChains = ( chains: Record, currencyType: RequestLogicTypes.CURRENCY.ETH | RequestLogicTypes.CURRENCY.BTC, @@ -26,17 +22,34 @@ export const addNativeCurrenciesToChains = ( }); }; +export const genericAssertChainSupported = ( + chainNames: CHAIN_NAME[], +) => { + return function (chainName: string): asserts chainName is CHAIN_NAME { + if (!(chainNames as string[]).includes(chainName)) + throw new Error(`Unsupported chain ${chainName}`); + }; +}; + export const genericGetChainId = - ( - chains: Record, + < + CHAIN_NAME extends CurrencyTypes.ChainName, + CHAIN extends Chain, + CHAIN_ID extends string | number, + >( + chains: Record, ) => - (chainName: T): S => - chains[chainName].chainId as S; + (chainName: CHAIN_NAME): CHAIN_ID => + chains[chainName].chainId as CHAIN_ID; export const genericGetChainName = - ( - chains: Record, - chainNames: T[], + < + CHAIN_NAME extends CurrencyTypes.ChainName, + CHAIN extends Chain, + CHAIN_ID extends string | number, + >( + chains: Record, + chainNames: CHAIN_NAME[], ) => - (chainId: S): T | undefined => + (chainId: CHAIN_ID): CHAIN_NAME | undefined => chainNames.find((chainName) => chains[chainName].chainId === chainId); diff --git a/packages/currency/src/index.ts b/packages/currency/src/index.ts index 4727cc7576..e3f77834d2 100644 --- a/packages/currency/src/index.ts +++ b/packages/currency/src/index.ts @@ -1,4 +1,4 @@ -export { assertChainSupported, EVM, BTC } from './chains'; +export * from './chains'; export { getSupportedERC20Tokens } from './erc20'; export { getSupportedERC777Tokens } from './erc777'; export { diff --git a/packages/ethereum-storage/src/ethereum-utils.ts b/packages/ethereum-storage/src/ethereum-utils.ts index fffe007c3f..fae9c21aab 100644 --- a/packages/ethereum-storage/src/ethereum-utils.ts +++ b/packages/ethereum-storage/src/ethereum-utils.ts @@ -2,7 +2,7 @@ import { CurrencyTypes, StorageTypes } from '@requestnetwork/types'; import * as config from './config'; import { BigNumber } from 'ethers'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; /** * Collection of utils functions related to Ethereum Storage @@ -17,7 +17,7 @@ import { EVM } from '@requestnetwork/currency'; export const getEthereumStorageNetworkNameFromId = ( networkId: StorageTypes.EthereumNetwork, ): CurrencyTypes.EvmChainName => { - const chainName = EVM.getChainName(networkId); + const chainName = EvmChains.getChainName(networkId); if (!chainName) { // this should never happen throw new Error(`Unsupported storage chain: ${networkId}`); @@ -28,7 +28,7 @@ export const getEthereumStorageNetworkNameFromId = ( export const getEthereumStorageNetworkIdFromName = ( name: CurrencyTypes.EvmChainName, ): number | undefined => { - const networkId = EVM.getChainId(name); + const networkId = EvmChains.getChainId(name); return Object.values(StorageTypes.EthereumNetwork).includes(networkId) ? networkId : undefined; }; diff --git a/packages/payment-detection/src/any/any-to-erc20-proxy.ts b/packages/payment-detection/src/any/any-to-erc20-proxy.ts index b3c129334f..d8d2a6bb91 100644 --- a/packages/payment-detection/src/any/any-to-erc20-proxy.ts +++ b/packages/payment-detection/src/any/any-to-erc20-proxy.ts @@ -11,7 +11,7 @@ import { TheGraphInfoRetriever } from '../thegraph'; import { makeGetDeploymentInformation } from '../utils'; import { PaymentNetworkOptions, ReferenceBasedDetectorOptions } from '../types'; import { generate8randomBytes } from '@requestnetwork/utils'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; const PROXY_CONTRACT_ADDRESS_MAP = { ['0.1.0']: '0.1.0', @@ -141,7 +141,7 @@ export class AnyToERC20PaymentDetector extends ERC20FeeProxyPaymentDetectorBase< if (!network) { throw Error(`request.extensions[${this.paymentNetworkId}].values.network must be defined`); } - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); return network; } diff --git a/packages/payment-detection/src/any/any-to-eth-proxy.ts b/packages/payment-detection/src/any/any-to-eth-proxy.ts index 82ad51437c..64cb911ad1 100644 --- a/packages/payment-detection/src/any/any-to-eth-proxy.ts +++ b/packages/payment-detection/src/any/any-to-eth-proxy.ts @@ -6,7 +6,7 @@ import { RequestLogicTypes, } from '@requestnetwork/types'; -import { EVM, UnsupportedCurrencyError } from '@requestnetwork/currency'; +import { EvmChains, UnsupportedCurrencyError } from '@requestnetwork/currency'; import { AnyToEthInfoRetriever } from './retrievers/any-to-eth-proxy'; import { AnyToAnyDetector } from '../any-to-any-detector'; @@ -127,7 +127,7 @@ export class AnyToEthFeeProxyPaymentDetector extends AnyToAnyDetector< if (!network) { throw Error(`request.extensions[${this.paymentNetworkId}].values.network must be defined`); } - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); return network; } diff --git a/packages/payment-detection/src/erc20/currency.ts b/packages/payment-detection/src/erc20/currency.ts index 70b44ec749..a8d938a673 100644 --- a/packages/payment-detection/src/erc20/currency.ts +++ b/packages/payment-detection/src/erc20/currency.ts @@ -1,7 +1,7 @@ import { CurrencyDefinition, CurrencyManager, - EVM, + EvmChains, getCurrencyHash, StorageCurrency, } from '@requestnetwork/currency'; @@ -20,7 +20,7 @@ export const loadCurrencyFromContract = async ( if (!network || !isAddress(value)) { return null; } - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); const contract = ERC20__factory.connect(value, getDefaultProvider(network)); const decimals = await contract.decimals(); diff --git a/packages/payment-detection/src/near/near-conversion-detector.ts b/packages/payment-detection/src/near/near-conversion-detector.ts index b38b46838d..5907693f85 100644 --- a/packages/payment-detection/src/near/near-conversion-detector.ts +++ b/packages/payment-detection/src/near/near-conversion-detector.ts @@ -4,7 +4,7 @@ import { PaymentTypes, RequestLogicTypes, } from '@requestnetwork/types'; -import { EVM, UnsupportedCurrencyError } from '@requestnetwork/currency'; +import { NearChains, UnsupportedCurrencyError } from '@requestnetwork/currency'; import { NearConversionInfoRetriever } from './retrievers/near-conversion-info-retriever'; import { AnyToNativeDetector } from '../any-to-native-detector'; import { NetworkNotSupported } from '../balance-error'; @@ -95,12 +95,12 @@ export class NearConversionNativeTokenPaymentDetector extends AnyToNativeDetecto }; } - protected getPaymentChain(request: RequestLogicTypes.IRequest): CurrencyTypes.EvmChainName { + protected getPaymentChain(request: RequestLogicTypes.IRequest): CurrencyTypes.NearChainName { const network = this.getPaymentExtension(request).values.network; if (!network) { throw Error(`request.extensions[${this.paymentNetworkId}].values.network must be defined`); } - EVM.assertChainSupported(network); + NearChains.assertChainSupported(network); return network; } diff --git a/packages/payment-detection/src/near/near-detector.ts b/packages/payment-detection/src/near/near-detector.ts index a20c6f7d33..1cd5c03c4c 100644 --- a/packages/payment-detection/src/near/near-detector.ts +++ b/packages/payment-detection/src/near/near-detector.ts @@ -63,7 +63,7 @@ export class NearNativeTokenPaymentDetector extends NativeTokenPaymentDetector { address: string | undefined, paymentReference: string, _requestCurrency: RequestLogicTypes.ICurrency, - paymentChain: CurrencyTypes.EvmChainName, + paymentChain: CurrencyTypes.NearChainName, paymentNetwork: ExtensionTypes.IState, ): Promise> { if (!address) { diff --git a/packages/payment-processor/src/payment/batch-proxy.ts b/packages/payment-processor/src/payment/batch-proxy.ts index 1b56b0c532..7b3d750a57 100644 --- a/packages/payment-processor/src/payment/batch-proxy.ts +++ b/packages/payment-processor/src/payment/batch-proxy.ts @@ -15,7 +15,7 @@ import { import { validateEthFeeProxyRequest } from './eth-fee-proxy'; import { IPreparedTransaction } from './prepared-transaction'; import { checkErc20Allowance, encodeApproveAnyErc20 } from './erc20'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; /** * ERC20 Batch Proxy payment details: @@ -224,7 +224,7 @@ export function getBatchProxyAddress(request: ClientTypes.IRequestData, version: if (!network) { throw new Error('No currency network'); } - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); const proxyAddress = batchPaymentsArtifact.getAddress(network, version); diff --git a/packages/payment-processor/src/payment/erc20-escrow-payment.ts b/packages/payment-processor/src/payment/erc20-escrow-payment.ts index cd1f7b66c4..9745b483ab 100644 --- a/packages/payment-processor/src/payment/erc20-escrow-payment.ts +++ b/packages/payment-processor/src/payment/erc20-escrow-payment.ts @@ -13,7 +13,7 @@ import { import { ITransactionOverrides } from './transaction-overrides'; import { encodeApproveAnyErc20 } from './erc20'; import { IPreparedTransaction } from './prepared-transaction'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; /** * Returns the EscrowToPay contract address corresponding to the request payment network @@ -21,7 +21,7 @@ import { EVM } from '@requestnetwork/currency'; */ function getContractAddress(request: ClientTypes.IRequestData) { const { network } = request.currencyInfo; - EVM.assertChainSupported(network!); + EvmChains.assertChainSupported(network!); return erc20EscrowToPayArtifact.getAddress(network); } diff --git a/packages/payment-processor/src/payment/erc20-fee-proxy.ts b/packages/payment-processor/src/payment/erc20-fee-proxy.ts index 3e48cf4ba4..bbf203f98a 100644 --- a/packages/payment-processor/src/payment/erc20-fee-proxy.ts +++ b/packages/payment-processor/src/payment/erc20-fee-proxy.ts @@ -4,7 +4,7 @@ import { erc20FeeProxyArtifact } from '@requestnetwork/smart-contracts'; import { ERC20FeeProxy__factory } from '@requestnetwork/smart-contracts/types'; import { ClientTypes, ExtensionTypes } from '@requestnetwork/types'; import { getPaymentNetworkExtension } from '@requestnetwork/payment-detection'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; import { ITransactionOverrides } from './transaction-overrides'; import { @@ -83,7 +83,7 @@ export function _getErc20FeeProxyPaymentUrl( const { paymentReference, paymentAddress, feeAddress, feeAmount, version } = getRequestPaymentValues(request); const { network } = request.currencyInfo; - EVM.assertChainSupported(network!); + EvmChains.assertChainSupported(network!); const contractAddress = erc20FeeProxyArtifact.getAddress(network, version); const amountToPay = getAmountToPay(request, amount); const feeToPay = feeAmountOverride || BigNumber.from(feeAmount || 0); @@ -106,7 +106,7 @@ export function prepareErc20FeeProxyPaymentTransaction( validateErc20FeeProxyRequest(request, amount, feeAmountOverride); const { network } = request.currencyInfo; - EVM.assertChainSupported(network!); + EvmChains.assertChainSupported(network!); const encodedTx = encodePayErc20FeeRequest(request, amount, feeAmountOverride); const pn = getPaymentNetworkExtension(request); const proxyAddress = erc20FeeProxyArtifact.getAddress(network, pn?.version); diff --git a/packages/payment-processor/src/payment/swap-any-to-erc20.ts b/packages/payment-processor/src/payment/swap-any-to-erc20.ts index a9b0c7fba9..bf16e5dfdc 100644 --- a/packages/payment-processor/src/payment/swap-any-to-erc20.ts +++ b/packages/payment-processor/src/payment/swap-any-to-erc20.ts @@ -13,7 +13,7 @@ import { getSigner, validateConversionFeeProxyRequest, } from './utils'; -import { CurrencyManager, EVM, UnsupportedCurrencyError } from '@requestnetwork/currency'; +import { CurrencyManager, EvmChains, UnsupportedCurrencyError } from '@requestnetwork/currency'; import { IRequestPaymentOptions } from './settings'; import { IPreparedTransaction } from './prepared-transaction'; @@ -91,7 +91,7 @@ export function encodeSwapToPayAnyToErc20Request( if (!network) { throw new Error(`Currency in conversion settings must have a network`); } - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); const requestCurrency = currencyManager.fromStorageCurrency(request.currencyInfo); if (!requestCurrency) { diff --git a/packages/payment-processor/src/payment/swap-erc20-fee-proxy.ts b/packages/payment-processor/src/payment/swap-erc20-fee-proxy.ts index 3f39bb1cee..19b4f41c5c 100644 --- a/packages/payment-processor/src/payment/swap-erc20-fee-proxy.ts +++ b/packages/payment-processor/src/payment/swap-erc20-fee-proxy.ts @@ -15,7 +15,7 @@ import { } from './utils'; import { IPreparedTransaction } from './prepared-transaction'; import { Erc20PaymentNetwork } from '@requestnetwork/payment-detection'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; /** * Details required for a token swap: @@ -85,7 +85,7 @@ export function prepareSwapToPayErc20FeeRequest( options?: ISwapTransactionOptions, ): IPreparedTransaction { const { network } = request.currencyInfo; - EVM.assertChainSupported(network!); + EvmChains.assertChainSupported(network!); const encodedTx = encodeSwapToPayErc20FeeRequest( request, signerOrProvider, @@ -115,7 +115,7 @@ export function encodeSwapToPayErc20FeeRequest( options?: IRequestPaymentOptions, ): string { const { network } = request.currencyInfo; - EVM.assertChainSupported(network!); + EvmChains.assertChainSupported(network!); validateErc20FeeProxyRequest(request, options?.amount, options?.feeAmount); diff --git a/packages/payment-processor/src/payment/swap-erc20.ts b/packages/payment-processor/src/payment/swap-erc20.ts index 33ea1d55a9..655078de51 100644 --- a/packages/payment-processor/src/payment/swap-erc20.ts +++ b/packages/payment-processor/src/payment/swap-erc20.ts @@ -7,7 +7,7 @@ import { ITransactionOverrides } from './transaction-overrides'; import { getProvider, getSigner } from './utils'; import { checkErc20Allowance, encodeApproveAnyErc20 } from './erc20'; import { IPreparedTransaction } from './prepared-transaction'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; /** * Processes the approval transaction of a given payment ERC20 to be spent by the swap router, @@ -59,7 +59,7 @@ export async function hasApprovalErc20ForSwapToPay( if (!network) { throw new Error('Request currency network is missing'); } - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); return checkErc20Allowance( ownerAddress, erc20SwapToPayArtifact.getAddress(network), @@ -108,7 +108,7 @@ export function prepareApprovalErc20ForSwapToPay( amount?: BigNumber, ): IPreparedTransaction { const { network } = request.currencyInfo; - EVM.assertChainSupported(network!); + EvmChains.assertChainSupported(network!); const encodedTx = encodeApproveAnyErc20( paymentTokenAddress, erc20SwapToPayArtifact.getAddress(network), diff --git a/packages/payment-processor/src/payment/utils.ts b/packages/payment-processor/src/payment/utils.ts index da498f5deb..007cc3d0df 100644 --- a/packages/payment-processor/src/payment/utils.ts +++ b/packages/payment-processor/src/payment/utils.ts @@ -7,7 +7,7 @@ import { ExtensionTypes, RequestLogicTypes, } from '@requestnetwork/types'; -import { EVM, getCurrencyHash } from '@requestnetwork/currency'; +import { EvmChains, getCurrencyHash } from '@requestnetwork/currency'; import { ERC20__factory } from '@requestnetwork/smart-contracts/types'; import { getPaymentNetworkExtension } from '@requestnetwork/payment-detection'; @@ -165,7 +165,7 @@ export const getProxyAddress = ( version?: string, ): string => { const { paymentNetwork, network } = getPnAndNetwork(request); - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); const deploymentInfo = getDeploymentInformation(network, version || paymentNetwork.version); if (!deploymentInfo) { throw new Error( diff --git a/packages/smart-contracts/scripts-create2/compute-one-address.ts b/packages/smart-contracts/scripts-create2/compute-one-address.ts index 8f46d27d01..84ce87ad94 100644 --- a/packages/smart-contracts/scripts-create2/compute-one-address.ts +++ b/packages/smart-contracts/scripts-create2/compute-one-address.ts @@ -2,7 +2,7 @@ import { HardhatRuntimeEnvironmentExtended, IDeploymentParams } from './types'; import { requestDeployer } from '../src/lib'; import { create2ContractDeploymentList } from './utils'; import { getConstructorArgs } from './constructor-args'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; // Deploys, set up the contracts export async function computeCreate2DeploymentAddress( @@ -48,7 +48,7 @@ export const computeCreate2DeploymentAddressesFromList = async ( hre: HardhatRuntimeEnvironmentExtended, ): Promise => { const chain = hre.network.name; - EVM.assertChainSupported(chain); + EvmChains.assertChainSupported(chain); await Promise.all( create2ContractDeploymentList.map(async (contract) => { let address: string; diff --git a/packages/smart-contracts/scripts-create2/contract-setup/setupBatchConversionPayments.ts b/packages/smart-contracts/scripts-create2/contract-setup/setupBatchConversionPayments.ts index 48b6656928..06ffdad522 100644 --- a/packages/smart-contracts/scripts-create2/contract-setup/setupBatchConversionPayments.ts +++ b/packages/smart-contracts/scripts-create2/contract-setup/setupBatchConversionPayments.ts @@ -7,7 +7,7 @@ import { updateBatchPaymentFees, updateNativeAndUSDAddress, } from './adminTasks'; -import { CurrencyManager, EVM } from '@requestnetwork/currency'; +import { CurrencyManager, EvmChains } from '@requestnetwork/currency'; import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; /** @@ -79,7 +79,7 @@ export const setupBatchConversionPayments = async ( }; for (const network of hre.config.xdeploy.networks) { try { - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); await Promise.resolve(setUpActions(network)); } catch (err) { console.warn(`An error occurred during the setup of BatchConversion on ${network}`); diff --git a/packages/smart-contracts/scripts-create2/contract-setup/setupERC20SwapToConversion.ts b/packages/smart-contracts/scripts-create2/contract-setup/setupERC20SwapToConversion.ts index 212658f4e3..41763e16f8 100644 --- a/packages/smart-contracts/scripts-create2/contract-setup/setupERC20SwapToConversion.ts +++ b/packages/smart-contracts/scripts-create2/contract-setup/setupERC20SwapToConversion.ts @@ -6,7 +6,7 @@ import { updateRequestSwapFees, updateSwapRouter, } from './adminTasks'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; /** * Updates the values of the chainlinkConversionPath and swap router of the ERC20SwapToConversion contract, if needed @@ -25,7 +25,7 @@ export const setupERC20SwapToConversion = async ( await Promise.all( hre.config.xdeploy.networks.map(async (network) => { try { - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); const { signer, txOverrides } = await getSignerAndGasFees(network, hre); const ERC20SwapToConversionConnected = await ERC20SwapToConversionContract.connect(signer); diff --git a/packages/smart-contracts/scripts-create2/contract-setup/setupETHConversionProxy.ts b/packages/smart-contracts/scripts-create2/contract-setup/setupETHConversionProxy.ts index 9717559465..8a97f44050 100644 --- a/packages/smart-contracts/scripts-create2/contract-setup/setupETHConversionProxy.ts +++ b/packages/smart-contracts/scripts-create2/contract-setup/setupETHConversionProxy.ts @@ -1,4 +1,4 @@ -import { CurrencyManager, EVM } from '@requestnetwork/currency'; +import { CurrencyManager, EvmChains } from '@requestnetwork/currency'; import { RequestLogicTypes } from '@requestnetwork/types'; import { ethConversionArtifact } from '../../src/lib'; import { HardhatRuntimeEnvironmentExtended } from '../types'; @@ -26,7 +26,7 @@ export const setupETHConversionProxy = async ( await Promise.all( hre.config.xdeploy.networks.map(async (network) => { try { - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); const { signer, txOverrides } = await getSignerAndGasFees(network, hre); const nativeTokenHash = CurrencyManager.getDefault().getNativeCurrency( RequestLogicTypes.CURRENCY.ETH, diff --git a/packages/smart-contracts/scripts-create2/contract-setup/setupErc20ConversionProxy.ts b/packages/smart-contracts/scripts-create2/contract-setup/setupErc20ConversionProxy.ts index 54b52d0623..e668949390 100644 --- a/packages/smart-contracts/scripts-create2/contract-setup/setupErc20ConversionProxy.ts +++ b/packages/smart-contracts/scripts-create2/contract-setup/setupErc20ConversionProxy.ts @@ -5,7 +5,7 @@ import { updateChainlinkConversionPath, updatePaymentFeeProxyAddress, } from './adminTasks'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; const ERC20ConversionVersion = '0.1.2'; @@ -26,7 +26,7 @@ export const setupErc20ConversionProxy = async ( await Promise.all( hre.config.xdeploy.networks.map(async (network) => { try { - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); const { signer, txOverrides } = await getSignerAndGasFees(network, hre); const Erc20ConversionProxyConnected = Erc20ConversionProxyContract.connect(signer); await updatePaymentFeeProxyAddress( diff --git a/packages/smart-contracts/scripts-create2/deploy.ts b/packages/smart-contracts/scripts-create2/deploy.ts index 5e1fbc27f4..f80b7e9539 100644 --- a/packages/smart-contracts/scripts-create2/deploy.ts +++ b/packages/smart-contracts/scripts-create2/deploy.ts @@ -10,7 +10,7 @@ import { setupERC20SwapToPay, setupETHConversionProxy, } from './contract-setup'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; // Deploys, set up the contracts and returns the address export const deployOneWithCreate2 = async ( @@ -90,14 +90,14 @@ export const deployWithCreate2FromList = async ( } case 'ERC20EscrowToPay': { const network = hre.config.xdeploy.networks[0]; - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); const constructorArgs = getConstructorArgs(contract, network); await deployOneWithCreate2({ contract, constructorArgs }, hre); break; } case 'BatchConversionPayments': { const network = hre.config.xdeploy.networks[0]; - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); const constructorArgs = getConstructorArgs(contract, network); const address = await deployOneWithCreate2({ contract, constructorArgs }, hre); await setupBatchConversionPayments(address, hre); diff --git a/packages/smart-contracts/scripts-create2/utils.ts b/packages/smart-contracts/scripts-create2/utils.ts index dcfe61cebe..b78c16b92f 100644 --- a/packages/smart-contracts/scripts-create2/utils.ts +++ b/packages/smart-contracts/scripts-create2/utils.ts @@ -1,6 +1,6 @@ import { Contract } from 'ethers'; import * as artifacts from '../src/lib'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; /** * List of smart contract that we deploy using the CREATE2 scheme through the Request Deployer contract @@ -69,7 +69,7 @@ export const isContractDeployed = ( computedAddress: string, ): boolean => { try { - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); const contractArtifact = getArtifact(contract); const addresses = contractArtifact.getAllAddresses(network); return addresses.some((x) => x.address === computedAddress); diff --git a/packages/smart-contracts/scripts-create2/verify.ts b/packages/smart-contracts/scripts-create2/verify.ts index 527dd1530b..bdd7e67f27 100644 --- a/packages/smart-contracts/scripts-create2/verify.ts +++ b/packages/smart-contracts/scripts-create2/verify.ts @@ -2,7 +2,7 @@ import { computeCreate2DeploymentAddress } from './compute-one-address'; import { getConstructorArgs } from './constructor-args'; import { HardhatRuntimeEnvironmentExtended, IDeploymentParams } from './types'; import { create2ContractDeploymentList } from './utils'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; export const verifyOne = async ( contractAddress: string, @@ -47,7 +47,7 @@ export async function VerifyCreate2FromList(hre: HardhatRuntimeEnvironmentExtend case 'ERC20EscrowToPay': case 'BatchConversionPayments': { const network = hre.config.xdeploy.networks[0]; - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); const constructorArgs = getConstructorArgs(contract, network); address = await computeCreate2DeploymentAddress({ contract, constructorArgs }, hre); await verifyOne(address, { contract, constructorArgs }, hre); diff --git a/packages/smart-contracts/scripts/deploy-one.ts b/packages/smart-contracts/scripts/deploy-one.ts index 5644b75d7e..1bfb1f04d1 100644 --- a/packages/smart-contracts/scripts/deploy-one.ts +++ b/packages/smart-contracts/scripts/deploy-one.ts @@ -2,7 +2,7 @@ import '@nomiclabs/hardhat-ethers'; import { HardhatRuntimeEnvironment } from 'hardhat/types'; import { Contract } from 'ethers'; import { ContractArtifact } from '../src/lib'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; export interface DeploymentResult { address: string; @@ -61,7 +61,7 @@ export async function deployOne( if (options?.artifact) { try { const chain = hre.network.name; - EVM.assertChainSupported(chain); + EvmChains.assertChainSupported(chain); address = options.artifact.getAddress(chain, options.version); const action = args.force ? '(forcing deployment)' : '(skipping)'; console.log( diff --git a/packages/smart-contracts/scripts/test-deploy-batch-conversion-deployment.ts b/packages/smart-contracts/scripts/test-deploy-batch-conversion-deployment.ts index 77dfa7ca0f..cff4bfef7e 100644 --- a/packages/smart-contracts/scripts/test-deploy-batch-conversion-deployment.ts +++ b/packages/smart-contracts/scripts/test-deploy-batch-conversion-deployment.ts @@ -11,7 +11,7 @@ import { ethConversionArtifact, ethereumFeeProxyArtifact, } from '../src/lib'; -import { CurrencyManager, EVM } from '@requestnetwork/currency'; +import { CurrencyManager, EvmChains } from '@requestnetwork/currency'; import { deployAddressChecking } from './utils'; import { BigNumber } from 'ethers'; import { PRECISION_RATE } from './test-deploy_chainlink_contract'; @@ -26,7 +26,7 @@ export async function deployBatchConversionPayment( try { console.log('Deploy BatchConversionPayments'); const chain = hre.network.name; - EVM.assertChainSupported(chain); + EvmChains.assertChainSupported(chain); const _ERC20FeeProxyAddress = erc20FeeProxyArtifact.getAddress('private'); const _EthereumFeeProxyAddress = ethereumFeeProxyArtifact.getAddress('private'); const _paymentErc20ConversionFeeProxy = erc20ConversionProxy.getAddress('private'); diff --git a/packages/smart-contracts/scripts/test-deploy-batch-erc-eth-deployment.ts b/packages/smart-contracts/scripts/test-deploy-batch-erc-eth-deployment.ts index 32c26b0156..2d115a3f07 100644 --- a/packages/smart-contracts/scripts/test-deploy-batch-erc-eth-deployment.ts +++ b/packages/smart-contracts/scripts/test-deploy-batch-erc-eth-deployment.ts @@ -4,13 +4,13 @@ import { deployOne } from '../scripts/deploy-one'; import { batchPaymentsArtifact } from '../src/lib'; import { deployAddressChecking } from './utils'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; // Deploys, set up the contracts export async function deployBatchPayment(args: any, hre: HardhatRuntimeEnvironment): Promise { try { const chain = hre.network.name; - EVM.assertChainSupported(chain); + EvmChains.assertChainSupported(chain); const ERC20FeeProxyAddress = '0x75c35C980C0d37ef46DF04d31A140b65503c0eEd'; const EthereumFeeProxyAddress = '0x3d49d1eF2adE060a33c6E6Aa213513A7EE9a6241'; diff --git a/packages/smart-contracts/test/contracts/BatchConversionPayments.test.ts b/packages/smart-contracts/test/contracts/BatchConversionPayments.test.ts index f5ffa249af..ff6a7cfe19 100644 --- a/packages/smart-contracts/test/contracts/BatchConversionPayments.test.ts +++ b/packages/smart-contracts/test/contracts/BatchConversionPayments.test.ts @@ -13,7 +13,7 @@ import { import { PaymentTypes } from '@requestnetwork/types'; import { BigNumber, ContractTransaction, Signer } from 'ethers'; import { expect } from 'chai'; -import { CurrencyManager, EVM } from '@requestnetwork/currency'; +import { CurrencyManager, EvmChains } from '@requestnetwork/currency'; import { chainlinkConversionPath } from '../../src/lib'; import { FAU_USD_RATE } from '../../scripts/test-deploy-batch-conversion-deployment'; import { localERC20AlphaArtifact, secondLocalERC20AlphaArtifact } from './localArtifacts'; @@ -29,7 +29,7 @@ const BATCH_PAYMENT_NETWORK_ID = PaymentTypes.BATCH_PAYMENT_NETWORK_ID; describe('contract: BatchConversionPayments', async () => { const networkConfig = network.config as HttpNetworkConfig; - EVM.assertChainSupported(network.name); + EvmChains.assertChainSupported(network.name); const provider = new ethers.providers.JsonRpcProvider(networkConfig.url); let adminAddress: string; @@ -125,7 +125,7 @@ describe('contract: BatchConversionPayments', async () => { [adminAddress, from, to, feeAddress] = (await ethers.getSigners()).map((s) => s.address); [adminSigner, fromSigner, , , signer4] = await ethers.getSigners(); - EVM.assertChainSupported(network.name); + EvmChains.assertChainSupported(network.name); chainlinkPath = chainlinkConversionPath.connect(network.name, fromSigner); const erc20FeeProxy = await new ERC20FeeProxy__factory(adminSigner).deploy(); diff --git a/packages/smart-contracts/test/contracts/BatchNoConversionErc20Payments.test.ts b/packages/smart-contracts/test/contracts/BatchNoConversionErc20Payments.test.ts index b2e0bd2f3e..ba5cdfeb0f 100644 --- a/packages/smart-contracts/test/contracts/BatchNoConversionErc20Payments.test.ts +++ b/packages/smart-contracts/test/contracts/BatchNoConversionErc20Payments.test.ts @@ -12,7 +12,7 @@ import { TestERC20__factory, } from '../../src/types'; import { chainlinkConversionPath } from '../../src/lib'; -import { CurrencyManager, EVM } from '@requestnetwork/currency'; +import { CurrencyManager, EvmChains } from '@requestnetwork/currency'; import { RequestDetail } from 'types/dist/payment-types'; const logGasInfos = false; @@ -67,7 +67,7 @@ describe('contract: batchNoConversionPayments: ERC20', () => { erc20FeeProxy = await new ERC20FeeProxy__factory(owner).deploy(); const ethFeeProxy = await new EthereumFeeProxy__factory(owner).deploy(); - EVM.assertChainSupported(network.name); + EvmChains.assertChainSupported(network.name); chainlinkPath = chainlinkConversionPath.connect(network.name, owner); batch = await new BatchNoConversionPayments__factory(owner).deploy( erc20FeeProxy.address, diff --git a/packages/smart-contracts/test/contracts/BatchNoConversionEthPayments.test.ts b/packages/smart-contracts/test/contracts/BatchNoConversionEthPayments.test.ts index 8607a5d5ec..e3d977802b 100644 --- a/packages/smart-contracts/test/contracts/BatchNoConversionEthPayments.test.ts +++ b/packages/smart-contracts/test/contracts/BatchNoConversionEthPayments.test.ts @@ -12,7 +12,7 @@ import { EthereumFeeProxy, BatchNoConversionPayments } from '../../src/types'; import { chainlinkConversionPath } from '../../src/lib'; import { HttpNetworkConfig } from 'hardhat/types'; import { PaymentTypes } from 'types/dist'; -import { CurrencyManager, EVM } from '@requestnetwork/currency'; +import { CurrencyManager, EvmChains } from '@requestnetwork/currency'; const logGasInfos = false; @@ -65,7 +65,7 @@ describe('contract: batchNoConversionPayments: Ethereum', () => { const erc20FeeProxy = await new ERC20FeeProxy__factory(owner).deploy(); ethFeeProxy = await new EthereumFeeProxy__factory(owner).deploy(); - EVM.assertChainSupported(network.name); + EvmChains.assertChainSupported(network.name); chainlinkPath = chainlinkConversionPath.connect(network.name, owner); batch = await new BatchNoConversionPayments__factory(owner).deploy( erc20FeeProxy.address, diff --git a/packages/smart-contracts/test/contracts/ChainlinkConversionPath.test.ts b/packages/smart-contracts/test/contracts/ChainlinkConversionPath.test.ts index ae67743b4e..faf6f2de35 100644 --- a/packages/smart-contracts/test/contracts/ChainlinkConversionPath.test.ts +++ b/packages/smart-contracts/test/contracts/ChainlinkConversionPath.test.ts @@ -1,5 +1,5 @@ import { expect } from 'chai'; -import { CurrencyManager, EVM } from '@requestnetwork/currency'; +import { CurrencyManager, EvmChains } from '@requestnetwork/currency'; import { ethers, network } from 'hardhat'; import '@nomiclabs/hardhat-ethers'; import { chainlinkConversionPath as chainlinkConvArtifact } from '../../src/lib'; @@ -25,7 +25,7 @@ let conversionPathInstance: ChainlinkConversionPath; describe('contract: ChainlinkConversionPath', () => { before(async () => { const [signer] = await ethers.getSigners(); - EVM.assertChainSupported(network.name); + EvmChains.assertChainSupported(network.name); conversionPathInstance = chainlinkConvArtifact.connect(network.name, signer); USDT_address = localUSDTArtifact.getAddress(network.name); DAI_address = localERC20AlphaArtifact.getAddress(network.name); diff --git a/packages/smart-contracts/test/contracts/ERC20SwapToConversion.test.ts b/packages/smart-contracts/test/contracts/ERC20SwapToConversion.test.ts index dcec568652..f4ed6eaa1f 100644 --- a/packages/smart-contracts/test/contracts/ERC20SwapToConversion.test.ts +++ b/packages/smart-contracts/test/contracts/ERC20SwapToConversion.test.ts @@ -2,7 +2,7 @@ import { ethers, network } from 'hardhat'; import { BigNumber, Signer } from 'ethers'; import { expect, use } from 'chai'; import { solidity } from 'ethereum-waffle'; -import { CurrencyManager, EVM } from '@requestnetwork/currency'; +import { CurrencyManager, EvmChains } from '@requestnetwork/currency'; import { AggregatorMock__factory, ChainlinkConversionPath, @@ -49,7 +49,7 @@ describe('contract: ERC20SwapToConversion', () => { const erc20Liquidity = erc20Decimal.mul(100); before(async () => { - EVM.assertChainSupported(network.name); + EvmChains.assertChainSupported(network.name); [, from, to, builder] = (await ethers.getSigners()).map((s) => s.address); [adminSigner, signer] = await ethers.getSigners(); chainlinkConversion = chainlinkConvArtifact.connect(network.name, adminSigner); diff --git a/packages/smart-contracts/test/contracts/ERC20SwapToPay.test.ts b/packages/smart-contracts/test/contracts/ERC20SwapToPay.test.ts index f039d58856..f94bd188b8 100644 --- a/packages/smart-contracts/test/contracts/ERC20SwapToPay.test.ts +++ b/packages/smart-contracts/test/contracts/ERC20SwapToPay.test.ts @@ -13,7 +13,7 @@ import { TestERC20__factory, } from '../../src/types'; import { erc20FeeProxyArtifact, erc20SwapToPayArtifact } from '../../src/lib'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; use(solidity); @@ -39,7 +39,7 @@ describe('contract: SwapToPay', () => { const erc20Liquidity = erc20Decimal.mul(100); before(async () => { - EVM.assertChainSupported(network.name); + EvmChains.assertChainSupported(network.name); [, from, to, builder] = (await ethers.getSigners()).map((s) => s.address); [adminSigner, signer] = await ethers.getSigners(); erc20FeeProxy = erc20FeeProxyArtifact.connect(network.name, adminSigner); diff --git a/packages/smart-contracts/test/contracts/Erc20ConversionProxy.test.ts b/packages/smart-contracts/test/contracts/Erc20ConversionProxy.test.ts index aee4bad8b4..b0ccaba8b5 100644 --- a/packages/smart-contracts/test/contracts/Erc20ConversionProxy.test.ts +++ b/packages/smart-contracts/test/contracts/Erc20ConversionProxy.test.ts @@ -11,7 +11,7 @@ import { import { BigNumber, Signer } from 'ethers'; import { expect, use } from 'chai'; import { solidity } from 'ethereum-waffle'; -import { CurrencyManager, EVM } from '@requestnetwork/currency'; +import { CurrencyManager, EvmChains } from '@requestnetwork/currency'; import { chainlinkConversionPath } from '../../src/lib'; import { localERC20AlphaArtifact } from './localArtifacts'; @@ -41,7 +41,7 @@ describe('contract: Erc20ConversionProxy', () => { let chainlinkPath: ChainlinkConversionPath; before(async () => { - EVM.assertChainSupported(network.name); + EvmChains.assertChainSupported(network.name); [from, to, feeAddress] = (await ethers.getSigners()).map((s) => s.address); [signer] = await ethers.getSigners(); chainlinkPath = chainlinkConversionPath.connect(network.name, signer); diff --git a/packages/smart-contracts/test/contracts/EthConversionProxy.test.ts b/packages/smart-contracts/test/contracts/EthConversionProxy.test.ts index 9b65da983e..2ade084299 100644 --- a/packages/smart-contracts/test/contracts/EthConversionProxy.test.ts +++ b/packages/smart-contracts/test/contracts/EthConversionProxy.test.ts @@ -15,7 +15,7 @@ import { import { BigNumber, Signer } from 'ethers'; import { expect, use } from 'chai'; import { solidity } from 'ethereum-waffle'; -import { CurrencyManager, EVM } from '@requestnetwork/currency'; +import { CurrencyManager, EvmChains } from '@requestnetwork/currency'; import { chainlinkConversionPath } from '../../src/lib'; import { HttpNetworkConfig } from 'hardhat/types'; @@ -45,7 +45,7 @@ describe('contract: EthConversionProxy', () => { const provider = new ethers.providers.JsonRpcProvider(networkConfig.url); before(async () => { - EVM.assertChainSupported(network.name); + EvmChains.assertChainSupported(network.name); [from, to, feeAddress] = (await ethers.getSigners()).map((s) => s.address); [signer] = await ethers.getSigners(); chainlinkPath = chainlinkConversionPath.connect(network.name, signer); diff --git a/packages/smart-contracts/test/contracts/EthereumFeeProxy.test.ts b/packages/smart-contracts/test/contracts/EthereumFeeProxy.test.ts index c5b65db39e..395a5b3827 100644 --- a/packages/smart-contracts/test/contracts/EthereumFeeProxy.test.ts +++ b/packages/smart-contracts/test/contracts/EthereumFeeProxy.test.ts @@ -11,7 +11,7 @@ import { } from '../../src/types'; import { ethereumFeeProxyArtifact } from '../../src/lib/'; import { HttpNetworkConfig } from 'hardhat/types'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; use(solidity); @@ -29,7 +29,7 @@ describe('contract: EthereumFeeProxy', () => { const feeAddress = '0xF4255c5e53a08f72b0573D1b8905C5a50aA9c2De'; before(async () => { - EVM.assertChainSupported(network.name); + EvmChains.assertChainSupported(network.name); [, to] = (await ethers.getSigners()).map((s) => s.address); [signer] = await ethers.getSigners(); ethFeeProxy = ethereumFeeProxyArtifact.connect(network.name, signer); diff --git a/packages/smart-contracts/test/contracts/EthereumProxy.test.ts b/packages/smart-contracts/test/contracts/EthereumProxy.test.ts index 8d164c99cf..5946e0c3fd 100644 --- a/packages/smart-contracts/test/contracts/EthereumProxy.test.ts +++ b/packages/smart-contracts/test/contracts/EthereumProxy.test.ts @@ -11,7 +11,7 @@ import { } from '../../src/types'; import { ethereumProxyArtifact } from '../../src/lib/'; import { HttpNetworkConfig } from 'hardhat/types'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; use(solidity); @@ -29,7 +29,7 @@ describe('contract: EthereumProxy', () => { const provider = new ethers.providers.JsonRpcProvider(networkConfig.url); before(async () => { - EVM.assertChainSupported(network.name); + EvmChains.assertChainSupported(network.name); [from, to] = (await ethers.getSigners()).map((s) => s.address); [signer] = await ethers.getSigners(); ethProxy = ethereumProxyArtifact.connect(network.name, signer); diff --git a/packages/toolbox/src/chainlinkConversionPathTools.ts b/packages/toolbox/src/chainlinkConversionPathTools.ts index b7eea9090c..e3816684dd 100644 --- a/packages/toolbox/src/chainlinkConversionPathTools.ts +++ b/packages/toolbox/src/chainlinkConversionPathTools.ts @@ -2,10 +2,10 @@ import { ethers, providers } from 'ethers'; import { chainlinkConversionPath } from '@requestnetwork/smart-contracts'; import { getDefaultProvider, parseLogArgs } from '@requestnetwork/payment-detection'; import { - ChainlinkConversionPath__factory, ChainlinkConversionPath, + ChainlinkConversionPath__factory, } from '@requestnetwork/smart-contracts/types'; -import { CurrencyManager, UnsupportedCurrencyError, EVM } from '@requestnetwork/currency'; +import { CurrencyManager, EvmChains, UnsupportedCurrencyError } from '@requestnetwork/currency'; import Bluebird from 'bluebird'; import chunk from 'lodash/chunk'; import { retry } from '@requestnetwork/utils'; @@ -145,7 +145,7 @@ const getCurrency = (symbol: string) => { export const listAggregators = async (options?: IOptions): Promise => { let networks: CurrencyTypes.EvmChainName[] = ['private', 'rinkeby', 'mainnet']; if (options?.network) { - EVM.assertChainSupported(options.network); + EvmChains.assertChainSupported(options.network); networks = [options.network]; } diff --git a/packages/toolbox/src/commands/chainlink/contractUtils.ts b/packages/toolbox/src/commands/chainlink/contractUtils.ts index ef8e130aad..833e26ccd0 100644 --- a/packages/toolbox/src/commands/chainlink/contractUtils.ts +++ b/packages/toolbox/src/commands/chainlink/contractUtils.ts @@ -4,7 +4,7 @@ import { getDefaultProvider } from '@requestnetwork/payment-detection'; import { chainlinkConversionPath } from '@requestnetwork/smart-contracts'; import { GasFeeDefiner } from '@requestnetwork/ethereum-storage'; import { ChainlinkConversionPath } from '@requestnetwork/smart-contracts/types'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; export const runUpdate = async ( method: T, @@ -74,7 +74,7 @@ const connectChainlinkContracts = ({ dryRun, network, }: SharedOptions): ChainlinkContractWithVersion[] => { - EVM.assertChainSupported(network); + EvmChains.assertChainSupported(network); const provider = getDefaultProvider(network); diff --git a/packages/toolbox/src/commands/hash/submit.ts b/packages/toolbox/src/commands/hash/submit.ts index 85ac644967..3b345da6fa 100644 --- a/packages/toolbox/src/commands/hash/submit.ts +++ b/packages/toolbox/src/commands/hash/submit.ts @@ -6,7 +6,7 @@ import yargs from 'yargs'; import { getWallet } from '../transaction/utils'; import { EthereumTransactionSubmitter, IpfsStorage } from '@requestnetwork/ethereum-storage'; import { StorageTypes } from '@requestnetwork/types'; -import { EVM } from '@requestnetwork/currency'; +import { EvmChains } from '@requestnetwork/currency'; export const command = 'hash submit '; export const describe = 'Forces the submission of an IPFS hash to the Request HashStorage contract'; @@ -18,7 +18,7 @@ export const builder = (y: yargs.Argv) => .option('dryRun', { type: 'boolean', default: false }); export const handler = async (argv: yargs.Arguments>>) => { - EVM.assertChainSupported(argv.chainName); + EvmChains.assertChainSupported(argv.chainName); const wallet = await getWallet({ chainName: argv.chainName, dryRun: argv.dryRun }); const ipfsStorage = new IpfsStorage({ From ddf73ac59191d2b8a5a8e361a3e86217faf8b272 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Feb 2023 15:48:16 +0100 Subject: [PATCH 28/50] fix test --- packages/ethereum-storage/test/ethereum-utils.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/ethereum-storage/test/ethereum-utils.test.ts b/packages/ethereum-storage/test/ethereum-utils.test.ts index db5c1795b7..72b5bd21ce 100644 --- a/packages/ethereum-storage/test/ethereum-utils.test.ts +++ b/packages/ethereum-storage/test/ethereum-utils.test.ts @@ -53,7 +53,7 @@ describe('Ethereum Utils', () => { }); it(`should return undefined if the network is not supported for storage`, async () => { - expect(getEthereumStorageNetworkIdFromName('aurora')).toBeUndefined(); + expect(getEthereumStorageNetworkIdFromName('avalanche')).toBeUndefined(); expect(getEthereumStorageNetworkIdFromName('mumbai')).toBeUndefined(); }); }); From 94cf0e8fc4fd4c1e05f4ed52c07e994af4f935bb Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Feb 2023 15:54:55 +0100 Subject: [PATCH 29/50] remove unusued utils --- packages/currency/src/chains/utils.ts | 55 --------------------------- 1 file changed, 55 deletions(-) delete mode 100644 packages/currency/src/chains/utils.ts diff --git a/packages/currency/src/chains/utils.ts b/packages/currency/src/chains/utils.ts deleted file mode 100644 index 87c087094b..0000000000 --- a/packages/currency/src/chains/utils.ts +++ /dev/null @@ -1,55 +0,0 @@ -import { nativeCurrencies } from '../native'; -import { Chain, NamedNativeCurrency, TokenMap } from '../types'; -import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; - -/** - * Adds the native currency to the list of currencies supported by each chain - */ -export const addNativeCurrenciesToChains = ( - chains: Record, - currencyType: RequestLogicTypes.CURRENCY.ETH | RequestLogicTypes.CURRENCY.BTC, -): void => { - const chainNames = Object.keys(chains); - chainNames.forEach((chainName) => { - const nativeCurrency = (nativeCurrencies[currencyType] as NamedNativeCurrency[]).find( - (currency) => currency.network === chainName, - ); - if (nativeCurrency) { - const chainCurrencies: TokenMap = chains[chainName].currencies || {}; - chainCurrencies.native = nativeCurrency; - chains[chainName].currencies = chainCurrencies; - } - }); -}; - -export const genericAssertChainSupported = ( - chainNames: CHAIN_NAME[], -) => { - return function (chainName: string): asserts chainName is CHAIN_NAME { - if (!(chainNames as string[]).includes(chainName)) - throw new Error(`Unsupported chain ${chainName}`); - }; -}; - -export const genericGetChainId = - < - CHAIN_NAME extends CurrencyTypes.ChainName, - CHAIN extends Chain, - CHAIN_ID extends string | number, - >( - chains: Record, - ) => - (chainName: CHAIN_NAME): CHAIN_ID => - chains[chainName].chainId as CHAIN_ID; - -export const genericGetChainName = - < - CHAIN_NAME extends CurrencyTypes.ChainName, - CHAIN extends Chain, - CHAIN_ID extends string | number, - >( - chains: Record, - chainNames: CHAIN_NAME[], - ) => - (chainId: CHAIN_ID): CHAIN_NAME | undefined => - chainNames.find((chainName) => chains[chainName].chainId === chainId); From c3d01ada666af157ffa5d01746752f7021feb493 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Feb 2023 16:46:25 +0100 Subject: [PATCH 30/50] fix some more types --- packages/advanced-logic/src/advanced-logic.ts | 3 ++- .../src/extensions/payment-network/native-token.ts | 8 +++++--- .../src/extensions/payment-network/near/near-native.ts | 4 ++-- packages/types/src/advanced-logic-types.ts | 5 +++-- .../types/src/extensions/pn-any-reference-based-types.ts | 3 ++- 5 files changed, 14 insertions(+), 9 deletions(-) diff --git a/packages/advanced-logic/src/advanced-logic.ts b/packages/advanced-logic/src/advanced-logic.ts index f23a7a6a21..057ae6d4c2 100644 --- a/packages/advanced-logic/src/advanced-logic.ts +++ b/packages/advanced-logic/src/advanced-logic.ts @@ -1,5 +1,6 @@ import { AdvancedLogicTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, RequestLogicTypes, @@ -142,7 +143,7 @@ export default class AdvancedLogic implements AdvancedLogicTypes.IAdvancedLogic } public getNativeTokenExtensionForNetwork( - network: string, + network: CurrencyTypes.ChainName, ): ExtensionTypes.IExtension | undefined { return this.extensions.nativeToken.find((nativeTokenExtension) => nativeTokenExtension.supportedNetworks.includes(network), diff --git a/packages/advanced-logic/src/extensions/payment-network/native-token.ts b/packages/advanced-logic/src/extensions/payment-network/native-token.ts index a8ef9ce635..13c0def2c6 100644 --- a/packages/advanced-logic/src/extensions/payment-network/native-token.ts +++ b/packages/advanced-logic/src/extensions/payment-network/native-token.ts @@ -1,4 +1,4 @@ -import { ExtensionTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { CurrencyTypes, ExtensionTypes, RequestLogicTypes } from '@requestnetwork/types'; import { InvalidPaymentAddressError, UnsupportedNetworkError } from './address-based'; import ReferenceBasedPaymentNetwork from './reference-based'; @@ -10,7 +10,7 @@ export default abstract class NativeTokenPaymentNetwork extends ReferenceBasedPa public constructor( extensionId: ExtensionTypes.PAYMENT_NETWORK_ID, currentVersion: string, - public readonly supportedNetworks: string[], + public readonly supportedNetworks: CurrencyTypes.ChainName[], ) { super(extensionId, currentVersion, RequestLogicTypes.CURRENCY.ETH); } @@ -50,7 +50,9 @@ export default abstract class NativeTokenPaymentNetwork extends ReferenceBasedPa ); } - protected throwIfInvalidNetwork(network?: string): asserts network is string { + protected throwIfInvalidNetwork( + network?: CurrencyTypes.ChainName, + ): asserts network is CurrencyTypes.ChainName { super.throwIfInvalidNetwork(network); if (this.supportedNetworks && !this.supportedNetworks.includes(network)) { throw new UnsupportedNetworkError(network, this.supportedNetworks); diff --git a/packages/advanced-logic/src/extensions/payment-network/near/near-native.ts b/packages/advanced-logic/src/extensions/payment-network/near/near-native.ts index cfaed280d9..4584b99b27 100644 --- a/packages/advanced-logic/src/extensions/payment-network/near/near-native.ts +++ b/packages/advanced-logic/src/extensions/payment-network/near/near-native.ts @@ -1,4 +1,4 @@ -import { ExtensionTypes } from '@requestnetwork/types'; +import { CurrencyTypes, ExtensionTypes } from '@requestnetwork/types'; import NativeTokenPaymentNetwork from '../native-token'; const CURRENT_VERSION = '0.2.0'; @@ -8,7 +8,7 @@ const CURRENT_VERSION = '0.2.0'; */ export default class NearNativePaymentNetwork extends NativeTokenPaymentNetwork { public constructor( - supportedNetworks: string[] = [ + supportedNetworks: CurrencyTypes.NearChainName[] = [ 'aurora', // FIXME: enable near network support // 'near' diff --git a/packages/types/src/advanced-logic-types.ts b/packages/types/src/advanced-logic-types.ts index a4ec04160d..558b5f3714 100644 --- a/packages/types/src/advanced-logic-types.ts +++ b/packages/types/src/advanced-logic-types.ts @@ -1,6 +1,7 @@ import * as Extension from './extension-types'; import * as Identity from './identity-types'; import * as RequestLogic from './request-logic-types'; +import { ChainName } from './currency-types'; /** Advanced Logic extensions */ export interface IAdvancedLogicExtensions { @@ -31,10 +32,10 @@ export interface IAdvancedLogic { timestamp: number, ) => RequestLogic.IExtensionStates; getNativeTokenExtensionForNetwork: ( - network: string, + network: ChainName, ) => Extension.IExtension | undefined; getAnyToNativeTokenExtensionForNetwork: ( - network: string, + network: ChainName, ) => Extension.IExtension | undefined; extensions: IAdvancedLogicExtensions; } diff --git a/packages/types/src/extensions/pn-any-reference-based-types.ts b/packages/types/src/extensions/pn-any-reference-based-types.ts index a45bae072d..b9861a38d3 100644 --- a/packages/types/src/extensions/pn-any-reference-based-types.ts +++ b/packages/types/src/extensions/pn-any-reference-based-types.ts @@ -1,4 +1,5 @@ import { PnAddressBased } from '../extension-types'; +import { ChainName } from '../currency-types'; export { ACTION, IAddPaymentAddressParameters, @@ -17,5 +18,5 @@ export interface IValues extends PnAddressBased.IValues { /** Parameters of creation action */ export interface ICreationParameters extends PnAddressBased.ICreationParameters { salt?: string; - paymentNetworkName?: string; + paymentNetworkName?: ChainName; } From ead5d9b2a8ea047b09af21906c6af9f59ae98493 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Feb 2023 17:01:31 +0100 Subject: [PATCH 31/50] fix some more types --- packages/advanced-logic/src/advanced-logic.ts | 4 ++-- .../extensions/payment-network/any-to-native.ts | 8 +++++--- .../payment-network/near/any-to-near.ts | 9 +++++++-- packages/payment-detection/src/types.ts | 15 ++++++++++----- 4 files changed, 24 insertions(+), 12 deletions(-) diff --git a/packages/advanced-logic/src/advanced-logic.ts b/packages/advanced-logic/src/advanced-logic.ts index 057ae6d4c2..2908fead44 100644 --- a/packages/advanced-logic/src/advanced-logic.ts +++ b/packages/advanced-logic/src/advanced-logic.ts @@ -168,7 +168,7 @@ export default class AdvancedLogic implements AdvancedLogicTypes.IAdvancedLogic } public getAnyToNativeTokenExtensionForNetwork( - network: string, + network: CurrencyTypes.ChainName, ): ExtensionTypes.IExtension | undefined { return this.extensions.anyToNativeToken.find((anyToNativeTokenExtension) => anyToNativeTokenExtension.supportedNetworks.includes(network), @@ -186,7 +186,7 @@ export default class AdvancedLogic implements AdvancedLogicTypes.IAdvancedLogic protected getNetwork( extensionAction: ExtensionTypes.IAction, requestState: RequestLogicTypes.IRequest, - ): string | undefined { + ): CurrencyTypes.ChainName | undefined { const network = extensionAction.action === 'create' ? extensionAction.parameters.network diff --git a/packages/advanced-logic/src/extensions/payment-network/any-to-native.ts b/packages/advanced-logic/src/extensions/payment-network/any-to-native.ts index 5c7ed20a51..a7a6bc0587 100644 --- a/packages/advanced-logic/src/extensions/payment-network/any-to-native.ts +++ b/packages/advanced-logic/src/extensions/payment-network/any-to-native.ts @@ -1,12 +1,12 @@ import { FeeReferenceBasedPaymentNetwork } from './fee-reference-based'; -import { ExtensionTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { CurrencyTypes, ExtensionTypes, RequestLogicTypes } from '@requestnetwork/types'; import { InvalidPaymentAddressError, UnsupportedNetworkError } from './address-based'; export default abstract class AnyToNativeTokenPaymentNetwork extends FeeReferenceBasedPaymentNetwork { protected constructor( extensionId: ExtensionTypes.PAYMENT_NETWORK_ID, currentVersion: string, - public readonly supportedNetworks: string[], + public readonly supportedNetworks: CurrencyTypes.ChainName[], ) { super(extensionId, currentVersion, RequestLogicTypes.CURRENCY.ETH); } @@ -44,7 +44,9 @@ export default abstract class AnyToNativeTokenPaymentNetwork extends FeeReferenc ); } - protected throwIfInvalidNetwork(network?: string): asserts network is string { + protected throwIfInvalidNetwork( + network?: CurrencyTypes.ChainName, + ): asserts network is CurrencyTypes.ChainName { super.throwIfInvalidNetwork(network); if (this.supportedNetworks && !this.supportedNetworks.includes(network)) { throw new UnsupportedNetworkError(network, this.supportedNetworks); diff --git a/packages/advanced-logic/src/extensions/payment-network/near/any-to-near.ts b/packages/advanced-logic/src/extensions/payment-network/near/any-to-near.ts index 01f09fa08f..5b0b802067 100644 --- a/packages/advanced-logic/src/extensions/payment-network/near/any-to-near.ts +++ b/packages/advanced-logic/src/extensions/payment-network/near/any-to-near.ts @@ -1,5 +1,10 @@ import { ICurrencyManager, UnsupportedCurrencyError } from '@requestnetwork/currency'; -import { ExtensionTypes, IdentityTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { + CurrencyTypes, + ExtensionTypes, + IdentityTypes, + RequestLogicTypes, +} from '@requestnetwork/types'; import AnyToNativeTokenPaymentNetwork from '../any-to-native'; const CURRENT_VERSION = '0.1.0'; @@ -7,7 +12,7 @@ const CURRENT_VERSION = '0.1.0'; export default class AnyToNearPaymentNetwork extends AnyToNativeTokenPaymentNetwork { public constructor( private currencyManager: ICurrencyManager, - supportedNetworks: string[] = [ + supportedNetworks: CurrencyTypes.NearChainName[] = [ 'aurora', // FIXME: enable near network support // 'near' diff --git a/packages/payment-detection/src/types.ts b/packages/payment-detection/src/types.ts index 65fb1bcadc..73b7b99d93 100644 --- a/packages/payment-detection/src/types.ts +++ b/packages/payment-detection/src/types.ts @@ -1,4 +1,9 @@ -import { AdvancedLogicTypes, ExtensionTypes, PaymentTypes } from '@requestnetwork/types'; +import { + AdvancedLogicTypes, + CurrencyTypes, + ExtensionTypes, + PaymentTypes, +} from '@requestnetwork/types'; import { PaymentDetectorBase } from './payment-detector-base'; import { GetDeploymentInformation } from './utils'; import type { ICurrencyManager } from '@requestnetwork/currency'; @@ -54,11 +59,11 @@ export type PaymentNetworkOptions = { /** override default bitcoin detection provider */ bitcoinDetectionProvider?: PaymentTypes.IBitcoinDetectionProvider; /** the explorer API (e.g. Etherscan) api keys, for PNs that rely on it. Record by network name */ - explorerApiKeys: Record; + explorerApiKeys: Partial>; /** override the default Subgraph for payment detection (EVM, Near) */ - getSubgraphClient: (network: string) => TheGraphClient | undefined; + getSubgraphClient: (network: CurrencyTypes.ChainName) => TheGraphClient | undefined; /** override the default RPC provider (EVM) */ - getRpcProvider: (network: string) => providers.Provider; + getRpcProvider: (network: CurrencyTypes.ChainName) => providers.Provider; }; export type ReferenceBasedDetectorOptions = { @@ -67,5 +72,5 @@ export type ReferenceBasedDetectorOptions = { }; export type NativeDetectorOptions = ReferenceBasedDetectorOptions & { - network: string; + network: CurrencyTypes.ChainName; }; From a9a30297f85cbc5bded91dced7f6f78fa16cf76d Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Feb 2023 17:13:41 +0100 Subject: [PATCH 32/50] fix test types --- .../test/extensions/payment-network/any-to-near.test.ts | 2 +- packages/payment-detection/src/eth/input-data.ts | 2 +- .../payment-detection/test/payment-network-factory.test.ts | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/advanced-logic/test/extensions/payment-network/any-to-near.test.ts b/packages/advanced-logic/test/extensions/payment-network/any-to-near.test.ts index 28ff4984a3..0fd2e16904 100644 --- a/packages/advanced-logic/test/extensions/payment-network/any-to-near.test.ts +++ b/packages/advanced-logic/test/extensions/payment-network/any-to-near.test.ts @@ -184,7 +184,7 @@ describe('extensions/payment-network/any-to-native-token', () => { expect(() => { new AnyToNearPaymentNetwork(currencyManager).createCreationAction({ ...partialCreationParams, - network: 'another-chain' as CurrencyTypes.EvmChainName, + network: 'another-chain' as CurrencyTypes.NearChainName, }); }).toThrowError( `Payment network 'another-chain' is not supported by this extension (only aurora)`, diff --git a/packages/payment-detection/src/eth/input-data.ts b/packages/payment-detection/src/eth/input-data.ts index 7442b81f6c..68e33f8025 100644 --- a/packages/payment-detection/src/eth/input-data.ts +++ b/packages/payment-detection/src/eth/input-data.ts @@ -31,7 +31,7 @@ export class EthInputDataPaymentDetector extends ReferenceBasedDetector< ExtensionTypes.PnReferenceBased.IReferenceBased, PaymentTypes.IETHPaymentEventParameters > { - private explorerApiKeys: Record; + private explorerApiKeys: Partial>; private readonly getSubgraphClient: PaymentNetworkOptions['getSubgraphClient']; /** diff --git a/packages/payment-detection/test/payment-network-factory.test.ts b/packages/payment-detection/test/payment-network-factory.test.ts index fc48760a48..3a7063afe4 100644 --- a/packages/payment-detection/test/payment-network-factory.test.ts +++ b/packages/payment-detection/test/payment-network-factory.test.ts @@ -146,12 +146,12 @@ describe('api/payment-network/payment-network-factory', () => { }, }; const paymentNetworkFactory = new PaymentNetworkFactory(mockAdvancedLogic, currencyManager, { - explorerApiKeys: { homestead: 'abcd' }, + explorerApiKeys: { mainnet: 'abcd' }, }); const pn = paymentNetworkFactory.getPaymentNetworkFromRequest(request); expect(pn).toBeInstanceOf(EthInputDataPaymentDetector); expect((pn as any).explorerApiKeys).toMatchObject({ - homestead: 'abcd', + mainnet: 'abcd', }); }); }); From 737aee62f55aa8d4303ea7d7a4677b67b66ac526 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Feb 2023 17:54:05 +0100 Subject: [PATCH 33/50] fix test --- .../test/extensions/payment-network/native-token.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/advanced-logic/test/extensions/payment-network/native-token.test.ts b/packages/advanced-logic/test/extensions/payment-network/native-token.test.ts index 7c54d7521f..c84c6f01bd 100644 --- a/packages/advanced-logic/test/extensions/payment-network/native-token.test.ts +++ b/packages/advanced-logic/test/extensions/payment-network/native-token.test.ts @@ -148,7 +148,7 @@ describe('extensions/payment-network/native-token', () => { expect(() => { new NearNativePaymentNetwork().createCreationAction({ ...partialCreationParams, - paymentNetworkName: 'another-chain', + paymentNetworkName: 'another-chain' as CurrencyTypes.NearChainName, }); }).toThrowError( `Payment network 'another-chain' is not supported by this extension (only aurora)`, From f44f6834fda9b541115132ad7ad892e9a5037c12 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Feb 2023 20:04:14 +0100 Subject: [PATCH 34/50] fix near typing --- .../currency/src/chains/ChainsAbstract.ts | 4 ++-- packages/currency/src/chains/near/index.ts | 6 ++--- .../src/near/near-conversion-detector.ts | 9 +++++--- .../src/near/near-detector.ts | 7 ++++-- .../near/retrievers/near-info-retriever.ts | 5 +++- .../src/payment/near-conversion.ts | 3 ++- .../src/payment/near-input-data.ts | 6 +++-- .../src/payment/utils-near.ts | 23 +++++++++++-------- packages/types/src/currency-types.ts | 6 ++--- 9 files changed, 42 insertions(+), 27 deletions(-) diff --git a/packages/currency/src/chains/ChainsAbstract.ts b/packages/currency/src/chains/ChainsAbstract.ts index c0937e5ca8..523ca141c1 100644 --- a/packages/currency/src/chains/ChainsAbstract.ts +++ b/packages/currency/src/chains/ChainsAbstract.ts @@ -41,8 +41,8 @@ export abstract class ChainsAbstract< * Check if chainName lives amongst the list of supported chains by this chain type. * Throws in the case it's not supported. */ - public assertChainSupported(chainName: string): asserts chainName is CHAIN_NAME { - if (!(this.chainNames as string[]).includes(chainName)) + public assertChainSupported(chainName?: string): asserts chainName is CHAIN_NAME { + if (!chainName || !(this.chainNames as string[]).includes(chainName)) throw new Error(`Unsupported chain ${chainName}`); } diff --git a/packages/currency/src/chains/near/index.ts b/packages/currency/src/chains/near/index.ts index 7d3a666531..b35b78c7a1 100644 --- a/packages/currency/src/chains/near/index.ts +++ b/packages/currency/src/chains/near/index.ts @@ -7,8 +7,8 @@ import * as NearTestnetDefinition from './data/near-testnet'; export type NearChain = Chain; export const chains: Record = { - aurora: NearDefinition, // FIXME: aurora should be removed from near chains (it is a mistake) - 'aurora-testnet': NearTestnetDefinition, // FIXME: aurora should be removed from near chains (it is a mistake) - near: NearDefinition, + aurora: NearDefinition, + 'aurora-testnet': NearTestnetDefinition, + // near: NearDefinition, // TODO: add support for near 'near-testnet': NearTestnetDefinition, }; diff --git a/packages/payment-detection/src/near/near-conversion-detector.ts b/packages/payment-detection/src/near/near-conversion-detector.ts index 5907693f85..7c9dc7f22a 100644 --- a/packages/payment-detection/src/near/near-conversion-detector.ts +++ b/packages/payment-detection/src/near/near-conversion-detector.ts @@ -28,10 +28,13 @@ export class NearConversionNativeTokenPaymentDetector extends AnyToNativeDetecto super(args); } - public static getContractName = (chainName: string, paymentNetworkVersion = '0.1.0'): string => { + public static getContractName = ( + chainName: CurrencyTypes.NearChainName, + paymentNetworkVersion = '0.1.0', + ): string => { const version = NearConversionNativeTokenPaymentDetector.getVersionOrThrow(paymentNetworkVersion); - const versionMap: Record> = { + const versionMap: Record> = { aurora: { '0.1.0': 'native.conversion.reqnetwork.near' }, 'aurora-testnet': { '0.1.0': 'native.conversion.reqnetwork.testnet', @@ -63,7 +66,7 @@ export class NearConversionNativeTokenPaymentDetector extends AnyToNativeDetecto address: string | undefined, paymentReference: string, requestCurrency: RequestLogicTypes.ICurrency, - paymentChain: CurrencyTypes.EvmChainName, + paymentChain: CurrencyTypes.NearChainName, paymentNetwork: ExtensionTypes.IState, ): Promise> { if (!address) { diff --git a/packages/payment-detection/src/near/near-detector.ts b/packages/payment-detection/src/near/near-detector.ts index 1cd5c03c4c..3a97a57580 100644 --- a/packages/payment-detection/src/near/near-detector.ts +++ b/packages/payment-detection/src/near/near-detector.ts @@ -28,9 +28,12 @@ export class NearNativeTokenPaymentDetector extends NativeTokenPaymentDetector { super(args); } - public static getContractName = (chainName: string, paymentNetworkVersion = '0.2.0'): string => { + public static getContractName = ( + chainName: CurrencyTypes.NearChainName, + paymentNetworkVersion = '0.2.0', + ): string => { const version = NearNativeTokenPaymentDetector.getVersionOrThrow(paymentNetworkVersion); - const versionMap: Record> = { + const versionMap: Record> = { aurora: { '0.1.0': 'requestnetwork.near', '0.2.0': 'requestnetwork.near' }, 'aurora-testnet': { '0.1.0': 'dev-1626339335241-5544297', diff --git a/packages/payment-detection/src/near/retrievers/near-info-retriever.ts b/packages/payment-detection/src/near/retrievers/near-info-retriever.ts index ab306b0e60..a3927d64a2 100644 --- a/packages/payment-detection/src/near/retrievers/near-info-retriever.ts +++ b/packages/payment-detection/src/near/retrievers/near-info-retriever.ts @@ -1,5 +1,6 @@ import { PaymentTypes } from '@requestnetwork/types'; import { getTheGraphNearClient, TheGraphClient } from '../../thegraph'; +import { NearChains } from '@requestnetwork/currency'; // FIXME#1: when Near subgraphes can retrieve a txHash, replace the custom IPaymentNetworkEvent with PaymentTypes.ETHPaymentNetworkEvent interface NearSubGraphPaymentEvent extends PaymentTypes.IETHPaymentEventParameters { @@ -25,7 +26,9 @@ export class NearInfoRetriever { protected eventName: PaymentTypes.EVENTS_NAMES, network: string, ) { - if (network !== 'aurora' && network !== 'aurora-testnet' && network !== 'near-testnet') { + try { + NearChains.assertChainSupported(network); + } catch { throw new Error('Near input data info-retriever only works with Near mainnet and testnet'); } diff --git a/packages/payment-processor/src/payment/near-conversion.ts b/packages/payment-processor/src/payment/near-conversion.ts index 2e24399e6a..6917fabd18 100644 --- a/packages/payment-processor/src/payment/near-conversion.ts +++ b/packages/payment-processor/src/payment/near-conversion.ts @@ -15,7 +15,7 @@ import { processNearPaymentWithConversion, } from './utils-near'; import { IConversionPaymentSettings } from '.'; -import { CurrencyManager, UnsupportedCurrencyError } from '@requestnetwork/currency'; +import { CurrencyManager, NearChains, UnsupportedCurrencyError } from '@requestnetwork/currency'; /** * Processes the transaction to pay a request in NEAR with on-chain conversion. @@ -48,6 +48,7 @@ export async function payNearConversionRequest( if (!network || !isNearNetwork(network)) { throw new Error('Should be a Near network'); } + NearChains.assertChainSupported(network); const amountToPay = getAmountToPay(request, amount).toString(); const version = getPaymentExtensionVersion(request); diff --git a/packages/payment-processor/src/payment/near-input-data.ts b/packages/payment-processor/src/payment/near-input-data.ts index 0fffa8f7c6..7783aaec6a 100644 --- a/packages/payment-processor/src/payment/near-input-data.ts +++ b/packages/payment-processor/src/payment/near-input-data.ts @@ -4,12 +4,13 @@ import { WalletConnection } from 'near-api-js'; import { ClientTypes, ExtensionTypes } from '@requestnetwork/types'; import { - getRequestPaymentValues, - validateRequest, getAmountToPay, getPaymentExtensionVersion, + getRequestPaymentValues, + validateRequest, } from './utils'; import { INearTransactionCallback, isNearNetwork, processNearPayment } from './utils-near'; +import { NearChains } from '@requestnetwork/currency'; /** * processes the transaction to pay a Near request. @@ -27,6 +28,7 @@ export async function payNearInputDataRequest( throw new Error('request.currencyInfo should be a Near network'); } + NearChains.assertChainSupported(request.currencyInfo.network); validateRequest(request, ExtensionTypes.PAYMENT_NETWORK_ID.NATIVE_TOKEN); const { paymentReference, paymentAddress } = getRequestPaymentValues(request); diff --git a/packages/payment-processor/src/payment/utils-near.ts b/packages/payment-processor/src/payment/utils-near.ts index 3d12b755b4..1c8bd4b9d2 100644 --- a/packages/payment-processor/src/payment/utils-near.ts +++ b/packages/payment-processor/src/payment/utils-near.ts @@ -1,15 +1,16 @@ import { BigNumber, BigNumberish, ethers } from 'ethers'; -import { Contract } from 'near-api-js'; -import { Near, WalletConnection } from 'near-api-js'; +import { Contract, Near, WalletConnection } from 'near-api-js'; import { - NearNativeTokenPaymentDetector, NearConversionNativeTokenPaymentDetector, + NearNativeTokenPaymentDetector, } from '@requestnetwork/payment-detection'; +import { NearChains } from '@requestnetwork/currency'; +import { CurrencyTypes } from '@requestnetwork/types'; /** * Callback arguments for the Near web wallet. * @member callbackUrl called upon transaction approval - * @member callbackMeta (according to Near docs: `meta` will be attached to the `callbackUrl` as a url search param) + * @member meta (according to Near docs: `meta` will be attached to the `callbackUrl` as a url search param) */ export interface INearTransactionCallback { callbackUrl?: string; @@ -26,10 +27,12 @@ export const isValidNearAddress = async (nearNetwork: Near, address: string): Pr }; export const isNearNetwork = (network?: string): boolean => { - return ( - !!network && - (network === 'near-testnet' || network === 'aurora-testnet' || network === 'aurora') - ); + try { + NearChains.assertChainSupported(network); + return true; + } catch { + return false; + } }; export const isNearAccountSolvent = ( @@ -52,7 +55,7 @@ const GAS_LIMIT_CONVERSION_TO_NATIVE = GAS_LIMIT.mul(2).toString(); export const processNearPayment = async ( walletConnection: WalletConnection, - network: string, + network: CurrencyTypes.NearChainName, amount: BigNumberish, to: string, paymentReference: string, @@ -104,7 +107,7 @@ export const processNearPayment = async ( */ export const processNearPaymentWithConversion = async ( walletConnection: WalletConnection, - network: string, + network: CurrencyTypes.NearChainName, amount: BigNumberish, to: string, paymentReference: string, diff --git a/packages/types/src/currency-types.ts b/packages/types/src/currency-types.ts index e256b91430..94843e4917 100644 --- a/packages/types/src/currency-types.ts +++ b/packages/types/src/currency-types.ts @@ -33,9 +33,9 @@ export type BtcChainName = 'mainnet' | 'testnet'; * List of supported NEAR chains */ export type NearChainName = - | 'aurora' // FIXME: aurora should be removed from near chains (it is a mistake) - | 'aurora-testnet' // FIXME: aurora should be removed from near chains (it is a mistake) - | 'near' + | 'aurora' + | 'aurora-testnet' + // | 'near' // TODO: add support for near | 'near-testnet'; export type ChainName = EvmChainName | BtcChainName | NearChainName; From 87c5cd0c9469f7f1f972bdfd0ef230eddb94b137 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Feb 2023 22:15:22 +0100 Subject: [PATCH 35/50] fix currencyManager --- packages/currency/src/currencyManager.ts | 27 ++++++++++--------- packages/currency/src/types.ts | 2 +- .../conversion-supported-currencies.test.ts | 12 +++++---- 3 files changed, 23 insertions(+), 18 deletions(-) diff --git a/packages/currency/src/currencyManager.ts b/packages/currency/src/currencyManager.ts index 0d51b9a875..202b19ff70 100644 --- a/packages/currency/src/currencyManager.ts +++ b/packages/currency/src/currencyManager.ts @@ -1,4 +1,4 @@ -import { RequestLogicTypes } from '@requestnetwork/types'; +import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; import { utils } from 'ethers'; import addressValidator from 'multicoin-address-validator'; import { getSupportedERC20Tokens } from './erc20'; @@ -17,6 +17,7 @@ import { } from './types'; import { defaultConversionPairs, AggregatorsMap, getPath } from './conversion-aggregators'; import { isValidNearAddress } from './currency-utils'; +import { NearChains } from './chains'; const { BTC, ERC20, ERC777, ETH, ISO4217 } = RequestLogicTypes.CURRENCY; @@ -59,7 +60,7 @@ export class CurrencyManager implements ICurrencyManager */ from( currencyIdentifier: string | undefined, - network?: string, + network?: CurrencyTypes.ChainName, ): CurrencyDefinition | undefined { if (!currencyIdentifier) { return; @@ -70,7 +71,7 @@ export class CurrencyManager implements ICurrencyManager const parts = currencyIdentifier.split('-'); const currencyFromSymbol = - this.fromSymbol(parts[0], network || parts[1]) || + this.fromSymbol(parts[0], network || (parts[1] as CurrencyTypes.ChainName)) || // try without splitting the symbol to support currencies like ETH-rinkeby this.fromSymbol(currencyIdentifier, network); @@ -90,7 +91,7 @@ export class CurrencyManager implements ICurrencyManager /** * Gets a supported currency from its address and network. - * If more than 1 currencies are found, undefined is returned + * If more than one currency are found, undefined is returned */ fromAddress(address: string, network?: string): CurrencyDefinition | undefined { address = utils.getAddress(address); @@ -113,9 +114,11 @@ export class CurrencyManager implements ICurrencyManager /** * Gets a supported currency from its symbol and network. */ - fromSymbol(symbol: string, network?: string): CurrencyDefinition | undefined { + fromSymbol( + symbol: string, + network?: CurrencyTypes.ChainName, + ): CurrencyDefinition | undefined { symbol = symbol?.toUpperCase(); - network = network?.toLowerCase(); const legacy = network ? this.legacyTokens[network]?.[symbol] : undefined; if (legacy) { @@ -237,13 +240,13 @@ export class CurrencyManager implements ICurrencyManager case RequestLogicTypes.CURRENCY.ETH: case RequestLogicTypes.CURRENCY.ERC20: case RequestLogicTypes.CURRENCY.ERC777: - switch (currency.network) { - case 'aurora': - case 'aurora-testnet': - return isValidNearAddress(address, currency.network); - default: - return addressValidator.validate(address, 'ETH'); + if ( + currency.network && + (NearChains.chainNames as CurrencyTypes.ChainName[]).includes(currency.network) + ) { + return isValidNearAddress(address, currency.network); } + return addressValidator.validate(address, 'ETH'); case RequestLogicTypes.CURRENCY.BTC: return addressValidator.validate( address, diff --git a/packages/currency/src/types.ts b/packages/currency/src/types.ts index 1a6bc7fb0d..76e09d648c 100644 --- a/packages/currency/src/types.ts +++ b/packages/currency/src/types.ts @@ -135,4 +135,4 @@ export interface ICurrencyManager { * * Format { "chainName": {"TOKEN": ["NEW_TOKEN","NEW_CHAIN"]}} */ -export type LegacyTokenMap = Record>; +export type LegacyTokenMap = Record>; diff --git a/packages/currency/test/conversion-supported-currencies.test.ts b/packages/currency/test/conversion-supported-currencies.test.ts index b8bde61383..dc10f6cde7 100644 --- a/packages/currency/test/conversion-supported-currencies.test.ts +++ b/packages/currency/test/conversion-supported-currencies.test.ts @@ -1,5 +1,5 @@ import { CurrencyManager } from '../src'; -import { RequestLogicTypes } from '@requestnetwork/types'; +import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; const currencyManager = new CurrencyManager([ ...CurrencyManager.getDefaultList(), @@ -33,10 +33,12 @@ describe('supported currencies with oracles from chainlink', () => { }); describe('native currencies', () => { - Object.entries({ - mainnet: ['ETH'], - fantom: ['FTM'], - }).forEach(([network, symbols]) => { + ( + Object.entries({ + mainnet: ['ETH'], + fantom: ['FTM'], + }) as [CurrencyTypes.EvmChainName, string[]][] + ).forEach(([network, symbols]) => { describe(network, () => { symbols.forEach((symbol) => { it(symbol, () => { From 3d7c7308b9a72e0f81d29169e840872ae7f2d60d Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Feb 2023 22:29:15 +0100 Subject: [PATCH 36/50] fix aggregators type --- packages/currency/src/conversion-aggregators.ts | 15 ++++++++++----- packages/currency/src/currencyManager.ts | 7 +++++-- .../src/commands/chainlink/addAggregator.ts | 3 +++ .../src/commands/chainlink/addAggregators.ts | 3 ++- .../src/commands/chainlink/aggregatorsUtils.ts | 12 +++++++----- .../commands/chainlink/listMissingAggregators.ts | 2 ++ 6 files changed, 29 insertions(+), 13 deletions(-) diff --git a/packages/currency/src/conversion-aggregators.ts b/packages/currency/src/conversion-aggregators.ts index 5abf5aa23b..fb90a8d2af 100644 --- a/packages/currency/src/conversion-aggregators.ts +++ b/packages/currency/src/conversion-aggregators.ts @@ -10,6 +10,7 @@ import fantomAggregator from './aggregators/fantom.json'; import nearAggregator from './aggregators/near.json'; import nearTestnetAggregator from './aggregators/near-testnet.json'; import auroraTestnetAggregator from './aggregators/aurora-testnet.json'; +import { CurrencyTypes } from '@requestnetwork/types'; /** * currencyFrom => currencyTo => cost @@ -21,10 +22,12 @@ export type CurrencyPairs = Record>; * * Network => currencyFrom => currencyTo => cost */ -export type AggregatorsMap = Record; +export type AggregatorsMap = Partial< + Record +>; // Pairs supported by Chainlink (can be generated from requestNetwork/toolbox/src/chainlinkConversionPathTools.ts) -const chainlinkCurrencyPairs: AggregatorsMap = { +const chainlinkCurrencyPairs: AggregatorsMap = { private: privateAggregator, goerli: goerliAggregator, rinkeby: rinkebyAggregator, @@ -34,7 +37,7 @@ const chainlinkCurrencyPairs: AggregatorsMap = { }; // Pairs supported by Flux Protocol -const fluxCurrencyPairs: AggregatorsMap = { +const fluxCurrencyPairs: AggregatorsMap = { aurora: nearAggregator, 'aurora-testnet': auroraTestnetAggregator, 'near-testnet': nearTestnetAggregator, @@ -62,7 +65,9 @@ export const defaultConversionPairs: AggregatorsMap = { ...noConversionNetworks, }; -export const conversionSupportedNetworks = Object.keys(defaultConversionPairs); +export const conversionSupportedNetworks = Object.keys( + defaultConversionPairs, +) as CurrencyTypes.ChainName[]; /** * Gets the on-chain conversion path between two currencies. @@ -77,7 +82,7 @@ export const conversionSupportedNetworks = Object.keys(defaultConversionPairs); export function getPath( currencyFrom: Pick, currencyTo: Pick, - network = 'mainnet', + network: CurrencyTypes.ChainName = 'mainnet', pairs = defaultConversionPairs, ): string[] | null { if (!pairs[network]) { diff --git a/packages/currency/src/currencyManager.ts b/packages/currency/src/currencyManager.ts index 202b19ff70..0f47b5e2e1 100644 --- a/packages/currency/src/currencyManager.ts +++ b/packages/currency/src/currencyManager.ts @@ -174,7 +174,7 @@ export class CurrencyManager implements ICurrencyManager getConversionPath( from: Pick, to: Pick, - network: string, + network: CurrencyTypes.ChainName, ): string[] | null { try { return getPath(from, to, network, this.conversionPairs); @@ -183,7 +183,10 @@ export class CurrencyManager implements ICurrencyManager } } - supportsConversion(currency: Pick, network: string): boolean { + supportsConversion( + currency: Pick, + network: CurrencyTypes.ChainName, + ): boolean { return !!this.conversionPairs[network]?.[currency.hash.toLowerCase()]; } diff --git a/packages/toolbox/src/commands/chainlink/addAggregator.ts b/packages/toolbox/src/commands/chainlink/addAggregator.ts index 7d355a0431..27ed22fe9c 100644 --- a/packages/toolbox/src/commands/chainlink/addAggregator.ts +++ b/packages/toolbox/src/commands/chainlink/addAggregator.ts @@ -2,6 +2,7 @@ import * as yargs from 'yargs'; import { runUpdate } from './contractUtils'; import { getAllAggregators, getCurrencyManager } from './aggregatorsUtils'; import assert from 'assert'; +import { EvmChains } from '@requestnetwork/currency'; type Options = { dryRun: boolean; @@ -60,6 +61,8 @@ export const handler = async (args: Options): Promise => { const { network, list } = args; const currencyManager = await getCurrencyManager(list); + + EvmChains.assertChainSupported(network); const inputCcy = currencyManager.from(input, network) || currencyManager.from(input); const outputCcy = currencyManager.from(output, network) || currencyManager.from(output); diff --git a/packages/toolbox/src/commands/chainlink/addAggregators.ts b/packages/toolbox/src/commands/chainlink/addAggregators.ts index 93eba581e6..63eee5316e 100644 --- a/packages/toolbox/src/commands/chainlink/addAggregators.ts +++ b/packages/toolbox/src/commands/chainlink/addAggregators.ts @@ -2,7 +2,7 @@ import * as yargs from 'yargs'; import inquirer from 'inquirer'; import { runUpdate } from './contractUtils'; import { Aggregator, getAvailableAggregators, getCurrencyManager } from './aggregatorsUtils'; -import { conversionSupportedNetworks } from '@requestnetwork/currency'; +import { conversionSupportedNetworks, EvmChains } from '@requestnetwork/currency'; type Options = { dryRun: boolean; @@ -80,6 +80,7 @@ export const handler = async (args: Options): Promise => { ); } + EvmChains.assertChainSupported(network); const availableAggregators = await getAvailableAggregators( network, currencyManager, diff --git a/packages/toolbox/src/commands/chainlink/aggregatorsUtils.ts b/packages/toolbox/src/commands/chainlink/aggregatorsUtils.ts index 5480dc3c3b..46071b459a 100644 --- a/packages/toolbox/src/commands/chainlink/aggregatorsUtils.ts +++ b/packages/toolbox/src/commands/chainlink/aggregatorsUtils.ts @@ -1,6 +1,6 @@ -import { CurrencyManager, CurrencyInput, AggregatorsMap } from '@requestnetwork/currency'; +import { AggregatorsMap, CurrencyInput, CurrencyManager } from '@requestnetwork/currency'; import axios from 'axios'; -import { RequestLogicTypes } from '@requestnetwork/types'; +import { CurrencyTypes, RequestLogicTypes } from '@requestnetwork/types'; type Proxy = { pair: string; @@ -26,7 +26,9 @@ export type Aggregator = { aggregator: string; }; -const feedMap: Record = { +const feedMap: Partial< + Record +> = { mainnet: ['ethereum', 'Ethereum Mainnet'], goerli: ['ethereum', 'Goerli Testnet'], rinkeby: ['ethereum', 'Rinkeby Testnet'], @@ -40,7 +42,7 @@ const feedMap: Record = { moonbeam: ['moonbeam', 'Moonbeam Mainnet'], }; -export const getAllAggregators = async (network: string): Promise => { +export const getAllAggregators = async (network: CurrencyTypes.EvmChainName): Promise => { const [feedName, networkName] = feedMap[network] || []; if (!feedName || !networkName) { throw new Error( @@ -59,7 +61,7 @@ export const getAllAggregators = async (network: string): Promise => { }; export const getAvailableAggregators = async ( - network: string, + network: CurrencyTypes.EvmChainName, cm: CurrencyManager, pairs?: string[], listAll?: boolean, diff --git a/packages/toolbox/src/commands/chainlink/listMissingAggregators.ts b/packages/toolbox/src/commands/chainlink/listMissingAggregators.ts index 04b01f5b7b..c7816cca14 100644 --- a/packages/toolbox/src/commands/chainlink/listMissingAggregators.ts +++ b/packages/toolbox/src/commands/chainlink/listMissingAggregators.ts @@ -1,5 +1,6 @@ import * as yargs from 'yargs'; import { getAvailableAggregators, getCurrencyManager } from './aggregatorsUtils'; +import { EvmChains } from '@requestnetwork/currency'; type Options = { network: string[]; @@ -30,6 +31,7 @@ export const handler = async (args: Options): Promise => { const { list } = args; const currencyManager = await getCurrencyManager(list); for (const network of args.network) { + EvmChains.assertChainSupported(network); const available = await getAvailableAggregators(network, currencyManager); if (available.length > 0) { console.log(network); From 2b1fd4fa1538640f80fa934e762fbbf601a2d2da Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Wed, 8 Feb 2023 01:15:20 +0100 Subject: [PATCH 37/50] fix aggregators type --- packages/toolbox/src/commands/chainlink/addAggregators.ts | 1 + packages/toolbox/src/commands/chainlink/getConversionPath.ts | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/toolbox/src/commands/chainlink/addAggregators.ts b/packages/toolbox/src/commands/chainlink/addAggregators.ts index 63eee5316e..bf15f02cc7 100644 --- a/packages/toolbox/src/commands/chainlink/addAggregators.ts +++ b/packages/toolbox/src/commands/chainlink/addAggregators.ts @@ -73,6 +73,7 @@ export const handler = async (args: Options): Promise => { const currencyManager = await getCurrencyManager(args.list); + EvmChains.assertChainSupported(network); if (!conversionSupportedNetworks.includes(network)) { console.warn( `WARNING: ${network} is missing in conversionSupportedNetworks from the Currency package.`, diff --git a/packages/toolbox/src/commands/chainlink/getConversionPath.ts b/packages/toolbox/src/commands/chainlink/getConversionPath.ts index c44a699262..b4bfee0728 100644 --- a/packages/toolbox/src/commands/chainlink/getConversionPath.ts +++ b/packages/toolbox/src/commands/chainlink/getConversionPath.ts @@ -1,5 +1,5 @@ import * as yargs from 'yargs'; -import { CurrencyManager } from '@requestnetwork/currency'; +import { CurrencyManager, EvmChains } from '@requestnetwork/currency'; type Options = { to: string; from: string; network: string }; @@ -27,5 +27,6 @@ export const handler = (args: yargs.Arguments): void => { const currencyManager = CurrencyManager.getDefault(); const from = currencyManager.from(args.from)!; const to = currencyManager.from(args.to)!; + EvmChains.assertChainSupported(args.network); console.log(currencyManager.getConversionPath(from, to, args.network)); }; From 9baa2f8178cf4ff5c628ffa21dd03282a75649cb Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Wed, 8 Feb 2023 10:54:11 +0100 Subject: [PATCH 38/50] fix chainlink test --- .../conversion-supported-currencies.test.ts | 62 ++++++++++--------- 1 file changed, 33 insertions(+), 29 deletions(-) diff --git a/packages/currency/test/conversion-supported-currencies.test.ts b/packages/currency/test/conversion-supported-currencies.test.ts index dc10f6cde7..04f6ed14e0 100644 --- a/packages/currency/test/conversion-supported-currencies.test.ts +++ b/packages/currency/test/conversion-supported-currencies.test.ts @@ -14,12 +14,14 @@ const currencyManager = new CurrencyManager([ describe('supported currencies with oracles from chainlink', () => { describe('fiat currencies', () => { - Object.entries({ - mainnet: ['AUD', 'CAD', 'CHF', 'EUR', 'GBP', 'SGD', 'USD'], - private: ['EUR', 'USD'], - matic: ['AUD', 'CAD', 'CHF', 'EUR', 'GBP', 'SGD', 'USD'], - fantom: ['USD', 'CHF'], - }).forEach(([network, symbols]) => { + ( + Object.entries({ + mainnet: ['AUD', 'CAD', 'CHF', 'EUR', 'GBP', 'SGD', 'USD'], + private: ['EUR', 'USD'], + matic: ['AUD', 'CAD', 'CHF', 'EUR', 'GBP', 'SGD', 'USD'], + fantom: ['USD', 'CHF'], + }) as [CurrencyTypes.EvmChainName, string[]][] + ).forEach(([network, symbols]) => { describe(network, () => { symbols.forEach((symbol) => { it(symbol, () => { @@ -52,29 +54,31 @@ describe('supported currencies with oracles from chainlink', () => { }); describe('ERC20 tokens', () => { - Object.entries({ - mainnet: [ - '0x1f573d6fb3f13d689ff844b4ce37794d79a7ff1c', - '0x3845badade8e6dff049820680d1f14bd3903a5d0', - '0x4e15361fd6b4bb609fa63c81a2be19d873717870', - '0x6b175474e89094c44da98b954eedeac495271d0f', - '0x7fc66500c84a76ad7e9c93437bfc5ac33e2ddae9', - '0x8290333cef9e6d528dd5618fb97a76f268f3edd4', - '0x8ab7404063ec4dbcfd4598215992dc3f8ec853d7', - '0x967da4048cd07ab37855c090aaf366e4ce1b9f48', - '0x9f8f72aa9304c8b593d555f12ef6589cc3a579a2', - '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', - '0xa117000000f279d81a1d3cc75430faa017fa5a2e', - '0xc944e90c64b2c07662a292be6244bdf05cda44a7', - '0xdac17f958d2ee523a2206206994597c13d831ec7', - ], - matic: [ - '0x2791bca1f2de4661ed88a30c99a7a9449aa84174', - '0x8f3cf7ad23cd3cadbd9735aff958023239c6a063', - '0xc2132d05d31c914a87c6611c10748aeb04b58e8f', - ], - private: ['0x38cf23c52bb4b13f051aec09580a2de845a7fa35'], - }).forEach(([network, addresses]) => { + ( + Object.entries({ + mainnet: [ + '0x1f573d6fb3f13d689ff844b4ce37794d79a7ff1c', + '0x3845badade8e6dff049820680d1f14bd3903a5d0', + '0x4e15361fd6b4bb609fa63c81a2be19d873717870', + '0x6b175474e89094c44da98b954eedeac495271d0f', + '0x7fc66500c84a76ad7e9c93437bfc5ac33e2ddae9', + '0x8290333cef9e6d528dd5618fb97a76f268f3edd4', + '0x8ab7404063ec4dbcfd4598215992dc3f8ec853d7', + '0x967da4048cd07ab37855c090aaf366e4ce1b9f48', + '0x9f8f72aa9304c8b593d555f12ef6589cc3a579a2', + '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', + '0xa117000000f279d81a1d3cc75430faa017fa5a2e', + '0xc944e90c64b2c07662a292be6244bdf05cda44a7', + '0xdac17f958d2ee523a2206206994597c13d831ec7', + ], + matic: [ + '0x2791bca1f2de4661ed88a30c99a7a9449aa84174', + '0x8f3cf7ad23cd3cadbd9735aff958023239c6a063', + '0xc2132d05d31c914a87c6611c10748aeb04b58e8f', + ], + private: ['0x38cf23c52bb4b13f051aec09580a2de845a7fa35'], + }) as [CurrencyTypes.EvmChainName, string[]][] + ).forEach(([network, addresses]) => { describe(network, () => { addresses.forEach((address) => { const currency = currencyManager.fromAddress(address, network)!; From 100f7096b513c3b1f1b695f0cc21fc4d4414a80c Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Wed, 8 Feb 2023 10:56:45 +0100 Subject: [PATCH 39/50] rollback currency manager change --- packages/currency/src/currencyManager.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/currency/src/currencyManager.ts b/packages/currency/src/currencyManager.ts index 0f47b5e2e1..a9712cfb9e 100644 --- a/packages/currency/src/currencyManager.ts +++ b/packages/currency/src/currencyManager.ts @@ -119,6 +119,7 @@ export class CurrencyManager implements ICurrencyManager network?: CurrencyTypes.ChainName, ): CurrencyDefinition | undefined { symbol = symbol?.toUpperCase(); + network = network?.toLowerCase() as CurrencyTypes.ChainName | undefined; const legacy = network ? this.legacyTokens[network]?.[symbol] : undefined; if (legacy) { From 1c240b78ccde4f7b02fe63b8047490f108288ca7 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Wed, 8 Feb 2023 10:59:48 +0100 Subject: [PATCH 40/50] rollback addagregator change --- packages/toolbox/src/commands/chainlink/addAggregators.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/toolbox/src/commands/chainlink/addAggregators.ts b/packages/toolbox/src/commands/chainlink/addAggregators.ts index bf15f02cc7..0b036e8988 100644 --- a/packages/toolbox/src/commands/chainlink/addAggregators.ts +++ b/packages/toolbox/src/commands/chainlink/addAggregators.ts @@ -81,7 +81,6 @@ export const handler = async (args: Options): Promise => { ); } - EvmChains.assertChainSupported(network); const availableAggregators = await getAvailableAggregators( network, currencyManager, From 8e4d4cdf52ef85e155b5c8186eb89a74a827f1f9 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Wed, 8 Feb 2023 15:03:50 +0100 Subject: [PATCH 41/50] use chain configuration --- packages/smart-contracts/README.md | 2 +- .../scripts-create2/tenderly.ts | 8 +++---- .../{utils/index.ts => utils.ts} | 2 +- .../scripts-create2/utils/chains.ts | 23 ------------------- .../toolbox/src/commands/transaction/utils.ts | 16 ++++++++++++- 5 files changed, 20 insertions(+), 31 deletions(-) rename packages/smart-contracts/scripts-create2/{utils/index.ts => utils.ts} (98%) delete mode 100644 packages/smart-contracts/scripts-create2/utils/chains.ts diff --git a/packages/smart-contracts/README.md b/packages/smart-contracts/README.md index cfa9b8457d..ef7ca47ebb 100644 --- a/packages/smart-contracts/README.md +++ b/packages/smart-contracts/README.md @@ -108,7 +108,7 @@ The deployer contract should be deployed at `0xE99Ab70a5FAE59551544FA326fA048f7B Be sure to run `yarn build:sol` before deploying the deployer or a contract. -The contracts implemented are listed in the array `create2ContractDeploymentList` in [Utils](scripts-create2/utils/index.ts). +The contracts implemented are listed in the array `create2ContractDeploymentList` in [Utils](scripts-create2/utils.ts). ### Deploy the request deployer (once per chain) diff --git a/packages/smart-contracts/scripts-create2/tenderly.ts b/packages/smart-contracts/scripts-create2/tenderly.ts index 3c967998e9..3303c49f56 100644 --- a/packages/smart-contracts/scripts-create2/tenderly.ts +++ b/packages/smart-contracts/scripts-create2/tenderly.ts @@ -1,10 +1,10 @@ import { HardhatRuntimeEnvironmentExtended } from './types'; -import axios from 'axios'; import * as artifacts from '../src/lib/artifacts'; -import { getChainConfig } from './utils/chains'; import { ContractArtifact } from '../src/lib'; import { Contract } from 'ethers'; import * as console from 'console'; +import axios from 'axios'; +import { EvmChains } from '@requestnetwork/currency'; const getTenderlyAxiosInstance = (hre: HardhatRuntimeEnvironmentExtended) => { return axios.create({ @@ -27,13 +27,11 @@ export const tenderlyImportAll = async (hre: HardhatRuntimeEnvironmentExtended): for (const deployment of deployments) { const { networkName } = deployment; if (['private', 'rinkeby', 'bsctest', 'alfajores'].includes(networkName)) continue; - const chainConfig = await getChainConfig(networkName); - if (!chainConfig) continue; const sanitizedArtifactName = artifactName.replace(/Artifact/i, ''); contracts.push({ name: `${capitalizeFirstLetter(sanitizedArtifactName)}-${deployment.version}`, address: deployment.address, - networkId: chainConfig.chainId, + networkId: EvmChains.getChainId(networkName), }); } } diff --git a/packages/smart-contracts/scripts-create2/utils/index.ts b/packages/smart-contracts/scripts-create2/utils.ts similarity index 98% rename from packages/smart-contracts/scripts-create2/utils/index.ts rename to packages/smart-contracts/scripts-create2/utils.ts index 2608aa2473..7ac44fefe6 100644 --- a/packages/smart-contracts/scripts-create2/utils/index.ts +++ b/packages/smart-contracts/scripts-create2/utils.ts @@ -1,6 +1,6 @@ import { Contract } from 'ethers'; import { EvmChains } from '@requestnetwork/currency'; -import * as artifacts from '../../src/lib'; +import * as artifacts from '../src/lib'; /** * List of smart contract that we deploy using the CREATE2 scheme through the Request Deployer contract diff --git a/packages/smart-contracts/scripts-create2/utils/chains.ts b/packages/smart-contracts/scripts-create2/utils/chains.ts deleted file mode 100644 index fd7b162a44..0000000000 --- a/packages/smart-contracts/scripts-create2/utils/chains.ts +++ /dev/null @@ -1,23 +0,0 @@ -import axios from 'axios'; - -type ChainConfig = { - name: string; - chainId: number; - rpcUrls: string[]; -}; - -const cachedChainConfigs: Record = {}; - -export const getChainConfig = async (chainName: string) => { - try { - if (cachedChainConfigs[chainName]) return cachedChainConfigs[chainName]; - const { data } = await axios.get( - `https://api.request.network/currency/chains/${chainName}`, - ); - cachedChainConfigs[chainName] = data; - return data; - } catch (e) { - console.warn(e.message); - return null; - } -}; diff --git a/packages/toolbox/src/commands/transaction/utils.ts b/packages/toolbox/src/commands/transaction/utils.ts index 8638d16f92..1be457d24b 100644 --- a/packages/toolbox/src/commands/transaction/utils.ts +++ b/packages/toolbox/src/commands/transaction/utils.ts @@ -1,6 +1,6 @@ import { getDefaultProvider } from '@requestnetwork/payment-detection'; import { providers, Wallet } from 'ethers'; -import { getChainConfig } from '@requestnetwork/smart-contracts/scripts-create2/utils/chains'; +import axios from 'axios'; export const getWallet = async ({ chainName, @@ -31,3 +31,17 @@ export const getProvider = async (chainName: string) => { } return getDefaultProvider(chainName); }; + +const getChainConfig = async (chainName: string) => { + try { + const { data } = await axios.get<{ + name: string; + chainId: number; + rpcUrls: string[]; + }>(`https://api.request.network/currency/chains/${chainName}`); + return data; + } catch (e) { + console.warn(e.message); + return null; + } +}; From 729096ebfa927cb14a2b525193f046cc02926ad2 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Wed, 8 Feb 2023 15:14:59 +0100 Subject: [PATCH 42/50] fix ArtifactDeploymentInfo --- packages/smart-contracts/src/lib/ContractArtifact.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/smart-contracts/src/lib/ContractArtifact.ts b/packages/smart-contracts/src/lib/ContractArtifact.ts index 737aafb95e..54360c4a7f 100644 --- a/packages/smart-contracts/src/lib/ContractArtifact.ts +++ b/packages/smart-contracts/src/lib/ContractArtifact.ts @@ -13,7 +13,9 @@ export type ArtifactNetworkInfo = { }; /** Deployment information and ABI per network */ -export type ArtifactDeploymentInfo = { +export type ArtifactDeploymentInfo< + TNetwork extends CurrencyTypes.EvmChainName = CurrencyTypes.EvmChainName, +> = { abi: JsonFragment[]; deployment: Partial>; }; @@ -21,7 +23,7 @@ export type ArtifactDeploymentInfo = { /** Deployment information and ABI per version and network */ export type ArtifactInfo< TVersion extends string = string, - TNetwork extends string = CurrencyTypes.EvmChainName, + TNetwork extends CurrencyTypes.EvmChainName = CurrencyTypes.EvmChainName, > = Record>; export type DeploymentInformation = { From 9e98eb8d57212290e9dc38f25288aba1d759546b Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Wed, 8 Feb 2023 15:20:42 +0100 Subject: [PATCH 43/50] rollback import line change --- packages/smart-contracts/scripts-create2/utils.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/smart-contracts/scripts-create2/utils.ts b/packages/smart-contracts/scripts-create2/utils.ts index 7ac44fefe6..b78c16b92f 100644 --- a/packages/smart-contracts/scripts-create2/utils.ts +++ b/packages/smart-contracts/scripts-create2/utils.ts @@ -1,6 +1,6 @@ import { Contract } from 'ethers'; -import { EvmChains } from '@requestnetwork/currency'; import * as artifacts from '../src/lib'; +import { EvmChains } from '@requestnetwork/currency'; /** * List of smart contract that we deploy using the CREATE2 scheme through the Request Deployer contract From cc4aa87e4945be5599a67681bbbc1a5304c63d81 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Wed, 8 Feb 2023 16:53:43 +0100 Subject: [PATCH 44/50] add testnet chain configuration --- .../currency/src/chains/ChainsAbstract.ts | 7 ++ .../currency/src/chains/btc/data/testnet.ts | 1 + .../src/chains/evm/data/arbitrum-rinkeby.ts | 1 + .../currency/src/chains/evm/data/goerli.ts | 1 + .../currency/src/chains/evm/data/mumbai.ts | 1 + .../currency/src/chains/evm/data/rinkeby.ts | 1 + .../src/chains/near/data/near-testnet.ts | 1 + packages/currency/src/types.ts | 1 + .../scripts-create2/tenderly.ts | 87 ++++++++++++++++--- 9 files changed, 89 insertions(+), 12 deletions(-) diff --git a/packages/currency/src/chains/ChainsAbstract.ts b/packages/currency/src/chains/ChainsAbstract.ts index 523ca141c1..ecc96017ef 100644 --- a/packages/currency/src/chains/ChainsAbstract.ts +++ b/packages/currency/src/chains/ChainsAbstract.ts @@ -59,4 +59,11 @@ export abstract class ChainsAbstract< public getChainName(chainId: CHAIN_ID): CHAIN_NAME | undefined { return this.chainNames.find((chainName) => this.chains[chainName].chainId === chainId); } + + /** + * Returns true is the chain is a testnet chain + */ + public isTestnet(chainName: CHAIN_NAME): boolean { + return Boolean(this.chains[chainName].testnet); + } } diff --git a/packages/currency/src/chains/btc/data/testnet.ts b/packages/currency/src/chains/btc/data/testnet.ts index 61ad4860df..db05a6d60d 100644 --- a/packages/currency/src/chains/btc/data/testnet.ts +++ b/packages/currency/src/chains/btc/data/testnet.ts @@ -1 +1,2 @@ export const chainId = '000000000933ea01ad0ee984209779baaec3ced90fa3f408719526f8d77f4943'; +export const testnet = true; diff --git a/packages/currency/src/chains/evm/data/arbitrum-rinkeby.ts b/packages/currency/src/chains/evm/data/arbitrum-rinkeby.ts index dd24630b18..19da716ff9 100644 --- a/packages/currency/src/chains/evm/data/arbitrum-rinkeby.ts +++ b/packages/currency/src/chains/evm/data/arbitrum-rinkeby.ts @@ -1 +1,2 @@ export const chainId = 421611; +export const testnet = true; diff --git a/packages/currency/src/chains/evm/data/goerli.ts b/packages/currency/src/chains/evm/data/goerli.ts index 2668b32207..2f700bcfbd 100644 --- a/packages/currency/src/chains/evm/data/goerli.ts +++ b/packages/currency/src/chains/evm/data/goerli.ts @@ -2,6 +2,7 @@ import { TokenMap } from '../../../types'; import { supportedGoerliERC20 } from '../../../erc20/chains/goerli'; export const chainId = 5; +export const testnet = true; export const currencies: TokenMap = { ...supportedGoerliERC20, }; diff --git a/packages/currency/src/chains/evm/data/mumbai.ts b/packages/currency/src/chains/evm/data/mumbai.ts index 4e2cf0f738..a5b0bd6e95 100644 --- a/packages/currency/src/chains/evm/data/mumbai.ts +++ b/packages/currency/src/chains/evm/data/mumbai.ts @@ -1 +1,2 @@ export const chainId = 80001; +export const testnet = true; diff --git a/packages/currency/src/chains/evm/data/rinkeby.ts b/packages/currency/src/chains/evm/data/rinkeby.ts index 1d3610f911..aa9da936d3 100644 --- a/packages/currency/src/chains/evm/data/rinkeby.ts +++ b/packages/currency/src/chains/evm/data/rinkeby.ts @@ -3,6 +3,7 @@ import { supportedRinkebyERC20 } from '../../../erc20/chains/rinkeby'; import { supportedRinkebyERC777 } from '../../../erc777/chains/rinkeby'; export const chainId = 4; +export const testnet = true; export const currencies: TokenMap = { ...supportedRinkebyERC20, ...supportedRinkebyERC777, diff --git a/packages/currency/src/chains/near/data/near-testnet.ts b/packages/currency/src/chains/near/data/near-testnet.ts index aeffcb72cd..ebfb20c494 100644 --- a/packages/currency/src/chains/near/data/near-testnet.ts +++ b/packages/currency/src/chains/near/data/near-testnet.ts @@ -1 +1,2 @@ export const chainId = 'testnet'; +export const testnet = true; diff --git a/packages/currency/src/types.ts b/packages/currency/src/types.ts index 76e09d648c..44e5e2ab03 100644 --- a/packages/currency/src/types.ts +++ b/packages/currency/src/types.ts @@ -12,6 +12,7 @@ export type TokenMap = Record; */ export type Chain = { chainId: number | string; + testnet?: boolean; currencies?: TokenMap; }; diff --git a/packages/smart-contracts/scripts-create2/tenderly.ts b/packages/smart-contracts/scripts-create2/tenderly.ts index 3303c49f56..ea2d373dcd 100644 --- a/packages/smart-contracts/scripts-create2/tenderly.ts +++ b/packages/smart-contracts/scripts-create2/tenderly.ts @@ -5,6 +5,7 @@ import { Contract } from 'ethers'; import * as console from 'console'; import axios from 'axios'; import { EvmChains } from '@requestnetwork/currency'; +import { CurrencyTypes } from '@requestnetwork/types'; const getTenderlyAxiosInstance = (hre: HardhatRuntimeEnvironmentExtended) => { return axios.create({ @@ -17,32 +18,94 @@ const getTenderlyAxiosInstance = (hre: HardhatRuntimeEnvironmentExtended) => { const capitalizeFirstLetter = (string: string) => string.charAt(0).toUpperCase() + string.slice(1); +/** + * Chains supported by Tenderly. + * Supported testnet chains are commented out. + */ +const supportedTenderlyChains: CurrencyTypes.EvmChainName[] = [ + 'arbitrum-one', + 'arbitrum-rinkeby', + 'avalanche', + 'bsc', + 'fantom', + 'goerli', + 'mainnet', + 'matic', + 'moonbeam', + 'mumbai', + 'optimism', + 'rinkeby', + 'xdai', +]; + +type TenderlyContract = { address: string; chainId: number }; + +const getTenderlyContractId = (c: TenderlyContract) => + `eth:${c.chainId}:${c.address.toLowerCase()}`; + export const tenderlyImportAll = async (hre: HardhatRuntimeEnvironmentExtended): Promise => { - const { username, project } = hre.config.tenderly; try { - const contracts: Array<{ name: string; address: string; networkId: number }> = []; + const { username, project } = hre.config.tenderly; + const contracts: Record = {}; + const mainnetContracts: Set = new Set(); + const testnetContracts: Set = new Set(); + const versions: Record> = {}; for (const artifactName in artifacts) { const artifact = (artifacts as any)[artifactName] as ContractArtifact; const deployments = artifact.getAllAddressesFromAllNetworks(); for (const deployment of deployments) { - const { networkName } = deployment; - if (['private', 'rinkeby', 'bsctest', 'alfajores'].includes(networkName)) continue; - const sanitizedArtifactName = artifactName.replace(/Artifact/i, ''); - contracts.push({ - name: `${capitalizeFirstLetter(sanitizedArtifactName)}-${deployment.version}`, - address: deployment.address, - networkId: EvmChains.getChainId(networkName), - }); + const { networkName, address, version } = deployment; + if (!supportedTenderlyChains.includes(networkName)) continue; + const chainId = EvmChains.getChainId(networkName); + const contract: TenderlyContract = { + address, + chainId, + }; + const contractId = getTenderlyContractId(contract); + contracts[contractId] = { + name: capitalizeFirstLetter(artifactName.replace(/Artifact/i, '')), + ...contract, + }; + versions[version] ??= new Set(); + versions[version].add(contractId); + (EvmChains.isTestnet(networkName) ? testnetContracts : mainnetContracts).add(contractId); } } + console.log(`> Retrieved ${Object.keys(contracts).length} contracts from protocol artifacts`); + // console.log(mainnetContracts); + // console.log(testnetContracts); + // return; + + console.log(`> Syncing contracts with Tenderly...`); const axiosInstance = getTenderlyAxiosInstance(hre); await axiosInstance.post(`/api/v2/accounts/${username}/projects/${project}/contracts`, { - contracts: contracts.map((contract) => ({ + contracts: Object.values(contracts).map((contract) => ({ address: contract.address, display_name: contract.name, - network_id: contract.networkId.toString(), + network_id: contract.chainId.toString(), })), }); + console.log(' ✔ done'); + + console.log(`> Adding version tags to contracts...`); + for (const version in versions) { + await axiosInstance.post(`/api/v1/account/${username}/project/${project}/tag`, { + contract_ids: Array.from(versions[version]), + tag: `v${version}`, + }); + } + console.log(' ✔ done'); + + console.log(`> Adding mainnet/testnet tags to contracts...`); + await axiosInstance.post(`/api/v1/account/${username}/project/${project}/tag`, { + contract_ids: Array.from(mainnetContracts), + tag: 'mainnet', + }); + await axiosInstance.post(`/api/v1/account/${username}/project/${project}/tag`, { + contract_ids: Array.from(testnetContracts), + tag: 'testnet', + }); + console.log(' ✔ done'); } catch (err) { console.error('Error while adding contract(s) to Tenderly', err.response?.data || err); } From ec789337e16e2441116bdf625e7e263dfe85eb33 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Wed, 8 Feb 2023 17:25:56 +0100 Subject: [PATCH 45/50] remove comment --- packages/smart-contracts/scripts-create2/tenderly.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/packages/smart-contracts/scripts-create2/tenderly.ts b/packages/smart-contracts/scripts-create2/tenderly.ts index ea2d373dcd..f34a14eabd 100644 --- a/packages/smart-contracts/scripts-create2/tenderly.ts +++ b/packages/smart-contracts/scripts-create2/tenderly.ts @@ -72,9 +72,6 @@ export const tenderlyImportAll = async (hre: HardhatRuntimeEnvironmentExtended): } } console.log(`> Retrieved ${Object.keys(contracts).length} contracts from protocol artifacts`); - // console.log(mainnetContracts); - // console.log(testnetContracts); - // return; console.log(`> Syncing contracts with Tenderly...`); const axiosInstance = getTenderlyAxiosInstance(hre); From 97b3438ce5f7d072caacf5cf58f22eebb6dc5f1e Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Thu, 16 Feb 2023 18:35:55 +0100 Subject: [PATCH 46/50] fix type for ERC20Currency --- packages/currency/src/types.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/currency/src/types.ts b/packages/currency/src/types.ts index 76e09d648c..ec6f3c3c08 100644 --- a/packages/currency/src/types.ts +++ b/packages/currency/src/types.ts @@ -43,7 +43,7 @@ export type ISO4217Currency = { export type ERC20Currency = { symbol: string; decimals: number; - network: CurrencyTypes.EvmChainName; + network: CurrencyTypes.EvmChainName | CurrencyTypes.NearChainName; address: string; }; From 3452fd1a3f06b413a44d9406b60b271dacd2f206 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Thu, 16 Feb 2023 19:13:57 +0100 Subject: [PATCH 47/50] add README --- packages/currency/README.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/packages/currency/README.md b/packages/currency/README.md index 9187cb49db..7d4784be2d 100644 --- a/packages/currency/README.md +++ b/packages/currency/README.md @@ -51,6 +51,27 @@ console.log(FAUToken.symbol); // FAU Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. [Read the contributing guide](/CONTRIBUTING.md) +### Adding a new chain + +Supported chains are listed in `src/chains`: + +- `src/chains/btc/data` for BTC type chains +- `src/chains/evm/data` for EVM type chains +- `src/chains/near/data` for NEAR type chains + +The chain names are subjective, but they are unique and uniform across all Request Network packages. +They are formatted with the kebab-case naming convention. + +In order to add a new chain, first create a file `[nameOfTheChain].ts` in the correct directory. +Its internal structure should conform with the corresponding type, respectively: + +- `BtcChain` +- `EvmChain` +- `NearChain` + +These types are described in the `index.ts` file of each chain subdirectory. +Please add the `testnet: true` property for staging chains. + ## License [MIT](/LICENSE) From 8d815f037840823c39d063c1fdf9488b2e86d3f7 Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Mar 2023 10:51:05 +0100 Subject: [PATCH 48/50] fix build --- packages/payment-detection/codegen.yml | 2 +- .../src/erc20/transferable-receivable.ts | 9 +++++++-- .../payment-detection/src/thegraph/info-retriever.ts | 2 +- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/payment-detection/codegen.yml b/packages/payment-detection/codegen.yml index 7d8868f2d7..f44358af27 100644 --- a/packages/payment-detection/codegen.yml +++ b/packages/payment-detection/codegen.yml @@ -1,5 +1,5 @@ overwrite: true -schema: 'https://api.thegraph.com/subgraphs/name/requestnetwork/request-payments-rinkeby' +schema: 'https://api.thegraph.com/subgraphs/name/requestnetwork/request-payments-goerli' documents: src/thegraph/queries/*.graphql generates: src/thegraph/generated/graphql.ts: diff --git a/packages/payment-detection/src/erc20/transferable-receivable.ts b/packages/payment-detection/src/erc20/transferable-receivable.ts index 4b2ac4b097..dcdb511f3c 100644 --- a/packages/payment-detection/src/erc20/transferable-receivable.ts +++ b/packages/payment-detection/src/erc20/transferable-receivable.ts @@ -1,4 +1,9 @@ -import { ExtensionTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types'; +import { + ExtensionTypes, + PaymentTypes, + RequestLogicTypes, + CurrencyTypes, +} from '@requestnetwork/types'; import { TheGraphInfoRetriever } from '../thegraph'; import { erc20TransferableReceivableArtifact } from '@requestnetwork/smart-contracts'; @@ -51,7 +56,7 @@ export class ERC20TransferableReceivablePaymentDetector extends FeeReferenceBase toAddress: string | undefined, paymentReference: string, requestCurrency: RequestLogicTypes.ICurrency, - paymentChain: string, + paymentChain: CurrencyTypes.EvmChainName, paymentNetwork: ExtensionTypes.IState, ): Promise> { // To satisfy typescript diff --git a/packages/payment-detection/src/thegraph/info-retriever.ts b/packages/payment-detection/src/thegraph/info-retriever.ts index 0b30446a42..95676cc07f 100644 --- a/packages/payment-detection/src/thegraph/info-retriever.ts +++ b/packages/payment-detection/src/thegraph/info-retriever.ts @@ -19,7 +19,7 @@ type TransferEventsParams = { eventName: PaymentTypes.EVENTS_NAMES; /** The list of ERC20 tokens addresses accepted for payments and refunds */ acceptedTokens?: string[]; - /** The the maximum span between the time the rate was fetched and the payment */ + /** The maximum span between the time the rate was fetched and the payment */ maxRateTimespan?: number; }; From 51030c1edf3e2a8cb1fb38e809558b56d3d6d67a Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Mar 2023 11:32:55 +0100 Subject: [PATCH 49/50] fix missing type --- .../test/erc20/transferable-receivable.test.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/payment-detection/test/erc20/transferable-receivable.test.ts b/packages/payment-detection/test/erc20/transferable-receivable.test.ts index dbb3bdd319..67d6667ce7 100644 --- a/packages/payment-detection/test/erc20/transferable-receivable.test.ts +++ b/packages/payment-detection/test/erc20/transferable-receivable.test.ts @@ -4,6 +4,7 @@ import PaymentReferenceCalculator from '../../src/payment-reference-calculator'; import { ERC20TransferableReceivablePaymentDetector } from '../../src/erc20'; import { AdvancedLogicTypes, + CurrencyTypes, ExtensionTypes, IdentityTypes, PaymentTypes, @@ -376,7 +377,7 @@ describe('api/erc20/transferable-receivable-contract', () => { txHash: '0x3e2d6cc2534b1d340ba2954f34e6cc819d6da64ff76863ea89c6d34b15d13c97', from: '0x186e7fe6c34ea0eca7f9c2fd29651fc0443e3f29', to: paymentAddress, - network: 'rinkeby', + network: 'rinkeby' as CurrencyTypes.EvmChainName, salt: '0ee84db293a752c6', amount: '30000000000000', requestId: '0188791633ff0ec72a7dbdefb886d2db6cccfa98287320839c2f173c7a4e3ce7e1', From 0b99099aa57982cac0113cef35643c25bc5ef75f Mon Sep 17 00:00:00 2001 From: Alexandre ABRIOUX Date: Tue, 7 Mar 2023 12:27:56 +0100 Subject: [PATCH 50/50] fix type errors --- .../erc20-transferable-receivable.test.ts | 1 + .../test/payment/erc777-stream.test.ts | 27 ++++++++++--------- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/packages/payment-processor/test/payment/erc20-transferable-receivable.test.ts b/packages/payment-processor/test/payment/erc20-transferable-receivable.test.ts index 094b350fa4..10563ec6c4 100644 --- a/packages/payment-processor/test/payment/erc20-transferable-receivable.test.ts +++ b/packages/payment-processor/test/payment/erc20-transferable-receivable.test.ts @@ -141,6 +141,7 @@ describe('erc20-transferable-receivable', () => { it('should throw an error if currencyInfo has no network', async () => { const request = deepCopy(validRequest); + // @ts-expect-error Type '""' is not assignable to type 'ChainName | undefined' request.currencyInfo.network = ''; await expect(payErc20TransferableReceivableRequest(request, wallet)).rejects.toThrowError( 'Payment currency must have a network', diff --git a/packages/payment-processor/test/payment/erc777-stream.test.ts b/packages/payment-processor/test/payment/erc777-stream.test.ts index 38d144dace..3e1fa26455 100644 --- a/packages/payment-processor/test/payment/erc777-stream.test.ts +++ b/packages/payment-processor/test/payment/erc777-stream.test.ts @@ -100,18 +100,21 @@ describe('erc777-stream', () => { { network: 'optimism' }, { network: 'avalanche' }, { network: 'arbitrum-one' }, - ])('Should initialize superfluid framework on $network', async ({ network }) => { - const provider = getDefaultProvider(network); - const networkValidRequest = { - ...validRequest, - currencyInfo: { - ...validRequest.currencyInfo, - network, - }, - }; - const sf = await getSuperFluidFramework(networkValidRequest, provider); - expect(sf).toBeDefined(); - }); + ] as Array<{ network: CurrencyTypes.EvmChainName }>)( + 'Should initialize superfluid framework on $network', + async ({ network }) => { + const provider = getDefaultProvider(network); + const networkValidRequest = { + ...validRequest, + currencyInfo: { + ...validRequest.currencyInfo, + network, + }, + }; + const sf = await getSuperFluidFramework(networkValidRequest, provider); + expect(sf).toBeDefined(); + }, + ); }); describe('encodePayErc20FeeRequest (used to pay and swap to pay)', () => {