From 3536cba125b834c29e542fd73794d2de2b24af6e Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sat, 15 Apr 2023 01:55:11 +0800 Subject: [PATCH 01/16] chore: fix github action --- .github/workflows/lint.yaml | 4 ++-- .github/workflows/relesae.yaml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index bf649af..c9e1fd6 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -18,5 +18,5 @@ jobs: with: node-version: 16.x cache: pnpm - - run: pnpm install - - run: pnpm lint \ No newline at end of file + - run: pnpm install --no-frozen-lockfile + - run: pnpm lint diff --git a/.github/workflows/relesae.yaml b/.github/workflows/relesae.yaml index a6f50e7..a6dfac4 100644 --- a/.github/workflows/relesae.yaml +++ b/.github/workflows/relesae.yaml @@ -26,7 +26,7 @@ jobs: cache: pnpm - name: Install Dependencies - run: pnpm install + run: pnpm install --no-frozen-lockfile - name: Create Release Pull Request or Publish to npm id: changesets From 61b19466c1fb6ef621da98e75c05e37d59da5b6d Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sat, 15 Apr 2023 02:13:16 +0800 Subject: [PATCH 02/16] style: fix code style --- .eslintignore | 2 ++ apps/doc/src/utils/truncation.ts | 4 ++-- packages/core/src/editor/codeParser/codeParserCompiler.ts | 6 +++--- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/.eslintignore b/.eslintignore index d9de66d..163f1e2 100644 --- a/.eslintignore +++ b/.eslintignore @@ -7,3 +7,5 @@ packages/*/coverage packages/*/test packages/**/*.config.js packages/**/*.config.json +**/*.config.js +apps/doc/sidebars.js diff --git a/apps/doc/src/utils/truncation.ts b/apps/doc/src/utils/truncation.ts index 336bb11..62d7e4e 100644 --- a/apps/doc/src/utils/truncation.ts +++ b/apps/doc/src/utils/truncation.ts @@ -1,6 +1,6 @@ -const truncation = (value: string = '', prefix = 5, suffix = 4, flag= '***') => { +const truncation = (value = '', prefix = 5, suffix = 4, flag= '***') => { const preValue = value.slice(0, prefix); const sufValue = value.slice(value.length - 1 - suffix, value.length - 1); return `${preValue}${flag}${sufValue}`; } -export default truncation; \ No newline at end of file +export default truncation; diff --git a/packages/core/src/editor/codeParser/codeParserCompiler.ts b/packages/core/src/editor/codeParser/codeParserCompiler.ts index 3d3ec18..a383038 100644 --- a/packages/core/src/editor/codeParser/codeParserCompiler.ts +++ b/packages/core/src/editor/codeParser/codeParserCompiler.ts @@ -4,13 +4,13 @@ import { Language, makeCompilerInput, } from 'solive-compiler-utils'; +import axios from 'axios'; import { IEditorInitState } from '../contexts/editorContext'; import { EditorApi, ModelType } from '../../types/monaco'; +import { cache, getCache } from '../utils/cache'; import ParserVersion from './parserVersion'; -import { cache, getCache } from '../utils/cache'; -import axios from 'axios'; class CodeParserCompiler { editorApi: EditorApi; @@ -115,7 +115,7 @@ class CodeParserCompiler { const fileRaw = url.replace('//github.com/', `//${fileDomain}/`).replace('/blob/', '/'); const fileName = `github:${fileRaw.split(`${fileDomain}/`).pop()}`; let fileContent = ''; - if(!!fileName) { + if(fileName) { const cacheFile = getCache(fileName); if(cacheFile.value){ fileContent = cacheFile.value as string; From 0d372727f8936fdd7fefa0f925f19baaa93a42d0 Mon Sep 17 00:00:00 2001 From: KieSun Date: Sat, 15 Apr 2023 17:06:57 +0800 Subject: [PATCH 03/16] chore: fix lint --- .eslintrc | 16 +- package.json | 10 +- pnpm-lock.yaml | 1025 ++++++++++++++++++++++++++++-------------------- 3 files changed, 614 insertions(+), 437 deletions(-) diff --git a/.eslintrc b/.eslintrc index 3ca270e..2672190 100644 --- a/.eslintrc +++ b/.eslintrc @@ -3,10 +3,7 @@ "browser": true, "es2021": true }, - "plugins": [ - "prettier", - "@typescript-eslint" - ], + "plugins": ["prettier", "@typescript-eslint"], "extends": [ "eslint:recommended", "plugin:@typescript-eslint/recommended", @@ -15,9 +12,7 @@ ], "parser": "@typescript-eslint/parser", "parserOptions": { - "project": [ - "**/tsconfig.json" - ] + "project": ["**/tsconfig.json"] }, "settings": { "import/resolver": { @@ -30,7 +25,12 @@ "rules": { "import/order": ["error", { "newlines-between": "always" }], "import/no-named-as-default-member": "off", - "import/no-unresolved": "error", + "import/no-unresolved": [ + "error", + { + "ignore": ["^@theme-original", "^@docusaurus"] + } + ], "@typescript-eslint/no-non-null-assertion": "off", "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/no-empty-interface": "off", diff --git a/package.json b/package.json index 4361053..129b68e 100644 --- a/package.json +++ b/package.json @@ -26,6 +26,9 @@ }, "keywords": [], "devDependencies": { + "@babel/core": "^7.19.1", + "@babel/preset-env": "^7.19.1", + "@babel/preset-typescript": "^7.18.6", "@changesets/cli": "^2.22.0", "@rollup/plugin-commonjs": "^22.0.0", "@rollup/plugin-json": "^6.0.0", @@ -35,14 +38,12 @@ "@types/node": "17.0.41", "@typescript-eslint/eslint-plugin": "^5.39.0", "@typescript-eslint/parser": "^5.39.0", - "@babel/core": "^7.19.1", - "@babel/preset-env": "^7.19.1", - "@babel/preset-typescript": "^7.18.6", "eslint": "^8.25.0", "eslint-config-prettier": "^8.5.0", "eslint-define-config": "^1.5.1", "eslint-import-resolver-typescript": "^2.7.1", "eslint-plugin-import": "^2.26.0", + "eslint-plugin-prettier": "^4.2.1", "husky": "^8.0.1", "lint-staged": "^13.0.3", "nx": "^15.0.0", @@ -60,8 +61,7 @@ "tslib": "^2.5.0", "typescript": "^4.7.3", "uuid": "^8.3.2", - "webpack": "^5.77.0", - "eslint-plugin-prettier": "^4.2.1" + "webpack": "^5.77.0" }, "author": "", "license": "ISC", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fe8794e..d316f65 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -145,7 +145,7 @@ importers: postcss: r2.cnpmjs.org/postcss/7.0.39 punycode: 2.3.0 stream-browserify: r2.cnpmjs.org/stream-browserify/3.0.0 - tailwindcss: r2.cnpmjs.org/@tailwindcss/postcss7-compat/2.2.17 + tailwindcss: /@tailwindcss/postcss7-compat/2.2.17 tty-browserify: r2.cnpmjs.org/tty-browserify/0.0.1 url: r2.cnpmjs.org/url/0.11.0 util: 0.12.5 @@ -207,7 +207,7 @@ importers: postcss: 8.4.21 react: 18.2.0 react-dom: 18.2.0 - solive-core: workspace:0.0.1-aplha + solive-core: workspace:* tailwindcss: 3.3.1 typescript: 5.0.4 dependencies: @@ -1883,7 +1883,7 @@ packages: dependencies: '@csstools/postcss-progressive-custom-properties': 1.3.0_postcss@8.4.21 postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /@csstools/postcss-font-format-keywords/1.0.1_postcss@8.4.21: @@ -1893,7 +1893,7 @@ packages: postcss: ^8.2 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /@csstools/postcss-hwb-function/1.0.2_postcss@8.4.21: @@ -1903,7 +1903,7 @@ packages: postcss: ^8.2 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /@csstools/postcss-ic-unit/1.0.1_postcss@8.4.21: @@ -1914,7 +1914,7 @@ packages: dependencies: '@csstools/postcss-progressive-custom-properties': 1.3.0_postcss@8.4.21 postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /@csstools/postcss-is-pseudo-class/2.0.7_postcss@8.4.21: @@ -1935,7 +1935,7 @@ packages: postcss: ^8.2 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /@csstools/postcss-normalize-display-values/1.0.1_postcss@8.4.21: @@ -1945,7 +1945,7 @@ packages: postcss: ^8.2 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /@csstools/postcss-oklab-function/1.1.1_postcss@8.4.21: @@ -1956,7 +1956,7 @@ packages: dependencies: '@csstools/postcss-progressive-custom-properties': 1.3.0_postcss@8.4.21 postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /@csstools/postcss-progressive-custom-properties/1.3.0_postcss@8.4.21: @@ -1966,7 +1966,7 @@ packages: postcss: ^8.3 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /@csstools/postcss-stepped-value-functions/1.0.1_postcss@8.4.21: @@ -1976,7 +1976,7 @@ packages: postcss: ^8.2 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /@csstools/postcss-text-decoration-shorthand/1.0.0_postcss@8.4.21: @@ -1986,7 +1986,7 @@ packages: postcss: ^8.2 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /@csstools/postcss-trigonometric-functions/1.0.2_postcss@8.4.21: @@ -1996,7 +1996,7 @@ packages: postcss: ^8.2 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /@csstools/postcss-unset-value/1.0.2_postcss@8.4.21: @@ -2112,7 +2112,7 @@ packages: react-dev-utils: 12.0.1_lmihoaokjodojihym2ybosltk4 react-dom: 18.2.0_react@18.2.0 react-helmet-async: 1.3.0_biqbaboplfbrettd7655fr4n2y - react-loadable: r2.cnpmjs.org/@docusaurus/react-loadable/5.5.2_react@18.2.0 + react-loadable: /@docusaurus/react-loadable/5.5.2_react@18.2.0 react-loadable-ssr-addon-v5-slorber: r2.cnpmjs.org/react-loadable-ssr-addon-v5-slorber/1.0.1_g3o3v7qydpv4pdkxsoov4wje5i react-router: 5.3.4_react@18.2.0 react-router-config: r2.cnpmjs.org/react-router-config/5.1.1_rlw3ibuvnpt5jvejeevjcf4ije @@ -2166,7 +2166,7 @@ packages: resolution: {integrity: sha512-T8+qR4APN+MjcC9yL2Es+xPJ2923S9hpzDmMtdsOcUGLqpCGBbU1vp3AAqDwXtVgFkq+NsEk7sHdVsfLWR/AXw==} engines: {node: '>=16.14'} dependencies: - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 tslib: 2.5.0 dev: false @@ -2220,7 +2220,7 @@ packages: react: 18.2.0 react-dom: 18.2.0_react@18.2.0 react-helmet-async: 1.3.0_biqbaboplfbrettd7655fr4n2y - react-loadable: r2.cnpmjs.org/@docusaurus/react-loadable/5.5.2_react@18.2.0 + react-loadable: /@docusaurus/react-loadable/5.5.2_react@18.2.0 transitivePeerDependencies: - '@swc/core' - esbuild @@ -2243,7 +2243,7 @@ packages: react: 18.2.0 react-dom: 18.2.0_react@18.2.0 react-helmet-async: 1.3.0_biqbaboplfbrettd7655fr4n2y - react-loadable: r2.cnpmjs.org/@docusaurus/react-loadable/5.5.2_react@18.2.0 + react-loadable: /@docusaurus/react-loadable/5.5.2_react@18.2.0 transitivePeerDependencies: - '@swc/core' - esbuild @@ -2597,6 +2597,15 @@ packages: - webpack-cli dev: false + /@docusaurus/react-loadable/5.5.2_react@18.2.0: + resolution: {integrity: sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==} + peerDependencies: + react: '*' + dependencies: + '@types/react': 18.0.33 + prop-types: 15.8.1 + react: 18.2.0 + /@docusaurus/theme-classic/2.4.0_ygqkwb4gg3aean7xjfdauovyqq: resolution: {integrity: sha512-GMDX5WU6Z0OC65eQFgl3iNNEbI9IMJz9f6KnOyuMxNUR6q0qVLsKCNopFUDfFNJ55UU50o7P7o21yVhkwpfJ9w==} engines: {node: '>=16.14'} @@ -2848,7 +2857,7 @@ packages: globby: 11.1.0 gray-matter: r2.cnpmjs.org/gray-matter/4.0.3 js-yaml: r2.cnpmjs.org/js-yaml/4.1.0 - lodash: r2.cnpmjs.org/lodash/4.17.21 + lodash: 4.17.21 micromatch: 4.0.5 resolve-pathname: r2.cnpmjs.org/resolve-pathname/3.0.0 shelljs: 0.8.5 @@ -2863,6 +2872,14 @@ packages: - webpack-cli dev: false + /@emotion/is-prop-valid/0.8.8: + resolution: {integrity: sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==} + requiresBuild: true + dependencies: + '@emotion/memoize': r2.cnpmjs.org/@emotion/memoize/0.7.4 + dev: false + optional: true + /@eslint-community/eslint-utils/4.4.0_eslint@8.37.0: resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3471,7 +3488,7 @@ packages: dependencies: '@jest/types': 27.5.1 '@types/node': 17.0.41 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 jest-message-util: 27.5.1 jest-util: 27.5.1 slash: r2.cnpmjs.org/slash/3.0.0 @@ -3483,7 +3500,7 @@ packages: dependencies: '@jest/types': 28.1.3 '@types/node': 17.0.41 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 jest-message-util: 28.1.3 jest-util: 28.1.3 slash: r2.cnpmjs.org/slash/3.0.0 @@ -3505,7 +3522,7 @@ packages: '@jest/types': 27.5.1 '@types/node': 17.0.41 ansi-escapes: r2.cnpmjs.org/ansi-escapes/4.3.2 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 emittery: r2.cnpmjs.org/emittery/0.8.1 exit: r2.cnpmjs.org/exit/0.1.2 graceful-fs: 4.2.11 @@ -3580,7 +3597,7 @@ packages: '@jest/transform': 27.5.1 '@jest/types': 27.5.1 '@types/node': 17.0.41 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 collect-v8-coverage: r2.cnpmjs.org/collect-v8-coverage/1.0.1 exit: r2.cnpmjs.org/exit/0.1.2 glob: 7.2.3 @@ -3595,7 +3612,7 @@ packages: jest-util: 27.5.1 jest-worker: 27.5.1 slash: r2.cnpmjs.org/slash/3.0.0 - source-map: r2.cnpmjs.org/source-map/0.6.1 + source-map: 0.6.1 string-length: r2.cnpmjs.org/string-length/4.0.2 terminal-link: r2.cnpmjs.org/terminal-link/2.1.1 v8-to-istanbul: 8.1.1 @@ -3623,7 +3640,7 @@ packages: dependencies: callsites: r2.cnpmjs.org/callsites/3.1.0 graceful-fs: 4.2.11 - source-map: r2.cnpmjs.org/source-map/0.6.1 + source-map: 0.6.1 dev: false /@jest/test-result/27.5.1: @@ -3665,7 +3682,7 @@ packages: '@babel/core': 7.21.4 '@jest/types': 27.5.1 babel-plugin-istanbul: r2.cnpmjs.org/babel-plugin-istanbul/6.1.1 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 convert-source-map: 1.9.0 fast-json-stable-stringify: r2.cnpmjs.org/fast-json-stable-stringify/2.1.0 graceful-fs: 4.2.11 @@ -3675,7 +3692,7 @@ packages: micromatch: 4.0.5 pirates: 4.0.5 slash: r2.cnpmjs.org/slash/3.0.0 - source-map: r2.cnpmjs.org/source-map/0.6.1 + source-map: 0.6.1 write-file-atomic: r2.cnpmjs.org/write-file-atomic/3.0.3 transitivePeerDependencies: - supports-color @@ -3689,7 +3706,7 @@ packages: '@types/istanbul-reports': r2.cnpmjs.org/@types/istanbul-reports/3.0.1 '@types/node': 17.0.41 '@types/yargs': 16.0.5 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 dev: false /@jest/types/28.1.3: @@ -3701,7 +3718,7 @@ packages: '@types/istanbul-reports': r2.cnpmjs.org/@types/istanbul-reports/3.0.1 '@types/node': 17.0.41 '@types/yargs': 17.0.24 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 dev: false /@jest/types/29.5.0: @@ -3713,7 +3730,7 @@ packages: '@types/istanbul-reports': r2.cnpmjs.org/@types/istanbul-reports/3.0.1 '@types/node': 17.0.41 '@types/yargs': 17.0.24 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 dev: false /@jridgewell/gen-mapping/0.1.1: @@ -4506,6 +4523,50 @@ packages: tailwindcss: 3.3.1 dev: false + /@tailwindcss/postcss7-compat/2.2.17: + resolution: {integrity: sha512-3h2svqQAqYHxRZ1KjsJjZOVTQ04m29LjfrLjXyZZEJuvUuJN+BCIF9GI8vhE1s0plS0mogd6E6YLg6mu4Wv/Vw==} + engines: {node: '>=12.13.0'} + hasBin: true + dependencies: + arg: 5.0.2 + autoprefixer: 9.8.8 + bytes: 3.1.2 + chalk: 4.1.2 + chokidar: 3.5.3 + color: 4.2.3 + cosmiconfig: 7.1.0 + detective: 5.2.1 + didyoumean: 1.2.2 + dlv: 1.1.3 + fast-glob: 3.2.12 + fs-extra: 10.1.0 + glob-parent: 6.0.2 + html-tags: 3.3.1 + is-color-stop: 1.1.0 + is-glob: 4.0.3 + lodash: 4.17.21 + lodash.topath: 4.5.2 + modern-normalize: 1.1.0 + node-emoji: 1.11.0 + normalize-path: 3.0.0 + object-hash: 2.2.0 + postcss: 7.0.39 + postcss-functions: 3.0.0 + postcss-js: 2.0.3 + postcss-load-config: 3.1.4_postcss@7.0.39 + postcss-nested: 4.2.3 + postcss-selector-parser: 6.0.11 + postcss-value-parser: 4.2.0 + pretty-hrtime: 1.0.3 + purgecss: 4.1.3 + quick-lru: 5.1.1 + reduce-css-calc: 2.1.8 + resolve: 1.22.1 + tmp: 0.2.1 + transitivePeerDependencies: + - ts-node + dev: true + /@testing-library/dom/8.20.0: resolution: {integrity: sha512-d9ULIT+a4EXLX3UU8FBjauG9NnsZHkHztXoIcTsOKoOw030fyjheN9svkTULjJxtYag9DZz5Jz5qkWZDPxTFwA==} engines: {node: '>=12'} @@ -5018,6 +5079,23 @@ packages: mime-types: 2.1.35 negotiator: 0.6.3 + /acorn-node/1.8.2: + resolution: {integrity: sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==} + dependencies: + acorn: 7.4.1 + acorn-walk: 7.2.0 + xtend: 4.0.2 + dev: true + + /acorn-walk/7.2.0: + resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} + engines: {node: '>=0.4.0'} + + /acorn/7.4.1: + resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} + engines: {node: '>=0.4.0'} + hasBin: true + /acorn/8.8.2: resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} engines: {node: '>=0.4.0'} @@ -5104,6 +5182,23 @@ packages: engines: {node: '>=6'} dev: true + /ansi-styles/3.2.1: + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} + engines: {node: '>=4'} + dependencies: + color-convert: 1.9.3 + + /ansi-styles/4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + dependencies: + color-convert: 2.0.1 + + /ansi-styles/5.2.0: + resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} + engines: {node: '>=10'} + dev: false + /ansi-styles/6.2.1: resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} engines: {node: '>=12'} @@ -5112,7 +5207,7 @@ packages: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} dependencies: - normalize-path: r2.cnpmjs.org/normalize-path/3.0.0 + normalize-path: 3.0.0 picomatch: 2.3.1 /arg/5.0.2: @@ -5228,6 +5323,19 @@ packages: postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 dev: false + /autoprefixer/9.8.8: + resolution: {integrity: sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==} + hasBin: true + dependencies: + browserslist: 4.21.5 + caniuse-lite: 1.0.30001474 + normalize-range: 0.1.2 + num2fraction: 1.2.2 + picocolors: 0.2.1 + postcss: 7.0.39 + postcss-value-parser: 4.2.0 + dev: true + /aws4/1.12.0: resolution: {integrity: sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==} dev: false @@ -5281,7 +5389,7 @@ packages: '@types/babel__core': 7.20.0 babel-plugin-istanbul: r2.cnpmjs.org/babel-plugin-istanbul/6.1.1 babel-preset-jest: 27.5.1_@babel+core@7.21.4 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 graceful-fs: 4.2.11 slash: r2.cnpmjs.org/slash/3.0.0 transitivePeerDependencies: @@ -5389,6 +5497,10 @@ packages: resolution: {integrity: sha512-pHm4LsMJ6lzgNGVfZHjMoO8sdoRhOzOH4MLmY65Jg70bpxCKu5iOHNJyfF6OyvYw7t8Fpf35RuzUyqnQsj8Vig==} dev: false + /binary-extensions/2.2.0: + resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} + engines: {node: '>=8'} + /blakejs/1.2.1: resolution: {integrity: sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==} dev: false @@ -5443,6 +5555,12 @@ packages: multicast-dns: 7.2.5 dev: false + /braces/3.0.2: + resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} + engines: {node: '>=8'} + dependencies: + fill-range: 7.0.1 + /browser-level/1.0.1: resolution: {integrity: sha512-XECYKJ+Dbzw0lbydyQuJzwNXtOpbMSq737qxJN11sIRTErOMShvDpbzTlgju7orJKvx4epULolZAuJGLzCmWRQ==} dependencies: @@ -5499,6 +5617,11 @@ packages: streamsearch: r2.cnpmjs.org/streamsearch/1.1.0 dev: false + /bytes/3.0.0: + resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==} + engines: {node: '>= 0.8'} + dev: false + /bytes/3.1.2: resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} engines: {node: '>= 0.8'} @@ -5508,6 +5631,11 @@ packages: engines: {node: '>=10.6.0'} dev: false + /camelcase-css/2.0.1: + resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} + engines: {node: '>= 6'} + dev: true + /camelcase/6.3.0: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} @@ -5521,6 +5649,21 @@ packages: engines: {node: '>=6'} dev: false + /chalk/2.4.2: + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} + engines: {node: '>=4'} + dependencies: + ansi-styles: 3.2.1 + escape-string-regexp: 1.0.5 + supports-color: 5.5.0 + + /chalk/4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + /chalk/5.2.0: resolution: {integrity: sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} @@ -5564,14 +5707,14 @@ packages: engines: {node: '>= 8.10.0'} dependencies: anymatch: 3.1.3 - braces: r2.cnpmjs.org/braces/3.0.2 - glob-parent: r2.cnpmjs.org/glob-parent/5.1.2 - is-binary-path: r2.cnpmjs.org/is-binary-path/2.1.0 - is-glob: r2.cnpmjs.org/is-glob/4.0.3 - normalize-path: r2.cnpmjs.org/normalize-path/3.0.0 - readdirp: r2.cnpmjs.org/readdirp/3.6.0 + braces: 3.0.2 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 optionalDependencies: - fsevents: r2.cnpmjs.org/fsevents/2.3.2 + fsevents: 2.3.2 /ci-info/3.8.0: resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==} @@ -5632,18 +5775,35 @@ packages: engines: {node: '>=6'} dev: false + /color-convert/1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + dependencies: + color-name: 1.1.3 + + /color-convert/2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + dependencies: + color-name: 1.1.4 + + /color-name/1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + + /color-name/1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + /color-string/1.9.1: resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} dependencies: - color-name: r2.cnpmjs.org/color-name/1.1.4 - simple-swizzle: r2.cnpmjs.org/simple-swizzle/0.2.2 + color-name: 1.1.4 + simple-swizzle: 0.2.2 dev: true /color/4.2.3: resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} engines: {node: '>=12.5.0'} dependencies: - color-convert: r2.cnpmjs.org/color-convert/2.0.1 + color-convert: 2.0.1 color-string: 1.9.1 dev: true @@ -5658,6 +5818,11 @@ packages: engines: {node: '>=14'} dev: true + /commander/8.3.0: + resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} + engines: {node: '>= 12'} + dev: true + /commander/9.5.0: resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==} engines: {node: ^12.20.0 || >=14} @@ -5668,7 +5833,7 @@ packages: engines: {node: '>= 0.8.0'} dependencies: accepts: 1.3.8 - bytes: r2.cnpmjs.org/bytes/3.0.0 + bytes: 3.0.0 compressible: r2.cnpmjs.org/compressible/2.0.18 debug: r2.cnpmjs.org/debug/2.6.9 on-headers: r2.cnpmjs.org/on-headers/1.0.2 @@ -5706,9 +5871,9 @@ packages: webpack: ^5.1.0 dependencies: fast-glob: 3.2.12 - glob-parent: r2.cnpmjs.org/glob-parent/6.0.2 + glob-parent: 6.0.2 globby: 13.1.3 - normalize-path: r2.cnpmjs.org/normalize-path/3.0.0 + normalize-path: 3.0.0 schema-utils: r2.cnpmjs.org/schema-utils/4.0.0 serialize-javascript: 6.0.1 webpack: 5.77.0 @@ -5803,6 +5968,10 @@ packages: postcss-selector-parser: 6.0.11 dev: false + /css-color-names/0.0.4: + resolution: {integrity: sha512-zj5D7X1U2h2zsXOAM8EyUREBnnts6H+Jm+d1M2DbiQQcUtnqgQsMrdo8JW9R80YFUmIdBZeMu5wvYM7hcgWP/Q==} + dev: true + /css-declaration-sorter/6.4.0_postcss@8.4.21: resolution: {integrity: sha512-jDfsatwWMWN0MODAFuHszfjphEXfNw9JUAhmY4pLu3TyTU+ohUpsbVtbU+1MZn4a47D9kqh03i4eyOm+74+zew==} engines: {node: ^10 || ^12 || >=14} @@ -5834,7 +6003,7 @@ packages: postcss-modules-local-by-default: r2.cnpmjs.org/postcss-modules-local-by-default/4.0.0_postcss@8.4.21 postcss-modules-scope: r2.cnpmjs.org/postcss-modules-scope/3.0.0_postcss@8.4.21 postcss-modules-values: r2.cnpmjs.org/postcss-modules-values/4.0.0_postcss@8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 semver: 7.3.8 webpack: 5.77.0 dev: false @@ -5931,6 +6100,10 @@ packages: nth-check: 2.1.1 dev: false + /css-unit-converter/1.1.2: + resolution: {integrity: sha512-IiJwMC8rdZE0+xiEZHeru6YoONC4rfPMqGm2W85jMIbkFvv5nFTwJVFHam2eFrN6txmoUYFAFXiv8ICVeTO0MA==} + dev: true + /css-what/6.1.0: resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} engines: {node: '>= 6'} @@ -6098,7 +6271,7 @@ packages: dependencies: globby: 11.1.0 graceful-fs: 4.2.11 - is-glob: r2.cnpmjs.org/is-glob/4.0.3 + is-glob: 4.0.3 is-path-cwd: r2.cnpmjs.org/is-path-cwd/2.2.0 is-path-inside: r2.cnpmjs.org/is-path-inside/3.0.3 p-map: r2.cnpmjs.org/p-map/4.0.0 @@ -6125,16 +6298,24 @@ packages: engines: {node: '>=0.8.0'} hasBin: true dependencies: - acorn-node: r2.cnpmjs.org/acorn-node/1.8.2 + acorn-node: 1.8.2 defined: 1.0.1 minimist: 1.2.8 dev: true + /didyoumean/1.2.2: + resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} + dev: true + /diff-sequences/27.5.1: resolution: {integrity: sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dev: false + /dlv/1.1.3: + resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} + dev: true + /dns-packet/5.5.0: resolution: {integrity: sha512-USawdAUzRkV6xrqTjiAEp6M9YagZEzWcSUaZTcIFAiyQWW1SoI6KyId8y2+/71wbgHKQAKd+iupLv4YvEwYWvA==} engines: {node: '>=6'} @@ -6299,6 +6480,10 @@ packages: next-tick: r2.cnpmjs.org/next-tick/1.1.0 dev: false + /escape-string-regexp/1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + /eslint-config-next/13.3.0_voubu7prgxjfsfbgx5d4sqnwiy: resolution: {integrity: sha512-6YEwmFBX0VjBd3ODGW9df0Is0FLaRFdMN8eAahQG9CN6LjQ28J8AFr19ngxqMSg7Qv6Uca/3VeeBosJh1bzu0w==} peerDependencies: @@ -6801,7 +6986,7 @@ packages: eslint: 8.37.0 jest-worker: 28.1.3 micromatch: 4.0.5 - normalize-path: r2.cnpmjs.org/normalize-path/3.0.0 + normalize-path: 3.0.0 schema-utils: r2.cnpmjs.org/schema-utils/4.0.0 webpack: 5.77.0 dev: false @@ -7124,6 +7309,12 @@ packages: resolution: {integrity: sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==} engines: {node: '>= 0.4.0'} + /fill-range/7.0.1: + resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} + engines: {node: '>=8'} + dependencies: + to-regex-range: 5.0.1 + /finalhandler/1.2.0: resolution: {integrity: sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==} engines: {node: '>= 0.8'} @@ -7273,7 +7464,7 @@ packages: style-value-types: r2.cnpmjs.org/style-value-types/5.0.0 tslib: 2.5.0 optionalDependencies: - '@emotion/is-prop-valid': r2.cnpmjs.org/@emotion/is-prop-valid/0.8.8 + '@emotion/is-prop-valid': 0.8.8 dev: false /fs-extra/10.1.0: @@ -7293,6 +7484,31 @@ packages: universalify: r2.cnpmjs.org/universalify/2.0.0 dev: true + /fs-extra/4.0.3: + resolution: {integrity: sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==} + dependencies: + graceful-fs: 4.2.11 + jsonfile: r2.cnpmjs.org/jsonfile/4.0.0 + universalify: r2.cnpmjs.org/universalify/0.1.2 + dev: false + + /fs-extra/9.1.0: + resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} + engines: {node: '>=10'} + dependencies: + at-least-node: r2.cnpmjs.org/at-least-node/1.0.0 + graceful-fs: 4.2.11 + jsonfile: r2.cnpmjs.org/jsonfile/6.1.0 + universalify: r2.cnpmjs.org/universalify/2.0.0 + dev: false + + /fsevents/2.3.2: + resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + optional: true + /functions-have-names/1.2.3: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} @@ -7311,6 +7527,18 @@ packages: resolution: {integrity: sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==} dev: false + /glob-parent/5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + dependencies: + is-glob: 4.0.3 + + /glob-parent/6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + dependencies: + is-glob: 4.0.3 + /glob/7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} dependencies: @@ -7415,6 +7643,14 @@ packages: /has-bigints/1.0.2: resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} + /has-flag/3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} + + /has-flag/4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + /has-property-descriptors/1.0.0: resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} dependencies: @@ -7428,6 +7664,18 @@ packages: resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} engines: {node: '>= 0.4'} + /hex-color-regex/1.1.0: + resolution: {integrity: sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==} + dev: true + + /hsl-regex/1.0.0: + resolution: {integrity: sha512-M5ezZw4LzXbBKMruP+BNANf0k+19hDQMgpzBIYnya//Al+fjNct9Wf3b1WedLqdEs2hKBvxq/jh+DsHJLj0F9A==} + dev: true + + /hsla-regex/1.0.0: + resolution: {integrity: sha512-7Wn5GMLuHBjZCb2bTmnDOycho0p/7UVaAeqXZGbHrBCl6Yd/xDhQJAXe6Ga9AXJH2I5zY1dEdYw2u1UptnSBJA==} + dev: true + /html-entities/2.3.3: resolution: {integrity: sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==} dev: false @@ -7465,7 +7713,7 @@ packages: '@types/express': 4.17.17 '@types/http-proxy': 1.17.10 http-proxy: r2.cnpmjs.org/http-proxy/1.18.1 - is-glob: r2.cnpmjs.org/is-glob/4.0.3 + is-glob: 4.0.3 is-plain-obj: r2.cnpmjs.org/is-plain-obj/3.0.0 micromatch: 4.0.5 transitivePeerDependencies: @@ -7476,7 +7724,7 @@ packages: resolution: {integrity: sha512-kZB0wxMo0sh1PehyjJUWRFEd99KC5TLjZ2cULC4f9iqJBAmKQQXEICjxl5iPJRwP40dpeHFqqhm7tYCvODpqpQ==} engines: {node: '>=10.19.0'} dependencies: - quick-lru: r2.cnpmjs.org/quick-lru/5.1.1 + quick-lru: 5.1.1 resolve-alpn: r2.cnpmjs.org/resolve-alpn/1.2.1 dev: false @@ -7553,6 +7801,16 @@ packages: get-intrinsic: 1.2.0 is-typed-array: 1.1.10 + /is-arrayish/0.3.2: + resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} + dev: true + + /is-binary-path/2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + dependencies: + binary-extensions: 2.2.0 + /is-builtin-module/3.2.1: resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} engines: {node: '>=6'} @@ -7564,17 +7822,42 @@ packages: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} + /is-color-stop/1.1.0: + resolution: {integrity: sha512-H1U8Vz0cfXNujrJzEcvvwMDW9Ra+biSYA3ThdQvAnMLJkEHQXn6bWzLkxHtVYJ+Sdbx0b6finn3jZiaVe7MAHA==} + 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 + dev: true + /is-core-module/2.11.0: resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==} dependencies: has: r2.cnpmjs.org/has/1.0.3 + /is-extglob/2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + /is-glob/4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + dependencies: + is-extglob: 2.1.1 + /is-number-object/1.0.7: resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} engines: {node: '>= 0.4'} dependencies: has-tostringtag: r2.cnpmjs.org/has-tostringtag/1.0.0 + /is-number/7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + /is-shared-array-buffer/1.0.2: resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} dependencies: @@ -7617,7 +7900,7 @@ packages: hasBin: true dependencies: async: 3.2.4 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 filelist: 1.0.4 minimatch: 3.1.2 dev: false @@ -7639,7 +7922,7 @@ packages: '@jest/test-result': 27.5.1 '@jest/types': 27.5.1 '@types/node': 17.0.41 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 co: r2.cnpmjs.org/co/4.6.0 dedent: r2.cnpmjs.org/dedent/0.7.0 expect: 27.5.1 @@ -7671,7 +7954,7 @@ packages: '@jest/core': 27.5.1 '@jest/test-result': 27.5.1 '@jest/types': 27.5.1 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 exit: r2.cnpmjs.org/exit/0.1.2 graceful-fs: 4.2.11 import-local: 3.1.0 @@ -7701,7 +7984,7 @@ packages: '@jest/test-sequencer': 27.5.1 '@jest/types': 27.5.1 babel-jest: 27.5.1_@babel+core@7.21.4 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 ci-info: 3.8.0 deepmerge: 4.3.1 glob: 7.2.3 @@ -7750,7 +8033,7 @@ packages: engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: '@jest/types': 27.5.1 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 jest-get-type: 27.5.1 jest-util: 27.5.1 pretty-format: 27.5.1 @@ -7808,7 +8091,7 @@ packages: micromatch: 4.0.5 walker: r2.cnpmjs.org/walker/1.0.8 optionalDependencies: - fsevents: r2.cnpmjs.org/fsevents/2.3.2 + fsevents: 2.3.2 dev: false /jest-jasmine2/27.5.1: @@ -7820,7 +8103,7 @@ packages: '@jest/test-result': 27.5.1 '@jest/types': 27.5.1 '@types/node': 17.0.41 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 co: r2.cnpmjs.org/co/4.6.0 expect: 27.5.1 is-generator-fn: r2.cnpmjs.org/is-generator-fn/2.1.0 @@ -7861,7 +8144,7 @@ packages: '@babel/code-frame': 7.21.4 '@jest/types': 27.5.1 '@types/stack-utils': r2.cnpmjs.org/@types/stack-utils/2.0.1 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 graceful-fs: 4.2.11 micromatch: 4.0.5 pretty-format: 27.5.1 @@ -7876,7 +8159,7 @@ packages: '@babel/code-frame': 7.21.4 '@jest/types': 28.1.3 '@types/stack-utils': r2.cnpmjs.org/@types/stack-utils/2.0.1 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 graceful-fs: 4.2.11 micromatch: 4.0.5 pretty-format: 28.1.3 @@ -7930,7 +8213,7 @@ packages: engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: '@jest/types': 27.5.1 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 graceful-fs: 4.2.11 jest-haste-map: 27.5.1 jest-pnp-resolver: 1.2.3_jest-resolve@27.5.1 @@ -7951,7 +8234,7 @@ packages: '@jest/transform': 27.5.1 '@jest/types': 27.5.1 '@types/node': 17.0.41 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 emittery: r2.cnpmjs.org/emittery/0.8.1 graceful-fs: 4.2.11 jest-docblock: 27.5.1 @@ -7984,7 +8267,7 @@ packages: '@jest/test-result': 27.5.1 '@jest/transform': 27.5.1 '@jest/types': 27.5.1 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 cjs-module-lexer: r2.cnpmjs.org/cjs-module-lexer/1.2.2 collect-v8-coverage: r2.cnpmjs.org/collect-v8-coverage/1.0.1 execa: r2.cnpmjs.org/execa/5.1.1 @@ -8025,7 +8308,7 @@ packages: '@types/babel__traverse': 7.18.3 '@types/prettier': 2.7.2 babel-preset-current-node-syntax: r2.cnpmjs.org/babel-preset-current-node-syntax/1.0.1_@babel+core@7.21.4 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 expect: 27.5.1 graceful-fs: 4.2.11 jest-diff: 27.5.1 @@ -8047,7 +8330,7 @@ packages: dependencies: '@jest/types': 27.5.1 '@types/node': 17.0.41 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 ci-info: 3.8.0 graceful-fs: 4.2.11 picomatch: 2.3.1 @@ -8059,7 +8342,7 @@ packages: dependencies: '@jest/types': 28.1.3 '@types/node': 17.0.41 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 ci-info: 3.8.0 graceful-fs: 4.2.11 picomatch: 2.3.1 @@ -8071,7 +8354,7 @@ packages: dependencies: '@jest/types': 29.5.0 '@types/node': 17.0.41 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 ci-info: 3.8.0 graceful-fs: 4.2.11 picomatch: 2.3.1 @@ -8083,7 +8366,7 @@ packages: dependencies: '@jest/types': 27.5.1 camelcase: 6.3.0 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 jest-get-type: 27.5.1 leven: r2.cnpmjs.org/leven/3.1.0 pretty-format: 27.5.1 @@ -8096,7 +8379,7 @@ packages: jest: ^27.0.0 || ^28.0.0 dependencies: ansi-escapes: r2.cnpmjs.org/ansi-escapes/4.3.2 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 jest: 27.5.1 jest-regex-util: 28.0.2 jest-watcher: 28.1.3 @@ -8113,7 +8396,7 @@ packages: '@jest/types': 27.5.1 '@types/node': 17.0.41 ansi-escapes: r2.cnpmjs.org/ansi-escapes/4.3.2 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 jest-util: 27.5.1 string-length: r2.cnpmjs.org/string-length/4.0.2 dev: false @@ -8126,7 +8409,7 @@ packages: '@jest/types': 28.1.3 '@types/node': 17.0.41 ansi-escapes: r2.cnpmjs.org/ansi-escapes/4.3.2 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 emittery: 0.10.2 jest-util: 28.1.3 string-length: r2.cnpmjs.org/string-length/4.0.2 @@ -8146,7 +8429,7 @@ packages: dependencies: '@types/node': 17.0.41 merge-stream: r2.cnpmjs.org/merge-stream/2.0.0 - supports-color: r2.cnpmjs.org/supports-color/8.1.1 + supports-color: 8.1.1 dev: false /jest-worker/29.5.0: @@ -8156,7 +8439,7 @@ packages: '@types/node': 17.0.41 jest-util: 29.5.0 merge-stream: r2.cnpmjs.org/merge-stream/2.0.0 - supports-color: r2.cnpmjs.org/supports-color/8.1.1 + supports-color: 8.1.1 dev: false /jest/27.5.1: @@ -8261,7 +8544,7 @@ packages: /launch-editor/2.6.0: resolution: {integrity: sha512-JpDCcQnyAAzZZaZ7vEiSqL690w7dAEyLao+KC96zBplnYbJS7TYNjvM3M7y3dGz+v7aIsJk3hllWuc0kWAjyRQ==} dependencies: - picocolors: r2.cnpmjs.org/picocolors/1.0.0 + picocolors: 1.0.0 shell-quote: 1.8.0 dev: false @@ -8340,6 +8623,13 @@ packages: resolution: {integrity: sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==} engines: {node: '>= 12.13.0'} + /lodash.topath/4.5.2: + resolution: {integrity: sha512-1/W4dM+35DwvE/iEd1M9ekewOSTlpFekhw9mhAtrwjVqUr83/ilQiyAvmg4tVX7Unkcfl1KC+i9WdaT4B6aQcg==} + dev: true + + /lodash/4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + /lz-string/1.5.0: resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} hasBin: true @@ -8443,6 +8733,11 @@ packages: hasBin: true dev: false + /modern-normalize/1.1.0: + resolution: {integrity: sha512-2lMlY1Yc1+CUy0gw4H95uNN7vjbpoED7NNRSBHE25nWfLBdmMzFCsPshlzbxHz+gYMcBEUN8V4pU16prcdPSgA==} + engines: {node: '>=6'} + dev: true + /module-error/1.0.2: resolution: {integrity: sha512-0yuvsqSCv8LbaOKhnsQ/T5JhyFlCYLPXK3U2sgV10zoKQwzs/MyfuQUOZQ1V/6OCOJsK/TRgNVrPuPDqtdMFtA==} engines: {node: '>=10'} @@ -8518,6 +8813,11 @@ packages: - babel-plugin-macros dev: false + /node-emoji/1.11.0: + resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==} + dependencies: + lodash: 4.17.21 + /node-fetch/2.6.7: resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==} engines: {node: 4.x || >=6.0.0} @@ -8542,6 +8842,15 @@ packages: /node-releases/2.0.10: resolution: {integrity: sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==} + /normalize-path/3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + /normalize-range/0.1.2: + resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} + engines: {node: '>=0.10.0'} + dev: true + /npm-run-path/5.1.0: resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -8554,6 +8863,10 @@ packages: dependencies: boolbase: r2.cnpmjs.org/boolbase/1.0.0 + /num2fraction/1.2.2: + resolution: {integrity: sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg==} + dev: true + /nwsapi/2.2.2: resolution: {integrity: sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==} dev: false @@ -8620,6 +8933,15 @@ packages: - debug dev: true + /object-assign/4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + /object-hash/2.2.0: + resolution: {integrity: sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==} + engines: {node: '>= 6'} + dev: true + /object-hash/3.0.0: resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} engines: {node: '>= 6'} @@ -8722,6 +9044,13 @@ packages: entities: 4.4.0 dev: false + /picocolors/0.2.1: + resolution: {integrity: sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==} + + /picocolors/1.0.0: + resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} + dev: false + /picomatch/2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} @@ -8762,7 +9091,7 @@ packages: postcss: ^8.4.6 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-color-functional-notation/4.2.4_postcss@8.4.21: @@ -8772,7 +9101,7 @@ packages: postcss: ^8.2 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-color-hex-alpha/8.0.4_postcss@8.4.21: @@ -8782,7 +9111,7 @@ packages: postcss: ^8.4 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-color-rebeccapurple/7.1.1_postcss@8.4.21: @@ -8792,7 +9121,7 @@ packages: postcss: ^8.2 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-colormin/5.3.1_postcss@8.4.21: @@ -8824,7 +9153,7 @@ packages: postcss: ^8.3 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-custom-properties/12.1.11_postcss@8.4.21: @@ -8834,7 +9163,7 @@ packages: postcss: ^8.2 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-custom-selectors/6.0.3_postcss@8.4.21: @@ -8907,7 +9236,7 @@ packages: dependencies: '@csstools/postcss-progressive-custom-properties': 1.3.0_postcss@8.4.21 postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-env-function/4.0.6_postcss@8.4.21: @@ -8917,7 +9246,7 @@ packages: postcss: ^8.4 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-focus-visible/6.0.4_postcss@8.4.21: @@ -8940,6 +9269,15 @@ packages: postcss-selector-parser: 6.0.11 dev: false + /postcss-functions/3.0.0: + resolution: {integrity: sha512-N5yWXWKA+uhpLQ9ZhBRl2bIAdM6oVJYpDojuI1nF2SzXBimJcdjFwiAouBVbO5VuOF3qA6BSFWFc3wXbbj72XQ==} + dependencies: + glob: 7.2.3 + object-assign: 4.1.1 + postcss: 6.0.23 + postcss-value-parser: 3.3.1 + dev: true + /postcss-gap-properties/3.0.5_postcss@8.4.21: resolution: {integrity: sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==} engines: {node: ^12 || ^14 || >=16} @@ -8956,7 +9294,7 @@ packages: postcss: ^8.2 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-import/14.1.0: @@ -8981,6 +9319,13 @@ packages: resolve: 1.22.1 dev: false + /postcss-js/2.0.3: + resolution: {integrity: sha512-zS59pAk3deu6dVHyrGqmC3oDXBdNdajk4k1RyxeVXCrcEDBUBHoIhE4QTsmhxgzXxsaqFDAkUZfmMa5f/N/79w==} + dependencies: + camelcase-css: 2.0.1 + postcss: 7.0.39 + dev: true + /postcss-js/4.0.1: resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} engines: {node: ^12 || ^14 || >= 16} @@ -9007,7 +9352,7 @@ packages: dependencies: '@csstools/postcss-progressive-custom-properties': 1.3.0_postcss@8.4.21 postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-load-config/3.1.4: @@ -9038,7 +9383,7 @@ packages: optional: true dependencies: lilconfig: 2.1.0 - postcss: r2.cnpmjs.org/postcss/7.0.39 + postcss: 7.0.39 yaml: r2.cnpmjs.org/yaml/1.10.2 dev: true @@ -9100,7 +9445,7 @@ packages: dependencies: cssnano-utils: 3.1.0_postcss@8.4.21 postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-merge-longhand/5.1.7_postcss@8.4.21: @@ -9181,6 +9526,13 @@ packages: string-hash: r2.cnpmjs.org/string-hash/1.1.3 dev: true + /postcss-nested/4.2.3: + resolution: {integrity: sha512-rOv0W1HquRCamWy2kFl3QazJMMe1ku6rCFoAAH+9AcxdbpDeBr6k968MLWuLjvjMcGEip01ak09hKOEgpK9hvw==} + dependencies: + postcss: 7.0.39 + postcss-selector-parser: 6.0.11 + dev: true + /postcss-nested/6.0.0: resolution: {integrity: sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==} engines: {node: '>=12.0'} @@ -9318,7 +9670,7 @@ packages: postcss: ^8.2 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-place/7.0.5_postcss@8.4.21: @@ -9328,7 +9680,7 @@ packages: postcss: ^8.2 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-preset-env/7.8.3_postcss@8.4.21: @@ -9386,7 +9738,7 @@ packages: postcss-pseudo-class-any-link: 7.1.6_postcss@8.4.21 postcss-replace-overflow-wrap: r2.cnpmjs.org/postcss-replace-overflow-wrap/4.0.0_postcss@8.4.21 postcss-selector-not: 6.0.1_postcss@8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-pseudo-class-any-link/7.1.6_postcss@8.4.21: @@ -9406,7 +9758,7 @@ packages: postcss: ^8.2.15 dependencies: postcss: 8.4.21 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + postcss-value-parser: 4.2.0 dev: false /postcss-reduce-initial/5.1.2_postcss@8.4.21: @@ -9474,6 +9826,13 @@ packages: postcss: 8.4.21 postcss-selector-parser: 6.0.11 + /postcss-value-parser/3.3.1: + resolution: {integrity: sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==} + dev: true + + /postcss-value-parser/4.2.0: + resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} + /postcss-zindex/5.1.0_postcss@8.4.21: resolution: {integrity: sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==} engines: {node: ^10 || ^12 || >=14.0} @@ -9483,12 +9842,28 @@ packages: postcss: 8.4.21 dev: false + /postcss/6.0.23: + resolution: {integrity: sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==} + engines: {node: '>=4.0.0'} + dependencies: + chalk: 2.4.2 + source-map: 0.6.1 + supports-color: 5.5.0 + dev: true + + /postcss/7.0.39: + resolution: {integrity: sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==} + engines: {node: '>=6.0.0'} + dependencies: + picocolors: 0.2.1 + source-map: 0.6.1 + /postcss/8.4.14: resolution: {integrity: sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==} engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.6 - picocolors: r2.cnpmjs.org/picocolors/1.0.0 + picocolors: 1.0.0 source-map-js: 1.0.2 dev: false @@ -9520,10 +9895,15 @@ packages: dependencies: '@jest/schemas': 28.1.3 ansi-regex: r2.cnpmjs.org/ansi-regex/5.0.1 - ansi-styles: r2.cnpmjs.org/ansi-styles/5.2.0 + ansi-styles: 5.2.0 react-is: 18.2.0 dev: false + /pretty-hrtime/1.0.3: + resolution: {integrity: sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==} + engines: {node: '>= 0.8'} + dev: true + /prism-react-renderer/1.3.5_react@18.2.0: resolution: {integrity: sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==} peerDependencies: @@ -9564,6 +9944,16 @@ packages: resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} engines: {node: '>=6'} + /purgecss/4.1.3: + resolution: {integrity: sha512-99cKy4s+VZoXnPxaoM23e5ABcP851nC2y2GROkkjS8eJaJtlciGavd7iYAw2V84WeBqggZ12l8ef44G99HmTaw==} + hasBin: true + dependencies: + commander: 8.3.0 + glob: 7.2.3 + postcss: 8.4.21 + postcss-selector-parser: 6.0.11 + dev: true + /q/1.5.1: resolution: {integrity: sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==} engines: {node: '>=0.6.0', teleport: '>=0.2.0'} @@ -9580,6 +9970,10 @@ packages: engines: {node: '>=0.6'} dev: false + /quick-lru/5.1.1: + resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} + engines: {node: '>=10'} + /raw-body/2.5.1: resolution: {integrity: sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==} engines: {node: '>= 0.8'} @@ -9882,7 +10276,7 @@ packages: webpack-manifest-plugin: 4.1.1_webpack@5.77.0 workbox-webpack-plugin: 6.5.4_webpack@5.77.0 optionalDependencies: - fsevents: r2.cnpmjs.org/fsevents/2.3.2 + fsevents: 2.3.2 transitivePeerDependencies: - '@babel/plugin-syntax-flow' - '@babel/plugin-transform-react-jsx' @@ -9971,12 +10365,25 @@ packages: string_decoder: r2.cnpmjs.org/string_decoder/1.3.0 util-deprecate: r2.cnpmjs.org/util-deprecate/1.0.2 + /readdirp/3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + dependencies: + picomatch: 2.3.1 + /recursive-readdir/2.2.3: resolution: {integrity: sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==} engines: {node: '>=6.0.0'} dependencies: minimatch: 3.1.2 + /reduce-css-calc/2.1.8: + resolution: {integrity: sha512-8liAVezDmUcH+tdzoEGrhfbGcP7nOV4NkGE3a74+qqvE7nt9i4sKLGBuZNOnpI4WiGksiNPklZxva80061QiPg==} + dependencies: + css-unit-converter: 1.1.2 + postcss-value-parser: 3.3.1 + dev: true + /regenerate-unicode-properties/10.1.0: resolution: {integrity: sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==} engines: {node: '>=4'} @@ -10051,6 +10458,21 @@ packages: lowercase-keys: r2.cnpmjs.org/lowercase-keys/2.0.0 dev: false + /rgb-regex/1.0.1: + resolution: {integrity: sha512-gDK5mkALDFER2YLqH6imYvK6g02gpNGM4ILDZ472EwWfXZnC2ZEpoB2ECXTyOVUKuk/bPJZMzwQPBYICzP+D3w==} + dev: true + + /rgba-regex/1.0.0: + resolution: {integrity: sha512-zgn5OjNQXLUTdq8m17KdaicF6w89TZs8ZU8y0AYENIU6wG8GG6LLm0yLSiPY8DmaYmHdgRW8rnApjoT0fQRfMg==} + dev: true + + /rimraf/3.0.2: + resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + hasBin: true + dependencies: + glob: 7.2.3 + dev: true + /rollup-plugin-dts/5.3.0_zptcx3kz3uwp66hzhyyt545weq: resolution: {integrity: sha512-8FXp0ZkyZj1iU5klkIJYLjIq/YZSwBoERu33QBDxm/1yw5UU4txrEtcmMkrq+ZiKu3Q4qvPCNqc3ovX6rjqzbQ==} engines: {node: '>=v14'} @@ -10085,7 +10507,7 @@ packages: engines: {node: '>=10.0.0'} hasBin: true optionalDependencies: - fsevents: r2.cnpmjs.org/fsevents/2.3.2 + fsevents: 2.3.2 /rxjs/7.8.0: resolution: {integrity: sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==} @@ -10180,7 +10602,7 @@ packages: /serve-handler/6.1.5: resolution: {integrity: sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==} dependencies: - bytes: r2.cnpmjs.org/bytes/3.0.0 + bytes: 3.0.0 content-disposition: r2.cnpmjs.org/content-disposition/0.5.2 fast-url-parser: r2.cnpmjs.org/fast-url-parser/1.1.3 mime-types: r2.cnpmjs.org/mime-types/2.1.18 @@ -10225,6 +10647,12 @@ packages: simple-concat: r2.cnpmjs.org/simple-concat/1.0.1 dev: false + /simple-swizzle/0.2.2: + resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} + dependencies: + is-arrayish: 0.3.2 + dev: true + /sitemap/7.1.1: resolution: {integrity: sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==} engines: {node: '>=12.0.0', npm: '>=5.6.0'} @@ -10257,6 +10685,15 @@ packages: webpack: 5.77.0 dev: false + /source-map/0.5.7: + resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} + engines: {node: '>=0.10.0'} + dev: false + + /source-map/0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + /source-map/0.7.4: resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} engines: {node: '>= 8'} @@ -10411,12 +10848,31 @@ packages: pirates: 4.0.5 ts-interface-checker: r2.cnpmjs.org/ts-interface-checker/0.1.13 + /supports-color/5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} + dependencies: + has-flag: 3.0.0 + + /supports-color/7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + dependencies: + has-flag: 4.0.0 + + /supports-color/8.1.1: + resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} + engines: {node: '>=10'} + dependencies: + has-flag: 4.0.0 + dev: false + /supports-hyperlinks/2.3.0: resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==} engines: {node: '>=8'} dependencies: - has-flag: r2.cnpmjs.org/has-flag/4.0.0 - supports-color: r2.cnpmjs.org/supports-color/7.2.0 + has-flag: 4.0.0 + supports-color: 7.2.0 dev: false /supports-preserve-symlinks-flag/1.0.0: @@ -10429,7 +10885,7 @@ packages: bluebird: r2.cnpmjs.org/bluebird/3.7.2 buffer: 5.7.1 eth-lib: r2.cnpmjs.org/eth-lib/0.1.29 - fs-extra: r2.cnpmjs.org/fs-extra/4.0.3 + fs-extra: 4.0.3 got: 11.8.6 mime-types: 2.1.35 mkdirp-promise: r2.cnpmjs.org/mkdirp-promise/5.0.1 @@ -10569,6 +11025,19 @@ packages: resolution: {integrity: sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==} dev: false + /tmp/0.2.1: + resolution: {integrity: sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==} + engines: {node: '>=8.17.0'} + dependencies: + rimraf: 3.0.2 + dev: true + + /to-regex-range/5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + dependencies: + is-number: 7.0.0 + /tough-cookie/4.1.2: resolution: {integrity: sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==} engines: {node: '>=6'} @@ -10838,7 +11307,7 @@ packages: dependencies: axios: 0.25.0 joi: 17.9.1 - lodash: r2.cnpmjs.org/lodash/4.17.21 + lodash: 4.17.21 minimist: 1.2.8 rxjs: 7.8.0 transitivePeerDependencies: @@ -11136,10 +11605,10 @@ packages: '@discoveryjs/json-ext': 0.5.7 acorn: 8.8.2 acorn-walk: r2.cnpmjs.org/acorn-walk/8.2.0 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 commander: r2.cnpmjs.org/commander/7.2.0 gzip-size: r2.cnpmjs.org/gzip-size/6.0.0 - lodash: r2.cnpmjs.org/lodash/4.17.21 + lodash: 4.17.21 opener: r2.cnpmjs.org/opener/1.5.2 sirv: r2.cnpmjs.org/sirv/1.0.19 ws: 7.5.9 @@ -11306,9 +11775,9 @@ packages: ajv: 8.12.0 common-tags: r2.cnpmjs.org/common-tags/1.8.2 fast-json-stable-stringify: r2.cnpmjs.org/fast-json-stable-stringify/2.1.0 - fs-extra: r2.cnpmjs.org/fs-extra/9.1.0 + fs-extra: 9.1.0 glob: 7.2.3 - lodash: r2.cnpmjs.org/lodash/4.17.21 + lodash: 4.17.21 pretty-bytes: r2.cnpmjs.org/pretty-bytes/5.6.0 rollup: 2.79.1 rollup-plugin-terser: r2.cnpmjs.org/rollup-plugin-terser/7.0.2_rollup@2.79.1 @@ -11539,6 +12008,10 @@ packages: optional: true dev: false + /xtend/4.0.2: + resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} + engines: {node: '>=0.4'} + /yaml/2.2.1: resolution: {integrity: sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==} engines: {node: '>= 14'} @@ -11586,10 +12059,10 @@ packages: debug: 4.3.4 gensync: r2.cnpmjs.org/gensync/1.0.0-beta.2 json5: 2.2.3 - lodash: r2.cnpmjs.org/lodash/4.17.21 + lodash: 4.17.21 resolve: 1.22.1 semver: r2.cnpmjs.org/semver/5.7.1 - source-map: r2.cnpmjs.org/source-map/0.5.7 + source-map: 0.5.7 transitivePeerDependencies: - supports-color dev: false @@ -11880,16 +12353,6 @@ packages: prop-types: 15.8.1 react: 18.2.0 - r2.cnpmjs.org/@emotion/is-prop-valid/0.8.8: - resolution: {integrity: sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz} - name: '@emotion/is-prop-valid' - version: 0.8.8 - requiresBuild: true - dependencies: - '@emotion/memoize': r2.cnpmjs.org/@emotion/memoize/0.7.4 - dev: false - optional: true - r2.cnpmjs.org/@emotion/memoize/0.7.4: resolution: {integrity: sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz} name: '@emotion/memoize' @@ -12297,52 +12760,6 @@ packages: defer-to-connect: r2.cnpmjs.org/defer-to-connect/2.0.1 dev: false - r2.cnpmjs.org/@tailwindcss/postcss7-compat/2.2.17: - resolution: {integrity: sha512-3h2svqQAqYHxRZ1KjsJjZOVTQ04m29LjfrLjXyZZEJuvUuJN+BCIF9GI8vhE1s0plS0mogd6E6YLg6mu4Wv/Vw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@tailwindcss/postcss7-compat/-/postcss7-compat-2.2.17.tgz} - name: '@tailwindcss/postcss7-compat' - version: 2.2.17 - engines: {node: '>=12.13.0'} - hasBin: true - dependencies: - arg: 5.0.2 - autoprefixer: r2.cnpmjs.org/autoprefixer/9.8.8 - bytes: 3.1.2 - chalk: r2.cnpmjs.org/chalk/4.1.2 - chokidar: 3.5.3 - color: 4.2.3 - cosmiconfig: 7.1.0 - detective: 5.2.1 - didyoumean: r2.cnpmjs.org/didyoumean/1.2.2 - dlv: r2.cnpmjs.org/dlv/1.1.3 - fast-glob: 3.2.12 - fs-extra: 10.1.0 - glob-parent: r2.cnpmjs.org/glob-parent/6.0.2 - html-tags: 3.3.1 - is-color-stop: r2.cnpmjs.org/is-color-stop/1.1.0 - is-glob: r2.cnpmjs.org/is-glob/4.0.3 - lodash: r2.cnpmjs.org/lodash/4.17.21 - lodash.topath: r2.cnpmjs.org/lodash.topath/4.5.2 - modern-normalize: r2.cnpmjs.org/modern-normalize/1.1.0 - node-emoji: r2.cnpmjs.org/node-emoji/1.11.0 - normalize-path: r2.cnpmjs.org/normalize-path/3.0.0 - object-hash: r2.cnpmjs.org/object-hash/2.2.0 - postcss: r2.cnpmjs.org/postcss/7.0.39 - postcss-functions: r2.cnpmjs.org/postcss-functions/3.0.0 - postcss-js: r2.cnpmjs.org/postcss-js/2.0.3 - postcss-load-config: 3.1.4_postcss@7.0.39 - postcss-nested: r2.cnpmjs.org/postcss-nested/4.2.3 - postcss-selector-parser: 6.0.11 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 - pretty-hrtime: r2.cnpmjs.org/pretty-hrtime/1.0.3 - purgecss: r2.cnpmjs.org/purgecss/4.1.3 - quick-lru: r2.cnpmjs.org/quick-lru/5.1.1 - reduce-css-calc: r2.cnpmjs.org/reduce-css-calc/2.1.8 - resolve: 1.22.1 - tmp: r2.cnpmjs.org/tmp/0.2.1 - transitivePeerDependencies: - - ts-node - dev: true - r2.cnpmjs.org/@testing-library/user-event/13.5.0: resolution: {integrity: sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@testing-library/user-event/-/user-event-13.5.0.tgz} name: '@testing-library/user-event' @@ -12745,8 +13162,8 @@ packages: name: acorn-globals version: 6.0.0 dependencies: - acorn: r2.cnpmjs.org/acorn/7.4.1 - acorn-walk: r2.cnpmjs.org/acorn-walk/7.2.0 + acorn: 7.4.1 + acorn-walk: 7.2.0 dev: false r2.cnpmjs.org/acorn-import-assertions/1.8.0_acorn@8.8.2: @@ -12769,22 +13186,6 @@ packages: dependencies: acorn: 8.8.2 - r2.cnpmjs.org/acorn-node/1.8.2: - resolution: {integrity: sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/acorn-node/-/acorn-node-1.8.2.tgz} - name: acorn-node - version: 1.8.2 - dependencies: - acorn: r2.cnpmjs.org/acorn/7.4.1 - acorn-walk: r2.cnpmjs.org/acorn-walk/7.2.0 - xtend: r2.cnpmjs.org/xtend/4.0.2 - dev: true - - r2.cnpmjs.org/acorn-walk/7.2.0: - resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz} - name: acorn-walk - version: 7.2.0 - engines: {node: '>=0.4.0'} - r2.cnpmjs.org/acorn-walk/8.2.0: resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz} name: acorn-walk @@ -12792,13 +13193,6 @@ packages: engines: {node: '>=0.4.0'} dev: false - r2.cnpmjs.org/acorn/7.4.1: - resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/acorn/-/acorn-7.4.1.tgz} - name: acorn - version: 7.4.1 - engines: {node: '>=0.4.0'} - hasBin: true - r2.cnpmjs.org/adjust-sourcemap-loader/4.0.0: resolution: {integrity: sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz} name: adjust-sourcemap-loader @@ -13298,12 +13692,6 @@ packages: name: big.js version: 5.2.2 - r2.cnpmjs.org/binary-extensions/2.2.0: - resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz} - name: binary-extensions - version: 2.2.0 - engines: {node: '>=8'} - r2.cnpmjs.org/bl/4.1.0: resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/bl/-/bl-4.1.0.tgz} name: bl @@ -13344,7 +13732,7 @@ packages: dependencies: ansi-align: r2.cnpmjs.org/ansi-align/3.0.1 camelcase: 6.3.0 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 cli-boxes: r2.cnpmjs.org/cli-boxes/2.2.1 string-width: r2.cnpmjs.org/string-width/4.2.3 type-fest: r2.cnpmjs.org/type-fest/0.20.2 @@ -13360,7 +13748,7 @@ packages: dependencies: ansi-align: r2.cnpmjs.org/ansi-align/3.0.1 camelcase: 6.3.0 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 cli-boxes: r2.cnpmjs.org/cli-boxes/3.0.0 string-width: 5.1.2 type-fest: 2.19.0 @@ -13517,13 +13905,6 @@ packages: version: 3.0.0 dev: false - r2.cnpmjs.org/bytes/3.0.0: - resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/bytes/-/bytes-3.0.0.tgz} - name: bytes - version: 3.0.0 - engines: {node: '>= 0.8'} - dev: false - r2.cnpmjs.org/cacheable-lookup/5.0.4: resolution: {integrity: sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz} name: cacheable-lookup @@ -13860,7 +14241,7 @@ packages: engines: {node: '>= 4.0'} dependencies: '@types/q': r2.cnpmjs.org/@types/q/1.5.5 - chalk: r2.cnpmjs.org/chalk/2.4.2 + chalk: 2.4.2 q: 1.5.1 dev: false @@ -14210,12 +14591,6 @@ packages: engines: {node: '>=8'} dev: false - r2.cnpmjs.org/css-color-names/0.0.4: - resolution: {integrity: sha512-zj5D7X1U2h2zsXOAM8EyUREBnnts6H+Jm+d1M2DbiQQcUtnqgQsMrdo8JW9R80YFUmIdBZeMu5wvYM7hcgWP/Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/css-color-names/-/css-color-names-0.0.4.tgz} - name: css-color-names - version: 0.0.4 - dev: true - r2.cnpmjs.org/css-loader/5.2.7: resolution: {integrity: sha512-Q7mOvpBNBG7YrVGMxRxcBJZFL75o+cH2abNASdibkj/fffYD8qWbInZrD0S9ccI6vZclF3DsHE7njGlLtaHbhg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/css-loader/-/css-loader-5.2.7.tgz} name: css-loader @@ -14260,7 +14635,7 @@ packages: engines: {node: '>=8.0.0'} dependencies: mdn-data: r2.cnpmjs.org/mdn-data/2.0.4 - source-map: r2.cnpmjs.org/source-map/0.6.1 + source-map: 0.6.1 dev: false r2.cnpmjs.org/css-tree/1.1.3: @@ -14272,12 +14647,6 @@ packages: mdn-data: r2.cnpmjs.org/mdn-data/2.0.14 source-map: r2.cnpmjs.org/source-map/0.6.1 - r2.cnpmjs.org/css-unit-converter/1.1.2: - resolution: {integrity: sha512-IiJwMC8rdZE0+xiEZHeru6YoONC4rfPMqGm2W85jMIbkFvv5nFTwJVFHam2eFrN6txmoUYFAFXiv8ICVeTO0MA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/css-unit-converter/-/css-unit-converter-1.1.2.tgz} - name: css-unit-converter - version: 1.1.2 - dev: true - r2.cnpmjs.org/css-what/3.4.2: resolution: {integrity: sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/css-what/-/css-what-3.4.2.tgz} name: css-what @@ -14898,7 +15267,7 @@ packages: esutils: r2.cnpmjs.org/esutils/2.0.3 optionator: r2.cnpmjs.org/optionator/0.8.3 optionalDependencies: - source-map: r2.cnpmjs.org/source-map/0.6.1 + source-map: 0.6.1 dev: false r2.cnpmjs.org/eslint-plugin-flowtype/8.0.3_eslint@8.37.0: @@ -14913,7 +15282,7 @@ packages: eslint: ^8.1.0 dependencies: eslint: 8.37.0 - lodash: r2.cnpmjs.org/lodash/4.17.21 + lodash: 4.17.21 string-natural-compare: r2.cnpmjs.org/string-natural-compare/3.0.1 dev: false @@ -15204,7 +15573,7 @@ packages: dependencies: '@nodelib/fs.stat': r2.cnpmjs.org/@nodelib/fs.stat/2.0.5 '@nodelib/fs.walk': r2.cnpmjs.org/@nodelib/fs.walk/1.2.8 - glob-parent: r2.cnpmjs.org/glob-parent/5.1.2 + glob-parent: 5.1.2 merge2: r2.cnpmjs.org/merge2/1.4.1 micromatch: 4.0.5 dev: true @@ -15450,16 +15819,6 @@ packages: rimraf: r2.cnpmjs.org/rimraf/2.7.1 dev: false - r2.cnpmjs.org/fs-extra/4.0.3: - resolution: {integrity: sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/fs-extra/-/fs-extra-4.0.3.tgz} - name: fs-extra - version: 4.0.3 - dependencies: - graceful-fs: 4.2.11 - jsonfile: r2.cnpmjs.org/jsonfile/4.0.0 - universalify: r2.cnpmjs.org/universalify/0.1.2 - dev: false - r2.cnpmjs.org/fs-extra/7.0.1: resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/fs-extra/-/fs-extra-7.0.1.tgz} name: fs-extra @@ -15511,15 +15870,6 @@ packages: name: fs.realpath version: 1.0.0 - r2.cnpmjs.org/fsevents/2.3.2: - resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/fsevents/-/fsevents-2.3.2.tgz} - name: fsevents - version: 2.3.2 - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - requiresBuild: true - optional: true - r2.cnpmjs.org/function-bind/1.1.1: resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/function-bind/-/function-bind-1.1.1.tgz} name: function-bind @@ -15951,12 +16301,6 @@ packages: version: 1.2.0 hasBin: true - r2.cnpmjs.org/hex-color-regex/1.1.0: - resolution: {integrity: sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz} - name: hex-color-regex - version: 1.1.0 - dev: true - r2.cnpmjs.org/hey-listen/1.0.8: resolution: {integrity: sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hey-listen/-/hey-listen-1.0.8.tgz} name: hey-listen @@ -16017,18 +16361,6 @@ packages: wbuf: r2.cnpmjs.org/wbuf/1.7.3 dev: false - r2.cnpmjs.org/hsl-regex/1.0.0: - resolution: {integrity: sha512-M5ezZw4LzXbBKMruP+BNANf0k+19hDQMgpzBIYnya//Al+fjNct9Wf3b1WedLqdEs2hKBvxq/jh+DsHJLj0F9A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz} - name: hsl-regex - version: 1.0.0 - dev: true - - r2.cnpmjs.org/hsla-regex/1.0.0: - resolution: {integrity: sha512-7Wn5GMLuHBjZCb2bTmnDOycho0p/7UVaAeqXZGbHrBCl6Yd/xDhQJAXe6Ga9AXJH2I5zY1dEdYw2u1UptnSBJA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz} - name: hsla-regex - version: 1.0.0 - dev: true - r2.cnpmjs.org/html-encoding-sniffer/2.0.1: resolution: {integrity: sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz} name: html-encoding-sniffer @@ -16186,7 +16518,7 @@ packages: version: 1.0.3 engines: {node: '>=10.19.0'} dependencies: - quick-lru: r2.cnpmjs.org/quick-lru/5.1.1 + quick-lru: 5.1.1 resolve-alpn: r2.cnpmjs.org/resolve-alpn/1.2.1 dev: false @@ -16404,12 +16736,6 @@ packages: name: is-arrayish version: 0.2.1 - r2.cnpmjs.org/is-arrayish/0.3.2: - resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz} - name: is-arrayish - version: 0.3.2 - dev: true - r2.cnpmjs.org/is-bigint/1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-bigint/-/is-bigint-1.0.4.tgz} name: is-bigint @@ -16417,14 +16743,6 @@ packages: dependencies: has-bigints: 1.0.2 - r2.cnpmjs.org/is-binary-path/2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz} - name: is-binary-path - version: 2.1.0 - engines: {node: '>=8'} - dependencies: - binary-extensions: r2.cnpmjs.org/binary-extensions/2.2.0 - r2.cnpmjs.org/is-boolean-object/1.1.2: resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz} name: is-boolean-object @@ -16459,19 +16777,6 @@ packages: ci-info: 3.8.0 dev: true - r2.cnpmjs.org/is-color-stop/1.1.0: - resolution: {integrity: sha512-H1U8Vz0cfXNujrJzEcvvwMDW9Ra+biSYA3ThdQvAnMLJkEHQXn6bWzLkxHtVYJ+Sdbx0b6finn3jZiaVe7MAHA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz} - name: is-color-stop - version: 1.1.0 - dependencies: - css-color-names: r2.cnpmjs.org/css-color-names/0.0.4 - hex-color-regex: r2.cnpmjs.org/hex-color-regex/1.1.0 - hsl-regex: r2.cnpmjs.org/hsl-regex/1.0.0 - hsla-regex: r2.cnpmjs.org/hsla-regex/1.0.0 - rgb-regex: r2.cnpmjs.org/rgb-regex/1.0.1 - rgba-regex: r2.cnpmjs.org/rgba-regex/1.0.0 - dev: true - r2.cnpmjs.org/is-date-object/1.0.5: resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-date-object/-/is-date-object-1.0.5.tgz} name: is-date-object @@ -16859,7 +17164,7 @@ packages: dependencies: istanbul-lib-coverage: r2.cnpmjs.org/istanbul-lib-coverage/3.2.0 make-dir: r2.cnpmjs.org/make-dir/3.1.0 - supports-color: r2.cnpmjs.org/supports-color/7.2.0 + supports-color: 7.2.0 dev: false r2.cnpmjs.org/istanbul-lib-source-maps/4.0.1: @@ -16870,7 +17175,7 @@ packages: dependencies: debug: 4.3.4 istanbul-lib-coverage: r2.cnpmjs.org/istanbul-lib-coverage/3.2.0 - source-map: r2.cnpmjs.org/source-map/0.6.1 + source-map: 0.6.1 transitivePeerDependencies: - supports-color dev: false @@ -17278,12 +17583,6 @@ packages: version: 4.4.0 dev: true - r2.cnpmjs.org/lodash.topath/4.5.2: - resolution: {integrity: sha512-1/W4dM+35DwvE/iEd1M9ekewOSTlpFekhw9mhAtrwjVqUr83/ilQiyAvmg4tVX7Unkcfl1KC+i9WdaT4B6aQcg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/lodash.topath/-/lodash.topath-4.5.2.tgz} - name: lodash.topath - version: 4.5.2 - dev: true - r2.cnpmjs.org/lodash.uniq/4.5.0: resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz} name: lodash.uniq @@ -17677,13 +17976,6 @@ packages: version: 4.14.0 dev: false - r2.cnpmjs.org/modern-normalize/1.1.0: - resolution: {integrity: sha512-2lMlY1Yc1+CUy0gw4H95uNN7vjbpoED7NNRSBHE25nWfLBdmMzFCsPshlzbxHz+gYMcBEUN8V4pU16prcdPSgA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/modern-normalize/-/modern-normalize-1.1.0.tgz} - name: modern-normalize - version: 1.1.0 - engines: {node: '>=6'} - dev: true - r2.cnpmjs.org/ms/2.0.0: resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ms/-/ms-2.0.0.tgz} name: ms @@ -17836,13 +18128,6 @@ packages: version: 3.2.1 dev: true - r2.cnpmjs.org/node-emoji/1.11.0: - resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/node-emoji/-/node-emoji-1.11.0.tgz} - name: node-emoji - version: 1.11.0 - dependencies: - lodash: r2.cnpmjs.org/lodash/4.17.21 - r2.cnpmjs.org/node-int64/0.4.0: resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/node-int64/-/node-int64-0.4.0.tgz} name: node-int64 @@ -17953,13 +18238,6 @@ packages: version: 4.1.1 engines: {node: '>=0.10.0'} - r2.cnpmjs.org/object-hash/2.2.0: - resolution: {integrity: sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/object-hash/-/object-hash-2.2.0.tgz} - name: object-hash - version: 2.2.0 - engines: {node: '>= 6'} - dev: true - r2.cnpmjs.org/object-is/1.1.5: resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/object-is/-/object-is-1.1.5.tgz} name: object-is @@ -18538,17 +18816,6 @@ packages: postcss: 8.4.21 dev: false - r2.cnpmjs.org/postcss-functions/3.0.0: - resolution: {integrity: sha512-N5yWXWKA+uhpLQ9ZhBRl2bIAdM6oVJYpDojuI1nF2SzXBimJcdjFwiAouBVbO5VuOF3qA6BSFWFc3wXbbj72XQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/postcss-functions/-/postcss-functions-3.0.0.tgz} - name: postcss-functions - version: 3.0.0 - dependencies: - glob: 7.2.3 - object-assign: r2.cnpmjs.org/object-assign/4.1.1 - postcss: r2.cnpmjs.org/postcss/6.0.23 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/3.3.1 - dev: true - r2.cnpmjs.org/postcss-initial/4.0.1_postcss@8.4.21: resolution: {integrity: sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz} id: r2.cnpmjs.org/postcss-initial/4.0.1 @@ -18560,15 +18827,6 @@ packages: postcss: 8.4.21 dev: false - r2.cnpmjs.org/postcss-js/2.0.3: - resolution: {integrity: sha512-zS59pAk3deu6dVHyrGqmC3oDXBdNdajk4k1RyxeVXCrcEDBUBHoIhE4QTsmhxgzXxsaqFDAkUZfmMa5f/N/79w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/postcss-js/-/postcss-js-2.0.3.tgz} - name: postcss-js - version: 2.0.3 - dependencies: - camelcase-css: r2.cnpmjs.org/camelcase-css/2.0.1 - postcss: r2.cnpmjs.org/postcss/7.0.39 - dev: true - r2.cnpmjs.org/postcss-loader/6.2.1_63u32u24ld4e25lkzmndog2vrm: resolution: {integrity: sha512-WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/postcss-loader/-/postcss-loader-6.2.1.tgz} id: r2.cnpmjs.org/postcss-loader/6.2.1 @@ -18647,15 +18905,6 @@ packages: icss-utils: r2.cnpmjs.org/icss-utils/5.1.0_postcss@8.4.21 postcss: 8.4.21 - r2.cnpmjs.org/postcss-nested/4.2.3: - resolution: {integrity: sha512-rOv0W1HquRCamWy2kFl3QazJMMe1ku6rCFoAAH+9AcxdbpDeBr6k968MLWuLjvjMcGEip01ak09hKOEgpK9hvw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/postcss-nested/-/postcss-nested-4.2.3.tgz} - name: postcss-nested - version: 4.2.3 - dependencies: - postcss: r2.cnpmjs.org/postcss/7.0.39 - postcss-selector-parser: 6.0.11 - dev: true - r2.cnpmjs.org/postcss-normalize/10.0.1_jrpp4geoaqu5dz2gragkckznb4: resolution: {integrity: sha512-+5w18/rDev5mqERcG3W5GZNMJa1eoYYNGo8gB7tEwaos0ajk3ZXAI4mHGcNT47NE+ZnZD1pEpUOFLvltIwmeJA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/postcss-normalize/-/postcss-normalize-10.0.1.tgz} id: r2.cnpmjs.org/postcss-normalize/10.0.1 @@ -18709,28 +18958,11 @@ packages: thenby: r2.cnpmjs.org/thenby/1.3.4 dev: true - r2.cnpmjs.org/postcss-value-parser/3.3.1: - resolution: {integrity: sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz} - name: postcss-value-parser - version: 3.3.1 - dev: true - r2.cnpmjs.org/postcss-value-parser/4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz} name: postcss-value-parser version: 4.2.0 - r2.cnpmjs.org/postcss/6.0.23: - resolution: {integrity: sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/postcss/-/postcss-6.0.23.tgz} - name: postcss - version: 6.0.23 - engines: {node: '>=4.0.0'} - dependencies: - chalk: r2.cnpmjs.org/chalk/2.4.2 - source-map: r2.cnpmjs.org/source-map/0.6.1 - supports-color: r2.cnpmjs.org/supports-color/5.5.0 - dev: true - r2.cnpmjs.org/postcss/7.0.39: resolution: {integrity: sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/postcss/-/postcss-7.0.39.tgz} name: postcss @@ -18843,7 +19075,7 @@ packages: name: property-information version: 5.6.0 dependencies: - xtend: r2.cnpmjs.org/xtend/4.0.2 + xtend: 4.0.2 dev: false r2.cnpmjs.org/proxy-addr/2.0.7: @@ -18915,18 +19147,6 @@ packages: version: 1.3.0 dev: false - r2.cnpmjs.org/purgecss/4.1.3: - resolution: {integrity: sha512-99cKy4s+VZoXnPxaoM23e5ABcP851nC2y2GROkkjS8eJaJtlciGavd7iYAw2V84WeBqggZ12l8ef44G99HmTaw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/purgecss/-/purgecss-4.1.3.tgz} - name: purgecss - version: 4.1.3 - hasBin: true - dependencies: - commander: r2.cnpmjs.org/commander/8.3.0 - glob: 7.2.3 - postcss: 8.4.21 - postcss-selector-parser: 6.0.11 - dev: true - r2.cnpmjs.org/query-string/5.1.1: resolution: {integrity: sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/query-string/-/query-string-5.1.1.tgz} name: query-string @@ -18934,7 +19154,7 @@ packages: engines: {node: '>=0.10.0'} dependencies: decode-uri-component: 0.2.2 - object-assign: r2.cnpmjs.org/object-assign/4.1.1 + object-assign: 4.1.1 strict-uri-encode: r2.cnpmjs.org/strict-uri-encode/1.1.0 dev: false @@ -19120,7 +19340,7 @@ packages: webpack: '>=4.41.1 || 5.x' dependencies: '@babel/runtime': 7.21.0 - react-loadable: r2.cnpmjs.org/@docusaurus/react-loadable/5.5.2_react@18.2.0 + react-loadable: /@docusaurus/react-loadable/5.5.2_react@18.2.0 webpack: 5.77.0 dev: false @@ -19198,14 +19418,6 @@ packages: strip-bom: r2.cnpmjs.org/strip-bom/3.0.0 dev: true - r2.cnpmjs.org/readdirp/3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/readdirp/-/readdirp-3.6.0.tgz} - name: readdirp - version: 3.6.0 - engines: {node: '>=8.10.0'} - dependencies: - picomatch: 2.3.1 - r2.cnpmjs.org/reading-time/1.5.0: resolution: {integrity: sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/reading-time/-/reading-time-1.5.0.tgz} name: reading-time @@ -19230,15 +19442,6 @@ packages: indent-string: r2.cnpmjs.org/indent-string/4.0.0 strip-indent: r2.cnpmjs.org/strip-indent/3.0.0 - r2.cnpmjs.org/reduce-css-calc/2.1.8: - resolution: {integrity: sha512-8liAVezDmUcH+tdzoEGrhfbGcP7nOV4NkGE3a74+qqvE7nt9i4sKLGBuZNOnpI4WiGksiNPklZxva80061QiPg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/reduce-css-calc/-/reduce-css-calc-2.1.8.tgz} - name: reduce-css-calc - version: 2.1.8 - dependencies: - css-unit-converter: r2.cnpmjs.org/css-unit-converter/1.1.2 - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/3.3.1 - dev: true - r2.cnpmjs.org/regenerate/1.4.2: resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/regenerate/-/regenerate-1.4.2.tgz} name: regenerate @@ -19271,7 +19474,7 @@ packages: version: 2.2.0 dependencies: emoticon: r2.cnpmjs.org/emoticon/3.2.0 - node-emoji: r2.cnpmjs.org/node-emoji/1.11.0 + node-emoji: 1.11.0 unist-util-visit: r2.cnpmjs.org/unist-util-visit/2.0.3 dev: false @@ -19463,7 +19666,7 @@ packages: adjust-sourcemap-loader: r2.cnpmjs.org/adjust-sourcemap-loader/4.0.0 convert-source-map: 1.9.0 loader-utils: 2.0.4 - postcss: r2.cnpmjs.org/postcss/7.0.39 + postcss: 7.0.39 source-map: r2.cnpmjs.org/source-map/0.6.1 dev: false @@ -19504,18 +19707,6 @@ packages: version: 1.3.0 dev: true - r2.cnpmjs.org/rgb-regex/1.0.1: - resolution: {integrity: sha512-gDK5mkALDFER2YLqH6imYvK6g02gpNGM4ILDZ472EwWfXZnC2ZEpoB2ECXTyOVUKuk/bPJZMzwQPBYICzP+D3w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz} - name: rgb-regex - version: 1.0.1 - dev: true - - r2.cnpmjs.org/rgba-regex/1.0.0: - resolution: {integrity: sha512-zgn5OjNQXLUTdq8m17KdaicF6w89TZs8ZU8y0AYENIU6wG8GG6LLm0yLSiPY8DmaYmHdgRW8rnApjoT0fQRfMg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz} - name: rgba-regex - version: 1.0.0 - dev: true - r2.cnpmjs.org/rimraf/2.7.1: resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/rimraf/-/rimraf-2.7.1.tgz} name: rimraf @@ -19971,14 +20162,6 @@ packages: version: 1.0.1 dev: false - r2.cnpmjs.org/simple-swizzle/0.2.2: - resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz} - name: simple-swizzle - version: 0.2.2 - dependencies: - is-arrayish: r2.cnpmjs.org/is-arrayish/0.3.2 - dev: true - r2.cnpmjs.org/sirv/1.0.19: resolution: {integrity: sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/sirv/-/sirv-1.0.19.tgz} name: sirv @@ -20099,13 +20282,6 @@ packages: buffer-from: r2.cnpmjs.org/buffer-from/1.1.2 source-map: r2.cnpmjs.org/source-map/0.6.1 - r2.cnpmjs.org/source-map/0.5.7: - resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/source-map/-/source-map-0.5.7.tgz} - name: source-map - version: 0.5.7 - engines: {node: '>=0.10.0'} - dev: false - r2.cnpmjs.org/source-map/0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/source-map/-/source-map-0.6.1.tgz} name: source-map @@ -20527,7 +20703,7 @@ packages: deprecated: This SVGO version is no longer supported. Upgrade to v2.x.x. hasBin: true dependencies: - chalk: r2.cnpmjs.org/chalk/2.4.2 + chalk: 2.4.2 coa: r2.cnpmjs.org/coa/2.0.2 css-select: r2.cnpmjs.org/css-select/2.1.0 css-select-base-adapter: r2.cnpmjs.org/css-select-base-adapter/0.1.1 @@ -21162,7 +21338,7 @@ packages: engines: {node: '>=10'} dependencies: boxen: r2.cnpmjs.org/boxen/5.1.2 - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 configstore: r2.cnpmjs.org/configstore/5.0.1 has-yarn: r2.cnpmjs.org/has-yarn/2.1.0 import-lazy: r2.cnpmjs.org/import-lazy/2.1.0 @@ -21475,7 +21651,7 @@ packages: peerDependencies: webpack: 3 || 4 || 5 dependencies: - chalk: r2.cnpmjs.org/chalk/4.1.2 + chalk: 4.1.2 consola: r2.cnpmjs.org/consola/2.15.3 pretty-time: r2.cnpmjs.org/pretty-time/1.1.0 std-env: 3.3.2 @@ -21561,7 +21737,7 @@ packages: version: 8.7.0 engines: {node: '>=10'} dependencies: - lodash: r2.cnpmjs.org/lodash/4.17.21 + lodash: 4.17.21 tr46: r2.cnpmjs.org/tr46/2.1.0 webidl-conversions: r2.cnpmjs.org/webidl-conversions/6.1.0 dev: false @@ -21708,7 +21884,7 @@ packages: version: 1.1.0 dependencies: buffer-to-arraybuffer: r2.cnpmjs.org/buffer-to-arraybuffer/0.0.5 - object-assign: r2.cnpmjs.org/object-assign/4.1.1 + object-assign: 4.1.1 query-string: r2.cnpmjs.org/query-string/5.1.1 simple-get: 2.8.2 timed-out: r2.cnpmjs.org/timed-out/4.0.1 @@ -21760,6 +21936,7 @@ packages: name: xtend version: 4.0.2 engines: {node: '>=0.4'} + dev: false r2.cnpmjs.org/y18n/4.0.3: resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/y18n/-/y18n-4.0.3.tgz} From 6a022a193817b6ecb9e8592b35067d5dab53b28b Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sun, 16 Apr 2023 01:39:55 +0800 Subject: [PATCH 04/16] feat: add formatcode feature --- packages/core/src/editor/mountFunctions.ts | 16 ++++++++++ packages/core/src/editor/utils/format-code.ts | 31 +++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 packages/core/src/editor/utils/format-code.ts diff --git a/packages/core/src/editor/mountFunctions.ts b/packages/core/src/editor/mountFunctions.ts index c627747..8bd1cf5 100644 --- a/packages/core/src/editor/mountFunctions.ts +++ b/packages/core/src/editor/mountFunctions.ts @@ -19,6 +19,7 @@ import { solidityTokensProvider, } from './syntaxes/solidity'; import {findModel} from './utils/model'; +import solidityFormatter from "./utils/format-code"; function initTheme(monaco: Monaco) { monaco.editor.defineTheme('myCustomTheme', { @@ -108,6 +109,21 @@ function registerCommandsAndActions(monaco: Monaco, editor: BaseMonacoEditor, di editor.addAction(zoomOutAction); editor.addAction(zoominAction); + const formatAction = { + id: 'solidity-format', + label: 'Format Solidity Code', + keybindings: [monaco.KeyMod.CtrlCmd | monaco.KeyCode.KeyF], // 绑定 Ctrl+F 或 Cmd+F 键作为快捷键 + contextMenuGroupId: 'navigation', + contextMenuOrder: 1.5, + run: function (editor: any) { + const unformattedCode = editor.getValue(); + const formattedCode = solidityFormatter(unformattedCode); + editor.setValue(formattedCode); + }, + }; + + editor.addAction(formatAction); + // @ts-ignore const editorService = editor._codeEditorService; const openEditorBase = editorService.openCodeEditor.bind(editorService); diff --git a/packages/core/src/editor/utils/format-code.ts b/packages/core/src/editor/utils/format-code.ts new file mode 100644 index 0000000..e1fc3f9 --- /dev/null +++ b/packages/core/src/editor/utils/format-code.ts @@ -0,0 +1,31 @@ +function solidityFormatter(code: string) { + const lines = code.split('\n'); + let indentLevel = 0; + const formattedLines = lines.map(line => { + const trimmedLine = line.trim(); + if (trimmedLine.startsWith('}')) { + indentLevel -= 1; + } + + const indentedLine = ' '.repeat(indentLevel * 4) + trimmedLine; + + if ( + trimmedLine.startsWith('{') || + trimmedLine.endsWith('{') || + trimmedLine.startsWith('contract') || + trimmedLine.startsWith('library') || + trimmedLine.startsWith('interface') || + trimmedLine.startsWith('function') || + trimmedLine.startsWith('struct') || + trimmedLine.startsWith('event') + ) { + indentLevel += 1; + } + + return indentedLine; + }); + + return formattedLines.join('\n'); +} + +export default solidityFormatter; From 791d20babc6dd95e150d987411803316226a96e1 Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sun, 16 Apr 2023 01:40:49 +0800 Subject: [PATCH 05/16] feat: add some control with console, deploy, filenav --- packages/core/src/editor/index.tsx | 115 ++++++++++++++++++++--------- 1 file changed, 82 insertions(+), 33 deletions(-) diff --git a/packages/core/src/editor/index.tsx b/packages/core/src/editor/index.tsx index 42d7f06..bcec173 100644 --- a/packages/core/src/editor/index.tsx +++ b/packages/core/src/editor/index.tsx @@ -1,6 +1,7 @@ import React, {Dispatch, SetStateAction, useState} from 'react'; import {Allotment} from "allotment"; import {CommandLineIcon} from "@heroicons/react/24/outline"; +import merge from "lodash/merge"; import {ModelInfoType} from '../types/monaco'; import FileNavBar from "../components/FileNavBar"; @@ -18,6 +19,8 @@ export type TConsoleProps = { defaultVisible?: boolean; defaultHeight?: string; minHeight?: number; + triggerControl?: boolean; + open?: boolean; } export type TDeployProps = { @@ -25,26 +28,63 @@ export type TDeployProps = { defaultWidth?: string; minWidth?: number; maxWidth?: number; + open?: boolean; +} + +export type TFileNavProps = { + open?: boolean; } export type TEditorProps = { id: string; modelInfos: ModelInfoType[]; height: string; + fileNav?: TFileNavProps; rounded?: string; console?: TConsoleProps; deploy?: TDeployProps; - onSuccess?: Dispatch>; - onFailure?: () => void; - onCompile?: () => void; - submissionCount?: number; + // onSuccess?: Dispatch>; + // onFailure?: () => void; + // onCompile?: () => void; + // submissionCount?: number; children?: any; }; +const DefaultConsoleProps = { + open: true, + triggerControl: true, + defaultVisible: true, + minHeight: 78, + defaultHeight: "30%", +} + +const DefaultDeployProps = { + open: true, + defaultVisible: true, + maxWidth: 240, + minWidth: 140, + defaultWidth: "200px" +} + +const DefaultFileNavProps = { + open: true +} + const Main = (props: TEditorProps) => { - const {height, console = {}, deploy = {}, rounded = '12px', modelInfos} = props; - const [consoleVisible, setConsoleVisible] = useState(console.defaultVisible === undefined ? true : console.defaultVisible); - const [deployVisible, setDeployVisible] = useState(deploy.defaultVisible === undefined ? true : deploy.defaultVisible); + const { + height, + console = {}, + deploy = {}, + fileNav = {}, + rounded = '12px', + modelInfos + } = props; + const consoleProps = merge(DefaultConsoleProps, console); + const deployProps = merge(DefaultDeployProps, deploy); + const fileNavProps = merge(DefaultFileNavProps, fileNav); + + const [consoleVisible, setConsoleVisible] = useState(consoleProps.defaultVisible); + const [deployVisible, setDeployVisible] = useState(deployProps.defaultVisible); const handleDeployContainerVisible = (index: number, value: boolean) => { if (index === 1) { @@ -75,38 +115,47 @@ const Main = (props: TEditorProps) => { onVisibleChange={handleConsoleVisible} > - {setDeployVisible(old => !old); setConsoleVisible(old => !old)}}/> + {fileNavProps.open && ( + { + setDeployVisible(old => !old); + setConsoleVisible(old => !old) + }}/> + )} - - setConsoleVisible(false)} /> - - {!consoleVisible && - -
setConsoleVisible(true)} + {consoleProps.open && ( + - - Console -
-
- } + setConsoleVisible(false)}/> + + )} + {!consoleVisible && consoleProps.open && consoleProps.triggerControl && ( + +
setConsoleVisible(true)} + > + + Console +
+
+ )} - - - + {deployProps.open && ( + + + + )} ) From 6bb136044516414fd2a1ec86a4a43c782564871c Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sun, 16 Apr 2023 01:42:04 +0800 Subject: [PATCH 06/16] refactor: refactor set filename and add format code --- packages/docusaurus-plugin/src/index.ts | 1 - .../src/theme/SoliveCodeBlock/index.tsx | 78 ++++++++++++++----- .../src/theme/SoliveCodeBlock/resolveMeta.ts | 43 ---------- packages/docusaurus-plugin/src/theme/types.ts | 1 + .../src/theme/utils/format-code.ts | 31 ++++++++ .../src/theme/utils/match-props.ts | 50 ++++++++++++ .../src/theme/utils/resolve-meta.ts | 39 ++++++++++ .../src/theme/utils/single-filename.ts | 7 ++ .../transform-model.ts} | 10 +-- 9 files changed, 191 insertions(+), 69 deletions(-) delete mode 100644 packages/docusaurus-plugin/src/theme/SoliveCodeBlock/resolveMeta.ts create mode 100644 packages/docusaurus-plugin/src/theme/utils/format-code.ts create mode 100644 packages/docusaurus-plugin/src/theme/utils/match-props.ts create mode 100644 packages/docusaurus-plugin/src/theme/utils/resolve-meta.ts create mode 100644 packages/docusaurus-plugin/src/theme/utils/single-filename.ts rename packages/docusaurus-plugin/src/theme/{SoliveCodeBlock/transformModel.ts => utils/transform-model.ts} (53%) diff --git a/packages/docusaurus-plugin/src/index.ts b/packages/docusaurus-plugin/src/index.ts index b26917d..bbb2880 100644 --- a/packages/docusaurus-plugin/src/index.ts +++ b/packages/docusaurus-plugin/src/index.ts @@ -26,7 +26,6 @@ export default () => ({ "stream": require.resolve("stream-browserify"), "path": require.resolve("path-browserify"), "events": require.resolve("events/"), - "process": require.resolve("process/browser"), "os": require.resolve("os-browserify/browser"), "buffer": require.resolve("buffer/"), "url": require.resolve("url/"), diff --git a/packages/docusaurus-plugin/src/theme/SoliveCodeBlock/index.tsx b/packages/docusaurus-plugin/src/theme/SoliveCodeBlock/index.tsx index 51bd6f7..004a724 100644 --- a/packages/docusaurus-plugin/src/theme/SoliveCodeBlock/index.tsx +++ b/packages/docusaurus-plugin/src/theme/SoliveCodeBlock/index.tsx @@ -2,35 +2,73 @@ import Editor from "solive-core"; import React, {useMemo} from "react"; import {v4 as uuidv4} from 'uuid'; -import type {SoliveCodeBlockProps} from '../types' - import 'solive-core/dist/index.css'; -import resolveMeta from "./resolveMeta"; -import transformModel from "./transformModel"; + +import {SoliveCodeBlockProps} from '../types' +import {matchProps} from "../utils/match-props"; +import resolveMeta from "../utils/resolve-meta"; +import transformModel from "../utils/transform-model"; + +const PropsInfo = { + width: { + type: 'string', + default: '90%' + }, + height: { + type: 'string', + default: '500px' + }, + fileNavOpen: { + type: 'boolean', + default: true + }, + consoleOpen: { + type: 'boolean', + default: true + }, + deployOpen: { + type: 'boolean', + default: true + }, + consoleTriggerControl: { + type: 'boolean', + default: false + }, + consoleDefaultVisible: { + type: 'boolean', + default: false + }, + deployDefaultVisible: { + type: 'boolean', + default: false + } +} const SoliveCodeBlock = (props: SoliveCodeBlockProps) => { - const {metastring, ...others} = props; + const {metastring} = props; + const allProps = matchProps(metastring?.split("solive")[1] || "", PropsInfo); + const id = useMemo(() => uuidv4(), []); const modelInfos = useMemo(() => transformModel(resolveMeta(props.children)), [props.children]); - const heightMatch = metastring?.match(/height="(?[^"]*)"/); - const widthMatch = metastring?.match(/width="(?[^"]*)"/); - const consoleDefaultVisibleMatch = metastring?.match(/consoleDefaultVisible="(?[^"]*)"/); - const deployDefaultVisibleMatch = metastring?.match(/deployDefaultVisible="(?[^"]*)"/); - - const height = heightMatch?.groups?.height || '500px'; - const width = widthMatch?.groups?.width || '90%'; - const consoleDefaultVisible = consoleDefaultVisibleMatch?.groups?.consoleDefaultVisible || "true"; - const deployDefaultVisible = deployDefaultVisibleMatch?.groups?.deployDefaultVisible || 'true'; - - console.log(height, width, consoleDefaultVisible, deployDefaultVisible) + console.log(modelInfos); return ( -
+
diff --git a/packages/docusaurus-plugin/src/theme/SoliveCodeBlock/resolveMeta.ts b/packages/docusaurus-plugin/src/theme/SoliveCodeBlock/resolveMeta.ts deleted file mode 100644 index 194b3e4..0000000 --- a/packages/docusaurus-plugin/src/theme/SoliveCodeBlock/resolveMeta.ts +++ /dev/null @@ -1,43 +0,0 @@ - -export type TMeta = { - meta: {[key: string]: string}; - content: string; -} - -const filterWhitespaceChars = (str: string) => { - return str.replace(/[ \t]+/g, ' ').replace(/\n+/g, '\n').trim(); -} - -const resolveKeyPair = (str: string) => { - const regex = /(.+?):\s*(.*)/g; - let match; - const kvPairs: {[key: string]: string} = {}; - while ((match = regex.exec(str)) !== null) { - const [_, key, value] = match; - kvPairs[key] = value; - } - return kvPairs; -} - -const resolveMeta = (content: string): TMeta[] => { - const regex = /---\n([\s\S]*?)\n---/; - let matches = content.split(regex); - matches = matches.filter(item => filterWhitespaceChars(item).length > 0); - - const result = []; - - for (let i = 0; i < matches.length; i += 2) { - const match = matches[i]; - const content = matches[i + 1]; - - const keyPairs = resolveKeyPair(match); - result.push({ - meta: keyPairs, - content, - }) - } - - return result; -} - -export default resolveMeta; diff --git a/packages/docusaurus-plugin/src/theme/types.ts b/packages/docusaurus-plugin/src/theme/types.ts index 69d8791..8f27037 100644 --- a/packages/docusaurus-plugin/src/theme/types.ts +++ b/packages/docusaurus-plugin/src/theme/types.ts @@ -6,6 +6,7 @@ export interface SoliveCodeBlockProps extends Props { width?: string; deployDefaultVisible?: string; consoleDefaultVisible?: string; + fileNavOpen?: string; } export type DispatchTypes = 'reset' | 'loading' | 'loaded' | 'error' diff --git a/packages/docusaurus-plugin/src/theme/utils/format-code.ts b/packages/docusaurus-plugin/src/theme/utils/format-code.ts new file mode 100644 index 0000000..e1fc3f9 --- /dev/null +++ b/packages/docusaurus-plugin/src/theme/utils/format-code.ts @@ -0,0 +1,31 @@ +function solidityFormatter(code: string) { + const lines = code.split('\n'); + let indentLevel = 0; + const formattedLines = lines.map(line => { + const trimmedLine = line.trim(); + if (trimmedLine.startsWith('}')) { + indentLevel -= 1; + } + + const indentedLine = ' '.repeat(indentLevel * 4) + trimmedLine; + + if ( + trimmedLine.startsWith('{') || + trimmedLine.endsWith('{') || + trimmedLine.startsWith('contract') || + trimmedLine.startsWith('library') || + trimmedLine.startsWith('interface') || + trimmedLine.startsWith('function') || + trimmedLine.startsWith('struct') || + trimmedLine.startsWith('event') + ) { + indentLevel += 1; + } + + return indentedLine; + }); + + return formattedLines.join('\n'); +} + +export default solidityFormatter; diff --git a/packages/docusaurus-plugin/src/theme/utils/match-props.ts b/packages/docusaurus-plugin/src/theme/utils/match-props.ts new file mode 100644 index 0000000..7f0b4ec --- /dev/null +++ b/packages/docusaurus-plugin/src/theme/utils/match-props.ts @@ -0,0 +1,50 @@ +type TPropType = 'string' | 'boolean' | 'number' | 'object' | 'array' | any; + +type TPropsInfo = { + [key: string]: { + type: TPropType; + default: any; + } +} + +type TResultProps = { + [key: string]: any; +} + +export const coerceValue = (value: string, type: TPropType) => { + switch (type) { + case 'string': + return value; + case 'boolean': + return value === 'true'; + case 'number': + return Number(value); + case 'object': + return JSON.parse(value); + case 'array': + return JSON.parse(value); + default: + return value; + } +} + +export const matchProps = (metaString: string, propsInfo: TPropsInfo): TResultProps => { + const dynamicRex = /(?[^=]+)="(?[^"]*)"/g; + const props: any = {}; + let match; + while ((match = dynamicRex.exec(metaString)) !== null) { + const { key, value } = match.groups as any; + const keyName = key.trim(); + if (propsInfo[keyName]) { + props[keyName] = coerceValue(value, propsInfo[keyName].type); + } + } + + Object.keys(propsInfo).forEach((key) => { + if (props[key] === undefined) { + props[key] = propsInfo[key].default; + } + }) + + return props; +} diff --git a/packages/docusaurus-plugin/src/theme/utils/resolve-meta.ts b/packages/docusaurus-plugin/src/theme/utils/resolve-meta.ts new file mode 100644 index 0000000..9833ee8 --- /dev/null +++ b/packages/docusaurus-plugin/src/theme/utils/resolve-meta.ts @@ -0,0 +1,39 @@ +import singleFilename from "./single-filename"; + +export type TMeta = { + filename?: string; + content: string; +} + +function parseContent(content: string) { + const regex = /(?:^|\s)\/\*\*?\s*\*[\s@]*filename\s+([\w.]+)\s*\*?\//gm; + const filenames = []; + let match; + + while ((match = regex.exec(content)) !== null) { + filenames.push(match[1]); + } + + const contracts = content.split(regex).filter((_, index) => index % 2 === 0).slice(1); + + const result = filenames.map((filename, index) => { + return { + filename: filename, + content: contracts[index].trim(), + }; + }); + + return result; +} + +const resolveMeta = (content: string): TMeta[] => { + const files = parseContent(content).filter((file) => file.filename); + console.log(files); + if (files.length === 0) { + return [{ filename: singleFilename(), content }]; + } + + return files; +} + +export default resolveMeta; diff --git a/packages/docusaurus-plugin/src/theme/utils/single-filename.ts b/packages/docusaurus-plugin/src/theme/utils/single-filename.ts new file mode 100644 index 0000000..5d2a1d0 --- /dev/null +++ b/packages/docusaurus-plugin/src/theme/utils/single-filename.ts @@ -0,0 +1,7 @@ +let id = 1; + +const singleFilename = () => { + return `solive-${id++}.sol`; +} + +export default singleFilename; diff --git a/packages/docusaurus-plugin/src/theme/SoliveCodeBlock/transformModel.ts b/packages/docusaurus-plugin/src/theme/utils/transform-model.ts similarity index 53% rename from packages/docusaurus-plugin/src/theme/SoliveCodeBlock/transformModel.ts rename to packages/docusaurus-plugin/src/theme/utils/transform-model.ts index d77c690..cbf6739 100644 --- a/packages/docusaurus-plugin/src/theme/SoliveCodeBlock/transformModel.ts +++ b/packages/docusaurus-plugin/src/theme/utils/transform-model.ts @@ -1,14 +1,14 @@ import {SupportLanguage} from "solive-core"; import {ModelInfoType} from "solive-core/src"; -import {TMeta} from "./resolveMeta"; - +import {TMeta} from "./resolve-meta"; +import solidityFormatter from "./format-code"; const transformModel = (metas: TMeta[]) => { return metas.map(meta => new ModelInfoType({ - filename: meta.meta.filename, - value: meta.content, - language: (meta.meta.language as SupportLanguage) || SupportLanguage.Solidity, + filename: meta.filename, + value: solidityFormatter(meta.content), + language: SupportLanguage.Solidity, })) } From 10a072909f7c8f7d2826d20dca111b93f1b819c9 Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sun, 16 Apr 2023 01:42:20 +0800 Subject: [PATCH 07/16] feat: update doc md --- .../doc/docs/expansion/docusaurus-plugins.mdx | 136 ++++++++++ apps/doc/docs/expansion/index.mdx | 5 + apps/doc/docs/get-started.mdx | 240 ++++++++++++------ apps/doc/docs/introduction.mdx | 17 +- apps/doc/docs/qa.mdx | 5 + 5 files changed, 327 insertions(+), 76 deletions(-) create mode 100644 apps/doc/docs/expansion/docusaurus-plugins.mdx create mode 100644 apps/doc/docs/expansion/index.mdx create mode 100644 apps/doc/docs/qa.mdx diff --git a/apps/doc/docs/expansion/docusaurus-plugins.mdx b/apps/doc/docs/expansion/docusaurus-plugins.mdx new file mode 100644 index 0000000..402a6a5 --- /dev/null +++ b/apps/doc/docs/expansion/docusaurus-plugins.mdx @@ -0,0 +1,136 @@ +--- +title: Docusaurus 插件 +hide_title: true +--- + +## Docusaurus 插件 + +> 你可以使用 `solive-docusaurus-theme-code` 插件快速集成一个轻量级Solidity Editor嵌入你的文档. + +### 安装 + +1. 首先我们需要安装 `solive-docusaurus-theme-code` 插件: +```bash npm2yarn +npm install --save solive-docusaurus-theme-code +``` + +2. 其次你需要在你的 `docusaurus.config.js` 中配置 `solive` 插件. + +```js {3} +module.exports = { + // ... + themes: ['solive-docusaurus-theme-code'], + // ... +}; +``` + +### 快速使用 + +1. 你需要注意在代码块标记solive,和配置solive的属性: +```md + ```solidity solive height=300px + // your code + ```\ +``` + +2. 你可以在代码块中配置solive相关属性 `height`(具体参考[属性表](./introduction.mdx)): +```md + ```solidity solive height=300px + // your code + ```\ +``` + +3. 配置代码块文件名(可多文件): +```md + ```solidity solive height=300px + /** + * @filename Storage.sol + */ + + // your code + + /** + * @filename Storage2.sol + */ + + // your code + ```\ +``` + +3. 完整的代码块示例: +````md +```solidity solive height=300px +/** + * @filename Storage.sol + */ + + +// SPDX-License-Identifier: GPL-3.0 + +pragma solidity >=0.7.0 <0.9.0; + +/** + * @title Storage + * @dev Store & retrieve value in a variable + * @custom:dev-run-script ./scripts/deploy_with_ethers.ts + */ +contract Storage { + + uint256 number; + + /** + * @dev Store value in variable + * @param num value to store + */ + function store(uint256 num) public { + number = num; + } + + /** + * @dev Return value + * @return value of 'number' + */ + function retrieve() public view returns (uint256){ + return number; + } +} +```\ +```` + +### 展示结果: + +```solidity solive height=300px + /** + * @filename Storage.sol + */ + + // SPDX-License-Identifier: GPL-3.0 + + pragma solidity >=0.7.0 <0.9.0; + + /** + * @title Storage + * @dev Store & retrieve value in a variable + * @custom:dev-run-script ./scripts/deploy_with_ethers.ts + */ + contract Storage { + + uint256 number; + + /** + * @dev Store value in variable + * @param num value to store + */ + function store(uint256 num) public { + number = num; + } + + /** + * @dev Return value + * @return value of 'number' + */ + function retrieve() public view returns (uint256){ + return number; + } + } +``` diff --git a/apps/doc/docs/expansion/index.mdx b/apps/doc/docs/expansion/index.mdx new file mode 100644 index 0000000..10571b6 --- /dev/null +++ b/apps/doc/docs/expansion/index.mdx @@ -0,0 +1,5 @@ +--- +title: 扩展 +sidebar_position: 3 +hide_title: true +--- diff --git a/apps/doc/docs/get-started.mdx b/apps/doc/docs/get-started.mdx index e196d57..a47d28e 100644 --- a/apps/doc/docs/get-started.mdx +++ b/apps/doc/docs/get-started.mdx @@ -1,100 +1,192 @@ --- -title: Get Started +title: 开始 +sidebar_position: 1 hide_title: true --- -# Get Started +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; -You can create a Solidity interactive code editor with the `solive-docusaurus-theme-code` plugin. First, add the plugin to your package. +## 开始 -```bash npm2yarn -npm install --save solive-docusaurus-theme-code +### 安装 + + + + +```sh +npm install solive ``` -You will also need to add the plugin to your `docusaurus.config.js`. + + -```js {3} -module.exports = { - // ... - themes: ['solive-docusaurus-theme-code'], - // ... -}; +```sh +yarn add solive ``` -To use the plugin, create a code block with `solive` attached to the language meta string. + + -````md -```solidity solive height=300px ---- -filename: Storage.sol ---- +```sh +pnpm install solive +``` -// SPDX-License-Identifier: GPL-3.0 + + -pragma solidity >=0.7.0 <0.9.0; +### 使用 -/** - * @title Storage - * @dev Store & retrieve value in a variable - * @custom:dev-run-script ./scripts/deploy_with_ethers.ts - */ -contract Storage { - - uint256 number; - - /** - * @dev Store value in variable - * @param num value to store - */ - function store(uint256 num) public { - number = num; - } +#### 1. 配置webpack + + + - /** - * @dev Return value - * @return value of 'number' - */ - function retrieve() public view returns (uint256){ - return number; +```js +// 使用craco配置: +const webpack = require("webpack"); + +module.exports = { + // ... + webpack: { + configure: (webpackConfig, { env, paths }) => { + // eslint-disable-next-line no-param-reassign + webpackConfig.resolve.fallback = { + "http": require.resolve("stream-http"), + "https": require.resolve("https-browserify"), + "zlib": require.resolve("browserify-zlib"), + "stream": require.resolve("stream-browserify"), + "events": require.resolve("events/"), + "crypto": require.resolve("crypto-browserify"), + "assert": require.resolve("assert/"), + "buffer": require.resolve("buffer/"), + "util": require.resolve("util/"), + "path": require.resolve("path-browserify"), + "tty": require.resolve("tty-browserify"), + "os": require.resolve("os-browserify/browser"), + "punycode": require.resolve("punycode/"), + "fs": false, + "url": require.resolve("url/"), + "net": require.resolve("net-browserify"), + "child_process": false, + async_hooks: false, + rawBody: false, + }; + + webpackConfig.plugins.push( + new webpack.ProvidePlugin({ + Buffer: ["buffer", "Buffer"] + }) + ); + return webpackConfig; } + } +}; + +``` + + + + +```js +// next.config.js + +/** @type {import('next').NextConfig} */ +const nextConfig = { + // ... + webpack: (webpackConfig, { buildId, dev, isServer, defaultLoaders, webpack }) => { + webpackConfig.resolve.fallback = { + "http": require.resolve("stream-http"), + "https": require.resolve("https-browserify"), + "zlib": require.resolve("browserify-zlib"), + "stream": require.resolve("stream-browserify"), + "events": require.resolve("events/"), + "crypto": require.resolve("crypto-browserify"), + "assert": require.resolve("assert/"), + "buffer": require.resolve("buffer/"), + "util": require.resolve("util/"), + "path": require.resolve("path-browserify"), + "tty": require.resolve("tty-browserify"), + "os": require.resolve("os-browserify/browser"), + "punycode": require.resolve("punycode/"), + "fs": false, + "url": require.resolve("url/"), + "net": require.resolve("net-browserify"), + "child_process": false, + async_hooks: false, + rawBody: false, + }; + + webpackConfig.plugins.push( + new webpack.ProvidePlugin({ + Buffer: ["buffer", "Buffer"] + }) + ); + return webpackConfig; + }, } + +module.exports = nextConfig ``` -```` -The code block will be rendered as an interactive editor. + + -```solidity solive height="500px" deployDefaultVisible="false" consoleDefaultVisible="false" ---- -filename: Storage.sol ---- +#### 2. 引入样式 -// SPDX-License-Identifier: GPL-3.0 +```js +import 'solive-core/dist/index.css'; +``` -pragma solidity >=0.7.0 <0.9.0; +#### 3. 使用 + +```react +=0.7.0 <0.9.0;\n\n/**\n * @title Storage\n * @dev Store & retrieve value in a variable\n * @custom:dev-run-script ./scripts/deploy_with_ethers.ts\n */\ncontract Storage {\n\n uint256 number;\n\n /**\n * @dev Store value in variable\n * @param num value to store\n */\n function store(uint256 num) public {\n number = num;\n }\n\n /**\n * @dev Return value \n * @return value of 'number'\n */\n function retrieve() public view returns (uint256){\n return number;\n }\n}", + language: "solidity" as any, + }, + ]} +/> +``` -/** - * @title Storage - * @dev Store & retrieve value in a variable - * @custom:dev-run-script ./scripts/deploy_with_ethers.ts - */ -contract Storage { - - uint256 number; - - /** - * @dev Store value in variable - * @param num value to store - */ - function store(uint256 num) public { - number = num; - } +即可看到效果: - /** - * @dev Return value - * @return value of 'number' - */ - function retrieve() public view returns (uint256){ - return number; - } -} +```solidity solive height="500px" consoleDefaultVisible="true" deployDefaultVisible="true" +/** + * @filename Storage.sol + */ + + // SPDX-License-Identifier: GPL-3.0 + + pragma solidity >=0.7.0 <0.9.0; + + /** + * @title Storage + * @dev Store & retrieve value in a variable + * @custom:dev-run-script ./scripts/deploy_with_ethers.ts + */ + contract Storage { + + uint256 number; + + /** + * @dev Store value in variable + * @param num value to store + */ + function store(uint256 num) public { + number = num; + } + + /** + * @dev Return value + * @return value of 'number' + */ + function retrieve() public view returns (uint256){ + return number; + } + } ``` diff --git a/apps/doc/docs/introduction.mdx b/apps/doc/docs/introduction.mdx index 354d7ed..05e1522 100644 --- a/apps/doc/docs/introduction.mdx +++ b/apps/doc/docs/introduction.mdx @@ -1,8 +1,21 @@ --- -title: Introduction +title: 介绍 sidebar_position: 0 slug: /introduction hide_title: true --- -### Coming Soon... +## 介绍 +Solive是一个灵活的在线Solidity智能合约的试验场,受到了remix-IDE和react-live的启发。 Solive可让您在一个React组件中编辑、编译、部署和交互Solidity智能合约。 您可以将solive嵌入您的网站或教程,并让用户在浏览器中运行Solidity代码。 Solive也兼容移动浏览器。 + +### 使用场景: +1. 教育:我们将在WTF Solidity教程中使用solive替换代码块,让学生能够阅读和运行代码。 +2. 开发人员入门:Layer2项目可以使用Solive来招募以太坊开发人员。 + +### 这是如何做的 +1. 参考remix-ide:一个在线IDE,用于开发智能合约 +2. 参考react-live:一个灵活的React代码实时编辑器。我们建立solive的原因是希望学生在阅读WTF Solidity教程的同时能运行示例代码。Solive的设计很轻便,只包含必要的模块以便编辑、编译、部署和与智能合约进行交互。 +3. 编辑模块:我们使用代码编辑器Monaco Editor。 +4. 编译模块:我们使用`solcjs`根据选定的Solidity版本进行编译智能合约。 +5. 部署:我们使用`ethersjs V5`和`ethereumjs vm`两者结合,将编译后的合约部署到本地EVM上。 +6. 交互:我们使用`ethersjs V5`和一个自定义的ABI-UI转换器来与部署的合约进行交互。 diff --git a/apps/doc/docs/qa.mdx b/apps/doc/docs/qa.mdx new file mode 100644 index 0000000..b0cc48b --- /dev/null +++ b/apps/doc/docs/qa.mdx @@ -0,0 +1,5 @@ +--- +title: 常见问题 +sidebar_position: 4 +hide_title: true +--- From 86f8e39bd600f71ba351c91c463d7371a7d2627c Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sun, 16 Apr 2023 01:51:23 +0800 Subject: [PATCH 08/16] fix(doc): fix error path --- .../doc/docs/expansion/docusaurus-plugins.mdx | 2 +- apps/doc/docs/solive-props.mdx | 51 ++++ .../current/expansion/docusaurus-plugins.mdx | 136 ++++++++++ .../current/expansion/index.mdx | 5 + .../current/get-started.mdx | 240 ++++++++++++------ .../current/introduction.mdx | 17 +- .../current/qa.mdx | 5 + 7 files changed, 379 insertions(+), 77 deletions(-) create mode 100644 apps/doc/docs/solive-props.mdx create mode 100644 apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/expansion/docusaurus-plugins.mdx create mode 100644 apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/expansion/index.mdx create mode 100644 apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/qa.mdx diff --git a/apps/doc/docs/expansion/docusaurus-plugins.mdx b/apps/doc/docs/expansion/docusaurus-plugins.mdx index 402a6a5..bb441fa 100644 --- a/apps/doc/docs/expansion/docusaurus-plugins.mdx +++ b/apps/doc/docs/expansion/docusaurus-plugins.mdx @@ -33,7 +33,7 @@ module.exports = { ```\ ``` -2. 你可以在代码块中配置solive相关属性 `height`(具体参考[属性表](./introduction.mdx)): +2. 你可以在代码块中配置solive相关属性 `height`(具体参考[属性表](/docs/solive-props)): ```md ```solidity solive height=300px // your code diff --git a/apps/doc/docs/solive-props.mdx b/apps/doc/docs/solive-props.mdx new file mode 100644 index 0000000..3780c97 --- /dev/null +++ b/apps/doc/docs/solive-props.mdx @@ -0,0 +1,51 @@ +--- +title: 组件属性 +sidebar_position: 2 +hide_title: true +--- + +# 组件属性 + +## 属性表 + +| 属性名 | 介绍 | 类型 | 默认值 | 是否必填 | +| ----- | ----- | ----- | ----- | ----- | +| id | 表单唯一标志 | string | - | ✅ | +| modelInfos | 文件信息 | array | [] | ✅ | +| height | 高度 | string | - | ✅ | +| rounded | 窗口弧度 | string | 12px | - | +| fileNav | 顶部文件导航 | TFileNav | (参考 [TFileNav](/docs/solive-props#tfilenav)) | - | +| console | 日志块 | TConsole | (参考 [TConsole](/docs/solive-props#tconsole)) | - | +| deploy | 部署块 | TDeploy | (参考 [TDeploy](/docs/solive-props#tdeploy)) | - | + +## TFileNav + +顶部文件导航属性表 + +| 属性名 | 介绍 | 类型 | 默认值 | 是否必填 | +| ----- | ----- | ----- | ----- | ----- | +| open | 是否开启功能 | boolean | true | - | + +## TConsole + +日志块属性表 + +| 属性名 | 介绍 | 类型 | 默认值 | 是否必填 | +| ----- | ----- | ----- | ----- | ----- | +| defaultVisible | 默认是否显示 | boolean | true | - | +| defaultHeight | 默认高度 | string | "30%" | - | +| minHeight | 最小高度 | number | 78 | - | +| triggerControl | 是否开启控制 | boolean | true | - | +| open | 是否开启功能 | boolean | true | - | + +## TDeploy + +部署块属性表 + +| 属性名 | 介绍 | 类型 | 默认值 | 是否必填 | +| ----- | ----- | ----- | ----- | ----- | +| defaultVisible | 默认是否显示 | boolean | true | - | +| defaultWidth | 默认宽度 | string | "200px" | - | +| minWidth | 最小宽度 | number | 140 | - | +| maxWidth | 最大宽度 | number | 240 | - | +| open | 是否开启功能 | boolean | true | - | diff --git a/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/expansion/docusaurus-plugins.mdx b/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/expansion/docusaurus-plugins.mdx new file mode 100644 index 0000000..402a6a5 --- /dev/null +++ b/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/expansion/docusaurus-plugins.mdx @@ -0,0 +1,136 @@ +--- +title: Docusaurus 插件 +hide_title: true +--- + +## Docusaurus 插件 + +> 你可以使用 `solive-docusaurus-theme-code` 插件快速集成一个轻量级Solidity Editor嵌入你的文档. + +### 安装 + +1. 首先我们需要安装 `solive-docusaurus-theme-code` 插件: +```bash npm2yarn +npm install --save solive-docusaurus-theme-code +``` + +2. 其次你需要在你的 `docusaurus.config.js` 中配置 `solive` 插件. + +```js {3} +module.exports = { + // ... + themes: ['solive-docusaurus-theme-code'], + // ... +}; +``` + +### 快速使用 + +1. 你需要注意在代码块标记solive,和配置solive的属性: +```md + ```solidity solive height=300px + // your code + ```\ +``` + +2. 你可以在代码块中配置solive相关属性 `height`(具体参考[属性表](./introduction.mdx)): +```md + ```solidity solive height=300px + // your code + ```\ +``` + +3. 配置代码块文件名(可多文件): +```md + ```solidity solive height=300px + /** + * @filename Storage.sol + */ + + // your code + + /** + * @filename Storage2.sol + */ + + // your code + ```\ +``` + +3. 完整的代码块示例: +````md +```solidity solive height=300px +/** + * @filename Storage.sol + */ + + +// SPDX-License-Identifier: GPL-3.0 + +pragma solidity >=0.7.0 <0.9.0; + +/** + * @title Storage + * @dev Store & retrieve value in a variable + * @custom:dev-run-script ./scripts/deploy_with_ethers.ts + */ +contract Storage { + + uint256 number; + + /** + * @dev Store value in variable + * @param num value to store + */ + function store(uint256 num) public { + number = num; + } + + /** + * @dev Return value + * @return value of 'number' + */ + function retrieve() public view returns (uint256){ + return number; + } +} +```\ +```` + +### 展示结果: + +```solidity solive height=300px + /** + * @filename Storage.sol + */ + + // SPDX-License-Identifier: GPL-3.0 + + pragma solidity >=0.7.0 <0.9.0; + + /** + * @title Storage + * @dev Store & retrieve value in a variable + * @custom:dev-run-script ./scripts/deploy_with_ethers.ts + */ + contract Storage { + + uint256 number; + + /** + * @dev Store value in variable + * @param num value to store + */ + function store(uint256 num) public { + number = num; + } + + /** + * @dev Return value + * @return value of 'number' + */ + function retrieve() public view returns (uint256){ + return number; + } + } +``` diff --git a/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/expansion/index.mdx b/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/expansion/index.mdx new file mode 100644 index 0000000..10571b6 --- /dev/null +++ b/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/expansion/index.mdx @@ -0,0 +1,5 @@ +--- +title: 扩展 +sidebar_position: 3 +hide_title: true +--- diff --git a/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/get-started.mdx b/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/get-started.mdx index e196d57..a47d28e 100644 --- a/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/get-started.mdx +++ b/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/get-started.mdx @@ -1,100 +1,192 @@ --- -title: Get Started +title: 开始 +sidebar_position: 1 hide_title: true --- -# Get Started +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; -You can create a Solidity interactive code editor with the `solive-docusaurus-theme-code` plugin. First, add the plugin to your package. +## 开始 -```bash npm2yarn -npm install --save solive-docusaurus-theme-code +### 安装 + + + + +```sh +npm install solive ``` -You will also need to add the plugin to your `docusaurus.config.js`. + + -```js {3} -module.exports = { - // ... - themes: ['solive-docusaurus-theme-code'], - // ... -}; +```sh +yarn add solive ``` -To use the plugin, create a code block with `solive` attached to the language meta string. + + -````md -```solidity solive height=300px ---- -filename: Storage.sol ---- +```sh +pnpm install solive +``` -// SPDX-License-Identifier: GPL-3.0 + + -pragma solidity >=0.7.0 <0.9.0; +### 使用 -/** - * @title Storage - * @dev Store & retrieve value in a variable - * @custom:dev-run-script ./scripts/deploy_with_ethers.ts - */ -contract Storage { - - uint256 number; - - /** - * @dev Store value in variable - * @param num value to store - */ - function store(uint256 num) public { - number = num; - } +#### 1. 配置webpack + + + - /** - * @dev Return value - * @return value of 'number' - */ - function retrieve() public view returns (uint256){ - return number; +```js +// 使用craco配置: +const webpack = require("webpack"); + +module.exports = { + // ... + webpack: { + configure: (webpackConfig, { env, paths }) => { + // eslint-disable-next-line no-param-reassign + webpackConfig.resolve.fallback = { + "http": require.resolve("stream-http"), + "https": require.resolve("https-browserify"), + "zlib": require.resolve("browserify-zlib"), + "stream": require.resolve("stream-browserify"), + "events": require.resolve("events/"), + "crypto": require.resolve("crypto-browserify"), + "assert": require.resolve("assert/"), + "buffer": require.resolve("buffer/"), + "util": require.resolve("util/"), + "path": require.resolve("path-browserify"), + "tty": require.resolve("tty-browserify"), + "os": require.resolve("os-browserify/browser"), + "punycode": require.resolve("punycode/"), + "fs": false, + "url": require.resolve("url/"), + "net": require.resolve("net-browserify"), + "child_process": false, + async_hooks: false, + rawBody: false, + }; + + webpackConfig.plugins.push( + new webpack.ProvidePlugin({ + Buffer: ["buffer", "Buffer"] + }) + ); + return webpackConfig; } + } +}; + +``` + + + + +```js +// next.config.js + +/** @type {import('next').NextConfig} */ +const nextConfig = { + // ... + webpack: (webpackConfig, { buildId, dev, isServer, defaultLoaders, webpack }) => { + webpackConfig.resolve.fallback = { + "http": require.resolve("stream-http"), + "https": require.resolve("https-browserify"), + "zlib": require.resolve("browserify-zlib"), + "stream": require.resolve("stream-browserify"), + "events": require.resolve("events/"), + "crypto": require.resolve("crypto-browserify"), + "assert": require.resolve("assert/"), + "buffer": require.resolve("buffer/"), + "util": require.resolve("util/"), + "path": require.resolve("path-browserify"), + "tty": require.resolve("tty-browserify"), + "os": require.resolve("os-browserify/browser"), + "punycode": require.resolve("punycode/"), + "fs": false, + "url": require.resolve("url/"), + "net": require.resolve("net-browserify"), + "child_process": false, + async_hooks: false, + rawBody: false, + }; + + webpackConfig.plugins.push( + new webpack.ProvidePlugin({ + Buffer: ["buffer", "Buffer"] + }) + ); + return webpackConfig; + }, } + +module.exports = nextConfig ``` -```` -The code block will be rendered as an interactive editor. + + -```solidity solive height="500px" deployDefaultVisible="false" consoleDefaultVisible="false" ---- -filename: Storage.sol ---- +#### 2. 引入样式 -// SPDX-License-Identifier: GPL-3.0 +```js +import 'solive-core/dist/index.css'; +``` -pragma solidity >=0.7.0 <0.9.0; +#### 3. 使用 + +```react +=0.7.0 <0.9.0;\n\n/**\n * @title Storage\n * @dev Store & retrieve value in a variable\n * @custom:dev-run-script ./scripts/deploy_with_ethers.ts\n */\ncontract Storage {\n\n uint256 number;\n\n /**\n * @dev Store value in variable\n * @param num value to store\n */\n function store(uint256 num) public {\n number = num;\n }\n\n /**\n * @dev Return value \n * @return value of 'number'\n */\n function retrieve() public view returns (uint256){\n return number;\n }\n}", + language: "solidity" as any, + }, + ]} +/> +``` -/** - * @title Storage - * @dev Store & retrieve value in a variable - * @custom:dev-run-script ./scripts/deploy_with_ethers.ts - */ -contract Storage { - - uint256 number; - - /** - * @dev Store value in variable - * @param num value to store - */ - function store(uint256 num) public { - number = num; - } +即可看到效果: - /** - * @dev Return value - * @return value of 'number' - */ - function retrieve() public view returns (uint256){ - return number; - } -} +```solidity solive height="500px" consoleDefaultVisible="true" deployDefaultVisible="true" +/** + * @filename Storage.sol + */ + + // SPDX-License-Identifier: GPL-3.0 + + pragma solidity >=0.7.0 <0.9.0; + + /** + * @title Storage + * @dev Store & retrieve value in a variable + * @custom:dev-run-script ./scripts/deploy_with_ethers.ts + */ + contract Storage { + + uint256 number; + + /** + * @dev Store value in variable + * @param num value to store + */ + function store(uint256 num) public { + number = num; + } + + /** + * @dev Return value + * @return value of 'number' + */ + function retrieve() public view returns (uint256){ + return number; + } + } ``` diff --git a/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/introduction.mdx b/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/introduction.mdx index 354d7ed..05e1522 100644 --- a/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/introduction.mdx +++ b/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/introduction.mdx @@ -1,8 +1,21 @@ --- -title: Introduction +title: 介绍 sidebar_position: 0 slug: /introduction hide_title: true --- -### Coming Soon... +## 介绍 +Solive是一个灵活的在线Solidity智能合约的试验场,受到了remix-IDE和react-live的启发。 Solive可让您在一个React组件中编辑、编译、部署和交互Solidity智能合约。 您可以将solive嵌入您的网站或教程,并让用户在浏览器中运行Solidity代码。 Solive也兼容移动浏览器。 + +### 使用场景: +1. 教育:我们将在WTF Solidity教程中使用solive替换代码块,让学生能够阅读和运行代码。 +2. 开发人员入门:Layer2项目可以使用Solive来招募以太坊开发人员。 + +### 这是如何做的 +1. 参考remix-ide:一个在线IDE,用于开发智能合约 +2. 参考react-live:一个灵活的React代码实时编辑器。我们建立solive的原因是希望学生在阅读WTF Solidity教程的同时能运行示例代码。Solive的设计很轻便,只包含必要的模块以便编辑、编译、部署和与智能合约进行交互。 +3. 编辑模块:我们使用代码编辑器Monaco Editor。 +4. 编译模块:我们使用`solcjs`根据选定的Solidity版本进行编译智能合约。 +5. 部署:我们使用`ethersjs V5`和`ethereumjs vm`两者结合,将编译后的合约部署到本地EVM上。 +6. 交互:我们使用`ethersjs V5`和一个自定义的ABI-UI转换器来与部署的合约进行交互。 diff --git a/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/qa.mdx b/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/qa.mdx new file mode 100644 index 0000000..b0cc48b --- /dev/null +++ b/apps/doc/i18n/zh/docusaurus-plugin-content-docs/current/qa.mdx @@ -0,0 +1,5 @@ +--- +title: 常见问题 +sidebar_position: 4 +hide_title: true +--- From a94068e25ff0f5da4475f5dd6b172a8c48774071 Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sun, 16 Apr 2023 01:58:16 +0800 Subject: [PATCH 09/16] fix(core): fix pkg process --- packages/core/package.json | 3 +- packages/core/rollup.config.js | 2 +- pnpm-lock.yaml | 56 ++++------------------------------ 3 files changed, 9 insertions(+), 52 deletions(-) diff --git a/packages/core/package.json b/packages/core/package.json index 4d63b10..6d53c43 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -39,17 +39,18 @@ "tailwindcss": "^3.2.7" }, "dependencies": { + "@ethereumjs/common": "^3.0.2", "@headlessui/react": "^1.7.13", "@heroicons/react": "^2.0.16", "@material-tailwind/react": "*", "@monaco-editor/react": "^4.4.6", - "@ethereumjs/common": "^3.0.2", "@tailwindcss/forms": "^0.5.3", "allotment": "^1.18.1", "axios": "0.27.2", "ethers": "^5", "lodash": "^4.17.21", "monaco-editor": "^0.35.0", + "process": "^0.11.10", "react-hook-form": "^7.43.7", "react-json-view": "^1.21.3", "semver": "^7.3.8", diff --git a/packages/core/rollup.config.js b/packages/core/rollup.config.js index 82b80a1..62a0fd9 100644 --- a/packages/core/rollup.config.js +++ b/packages/core/rollup.config.js @@ -26,7 +26,7 @@ export default { json(), resolve({ preferBuiltins: true, - mainFields: ['events', 'buffer', 'url', 'assert', 'util'] + mainFields: ['events', 'buffer', 'url', 'assert', 'util', 'process'] }), commonjs(), typescript({ useTsconfigDeclarationDir: true }), diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fe8794e..1ce8e3b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -261,6 +261,7 @@ importers: identity-obj-proxy: ^3.0.0 lodash: ^4.17.21 monaco-editor: ^0.35.0 + process: ^0.11.10 react: ^18.0.0 react-dev-utils: ^12.0.1 react-dom: ^18.0.0 @@ -285,6 +286,7 @@ importers: ethers: 5.7.2 lodash: r2.cnpmjs.org/lodash/4.17.21 monaco-editor: 0.35.0 + process: r2.cnpmjs.org/process/0.11.10 react-hook-form: 7.43.9_react@18.2.0 react-json-view: r2.cnpmjs.org/react-json-view/1.21.3_zn3vyfk3tbnwebg5ldvieekjaq semver: 7.3.8 @@ -8959,16 +8961,6 @@ packages: postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 dev: false - /postcss-import/14.1.0: - resolution: {integrity: sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==} - engines: {node: '>=10.0.0'} - peerDependencies: - postcss: ^8.0.0 - dependencies: - postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 - read-cache: r2.cnpmjs.org/read-cache/1.0.0 - resolve: 1.22.1 - /postcss-import/14.1.0_postcss@8.4.21: resolution: {integrity: sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==} engines: {node: '>=10.0.0'} @@ -8979,15 +8971,6 @@ packages: postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 read-cache: r2.cnpmjs.org/read-cache/1.0.0 resolve: 1.22.1 - dev: false - - /postcss-js/4.0.1: - resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} - engines: {node: ^12 || ^14 || >= 16} - peerDependencies: - postcss: ^8.4.21 - dependencies: - camelcase-css: r2.cnpmjs.org/camelcase-css/2.0.1 /postcss-js/4.0.1_postcss@8.4.21: resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} @@ -8997,7 +8980,6 @@ packages: dependencies: camelcase-css: r2.cnpmjs.org/camelcase-css/2.0.1 postcss: 8.4.21 - dev: false /postcss-lab-function/4.2.1_postcss@8.4.21: resolution: {integrity: sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==} @@ -9010,21 +8992,6 @@ packages: postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 dev: false - /postcss-load-config/3.1.4: - resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} - engines: {node: '>= 10'} - peerDependencies: - postcss: '>=8.0.9' - ts-node: '>=9.0.0' - peerDependenciesMeta: - postcss: - optional: true - ts-node: - optional: true - dependencies: - lilconfig: 2.1.0 - yaml: r2.cnpmjs.org/yaml/1.10.2 - /postcss-load-config/3.1.4_postcss@7.0.39: resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} engines: {node: '>= 10'} @@ -9181,14 +9148,6 @@ packages: string-hash: r2.cnpmjs.org/string-hash/1.1.3 dev: true - /postcss-nested/6.0.0: - resolution: {integrity: sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==} - engines: {node: '>=12.0'} - peerDependencies: - postcss: ^8.2.14 - dependencies: - postcss-selector-parser: 6.0.11 - /postcss-nested/6.0.0_postcss@8.4.21: resolution: {integrity: sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==} engines: {node: '>=12.0'} @@ -9197,7 +9156,6 @@ packages: dependencies: postcss: 8.4.21 postcss-selector-parser: 6.0.11 - dev: false /postcss-nesting/10.2.0_postcss@8.4.21: resolution: {integrity: sha512-EwMkYchxiDiKUhlJGzWsD9b2zvq/r2SSubcRrgP+jujMXFzqvANLt16lJANC+5uZ6hjI7lpRmI6O8JIl+8l1KA==} @@ -10463,8 +10421,6 @@ packages: resolution: {integrity: sha512-Vkiouc41d4CEq0ujXl6oiGFQ7bA3WEhUZdTgXAhtKxSy49OmKs8rEfQmupsfF0IGW8fv2iQkp1EVUuapCFrZ9g==} engines: {node: '>=12.13.0'} hasBin: true - peerDependencies: - postcss: ^8.0.9 dependencies: arg: 5.0.2 chokidar: 3.5.3 @@ -10481,10 +10437,10 @@ packages: object-hash: 3.0.0 picocolors: r2.cnpmjs.org/picocolors/1.0.0 postcss: 8.4.21 - postcss-import: 14.1.0 - postcss-js: 4.0.1 - postcss-load-config: 3.1.4 - postcss-nested: 6.0.0 + postcss-import: 14.1.0_postcss@8.4.21 + postcss-js: 4.0.1_postcss@8.4.21 + postcss-load-config: 3.1.4_postcss@8.4.21 + postcss-nested: 6.0.0_postcss@8.4.21 postcss-selector-parser: 6.0.11 postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 quick-lru: r2.cnpmjs.org/quick-lru/5.1.1 From fbe2c3f1dfe60053896c6f75c3cce291408e9e40 Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sun, 16 Apr 2023 12:39:46 +0800 Subject: [PATCH 10/16] chore: update eslint config and fix all lint error --- .eslintrc | 43 -- .eslintrc.js | 128 ++++ .idea/jsLinters/eslint.xml | 2 +- apps/next_demo/.eslintrc.json | 3 - package.json | 33 +- packages/compiler-utils/src/compilerInput.ts | 41 +- packages/compiler-utils/src/compilerUtils.ts | 56 +- packages/compiler-utils/src/helper.ts | 150 ++-- packages/compiler-utils/src/index.ts | 8 +- packages/compiler-utils/src/types.ts | 147 ++-- .../src/components/DeployAndCall/accounts.ts | 13 +- .../src/components/DeployAndCall/utils.ts | 74 +- .../editor/codeParser/codeParserCompiler.ts | 50 +- packages/core/src/editor/codeParser/index.ts | 5 +- .../src/editor/codeParser/parserVersion.ts | 27 +- .../src/editor/contexts/editorContext.tsx | 105 ++- packages/core/src/editor/index.tsx | 75 +- packages/core/src/editor/mountFunctions.ts | 147 ++-- .../editor/providers/definition/provider.ts | 19 +- packages/core/src/editor/utils/debounce.ts | 5 +- packages/core/src/editor/utils/deploy.ts | 14 +- packages/core/src/editor/utils/format-code.ts | 18 +- packages/core/src/editor/utils/model.ts | 4 +- packages/core/src/index.ts | 6 +- packages/core/src/types/console.ts | 18 +- packages/core/src/types/contract.ts | 3 +- packages/core/src/types/monaco.ts | 8 +- packages/docusaurus-plugin/.eslintrc.js | 9 + .../docusaurus-plugin/src/client/index.ts | 2 +- .../src/client/useCodeblockThemeConfig.ts | 16 +- packages/docusaurus-plugin/src/index.ts | 39 +- .../src/solive-docusaurus-theme-code.d.ts | 1 + .../src/theme/CodeBlock/index.tsx | 24 +- .../src/theme/SoliveCodeBlock/index.tsx | 83 ++- packages/docusaurus-plugin/src/theme/types.ts | 2 +- .../src/theme/utils/format-code.ts | 18 +- .../src/theme/utils/match-props.ts | 7 +- .../src/theme/utils/resolve-meta.ts | 19 +- .../src/theme/utils/single-filename.ts | 4 +- .../src/theme/utils/transform-model.ts | 20 +- packages/docusaurus-plugin/src/types.d.ts | 4 +- packages/docusaurus-plugin/tsconfig.json | 4 +- packages/provider/src/index.ts | 39 +- packages/provider/src/worker.ts | 31 +- packages/solc/src/index.ts | 20 +- packages/solc/src/script.ts | 3 - packages/solc/src/solc.d.ts | 6 +- packages/solc/src/types.ts | 54 +- packages/solc/src/worker.ts | 30 +- packages/solc/tsconfig.json | 3 +- pnpm-lock.yaml | 644 +++++++----------- pnpm-workspace.yaml | 4 +- 52 files changed, 1117 insertions(+), 1171 deletions(-) delete mode 100644 .eslintrc create mode 100644 .eslintrc.js delete mode 100644 apps/next_demo/.eslintrc.json create mode 100644 packages/docusaurus-plugin/.eslintrc.js delete mode 100644 packages/solc/src/script.ts diff --git a/.eslintrc b/.eslintrc deleted file mode 100644 index 2672190..0000000 --- a/.eslintrc +++ /dev/null @@ -1,43 +0,0 @@ -{ - "env": { - "browser": true, - "es2021": true - }, - "plugins": ["prettier", "@typescript-eslint"], - "extends": [ - "eslint:recommended", - "plugin:@typescript-eslint/recommended", - "plugin:import/recommended", - "prettier" - ], - "parser": "@typescript-eslint/parser", - "parserOptions": { - "project": ["**/tsconfig.json"] - }, - "settings": { - "import/resolver": { - "typescript": { - "alwaysTryTypes": false, - "project": "packages/*/tsconfig.json" - } - } - }, - "rules": { - "import/order": ["error", { "newlines-between": "always" }], - "import/no-named-as-default-member": "off", - "import/no-unresolved": [ - "error", - { - "ignore": ["^@theme-original", "^@docusaurus"] - } - ], - "@typescript-eslint/no-non-null-assertion": "off", - "@typescript-eslint/no-explicit-any": "off", - "@typescript-eslint/no-empty-interface": "off", - "@typescript-eslint/ban-ts-comment": "off", - "@typescript-eslint/no-unused-vars": "off", - "@typescript-eslint/no-empty-function": "off", - "@typescript-eslint/no-non-null-asserted-optional-chain": "off", - "@typescript-eslint/no-implicit-any-catch": "off" - } -} diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 0000000..78b62d1 --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,128 @@ +module.exports = { + root: true, + parser: '@typescript-eslint/parser', + plugins: [ + '@typescript-eslint', + 'react', + 'react-hooks', + 'import', + 'jsx-a11y', + ], + extends: [ + 'eslint:recommended', + 'plugin:@typescript-eslint/recommended', + 'airbnb', + 'plugin:react/recommended', + 'plugin:react-hooks/recommended', + 'plugin:import/typescript', + 'plugin:jsx-a11y/recommended', + ], + settings: { + react: { + version: 'detect', + }, + }, + globals: { + Worker: true, + globalThis: true, + document: true, + JSX: true, + React: 'readonly', + localStorage: true, + // 在这里添加其他全局变量 + }, + rules: { + // 常用规则 + 'no-unused-vars': 'off', + '@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_' }], + 'no-console': ['warn', { allow: ['warn', 'error'] }], + 'no-debugger': 'error', + 'prefer-template': 'error', + '@typescript-eslint/ban-ts-comment': 'off', + 'func-names': 'off', + 'no-use-before-define': 'off', + 'import/no-import-module-exports': 'off', + 'no-plusplus': 'off', + 'prefer-regex-literals': 'off', + 'no-await-in-loop': 'off', + 'no-restricted-syntax': 'off', + 'no-shadow': 'off', + 'no-bitwise': 'off', + 'class-methods-use-this': 'off', + radix: 'off', + 'guard-for-in': 'off', + 'max-len': ['error', { code: 150 }], + + // TypeScript 相关 + '@typescript-eslint/explicit-function-return-type': 'off', + '@typescript-eslint/explicit-module-boundary-types': 'off', + '@typescript-eslint/no-explicit-any': 'off', + '@typescript-eslint/no-non-null-asserted-optional-chain': 'off', + '@typescript-eslint/no-non-null-assertion': 'off', + + // React 相关 + 'react/jsx-filename-extension': ['error', { extensions: ['.jsx', '.tsx'] }], + 'react/prop-types': 'off', + 'react/jsx-props-no-spreading': 'off', + 'react-hooks/rules-of-hooks': 'error', + 'react-hooks/exhaustive-deps': 'warn', + 'react/require-default-props': 'warn', + 'react/no-unused-prop-types': 'warn', + 'jsx-a11y/click-events-have-key-events': 'warn', + + // import 相关 + 'import/prefer-default-export': 'off', + 'import/extensions': ['error', 'never', { svg: 'always' }], + 'import/order': ['error', { + 'newlines-between': 'always', + groups: ['builtin', 'external', 'internal', 'parent', 'sibling', 'index'], + pathGroups: [ + { + pattern: 'react', + group: 'external', + position: 'before', + }, + ], + pathGroupsExcludedImportTypes: ['builtin'], + }], + 'import/no-unresolved': [ + 'error', + { + ignore: ['^@theme-original', '^@docusaurus', '^@theme-init'], + }, + ], + + // 全局变量 相关 + 'no-restricted-globals': ['error', { + name: 'addEventListener', + message: 'Use `self.addEventListener` instead.', + }, { + name: 'importScripts', + message: 'Use `self.importScripts` instead.', + }, { + name: 'self', + message: 'Use `globalThis` instead.', + }], + }, + overrides: [ + { + files: ['*.ts', '*.tsx'], + rules: { + // 在这里添加针对 TypeScript 的规则 + }, + }, + { + files: ['*.jsx', '*.tsx'], + rules: { + // 在这里添加针对 React/JSX 的规则 + }, + }, + { + files: ['next/**/*.js', 'next/**/*.jsx', 'next/**/*.ts', 'next/**/*.tsx'], + rules: { + // 在这里添加针对 Next.js 项目的规则 + }, + }, + ], + ignorePatterns: ['dist/', 'build/'], +}; diff --git a/.idea/jsLinters/eslint.xml b/.idea/jsLinters/eslint.xml index 7e0cb18..2ece342 100644 --- a/.idea/jsLinters/eslint.xml +++ b/.idea/jsLinters/eslint.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/apps/next_demo/.eslintrc.json b/apps/next_demo/.eslintrc.json deleted file mode 100644 index bffb357..0000000 --- a/apps/next_demo/.eslintrc.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "next/core-web-vitals" -} diff --git a/package.json b/package.json index 129b68e..a53d581 100644 --- a/package.json +++ b/package.json @@ -11,8 +11,8 @@ "build:doc": "nx run solive-doc:build", "start:lib": "nx run-many --target=start", "build:lib": "nx run-many --target=build --projects=solive-compiler-utils,solive-solc,solive-provider,solive-core,solive-docusaurus-theme-code --parallel=false", - "lint": "eslint **/*.{ts,d.ts,js}", - "lint:fix": "pnpm run lint --fix", + "lint": "eslint **/*.{ts,d.ts,js} --ignore-pattern \"apps/**\"", + "lint:fix": "pnpm run lint --fix --ignore-pattern \"apps/**\"", "release:only": "changeset publish --registry=https://registry.npmjs.com/", "release": "pnpm release:only", "version-packages": "changeset version", @@ -36,16 +36,20 @@ "@rollup/plugin-typescript": "^11.0.0", "@tsconfig/node16-strictest-esm": "^1.0.1", "@types/node": "17.0.41", - "@typescript-eslint/eslint-plugin": "^5.39.0", - "@typescript-eslint/parser": "^5.39.0", - "eslint": "^8.25.0", + "@typescript-eslint/eslint-plugin": "^5.57.1", + "@typescript-eslint/parser": "^5.57.1", + "eslint": "^8.37.0", + "eslint-config-airbnb": "^19.0.4", "eslint-config-prettier": "^8.5.0", "eslint-define-config": "^1.5.1", "eslint-import-resolver-typescript": "^2.7.1", - "eslint-plugin-import": "^2.26.0", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jsx-a11y": "^6.7.1", "eslint-plugin-prettier": "^4.2.1", - "husky": "^8.0.1", - "lint-staged": "^13.0.3", + "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react-hooks": "^4.6.0", + "husky": "^8.0.3", + "lint-staged": "^13.2.0", "nx": "^15.0.0", "postcss": "^8", "postcss-cli": "^8", @@ -65,12 +69,15 @@ }, "author": "", "license": "ISC", + "husky": { + "hooks": { + "pre-commit": "lint-staged" + } + }, "lint-staged": { - "*.{jsx,less,md,json}": [ - "prettier --cache --write" - ], - "*.ts?(x)": [ - "prettier --cache --parser=typescript --write" + "*.{js,jsx,ts,tsx}": [ + "pnpm lint:fix", + "git add" ] }, "engines": { diff --git a/packages/compiler-utils/src/compilerInput.ts b/packages/compiler-utils/src/compilerInput.ts index f39c403..6e77d09 100644 --- a/packages/compiler-utils/src/compilerInput.ts +++ b/packages/compiler-utils/src/compilerInput.ts @@ -1,12 +1,12 @@ -import { CompilerInput, CompilerInputOptions, Source } from "./types"; +import { CompilerInput, CompilerInputOptions, Source } from './types'; const makeCompilerInput = ( sources: Source, - opts: CompilerInputOptions + opts: CompilerInputOptions, ): CompilerInput => { const baseInput: CompilerInput = { - language: "Solidity", - sources: sources, + language: 'Solidity', + sources, settings: { optimizer: { enabled: opts.optimize === true || opts.optimize === 1, @@ -14,20 +14,20 @@ const makeCompilerInput = ( }, libraries: opts.libraries, outputSelection: { - "*": { - "": ["ast"], - "*": [ - "abi", - "metadata", - "devdoc", - "userdoc", - "storageLayout", - "evm.legacyAssembly", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "evm.gasEstimates", - "evm.assembly", + '*': { + '': ['ast'], + '*': [ + 'abi', + 'metadata', + 'devdoc', + 'userdoc', + 'storageLayout', + 'evm.legacyAssembly', + 'evm.bytecode', + 'evm.deployedBytecode', + 'evm.methodIdentifiers', + 'evm.gasEstimates', + 'evm.assembly', ], }, }, @@ -35,7 +35,8 @@ const makeCompilerInput = ( }; if (opts.evmVersion) { - if (opts.evmVersion.toLowerCase() == "default") { + if (opts.evmVersion.toLowerCase() === 'default') { + // eslint-disable-next-line no-param-reassign opts.evmVersion = null; } else { baseInput.settings.evmVersion = opts.evmVersion; @@ -44,7 +45,7 @@ const makeCompilerInput = ( if (opts.language) { baseInput.language = opts.language; } - if (opts.language === "Yul" && baseInput.settings.optimizer.enabled) { + if (opts.language === 'Yul' && baseInput.settings.optimizer.enabled) { if (!baseInput.settings.optimizer.details) { baseInput.settings.optimizer.details = {}; } diff --git a/packages/compiler-utils/src/compilerUtils.ts b/packages/compiler-utils/src/compilerUtils.ts index 58de3eb..02f10f2 100644 --- a/packages/compiler-utils/src/compilerUtils.ts +++ b/packages/compiler-utils/src/compilerUtils.ts @@ -1,8 +1,7 @@ -import * as semver from "semver"; -/* global Worker */ +import * as semver from 'semver'; -export const baseURLBin = "https://binaries.soliditylang.org/bin"; -export const baseURLWasm = "https://binaries.soliditylang.org/wasm"; +export const baseURLBin = 'https://binaries.soliditylang.org/bin'; +export const baseURLWasm = 'https://binaries.soliditylang.org/wasm'; export const pathToURL = {}; @@ -10,50 +9,49 @@ export const pathToURL = {}; * Retrieves the URL of the given compiler version * @param version is the version of compiler with or without 'soljson-v' prefix and .js postfix */ -export function urlFromVersion(version: string) { - let url; - if (version === "builtin") { - let location: string | Location = window.document.location; - let path = location.pathname; - if (!path.startsWith("/")) path = "/" + path; - location = `${location.protocol}//${location.host}${path}assets/js`; - if (location.endsWith("index.html")) - location = location.substring(0, location.length - 10); - if (!location.endsWith("/")) location += "/"; - url = `${location}soljson.js`; - } else { - version = version.replace(".Emscripten.clang", ""); - if (!version.startsWith("soljson-v")) version = "soljson-v" + version; - if (!version.endsWith(".js")) version = version + ".js"; - url = `${(pathToURL)[version]}/${version}`; - } - return url; -} +// export function urlFromVersion(version: string) { +// let url; +// if (version === 'builtin') { +// let { location } = window.document; +// let path = location.pathname; +// if (!path.startsWith('/')) path = `/${path}`; +// location = `${location.protocol}//${location.host}${path}assets/js`; +// if (location.endsWith('index.html')) location = location.substring(0, location.length - 10); +// if (!location.endsWith('/')) location += '/'; +// url = `${location}soljson.js`; +// } else { +// version = version.replace('.Emscripten.clang', ''); +// if (!version.startsWith('soljson-v')) version = `soljson-v${version}`; +// if (!version.endsWith('.js')) version += '.js'; +// url = `${(pathToURL)[version]}/${version}`; +// } +// return url; +// } /** * Checks if the worker can be used to load a compiler. * checks a compiler whitelist, browser support and OS. */ export function canUseWorker(selectedVersion: string) { - if (selectedVersion.startsWith("http")) { + if (selectedVersion.startsWith('http')) { return browserSupportWorker(); } const version = semver.coerce(selectedVersion); if (!version) { return browserSupportWorker(); } - const isNightly = selectedVersion.includes("nightly"); + const isNightly = selectedVersion.includes('nightly'); return ( - browserSupportWorker() && + browserSupportWorker() // All compiler versions (including nightlies) after 0.6.3 are wasm compiled - (semver.gt(version, "0.6.3") || + && (semver.gt(version, '0.6.3') // Only releases are wasm compiled starting with 0.3.6 - (semver.gte(version, "0.3.6") && !isNightly)) + || (semver.gte(version, '0.3.6') && !isNightly)) ); } function browserSupportWorker() { return document - ? document.location.protocol !== "file:" && Worker !== undefined + ? document.location.protocol !== 'file:' && Worker !== undefined : false; } diff --git a/packages/compiler-utils/src/helper.ts b/packages/compiler-utils/src/helper.ts index 07da109..dc9a313 100644 --- a/packages/compiler-utils/src/helper.ts +++ b/packages/compiler-utils/src/helper.ts @@ -6,7 +6,7 @@ import { MarkerSeverity, SearchResultLine, SearchResultLineLine, -} from "./types"; +} from './types'; /** * @dev Get contract obj of given contract name from last compilation result. @@ -16,11 +16,11 @@ import { export const getContract = ( contractName: string, - contracts: CompilationResult["contracts"] + contracts: CompilationResult['contracts'], ): Record | null => { for (const file in contracts) { if (contracts[file][contractName]) { - return { object: contracts[file][contractName], file: file }; + return { object: contracts[file][contractName], file }; } } return null; @@ -33,15 +33,15 @@ export const getContract = ( */ export const visitContracts = ( - contracts: CompilationResult["contracts"], - cb: visitContractsCallbackInterface + contracts: CompilationResult['contracts'], + cb: visitContractsCallbackInterface, ): void => { for (const file in contracts) { for (const name in contracts[file]) { const param: visitContractsCallbackParam = { - name: name, + name, object: contracts[file][name], - file: file, + file, }; if (cb(param)) return; } @@ -49,15 +49,20 @@ export const visitContracts = ( }; // ^ e.g: -// browser/gm.sol: Warning: Source file does not specify required compiler version! Consider adding "pragma solidity ^0.6.12 -// https://github.com/OpenZeppelin/openzeppelin-contracts/blob/release-v3.2.0/contracts/introspection/IERC1820Registry.sol:3:1: ParserError: Source file requires different compiler version (current compiler is 0.7.4+commit.3f05b770.Emscripten.clang) - note that nightly builds are considered to be strictly less than the released version +// browser/gm.sol: Warning: Source file does +// not specify required compiler version! Consider adding "pragma solidity ^0.6.12 +// https://github.com/OpenZeppelin/openzeppelin-contracts/blob/release-v3.2.0/contracts/introspection/IERC1820Registry.sol:3:1 +// ParserError: Source file requires different compiler version +// (current compiler is 0.7.4+commit.3f05b770.Emscripten.clang) +// - note that nightly builds are considered to be strictly less than the released version export const getPositionDetails = (msg: string) => { const result = {} as Record; // To handle some compiler warning without location like SPDX license warning etc - if (!msg.includes(":")) return { errLine: -1, errCol: -1, errFile: "" }; + if (!msg.includes(':')) return { errLine: -1, errCol: -1, errFile: '' }; - if (msg.includes("-->")) msg = msg.split("-->")[1].trim(); + // eslint-disable-next-line no-param-reassign + if (msg.includes('-->')) msg = msg.split('-->')[1].trim(); // extract line / column let pos = msg.match(/^(.*?):([0-9]*?):([0-9]*?)?/); @@ -73,34 +78,32 @@ export const getPositionDetails = (msg: string) => { export const createErrorMarker = ( error: any, filePath: string, - lineColumn: any -): ErrorMarker => { - return { - message: error.formattedMessage, - severity: - error.severity === "error" + lineColumn: any, +): ErrorMarker => ({ + message: error.formattedMessage, + severity: + error.severity === 'error' ? MarkerSeverity.Error : MarkerSeverity.Warning, - position: { - start: { - line: ((lineColumn.start && lineColumn.start.line) || 0) + 1, - column: ((lineColumn.start && lineColumn.start.column) || 0) + 1, - }, - end: { - line: ((lineColumn.end && lineColumn.end.line) || 0) + 1, - column: ((lineColumn.end && lineColumn.end.column) || 0) + 1, - }, + position: { + start: { + line: ((lineColumn.start && lineColumn.start.line) || 0) + 1, + column: ((lineColumn.start && lineColumn.start.column) || 0) + 1, }, - file: filePath, - }; -}; + end: { + line: ((lineColumn.end && lineColumn.end.line) || 0) + 1, + column: ((lineColumn.end && lineColumn.end.column) || 0) + 1, + }, + }, + file: filePath, +}); export const getLinebreakPositions = (source: any) => { const ret = []; for ( - let pos = source.indexOf("\n"); + let pos = source.indexOf('\n'); pos >= 0; - pos = source.indexOf("\n", pos + 1) + pos = source.indexOf('\n', pos + 1) ) { ret.push(pos); } @@ -109,14 +112,14 @@ export const getLinebreakPositions = (source: any) => { export const convertOffsetToLineColumn = ( sourceLocation: any, - lineBreakPositions: any + lineBreakPositions: any, ) => { if (sourceLocation.start >= 0 && sourceLocation.length >= 0) { return { start: convertFromCharPosition(sourceLocation.start, lineBreakPositions), end: convertFromCharPosition( sourceLocation.start + sourceLocation.length, - lineBreakPositions + lineBreakPositions, ), }; } @@ -126,7 +129,7 @@ export const convertOffsetToLineColumn = ( export const convertFromCharPosition = (pos: any, lineBreakPositions: any) => { let line = findLowerBound(pos, lineBreakPositions); if (lineBreakPositions[line] !== pos) { - line = line + 1; + line += 1; } const beginColumn = line === 0 ? 0 : lineBreakPositions[line - 1] + 1; const column = pos - beginColumn; @@ -135,7 +138,7 @@ export const convertFromCharPosition = (pos: any, lineBreakPositions: any) => { export const findLowerBound = (target: any, array: any) => { let start = 0; - let length = array.length; + let { length } = array; while (length > 0) { const half = length >> 1; const middle = start + half; @@ -151,61 +154,56 @@ export const findLowerBound = (target: any, array: any) => { export const getPositionForImportErrors = async ( importedFileName: string, - text: string + text: string, ) => { - const re = new RegExp(escapeRegExp(importedFileName), "gi"); + const re = new RegExp(escapeRegExp(importedFileName), 'gi'); const result: SearchResultLine[] = findLinesInStringWithMatch(text, re); return result; }; -export const findLinesInStringWithMatch = (str: string, re: RegExp) => { - return str - .split(/\r?\n/) - .map((line, i) => { - const matchResult = matchesInString(line, re); - if (matchResult.length) { - return { - lines: splitLines(matchResult, i), - }; - } - return null; - }) - .filter(Boolean) as SearchResultLine[]; -}; +export const findLinesInStringWithMatch = (str: string, re: RegExp) => str + .split(/\r?\n/) + .map((line, i) => { + const matchResult = matchesInString(line, re); + if (matchResult.length) { + return { + lines: splitLines(matchResult, i), + }; + } + return null; + }) + .filter(Boolean) as SearchResultLine[]; const matchesInString = (str: string, re: RegExp) => { let a: RegExpExecArray; const results: RegExpExecArray[] = []; // @ts-ignore - while ((a = re.exec(str || "")) !== null) { + // eslint-disable-next-line no-cond-assign + while ((a = re.exec(str || '')) !== null) { results.push(a); } return results; }; -const splitLines = (matchResult: RegExpExecArray[], lineNumber: number) => { - return matchResult.map((matchResultPart, i) => { - const result: SearchResultLineLine = { - left: matchResultPart.input.substring(0, matchResultPart.index), - right: matchResultPart.input.substring( - matchResultPart.index + matchResultPart[0].length - ), - center: matchResultPart[0], - position: { - start: { - line: lineNumber, - column: matchResultPart.index, - }, - end: { - line: lineNumber, - column: matchResultPart.index + matchResultPart[0].length, - }, +const splitLines = (matchResult: RegExpExecArray[], lineNumber: number) => matchResult.map((matchResultPart) => { + const result: SearchResultLineLine = { + left: matchResultPart.input.substring(0, matchResultPart.index), + right: matchResultPart.input.substring( + matchResultPart.index + matchResultPart[0].length, + ), + center: matchResultPart[0], + position: { + start: { + line: lineNumber, + column: matchResultPart.index, }, - }; - return result; - }); -}; + end: { + line: lineNumber, + column: matchResultPart.index + matchResultPart[0].length, + }, + }, + }; + return result; +}); -const escapeRegExp = (str: string) => { - return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"); -}; +const escapeRegExp = (str: string) => str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); diff --git a/packages/compiler-utils/src/index.ts b/packages/compiler-utils/src/index.ts index f1ff0b1..17e0f9d 100644 --- a/packages/compiler-utils/src/index.ts +++ b/packages/compiler-utils/src/index.ts @@ -1,4 +1,4 @@ -export { default as makeCompilerInput } from "./compilerInput"; -export * from "./types"; -export * from "./compilerUtils"; -export * from "./helper"; +export { default as makeCompilerInput } from './compilerInput'; +export * from './types'; +export * from './compilerUtils'; +export * from './helper'; diff --git a/packages/compiler-utils/src/types.ts b/packages/compiler-utils/src/types.ts index bd6174a..c039edf 100644 --- a/packages/compiler-utils/src/types.ts +++ b/packages/compiler-utils/src/types.ts @@ -56,7 +56,7 @@ export type CompilerInput = { // "strip" removes all revert strings (if possible, i.e. if literals are used) keeping side-effects // "debug" injects strings for compiler-generated internal reverts (not yet implemented) // "verboseDebug" even appends further information to user-supplied revert strings (not yet implemented) - revertStrings: "default" | "strip" | "debug" | "verboseDebug"; + revertStrings: 'default' | 'strip' | 'debug' | 'verboseDebug'; }; // Metadata settings (optional) metadata?: { @@ -66,7 +66,7 @@ export type CompilerInput = { // The metadata hash can be removed from the bytecode via option "none". // The other options are "ipfs" and "bzzr1". // If the option is omitted, "ipfs" is used by default. - bytecodeHash: "ipfs" | "bzzr1" | "none"; + bytecodeHash: 'ipfs' | 'bzzr1' | 'none'; }; // Addresses of the libraries. If not all libraries are given here, // it can result in unlinked objects whose output data is different. @@ -120,20 +120,20 @@ export type CompilerInput = { // target part of that output. Additionally, `*` can be used as a wildcard to request everything. // outputSelection?: { - "*": { - "": ["ast"]; - "*": [ - "abi", - "metadata", - "devdoc", - "userdoc", - "storageLayout", - "evm.legacyAssembly", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "evm.gasEstimates", - "evm.assembly" + '*': { + '': ['ast']; + '*': [ + 'abi', + 'metadata', + 'devdoc', + 'userdoc', + 'storageLayout', + 'evm.legacyAssembly', + 'evm.bytecode', + 'evm.deployedBytecode', + 'evm.methodIdentifiers', + 'evm.gasEstimates', + 'evm.assembly' ]; }; }; @@ -170,23 +170,23 @@ export type CompilerInputOptions = { // berlin:以太坊的第十个硬分叉(EIP 2565)引入的 EVM 版本。 // london:以太坊的第十一个硬分叉(EIP 1559)引入的 EVM 版本。 export type EVMVersion = - | "homestead" - | "tangerineWhistle" - | "spuriousDragon" - | "byzantium" - | "constantinople" - | "petersburg" - | "istanbul" - | "berlin" - | "london" - | "paris" + | 'homestead' + | 'tangerineWhistle' + | 'spuriousDragon' + | 'byzantium' + | 'constantinople' + | 'petersburg' + | 'istanbul' + | 'berlin' + | 'london' + | 'paris' | null; -export type Language = "Solidity" | "Yul"; +export type Language = 'Solidity' | 'Yul'; export enum CompilerRetriggerMode { - "none", - "retrigger", + 'none', + 'retrigger', } export type CompilerState = { @@ -277,28 +277,28 @@ export type CompilationError = { /** Error type */ type?: CompilationErrorType; /** Component where the error originated, such as "general", "ewasm", etc. */ - component?: "general" | "ewasm" | string; - severity?: "error" | "warning"; + component?: 'general' | 'ewasm' | string; + severity?: 'error' | 'warning'; message?: string; - mode?: "panic"; + mode?: 'panic'; /** the message formatted with source location */ formattedMessage?: string; }; type CompilationErrorType = - | "JSONError" - | "IOError" - | "ParserError" - | "DocstringParsingError" - | "SyntaxError" - | "DeclarationError" - | "TypeError" - | "UnimplementedFeatureError" - | "InternalCompilerError" - | "Exception" - | "CompilerError" - | "FatalError" - | "Warning"; + | 'JSONError' + | 'IOError' + | 'ParserError' + | 'DocstringParsingError' + | 'SyntaxError' + | 'DeclarationError' + | 'TypeError' + | 'UnimplementedFeatureError' + | 'InternalCompilerError' + | 'Exception' + | 'CompilerError' + | 'FatalError' + | 'Warning'; /// ////////// // SOURCE CODE // @@ -383,14 +383,14 @@ export type CompiledContract = { gasEstimates: { creation: { codeDepositCost: string; - executionCost: "infinite" | string; - totalCost: "infinite" | string; + executionCost: 'infinite' | string; + totalCost: 'infinite' | string; }; external: { [functionIdentifier: string]: string; }; internal: { - [functionIdentifier: string]: "infinite" | string; + [functionIdentifier: string]: 'infinite' | string; }; }; }; @@ -409,17 +409,16 @@ export type CompiledContract = { export type ABIDescription = FunctionDescription | EventDescription; export const isFunctionDescription = ( - item: ABIDescription -): item is FunctionDescription => - (item as FunctionDescription).stateMutability !== undefined; + item: ABIDescription, +): item is FunctionDescription => (item as FunctionDescription).stateMutability !== undefined; export const isEventDescription = ( - item: ABIDescription -): item is EventDescription => (item as EventDescription).type === "event"; + item: ABIDescription, +): item is EventDescription => (item as EventDescription).type === 'event'; export type FunctionDescription = { /** Type of the method. default is 'function' */ - type?: "function" | "constructor" | "fallback" | "receive"; + type?: 'function' | 'constructor' | 'fallback' | 'receive'; /** The name of the function. Constructor and fallback function never have name */ name?: string; /** List of parameters of the method. Fallback function doesn’t have inputs. */ @@ -427,7 +426,7 @@ export type FunctionDescription = { /** List of the outputs parameters for the method, if any */ outputs?: ABIParameter[]; /** State mutability of the method */ - stateMutability: "pure" | "view" | "nonpayable" | "payable"; + stateMutability: 'pure' | 'view' | 'nonpayable' | 'payable'; /** true if function accepts Ether, false otherwise. Default is false */ payable?: boolean; /** true if function is either pure or view, false otherwise. Default is false */ @@ -435,7 +434,7 @@ export type FunctionDescription = { }; export type EventDescription = { - type: "event"; + type: 'event'; name: string; inputs: ABIParameter & { @@ -456,24 +455,24 @@ export type ABIParameter = { }; export type ABITypeParameter = - | "uint" - | "uint[]" // TODO : add - | "int" - | "int[]" // TODO : add - | "address" - | "address[]" - | "bool" - | "bool[]" - | "fixed" - | "fixed[]" // TODO : add - | "ufixed" - | "ufixed[]" // TODO : add - | "bytes" - | "bytes[]" // TODO : add - | "function" - | "function[]" - | "tuple" - | "tuple[]" + | 'uint' + | 'uint[]' // TODO : add + | 'int' + | 'int[]' // TODO : add + | 'address' + | 'address[]' + | 'bool' + | 'bool[]' + | 'fixed' + | 'fixed[]' // TODO : add + | 'ufixed' + | 'ufixed[]' // TODO : add + | 'bytes' + | 'bytes[]' // TODO : add + | 'function' + | 'function[]' + | 'tuple' + | 'tuple[]' | string; // Fallback /// //////////////////////// diff --git a/packages/core/src/components/DeployAndCall/accounts.ts b/packages/core/src/components/DeployAndCall/accounts.ts index 8fb6b4c..ed465d2 100644 --- a/packages/core/src/components/DeployAndCall/accounts.ts +++ b/packages/core/src/components/DeployAndCall/accounts.ts @@ -1,5 +1,5 @@ -import VmProvider from "solive-provider"; -import {ethers} from "ethers"; +import VmProvider from 'solive-provider'; +import { ethers } from 'ethers'; export const formatAccounts = async (accounts: string[], provider: VmProvider) => { const balances = await provider.getBalances(accounts); @@ -7,7 +7,7 @@ export const formatAccounts = async (accounts: string[], provider: VmProvider) = account, balance: balances[index], })); -} +}; export const getAccountOptions = async (accounts: string[], provider: VmProvider) => { const formattedAccounts = await formatAccounts(accounts, provider); @@ -15,11 +15,10 @@ export const getAccountOptions = async (accounts: string[], provider: VmProvider label: `(${cutStringNumber(ethers.utils.formatEther(item.balance), 3)} ETH) ${item.account}`, value: item.account, })); -} - +}; const cutStringNumber = (numStr: string, decimals: number) => { const index = numStr.indexOf('.'); // 找到小数点的位置 - // 截取小数点后第二位及之后的字符串 + // 截取小数点后第二位及之后的字符串 return numStr.substring(0, index + 1 + decimals); -} +}; diff --git a/packages/core/src/components/DeployAndCall/utils.ts b/packages/core/src/components/DeployAndCall/utils.ts index 3524f43..e088f3d 100644 --- a/packages/core/src/components/DeployAndCall/utils.ts +++ b/packages/core/src/components/DeployAndCall/utils.ts @@ -1,47 +1,41 @@ -import {ABIParameter} from "solive-compiler-utils"; -import {ethers} from "ethers"; +import { ABIParameter } from 'solive-compiler-utils'; +import { ethers } from 'ethers'; -export const transformAbiParams = (inputs: ABIParameter[], params: {[key: string]: string}) => { - return inputs.map((input) => { - const param = params[input.name]; +export const transformAbiParams = (inputs: ABIParameter[], params: {[key: string]: string}) => inputs.map((input) => { + const param = params[input.name]; - if ( - input.type === 'address' || - input.type === 'uint8' || - input.type === 'uint16' || - input.type === 'uint32' || - input.type === 'uint64' || - input.type === 'uint128' || - input.type === 'uint256' || - input.type === 'bool' || - input.type === 'string' || - input.type === 'bytes' - ) { - return param; - } + if ( + input.type === 'address' + || input.type === 'uint8' + || input.type === 'uint16' + || input.type === 'uint32' + || input.type === 'uint64' + || input.type === 'uint128' + || input.type === 'uint256' + || input.type === 'bool' + || input.type === 'string' + || input.type === 'bytes' + ) { + return param; + } - if (input.type === 'uint[]' || input.type === 'uint256[]') { - const arr = param.split(','); - return arr.map((item) => { - return parseInt(item); - }); - } + if (input.type === 'uint[]' || input.type === 'uint256[]') { + const arr = param.split(','); + return arr.map((item) => parseInt(item, 10)); + } - if (input.type === 'address[]') { - return param.split(','); - } + if (input.type === 'address[]') { + return param.split(','); + } - if (input.type === 'bytes32') { - return ethers.utils.formatBytes32String(param); - } + if (input.type === 'bytes32') { + return ethers.utils.formatBytes32String(param); + } - if (input.type === 'bytes32[]') { - const arr = param.split(','); - return arr.map((item) => { - return ethers.utils.formatBytes32String(item); - }); - } + if (input.type === 'bytes32[]') { + const arr = param.split(','); + return arr.map((item) => ethers.utils.formatBytes32String(item)); + } - return param; - }); -} + return param; +}); diff --git a/packages/core/src/editor/codeParser/codeParserCompiler.ts b/packages/core/src/editor/codeParser/codeParserCompiler.ts index a383038..24400c0 100644 --- a/packages/core/src/editor/codeParser/codeParserCompiler.ts +++ b/packages/core/src/editor/codeParser/codeParserCompiler.ts @@ -6,7 +6,7 @@ import { } from 'solive-compiler-utils'; import axios from 'axios'; -import { IEditorInitState } from '../contexts/editorContext'; +import type { IEditorInitState } from '../contexts/editorContext'; import { EditorApi, ModelType } from '../../types/monaco'; import { cache, getCache } from '../utils/cache'; @@ -14,14 +14,17 @@ import ParserVersion from './parserVersion'; class CodeParserCompiler { editorApi: EditorApi; + editorState: IEditorInitState; + compiler: any; + parseVersion: ParserVersion; constructor( editorApi: EditorApi, editorState: IEditorInitState, - parseVersion: ParserVersion + parseVersion: ParserVersion, ) { this.editorApi = editorApi; this.editorState = editorState; @@ -35,19 +38,17 @@ class CodeParserCompiler { try { codeVersion = this.parseVersion.resolveCodeVersion( - currentModel.model.getValue() + currentModel.model.getValue(), ); } catch (error) { /* empty */ } const versionUrl = this.parseVersion.getVersionUri(codeVersion); const imports = this.resolveImports(currentModel); - const sources = Object.assign( - { - [currentModel.filename]: { - content: currentModel.model.getValue(), - }, + const sources = { + [currentModel.filename]: { + content: currentModel.model.getValue(), }, - this.resolveSource(imports) - ); + ...this.resolveSource(imports), + }; // wasm compiler use string config const compilerConfig = makeCompilerInput(sources, { @@ -65,9 +66,10 @@ class CodeParserCompiler { resolveImports(model: ModelType) { const code = model.model.getValue(); - const importRegex = new RegExp("^\\s*import\\s+[\"']([^\"']+\\.(sol))[\"']", "gm"); + const importRegex = new RegExp("^\\s*import\\s+[\"']([^\"']+\\.(sol))[\"']", 'gm'); const importHints: string[] = []; let match; + // eslint-disable-next-line no-cond-assign while ((match = importRegex.exec(code)) !== null) { let importFilePath = match[1]; if (importFilePath.startsWith('./')) { @@ -76,15 +78,14 @@ class CodeParserCompiler { ? importFilePath.replace('./', path[1]) : importFilePath.slice(2); } - if (!importHints.includes(importFilePath)) - importHints.push(importFilePath); + if (!importHints.includes(importFilePath)) importHints.push(importFilePath); } return importHints; } resolveSource(imports: string[]): Source { - const monaco = this.editorState.monaco; + const { monaco } = this.editorState; const domain = 'github.com'; const find = (value: string): ModelType['model'] => { @@ -100,9 +101,9 @@ class CodeParserCompiler { Object.assign(sources, { [im]: { content: find(im).getValue() }, }); - }else if(im.includes(domain)){ - this.importRemoteFile(im).then(res => { - Object.assign(sources, res) + } else if (im.includes(domain)) { + this.importRemoteFile(im).then((res) => { + Object.assign(sources, res); }); } }); @@ -115,28 +116,27 @@ class CodeParserCompiler { const fileRaw = url.replace('//github.com/', `//${fileDomain}/`).replace('/blob/', '/'); const fileName = `github:${fileRaw.split(`${fileDomain}/`).pop()}`; let fileContent = ''; - if(fileName) { + if (fileName) { const cacheFile = getCache(fileName); - if(cacheFile.value){ + if (cacheFile.value) { fileContent = cacheFile.value as string; - }else{ - try{ + } else { + try { const res = await axios.get(fileRaw); fileContent = res.data; cache(fileName, fileContent, { cacheTime: 1000 * 60 * 60 * 24 }); - }catch(err){ + } catch (err) { console.error(`Error fetching file: ${url}`, err); throw err; } } - }else{ + } else { console.warn('fileName is null'); } return { - [fileName] : fileContent, + [fileName]: fileContent, }; } - } export default CodeParserCompiler; diff --git a/packages/core/src/editor/codeParser/index.ts b/packages/core/src/editor/codeParser/index.ts index 8d7d618..27eab74 100644 --- a/packages/core/src/editor/codeParser/index.ts +++ b/packages/core/src/editor/codeParser/index.ts @@ -1,11 +1,12 @@ import { EditorApi } from '../../types/monaco'; -import { IEditorInitState } from '../contexts/editorContext'; +import type { IEditorInitState } from '../contexts/editorContext'; import CodeParserCompiler from './codeParserCompiler'; import ParserVersion from './parserVersion'; class CodeParser { compilerService: CodeParserCompiler; + parseVersion: ParserVersion; constructor(editorApi: EditorApi, editorState: IEditorInitState) { @@ -14,7 +15,7 @@ class CodeParser { this.compilerService = new CodeParserCompiler( editorApi, editorState, - this.parseVersion + this.parseVersion, ); } } diff --git a/packages/core/src/editor/codeParser/parserVersion.ts b/packages/core/src/editor/codeParser/parserVersion.ts index ffe6692..4509dd6 100644 --- a/packages/core/src/editor/codeParser/parserVersion.ts +++ b/packages/core/src/editor/codeParser/parserVersion.ts @@ -1,18 +1,22 @@ -import {getCompilerVersions} from 'solive-solc'; +import { getCompilerVersions } from 'solive-solc'; import semver from 'semver'; -import {EditorApi} from '../../types/monaco'; -import {CompilerInfo} from '../../types/solidity'; -import {IEditorInitState} from '../contexts/editorContext'; -import {cache, getCache} from '../utils/cache'; +import { EditorApi } from '../../types/monaco'; +import { CompilerInfo } from '../../types/solidity'; +import type { IEditorInitState } from '../contexts/editorContext'; +import { cache, getCache } from '../utils/cache'; const COMPILER_INFO_KEY = 'compiler_info'; class ParserVersion { editorApi: EditorApi; + editorState: IEditorInitState; + allVersions: string[] = []; + latestVersion = ''; + compilerInfo?: CompilerInfo; constructor(editorApi: EditorApi, editorState: IEditorInitState) { @@ -26,14 +30,14 @@ class ParserVersion { } resolveCodeVersion(code: string) { - const rex = new RegExp("(pragma solidity (.+?);)", "g"); - const pragmaArr = code.match(rex) + const rex = new RegExp('(pragma solidity (.+?);)', 'g'); + const pragmaArr = code.match(rex); if (!pragmaArr) { return this.latestVersion; } - const pragmaStr = pragmaArr[0].replace('pragma solidity', '').trim() + const pragmaStr = pragmaArr[0].replace('pragma solidity', '').trim(); return pragmaStr.substring(0, pragmaStr.length - 1); } @@ -45,7 +49,7 @@ class ParserVersion { matchVersion(version: string) { const bestVersion = semver.maxSatisfying(this.allVersions, version); - console.log("bestVersion: ",bestVersion); + console.log('bestVersion: ', bestVersion); if (!bestVersion) { console.warn('No version match, use latest version'); return this.latestVersion; // This is the latest version @@ -55,8 +59,7 @@ class ParserVersion { } async getCompilerInfo() { - const { value: oldCompilerInfo, expired } = - getCache(COMPILER_INFO_KEY); + const { value: oldCompilerInfo, expired } = getCache(COMPILER_INFO_KEY); let curCompiler = oldCompilerInfo as CompilerInfo; if (!oldCompilerInfo || expired) { @@ -71,7 +74,7 @@ class ParserVersion { return curCompiler; } - setVersion() {} + // setVersion() {} } export default ParserVersion; diff --git a/packages/core/src/editor/contexts/editorContext.tsx b/packages/core/src/editor/contexts/editorContext.tsx index 52c2936..4570f81 100644 --- a/packages/core/src/editor/contexts/editorContext.tsx +++ b/packages/core/src/editor/contexts/editorContext.tsx @@ -1,9 +1,11 @@ -import React, {useEffect, useMemo, useReducer, useRef} from "react"; -import monacoForTypes, {editor} from "monaco-editor"; -import VmProvider from "solive-provider"; +import React, { + useEffect, useMemo, useReducer, useRef, +} from 'react'; -import {BaseMonacoEditor, ModelType} from "../../types/monaco"; -import CodeParser from "../codeParser"; +import monacoForTypes, { editor } from 'monaco-editor'; + +import { BaseMonacoEditor, ModelType } from '../../types/monaco'; +import CodeParser from '../codeParser'; export interface IEditorInitState { editor: editor.IStandaloneCodeEditor | undefined; @@ -15,13 +17,13 @@ export interface IEditorInitState { } export interface IEditorReducerActionType { - type: "updateEditor" | - "updateMonaco" | - "updateModels" | - "updateModelIndex" | - "setCodeParser" | - "updateCodeParserLoading" | - "cleanModels" + type: 'updateEditor' | + 'updateMonaco' | + 'updateModels' | + 'updateModelIndex' | + 'setCodeParser' | + 'updateCodeParserLoading' | + 'cleanModels' payload: Partial & { id?: string }; } @@ -38,7 +40,6 @@ export type TEditorReducerAction = { export type TEditorContext = { state: IEditorInitState; stateRef: React.MutableRefObject; - vmProviderRef: React.MutableRefObject; dispatch: React.Dispatch; actions: TEditorReducerAction; id: string; @@ -54,50 +55,47 @@ const editorInitState: IEditorInitState = { modelIndex: 0, codeParser: {} as CodeParser, codeParserInitLoading: false, -} +}; const editorReducer = (state: IEditorInitState, action: IEditorReducerActionType): IEditorInitState => { switch (action.type) { - case "updateEditor": - return {...state, editor: action.payload.editor} - case "updateMonaco": - return {...state, monaco: action.payload.monaco} - case "updateModels": - return {...state, models: action.payload.models} - case "updateModelIndex": - return {...state, modelIndex: action.payload.modelIndex} - case "setCodeParser": - return {...state, codeParser: action.payload.codeParser || {} as CodeParser} - case "updateCodeParserLoading": - return {...state, codeParserInitLoading: action.payload.codeParserInitLoading || false} + case 'updateEditor': + return { ...state, editor: action.payload.editor }; + case 'updateMonaco': + return { ...state, monaco: action.payload.monaco }; + case 'updateModels': + return { ...state, models: action.payload.models }; + case 'updateModelIndex': + return { ...state, modelIndex: action.payload.modelIndex }; + case 'setCodeParser': + return { ...state, codeParser: action.payload.codeParser || {} as CodeParser }; + case 'updateCodeParserLoading': + return { ...state, codeParserInitLoading: action.payload.codeParserInitLoading || false }; default: return state; } -} +}; const editorStateMap = new Map(); // TODO: 待删减拆分后的部分 // Editor Provider -export function EditorProvider({children, id}: { children: React.ReactNode, id: string }) { +export function EditorProvider({ children, id }: { children: React.ReactNode, id: string }) { const [state, dispatch] = useReducer>(editorReducer, editorInitState); - const vmProviderRef = useRef(null); const stateRef = useRef(state); // some provider need to access the state directly - const actions: TEditorReducerAction = useMemo(() => { - return { - updateEditor: (editor: BaseMonacoEditor) => dispatch({type: "updateEditor", payload: {editor}}), - updateMonaco: (monaco: typeof monacoForTypes) => dispatch({type: "updateMonaco", payload: {monaco}}), - updateModels: (models: ModelType[]) => dispatch({type: "updateModels", payload: {models}}), - updateModelIndex: (modelIndex: number) => dispatch({type: "updateModelIndex", payload: {modelIndex}}), - setCodeParser: (codeParser: CodeParser) => dispatch({type: "setCodeParser", payload: {codeParser}}), - updateCodeParserLoading: (codeParserInitLoading: boolean) => dispatch({ - type: "updateCodeParserLoading", - payload: {codeParserInitLoading} - }), - cleanModels: () => dispatch({type: "updateModels", payload: {models: []}}), - } - }, []) + const actions: TEditorReducerAction = useMemo(() => ({ + updateEditor: (editor: BaseMonacoEditor) => dispatch({ type: 'updateEditor', payload: { editor } }), + updateMonaco: (monaco: typeof monacoForTypes) => dispatch({ type: 'updateMonaco', payload: { monaco } }), + updateModels: (models: ModelType[]) => dispatch({ type: 'updateModels', payload: { models } }), + updateModelIndex: (modelIndex: number) => dispatch({ type: 'updateModelIndex', payload: { modelIndex } }), + setCodeParser: (codeParser: CodeParser) => dispatch({ type: 'setCodeParser', payload: { codeParser } }), + updateCodeParserLoading: (codeParserInitLoading: boolean) => dispatch({ + type: 'updateCodeParserLoading', + payload: { codeParserInitLoading }, + }), + cleanModels: () => dispatch({ type: 'updateModels', payload: { models: [] } }), + }), []); useEffect(() => { const oldState = editorStateMap.get(id) || {}; @@ -105,17 +103,16 @@ export function EditorProvider({children, id}: { children: React.ReactNode, id: stateRef.current = Object.assign(oldState, state || {}); }, [state, id]); + const contextState = useMemo(() => ({ + state, + dispatch, + stateRef, + actions, + id, + }), [state, dispatch, actions, id]); + return ( - + {children} ); @@ -125,7 +122,7 @@ export function useEditor() { const context = React.useContext(EditorContext); if (context === undefined) { - throw new Error("useEditor must be used withing a provider"); + throw new Error('useEditor must be used withing a provider'); } return context; diff --git a/packages/core/src/editor/index.tsx b/packages/core/src/editor/index.tsx index bcec173..ba8a825 100644 --- a/packages/core/src/editor/index.tsx +++ b/packages/core/src/editor/index.tsx @@ -1,19 +1,20 @@ -import React, {Dispatch, SetStateAction, useState} from 'react'; -import {Allotment} from "allotment"; -import {CommandLineIcon} from "@heroicons/react/24/outline"; -import merge from "lodash/merge"; - -import {ModelInfoType} from '../types/monaco'; -import FileNavBar from "../components/FileNavBar"; -import Console from "../components/Console"; -import DeployAndCall from "../components/DeployAndCall"; -import CssWrapper from "../components/CssWrapper"; - -import {EditorProvider} from './contexts/editorContext'; +import React, { useState } from 'react'; + +import { Allotment } from 'allotment'; +import { CommandLineIcon } from '@heroicons/react/24/outline'; +import merge from 'lodash/merge'; + +import { ModelInfoType } from '../types/monaco'; +import FileNavBar from '../components/FileNavBar'; +import Console from '../components/Console'; +import DeployAndCall from '../components/DeployAndCall'; +import CssWrapper from '../components/CssWrapper'; + +import { EditorProvider } from './contexts/editorContext'; import MonacoEditor from './monacoEditor'; -import {ConsoleProvider} from "./contexts/consoleContext"; -import {DeployedProvider} from "./contexts/deployedContext"; -import {RelayNetworkProvider} from "./contexts/relayNetworkContext"; +import { ConsoleProvider } from './contexts/consoleContext'; +import { DeployedProvider } from './contexts/deployedContext'; +import { RelayNetworkProvider } from './contexts/relayNetworkContext'; export type TConsoleProps = { defaultVisible?: boolean; @@ -55,29 +56,29 @@ const DefaultConsoleProps = { triggerControl: true, defaultVisible: true, minHeight: 78, - defaultHeight: "30%", -} + defaultHeight: '30%', +}; const DefaultDeployProps = { open: true, defaultVisible: true, maxWidth: 240, minWidth: 140, - defaultWidth: "200px" -} + defaultWidth: '200px', +}; const DefaultFileNavProps = { - open: true -} + open: true, +}; -const Main = (props: TEditorProps) => { +function Main(props: TEditorProps) { const { height, console = {}, deploy = {}, fileNav = {}, rounded = '12px', - modelInfos + modelInfos, } = props; const consoleProps = merge(DefaultConsoleProps, console); const deployProps = merge(DefaultDeployProps, deploy); @@ -90,16 +91,16 @@ const Main = (props: TEditorProps) => { if (index === 1) { setDeployVisible(value); } - } + }; const handleConsoleVisible = (index: number, value: boolean) => { if (index === 1) { setConsoleVisible(value); } - } + }; return ( -
+
{ {fileNavProps.open && ( { - setDeployVisible(old => !old); - setConsoleVisible(old => !old) - }}/> + setDeployVisible((old) => !old); + setConsoleVisible((old) => !old); + }} + /> )} - + {consoleProps.open && ( { preferredSize={consoleProps.defaultHeight} visible={consoleVisible} > - setConsoleVisible(false)}/> + setConsoleVisible(false)} /> )} {!consoleVisible && consoleProps.open && consoleProps.triggerControl && (
setConsoleVisible(true)} > - + Console
@@ -153,17 +157,18 @@ const Main = (props: TEditorProps) => { preferredSize={deployProps.defaultWidth} visible={deployVisible} > - + )}
- ) + ); } export default function Editor(props: TEditorProps) { + const { id } = props; return ( - + diff --git a/packages/core/src/editor/mountFunctions.ts b/packages/core/src/editor/mountFunctions.ts index 8bd1cf5..bc0d3fb 100644 --- a/packages/core/src/editor/mountFunctions.ts +++ b/packages/core/src/editor/mountFunctions.ts @@ -1,8 +1,8 @@ -import {Monaco} from '@monaco-editor/react'; -import {IPosition} from 'monaco-editor'; +import { Monaco } from '@monaco-editor/react'; +import { IPosition } from 'monaco-editor'; import * as helper from 'solive-compiler-utils'; -import {ErrorMarker} from 'solive-compiler-utils'; -import debounce from "lodash/debounce"; +import { ErrorMarker } from 'solive-compiler-utils'; +import debounce from 'lodash/debounce'; import { BaseMonacoEditor, @@ -12,26 +12,26 @@ import { SupportLanguage, } from '../types/monaco'; -import {IEditorInitState} from './contexts/editorContext'; -import {DefinitionProvider} from './providers/definition/provider'; +import { IEditorInitState } from './contexts/editorContext'; +import { DefinitionProvider } from './providers/definition/provider'; import { solidityLanguageConfig, solidityTokensProvider, } from './syntaxes/solidity'; -import {findModel} from './utils/model'; -import solidityFormatter from "./utils/format-code"; +import { findModel } from './utils/model'; +import solidityFormatter from './utils/format-code'; function initTheme(monaco: Monaco) { monaco.editor.defineTheme('myCustomTheme', { - "base": "vs-dark", - "inherit": true, - "rules": [], - "colors": { - "editor.foreground": "#ffffff", - "editor.background": "#1e293b", - "editor.selectionBackground": "#6280AC", - "editor.lineHighlightBackground": "#ffffff12", - } + base: 'vs-dark', + inherit: true, + rules: [], + colors: { + 'editor.foreground': '#ffffff', + 'editor.background': '#1e293b', + 'editor.selectionBackground': '#6280AC', + 'editor.lineHighlightBackground': '#ffffff12', + }, }); monaco.editor.setTheme('myCustomTheme'); } @@ -41,7 +41,7 @@ function initModels( editor: BaseMonacoEditor, modelInfos: ModelInfoType[], dispatch: any, - overWriteExisting = false + overWriteExisting = false, ) { addModels(monaco, editor, 0, modelInfos, [], dispatch, overWriteExisting); } @@ -49,28 +49,33 @@ function initModels( // this state link to the editor state function registerLangs(monaco: Monaco, state: IEditorInitState) { // Register a new language - monaco.languages.register({id: SupportLanguage.Solidity}); + monaco.languages.register({ id: SupportLanguage.Solidity }); // Register a tokens provider for the language monaco.languages.setMonarchTokensProvider( SupportLanguage.Solidity, - solidityTokensProvider as any + solidityTokensProvider as any, ); monaco.languages.setLanguageConfiguration( SupportLanguage.Solidity, - solidityLanguageConfig as any + solidityLanguageConfig as any, ); monaco.languages.registerDefinitionProvider( SupportLanguage.Solidity, - new DefinitionProvider(monaco, state) + new DefinitionProvider(monaco, state), ); registerFileCompletion(monaco); registerFileImports(monaco, state); } -function registerCommandsAndActions(monaco: Monaco, editor: BaseMonacoEditor, dispatch: any, stateRef: IEditorInitState) { +function registerCommandsAndActions( + monaco: Monaco, + editor: BaseMonacoEditor, + dispatch: any, + stateRef: IEditorInitState, +) { // save editor.addCommand(monaco.KeyMod.CtrlCmd | monaco.KeyCode.KeyS, () => { // save @@ -89,7 +94,7 @@ function registerCommandsAndActions(monaco: Monaco, editor: BaseMonacoEditor, di monaco.KeyMod.CtrlCmd | monaco.KeyCode.Equal, ], run: () => { - editor.updateOptions({fontSize: Number(editor.getOption(46)) + 1}); + editor.updateOptions({ fontSize: Number(editor.getOption(46)) + 1 }); }, }; const zoomOutAction = { @@ -102,7 +107,7 @@ function registerCommandsAndActions(monaco: Monaco, editor: BaseMonacoEditor, di monaco.KeyMod.CtrlCmd | monaco.KeyCode.Minus, ], run: () => { - editor.updateOptions({fontSize: Number(editor.getOption(46)) - 1}); + editor.updateOptions({ fontSize: Number(editor.getOption(46)) - 1 }); }, }; @@ -115,16 +120,17 @@ function registerCommandsAndActions(monaco: Monaco, editor: BaseMonacoEditor, di keybindings: [monaco.KeyMod.CtrlCmd | monaco.KeyCode.KeyF], // 绑定 Ctrl+F 或 Cmd+F 键作为快捷键 contextMenuGroupId: 'navigation', contextMenuOrder: 1.5, - run: function (editor: any) { - const unformattedCode = editor.getValue(); + run(_editor: any) { + const unformattedCode = _editor.getValue(); const formattedCode = solidityFormatter(unformattedCode); - editor.setValue(formattedCode); + _editor.setValue(formattedCode); }, }; editor.addAction(formatAction); // @ts-ignore + // eslint-disable-next-line no-underscore-dangle const editorService = editor._codeEditorService; const openEditorBase = editorService.openCodeEditor.bind(editorService); editorService.openCodeEditor = async (input: any, source: any) => { @@ -132,10 +138,11 @@ function registerCommandsAndActions(monaco: Monaco, editor: BaseMonacoEditor, di if (input && input.resource && input.resource.path) { try { if (input.options && input.options.selection) { - const path = input.resource.path.replace('/', '') - const nextModel = findModel(stateRef.models as ModelType[], path) - const nextModelIndex = stateRef.models?.findIndex(model => model.filename === path) - dispatch({type: "updateModelIndex", payload: {modelIndex: nextModelIndex}}); + const path = input.resource.path.replace('/', ''); + const nextModel = findModel(stateRef.models as ModelType[], path); + const nextModelIndex = stateRef.models?.findIndex((model) => model.filename === path); + dispatch({ type: 'updateModelIndex', payload: { modelIndex: nextModelIndex } }); + // @ts-ignore editor.setModel(nextModel?.model as any); editor.revealRange(input.options.selection); editor.setPosition({ @@ -170,18 +177,16 @@ function registerFileCompletion(monaco: Monaco) { }; const suggestions = [ - ...solidityTokensProvider.keywords.map((k) => { - return { - label: k, - kind: monaco.languages.CompletionItemKind.Keyword, - insertText: k, - range, - }; - }), + ...solidityTokensProvider.keywords.map((k) => ({ + label: k, + kind: monaco.languages.CompletionItemKind.Keyword, + insertText: k, + range, + })), ]; return { - suggestions: suggestions, + suggestions, } as any; }, }); @@ -200,7 +205,7 @@ function registerFileImports(monaco: Monaco, state: any) { const match = textUntilPosition.match(/import\s+/); if (!match) { - return {suggestions: []}; + return { suggestions: [] }; } const word = model.getWordUntilPosition(position); const range = { @@ -212,16 +217,14 @@ function registerFileImports(monaco: Monaco, state: any) { const suggestions = state.models .filter( - (m: any) => m.filename !== state.models[state.modelIndex].filename + (m: any) => m.filename !== state.models[state.modelIndex].filename, ) - .map((m: any) => { - return { - label: `./${m.filename}`, - kind: monaco.languages.CompletionItemKind.File, - insertText: `./${m.filename}`, - range, - }; - }); + .map((m: any) => ({ + label: `./${m.filename}`, + kind: monaco.languages.CompletionItemKind.File, + insertText: `./${m.filename}`, + range, + })); return { suggestions, @@ -233,7 +236,7 @@ function registerFileImports(monaco: Monaco, state: any) { function registerListeners( editor: BaseMonacoEditor, editorApi: EditorApi, - editorState: IEditorInitState + editorState: IEditorInitState, ) { const transformCompileError = async (data: { output: any; input: any }) => { const models = editorState?.models || []; @@ -253,30 +256,29 @@ function registerListeners( console.log(error); if (!error.sourceLocation) { const errorMarker = helper.createErrorMarker(error, curFile, { - start: {line: 0, column: 0}, - end: {line: 0, column: 100}, + start: { line: 0, column: 0 }, + end: { line: 0, column: 100 }, }); allErrors = [...allErrors, errorMarker]; } else { const lineBreaks = helper.getLinebreakPositions( - sources[error.sourceLocation.file].content + sources[error.sourceLocation.file].content, ); const lineColumn = helper.convertOffsetToLineColumn( { start: error.sourceLocation.start, length: error.sourceLocation.end - error.sourceLocation.start, }, - lineBreaks + lineBreaks, ); const filePath = error.sourceLocation.file; if (filePath !== curFile) { - const importFilePositions = - await helper.getPositionForImportErrors( - filePath, - curFileContent - ); + const importFilePositions = await helper.getPositionForImportErrors( + filePath, + curFileContent, + ); for (const importFilePosition of importFilePositions) { for (const line of importFilePosition.lines) { @@ -303,10 +305,8 @@ function registerListeners( const throttledCompile = debounce(async () => { editorState.codeParser.compilerService .compile() - .then((data: unknown) => - transformCompileError(data as unknown as { output: any; input: any }) - ); - }, 1000, {leading: true, trailing: true}); + .then((data: unknown) => transformCompileError(data as unknown as { output: any; input: any })); + }, 1000, { leading: true, trailing: true }); const registerListenErrorMarkers = () => { editor.onDidChangeModelContent(throttledCompile); @@ -324,31 +324,31 @@ function addModels( modelInfos: ModelInfoType[], currentModels: ModelType[], dispatch: any, - overWriteExisting = false + overWriteExisting = false, ) { const formatModels: any[] = []; for (const modelInfo of modelInfos) { let model = monaco.editor.getModel(monaco.Uri.file(modelInfo.filename)); - //If model not exist create, otherwise replace value (for editor resets). + // If model not exist create, otherwise replace value (for editor resets). if (model === null) { model = monaco.editor.createModel( modelInfo.value, modelInfo.language, - monaco.Uri.file(modelInfo.filename) + monaco.Uri.file(modelInfo.filename), ); monaco.editor.setModelLanguage(model, modelInfo.language); } else if (overWriteExisting) { model.setValue(modelInfo.value); } - model.updateOptions({tabSize: 2}); + model.updateOptions({ tabSize: 2 }); formatModels.push({ ...modelInfo, model, }); } - //undefined initially so ternary operator deals with edge case, useContext typing issue + // undefined initially so ternary operator deals with edge case, useContext typing issue dispatch({ type: 'updateModels', payload: { @@ -358,7 +358,7 @@ function addModels( const firstModelInfo = modelInfos[0]; const firstModel = formatModels[0]; - //The last model with initial true should be initial + // The last model with initial true should be initial if (!firstModelInfo?.notInitial) { // @ts-ignore editor.setModel(firstModel.model); @@ -374,7 +374,7 @@ function addModels( function getCursorPosition( monaco: Monaco, state: IEditorInitState, - offset = true + offset = true, ) { if (!monaco) return; const models = state?.models || []; @@ -382,12 +382,11 @@ function getCursorPosition( const model = models[index]?.model; if (model) { + // eslint-disable-next-line consistent-return return offset ? model.getOffsetAt(state.editor?.getPosition() as IPosition) : state.editor?.getPosition(); } - - return; } export { diff --git a/packages/core/src/editor/providers/definition/provider.ts b/packages/core/src/editor/providers/definition/provider.ts index 5d2e1bb..183d7ec 100644 --- a/packages/core/src/editor/providers/definition/provider.ts +++ b/packages/core/src/editor/providers/definition/provider.ts @@ -6,8 +6,9 @@ import { findModel } from '../../utils/model'; import { ModelType } from '../../../types/monaco'; export class DefinitionProvider - implements BaseMonaco.languages.DefinitionProvider { +implements BaseMonaco.languages.DefinitionProvider { monaco: Monaco; + state: IEditorInitState; constructor(monaco: Monaco, state: IEditorInitState) { @@ -18,17 +19,16 @@ export class DefinitionProvider provideDefinition( model: BaseMonaco.editor.ITextModel, position: BaseMonaco.Position, - token: BaseMonaco.CancellationToken ): BaseMonaco.languages.ProviderResult { // throw new Error('Method not implemented.'); - const line = model.getLineContent(position.lineNumber) - const wordAtPosition = model.getWordAtPosition(position); + const line = model.getLineContent(position.lineNumber); + // const wordAtPosition = model.getWordAtPosition(position); // 检测是否为import语句 - const checkResult = /import [',"].+[',"];/.test(line) + const checkResult = /import [',"].+[',"];/.test(line); if (checkResult) { - const filePath = line.match(new RegExp(`(?<=[',"])(.+?)(?=[',"])`, 'g')) - if (filePath === null) { return null } - const nextModel = findModel(this.state.models as ModelType[], filePath[0]?.replace('./', '')) + const filePath = line.match(new RegExp('(?<=[\',"])(.+?)(?=[\',"])', 'g')); + if (filePath === null) { return null; } + const nextModel = findModel(this.state.models as ModelType[], filePath[0]?.replace('./', '')); return { uri: nextModel?.model.uri as BaseMonaco.Uri, // uri: model.uri, @@ -39,8 +39,7 @@ export class DefinitionProvider endLineNumber: 1, }, }; - } else { - return null } + return null; } } diff --git a/packages/core/src/editor/utils/debounce.ts b/packages/core/src/editor/utils/debounce.ts index cd86289..d39f938 100644 --- a/packages/core/src/editor/utils/debounce.ts +++ b/packages/core/src/editor/utils/debounce.ts @@ -1,6 +1,6 @@ function debounce( func: (...args: any[]) => any, - delay: number + delay: number, ) { let timer: any = null; // 定时器 @@ -11,7 +11,8 @@ function debounce( // eslint-disable-next-line prefer-rest-params const args: any = arguments; // 函数参数 - //如果定时器存在,则清除定时器(如果没有,也没必要进行处理) + // 如果定时器存在,则清除定时器(如果没有,也没必要进行处理) + // eslint-disable-next-line no-unused-expressions timer ? clearTimeout(timer) : null; timer = setTimeout(() => { diff --git a/packages/core/src/editor/utils/deploy.ts b/packages/core/src/editor/utils/deploy.ts index ba29e01..5cbf9f1 100644 --- a/packages/core/src/editor/utils/deploy.ts +++ b/packages/core/src/editor/utils/deploy.ts @@ -1,23 +1,23 @@ -import {Contract, ContractInterface, ethers, providers} from 'ethers'; +import { + Contract, ContractInterface, ethers, providers, +} from 'ethers'; const deploy = async ( abi: ContractInterface, bytecode: string, signer: providers.JsonRpcSigner, callOptions: {value: number; gasLimit: number}, - args: any[] + args: any[], ): Promise => { const contractFactory = new ethers.ContractFactory(abi, bytecode, signer); const instance = await contractFactory.deploy(...(args || []), { gasLimit: callOptions.gasLimit, - value: ethers.utils.parseEther(callOptions.value + ''), + value: ethers.utils.parseEther(`${callOptions.value}`), }); await instance.deployTransaction.wait(); return instance; -} +}; -const getBytecode = (compiledContract: any) => { - return compiledContract.evm.bytecode.object; -} +// const getBytecode = (compiledContract: any) => compiledContract.evm.bytecode.object; export default deploy; diff --git a/packages/core/src/editor/utils/format-code.ts b/packages/core/src/editor/utils/format-code.ts index e1fc3f9..0eb6dac 100644 --- a/packages/core/src/editor/utils/format-code.ts +++ b/packages/core/src/editor/utils/format-code.ts @@ -1,7 +1,7 @@ function solidityFormatter(code: string) { const lines = code.split('\n'); let indentLevel = 0; - const formattedLines = lines.map(line => { + const formattedLines = lines.map((line) => { const trimmedLine = line.trim(); if (trimmedLine.startsWith('}')) { indentLevel -= 1; @@ -10,14 +10,14 @@ function solidityFormatter(code: string) { const indentedLine = ' '.repeat(indentLevel * 4) + trimmedLine; if ( - trimmedLine.startsWith('{') || - trimmedLine.endsWith('{') || - trimmedLine.startsWith('contract') || - trimmedLine.startsWith('library') || - trimmedLine.startsWith('interface') || - trimmedLine.startsWith('function') || - trimmedLine.startsWith('struct') || - trimmedLine.startsWith('event') + trimmedLine.startsWith('{') + || trimmedLine.endsWith('{') + || trimmedLine.startsWith('contract') + || trimmedLine.startsWith('library') + || trimmedLine.startsWith('interface') + || trimmedLine.startsWith('function') + || trimmedLine.startsWith('struct') + || trimmedLine.startsWith('event') ) { indentLevel += 1; } diff --git a/packages/core/src/editor/utils/model.ts b/packages/core/src/editor/utils/model.ts index 745d865..c5ce8dc 100644 --- a/packages/core/src/editor/utils/model.ts +++ b/packages/core/src/editor/utils/model.ts @@ -1,6 +1,6 @@ -import {ModelType} from '../../types/monaco'; +import { ModelType } from '../../types/monaco'; export const findModel = (models: ModelType[], filePath: string) => { // 由于该组件简单处理文件系统,不存在文件夹之类的路径,故:filePath就是filename - return models.find((model) => model.filename === filePath); + models.find((model) => model.filename === filePath); }; diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index b4ded36..941ff17 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -1,6 +1,6 @@ -import Editor from "./editor"; +import Editor from './editor'; -export * from "./types/monaco"; -export * from "./types/solidity"; +export * from './types/monaco'; +export * from './types/solidity'; export default Editor; diff --git a/packages/core/src/types/console.ts b/packages/core/src/types/console.ts index be89123..4c94c50 100644 --- a/packages/core/src/types/console.ts +++ b/packages/core/src/types/console.ts @@ -12,15 +12,11 @@ export type TConsoleMessage = { timestamp: number; } -export const createConsoleMessage = ({type, message}: TInputConsoleMessage): TConsoleMessage => { - return { - id: uniqueId(), - type, - message, - timestamp: Date.now(), - } -} +export const createConsoleMessage = ({ type, message }: TInputConsoleMessage): TConsoleMessage => ({ + id: uniqueId(), + type, + message, + timestamp: Date.now(), +}); -export const generateConsoleMessageToShow = (message: TConsoleMessage) => { - return `[${new Date(message.timestamp).toLocaleTimeString()}]: ${message.message}` -} +export const generateConsoleMessageToShow = (message: TConsoleMessage) => `[${new Date(message.timestamp).toLocaleTimeString()}]: ${message.message}`; diff --git a/packages/core/src/types/contract.ts b/packages/core/src/types/contract.ts index eda3732..492dad5 100644 --- a/packages/core/src/types/contract.ts +++ b/packages/core/src/types/contract.ts @@ -1,5 +1,4 @@ - -import {ContractInterface} from 'ethers'; +import { ContractInterface } from 'ethers'; export type TCompiledContract = { name: string; diff --git a/packages/core/src/types/monaco.ts b/packages/core/src/types/monaco.ts index 37fadc5..09a97c7 100644 --- a/packages/core/src/types/monaco.ts +++ b/packages/core/src/types/monaco.ts @@ -15,11 +15,17 @@ export enum SupportLanguage { export class ModelInfoType { notInitial?: boolean; + shown?: boolean; + readOnly?: boolean; + tested?: boolean; + filename = ''; + value = ''; + language: SupportLanguage = SupportLanguage.Solidity; constructor({ @@ -31,7 +37,7 @@ export class ModelInfoType { value = '', language = SupportLanguage.Solidity, }: Partial = {}) { - this.filename = filename; // TODO: 需要根据Editor ID做一个filename的唯一性处理,防止多组件情况下重复filename对原有model覆盖问题(核心问题在于monaco只有一个实例创建) + this.filename = filename; this.value = value; this.language = language; this.notInitial = notInitial; diff --git a/packages/docusaurus-plugin/.eslintrc.js b/packages/docusaurus-plugin/.eslintrc.js new file mode 100644 index 0000000..2719263 --- /dev/null +++ b/packages/docusaurus-plugin/.eslintrc.js @@ -0,0 +1,9 @@ +module.exports = { + extends: [ + '../../.eslintrc.js', + ], + rules: { + 'global-require': 'off', + 'import/no-dynamic-require': 'off', + }, +}; diff --git a/packages/docusaurus-plugin/src/client/index.ts b/packages/docusaurus-plugin/src/client/index.ts index 6535b03..93ff440 100644 --- a/packages/docusaurus-plugin/src/client/index.ts +++ b/packages/docusaurus-plugin/src/client/index.ts @@ -1 +1 @@ -export {useCodeblockThemeConfig} from './useCodeblockThemeConfig.js' +export { useCodeblockThemeConfig } from './useCodeblockThemeConfig'; diff --git a/packages/docusaurus-plugin/src/client/useCodeblockThemeConfig.ts b/packages/docusaurus-plugin/src/client/useCodeblockThemeConfig.ts index 94324bc..f88cd5f 100644 --- a/packages/docusaurus-plugin/src/client/useCodeblockThemeConfig.ts +++ b/packages/docusaurus-plugin/src/client/useCodeblockThemeConfig.ts @@ -1,19 +1,19 @@ -// @ts-ignore +// eslint-disable-next-line import/no-unresolved import useDocusaurusContext from '@docusaurus/useDocusaurusContext'; import type { ThemeConfig } from 'solive-docusaurus-theme-code'; const DEFAULT_THEME_CONFIG: ThemeConfig['codeblock'] = { - showGithubLink: true, - githubLinkLabel: 'View on GitHub', - showRunmeLink: false, - runmeLinkLabel: 'Checkout via Runme' -} + showGithubLink: true, + githubLinkLabel: 'View on GitHub', + showRunmeLink: false, + runmeLinkLabel: 'Checkout via Runme', +}; -const THEME_CONFIG_KEY = 'codeblock' +const THEME_CONFIG_KEY = 'codeblock'; export function useCodeblockThemeConfig(): ThemeConfig['codeblock'] { const { - siteConfig: {themeConfig}, + siteConfig: { themeConfig }, } = useDocusaurusContext(); return Object.assign(DEFAULT_THEME_CONFIG, themeConfig[THEME_CONFIG_KEY] || {}); } diff --git a/packages/docusaurus-plugin/src/index.ts b/packages/docusaurus-plugin/src/index.ts index bbb2880..1c276d2 100644 --- a/packages/docusaurus-plugin/src/index.ts +++ b/packages/docusaurus-plugin/src/index.ts @@ -5,43 +5,44 @@ * LICENSE file in the root directory of this source tree. */ -import path from 'path' +import path from 'path'; +// eslint-disable-next-line import/no-extraneous-dependencies import webpack from 'webpack'; export default () => ({ name: 'solive-docusaurus-theme-code', getThemePath() { - return path.resolve(__dirname, './theme') + return path.resolve(__dirname, './theme'); }, configureWebpack() { return { resolve: { fallback: { - "http": require.resolve("stream-http"), - "https": require.resolve("https-browserify"), - "crypto": require.resolve("crypto-browserify"), - "stream": require.resolve("stream-browserify"), - "path": require.resolve("path-browserify"), - "events": require.resolve("events/"), - "os": require.resolve("os-browserify/browser"), - "buffer": require.resolve("buffer/"), - "url": require.resolve("url/"), - "assert": require.resolve("assert/"), - "tty": require.resolve("tty-browserify"), - "util": require.resolve("util/"), - "zlib": require.resolve("browserify-zlib"), - "fs": false, + http: require.resolve('stream-http'), + https: require.resolve('https-browserify'), + crypto: require.resolve('crypto-browserify'), + stream: require.resolve('stream-browserify'), + path: require.resolve('path-browserify'), + events: require.resolve('events/'), + os: require.resolve('os-browserify/browser'), + buffer: require.resolve('buffer/'), + url: require.resolve('url/'), + assert: require.resolve('assert/'), + tty: require.resolve('tty-browserify'), + util: require.resolve('util/'), + zlib: require.resolve('browserify-zlib'), + fs: false, }, }, plugins: [ new webpack.ProvidePlugin({ - Buffer: ["buffer", "Buffer"], + Buffer: ['buffer', 'Buffer'], process: 'process/browser', }), - ] + ], }; }, -}) +}); diff --git a/packages/docusaurus-plugin/src/solive-docusaurus-theme-code.d.ts b/packages/docusaurus-plugin/src/solive-docusaurus-theme-code.d.ts index 0de78b3..a5f71c8 100644 --- a/packages/docusaurus-plugin/src/solive-docusaurus-theme-code.d.ts +++ b/packages/docusaurus-plugin/src/solive-docusaurus-theme-code.d.ts @@ -18,5 +18,6 @@ declare module 'solive-docusaurus-theme-code' { declare module 'solive-docusaurus-theme-code/client' { import type { ThemeConfig } from 'solive-docusaurus-theme-code'; + export function useCodeblockThemeConfig(): ThemeConfig['codeblock']; } diff --git a/packages/docusaurus-plugin/src/theme/CodeBlock/index.tsx b/packages/docusaurus-plugin/src/theme/CodeBlock/index.tsx index 449b4ed..6094a1c 100644 --- a/packages/docusaurus-plugin/src/theme/CodeBlock/index.tsx +++ b/packages/docusaurus-plugin/src/theme/CodeBlock/index.tsx @@ -5,30 +5,32 @@ * LICENSE file in the root directory of this source tree. */ -import React from 'react' -import CodeBlock from '@theme-init/CodeBlock' -import BrowserOnly from '@docusaurus/BrowserOnly'; +import React from 'react'; -import type {SoliveCodeBlockProps} from '../types' +import CodeBlock from '@theme-init/CodeBlock'; +import BrowserOnly from '@docusaurus/BrowserOnly'; -const componentWrapper = (Component: typeof CodeBlock) => { - const WrappedComponent = (props: SoliveCodeBlockProps) => { +import type { SoliveCodeBlockProps } from '../types'; - if (props.solive && typeof window !== 'undefined') { +const componentWrapper = () => { + function WrappedComponent(props: SoliveCodeBlockProps) { + const { solive } = props; + if (solive && typeof window !== 'undefined') { return ( Loading...
}> {() => { + // eslint-disable-next-line @typescript-eslint/no-var-requires,global-require const SoliveCodeBlock = require('../SoliveCodeBlock').default; return ; }} - ) + ); } - return - }; + return ; + } return WrappedComponent; }; -module.exports = componentWrapper(CodeBlock) +module.exports = componentWrapper(); diff --git a/packages/docusaurus-plugin/src/theme/SoliveCodeBlock/index.tsx b/packages/docusaurus-plugin/src/theme/SoliveCodeBlock/index.tsx index 004a724..b18e5ab 100644 --- a/packages/docusaurus-plugin/src/theme/SoliveCodeBlock/index.tsx +++ b/packages/docusaurus-plugin/src/theme/SoliveCodeBlock/index.tsx @@ -1,79 +1,78 @@ -import Editor from "solive-core"; -import React, {useMemo} from "react"; -import {v4 as uuidv4} from 'uuid'; +import React, { useMemo } from 'react'; + +import Editor from 'solive-core'; +import { v4 as uuidv4 } from 'uuid'; import 'solive-core/dist/index.css'; -import {SoliveCodeBlockProps} from '../types' -import {matchProps} from "../utils/match-props"; -import resolveMeta from "../utils/resolve-meta"; -import transformModel from "../utils/transform-model"; +import { SoliveCodeBlockProps } from '../types'; +import { matchProps } from '../utils/match-props'; +import resolveMeta from '../utils/resolve-meta'; +import transformModel from '../utils/transform-model'; const PropsInfo = { width: { type: 'string', - default: '90%' + default: '90%', }, height: { type: 'string', - default: '500px' + default: '500px', }, fileNavOpen: { type: 'boolean', - default: true + default: true, }, consoleOpen: { type: 'boolean', - default: true + default: true, }, deployOpen: { type: 'boolean', - default: true + default: true, }, consoleTriggerControl: { type: 'boolean', - default: false + default: false, }, consoleDefaultVisible: { type: 'boolean', - default: false + default: false, }, deployDefaultVisible: { type: 'boolean', - default: false - } -} + default: false, + }, +}; -const SoliveCodeBlock = (props: SoliveCodeBlockProps) => { - const {metastring} = props; - const allProps = matchProps(metastring?.split("solive")[1] || "", PropsInfo); +function SoliveCodeBlock(props: SoliveCodeBlockProps) { + const { metastring, children } = props; + const allProps = matchProps(metastring?.split('solive')[1] || '', PropsInfo); const id = useMemo(() => uuidv4(), []); - const modelInfos = useMemo(() => transformModel(resolveMeta(props.children)), [props.children]); - - console.log(modelInfos); + const modelInfos = useMemo(() => transformModel(resolveMeta(children)), [children]); return ( -
- +
+
- ) + ); } export default SoliveCodeBlock; diff --git a/packages/docusaurus-plugin/src/theme/types.ts b/packages/docusaurus-plugin/src/theme/types.ts index 8f27037..86a0726 100644 --- a/packages/docusaurus-plugin/src/theme/types.ts +++ b/packages/docusaurus-plugin/src/theme/types.ts @@ -1,4 +1,4 @@ -import type {Props} from '@theme-init/CodeBlock' +import type { Props } from '@theme-init/CodeBlock'; export interface SoliveCodeBlockProps extends Props { solive: string; diff --git a/packages/docusaurus-plugin/src/theme/utils/format-code.ts b/packages/docusaurus-plugin/src/theme/utils/format-code.ts index e1fc3f9..0eb6dac 100644 --- a/packages/docusaurus-plugin/src/theme/utils/format-code.ts +++ b/packages/docusaurus-plugin/src/theme/utils/format-code.ts @@ -1,7 +1,7 @@ function solidityFormatter(code: string) { const lines = code.split('\n'); let indentLevel = 0; - const formattedLines = lines.map(line => { + const formattedLines = lines.map((line) => { const trimmedLine = line.trim(); if (trimmedLine.startsWith('}')) { indentLevel -= 1; @@ -10,14 +10,14 @@ function solidityFormatter(code: string) { const indentedLine = ' '.repeat(indentLevel * 4) + trimmedLine; if ( - trimmedLine.startsWith('{') || - trimmedLine.endsWith('{') || - trimmedLine.startsWith('contract') || - trimmedLine.startsWith('library') || - trimmedLine.startsWith('interface') || - trimmedLine.startsWith('function') || - trimmedLine.startsWith('struct') || - trimmedLine.startsWith('event') + trimmedLine.startsWith('{') + || trimmedLine.endsWith('{') + || trimmedLine.startsWith('contract') + || trimmedLine.startsWith('library') + || trimmedLine.startsWith('interface') + || trimmedLine.startsWith('function') + || trimmedLine.startsWith('struct') + || trimmedLine.startsWith('event') ) { indentLevel += 1; } diff --git a/packages/docusaurus-plugin/src/theme/utils/match-props.ts b/packages/docusaurus-plugin/src/theme/utils/match-props.ts index 7f0b4ec..856655b 100644 --- a/packages/docusaurus-plugin/src/theme/utils/match-props.ts +++ b/packages/docusaurus-plugin/src/theme/utils/match-props.ts @@ -26,12 +26,13 @@ export const coerceValue = (value: string, type: TPropType) => { default: return value; } -} +}; export const matchProps = (metaString: string, propsInfo: TPropsInfo): TResultProps => { const dynamicRex = /(?[^=]+)="(?[^"]*)"/g; const props: any = {}; let match; + // eslint-disable-next-line no-cond-assign while ((match = dynamicRex.exec(metaString)) !== null) { const { key, value } = match.groups as any; const keyName = key.trim(); @@ -44,7 +45,7 @@ export const matchProps = (metaString: string, propsInfo: TPropsInfo): TResultPr if (props[key] === undefined) { props[key] = propsInfo[key].default; } - }) + }); return props; -} +}; diff --git a/packages/docusaurus-plugin/src/theme/utils/resolve-meta.ts b/packages/docusaurus-plugin/src/theme/utils/resolve-meta.ts index 9833ee8..c57cdc3 100644 --- a/packages/docusaurus-plugin/src/theme/utils/resolve-meta.ts +++ b/packages/docusaurus-plugin/src/theme/utils/resolve-meta.ts @@ -1,4 +1,4 @@ -import singleFilename from "./single-filename"; +import singleFilename from './single-filename'; export type TMeta = { filename?: string; @@ -10,30 +10,25 @@ function parseContent(content: string) { const filenames = []; let match; + // eslint-disable-next-line no-cond-assign while ((match = regex.exec(content)) !== null) { filenames.push(match[1]); } const contracts = content.split(regex).filter((_, index) => index % 2 === 0).slice(1); - const result = filenames.map((filename, index) => { - return { - filename: filename, - content: contracts[index].trim(), - }; - }); - - return result; + return filenames.map((filename, index) => ({ + filename, + content: contracts[index].trim(), + })); } const resolveMeta = (content: string): TMeta[] => { const files = parseContent(content).filter((file) => file.filename); - console.log(files); if (files.length === 0) { return [{ filename: singleFilename(), content }]; } - return files; -} +}; export default resolveMeta; diff --git a/packages/docusaurus-plugin/src/theme/utils/single-filename.ts b/packages/docusaurus-plugin/src/theme/utils/single-filename.ts index 5d2a1d0..cfb6b54 100644 --- a/packages/docusaurus-plugin/src/theme/utils/single-filename.ts +++ b/packages/docusaurus-plugin/src/theme/utils/single-filename.ts @@ -1,7 +1,5 @@ let id = 1; -const singleFilename = () => { - return `solive-${id++}.sol`; -} +const singleFilename = () => `solive-${id++}.sol`; export default singleFilename; diff --git a/packages/docusaurus-plugin/src/theme/utils/transform-model.ts b/packages/docusaurus-plugin/src/theme/utils/transform-model.ts index cbf6739..ae993d9 100644 --- a/packages/docusaurus-plugin/src/theme/utils/transform-model.ts +++ b/packages/docusaurus-plugin/src/theme/utils/transform-model.ts @@ -1,15 +1,13 @@ -import {SupportLanguage} from "solive-core"; -import {ModelInfoType} from "solive-core/src"; +import { SupportLanguage } from 'solive-core'; +import { ModelInfoType } from 'solive-core/src'; -import {TMeta} from "./resolve-meta"; -import solidityFormatter from "./format-code"; +import { TMeta } from './resolve-meta'; +import solidityFormatter from './format-code'; -const transformModel = (metas: TMeta[]) => { - return metas.map(meta => new ModelInfoType({ - filename: meta.filename, - value: solidityFormatter(meta.content), - language: SupportLanguage.Solidity, - })) -} +const transformModel = (metas: TMeta[]) => metas.map((meta) => new ModelInfoType({ + filename: meta.filename, + value: solidityFormatter(meta.content), + language: SupportLanguage.Solidity, +})); export default transformModel; diff --git a/packages/docusaurus-plugin/src/types.d.ts b/packages/docusaurus-plugin/src/types.d.ts index cd20cc6..c341d9c 100644 --- a/packages/docusaurus-plugin/src/types.d.ts +++ b/packages/docusaurus-plugin/src/types.d.ts @@ -3,6 +3,6 @@ /// declare module '@docusaurus/BrowserOnly' { - const FC: React.FC & PropsWithChildren - export default FC + const FC: React.FC & React.PropsWithChildren; + export default FC; } diff --git a/packages/docusaurus-plugin/tsconfig.json b/packages/docusaurus-plugin/tsconfig.json index 2bcd3c2..3d3c1b5 100644 --- a/packages/docusaurus-plugin/tsconfig.json +++ b/packages/docusaurus-plugin/tsconfig.json @@ -7,5 +7,7 @@ "rootDir": "./src", "baseUrl": "./" }, - "include": ["src"], + "include": [ + "src/**/*" + ] } diff --git a/packages/provider/src/index.ts b/packages/provider/src/index.ts index 867ec50..1f28086 100644 --- a/packages/provider/src/index.ts +++ b/packages/provider/src/index.ts @@ -1,5 +1,5 @@ -import {Hardfork} from "@ethereumjs/common"; -import {providers} from "ethers"; +import { Hardfork } from '@ethereumjs/common'; +import { providers } from 'ethers'; type TVmProviderParams = { fork?: Hardfork; @@ -9,46 +9,45 @@ let workCache: Worker | null = null; class VmProvider { worker: Worker; + provider: providers.JsonRpcProvider; - constructor({fork = Hardfork.London}: TVmProviderParams) { + constructor({ fork = Hardfork.London }: TVmProviderParams) { // @ts-ignore - this.worker = workCache ? workCache : workCache = new Worker(new URL('./worker.js', import.meta.url), {type: "module"}) + this.worker = workCache || (workCache = new Worker(new URL('./worker.js', import.meta.url), { type: 'module' })); this.worker.postMessage({ cmd: 'init', fork }); - console.log("init"); + console.log('init'); - let incr = 0 - const stamps: any = {} + let incr = 0; + const stamps: any = {}; this.worker.addEventListener('message', (msg) => { if (stamps[msg.data.stamp]) { - stamps[msg.data.stamp](JSON.parse(msg.data.error), msg.data.result) + stamps[msg.data.stamp](JSON.parse(msg.data.error), msg.data.result); } - }) + }); const provider = { sendAsync: (query: any, callback: any) => { - const stamp = Date.now() + incr - incr++ - stamps[stamp] = callback - this.worker.postMessage({ cmd: 'sendAsync', query, stamp }) - } - } + const stamp = Date.now() + incr; + incr++; + stamps[stamp] = callback; + this.worker.postMessage({ cmd: 'sendAsync', query, stamp }); + }, + }; this.provider = new providers.Web3Provider(provider); } async getAccounts() { - return await this.provider.listAccounts() + return this.provider.listAccounts(); } async getSigner(address: string) { - return this.provider.getSigner(address) + return this.provider.getSigner(address); } async getBalances(addresses: string[]) { - return await Promise.all(addresses.map(async (address) => { - return await this.provider.getBalance(address) - })) + return Promise.all(addresses.map(async (address) => this.provider.getBalance(address))); } } diff --git a/packages/provider/src/worker.ts b/packages/provider/src/worker.ts index 810f47d..10912ba 100644 --- a/packages/provider/src/worker.ts +++ b/packages/provider/src/worker.ts @@ -1,36 +1,37 @@ import { Provider } from '@remix-project/remix-simulator'; -let provider: Provider | null = null -self.onmessage = (e: MessageEvent) => { - const data = e.data +let provider: Provider | null = null; +globalThis.onmessage = (e: MessageEvent) => { + const { data } = e; + // eslint-disable-next-line default-case switch (data.cmd) { case 'init': { - provider = new Provider({ fork: data.fork }) - if (provider) provider.init().then() - break + provider = new Provider({ fork: data.fork }); + if (provider) provider.init().then(); + break; } case 'sendAsync': { if (provider) { provider.sendAsync(data.query, (error: any, result: any) => { - self.postMessage({ + globalThis.postMessage({ cmd: 'sendAsyncResult', error: JSON.stringify(error), result, - stamp: data.stamp - }) - }) + stamp: data.stamp, + }); + }); } else { - self.postMessage({ + globalThis.postMessage({ cmd: 'sendAsyncResult', error: 'Provider not instantiated', result: null, - stamp: data.stamp - }) + stamp: data.stamp, + }); } - break + break; } } -} +}; diff --git a/packages/solc/src/index.ts b/packages/solc/src/index.ts index c93fdbb..6f56b07 100644 --- a/packages/solc/src/index.ts +++ b/packages/solc/src/index.ts @@ -1,4 +1,4 @@ -export * from "./types"; +export * from './types'; const workerMap = new Map(); @@ -9,17 +9,17 @@ export const solidityCompiler = async ( }: { version: string; input: any; - } + }, ) => { // eslint-disable-next-line prefer-const let oldWorkerInfo = workerMap.get(version); let worker: Worker = {} as Worker; if (oldWorkerInfo) { - const timestamp = oldWorkerInfo.timestamp; + // const { timestamp } = oldWorkerInfo; worker = oldWorkerInfo.worker; } else { - worker = new Worker(new URL('./worker.js', import.meta.url), {type: 'module'}); - worker.postMessage({type: 'init-solc', version: version}) + worker = new Worker(new URL('./worker.js', import.meta.url), { type: 'module' }); + worker.postMessage({ type: 'init-solc', version }); workerMap.set(version, { worker, version, @@ -28,8 +28,8 @@ export const solidityCompiler = async ( } return new Promise((resolve, reject) => { - worker.postMessage({input: JSON.stringify(input), version}); - worker.onmessage = function ({data}: any) { + worker.postMessage({ input: JSON.stringify(input), version }); + worker.onmessage = function ({ data }: any) { resolve(data); }; worker.onerror = reject; @@ -37,10 +37,10 @@ export const solidityCompiler = async ( }; export const getCompilerVersions = async () => { - const worker = new Worker(new URL('./worker.js', import.meta.url), {type: 'module'}); + const worker = new Worker(new URL('./worker.js', import.meta.url), { type: 'module' }); return new Promise((resolve, reject) => { - worker.postMessage("fetch-compiler-versions"); - worker.onmessage = function ({data}) { + worker.postMessage('fetch-compiler-versions'); + worker.onmessage = function ({ data }) { resolve(data); }; worker.onerror = reject; diff --git a/packages/solc/src/script.ts b/packages/solc/src/script.ts deleted file mode 100644 index fb27b0a..0000000 --- a/packages/solc/src/script.ts +++ /dev/null @@ -1,3 +0,0 @@ -export function test() { - console.log('This is a test function from script.ts'); -} diff --git a/packages/solc/src/solc.d.ts b/packages/solc/src/solc.d.ts index ee074ca..a98b967 100644 --- a/packages/solc/src/solc.d.ts +++ b/packages/solc/src/solc.d.ts @@ -1,6 +1,6 @@ -declare module "solc"; -declare module "solc/abi"; -declare module "solc/wrapper"; +declare module 'solc'; +declare module 'solc/abi'; +declare module 'solc/wrapper'; // declare window['Module'] declare let Module: any; diff --git a/packages/solc/src/types.ts b/packages/solc/src/types.ts index fc641ce..ba02243 100644 --- a/packages/solc/src/types.ts +++ b/packages/solc/src/types.ts @@ -1,17 +1,17 @@ export type EVMVersion = - | "homestead" - | "tangerineWhistle" - | "spuriousDragon" - | "byzantium" - | "constantinople" - | "petersburg" - | "istanbul" - | "berlin" - | "london" - | "paris" + | 'homestead' + | 'tangerineWhistle' + | 'spuriousDragon' + | 'byzantium' + | 'constantinople' + | 'petersburg' + | 'istanbul' + | 'berlin' + | 'london' + | 'paris' | null; -export type Language = "Solidity" | "Yul"; +export type Language = 'Solidity' | 'Yul'; export type Source = { [fileName: string]: { @@ -81,7 +81,7 @@ export type CompilerInput = { // "strip" removes all revert strings (if possible, i.e. if literals are used) keeping side-effects // "debug" injects strings for compiler-generated internal reverts (not yet implemented) // "verboseDebug" even appends further information to user-supplied revert strings (not yet implemented) - revertStrings: "default" | "strip" | "debug" | "verboseDebug"; + revertStrings: 'default' | 'strip' | 'debug' | 'verboseDebug'; }; // Metadata settings (optional) metadata?: { @@ -91,7 +91,7 @@ export type CompilerInput = { // The metadata hash can be removed from the bytecode via option "none". // The other options are "ipfs" and "bzzr1". // If the option is omitted, "ipfs" is used by default. - bytecodeHash: "ipfs" | "bzzr1" | "none"; + bytecodeHash: 'ipfs' | 'bzzr1' | 'none'; }; // Addresses of the libraries. If not all libraries are given here, // it can result in unlinked objects whose output data is different. @@ -145,20 +145,20 @@ export type CompilerInput = { // target part of that output. Additionally, `*` can be used as a wildcard to request everything. // outputSelection?: { - "*": { - "": ["ast"]; - "*": [ - "abi", - "metadata", - "devdoc", - "userdoc", - "storageLayout", - "evm.legacyAssembly", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "evm.gasEstimates", - "evm.assembly" + '*': { + '': ['ast']; + '*': [ + 'abi', + 'metadata', + 'devdoc', + 'userdoc', + 'storageLayout', + 'evm.legacyAssembly', + 'evm.bytecode', + 'evm.deployedBytecode', + 'evm.methodIdentifiers', + 'evm.gasEstimates', + 'evm.assembly' ]; }; }; diff --git a/packages/solc/src/worker.ts b/packages/solc/src/worker.ts index 500b20a..b6cc260 100644 --- a/packages/solc/src/worker.ts +++ b/packages/solc/src/worker.ts @@ -1,39 +1,33 @@ -import { test } from './script'; - -console.log('Worker script loaded'); const importVersions: any[] = []; // 在 Main Thread 中 postMessage 消息,Worker 中 "message" 事件监听函数会接收到对应的事件。 -addEventListener("message", ({ data }) => { - if (data === "fetch-compiler-versions") { - fetch("https://binaries.soliditylang.org/bin/list.json") +globalThis.addEventListener('message', ({ data }) => { + if (data === 'fetch-compiler-versions') { + fetch('https://binaries.soliditylang.org/bin/list.json') .then((response) => response.json()) .then((result) => { // @ts-ignore - postMessage(result); + globalThis.postMessage(result); }); - } else if (data.type === "init-solc") { + } else if (data.type === 'init-solc') { const jsUri = data.version; - console.log(jsUri); - - importScripts(jsUri); + globalThis.importScripts(jsUri); } else { // version find in https://github.com/ethereum/solc-bin/tree/gh-pages/bin // @ts-ignore - const soljson = self.Module; + const soljson = globalThis.Module; - if (soljson && "_solidity_compile" in soljson) { - console.log('load success'); + if (soljson && '_solidity_compile' in soljson) { if (!importVersions.includes(data.version)) { importVersions.push(data.version); } - const compile = soljson.cwrap("solidity_compile", "string", [ - "string", - "number", + const compile = soljson.cwrap('solidity_compile', 'string', [ + 'string', + 'number', ]); const output = JSON.parse(compile(data.input)); // @ts-ignore - postMessage({ + globalThis.postMessage({ output, input: data.input && JSON.parse(data.input), }); diff --git a/packages/solc/tsconfig.json b/packages/solc/tsconfig.json index 06c73d1..5e7f388 100644 --- a/packages/solc/tsconfig.json +++ b/packages/solc/tsconfig.json @@ -3,7 +3,8 @@ "compilerOptions": { "baseUrl": "./", "outDir": "dist", - "declarationDir": "dist" + "declarationDir": "dist", + "isolatedModules": false }, "include": ["src", "**/*.json"] } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1ce8e3b..2777151 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -14,16 +14,20 @@ importers: '@rollup/plugin-typescript': ^11.0.0 '@tsconfig/node16-strictest-esm': ^1.0.1 '@types/node': 17.0.41 - '@typescript-eslint/eslint-plugin': ^5.39.0 - '@typescript-eslint/parser': ^5.39.0 - eslint: ^8.25.0 + '@typescript-eslint/eslint-plugin': ^5.57.1 + '@typescript-eslint/parser': ^5.57.1 + eslint: ^8.37.0 + eslint-config-airbnb: ^19.0.4 eslint-config-prettier: ^8.5.0 eslint-define-config: ^1.5.1 eslint-import-resolver-typescript: ^2.7.1 - eslint-plugin-import: ^2.26.0 + eslint-plugin-import: ^2.27.5 + eslint-plugin-jsx-a11y: ^6.7.1 eslint-plugin-prettier: ^4.2.1 - husky: ^8.0.1 - lint-staged: ^13.0.3 + eslint-plugin-react: ^7.32.2 + eslint-plugin-react-hooks: ^4.6.0 + husky: ^8.0.3 + lint-staged: ^13.2.0 nx: ^15.0.0 postcss: ^8 postcss-cli: ^8 @@ -56,10 +60,14 @@ importers: '@typescript-eslint/eslint-plugin': 5.57.1_iify4w3mi7rbbu6mxzspkpx4b4 '@typescript-eslint/parser': 5.57.1_ip5up2nocltd47wbnuyybe5dxu eslint: 8.37.0 + eslint-config-airbnb: r2.cnpmjs.org/eslint-config-airbnb/19.0.4_m7fpnnvzewd4bw2kt67dqtucga eslint-config-prettier: 8.8.0_eslint@8.37.0 eslint-define-config: 1.17.0 eslint-import-resolver-typescript: 2.7.1_rbts4wm34tb3x7owcp777e4f4y eslint-plugin-import: 2.27.5_yo7k32idqwcpvt57tyfdxls5fe + eslint-plugin-jsx-a11y: 6.7.1_eslint@8.37.0 + eslint-plugin-react: 7.32.2_eslint@8.37.0 + eslint-plugin-react-hooks: 4.6.0_eslint@8.37.0 husky: 8.0.3 lint-staged: 13.2.0 nx: 15.9.2 @@ -207,7 +215,7 @@ importers: postcss: 8.4.21 react: 18.2.0 react-dom: 18.2.0 - solive-core: workspace:0.0.1-aplha + solive-core: workspace:* tailwindcss: 3.3.1 typescript: 5.0.4 dependencies: @@ -313,7 +321,9 @@ importers: packages/docusaurus-plugin: specifiers: - '@docusaurus/types': ^2.3.1 + '@docusaurus/core': 2.4.0 + '@docusaurus/module-type-aliases': 2.3.0 + '@docusaurus/types': ^2.4.0 '@types/node': ^17.0.38 '@types/react': ^18.0.0 '@types/uuid': ^8.3.1 @@ -327,10 +337,12 @@ importers: uuid: ^8.3.2 webpack: ^5.77.0 dependencies: - '@docusaurus/types': 2.4.0_biqbaboplfbrettd7655fr4n2y solive-core: link:../core uuid: r2.cnpmjs.org/uuid/8.3.2 devDependencies: + '@docusaurus/core': 2.4.0_ar3n4337epqx2w5icpz6n4flvi + '@docusaurus/module-type-aliases': 2.3.0_biqbaboplfbrettd7655fr4n2y + '@docusaurus/types': 2.4.0_biqbaboplfbrettd7655fr4n2y '@types/node': 17.0.41 '@types/react': 18.0.33 '@types/uuid': 8.3.4 @@ -1288,7 +1300,6 @@ packages: dependencies: '@babel/core': r2.cnpmjs.org/@babel/core/7.12.9 '@babel/helper-plugin-utils': 7.20.2 - dev: false /@babel/plugin-transform-parameters/7.21.3_@babel+core@7.21.4: resolution: {integrity: sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ==} @@ -1316,7 +1327,6 @@ packages: dependencies: '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - dev: false /@babel/plugin-transform-react-display-name/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==} @@ -1326,7 +1336,6 @@ packages: dependencies: '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - dev: false /@babel/plugin-transform-react-jsx-development/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==} @@ -1336,7 +1345,6 @@ packages: dependencies: '@babel/core': 7.21.4 '@babel/plugin-transform-react-jsx': 7.21.0_@babel+core@7.21.4 - dev: false /@babel/plugin-transform-react-jsx/7.21.0_@babel+core@7.21.4: resolution: {integrity: sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==} @@ -1350,7 +1358,6 @@ packages: '@babel/helper-plugin-utils': 7.20.2 '@babel/plugin-syntax-jsx': 7.21.4_@babel+core@7.21.4 '@babel/types': 7.21.4 - dev: false /@babel/plugin-transform-react-pure-annotations/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==} @@ -1361,7 +1368,6 @@ packages: '@babel/core': 7.21.4 '@babel/helper-annotate-as-pure': 7.18.6 '@babel/helper-plugin-utils': 7.20.2 - dev: false /@babel/plugin-transform-regenerator/7.20.5_@babel+core@7.21.4: resolution: {integrity: sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==} @@ -1397,7 +1403,6 @@ packages: semver: r2.cnpmjs.org/semver/6.3.0 transitivePeerDependencies: - supports-color - dev: false /@babel/plugin-transform-shorthand-properties/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==} @@ -1576,7 +1581,6 @@ packages: '@babel/plugin-transform-react-jsx': 7.21.0_@babel+core@7.21.4 '@babel/plugin-transform-react-jsx-development': 7.18.6_@babel+core@7.21.4 '@babel/plugin-transform-react-pure-annotations': 7.18.6_@babel+core@7.21.4 - dev: false /@babel/preset-typescript/7.21.4_@babel+core@7.21.4: resolution: {integrity: sha512-sMLNWY37TCdRH/bJ6ZeeOH1nPuanED7Ai9Y/vH31IPqalioJ6ZNFUWONsakhv4r4n+I6gm5lmoE0olkgib/j/A==} @@ -1602,7 +1606,6 @@ packages: dependencies: core-js-pure: 3.30.0 regenerator-runtime: 0.13.11 - dev: false /@babel/runtime/7.21.0: resolution: {integrity: sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==} @@ -1833,7 +1836,6 @@ packages: resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} engines: {node: '>=0.1.90'} requiresBuild: true - dev: false optional: true /@craco/craco/7.1.0_uaemxlzga3znd5u3dmtbp5hl4i: @@ -2022,7 +2024,6 @@ packages: /@discoveryjs/json-ext/0.5.7: resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} engines: {node: '>=10.0.0'} - dev: false /@docsearch/css/3.3.3: resolution: {integrity: sha512-6SCwI7P8ao+se1TUsdZ7B4XzL+gqeQZnBc+2EONZlcVa0dVrk0NjETxozFKgMv0eEGH8QzP1fkN+A1rH61l4eg==} @@ -2052,6 +2053,108 @@ packages: - '@algolia/client-search' dev: false + /@docusaurus/core/2.4.0_ar3n4337epqx2w5icpz6n4flvi: + resolution: {integrity: sha512-J55/WEoIpRcLf3afO5POHPguVZosKmJEQWKBL+K7TAnfuE7i+Y0NPLlkKtnWCehagGsgTqClfQEexH/UT4kELA==} + engines: {node: '>=16.14'} + hasBin: true + peerDependencies: + react: ^16.8.4 || ^17.0.0 + react-dom: ^16.8.4 || ^17.0.0 + dependencies: + '@babel/core': 7.21.4 + '@babel/generator': 7.21.4 + '@babel/plugin-syntax-dynamic-import': r2.cnpmjs.org/@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.21.4 + '@babel/plugin-transform-runtime': 7.21.4_@babel+core@7.21.4 + '@babel/preset-env': 7.21.4_@babel+core@7.21.4 + '@babel/preset-react': 7.18.6_@babel+core@7.21.4 + '@babel/preset-typescript': 7.21.4_@babel+core@7.21.4 + '@babel/runtime': 7.21.0 + '@babel/runtime-corejs3': 7.21.0 + '@babel/traverse': 7.21.4 + '@docusaurus/cssnano-preset': 2.4.0 + '@docusaurus/logger': 2.4.0 + '@docusaurus/mdx-loader': 2.4.0_wuolo4jlwz75wl2aegq7g4cyju + '@docusaurus/react-loadable': r2.cnpmjs.org/@docusaurus/react-loadable/5.5.2_react@18.2.0 + '@docusaurus/utils': 2.4.0_@docusaurus+types@2.4.0 + '@docusaurus/utils-common': 2.4.0_@docusaurus+types@2.4.0 + '@docusaurus/utils-validation': 2.4.0_@docusaurus+types@2.4.0 + '@slorber/static-site-generator-webpack-plugin': 4.0.7 + '@svgr/webpack': 6.5.1 + autoprefixer: 10.4.14_postcss@8.4.21 + babel-loader: 8.3.0_kh7tlia7ljiqfn7rrvxklxkh5i + babel-plugin-dynamic-import-node: r2.cnpmjs.org/babel-plugin-dynamic-import-node/2.3.3 + boxen: r2.cnpmjs.org/boxen/6.2.1 + chalk: r2.cnpmjs.org/chalk/4.1.2 + chokidar: 3.5.3 + clean-css: 5.3.2 + cli-table3: 0.6.3 + combine-promises: r2.cnpmjs.org/combine-promises/1.1.0 + commander: r2.cnpmjs.org/commander/5.1.0 + copy-webpack-plugin: 11.0.0_webpack@5.77.0 + core-js: 3.30.0 + css-loader: 6.7.3_webpack@5.77.0 + css-minimizer-webpack-plugin: 4.2.2_beycc4qzskqfk37erfb27smw3y + cssnano: 5.1.15_postcss@8.4.21 + del: 6.1.1 + detect-port: 1.5.1 + escape-html: r2.cnpmjs.org/escape-html/1.0.3 + eta: 2.0.1 + file-loader: r2.cnpmjs.org/file-loader/6.2.0_webpack@5.77.0 + fs-extra: 10.1.0 + html-minifier-terser: r2.cnpmjs.org/html-minifier-terser/6.1.0 + html-tags: 3.3.1 + html-webpack-plugin: r2.cnpmjs.org/html-webpack-plugin/5.5.0_webpack@5.77.0 + import-fresh: r2.cnpmjs.org/import-fresh/3.3.0 + leven: r2.cnpmjs.org/leven/3.1.0 + lodash: r2.cnpmjs.org/lodash/4.17.21 + mini-css-extract-plugin: 2.7.5_webpack@5.77.0 + postcss: 8.4.21 + postcss-loader: 7.2.4_ymb7rd6tkzh43qbqmamtlwgxzq + prompts: r2.cnpmjs.org/prompts/2.4.2 + react: 18.2.0 + react-dev-utils: 12.0.1_lmihoaokjodojihym2ybosltk4 + react-dom: 18.2.0_react@18.2.0 + react-helmet-async: 1.3.0_biqbaboplfbrettd7655fr4n2y + react-loadable: r2.cnpmjs.org/@docusaurus/react-loadable/5.5.2_react@18.2.0 + react-loadable-ssr-addon-v5-slorber: r2.cnpmjs.org/react-loadable-ssr-addon-v5-slorber/1.0.1_g3o3v7qydpv4pdkxsoov4wje5i + react-router: 5.3.4_react@18.2.0 + react-router-config: r2.cnpmjs.org/react-router-config/5.1.1_rlw3ibuvnpt5jvejeevjcf4ije + react-router-dom: 5.3.4_react@18.2.0 + rtl-detect: r2.cnpmjs.org/rtl-detect/1.0.4 + semver: 7.3.8 + serve-handler: 6.1.5 + shelljs: 0.8.5 + terser-webpack-plugin: 5.3.7_webpack@5.77.0 + tslib: 2.5.0 + update-notifier: r2.cnpmjs.org/update-notifier/5.1.0 + url-loader: r2.cnpmjs.org/url-loader/4.1.1_srsokde7itujrwn2ctsfyi3dwa + wait-on: 6.0.1 + webpack: 5.77.0 + webpack-bundle-analyzer: 4.8.0 + webpack-dev-server: 4.13.2_webpack@5.77.0 + webpack-merge: r2.cnpmjs.org/webpack-merge/5.8.0 + webpackbar: r2.cnpmjs.org/webpackbar/5.0.2_webpack@5.77.0 + transitivePeerDependencies: + - '@docusaurus/types' + - '@parcel/css' + - '@swc/core' + - '@swc/css' + - '@types/node' + - bufferutil + - csso + - debug + - esbuild + - eslint + - lightningcss + - supports-color + - ts-node + - typescript + - uglify-js + - utf-8-validate + - vue-template-compiler + - webpack-cli + dev: true + /@docusaurus/core/2.4.0_j3wrhsbakxuygokq2cmlmaalku: resolution: {integrity: sha512-J55/WEoIpRcLf3afO5POHPguVZosKmJEQWKBL+K7TAnfuE7i+Y0NPLlkKtnWCehagGsgTqClfQEexH/UT4kELA==} engines: {node: '>=16.14'} @@ -2162,7 +2265,6 @@ packages: postcss: 8.4.21 postcss-sort-media-queries: 4.3.0_postcss@8.4.21 tslib: 2.5.0 - dev: false /@docusaurus/logger/2.4.0: resolution: {integrity: sha512-T8+qR4APN+MjcC9yL2Es+xPJ2923S9hpzDmMtdsOcUGLqpCGBbU1vp3AAqDwXtVgFkq+NsEk7sHdVsfLWR/AXw==} @@ -2170,7 +2272,6 @@ packages: dependencies: chalk: r2.cnpmjs.org/chalk/4.1.2 tslib: 2.5.0 - dev: false /@docusaurus/mdx-loader/2.4.0_wuolo4jlwz75wl2aegq7g4cyju: resolution: {integrity: sha512-GWoH4izZKOmFoC+gbI2/y8deH/xKLvzz/T5BsEexBye8EHQlwsA7FMrVa48N063bJBH4FUOiRRXxk5rq9cC36g==} @@ -2205,7 +2306,6 @@ packages: - supports-color - uglify-js - webpack-cli - dev: false /@docusaurus/module-type-aliases/2.3.0_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-DvJtVejgrgIgxSNZ0pRaVu4EndRVBgbtp1LKvIO4xBgKlrsq8o4qkj1HKwH6yok5NoMqGApu8/E0KPOdZBtDpQ==} @@ -2811,7 +2911,6 @@ packages: dependencies: '@docusaurus/types': 2.4.0_biqbaboplfbrettd7655fr4n2y tslib: 2.5.0 - dev: false /@docusaurus/utils-validation/2.4.0_@docusaurus+types@2.4.0: resolution: {integrity: sha512-IrBsBbbAp6y7mZdJx4S4pIA7dUyWSA0GNosPk6ZJ0fX3uYIEQgcQSGIgTeSC+8xPEx3c16o03en1jSDpgQgz/w==} @@ -2829,7 +2928,6 @@ packages: - supports-color - uglify-js - webpack-cli - dev: false /@docusaurus/utils/2.4.0_@docusaurus+types@2.4.0: resolution: {integrity: sha512-89hLYkvtRX92j+C+ERYTuSUK6nF9bGM32QThcHPg2EDDHVw6FzYQXmX6/p+pU5SDyyx5nBlE4qXR92RxCAOqfg==} @@ -2863,7 +2961,6 @@ packages: - supports-color - uglify-js - webpack-cli - dev: false /@eslint-community/eslint-utils/4.4.0_eslint@8.37.0: resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} @@ -3617,7 +3714,6 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@sinclair/typebox': 0.25.24 - dev: false /@jest/source-map/27.5.1: resolution: {integrity: sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==} @@ -3716,7 +3812,6 @@ packages: '@types/node': 17.0.41 '@types/yargs': 17.0.24 chalk: r2.cnpmjs.org/chalk/4.1.2 - dev: false /@jridgewell/gen-mapping/0.1.1: resolution: {integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==} @@ -3769,7 +3864,6 @@ packages: /@leichtgewicht/ip-codec/2.0.4: resolution: {integrity: sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==} - dev: false /@material-tailwind/react/1.4.2_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-XJ1Ie8xXMV2qZEtm0LgnJNK+8Lh1Si8TvOf0jKWGI2rHleD8U/Zype6k1AyRhBHHUwc6B19w8uR1fCIFvumURQ==} @@ -4318,7 +4412,6 @@ packages: /@sinclair/typebox/0.25.24: resolution: {integrity: sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==} - dev: false /@sindresorhus/is/4.6.0: resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} @@ -4338,7 +4431,6 @@ packages: eval: 0.1.8 p-map: r2.cnpmjs.org/p-map/4.0.0 webpack-sources: 3.2.3 - dev: false /@svgr/babel-plugin-add-jsx-attribute/6.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==} @@ -4347,7 +4439,6 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 - dev: false /@svgr/babel-plugin-remove-jsx-attribute/7.0.0_@babel+core@7.21.4: resolution: {integrity: sha512-iiZaIvb3H/c7d3TH2HBeK91uI2rMhZNwnsIrvd7ZwGLkFw6mmunOCoVnjdYua662MqGFxlN9xTq4fv9hgR4VXQ==} @@ -4356,7 +4447,6 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 - dev: false /@svgr/babel-plugin-remove-jsx-empty-expression/7.0.0_@babel+core@7.21.4: resolution: {integrity: sha512-sQQmyo+qegBx8DfFc04PFmIO1FP1MHI1/QEpzcIcclo5OAISsOJPW76ZIs0bDyO/DBSJEa/tDa1W26pVtt0FRw==} @@ -4365,7 +4455,6 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 - dev: false /@svgr/babel-plugin-replace-jsx-attribute-value/6.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==} @@ -4374,7 +4463,6 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 - dev: false /@svgr/babel-plugin-svg-dynamic-title/6.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==} @@ -4383,7 +4471,6 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 - dev: false /@svgr/babel-plugin-svg-em-dimensions/6.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==} @@ -4392,7 +4479,6 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 - dev: false /@svgr/babel-plugin-transform-react-native-svg/6.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==} @@ -4401,7 +4487,6 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 - dev: false /@svgr/babel-plugin-transform-svg-component/6.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==} @@ -4410,7 +4495,6 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 - dev: false /@svgr/babel-preset/6.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==} @@ -4427,7 +4511,6 @@ packages: '@svgr/babel-plugin-svg-em-dimensions': 6.5.1_@babel+core@7.21.4 '@svgr/babel-plugin-transform-react-native-svg': 6.5.1_@babel+core@7.21.4 '@svgr/babel-plugin-transform-svg-component': 6.5.1_@babel+core@7.21.4 - dev: false /@svgr/core/6.5.1: resolution: {integrity: sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==} @@ -4440,7 +4523,6 @@ packages: cosmiconfig: 7.1.0 transitivePeerDependencies: - supports-color - dev: false /@svgr/hast-util-to-babel-ast/6.5.1: resolution: {integrity: sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==} @@ -4448,7 +4530,6 @@ packages: dependencies: '@babel/types': 7.21.4 entities: 4.4.0 - dev: false /@svgr/plugin-jsx/6.5.1_@svgr+core@6.5.1: resolution: {integrity: sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==} @@ -4463,7 +4544,6 @@ packages: svg-parser: r2.cnpmjs.org/svg-parser/2.0.4 transitivePeerDependencies: - supports-color - dev: false /@svgr/plugin-svgo/6.5.1_@svgr+core@6.5.1: resolution: {integrity: sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==} @@ -4475,7 +4555,6 @@ packages: cosmiconfig: 7.1.0 deepmerge: 4.3.1 svgo: r2.cnpmjs.org/svgo/2.8.0 - dev: false /@svgr/webpack/6.5.1: resolution: {integrity: sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==} @@ -4491,7 +4570,6 @@ packages: '@svgr/plugin-svgo': 6.5.1_@svgr+core@6.5.1 transitivePeerDependencies: - supports-color - dev: false /@swc/helpers/0.4.14: resolution: {integrity: sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw==} @@ -4636,7 +4714,6 @@ packages: '@types/node': 17.0.41 '@types/qs': r2.cnpmjs.org/@types/qs/6.9.7 '@types/range-parser': r2.cnpmjs.org/@types/range-parser/1.2.4 - dev: false /@types/express/4.17.17: resolution: {integrity: sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==} @@ -4645,7 +4722,6 @@ packages: '@types/express-serve-static-core': 4.17.33 '@types/qs': r2.cnpmjs.org/@types/qs/6.9.7 '@types/serve-static': 1.15.1 - dev: false /@types/graceful-fs/4.1.6: resolution: {integrity: sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==} @@ -4660,7 +4736,6 @@ packages: resolution: {integrity: sha512-Qs5aULi+zV1bwKAg5z1PWnDXWmsn+LxIvUGv6E2+OOMYhclZMO+OXd9pYVf2gLykf2I7IV2u7oTHwChPNsvJ7g==} dependencies: '@types/node': 17.0.41 - dev: false /@types/jest/27.5.2: resolution: {integrity: sha512-mpT8LJJ4CMeeahobofYWIjFo0xonRS/HfxnVEPMPFSQdGUt1uHCnoPT7Zhb+sjDU2wz0oKV0OLUR0WzrHNgfeA==} @@ -4676,7 +4751,6 @@ packages: resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} dependencies: '@types/node': 17.0.41 - dev: false /@types/lodash/4.14.192: resolution: {integrity: sha512-km+Vyn3BYm5ytMO13k9KTp27O75rbQ0NFw+U//g+PX7VZyjCioXaRFisqSIJRECljcTv73G3i6BpglNGHgUQ5A==} @@ -4686,11 +4760,9 @@ packages: resolution: {integrity: sha512-Y/uImid8aAwrEA24/1tcRZwpxX3pIFTSilcNDKSPn+Y2iDywSEachzRuvgAYYLR3wpGXAsMbv5lvKLDZLeYPAw==} dependencies: '@types/unist': r2.cnpmjs.org/@types/unist/2.0.6 - dev: false /@types/mime/3.0.1: resolution: {integrity: sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==} - dev: false /@types/node/12.20.55: resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} @@ -4763,7 +4835,6 @@ packages: dependencies: '@types/mime': 3.0.1 '@types/node': 17.0.41 - dev: false /@types/testing-library__jest-dom/5.14.5: resolution: {integrity: sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ==} @@ -4783,11 +4854,9 @@ packages: resolution: {integrity: sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==} dependencies: '@types/node': 17.0.41 - dev: false /@types/yargs-parser/21.0.0: resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==} - dev: false /@types/yargs/16.0.5: resolution: {integrity: sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==} @@ -4799,7 +4868,6 @@ packages: resolution: {integrity: sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==} dependencies: '@types/yargs-parser': 21.0.0 - dev: false /@typescript-eslint/eslint-plugin/5.57.1_iify4w3mi7rbbu6mxzspkpx4b4: resolution: {integrity: sha512-1MeobQkQ9tztuleT3v72XmY0XuKXVXusAhryoLuU5YZ+mXoYKZP9SQ7Flulh1NX4DTjpGTc2b/eMu4u7M7dhnQ==} @@ -5055,7 +5123,6 @@ packages: json-schema-traverse: r2.cnpmjs.org/json-schema-traverse/1.0.0 require-from-string: r2.cnpmjs.org/require-from-string/2.0.2 uri-js: r2.cnpmjs.org/uri-js/4.4.1 - dev: false /algoliasearch-helper/3.12.0_algoliasearch@4.17.0: resolution: {integrity: sha512-/j1U3PEwdan0n6P/QqSnSpNSLC5+cEMvyljd5CnmNmUjDlGrys+vFEOwjVEnqELIiAGMHEA/Nl3CiKVFBUYqyQ==} @@ -5131,7 +5198,6 @@ packages: resolution: {integrity: sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==} dependencies: deep-equal: 2.2.0 - dev: false /array-buffer-byte-length/1.0.0: resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} @@ -5186,7 +5252,6 @@ packages: es-abstract: 1.21.2 es-shim-unscopables: 1.0.0 get-intrinsic: 1.2.0 - dev: false /async/2.6.4: resolution: {integrity: sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==} @@ -5228,7 +5293,6 @@ packages: picocolors: r2.cnpmjs.org/picocolors/1.0.0 postcss: 8.4.21 postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 - dev: false /aws4/1.12.0: resolution: {integrity: sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==} @@ -5237,7 +5301,6 @@ packages: /axe-core/4.6.3: resolution: {integrity: sha512-/BQzOX780JhsxDnPpH4ZiyrJAzcd8AfzFPkv+89veFSr1rcMjuq2JDCwypKaPeB6ljHp9KjXhPpjgCvQlWYuqg==} engines: {node: '>=4'} - dev: false /axios/0.25.0: resolution: {integrity: sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==} @@ -5245,7 +5308,6 @@ packages: follow-redirects: 1.15.2 transitivePeerDependencies: - debug - dev: false /axios/0.27.2: resolution: {integrity: sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==} @@ -5269,7 +5331,6 @@ packages: resolution: {integrity: sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==} dependencies: deep-equal: 2.2.0 - dev: false /babel-jest/27.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==} @@ -5316,7 +5377,6 @@ packages: make-dir: r2.cnpmjs.org/make-dir/3.1.0 schema-utils: r2.cnpmjs.org/schema-utils/2.7.1 webpack: 5.77.0 - dev: false /babel-plugin-jest-hoist/27.5.1: resolution: {integrity: sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==} @@ -5443,7 +5503,6 @@ packages: dns-equal: r2.cnpmjs.org/dns-equal/1.0.0 fast-deep-equal: r2.cnpmjs.org/fast-deep-equal/3.1.3 multicast-dns: 7.2.5 - dev: false /browser-level/1.0.1: resolution: {integrity: sha512-XECYKJ+Dbzw0lbydyQuJzwNXtOpbMSq737qxJN11sIRTErOMShvDpbzTlgju7orJKvx4epULolZAuJGLzCmWRQ==} @@ -5513,7 +5572,6 @@ packages: /camelcase/6.3.0: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - dev: false /caniuse-lite/1.0.30001474: resolution: {integrity: sha512-iaIZ8gVrWfemh5DG3T9/YqarVZoYf0r188IjaGwx68j4Pf0SGY6CQkmJUIE+NZHkkecQGohzXmBGEwWDr9aM3Q==} @@ -5608,7 +5666,6 @@ packages: string-width: r2.cnpmjs.org/string-width/4.2.3 optionalDependencies: '@colors/colors': 1.5.0 - dev: false /client-only/0.0.1: resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} @@ -5627,7 +5684,6 @@ packages: resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} dependencies: mimic-response: r2.cnpmjs.org/mimic-response/1.0.1 - dev: false /clsx/1.2.1: resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} @@ -5678,12 +5734,10 @@ packages: vary: r2.cnpmjs.org/vary/1.1.2 transitivePeerDependencies: - supports-color - dev: false /connect-history-api-fallback/2.0.0: resolution: {integrity: sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==} engines: {node: '>=0.8'} - dev: false /content-type/1.0.5: resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} @@ -5714,7 +5768,6 @@ packages: schema-utils: r2.cnpmjs.org/schema-utils/4.0.0 serialize-javascript: 6.0.1 webpack: 5.77.0 - dev: false /core-js-compat/3.30.0: resolution: {integrity: sha512-P5A2h/9mRYZFIAP+5Ab8ns6083IyVpSclU74UNvbGVQ8VM7n3n3/g2yF3AkKQ9NXz2O+ioxLbEWKnDtgsFamhg==} @@ -5724,12 +5777,10 @@ packages: /core-js-pure/3.30.0: resolution: {integrity: sha512-+2KbMFGeBU0ln/csoPqTe0i/yfHbrd2EUhNMObsGtXMKS/RTtlkYyi+/3twLcevbgNR0yM/r0Psa3TEoQRpFMQ==} requiresBuild: true - dev: false /core-js/3.30.0: resolution: {integrity: sha512-hQotSSARoNh1mYPi9O2YaWeiq/cEB95kOrFb4NCrO4RIFt1qqNpKsaE+vy/L3oiqvND5cThqXzUU3r9F7Efztg==} requiresBuild: true - dev: false /cosmiconfig-typescript-loader/1.0.9_mwktwrqic243a56fotetixsg4q: resolution: {integrity: sha512-tRuMRhxN4m1Y8hP9SNYfz7jRwt8lZdWxdjg/ohg5esKmsndJIn4yT96oJVcf5x0eA11taXl+sIp+ielu529k6g==} @@ -5760,6 +5811,20 @@ packages: typescript: 4.9.5 dev: false + /cosmiconfig-typescript-loader/4.3.0_rul6kzwxzgrptt4634xh5wh7ja: + resolution: {integrity: sha512-NTxV1MFfZDLPiBMjxbHRwSh5LaLcPMwNdCutmnHJCKoVnlvldPWlllonKwrsRJ5pYZBIBGRWWU2tfvzxgeSW5Q==} + engines: {node: '>=12', npm: '>=6'} + peerDependencies: + '@types/node': '*' + cosmiconfig: '>=7' + ts-node: '>=10' + typescript: '>=3' + dependencies: + '@types/node': 17.0.41 + cosmiconfig: 8.1.3 + typescript: 4.9.5 + dev: true + /cosmiconfig/7.1.0: resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} engines: {node: '>=10'} @@ -5778,7 +5843,6 @@ packages: js-yaml: r2.cnpmjs.org/js-yaml/4.1.0 parse-json: r2.cnpmjs.org/parse-json/5.2.0 path-type: r2.cnpmjs.org/path-type/4.0.0 - dev: false /crc-32/1.2.2: resolution: {integrity: sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==} @@ -5839,7 +5903,6 @@ packages: postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 semver: 7.3.8 webpack: 5.77.0 - dev: false /css-minimizer-webpack-plugin/3.4.1_webpack@5.77.0: resolution: {integrity: sha512-1u6D71zeIfgngN2XNRJefc/hY7Ybsxd74Jm4qngIXyUEk7fss3VUzuHxLAq/R8NAba4QU9OUSaMZlbpRc7bM4Q==} @@ -5902,7 +5965,6 @@ packages: serialize-javascript: 6.0.1 source-map: r2.cnpmjs.org/source-map/0.6.1 webpack: 5.77.0 - dev: false /css-prefers-color-scheme/6.0.3_postcss@8.4.21: resolution: {integrity: sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==} @@ -5954,7 +6016,6 @@ packages: postcss-merge-idents: 5.1.1_postcss@8.4.21 postcss-reduce-idents: 5.2.0_postcss@8.4.21 postcss-zindex: 5.1.0_postcss@8.4.21 - dev: false /cssnano-preset-default/5.2.14_postcss@8.4.21: resolution: {integrity: sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==} @@ -6017,7 +6078,6 @@ packages: /damerau-levenshtein/1.0.8: resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} - dev: false /dayjs/1.11.7: resolution: {integrity: sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==} @@ -6071,7 +6131,6 @@ packages: which-boxed-primitive: r2.cnpmjs.org/which-boxed-primitive/1.0.2 which-collection: r2.cnpmjs.org/which-collection/1.0.1 which-typed-array: 1.1.9 - dev: false /deepmerge/4.3.1: resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} @@ -6106,7 +6165,6 @@ packages: p-map: r2.cnpmjs.org/p-map/4.0.0 rimraf: r2.cnpmjs.org/rimraf/3.0.2 slash: r2.cnpmjs.org/slash/3.0.0 - dev: false /destroy/1.2.0: resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} @@ -6120,7 +6178,6 @@ packages: debug: 4.3.4 transitivePeerDependencies: - supports-color - dev: false /detective/5.2.1: resolution: {integrity: sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==} @@ -6142,7 +6199,6 @@ packages: engines: {node: '>=6'} dependencies: '@leichtgewicht/ip-codec': 2.0.4 - dev: false /dom-accessibility-api/0.5.16: resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==} @@ -6189,7 +6245,6 @@ packages: /duplexer3/0.1.5: resolution: {integrity: sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==} - dev: false /ejs/3.1.9: resolution: {integrity: sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ==} @@ -6217,7 +6272,6 @@ packages: /entities/4.4.0: resolution: {integrity: sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==} engines: {node: '>=0.12'} - dev: false /error-stack-parser/2.1.4: resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} @@ -6276,7 +6330,6 @@ packages: is-string: r2.cnpmjs.org/is-string/1.0.7 isarray: r2.cnpmjs.org/isarray/2.0.5 stop-iteration-iterator: 1.0.0 - dev: false /es-set-tostringtag/2.0.1: resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} @@ -6658,7 +6711,6 @@ packages: object.entries: 1.1.6 object.fromentries: 2.0.6 semver: r2.cnpmjs.org/semver/6.3.0 - dev: false /eslint-plugin-jsx-a11y/6.7.1_eslint@8.38.0: resolution: {integrity: sha512-63Bog4iIethyo8smBklORknVjB0T2dwB8Mr/hIC+fBS0uyHdYYpzM/Ed+YC8VxTjlXHEWFOdmgwcDn1U2L9VCA==} @@ -6709,7 +6761,6 @@ packages: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 dependencies: eslint: 8.37.0 - dev: false /eslint-plugin-react-hooks/4.6.0_eslint@8.38.0: resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} @@ -6742,7 +6793,6 @@ packages: resolve: 2.0.0-next.4 semver: r2.cnpmjs.org/semver/6.3.0 string.prototype.matchall: 4.0.8 - dev: false /eslint-plugin-react/7.32.2_eslint@8.38.0: resolution: {integrity: sha512-t2fBMa+XzonrrNkyVirzKlvn5RXzzPwRHtMvLAtVZrt8oxgnTQaYbU6SXTOO1mwQgp1y5+toMSKInnzGr0Knqg==} @@ -6922,7 +6972,6 @@ packages: /eta/2.0.1: resolution: {integrity: sha512-46E2qDPDm7QA+usjffUWz9KfXsxVZclPOuKsXs4ZWZdI/X1wpDF7AO424pt7fdYohCzWsIkXAhNGXSlwo5naAg==} engines: {node: '>=6.0.0'} - dev: false /etag/1.8.1: resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} @@ -7006,7 +7055,6 @@ packages: dependencies: '@types/node': 17.0.41 require-like: r2.cnpmjs.org/require-like/0.1.2 - dev: false /eventemitter3/5.0.0: resolution: {integrity: sha512-riuVbElZZNXLeLEoprfNYoDSwTBRR44X3mnhdI1YcnENpWTCsTTVZ2zFuqQcpoyqPQIUXdiPEU0ECAq0KQRaHg==} @@ -7254,11 +7302,9 @@ packages: tapable: r2.cnpmjs.org/tapable/1.1.3 typescript: 4.9.5 webpack: 5.77.0 - dev: false /fraction.js/4.2.0: resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} - dev: false /framer-motion/6.5.1_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-o1BGqqposwi7cgDrtg0dNONhkmPsUFDaLcKXigzuTFC5x58mE8iyTazxSudFzmT6MEyJKfjjU8ItoMe3W+3fiw==} @@ -7311,7 +7357,6 @@ packages: /github-slugger/1.5.0: resolution: {integrity: sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==} - dev: false /glob/7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} @@ -7328,7 +7373,6 @@ packages: engines: {node: '>=10'} dependencies: ini: r2.cnpmjs.org/ini/2.0.0 - dev: false /globals/13.20.0: resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} @@ -7362,7 +7406,6 @@ packages: ignore: 5.2.4 merge2: r2.cnpmjs.org/merge2/1.4.1 slash: r2.cnpmjs.org/slash/4.0.0 - dev: false /goober/2.1.12: resolution: {integrity: sha512-yXHAvO08FU1JgTXX6Zn6sYCUFfB/OJSX8HHjDSgerZHZmFKAb08cykp5LBw5QnmyMcZyPRMqkdyHUSSzge788Q==} @@ -7432,7 +7475,6 @@ packages: /html-entities/2.3.3: resolution: {integrity: sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==} - dev: false /html-tags/3.3.1: resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==} @@ -7449,11 +7491,9 @@ packages: /http-cache-semantics/4.1.1: resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} - dev: false /http-parser-js/0.5.8: resolution: {integrity: sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==} - dev: false /http-proxy-middleware/2.0.6_@types+express@4.17.17: resolution: {integrity: sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==} @@ -7472,7 +7512,6 @@ packages: micromatch: 4.0.5 transitivePeerDependencies: - debug - dev: false /http2-wrapper/2.2.0: resolution: {integrity: sha512-kZB0wxMo0sh1PehyjJUWRFEd99KC5TLjZ2cULC4f9iqJBAmKQQXEICjxl5iPJRwP40dpeHFqqhm7tYCvODpqpQ==} @@ -7517,7 +7556,6 @@ packages: hasBin: true dependencies: queue: r2.cnpmjs.org/queue/6.0.2 - dev: false /immer/9.0.21: resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==} @@ -8077,7 +8115,6 @@ packages: ci-info: 3.8.0 graceful-fs: 4.2.11 picomatch: 2.3.1 - dev: false /jest-validate/27.5.1: resolution: {integrity: sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==} @@ -8159,7 +8196,6 @@ packages: jest-util: 29.5.0 merge-stream: r2.cnpmjs.org/merge-stream/2.0.0 supports-color: r2.cnpmjs.org/supports-color/8.1.1 - dev: false /jest/27.5.1: resolution: {integrity: sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==} @@ -8228,7 +8264,6 @@ packages: dependencies: array-includes: 3.1.6 object.assign: 4.1.4 - dev: false /keccak/3.0.3: resolution: {integrity: sha512-JZrLIAJWuZxKbCilMpNz5Vj7Vtb4scDG3dMXLOsbzBmQGyjwE61BbW7bJkfKKCShXiQZt3T6sBgALRtmd+nZaQ==} @@ -8254,18 +8289,15 @@ packages: /klona/2.0.6: resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==} engines: {node: '>= 8'} - dev: false /language-subtag-registry/0.3.22: resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} - dev: false /launch-editor/2.6.0: resolution: {integrity: sha512-JpDCcQnyAAzZZaZ7vEiSqL690w7dAEyLao+KC96zBplnYbJS7TYNjvM3M7y3dGz+v7aIsJk3hllWuc0kWAjyRQ==} dependencies: picocolors: r2.cnpmjs.org/picocolors/1.0.0 shell-quote: 1.8.0 - dev: false /level-supports/4.0.1: resolution: {integrity: sha512-PbXpve8rKeNcZ9C1mUicC9auIYFyGpkV9/i6g76tLgANwWhtG2v7I4xNBUlkn3lE2/dZF3Pi0ygYGtLc4RXXdA==} @@ -8399,7 +8431,6 @@ packages: dependencies: schema-utils: r2.cnpmjs.org/schema-utils/4.0.0 webpack: 5.77.0 - dev: false /mini-svg-data-uri/1.4.4: resolution: {integrity: sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==} @@ -8457,7 +8488,6 @@ packages: /mrmime/1.0.1: resolution: {integrity: sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==} engines: {node: '>=10'} - dev: false /multicast-dns/7.2.5: resolution: {integrity: sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==} @@ -8465,7 +8495,6 @@ packages: dependencies: dns-packet: 5.5.0 thunky: r2.cnpmjs.org/thunky/1.1.0 - dev: false /nanoid/3.3.6: resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} @@ -8535,7 +8564,6 @@ packages: /node-forge/1.3.1: resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==} engines: {node: '>= 6.13.0'} - dev: false /node-gyp-build/4.6.0: resolution: {integrity: sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==} @@ -8645,7 +8673,6 @@ packages: call-bind: r2.cnpmjs.org/call-bind/1.0.2 define-properties: 1.2.0 es-abstract: 1.21.2 - dev: false /object.fromentries/2.0.6: resolution: {integrity: sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==} @@ -8654,7 +8681,6 @@ packages: call-bind: r2.cnpmjs.org/call-bind/1.0.2 define-properties: 1.2.0 es-abstract: 1.21.2 - dev: false /object.getownpropertydescriptors/2.1.5: resolution: {integrity: sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==} @@ -8671,7 +8697,6 @@ packages: dependencies: define-properties: 1.2.0 es-abstract: 1.21.2 - dev: false /object.values/1.1.6: resolution: {integrity: sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==} @@ -8701,7 +8726,6 @@ packages: dependencies: '@types/retry': r2.cnpmjs.org/@types/retry/0.12.0 retry: r2.cnpmjs.org/retry/0.13.1 - dev: false /pako/1.0.11: resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==} @@ -8899,7 +8923,6 @@ packages: dependencies: postcss: 8.4.21 postcss-selector-parser: 6.0.11 - dev: false /postcss-double-position-gradients/3.1.2_postcss@8.4.21: resolution: {integrity: sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==} @@ -8961,6 +8984,16 @@ packages: postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 dev: false + /postcss-import/14.1.0: + resolution: {integrity: sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==} + engines: {node: '>=10.0.0'} + peerDependencies: + postcss: ^8.0.0 + dependencies: + postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + read-cache: r2.cnpmjs.org/read-cache/1.0.0 + resolve: 1.22.1 + /postcss-import/14.1.0_postcss@8.4.21: resolution: {integrity: sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==} engines: {node: '>=10.0.0'} @@ -8971,6 +9004,15 @@ packages: postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 read-cache: r2.cnpmjs.org/read-cache/1.0.0 resolve: 1.22.1 + dev: false + + /postcss-js/4.0.1: + resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} + engines: {node: ^12 || ^14 || >= 16} + peerDependencies: + postcss: ^8.4.21 + dependencies: + camelcase-css: r2.cnpmjs.org/camelcase-css/2.0.1 /postcss-js/4.0.1_postcss@8.4.21: resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} @@ -8980,6 +9022,7 @@ packages: dependencies: camelcase-css: r2.cnpmjs.org/camelcase-css/2.0.1 postcss: 8.4.21 + dev: false /postcss-lab-function/4.2.1_postcss@8.4.21: resolution: {integrity: sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==} @@ -8992,6 +9035,21 @@ packages: postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 dev: false + /postcss-load-config/3.1.4: + resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} + engines: {node: '>= 10'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + dependencies: + lilconfig: 2.1.0 + yaml: r2.cnpmjs.org/yaml/1.10.2 + /postcss-load-config/3.1.4_postcss@7.0.39: resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} engines: {node: '>= 10'} @@ -9050,6 +9108,31 @@ packages: - '@types/node' dev: false + /postcss-loader/7.2.4_ymb7rd6tkzh43qbqmamtlwgxzq: + resolution: {integrity: sha512-F88rpxxNspo5hatIc+orYwZDtHFaVFOSIVAx+fBfJC1GmhWbVmPWtmg2gXKE1OxJbneOSGn8PWdIwsZFcruS+w==} + engines: {node: '>= 14.15.0'} + peerDependencies: + postcss: ^7.0.0 || ^8.0.1 + ts-node: '>=10' + typescript: '>=4' + webpack: ^5.0.0 + peerDependenciesMeta: + ts-node: + optional: true + typescript: + optional: true + dependencies: + cosmiconfig: 8.1.3 + cosmiconfig-typescript-loader: 4.3.0_rul6kzwxzgrptt4634xh5wh7ja + klona: 2.0.6 + postcss: 8.4.21 + semver: 7.3.8 + typescript: 4.9.5 + webpack: 5.77.0 + transitivePeerDependencies: + - '@types/node' + dev: true + /postcss-logical/5.0.4_postcss@8.4.21: resolution: {integrity: sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==} engines: {node: ^12 || ^14 || >=16} @@ -9068,7 +9151,6 @@ packages: cssnano-utils: 3.1.0_postcss@8.4.21 postcss: 8.4.21 postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 - dev: false /postcss-merge-longhand/5.1.7_postcss@8.4.21: resolution: {integrity: sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==} @@ -9148,6 +9230,14 @@ packages: string-hash: r2.cnpmjs.org/string-hash/1.1.3 dev: true + /postcss-nested/6.0.0: + resolution: {integrity: sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.2.14 + dependencies: + postcss-selector-parser: 6.0.11 + /postcss-nested/6.0.0_postcss@8.4.21: resolution: {integrity: sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==} engines: {node: '>=12.0'} @@ -9156,6 +9246,7 @@ packages: dependencies: postcss: 8.4.21 postcss-selector-parser: 6.0.11 + dev: false /postcss-nesting/10.2.0_postcss@8.4.21: resolution: {integrity: sha512-EwMkYchxiDiKUhlJGzWsD9b2zvq/r2SSubcRrgP+jujMXFzqvANLt16lJANC+5uZ6hjI7lpRmI6O8JIl+8l1KA==} @@ -9365,7 +9456,6 @@ packages: dependencies: postcss: 8.4.21 postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 - dev: false /postcss-reduce-initial/5.1.2_postcss@8.4.21: resolution: {integrity: sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==} @@ -9411,7 +9501,6 @@ packages: dependencies: postcss: 8.4.21 sort-css-media-queries: 2.1.0 - dev: false /postcss-svgo/5.1.0_postcss@8.4.21: resolution: {integrity: sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==} @@ -9439,7 +9528,6 @@ packages: postcss: ^8.2.15 dependencies: postcss: 8.4.21 - dev: false /postcss/8.4.14: resolution: {integrity: sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==} @@ -9678,7 +9766,6 @@ packages: - eslint - supports-color - vue-template-compiler - dev: false /react-dom/18.2.0_react@18.2.0: resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} @@ -9760,7 +9847,6 @@ packages: react-router: 5.3.4_react@18.2.0 tiny-invariant: 1.3.1 tiny-warning: r2.cnpmjs.org/tiny-warning/1.0.3 - dev: false /react-router/5.3.4_react@18.2.0: resolution: {integrity: sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==} @@ -9777,7 +9863,6 @@ packages: react-is: r2.cnpmjs.org/react-is/16.13.1 tiny-invariant: 1.3.1 tiny-warning: r2.cnpmjs.org/tiny-warning/1.0.3 - dev: false /react-scripts/5.0.1_j5ip3o3v6sktjzl5cxtjyfbuo4: resolution: {integrity: sha512-8VAmEm/ZAwQzJ+GOMLbBsTdDKOpuZh7RPs0UymvBR2vRk4iZWCskjbFnxqjrzoIvlNNRZ3QJFx6/qDSi6zSnaQ==} @@ -9919,7 +10004,6 @@ packages: safe-buffer: r2.cnpmjs.org/safe-buffer/5.1.2 string_decoder: r2.cnpmjs.org/string_decoder/1.1.1 util-deprecate: r2.cnpmjs.org/util-deprecate/1.0.2 - dev: false /readable-stream/3.6.2: resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} @@ -9973,7 +10057,6 @@ packages: engines: {node: '>=6.0.0'} dependencies: rc: r2.cnpmjs.org/rc/1.2.8 - dev: false /regjsparser/0.9.1: resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} @@ -10001,7 +10084,6 @@ packages: is-core-module: 2.11.0 path-parse: r2.cnpmjs.org/path-parse/1.0.7 supports-preserve-symlinks-flag: 1.0.0 - dev: false /responselike/2.0.1: resolution: {integrity: sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==} @@ -10101,7 +10183,6 @@ packages: engines: {node: '>=10'} dependencies: node-forge: 1.3.1 - dev: false /semver/7.3.8: resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==} @@ -10146,7 +10227,6 @@ packages: path-is-inside: r2.cnpmjs.org/path-is-inside/1.0.2 path-to-regexp: r2.cnpmjs.org/path-to-regexp/2.2.1 range-parser: r2.cnpmjs.org/range-parser/1.2.0 - dev: false /serve-static/1.15.0: resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==} @@ -10170,7 +10250,6 @@ packages: glob: 7.2.3 interpret: r2.cnpmjs.org/interpret/1.4.0 rechoir: r2.cnpmjs.org/rechoir/0.6.2 - dev: false /signal-exit/3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} @@ -10197,7 +10276,6 @@ packages: /sort-css-media-queries/2.1.0: resolution: {integrity: sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==} engines: {node: '>= 6.3.0'} - dev: false /source-map-js/1.0.2: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} @@ -10260,14 +10338,12 @@ packages: /std-env/3.3.2: resolution: {integrity: sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==} - dev: false /stop-iteration-iterator/1.0.0: resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==} engines: {node: '>= 0.4'} dependencies: internal-slot: 1.0.5 - dev: false /string-width/5.1.2: resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} @@ -10288,7 +10364,6 @@ packages: internal-slot: 1.0.5 regexp.prototype.flags: 1.4.3 side-channel: r2.cnpmjs.org/side-channel/1.0.4 - dev: false /string.prototype.padend/3.1.4: resolution: {integrity: sha512-67otBXoksdjsnXXRUq+KMVTdlVRZ2af422Y0aTyTjVaoQkGr3mxl2Bc5emi7dOQ3OGVVQQskmLEWwFXwommpNw==} @@ -10421,6 +10496,8 @@ packages: resolution: {integrity: sha512-Vkiouc41d4CEq0ujXl6oiGFQ7bA3WEhUZdTgXAhtKxSy49OmKs8rEfQmupsfF0IGW8fv2iQkp1EVUuapCFrZ9g==} engines: {node: '>=12.13.0'} hasBin: true + peerDependencies: + postcss: ^8.0.9 dependencies: arg: 5.0.2 chokidar: 3.5.3 @@ -10437,10 +10514,10 @@ packages: object-hash: 3.0.0 picocolors: r2.cnpmjs.org/picocolors/1.0.0 postcss: 8.4.21 - postcss-import: 14.1.0_postcss@8.4.21 - postcss-js: 4.0.1_postcss@8.4.21 - postcss-load-config: 3.1.4_postcss@8.4.21 - postcss-nested: 6.0.0_postcss@8.4.21 + postcss-import: 14.1.0 + postcss-js: 4.0.1 + postcss-load-config: 3.1.4 + postcss-nested: 6.0.0 postcss-selector-parser: 6.0.11 postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 quick-lru: r2.cnpmjs.org/quick-lru/5.1.1 @@ -10523,7 +10600,6 @@ packages: /tiny-invariant/1.3.1: resolution: {integrity: sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==} - dev: false /tough-cookie/4.1.2: resolution: {integrity: sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==} @@ -10606,7 +10682,6 @@ packages: /type-fest/2.19.0: resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} engines: {node: '>=12.20'} - dev: false /type/2.7.2: resolution: {integrity: sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==} @@ -10799,7 +10874,6 @@ packages: rxjs: 7.8.0 transitivePeerDependencies: - debug - dev: false /watchpack/2.4.0: resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} @@ -11102,7 +11176,6 @@ packages: transitivePeerDependencies: - bufferutil - utf-8-validate - dev: false /webpack-dev-middleware/5.3.3_webpack@5.77.0: resolution: {integrity: sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==} @@ -11116,7 +11189,6 @@ packages: range-parser: r2.cnpmjs.org/range-parser/1.2.1 schema-utils: r2.cnpmjs.org/schema-utils/4.0.0 webpack: 5.77.0 - dev: false /webpack-dev-server/4.13.2_webpack@5.77.0: resolution: {integrity: sha512-5i6TrGBRxG4vnfDpB6qSQGfnB6skGBXNL5/542w2uRGLimX6qeE5BQMLrzIC3JYV/xlGOv+s+hTleI9AZKUQNw==} @@ -11167,7 +11239,6 @@ packages: - debug - supports-color - utf-8-validate - dev: false /webpack-manifest-plugin/4.1.1_webpack@5.77.0: resolution: {integrity: sha512-YXUAwxtfKIJIKkhg03MKuiFAD72PlrqCiwdwO4VEXdRO5V0ORCNwaOwAZawPZalCbmH9kBDmXnNeQOw+BIEiow==} @@ -11404,7 +11475,6 @@ packages: ansi-styles: 6.2.1 string-width: 5.1.2 strip-ansi: r2.cnpmjs.org/strip-ansi/7.0.1 - dev: false /ws/0.4.32: resolution: {integrity: sha512-htqsS0U9Z9lb3ITjidQkRvkLdVhQePrMeu475yEfOWkAYvJ6dSjQp1tOH6ugaddzX5b7sQjMPNtY71eTzrV/kA==} @@ -11480,7 +11550,6 @@ packages: optional: true utf-8-validate: optional: true - dev: false /ws/8.13.0: resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==} @@ -11493,7 +11562,6 @@ packages: optional: true utf-8-validate: optional: true - dev: false /yaml/2.2.1: resolution: {integrity: sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==} @@ -11548,13 +11616,11 @@ packages: source-map: r2.cnpmjs.org/source-map/0.5.7 transitivePeerDependencies: - supports-color - dev: false r2.cnpmjs.org/@babel/helper-plugin-utils/7.10.4: resolution: {integrity: sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz} name: '@babel/helper-plugin-utils' version: 7.10.4 - dev: false r2.cnpmjs.org/@babel/plugin-proposal-object-rest-spread/7.12.1_@babel+core@7.12.9: resolution: {integrity: sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz} @@ -11568,7 +11634,6 @@ packages: '@babel/helper-plugin-utils': 7.20.2 '@babel/plugin-syntax-object-rest-spread': r2.cnpmjs.org/@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.12.9 '@babel/plugin-transform-parameters': 7.21.3_@babel+core@7.12.9 - dev: false r2.cnpmjs.org/@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.21.4: resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz} @@ -11671,7 +11736,6 @@ packages: dependencies: '@babel/core': r2.cnpmjs.org/@babel/core/7.12.9 '@babel/helper-plugin-utils': 7.20.2 - dev: false r2.cnpmjs.org/@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.21.4: resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz} @@ -11716,7 +11780,6 @@ packages: dependencies: '@babel/core': r2.cnpmjs.org/@babel/core/7.12.9 '@babel/helper-plugin-utils': 7.20.2 - dev: false r2.cnpmjs.org/@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.21.4: resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz} @@ -11953,7 +12016,6 @@ packages: unist-util-visit: r2.cnpmjs.org/unist-util-visit/2.0.3 transitivePeerDependencies: - supports-color - dev: false r2.cnpmjs.org/@mdx-js/react/1.6.22_react@18.2.0: resolution: {integrity: sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@mdx-js/react/-/react-1.6.22.tgz} @@ -11970,7 +12032,6 @@ packages: resolution: {integrity: sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@mdx-js/util/-/util-1.6.22.tgz} name: '@mdx-js/util' version: 1.6.22 - dev: false r2.cnpmjs.org/@nodelib/fs.scandir/2.1.5: resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz} @@ -12011,7 +12072,6 @@ packages: resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@polka/url/-/url-1.0.0-next.21.tgz} name: '@polka/url' version: 1.0.0-next.21 - dev: false r2.cnpmjs.org/@rollup/plugin-node-resolve/11.2.1_rollup@2.79.1: resolution: {integrity: sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz} @@ -12068,7 +12128,6 @@ packages: name: '@sindresorhus/is' version: 0.14.0 engines: {node: '>=6'} - dev: false r2.cnpmjs.org/@sinonjs/fake-timers/8.1.0: resolution: {integrity: sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz} @@ -12233,7 +12292,6 @@ packages: engines: {node: '>=6'} dependencies: defer-to-connect: r2.cnpmjs.org/defer-to-connect/1.1.3 - dev: false r2.cnpmjs.org/@szmarczak/http-timer/4.0.6: resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz} @@ -12347,7 +12405,6 @@ packages: dependencies: '@types/connect': r2.cnpmjs.org/@types/connect/3.4.35 '@types/node': 17.0.41 - dev: false r2.cnpmjs.org/@types/bonjour/3.5.10: resolution: {integrity: sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz} @@ -12355,7 +12412,6 @@ packages: version: 3.5.10 dependencies: '@types/node': 17.0.41 - dev: false r2.cnpmjs.org/@types/connect-history-api-fallback/1.3.5: resolution: {integrity: sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz} @@ -12364,7 +12420,6 @@ packages: dependencies: '@types/express-serve-static-core': 4.17.33 '@types/node': 17.0.41 - dev: false r2.cnpmjs.org/@types/connect/3.4.35: resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/connect/-/connect-3.4.35.tgz} @@ -12372,7 +12427,6 @@ packages: version: 3.4.35 dependencies: '@types/node': 17.0.41 - dev: false r2.cnpmjs.org/@types/estree/0.0.39: resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/estree/-/estree-0.0.39.tgz} @@ -12385,7 +12439,6 @@ packages: version: 2.3.4 dependencies: '@types/unist': r2.cnpmjs.org/@types/unist/2.0.6 - dev: false r2.cnpmjs.org/@types/html-minifier-terser/6.1.0: resolution: {integrity: sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz} @@ -12410,7 +12463,6 @@ packages: resolution: {integrity: sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz} name: '@types/istanbul-lib-coverage' version: 2.0.4 - dev: false r2.cnpmjs.org/@types/istanbul-lib-report/3.0.0: resolution: {integrity: sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz} @@ -12418,7 +12470,6 @@ packages: version: 3.0.0 dependencies: '@types/istanbul-lib-coverage': r2.cnpmjs.org/@types/istanbul-lib-coverage/2.0.4 - dev: false r2.cnpmjs.org/@types/istanbul-reports/3.0.1: resolution: {integrity: sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz} @@ -12426,7 +12477,6 @@ packages: version: 3.0.1 dependencies: '@types/istanbul-lib-report': r2.cnpmjs.org/@types/istanbul-lib-report/3.0.0 - dev: false r2.cnpmjs.org/@types/js-cookie/2.2.7: resolution: {integrity: sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/js-cookie/-/js-cookie-2.2.7.tgz} @@ -12460,7 +12510,6 @@ packages: resolution: {integrity: sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/parse5/-/parse5-5.0.3.tgz} name: '@types/parse5' version: 5.0.3 - dev: false r2.cnpmjs.org/@types/pbkdf2/3.1.0: resolution: {integrity: sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz} @@ -12480,13 +12529,11 @@ packages: resolution: {integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/qs/-/qs-6.9.7.tgz} name: '@types/qs' version: 6.9.7 - dev: false r2.cnpmjs.org/@types/range-parser/1.2.4: resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz} name: '@types/range-parser' version: 1.2.4 - dev: false r2.cnpmjs.org/@types/resolve/1.17.1: resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/resolve/-/resolve-1.17.1.tgz} @@ -12501,13 +12548,11 @@ packages: version: 1.0.0 dependencies: '@types/node': 17.0.41 - dev: false r2.cnpmjs.org/@types/retry/0.12.0: resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/retry/-/retry-0.12.0.tgz} name: '@types/retry' version: 0.12.0 - dev: false r2.cnpmjs.org/@types/sax/1.2.4: resolution: {integrity: sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/sax/-/sax-1.2.4.tgz} @@ -12537,7 +12582,6 @@ packages: version: 1.9.1 dependencies: '@types/express': 4.17.17 - dev: false r2.cnpmjs.org/@types/sockjs/0.3.33: resolution: {integrity: sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz} @@ -12545,7 +12589,6 @@ packages: version: 0.3.33 dependencies: '@types/node': 17.0.41 - dev: false r2.cnpmjs.org/@types/stack-utils/2.0.1: resolution: {integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz} @@ -12557,7 +12600,6 @@ packages: resolution: {integrity: sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/unist/-/unist-2.0.6.tgz} name: '@types/unist' version: 2.0.6 - dev: false r2.cnpmjs.org/@webassemblyjs/ast/1.11.1: resolution: {integrity: sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz} @@ -12746,7 +12788,6 @@ packages: name: acorn-walk version: 8.2.0 engines: {node: '>=0.4.0'} - dev: false r2.cnpmjs.org/acorn/7.4.1: resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/acorn/-/acorn-7.4.1.tgz} @@ -12806,7 +12847,6 @@ packages: optional: true dependencies: ajv: 8.12.0 - dev: false r2.cnpmjs.org/ajv-keywords/3.5.2_ajv@6.12.6: resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz} @@ -12828,7 +12868,6 @@ packages: dependencies: ajv: 8.12.0 fast-deep-equal: r2.cnpmjs.org/fast-deep-equal/3.1.3 - dev: false r2.cnpmjs.org/ajv/6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ajv/-/ajv-6.12.6.tgz} @@ -12846,7 +12885,6 @@ packages: version: 3.0.1 dependencies: string-width: r2.cnpmjs.org/string-width/4.2.3 - dev: false r2.cnpmjs.org/ansi-escapes/4.3.2: resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz} @@ -12871,7 +12909,6 @@ packages: version: 0.0.8 engines: {'0': node >= 0.8.0} hasBin: true - dev: false r2.cnpmjs.org/ansi-regex/5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz} @@ -12947,7 +12984,6 @@ packages: resolution: {integrity: sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/array-flatten/-/array-flatten-2.1.2.tgz} name: array-flatten version: 2.1.2 - dev: false r2.cnpmjs.org/array-union/2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/array-union/-/array-union-2.1.0.tgz} @@ -13009,7 +13045,6 @@ packages: resolution: {integrity: sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz} name: ast-types-flow version: 0.0.7 - dev: false r2.cnpmjs.org/astral-regex/2.0.0: resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/astral-regex/-/astral-regex-2.0.0.tgz} @@ -13073,7 +13108,6 @@ packages: '@babel/core': r2.cnpmjs.org/@babel/core/7.12.9 '@babel/helper-plugin-utils': r2.cnpmjs.org/@babel/helper-plugin-utils/7.10.4 '@mdx-js/util': r2.cnpmjs.org/@mdx-js/util/1.6.22 - dev: false r2.cnpmjs.org/babel-plugin-dynamic-import-node/2.3.3: resolution: {integrity: sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz} @@ -13081,7 +13115,6 @@ packages: version: 2.3.3 dependencies: object.assign: 4.1.4 - dev: false r2.cnpmjs.org/babel-plugin-extract-import-names/1.6.22: resolution: {integrity: sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz} @@ -13089,7 +13122,6 @@ packages: version: 1.6.22 dependencies: '@babel/helper-plugin-utils': r2.cnpmjs.org/@babel/helper-plugin-utils/7.10.4 - dev: false r2.cnpmjs.org/babel-plugin-istanbul/6.1.1: resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz} @@ -13187,7 +13219,6 @@ packages: resolution: {integrity: sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/bail/-/bail-1.0.5.tgz} name: bail version: 1.0.5 - dev: false r2.cnpmjs.org/balanced-match/1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/balanced-match/-/balanced-match-1.0.2.tgz} @@ -13212,7 +13243,6 @@ packages: resolution: {integrity: sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/batch/-/batch-0.6.1.tgz} name: batch version: 0.6.1 - dev: false r2.cnpmjs.org/bcrypt-pbkdf/1.0.2: resolution: {integrity: sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz} @@ -13306,7 +13336,6 @@ packages: type-fest: r2.cnpmjs.org/type-fest/0.20.2 widest-line: r2.cnpmjs.org/widest-line/3.1.0 wrap-ansi: r2.cnpmjs.org/wrap-ansi/7.0.0 - dev: false r2.cnpmjs.org/boxen/6.2.1: resolution: {integrity: sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/boxen/-/boxen-6.2.1.tgz} @@ -13322,7 +13351,6 @@ packages: type-fest: 2.19.0 widest-line: r2.cnpmjs.org/widest-line/4.0.1 wrap-ansi: 8.1.0 - dev: false r2.cnpmjs.org/brace-expansion/1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz} @@ -13478,7 +13506,6 @@ packages: name: bytes version: 3.0.0 engines: {node: '>= 0.8'} - dev: false r2.cnpmjs.org/cacheable-lookup/5.0.4: resolution: {integrity: sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz} @@ -13500,7 +13527,6 @@ packages: lowercase-keys: r2.cnpmjs.org/lowercase-keys/2.0.0 normalize-url: r2.cnpmjs.org/normalize-url/4.5.1 responselike: r2.cnpmjs.org/responselike/1.0.2 - dev: false r2.cnpmjs.org/cacheable-request/7.0.2: resolution: {integrity: sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz} @@ -13596,7 +13622,6 @@ packages: resolution: {integrity: sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ccount/-/ccount-1.1.0.tgz} name: ccount version: 1.1.0 - dev: false r2.cnpmjs.org/chalk/2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/chalk/-/chalk-2.4.2.tgz} @@ -13638,19 +13663,16 @@ packages: resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz} name: character-entities-legacy version: 1.1.4 - dev: false r2.cnpmjs.org/character-entities/1.2.4: resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/character-entities/-/character-entities-1.2.4.tgz} name: character-entities version: 1.2.4 - dev: false r2.cnpmjs.org/character-reference-invalid/1.1.4: resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz} name: character-reference-invalid version: 1.1.4 - dev: false r2.cnpmjs.org/chardet/0.7.0: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/chardet/-/chardet-0.7.0.tgz} @@ -13674,7 +13696,6 @@ packages: resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ci-info/-/ci-info-2.0.0.tgz} name: ci-info version: 2.0.0 - dev: false r2.cnpmjs.org/cids/0.7.5: resolution: {integrity: sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/cids/-/cids-0.7.5.tgz} @@ -13721,14 +13742,12 @@ packages: name: cli-boxes version: 2.2.1 engines: {node: '>=6'} - dev: false r2.cnpmjs.org/cli-boxes/3.0.0: resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz} name: cli-boxes version: 3.0.0 engines: {node: '>=10'} - dev: false r2.cnpmjs.org/cli-cursor/3.1.0: resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz} @@ -13824,7 +13843,6 @@ packages: resolution: {integrity: sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz} name: collapse-white-space version: 1.0.6 - dev: false r2.cnpmjs.org/collect-v8-coverage/1.0.1: resolution: {integrity: sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz} @@ -13869,7 +13887,6 @@ packages: name: combine-promises version: 1.1.0 engines: {node: '>=10'} - dev: false r2.cnpmjs.org/combined-stream/1.0.8: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/combined-stream/-/combined-stream-1.0.8.tgz} @@ -13883,7 +13900,6 @@ packages: resolution: {integrity: sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz} name: comma-separated-tokens version: 1.0.8 - dev: false r2.cnpmjs.org/command-exists/1.2.9: resolution: {integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/command-exists/-/command-exists-1.2.9.tgz} @@ -13958,7 +13974,6 @@ packages: engines: {node: '>= 0.6'} dependencies: mime-db: 1.52.0 - dev: false r2.cnpmjs.org/concat-map/0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/concat-map/-/concat-map-0.0.1.tgz} @@ -13985,26 +14000,22 @@ packages: unique-string: r2.cnpmjs.org/unique-string/2.0.0 write-file-atomic: r2.cnpmjs.org/write-file-atomic/3.0.3 xdg-basedir: r2.cnpmjs.org/xdg-basedir/4.0.0 - dev: false r2.cnpmjs.org/confusing-browser-globals/1.0.11: resolution: {integrity: sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz} name: confusing-browser-globals version: 1.0.11 - dev: false r2.cnpmjs.org/consola/2.15.3: resolution: {integrity: sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/consola/-/consola-2.15.3.tgz} name: consola version: 2.15.3 - dev: false r2.cnpmjs.org/content-disposition/0.5.2: resolution: {integrity: sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/content-disposition/-/content-disposition-0.5.2.tgz} name: content-disposition version: 0.5.2 engines: {node: '>= 0.6'} - dev: false r2.cnpmjs.org/content-disposition/0.5.4: resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/content-disposition/-/content-disposition-0.5.4.tgz} @@ -14039,7 +14050,6 @@ packages: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/core-util-is/-/core-util-is-1.0.3.tgz} name: core-util-is version: 1.0.3 - dev: false r2.cnpmjs.org/cors/2.8.5: resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/cors/-/cors-2.8.5.tgz} @@ -14164,7 +14174,6 @@ packages: name: crypto-random-string version: 2.0.0 engines: {node: '>=8'} - dev: false r2.cnpmjs.org/css-color-names/0.0.4: resolution: {integrity: sha512-zj5D7X1U2h2zsXOAM8EyUREBnnts6H+Jm+d1M2DbiQQcUtnqgQsMrdo8JW9R80YFUmIdBZeMu5wvYM7hcgWP/Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/css-color-names/-/css-color-names-0.0.4.tgz} @@ -14380,7 +14389,6 @@ packages: engines: {node: '>=4'} dependencies: mimic-response: r2.cnpmjs.org/mimic-response/1.0.1 - dev: false r2.cnpmjs.org/decompress-response/6.0.0: resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/decompress-response/-/decompress-response-6.0.0.tgz} @@ -14402,7 +14410,6 @@ packages: name: deep-extend version: 0.6.0 engines: {node: '>=4.0.0'} - dev: false r2.cnpmjs.org/deep-is/0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/deep-is/-/deep-is-0.1.4.tgz} @@ -14416,13 +14423,11 @@ packages: engines: {node: '>= 10'} dependencies: execa: r2.cnpmjs.org/execa/5.1.1 - dev: false r2.cnpmjs.org/defer-to-connect/1.1.3: resolution: {integrity: sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz} name: defer-to-connect version: 1.1.3 - dev: false r2.cnpmjs.org/defer-to-connect/2.0.1: resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz} @@ -14448,7 +14453,6 @@ packages: name: depd version: 1.1.2 engines: {node: '>= 0.6'} - dev: false r2.cnpmjs.org/depd/2.0.0: resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/depd/-/depd-2.0.0.tgz} @@ -14478,7 +14482,6 @@ packages: version: 2.0.4 dependencies: repeat-string: r2.cnpmjs.org/repeat-string/1.6.1 - dev: false r2.cnpmjs.org/detect-indent/6.1.0: resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/detect-indent/-/detect-indent-6.1.0.tgz} @@ -14498,7 +14501,6 @@ packages: resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/detect-node/-/detect-node-2.1.0.tgz} name: detect-node version: 2.1.0 - dev: false r2.cnpmjs.org/detect-port-alt/1.1.6: resolution: {integrity: sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz} @@ -14551,7 +14553,6 @@ packages: resolution: {integrity: sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/dns-equal/-/dns-equal-1.0.0.tgz} name: dns-equal version: 1.0.0 - dev: false r2.cnpmjs.org/doctrine/2.1.0: resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/doctrine/-/doctrine-2.1.0.tgz} @@ -14639,7 +14640,6 @@ packages: engines: {node: '>=8'} dependencies: is-obj: r2.cnpmjs.org/is-obj/2.0.0 - dev: false r2.cnpmjs.org/dotenv-expand/5.1.0: resolution: {integrity: sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz} @@ -14717,7 +14717,6 @@ packages: resolution: {integrity: sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/emoticon/-/emoticon-3.2.0.tgz} name: emoticon version: 3.2.0 - dev: false r2.cnpmjs.org/encodeurl/1.0.2: resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/encodeurl/-/encodeurl-1.0.2.tgz} @@ -14816,7 +14815,6 @@ packages: name: escape-goat version: 2.1.1 engines: {node: '>=8'} - dev: false r2.cnpmjs.org/escape-html/1.0.3: resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/escape-html/-/escape-html-1.0.3.tgz} @@ -14857,6 +14855,47 @@ packages: source-map: r2.cnpmjs.org/source-map/0.6.1 dev: false + r2.cnpmjs.org/eslint-config-airbnb-base/15.0.0_rbts4wm34tb3x7owcp777e4f4y: + resolution: {integrity: sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz} + id: r2.cnpmjs.org/eslint-config-airbnb-base/15.0.0 + name: eslint-config-airbnb-base + version: 15.0.0 + engines: {node: ^10.12.0 || >=12.0.0} + peerDependencies: + eslint: ^7.32.0 || ^8.2.0 + eslint-plugin-import: ^2.25.2 + dependencies: + confusing-browser-globals: r2.cnpmjs.org/confusing-browser-globals/1.0.11 + eslint: 8.37.0 + eslint-plugin-import: 2.27.5_yo7k32idqwcpvt57tyfdxls5fe + object.assign: 4.1.4 + object.entries: 1.1.6 + semver: r2.cnpmjs.org/semver/6.3.0 + dev: true + + r2.cnpmjs.org/eslint-config-airbnb/19.0.4_m7fpnnvzewd4bw2kt67dqtucga: + resolution: {integrity: sha512-T75QYQVQX57jiNgpF9r1KegMICE94VYwoFQyMGhrvc+lB8YF2E/M/PYDaQe1AJcWaEgqLE+ErXV1Og/+6Vyzew==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/eslint-config-airbnb/-/eslint-config-airbnb-19.0.4.tgz} + id: r2.cnpmjs.org/eslint-config-airbnb/19.0.4 + name: eslint-config-airbnb + version: 19.0.4 + engines: {node: ^10.12.0 || ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^7.32.0 || ^8.2.0 + eslint-plugin-import: ^2.25.3 + eslint-plugin-jsx-a11y: ^6.5.1 + eslint-plugin-react: ^7.28.0 + eslint-plugin-react-hooks: ^4.3.0 + dependencies: + eslint: 8.37.0 + eslint-config-airbnb-base: r2.cnpmjs.org/eslint-config-airbnb-base/15.0.0_rbts4wm34tb3x7owcp777e4f4y + eslint-plugin-import: 2.27.5_yo7k32idqwcpvt57tyfdxls5fe + eslint-plugin-jsx-a11y: 6.7.1_eslint@8.37.0 + eslint-plugin-react: 7.32.2_eslint@8.37.0 + eslint-plugin-react-hooks: 4.6.0_eslint@8.37.0 + object.assign: 4.1.4 + object.entries: 1.1.6 + dev: true + r2.cnpmjs.org/eslint-plugin-flowtype/8.0.3_eslint@8.37.0: resolution: {integrity: sha512-dX8l6qUL6O+fYPtpNRideCFSpmWOUVx5QcaGLVqe/vlDiBSe4vYljDWDETwnyFzpl7By/WVIu6rcrniCgH9BqQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-8.0.3.tgz} id: r2.cnpmjs.org/eslint-plugin-flowtype/8.0.3 @@ -15065,7 +15104,6 @@ packages: onetime: r2.cnpmjs.org/onetime/5.1.2 signal-exit: 3.0.7 strip-final-newline: r2.cnpmjs.org/strip-final-newline/2.0.0 - dev: false r2.cnpmjs.org/exit/0.1.2: resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/exit/-/exit-0.1.2.tgz} @@ -15109,13 +15147,11 @@ packages: engines: {node: '>=0.10.0'} dependencies: is-extendable: r2.cnpmjs.org/is-extendable/0.1.1 - dev: false r2.cnpmjs.org/extend/3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/extend/-/extend-3.0.2.tgz} name: extend version: 3.0.2 - dev: false r2.cnpmjs.org/extendable-error/0.1.7: resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/extendable-error/-/extendable-error-0.1.7.tgz} @@ -15181,7 +15217,6 @@ packages: version: 1.1.3 dependencies: punycode: r2.cnpmjs.org/punycode/1.3.2 - dev: false r2.cnpmjs.org/faye-websocket/0.11.4: resolution: {integrity: sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz} @@ -15190,7 +15225,6 @@ packages: engines: {node: '>=0.8.0'} dependencies: websocket-driver: r2.cnpmjs.org/websocket-driver/0.7.4 - dev: false r2.cnpmjs.org/fbemitter/3.0.0: resolution: {integrity: sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/fbemitter/-/fbemitter-3.0.0.tgz} @@ -15246,7 +15280,6 @@ packages: loader-utils: 2.0.4 schema-utils: r2.cnpmjs.org/schema-utils/3.1.1 webpack: 5.77.0 - dev: false r2.cnpmjs.org/fill-range/7.0.1: resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/fill-range/-/fill-range-7.0.1.tgz} @@ -15522,7 +15555,6 @@ packages: resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz} name: get-own-enumerable-property-symbols version: 3.0.2 - dev: false r2.cnpmjs.org/get-package-type/0.1.0: resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/get-package-type/-/get-package-type-0.1.0.tgz} @@ -15545,7 +15577,6 @@ packages: engines: {node: '>=6'} dependencies: pump: r2.cnpmjs.org/pump/3.0.0 - dev: false r2.cnpmjs.org/get-stream/5.2.0: resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/get-stream/-/get-stream-5.2.0.tgz} @@ -15554,7 +15585,6 @@ packages: engines: {node: '>=8'} dependencies: pump: r2.cnpmjs.org/pump/3.0.0 - dev: false r2.cnpmjs.org/get-stream/6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/get-stream/-/get-stream-6.0.1.tgz} @@ -15702,7 +15732,6 @@ packages: p-cancelable: r2.cnpmjs.org/p-cancelable/1.1.0 to-readable-stream: r2.cnpmjs.org/to-readable-stream/1.0.0 url-parse-lax: r2.cnpmjs.org/url-parse-lax/3.0.0 - dev: false r2.cnpmjs.org/grapheme-splitter/1.0.4: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz} @@ -15719,7 +15748,6 @@ packages: kind-of: r2.cnpmjs.org/kind-of/6.0.3 section-matter: r2.cnpmjs.org/section-matter/1.0.0 strip-bom-string: r2.cnpmjs.org/strip-bom-string/1.0.0 - dev: false r2.cnpmjs.org/gzip-size/6.0.0: resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/gzip-size/-/gzip-size-6.0.0.tgz} @@ -15733,7 +15761,6 @@ packages: resolution: {integrity: sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/handle-thing/-/handle-thing-2.0.1.tgz} name: handle-thing version: 2.0.1 - dev: false r2.cnpmjs.org/har-schema/2.0.0: resolution: {integrity: sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/har-schema/-/har-schema-2.0.0.tgz} @@ -15790,7 +15817,6 @@ packages: name: has-yarn version: 2.1.0 engines: {node: '>=8'} - dev: false r2.cnpmjs.org/has/1.0.3: resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/has/-/has-1.0.3.tgz} @@ -15839,7 +15865,6 @@ packages: style-to-object: r2.cnpmjs.org/style-to-object/0.3.0 unist-util-is: r2.cnpmjs.org/unist-util-is/4.1.0 web-namespaces: r2.cnpmjs.org/web-namespaces/1.1.4 - dev: false r2.cnpmjs.org/hast-util-from-parse5/6.0.1: resolution: {integrity: sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz} @@ -15852,13 +15877,11 @@ packages: vfile: r2.cnpmjs.org/vfile/4.2.1 vfile-location: r2.cnpmjs.org/vfile-location/3.2.0 web-namespaces: r2.cnpmjs.org/web-namespaces/1.1.4 - dev: false r2.cnpmjs.org/hast-util-parse-selector/2.2.5: resolution: {integrity: sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz} name: hast-util-parse-selector version: 2.2.5 - dev: false r2.cnpmjs.org/hast-util-raw/6.0.1: resolution: {integrity: sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz} @@ -15875,7 +15898,6 @@ packages: web-namespaces: r2.cnpmjs.org/web-namespaces/1.1.4 xtend: r2.cnpmjs.org/xtend/4.0.2 zwitch: r2.cnpmjs.org/zwitch/1.0.5 - dev: false r2.cnpmjs.org/hast-util-to-parse5/6.0.0: resolution: {integrity: sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz} @@ -15887,7 +15909,6 @@ packages: web-namespaces: r2.cnpmjs.org/web-namespaces/1.1.4 xtend: r2.cnpmjs.org/xtend/4.0.2 zwitch: r2.cnpmjs.org/zwitch/1.0.5 - dev: false r2.cnpmjs.org/hastscript/6.0.0: resolution: {integrity: sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hastscript/-/hastscript-6.0.0.tgz} @@ -15899,7 +15920,6 @@ packages: hast-util-parse-selector: r2.cnpmjs.org/hast-util-parse-selector/2.2.5 property-information: r2.cnpmjs.org/property-information/5.6.0 space-separated-tokens: r2.cnpmjs.org/space-separated-tokens/1.1.5 - dev: false r2.cnpmjs.org/he/1.2.0: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/he/-/he-1.2.0.tgz} @@ -15930,7 +15950,6 @@ packages: tiny-invariant: 1.3.1 tiny-warning: r2.cnpmjs.org/tiny-warning/1.0.3 value-equal: r2.cnpmjs.org/value-equal/1.0.1 - dev: false r2.cnpmjs.org/hmac-drbg/1.0.1: resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz} @@ -15947,7 +15966,6 @@ packages: version: 3.3.2 dependencies: react-is: r2.cnpmjs.org/react-is/16.13.1 - dev: false r2.cnpmjs.org/hoopy/0.1.4: resolution: {integrity: sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hoopy/-/hoopy-0.1.4.tgz} @@ -15971,7 +15989,6 @@ packages: obuf: r2.cnpmjs.org/obuf/1.1.2 readable-stream: 2.3.8 wbuf: r2.cnpmjs.org/wbuf/1.7.3 - dev: false r2.cnpmjs.org/hsl-regex/1.0.0: resolution: {integrity: sha512-M5ezZw4LzXbBKMruP+BNANf0k+19hDQMgpzBIYnya//Al+fjNct9Wf3b1WedLqdEs2hKBvxq/jh+DsHJLj0F9A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz} @@ -16019,7 +16036,6 @@ packages: resolution: {integrity: sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz} name: html-void-elements version: 1.0.5 - dev: false r2.cnpmjs.org/html-webpack-plugin/5.5.0: resolution: {integrity: sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz} @@ -16051,7 +16067,6 @@ packages: pretty-error: r2.cnpmjs.org/pretty-error/4.0.0 tapable: r2.cnpmjs.org/tapable/2.2.1 webpack: 5.77.0 - dev: false r2.cnpmjs.org/htmlparser2/6.1.0: resolution: {integrity: sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz} @@ -16067,7 +16082,6 @@ packages: resolution: {integrity: sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz} name: http-deceiver version: 1.2.7 - dev: false r2.cnpmjs.org/http-errors/1.6.3: resolution: {integrity: sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/http-errors/-/http-errors-1.6.3.tgz} @@ -16079,7 +16093,6 @@ packages: inherits: r2.cnpmjs.org/inherits/2.0.3 setprototypeof: r2.cnpmjs.org/setprototypeof/1.1.0 statuses: r2.cnpmjs.org/statuses/1.5.0 - dev: false r2.cnpmjs.org/http-errors/2.0.0: resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/http-errors/-/http-errors-2.0.0.tgz} @@ -16123,7 +16136,6 @@ packages: requires-port: r2.cnpmjs.org/requires-port/1.0.0 transitivePeerDependencies: - debug - dev: false r2.cnpmjs.org/http-signature/1.2.0: resolution: {integrity: sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/http-signature/-/http-signature-1.2.0.tgz} @@ -16163,7 +16175,6 @@ packages: name: human-signals version: 2.1.0 engines: {node: '>=10.17.0'} - dev: false r2.cnpmjs.org/iconv-lite/0.4.24: resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz} @@ -16253,7 +16264,6 @@ packages: name: import-lazy version: 2.1.0 engines: {node: '>=4'} - dev: false r2.cnpmjs.org/imurmurhash/0.1.4: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz} @@ -16279,7 +16289,6 @@ packages: resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/inherits/-/inherits-2.0.3.tgz} name: inherits version: 2.0.3 - dev: false r2.cnpmjs.org/inherits/2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/inherits/-/inherits-2.0.4.tgz} @@ -16296,20 +16305,17 @@ packages: name: ini version: 2.0.0 engines: {node: '>=10'} - dev: false r2.cnpmjs.org/inline-style-parser/0.1.1: resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz} name: inline-style-parser version: 0.1.1 - dev: false r2.cnpmjs.org/interpret/1.4.0: resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/interpret/-/interpret-1.4.0.tgz} name: interpret version: 1.4.0 engines: {node: '>= 0.10'} - dev: false r2.cnpmjs.org/invariant/2.2.4: resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/invariant/-/invariant-2.2.4.tgz} @@ -16329,13 +16335,11 @@ packages: name: ipaddr.js version: 2.0.1 engines: {node: '>= 10'} - dev: false r2.cnpmjs.org/is-alphabetical/1.0.4: resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz} name: is-alphabetical version: 1.0.4 - dev: false r2.cnpmjs.org/is-alphanumerical/1.0.4: resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz} @@ -16344,7 +16348,6 @@ packages: dependencies: is-alphabetical: r2.cnpmjs.org/is-alphabetical/1.0.4 is-decimal: r2.cnpmjs.org/is-decimal/1.0.4 - dev: false r2.cnpmjs.org/is-arguments/1.1.1: resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-arguments/-/is-arguments-1.1.1.tgz} @@ -16395,7 +16398,6 @@ packages: name: is-buffer version: 2.0.5 engines: {node: '>=4'} - dev: false r2.cnpmjs.org/is-ci/2.0.0: resolution: {integrity: sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-ci/-/is-ci-2.0.0.tgz} @@ -16404,7 +16406,6 @@ packages: hasBin: true dependencies: ci-info: r2.cnpmjs.org/ci-info/2.0.0 - dev: false r2.cnpmjs.org/is-ci/3.0.1: resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-ci/-/is-ci-3.0.1.tgz} @@ -16440,7 +16441,6 @@ packages: resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-decimal/-/is-decimal-1.0.4.tgz} name: is-decimal version: 1.0.4 - dev: false r2.cnpmjs.org/is-docker/2.2.1: resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-docker/-/is-docker-2.2.1.tgz} @@ -16454,7 +16454,6 @@ packages: name: is-extendable version: 0.1.1 engines: {node: '>=0.10.0'} - dev: false r2.cnpmjs.org/is-extglob/2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-extglob/-/is-extglob-2.1.1.tgz} @@ -16515,7 +16514,6 @@ packages: resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz} name: is-hexadecimal version: 1.0.4 - dev: false r2.cnpmjs.org/is-installed-globally/0.4.0: resolution: {integrity: sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz} @@ -16525,13 +16523,11 @@ packages: dependencies: global-dirs: 3.0.1 is-path-inside: r2.cnpmjs.org/is-path-inside/3.0.3 - dev: false r2.cnpmjs.org/is-map/2.0.2: resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-map/-/is-map-2.0.2.tgz} name: is-map version: 2.0.2 - dev: false r2.cnpmjs.org/is-module/1.0.0: resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-module/-/is-module-1.0.0.tgz} @@ -16559,7 +16555,6 @@ packages: name: is-npm version: 5.0.0 engines: {node: '>=10'} - dev: false r2.cnpmjs.org/is-number/7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-number/-/is-number-7.0.0.tgz} @@ -16572,21 +16567,18 @@ packages: name: is-obj version: 1.0.1 engines: {node: '>=0.10.0'} - dev: false r2.cnpmjs.org/is-obj/2.0.0: resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-obj/-/is-obj-2.0.0.tgz} name: is-obj version: 2.0.0 engines: {node: '>=8'} - dev: false r2.cnpmjs.org/is-path-cwd/2.2.0: resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz} name: is-path-cwd version: 2.2.0 engines: {node: '>=6'} - dev: false r2.cnpmjs.org/is-path-inside/3.0.3: resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz} @@ -16606,14 +16598,12 @@ packages: name: is-plain-obj version: 2.1.0 engines: {node: '>=8'} - dev: false r2.cnpmjs.org/is-plain-obj/3.0.0: resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz} name: is-plain-obj version: 3.0.0 engines: {node: '>=10'} - dev: false r2.cnpmjs.org/is-plain-object/2.0.4: resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz} @@ -16651,7 +16641,6 @@ packages: name: is-regexp version: 1.0.0 engines: {node: '>=0.10.0'} - dev: false r2.cnpmjs.org/is-root/2.1.0: resolution: {integrity: sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-root/-/is-root-2.1.0.tgz} @@ -16663,14 +16652,12 @@ packages: resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-set/-/is-set-2.0.2.tgz} name: is-set version: 2.0.2 - dev: false r2.cnpmjs.org/is-stream/2.0.1: resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-stream/-/is-stream-2.0.1.tgz} name: is-stream version: 2.0.1 engines: {node: '>=8'} - dev: false r2.cnpmjs.org/is-stream/3.0.0: resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-stream/-/is-stream-3.0.0.tgz} @@ -16708,13 +16695,11 @@ packages: resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz} name: is-typedarray version: 1.0.0 - dev: false r2.cnpmjs.org/is-weakmap/2.0.1: resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz} name: is-weakmap version: 2.0.1 - dev: false r2.cnpmjs.org/is-weakref/1.0.2: resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-weakref/-/is-weakref-1.0.2.tgz} @@ -16730,13 +16715,11 @@ packages: dependencies: call-bind: r2.cnpmjs.org/call-bind/1.0.2 get-intrinsic: 1.2.0 - dev: false r2.cnpmjs.org/is-whitespace-character/1.0.4: resolution: {integrity: sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz} name: is-whitespace-character version: 1.0.4 - dev: false r2.cnpmjs.org/is-windows/1.0.2: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-windows/-/is-windows-1.0.2.tgz} @@ -16749,7 +16732,6 @@ packages: resolution: {integrity: sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-word-character/-/is-word-character-1.0.4.tgz} name: is-word-character version: 1.0.4 - dev: false r2.cnpmjs.org/is-wsl/2.2.0: resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-wsl/-/is-wsl-2.2.0.tgz} @@ -16763,25 +16745,21 @@ packages: resolution: {integrity: sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz} name: is-yarn-global version: 0.3.0 - dev: false r2.cnpmjs.org/isarray/0.0.1: resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/isarray/-/isarray-0.0.1.tgz} name: isarray version: 0.0.1 - dev: false r2.cnpmjs.org/isarray/1.0.0: resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/isarray/-/isarray-1.0.0.tgz} name: isarray version: 1.0.0 - dev: false r2.cnpmjs.org/isarray/2.0.5: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/isarray/-/isarray-2.0.5.tgz} name: isarray version: 2.0.5 - dev: false r2.cnpmjs.org/isexe/2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/isexe/-/isexe-2.0.0.tgz} @@ -16952,7 +16930,6 @@ packages: resolution: {integrity: sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/json-buffer/-/json-buffer-3.0.0.tgz} name: json-buffer version: 3.0.0 - dev: false r2.cnpmjs.org/json-buffer/3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/json-buffer/-/json-buffer-3.0.1.tgz} @@ -16980,7 +16957,6 @@ packages: resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz} name: json-schema-traverse version: 1.0.0 - dev: false r2.cnpmjs.org/json-schema/0.4.0: resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/json-schema/-/json-schema-0.4.0.tgz} @@ -17041,7 +17017,6 @@ packages: version: 3.1.0 dependencies: json-buffer: r2.cnpmjs.org/json-buffer/3.0.0 - dev: false r2.cnpmjs.org/kind-of/6.0.3: resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/kind-of/-/kind-of-6.0.3.tgz} @@ -17069,7 +17044,6 @@ packages: version: 1.0.5 dependencies: language-subtag-registry: 0.3.22 - dev: false r2.cnpmjs.org/latest-version/5.1.0: resolution: {integrity: sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/latest-version/-/latest-version-5.1.0.tgz} @@ -17078,7 +17052,6 @@ packages: engines: {node: '>=8'} dependencies: package-json: r2.cnpmjs.org/package-json/6.5.0 - dev: false r2.cnpmjs.org/level-transcoder/1.0.1: resolution: {integrity: sha512-t7bFwFtsQeD8cl8NIoQ2iwxA0CL/9IFw7/9gAjOonH0PWTTiRfY7Hq+Ejbsxh86tXobDQ6IOiddjNYIfOBs06w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/level-transcoder/-/level-transcoder-1.0.1.tgz} @@ -17095,7 +17068,6 @@ packages: name: leven version: 3.1.0 engines: {node: '>=6'} - dev: false r2.cnpmjs.org/levn/0.3.0: resolution: {integrity: sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/levn/-/levn-0.3.0.tgz} @@ -17282,14 +17254,12 @@ packages: name: lowercase-keys version: 1.0.1 engines: {node: '>=0.10.0'} - dev: false r2.cnpmjs.org/lowercase-keys/2.0.0: resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz} name: lowercase-keys version: 2.0.0 engines: {node: '>=8'} - dev: false r2.cnpmjs.org/lowercase-keys/3.0.0: resolution: {integrity: sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz} @@ -17362,7 +17332,6 @@ packages: resolution: {integrity: sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz} name: markdown-escapes version: 1.0.4 - dev: false r2.cnpmjs.org/material-ripple-effects/2.0.1: resolution: {integrity: sha512-hHlUkZAuXbP94lu02VgrPidbZ3hBtgXBtjlwR8APNqOIgDZMV8MCIcsclL8FmGJQHvnORyvoQgC965vPsiyXLQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/material-ripple-effects/-/material-ripple-effects-2.0.1.tgz} @@ -17392,7 +17361,6 @@ packages: version: 4.0.0 dependencies: unist-util-remove: r2.cnpmjs.org/unist-util-remove/2.1.0 - dev: false r2.cnpmjs.org/mdast-util-definitions/4.0.0: resolution: {integrity: sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz} @@ -17400,7 +17368,6 @@ packages: version: 4.0.0 dependencies: unist-util-visit: r2.cnpmjs.org/unist-util-visit/2.0.3 - dev: false r2.cnpmjs.org/mdast-util-to-hast/10.0.1: resolution: {integrity: sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz} @@ -17415,13 +17382,11 @@ packages: unist-util-generated: r2.cnpmjs.org/unist-util-generated/1.1.6 unist-util-position: r2.cnpmjs.org/unist-util-position/3.1.0 unist-util-visit: r2.cnpmjs.org/unist-util-visit/2.0.3 - dev: false r2.cnpmjs.org/mdast-util-to-string/2.0.0: resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz} name: mdast-util-to-string version: 2.0.0 - dev: false r2.cnpmjs.org/mdn-data/2.0.14: resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mdn-data/-/mdn-data-2.0.14.tgz} @@ -17438,7 +17403,6 @@ packages: resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mdurl/-/mdurl-1.0.1.tgz} name: mdurl version: 1.0.1 - dev: false r2.cnpmjs.org/media-typer/0.3.0: resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/media-typer/-/media-typer-0.3.0.tgz} @@ -17520,7 +17484,6 @@ packages: name: mime-db version: 1.33.0 engines: {node: '>= 0.6'} - dev: false r2.cnpmjs.org/mime-types/2.1.18: resolution: {integrity: sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mime-types/-/mime-types-2.1.18.tgz} @@ -17529,7 +17492,6 @@ packages: engines: {node: '>= 0.6'} dependencies: mime-db: r2.cnpmjs.org/mime-db/1.33.0 - dev: false r2.cnpmjs.org/mime/1.6.0: resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mime/-/mime-1.6.0.tgz} @@ -17556,7 +17518,6 @@ packages: name: mimic-response version: 1.0.1 engines: {node: '>=4'} - dev: false r2.cnpmjs.org/mimic-response/3.1.0: resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mimic-response/-/mimic-response-3.1.0.tgz} @@ -17833,7 +17794,6 @@ packages: name: normalize-url version: 4.5.1 engines: {node: '>=8'} - dev: false r2.cnpmjs.org/normalize-url/6.1.0: resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/normalize-url/-/normalize-url-6.1.0.tgz} @@ -17943,14 +17903,12 @@ packages: resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/obuf/-/obuf-1.1.2.tgz} name: obuf version: 1.1.2 - dev: false r2.cnpmjs.org/on-headers/1.0.2: resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/on-headers/-/on-headers-1.0.2.tgz} name: on-headers version: 1.0.2 engines: {node: '>= 0.8'} - dev: false r2.cnpmjs.org/once/1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/once/-/once-1.4.0.tgz} @@ -17981,7 +17939,6 @@ packages: name: opener version: 1.5.2 hasBin: true - dev: false r2.cnpmjs.org/optionator/0.8.3: resolution: {integrity: sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/optionator/-/optionator-0.8.3.tgz} @@ -18040,7 +17997,6 @@ packages: name: p-cancelable version: 1.1.0 engines: {node: '>=6'} - dev: false r2.cnpmjs.org/p-cancelable/2.1.1: resolution: {integrity: sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz} @@ -18162,7 +18118,6 @@ packages: registry-auth-token: 4.2.2 registry-url: r2.cnpmjs.org/registry-url/5.1.0 semver: r2.cnpmjs.org/semver/6.3.0 - dev: false r2.cnpmjs.org/param-case/3.0.4: resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/param-case/-/param-case-3.0.4.tgz} @@ -18203,7 +18158,6 @@ packages: is-alphanumerical: r2.cnpmjs.org/is-alphanumerical/1.0.4 is-decimal: r2.cnpmjs.org/is-decimal/1.0.4 is-hexadecimal: r2.cnpmjs.org/is-hexadecimal/1.0.4 - dev: false r2.cnpmjs.org/parse-json/4.0.0: resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/parse-json/-/parse-json-4.0.0.tgz} @@ -18236,7 +18190,6 @@ packages: resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/parse5/-/parse5-6.0.1.tgz} name: parse5 version: 6.0.1 - dev: false r2.cnpmjs.org/parseurl/1.3.3: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/parseurl/-/parseurl-1.3.3.tgz} @@ -18280,7 +18233,6 @@ packages: resolution: {integrity: sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz} name: path-is-inside version: 1.0.2 - dev: false r2.cnpmjs.org/path-key/2.0.1: resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/path-key/-/path-key-2.0.1.tgz} @@ -18318,13 +18270,11 @@ packages: version: 1.8.0 dependencies: isarray: r2.cnpmjs.org/isarray/0.0.1 - dev: false r2.cnpmjs.org/path-to-regexp/2.2.1: resolution: {integrity: sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz} name: path-to-regexp version: 2.2.1 - dev: false r2.cnpmjs.org/path-type/3.0.0: resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/path-type/-/path-type-3.0.0.tgz} @@ -18726,7 +18676,6 @@ packages: name: prepend-http version: 2.0.0 engines: {node: '>=4'} - dev: false r2.cnpmjs.org/prettier-linter-helpers/1.0.0: resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz} @@ -18764,13 +18713,11 @@ packages: name: pretty-time version: 1.1.0 engines: {node: '>=4'} - dev: false r2.cnpmjs.org/process-nextick-args/2.0.1: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz} name: process-nextick-args version: 2.0.1 - dev: false r2.cnpmjs.org/process/0.11.10: resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/process/-/process-0.11.10.tgz} @@ -18800,7 +18747,6 @@ packages: version: 5.6.0 dependencies: xtend: r2.cnpmjs.org/xtend/4.0.2 - dev: false r2.cnpmjs.org/proxy-addr/2.0.7: resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz} @@ -18842,7 +18788,6 @@ packages: dependencies: end-of-stream: r2.cnpmjs.org/end-of-stream/1.4.4 once: r2.cnpmjs.org/once/1.4.0 - dev: false r2.cnpmjs.org/punycode/1.3.2: resolution: {integrity: sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/punycode/-/punycode-1.3.2.tgz} @@ -18863,7 +18808,6 @@ packages: engines: {node: '>=8'} dependencies: escape-goat: r2.cnpmjs.org/escape-goat/2.1.1 - dev: false r2.cnpmjs.org/pure-color/1.3.0: resolution: {integrity: sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/pure-color/-/pure-color-1.3.0.tgz} @@ -18919,7 +18863,6 @@ packages: version: 6.0.2 dependencies: inherits: r2.cnpmjs.org/inherits/2.0.4 - dev: false r2.cnpmjs.org/quick-lru/4.0.1: resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/quick-lru/-/quick-lru-4.0.1.tgz} @@ -18963,7 +18906,6 @@ packages: name: range-parser version: 1.2.0 engines: {node: '>= 0.6'} - dev: false r2.cnpmjs.org/range-parser/1.2.1: resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/range-parser/-/range-parser-1.2.1.tgz} @@ -18981,7 +18923,6 @@ packages: ini: r2.cnpmjs.org/ini/1.3.8 minimist: 1.2.8 strip-json-comments: r2.cnpmjs.org/strip-json-comments/2.0.1 - dev: false r2.cnpmjs.org/react-app-polyfill/3.0.0: resolution: {integrity: sha512-sZ41cxiU5llIB003yxxQBYrARBqe0repqPTTYBTmMqTz9szeBbE37BehCE891NZsmdZqqP+xWKdT3eo3vOzN8w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/react-app-polyfill/-/react-app-polyfill-3.0.0.tgz} @@ -19078,7 +19019,6 @@ packages: '@babel/runtime': 7.21.0 react-loadable: r2.cnpmjs.org/@docusaurus/react-loadable/5.5.2_react@18.2.0 webpack: 5.77.0 - dev: false r2.cnpmjs.org/react-refresh/0.11.0: resolution: {integrity: sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/react-refresh/-/react-refresh-0.11.0.tgz} @@ -19099,7 +19039,6 @@ packages: '@babel/runtime': 7.21.0 react: 18.2.0 react-router: 5.3.4_react@18.2.0 - dev: false r2.cnpmjs.org/read-cache/1.0.0: resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/read-cache/-/read-cache-1.0.0.tgz} @@ -19175,7 +19114,6 @@ packages: engines: {node: '>= 0.10'} dependencies: resolve: 1.22.1 - dev: false r2.cnpmjs.org/redent/3.0.0: resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/redent/-/redent-3.0.0.tgz} @@ -19213,7 +19151,6 @@ packages: engines: {node: '>=8'} dependencies: rc: r2.cnpmjs.org/rc/1.2.8 - dev: false r2.cnpmjs.org/relateurl/0.2.7: resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/relateurl/-/relateurl-0.2.7.tgz} @@ -19229,13 +19166,11 @@ packages: emoticon: r2.cnpmjs.org/emoticon/3.2.0 node-emoji: r2.cnpmjs.org/node-emoji/1.11.0 unist-util-visit: r2.cnpmjs.org/unist-util-visit/2.0.3 - dev: false r2.cnpmjs.org/remark-footnotes/2.0.0: resolution: {integrity: sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz} name: remark-footnotes version: 2.0.0 - dev: false r2.cnpmjs.org/remark-mdx/1.6.22: resolution: {integrity: sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz} @@ -19252,7 +19187,6 @@ packages: unified: r2.cnpmjs.org/unified/9.2.0 transitivePeerDependencies: - supports-color - dev: false r2.cnpmjs.org/remark-parse/8.0.3: resolution: {integrity: sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/remark-parse/-/remark-parse-8.0.3.tgz} @@ -19275,7 +19209,6 @@ packages: unist-util-remove-position: r2.cnpmjs.org/unist-util-remove-position/2.0.1 vfile-location: r2.cnpmjs.org/vfile-location/3.2.0 xtend: r2.cnpmjs.org/xtend/4.0.2 - dev: false r2.cnpmjs.org/remark-squeeze-paragraphs/4.0.0: resolution: {integrity: sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz} @@ -19283,7 +19216,6 @@ packages: version: 4.0.0 dependencies: mdast-squeeze-paragraphs: r2.cnpmjs.org/mdast-squeeze-paragraphs/4.0.0 - dev: false r2.cnpmjs.org/renderkid/3.0.0: resolution: {integrity: sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/renderkid/-/renderkid-3.0.0.tgz} @@ -19301,7 +19233,6 @@ packages: name: repeat-string version: 1.6.1 engines: {node: '>=0.10'} - dev: false r2.cnpmjs.org/request/2.88.2: resolution: {integrity: sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/request/-/request-2.88.2.tgz} @@ -19343,13 +19274,11 @@ packages: name: require-from-string version: 2.0.2 engines: {node: '>=0.10.0'} - dev: false r2.cnpmjs.org/require-like/0.1.2: resolution: {integrity: sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/require-like/-/require-like-0.1.2.tgz} name: require-like version: 0.1.2 - dev: false r2.cnpmjs.org/require-main-filename/2.0.0: resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz} @@ -19361,7 +19290,6 @@ packages: resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/requires-port/-/requires-port-1.0.0.tgz} name: requires-port version: 1.0.0 - dev: false r2.cnpmjs.org/resize-observer-polyfill/1.5.1: resolution: {integrity: sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz} @@ -19400,7 +19328,6 @@ packages: resolution: {integrity: sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz} name: resolve-pathname version: 3.0.0 - dev: false r2.cnpmjs.org/resolve-url-loader/4.0.0: resolution: {integrity: sha512-05VEMczVREcbtT7Bz+C+96eUO5HDNvdthIiMB34t7FcF8ehcu4wC0sSgPUubs3XW2Q3CNLJk/BJrCU9wVRymiA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/resolve-url-loader/-/resolve-url-loader-4.0.0.tgz} @@ -19429,7 +19356,6 @@ packages: version: 1.0.2 dependencies: lowercase-keys: r2.cnpmjs.org/lowercase-keys/1.0.1 - dev: false r2.cnpmjs.org/restore-cursor/3.1.0: resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz} @@ -19446,7 +19372,6 @@ packages: name: retry version: 0.13.1 engines: {node: '>= 4'} - dev: false r2.cnpmjs.org/reusify/1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/reusify/-/reusify-1.0.4.tgz} @@ -19600,7 +19525,6 @@ packages: resolution: {integrity: sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz} name: rtl-detect version: 1.0.4 - dev: false r2.cnpmjs.org/rtlcss/3.5.0: resolution: {integrity: sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/rtlcss/-/rtlcss-3.5.0.tgz} @@ -19639,7 +19563,6 @@ packages: resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz} name: safe-buffer version: 5.1.2 - dev: false r2.cnpmjs.org/safe-buffer/5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz} @@ -19718,7 +19641,6 @@ packages: ajv: 8.12.0 ajv-formats: r2.cnpmjs.org/ajv-formats/2.1.1 ajv-keywords: r2.cnpmjs.org/ajv-keywords/5.1.0_ajv@8.12.0 - dev: false r2.cnpmjs.org/screenfull/5.2.0: resolution: {integrity: sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/screenfull/-/screenfull-5.2.0.tgz} @@ -19747,13 +19669,11 @@ packages: dependencies: extend-shallow: r2.cnpmjs.org/extend-shallow/2.0.1 kind-of: r2.cnpmjs.org/kind-of/6.0.3 - dev: false r2.cnpmjs.org/select-hose/2.0.0: resolution: {integrity: sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/select-hose/-/select-hose-2.0.0.tgz} name: select-hose version: 2.0.0 - dev: false r2.cnpmjs.org/semver-diff/3.1.1: resolution: {integrity: sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/semver-diff/-/semver-diff-3.1.1.tgz} @@ -19762,7 +19682,6 @@ packages: engines: {node: '>=8'} dependencies: semver: r2.cnpmjs.org/semver/6.3.0 - dev: false r2.cnpmjs.org/semver/5.7.1: resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/semver/-/semver-5.7.1.tgz} @@ -19814,7 +19733,6 @@ packages: parseurl: r2.cnpmjs.org/parseurl/1.3.3 transitivePeerDependencies: - supports-color - dev: false r2.cnpmjs.org/servify/0.1.12: resolution: {integrity: sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/servify/-/servify-0.1.12.tgz} @@ -19853,7 +19771,6 @@ packages: resolution: {integrity: sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz} name: setprototypeof version: 1.1.0 - dev: false r2.cnpmjs.org/setprototypeof/1.2.0: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz} @@ -19944,7 +19861,6 @@ packages: '@polka/url': r2.cnpmjs.org/@polka/url/1.0.0-next.21 mrmime: 1.0.1 totalist: r2.cnpmjs.org/totalist/1.1.0 - dev: false r2.cnpmjs.org/sisteransi/1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/sisteransi/-/sisteransi-1.0.5.tgz} @@ -19962,7 +19878,6 @@ packages: name: slash version: 4.0.0 engines: {node: '>=12'} - dev: false r2.cnpmjs.org/slice-ansi/3.0.0: resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz} @@ -20019,7 +19934,6 @@ packages: faye-websocket: r2.cnpmjs.org/faye-websocket/0.11.4 uuid: r2.cnpmjs.org/uuid/8.3.2 websocket-driver: r2.cnpmjs.org/websocket-driver/0.7.4 - dev: false r2.cnpmjs.org/solc/0.7.6: resolution: {integrity: sha512-WsR/W7CXwh2VnmZapB4JrsDeLlshoKBz5Pz/zYNulB6LBsOEHI2Zj/GeKLMFcvv57OHiXHvxq5ZOQB+EdqxlxQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/solc/-/solc-0.7.6.tgz} @@ -20060,7 +19974,6 @@ packages: name: source-map version: 0.5.7 engines: {node: '>=0.10.0'} - dev: false r2.cnpmjs.org/source-map/0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/source-map/-/source-map-0.6.1.tgz} @@ -20087,7 +20000,6 @@ packages: resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz} name: space-separated-tokens version: 1.1.5 - dev: false r2.cnpmjs.org/spawndamnit/2.0.0: resolution: {integrity: sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/spawndamnit/-/spawndamnit-2.0.0.tgz} @@ -20126,7 +20038,6 @@ packages: wbuf: r2.cnpmjs.org/wbuf/1.7.3 transitivePeerDependencies: - supports-color - dev: false r2.cnpmjs.org/spdy/4.0.2: resolution: {integrity: sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/spdy/-/spdy-4.0.2.tgz} @@ -20141,7 +20052,6 @@ packages: spdy-transport: r2.cnpmjs.org/spdy-transport/3.0.0 transitivePeerDependencies: - supports-color - dev: false r2.cnpmjs.org/sprintf-js/1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz} @@ -20164,14 +20074,12 @@ packages: resolution: {integrity: sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/state-toggle/-/state-toggle-1.0.3.tgz} name: state-toggle version: 1.0.3 - dev: false r2.cnpmjs.org/statuses/1.5.0: resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/statuses/-/statuses-1.5.0.tgz} name: statuses version: 1.5.0 engines: {node: '>= 0.6'} - dev: false r2.cnpmjs.org/statuses/2.0.1: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/statuses/-/statuses-2.0.1.tgz} @@ -20282,7 +20190,6 @@ packages: version: 1.1.1 dependencies: safe-buffer: r2.cnpmjs.org/safe-buffer/5.1.2 - dev: false r2.cnpmjs.org/string_decoder/1.3.0: resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/string_decoder/-/string_decoder-1.3.0.tgz} @@ -20300,7 +20207,6 @@ packages: get-own-enumerable-property-symbols: r2.cnpmjs.org/get-own-enumerable-property-symbols/3.0.2 is-obj: r2.cnpmjs.org/is-obj/1.0.1 is-regexp: r2.cnpmjs.org/is-regexp/1.0.0 - dev: false r2.cnpmjs.org/strip-ansi/6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz} @@ -20323,7 +20229,6 @@ packages: name: strip-bom-string version: 1.0.0 engines: {node: '>=0.10.0'} - dev: false r2.cnpmjs.org/strip-bom/3.0.0: resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/strip-bom/-/strip-bom-3.0.0.tgz} @@ -20350,7 +20255,6 @@ packages: name: strip-final-newline version: 2.0.0 engines: {node: '>=6'} - dev: false r2.cnpmjs.org/strip-final-newline/3.0.0: resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz} @@ -20381,7 +20285,6 @@ packages: name: strip-json-comments version: 2.0.1 engines: {node: '>=0.10.0'} - dev: false r2.cnpmjs.org/strip-json-comments/3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz} @@ -20425,7 +20328,6 @@ packages: version: 0.3.0 dependencies: inline-style-parser: r2.cnpmjs.org/inline-style-parser/0.1.1 - dev: false r2.cnpmjs.org/style-value-types/5.0.0: resolution: {integrity: sha512-08yq36Ikn4kx4YU6RD7jWEv27v4V+PUsOGa4n/as8Et3CuODMJQ00ENeAVXAeydX4Z2j1XHZF1K2sX4mGl18fA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/style-value-types/-/style-value-types-5.0.0.tgz} @@ -20473,7 +20375,6 @@ packages: resolution: {integrity: sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/svg-parser/-/svg-parser-2.0.4.tgz} name: svg-parser version: 2.0.4 - dev: false r2.cnpmjs.org/svgo/1.3.2: resolution: {integrity: sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/svgo/-/svgo-1.3.2.tgz} @@ -20642,7 +20543,6 @@ packages: resolution: {integrity: sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/thunky/-/thunky-1.1.0.tgz} name: thunky version: 1.1.0 - dev: false r2.cnpmjs.org/time-stamp/2.2.0: resolution: {integrity: sha512-zxke8goJQpBeEgD82CXABeMh0LSJcj7CXEd0OHOg45HgcofF7pxNwZm9+RknpxpDhwN4gFpySkApKfFYfRQnUA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/time-stamp/-/time-stamp-2.2.0.tgz} @@ -20671,7 +20571,6 @@ packages: resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz} name: tiny-warning version: 1.0.3 - dev: false r2.cnpmjs.org/tinycolor/0.0.1: resolution: {integrity: sha512-+CorETse1kl98xg0WAzii8DTT4ABF4R3nquhrkIbVGcw1T8JYs5Gfx9xEfGINPUZGDj9C4BmOtuKeaTtuuRolg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/tinycolor/-/tinycolor-0.0.1.tgz} @@ -20714,7 +20613,6 @@ packages: name: to-readable-stream version: 1.0.0 engines: {node: '>=6'} - dev: false r2.cnpmjs.org/to-regex-range/5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz} @@ -20735,7 +20633,6 @@ packages: name: totalist version: 1.1.0 engines: {node: '>=6'} - dev: false r2.cnpmjs.org/tough-cookie/2.5.0: resolution: {integrity: sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz} @@ -20781,20 +20678,17 @@ packages: resolution: {integrity: sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz} name: trim-trailing-lines version: 1.1.4 - dev: false r2.cnpmjs.org/trim/0.0.1: resolution: {integrity: sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/trim/-/trim-0.0.1.tgz} name: trim version: 0.0.1 deprecated: Use String.prototype.trim() instead - dev: false r2.cnpmjs.org/trough/1.0.5: resolution: {integrity: sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/trough/-/trough-1.0.5.tgz} name: trough version: 1.0.5 - dev: false r2.cnpmjs.org/tryer/1.0.1: resolution: {integrity: sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/tryer/-/tryer-1.0.1.tgz} @@ -20937,7 +20831,6 @@ packages: version: 3.1.5 dependencies: is-typedarray: r2.cnpmjs.org/is-typedarray/1.0.0 - dev: false r2.cnpmjs.org/ultron/1.1.1: resolution: {integrity: sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ultron/-/ultron-1.1.1.tgz} @@ -20952,7 +20845,6 @@ packages: dependencies: inherits: r2.cnpmjs.org/inherits/2.0.4 xtend: r2.cnpmjs.org/xtend/4.0.2 - dev: false r2.cnpmjs.org/unicode-canonical-property-names-ecmascript/2.0.0: resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz} @@ -20981,7 +20873,6 @@ packages: is-plain-obj: r2.cnpmjs.org/is-plain-obj/2.1.0 trough: r2.cnpmjs.org/trough/1.0.5 vfile: r2.cnpmjs.org/vfile/4.2.1 - dev: false r2.cnpmjs.org/unified/9.2.2: resolution: {integrity: sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unified/-/unified-9.2.2.tgz} @@ -20995,7 +20886,6 @@ packages: is-plain-obj: r2.cnpmjs.org/is-plain-obj/2.1.0 trough: r2.cnpmjs.org/trough/1.0.5 vfile: r2.cnpmjs.org/vfile/4.2.1 - dev: false r2.cnpmjs.org/unique-string/2.0.0: resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unique-string/-/unique-string-2.0.0.tgz} @@ -21004,31 +20894,26 @@ packages: engines: {node: '>=8'} dependencies: crypto-random-string: r2.cnpmjs.org/crypto-random-string/2.0.0 - dev: false r2.cnpmjs.org/unist-builder/2.0.3: resolution: {integrity: sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-builder/-/unist-builder-2.0.3.tgz} name: unist-builder version: 2.0.3 - dev: false r2.cnpmjs.org/unist-util-generated/1.1.6: resolution: {integrity: sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz} name: unist-util-generated version: 1.1.6 - dev: false r2.cnpmjs.org/unist-util-is/4.1.0: resolution: {integrity: sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz} name: unist-util-is version: 4.1.0 - dev: false r2.cnpmjs.org/unist-util-position/3.1.0: resolution: {integrity: sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz} name: unist-util-position version: 3.1.0 - dev: false r2.cnpmjs.org/unist-util-remove-position/2.0.1: resolution: {integrity: sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz} @@ -21036,7 +20921,6 @@ packages: version: 2.0.1 dependencies: unist-util-visit: r2.cnpmjs.org/unist-util-visit/2.0.3 - dev: false r2.cnpmjs.org/unist-util-remove/2.1.0: resolution: {integrity: sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz} @@ -21044,7 +20928,6 @@ packages: version: 2.1.0 dependencies: unist-util-is: r2.cnpmjs.org/unist-util-is/4.1.0 - dev: false r2.cnpmjs.org/unist-util-stringify-position/2.0.3: resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz} @@ -21052,7 +20935,6 @@ packages: version: 2.0.3 dependencies: '@types/unist': r2.cnpmjs.org/@types/unist/2.0.6 - dev: false r2.cnpmjs.org/unist-util-visit-parents/3.1.1: resolution: {integrity: sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz} @@ -21061,7 +20943,6 @@ packages: dependencies: '@types/unist': r2.cnpmjs.org/@types/unist/2.0.6 unist-util-is: r2.cnpmjs.org/unist-util-is/4.1.0 - dev: false r2.cnpmjs.org/unist-util-visit/2.0.3: resolution: {integrity: sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz} @@ -21071,7 +20952,6 @@ packages: '@types/unist': r2.cnpmjs.org/@types/unist/2.0.6 unist-util-is: r2.cnpmjs.org/unist-util-is/4.1.0 unist-util-visit-parents: r2.cnpmjs.org/unist-util-visit-parents/3.1.1 - dev: false r2.cnpmjs.org/universalify/0.1.2: resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/universalify/-/universalify-0.1.2.tgz} @@ -21131,7 +21011,6 @@ packages: semver: 7.3.8 semver-diff: r2.cnpmjs.org/semver-diff/3.1.1 xdg-basedir: r2.cnpmjs.org/xdg-basedir/4.0.0 - dev: false r2.cnpmjs.org/uri-js/4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/uri-js/-/uri-js-4.4.1.tgz} @@ -21164,7 +21043,6 @@ packages: mime-types: 2.1.35 schema-utils: r2.cnpmjs.org/schema-utils/3.1.1 webpack: 5.77.0 - dev: false r2.cnpmjs.org/url-parse-lax/3.0.0: resolution: {integrity: sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz} @@ -21173,7 +21051,6 @@ packages: engines: {node: '>=4'} dependencies: prepend-http: r2.cnpmjs.org/prepend-http/2.0.0 - dev: false r2.cnpmjs.org/url-set-query/1.0.0: resolution: {integrity: sha512-3AChu4NiXquPfeckE5R5cGdiHCMWJx1dwCWOmWIL4KHAziJNOFIYJlpGFeKDvwLPHovZRCxK3cYlwzqI9Vp+Gg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/url-set-query/-/url-set-query-1.0.0.tgz} @@ -21269,7 +21146,6 @@ packages: resolution: {integrity: sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/value-equal/-/value-equal-1.0.1.tgz} name: value-equal version: 1.0.1 - dev: false r2.cnpmjs.org/varint/5.0.2: resolution: {integrity: sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/varint/-/varint-5.0.2.tgz} @@ -21298,7 +21174,6 @@ packages: resolution: {integrity: sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/vfile-location/-/vfile-location-3.2.0.tgz} name: vfile-location version: 3.2.0 - dev: false r2.cnpmjs.org/vfile-message/2.0.4: resolution: {integrity: sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/vfile-message/-/vfile-message-2.0.4.tgz} @@ -21307,7 +21182,6 @@ packages: dependencies: '@types/unist': r2.cnpmjs.org/@types/unist/2.0.6 unist-util-stringify-position: r2.cnpmjs.org/unist-util-stringify-position/2.0.3 - dev: false r2.cnpmjs.org/vfile/4.2.1: resolution: {integrity: sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/vfile/-/vfile-4.2.1.tgz} @@ -21318,7 +21192,6 @@ packages: is-buffer: r2.cnpmjs.org/is-buffer/2.0.5 unist-util-stringify-position: r2.cnpmjs.org/unist-util-stringify-position/2.0.3 vfile-message: r2.cnpmjs.org/vfile-message/2.0.4 - dev: false r2.cnpmjs.org/w3c-hr-time/1.0.2: resolution: {integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz} @@ -21352,7 +21225,6 @@ packages: version: 1.7.3 dependencies: minimalistic-assert: r2.cnpmjs.org/minimalistic-assert/1.0.1 - dev: false r2.cnpmjs.org/wcwidth/1.0.1: resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/wcwidth/-/wcwidth-1.0.1.tgz} @@ -21366,7 +21238,6 @@ packages: resolution: {integrity: sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz} name: web-namespaces version: 1.1.4 - dev: false r2.cnpmjs.org/webidl-conversions/3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz} @@ -21436,7 +21307,6 @@ packages: pretty-time: r2.cnpmjs.org/pretty-time/1.1.0 std-env: 3.3.2 webpack: 5.77.0 - dev: false r2.cnpmjs.org/websocket-driver/0.7.4: resolution: {integrity: sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz} @@ -21447,14 +21317,12 @@ packages: http-parser-js: 0.5.8 safe-buffer: r2.cnpmjs.org/safe-buffer/5.2.1 websocket-extensions: r2.cnpmjs.org/websocket-extensions/0.1.4 - dev: false r2.cnpmjs.org/websocket-extensions/0.1.4: resolution: {integrity: sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz} name: websocket-extensions version: 0.1.4 engines: {node: '>=0.8.0'} - dev: false r2.cnpmjs.org/websocket/1.0.34: resolution: {integrity: sha512-PRDso2sGwF6kM75QykIesBijKSVceR6jL2G8NGYyq2XrItNC2P5/qL5XeR056GhA+Ly7JMFvJb9I312mJfmqnQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/websocket/-/websocket-1.0.34.tgz} @@ -21542,7 +21410,6 @@ packages: is-set: r2.cnpmjs.org/is-set/2.0.2 is-weakmap: r2.cnpmjs.org/is-weakmap/2.0.1 is-weakset: r2.cnpmjs.org/is-weakset/2.0.2 - dev: false r2.cnpmjs.org/which-module/2.0.0: resolution: {integrity: sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/which-module/-/which-module-2.0.0.tgz} @@ -21584,7 +21451,6 @@ packages: engines: {node: '>=8'} dependencies: string-width: r2.cnpmjs.org/string-width/4.2.3 - dev: false r2.cnpmjs.org/widest-line/4.0.1: resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/widest-line/-/widest-line-4.0.1.tgz} @@ -21593,7 +21459,6 @@ packages: engines: {node: '>=12'} dependencies: string-width: 5.1.2 - dev: false r2.cnpmjs.org/wildcard/2.0.0: resolution: {integrity: sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/wildcard/-/wildcard-2.0.0.tgz} @@ -21641,14 +21506,12 @@ packages: is-typedarray: r2.cnpmjs.org/is-typedarray/1.0.0 signal-exit: 3.0.7 typedarray-to-buffer: r2.cnpmjs.org/typedarray-to-buffer/3.1.5 - dev: false r2.cnpmjs.org/xdg-basedir/4.0.0: resolution: {integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz} name: xdg-basedir version: 4.0.0 engines: {node: '>=8'} - dev: false r2.cnpmjs.org/xhr-request-promise/0.1.3: resolution: {integrity: sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/xhr-request-promise/-/xhr-request-promise-0.1.3.tgz} @@ -21824,4 +21687,3 @@ packages: resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/zwitch/-/zwitch-1.0.5.tgz} name: zwitch version: 1.0.5 - dev: false diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index c53e539..8222ecb 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,3 +1,5 @@ packages: - 'apps/*' - - 'packages/*' \ No newline at end of file + - 'packages/*' + +resolution-strategy: 'fewer-dependencies' From 58b8ea0a4e743308aab0f7c6c87de65e256d81bc Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sun, 16 Apr 2023 12:48:50 +0800 Subject: [PATCH 11/16] fix(solc): fix error build --- packages/solc/rollup.config.js | 1 - pnpm-lock.yaml | 500 +++++++++++++++++++++++---------- 2 files changed, 353 insertions(+), 148 deletions(-) diff --git a/packages/solc/rollup.config.js b/packages/solc/rollup.config.js index 348a0c7..dcdf9a7 100644 --- a/packages/solc/rollup.config.js +++ b/packages/solc/rollup.config.js @@ -3,7 +3,6 @@ import resolve from "@rollup/plugin-node-resolve"; export default { input: { - script: 'src/script.ts', worker: 'src/worker.ts', index: 'src/index.ts', }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2777151..2ffb7aa 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -321,9 +321,7 @@ importers: packages/docusaurus-plugin: specifiers: - '@docusaurus/core': 2.4.0 - '@docusaurus/module-type-aliases': 2.3.0 - '@docusaurus/types': ^2.4.0 + '@docusaurus/types': ^2.3.1 '@types/node': ^17.0.38 '@types/react': ^18.0.0 '@types/uuid': ^8.3.1 @@ -337,12 +335,10 @@ importers: uuid: ^8.3.2 webpack: ^5.77.0 dependencies: + '@docusaurus/types': 2.4.0_biqbaboplfbrettd7655fr4n2y solive-core: link:../core uuid: r2.cnpmjs.org/uuid/8.3.2 devDependencies: - '@docusaurus/core': 2.4.0_ar3n4337epqx2w5icpz6n4flvi - '@docusaurus/module-type-aliases': 2.3.0_biqbaboplfbrettd7655fr4n2y - '@docusaurus/types': 2.4.0_biqbaboplfbrettd7655fr4n2y '@types/node': 17.0.41 '@types/react': 18.0.33 '@types/uuid': 8.3.4 @@ -1300,6 +1296,7 @@ packages: dependencies: '@babel/core': r2.cnpmjs.org/@babel/core/7.12.9 '@babel/helper-plugin-utils': 7.20.2 + dev: false /@babel/plugin-transform-parameters/7.21.3_@babel+core@7.21.4: resolution: {integrity: sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ==} @@ -1327,6 +1324,7 @@ packages: dependencies: '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 + dev: false /@babel/plugin-transform-react-display-name/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==} @@ -1336,6 +1334,7 @@ packages: dependencies: '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 + dev: false /@babel/plugin-transform-react-jsx-development/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==} @@ -1345,6 +1344,7 @@ packages: dependencies: '@babel/core': 7.21.4 '@babel/plugin-transform-react-jsx': 7.21.0_@babel+core@7.21.4 + dev: false /@babel/plugin-transform-react-jsx/7.21.0_@babel+core@7.21.4: resolution: {integrity: sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==} @@ -1358,6 +1358,7 @@ packages: '@babel/helper-plugin-utils': 7.20.2 '@babel/plugin-syntax-jsx': 7.21.4_@babel+core@7.21.4 '@babel/types': 7.21.4 + dev: false /@babel/plugin-transform-react-pure-annotations/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==} @@ -1368,6 +1369,7 @@ packages: '@babel/core': 7.21.4 '@babel/helper-annotate-as-pure': 7.18.6 '@babel/helper-plugin-utils': 7.20.2 + dev: false /@babel/plugin-transform-regenerator/7.20.5_@babel+core@7.21.4: resolution: {integrity: sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==} @@ -1403,6 +1405,7 @@ packages: semver: r2.cnpmjs.org/semver/6.3.0 transitivePeerDependencies: - supports-color + dev: false /@babel/plugin-transform-shorthand-properties/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==} @@ -1581,6 +1584,7 @@ packages: '@babel/plugin-transform-react-jsx': 7.21.0_@babel+core@7.21.4 '@babel/plugin-transform-react-jsx-development': 7.18.6_@babel+core@7.21.4 '@babel/plugin-transform-react-pure-annotations': 7.18.6_@babel+core@7.21.4 + dev: false /@babel/preset-typescript/7.21.4_@babel+core@7.21.4: resolution: {integrity: sha512-sMLNWY37TCdRH/bJ6ZeeOH1nPuanED7Ai9Y/vH31IPqalioJ6ZNFUWONsakhv4r4n+I6gm5lmoE0olkgib/j/A==} @@ -1606,6 +1610,7 @@ packages: dependencies: core-js-pure: 3.30.0 regenerator-runtime: 0.13.11 + dev: false /@babel/runtime/7.21.0: resolution: {integrity: sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==} @@ -1836,6 +1841,7 @@ packages: resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} engines: {node: '>=0.1.90'} requiresBuild: true + dev: false optional: true /@craco/craco/7.1.0_uaemxlzga3znd5u3dmtbp5hl4i: @@ -2024,6 +2030,7 @@ packages: /@discoveryjs/json-ext/0.5.7: resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} engines: {node: '>=10.0.0'} + dev: false /@docsearch/css/3.3.3: resolution: {integrity: sha512-6SCwI7P8ao+se1TUsdZ7B4XzL+gqeQZnBc+2EONZlcVa0dVrk0NjETxozFKgMv0eEGH8QzP1fkN+A1rH61l4eg==} @@ -2053,108 +2060,6 @@ packages: - '@algolia/client-search' dev: false - /@docusaurus/core/2.4.0_ar3n4337epqx2w5icpz6n4flvi: - resolution: {integrity: sha512-J55/WEoIpRcLf3afO5POHPguVZosKmJEQWKBL+K7TAnfuE7i+Y0NPLlkKtnWCehagGsgTqClfQEexH/UT4kELA==} - engines: {node: '>=16.14'} - hasBin: true - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@babel/core': 7.21.4 - '@babel/generator': 7.21.4 - '@babel/plugin-syntax-dynamic-import': r2.cnpmjs.org/@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.21.4 - '@babel/plugin-transform-runtime': 7.21.4_@babel+core@7.21.4 - '@babel/preset-env': 7.21.4_@babel+core@7.21.4 - '@babel/preset-react': 7.18.6_@babel+core@7.21.4 - '@babel/preset-typescript': 7.21.4_@babel+core@7.21.4 - '@babel/runtime': 7.21.0 - '@babel/runtime-corejs3': 7.21.0 - '@babel/traverse': 7.21.4 - '@docusaurus/cssnano-preset': 2.4.0 - '@docusaurus/logger': 2.4.0 - '@docusaurus/mdx-loader': 2.4.0_wuolo4jlwz75wl2aegq7g4cyju - '@docusaurus/react-loadable': r2.cnpmjs.org/@docusaurus/react-loadable/5.5.2_react@18.2.0 - '@docusaurus/utils': 2.4.0_@docusaurus+types@2.4.0 - '@docusaurus/utils-common': 2.4.0_@docusaurus+types@2.4.0 - '@docusaurus/utils-validation': 2.4.0_@docusaurus+types@2.4.0 - '@slorber/static-site-generator-webpack-plugin': 4.0.7 - '@svgr/webpack': 6.5.1 - autoprefixer: 10.4.14_postcss@8.4.21 - babel-loader: 8.3.0_kh7tlia7ljiqfn7rrvxklxkh5i - babel-plugin-dynamic-import-node: r2.cnpmjs.org/babel-plugin-dynamic-import-node/2.3.3 - boxen: r2.cnpmjs.org/boxen/6.2.1 - chalk: r2.cnpmjs.org/chalk/4.1.2 - chokidar: 3.5.3 - clean-css: 5.3.2 - cli-table3: 0.6.3 - combine-promises: r2.cnpmjs.org/combine-promises/1.1.0 - commander: r2.cnpmjs.org/commander/5.1.0 - copy-webpack-plugin: 11.0.0_webpack@5.77.0 - core-js: 3.30.0 - css-loader: 6.7.3_webpack@5.77.0 - css-minimizer-webpack-plugin: 4.2.2_beycc4qzskqfk37erfb27smw3y - cssnano: 5.1.15_postcss@8.4.21 - del: 6.1.1 - detect-port: 1.5.1 - escape-html: r2.cnpmjs.org/escape-html/1.0.3 - eta: 2.0.1 - file-loader: r2.cnpmjs.org/file-loader/6.2.0_webpack@5.77.0 - fs-extra: 10.1.0 - html-minifier-terser: r2.cnpmjs.org/html-minifier-terser/6.1.0 - html-tags: 3.3.1 - html-webpack-plugin: r2.cnpmjs.org/html-webpack-plugin/5.5.0_webpack@5.77.0 - import-fresh: r2.cnpmjs.org/import-fresh/3.3.0 - leven: r2.cnpmjs.org/leven/3.1.0 - lodash: r2.cnpmjs.org/lodash/4.17.21 - mini-css-extract-plugin: 2.7.5_webpack@5.77.0 - postcss: 8.4.21 - postcss-loader: 7.2.4_ymb7rd6tkzh43qbqmamtlwgxzq - prompts: r2.cnpmjs.org/prompts/2.4.2 - react: 18.2.0 - react-dev-utils: 12.0.1_lmihoaokjodojihym2ybosltk4 - react-dom: 18.2.0_react@18.2.0 - react-helmet-async: 1.3.0_biqbaboplfbrettd7655fr4n2y - react-loadable: r2.cnpmjs.org/@docusaurus/react-loadable/5.5.2_react@18.2.0 - react-loadable-ssr-addon-v5-slorber: r2.cnpmjs.org/react-loadable-ssr-addon-v5-slorber/1.0.1_g3o3v7qydpv4pdkxsoov4wje5i - react-router: 5.3.4_react@18.2.0 - react-router-config: r2.cnpmjs.org/react-router-config/5.1.1_rlw3ibuvnpt5jvejeevjcf4ije - react-router-dom: 5.3.4_react@18.2.0 - rtl-detect: r2.cnpmjs.org/rtl-detect/1.0.4 - semver: 7.3.8 - serve-handler: 6.1.5 - shelljs: 0.8.5 - terser-webpack-plugin: 5.3.7_webpack@5.77.0 - tslib: 2.5.0 - update-notifier: r2.cnpmjs.org/update-notifier/5.1.0 - url-loader: r2.cnpmjs.org/url-loader/4.1.1_srsokde7itujrwn2ctsfyi3dwa - wait-on: 6.0.1 - webpack: 5.77.0 - webpack-bundle-analyzer: 4.8.0 - webpack-dev-server: 4.13.2_webpack@5.77.0 - webpack-merge: r2.cnpmjs.org/webpack-merge/5.8.0 - webpackbar: r2.cnpmjs.org/webpackbar/5.0.2_webpack@5.77.0 - transitivePeerDependencies: - - '@docusaurus/types' - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - '@types/node' - - bufferutil - - csso - - debug - - esbuild - - eslint - - lightningcss - - supports-color - - ts-node - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: true - /@docusaurus/core/2.4.0_j3wrhsbakxuygokq2cmlmaalku: resolution: {integrity: sha512-J55/WEoIpRcLf3afO5POHPguVZosKmJEQWKBL+K7TAnfuE7i+Y0NPLlkKtnWCehagGsgTqClfQEexH/UT4kELA==} engines: {node: '>=16.14'} @@ -2265,6 +2170,7 @@ packages: postcss: 8.4.21 postcss-sort-media-queries: 4.3.0_postcss@8.4.21 tslib: 2.5.0 + dev: false /@docusaurus/logger/2.4.0: resolution: {integrity: sha512-T8+qR4APN+MjcC9yL2Es+xPJ2923S9hpzDmMtdsOcUGLqpCGBbU1vp3AAqDwXtVgFkq+NsEk7sHdVsfLWR/AXw==} @@ -2272,6 +2178,7 @@ packages: dependencies: chalk: r2.cnpmjs.org/chalk/4.1.2 tslib: 2.5.0 + dev: false /@docusaurus/mdx-loader/2.4.0_wuolo4jlwz75wl2aegq7g4cyju: resolution: {integrity: sha512-GWoH4izZKOmFoC+gbI2/y8deH/xKLvzz/T5BsEexBye8EHQlwsA7FMrVa48N063bJBH4FUOiRRXxk5rq9cC36g==} @@ -2306,6 +2213,7 @@ packages: - supports-color - uglify-js - webpack-cli + dev: false /@docusaurus/module-type-aliases/2.3.0_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-DvJtVejgrgIgxSNZ0pRaVu4EndRVBgbtp1LKvIO4xBgKlrsq8o4qkj1HKwH6yok5NoMqGApu8/E0KPOdZBtDpQ==} @@ -2911,6 +2819,7 @@ packages: dependencies: '@docusaurus/types': 2.4.0_biqbaboplfbrettd7655fr4n2y tslib: 2.5.0 + dev: false /@docusaurus/utils-validation/2.4.0_@docusaurus+types@2.4.0: resolution: {integrity: sha512-IrBsBbbAp6y7mZdJx4S4pIA7dUyWSA0GNosPk6ZJ0fX3uYIEQgcQSGIgTeSC+8xPEx3c16o03en1jSDpgQgz/w==} @@ -2928,6 +2837,7 @@ packages: - supports-color - uglify-js - webpack-cli + dev: false /@docusaurus/utils/2.4.0_@docusaurus+types@2.4.0: resolution: {integrity: sha512-89hLYkvtRX92j+C+ERYTuSUK6nF9bGM32QThcHPg2EDDHVw6FzYQXmX6/p+pU5SDyyx5nBlE4qXR92RxCAOqfg==} @@ -2961,6 +2871,7 @@ packages: - supports-color - uglify-js - webpack-cli + dev: false /@eslint-community/eslint-utils/4.4.0_eslint@8.37.0: resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} @@ -3714,6 +3625,7 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@sinclair/typebox': 0.25.24 + dev: false /@jest/source-map/27.5.1: resolution: {integrity: sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==} @@ -3812,6 +3724,7 @@ packages: '@types/node': 17.0.41 '@types/yargs': 17.0.24 chalk: r2.cnpmjs.org/chalk/4.1.2 + dev: false /@jridgewell/gen-mapping/0.1.1: resolution: {integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==} @@ -3864,6 +3777,7 @@ packages: /@leichtgewicht/ip-codec/2.0.4: resolution: {integrity: sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==} + dev: false /@material-tailwind/react/1.4.2_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-XJ1Ie8xXMV2qZEtm0LgnJNK+8Lh1Si8TvOf0jKWGI2rHleD8U/Zype6k1AyRhBHHUwc6B19w8uR1fCIFvumURQ==} @@ -4412,6 +4326,7 @@ packages: /@sinclair/typebox/0.25.24: resolution: {integrity: sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==} + dev: false /@sindresorhus/is/4.6.0: resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} @@ -4431,6 +4346,7 @@ packages: eval: 0.1.8 p-map: r2.cnpmjs.org/p-map/4.0.0 webpack-sources: 3.2.3 + dev: false /@svgr/babel-plugin-add-jsx-attribute/6.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==} @@ -4439,6 +4355,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 + dev: false /@svgr/babel-plugin-remove-jsx-attribute/7.0.0_@babel+core@7.21.4: resolution: {integrity: sha512-iiZaIvb3H/c7d3TH2HBeK91uI2rMhZNwnsIrvd7ZwGLkFw6mmunOCoVnjdYua662MqGFxlN9xTq4fv9hgR4VXQ==} @@ -4447,6 +4364,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 + dev: false /@svgr/babel-plugin-remove-jsx-empty-expression/7.0.0_@babel+core@7.21.4: resolution: {integrity: sha512-sQQmyo+qegBx8DfFc04PFmIO1FP1MHI1/QEpzcIcclo5OAISsOJPW76ZIs0bDyO/DBSJEa/tDa1W26pVtt0FRw==} @@ -4455,6 +4373,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 + dev: false /@svgr/babel-plugin-replace-jsx-attribute-value/6.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==} @@ -4463,6 +4382,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 + dev: false /@svgr/babel-plugin-svg-dynamic-title/6.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==} @@ -4471,6 +4391,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 + dev: false /@svgr/babel-plugin-svg-em-dimensions/6.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==} @@ -4479,6 +4400,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 + dev: false /@svgr/babel-plugin-transform-react-native-svg/6.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==} @@ -4487,6 +4409,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 + dev: false /@svgr/babel-plugin-transform-svg-component/6.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==} @@ -4495,6 +4418,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.21.4 + dev: false /@svgr/babel-preset/6.5.1_@babel+core@7.21.4: resolution: {integrity: sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==} @@ -4511,6 +4435,7 @@ packages: '@svgr/babel-plugin-svg-em-dimensions': 6.5.1_@babel+core@7.21.4 '@svgr/babel-plugin-transform-react-native-svg': 6.5.1_@babel+core@7.21.4 '@svgr/babel-plugin-transform-svg-component': 6.5.1_@babel+core@7.21.4 + dev: false /@svgr/core/6.5.1: resolution: {integrity: sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==} @@ -4523,6 +4448,7 @@ packages: cosmiconfig: 7.1.0 transitivePeerDependencies: - supports-color + dev: false /@svgr/hast-util-to-babel-ast/6.5.1: resolution: {integrity: sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==} @@ -4530,6 +4456,7 @@ packages: dependencies: '@babel/types': 7.21.4 entities: 4.4.0 + dev: false /@svgr/plugin-jsx/6.5.1_@svgr+core@6.5.1: resolution: {integrity: sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==} @@ -4544,6 +4471,7 @@ packages: svg-parser: r2.cnpmjs.org/svg-parser/2.0.4 transitivePeerDependencies: - supports-color + dev: false /@svgr/plugin-svgo/6.5.1_@svgr+core@6.5.1: resolution: {integrity: sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==} @@ -4555,6 +4483,7 @@ packages: cosmiconfig: 7.1.0 deepmerge: 4.3.1 svgo: r2.cnpmjs.org/svgo/2.8.0 + dev: false /@svgr/webpack/6.5.1: resolution: {integrity: sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==} @@ -4570,6 +4499,7 @@ packages: '@svgr/plugin-svgo': 6.5.1_@svgr+core@6.5.1 transitivePeerDependencies: - supports-color + dev: false /@swc/helpers/0.4.14: resolution: {integrity: sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw==} @@ -4714,6 +4644,7 @@ packages: '@types/node': 17.0.41 '@types/qs': r2.cnpmjs.org/@types/qs/6.9.7 '@types/range-parser': r2.cnpmjs.org/@types/range-parser/1.2.4 + dev: false /@types/express/4.17.17: resolution: {integrity: sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==} @@ -4722,6 +4653,7 @@ packages: '@types/express-serve-static-core': 4.17.33 '@types/qs': r2.cnpmjs.org/@types/qs/6.9.7 '@types/serve-static': 1.15.1 + dev: false /@types/graceful-fs/4.1.6: resolution: {integrity: sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==} @@ -4736,6 +4668,7 @@ packages: resolution: {integrity: sha512-Qs5aULi+zV1bwKAg5z1PWnDXWmsn+LxIvUGv6E2+OOMYhclZMO+OXd9pYVf2gLykf2I7IV2u7oTHwChPNsvJ7g==} dependencies: '@types/node': 17.0.41 + dev: false /@types/jest/27.5.2: resolution: {integrity: sha512-mpT8LJJ4CMeeahobofYWIjFo0xonRS/HfxnVEPMPFSQdGUt1uHCnoPT7Zhb+sjDU2wz0oKV0OLUR0WzrHNgfeA==} @@ -4751,6 +4684,7 @@ packages: resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} dependencies: '@types/node': 17.0.41 + dev: false /@types/lodash/4.14.192: resolution: {integrity: sha512-km+Vyn3BYm5ytMO13k9KTp27O75rbQ0NFw+U//g+PX7VZyjCioXaRFisqSIJRECljcTv73G3i6BpglNGHgUQ5A==} @@ -4760,9 +4694,11 @@ packages: resolution: {integrity: sha512-Y/uImid8aAwrEA24/1tcRZwpxX3pIFTSilcNDKSPn+Y2iDywSEachzRuvgAYYLR3wpGXAsMbv5lvKLDZLeYPAw==} dependencies: '@types/unist': r2.cnpmjs.org/@types/unist/2.0.6 + dev: false /@types/mime/3.0.1: resolution: {integrity: sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==} + dev: false /@types/node/12.20.55: resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} @@ -4835,6 +4771,7 @@ packages: dependencies: '@types/mime': 3.0.1 '@types/node': 17.0.41 + dev: false /@types/testing-library__jest-dom/5.14.5: resolution: {integrity: sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ==} @@ -4854,9 +4791,11 @@ packages: resolution: {integrity: sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==} dependencies: '@types/node': 17.0.41 + dev: false /@types/yargs-parser/21.0.0: resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==} + dev: false /@types/yargs/16.0.5: resolution: {integrity: sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==} @@ -4868,6 +4807,7 @@ packages: resolution: {integrity: sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==} dependencies: '@types/yargs-parser': 21.0.0 + dev: false /@typescript-eslint/eslint-plugin/5.57.1_iify4w3mi7rbbu6mxzspkpx4b4: resolution: {integrity: sha512-1MeobQkQ9tztuleT3v72XmY0XuKXVXusAhryoLuU5YZ+mXoYKZP9SQ7Flulh1NX4DTjpGTc2b/eMu4u7M7dhnQ==} @@ -5123,6 +5063,7 @@ packages: json-schema-traverse: r2.cnpmjs.org/json-schema-traverse/1.0.0 require-from-string: r2.cnpmjs.org/require-from-string/2.0.2 uri-js: r2.cnpmjs.org/uri-js/4.4.1 + dev: false /algoliasearch-helper/3.12.0_algoliasearch@4.17.0: resolution: {integrity: sha512-/j1U3PEwdan0n6P/QqSnSpNSLC5+cEMvyljd5CnmNmUjDlGrys+vFEOwjVEnqELIiAGMHEA/Nl3CiKVFBUYqyQ==} @@ -5293,6 +5234,7 @@ packages: picocolors: r2.cnpmjs.org/picocolors/1.0.0 postcss: 8.4.21 postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + dev: false /aws4/1.12.0: resolution: {integrity: sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==} @@ -5308,6 +5250,7 @@ packages: follow-redirects: 1.15.2 transitivePeerDependencies: - debug + dev: false /axios/0.27.2: resolution: {integrity: sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==} @@ -5377,6 +5320,7 @@ packages: make-dir: r2.cnpmjs.org/make-dir/3.1.0 schema-utils: r2.cnpmjs.org/schema-utils/2.7.1 webpack: 5.77.0 + dev: false /babel-plugin-jest-hoist/27.5.1: resolution: {integrity: sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==} @@ -5503,6 +5447,7 @@ packages: dns-equal: r2.cnpmjs.org/dns-equal/1.0.0 fast-deep-equal: r2.cnpmjs.org/fast-deep-equal/3.1.3 multicast-dns: 7.2.5 + dev: false /browser-level/1.0.1: resolution: {integrity: sha512-XECYKJ+Dbzw0lbydyQuJzwNXtOpbMSq737qxJN11sIRTErOMShvDpbzTlgju7orJKvx4epULolZAuJGLzCmWRQ==} @@ -5572,6 +5517,7 @@ packages: /camelcase/6.3.0: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} + dev: false /caniuse-lite/1.0.30001474: resolution: {integrity: sha512-iaIZ8gVrWfemh5DG3T9/YqarVZoYf0r188IjaGwx68j4Pf0SGY6CQkmJUIE+NZHkkecQGohzXmBGEwWDr9aM3Q==} @@ -5666,6 +5612,7 @@ packages: string-width: r2.cnpmjs.org/string-width/4.2.3 optionalDependencies: '@colors/colors': 1.5.0 + dev: false /client-only/0.0.1: resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} @@ -5684,6 +5631,7 @@ packages: resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} dependencies: mimic-response: r2.cnpmjs.org/mimic-response/1.0.1 + dev: false /clsx/1.2.1: resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} @@ -5734,10 +5682,12 @@ packages: vary: r2.cnpmjs.org/vary/1.1.2 transitivePeerDependencies: - supports-color + dev: false /connect-history-api-fallback/2.0.0: resolution: {integrity: sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==} engines: {node: '>=0.8'} + dev: false /content-type/1.0.5: resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} @@ -5768,6 +5718,7 @@ packages: schema-utils: r2.cnpmjs.org/schema-utils/4.0.0 serialize-javascript: 6.0.1 webpack: 5.77.0 + dev: false /core-js-compat/3.30.0: resolution: {integrity: sha512-P5A2h/9mRYZFIAP+5Ab8ns6083IyVpSclU74UNvbGVQ8VM7n3n3/g2yF3AkKQ9NXz2O+ioxLbEWKnDtgsFamhg==} @@ -5777,10 +5728,12 @@ packages: /core-js-pure/3.30.0: resolution: {integrity: sha512-+2KbMFGeBU0ln/csoPqTe0i/yfHbrd2EUhNMObsGtXMKS/RTtlkYyi+/3twLcevbgNR0yM/r0Psa3TEoQRpFMQ==} requiresBuild: true + dev: false /core-js/3.30.0: resolution: {integrity: sha512-hQotSSARoNh1mYPi9O2YaWeiq/cEB95kOrFb4NCrO4RIFt1qqNpKsaE+vy/L3oiqvND5cThqXzUU3r9F7Efztg==} requiresBuild: true + dev: false /cosmiconfig-typescript-loader/1.0.9_mwktwrqic243a56fotetixsg4q: resolution: {integrity: sha512-tRuMRhxN4m1Y8hP9SNYfz7jRwt8lZdWxdjg/ohg5esKmsndJIn4yT96oJVcf5x0eA11taXl+sIp+ielu529k6g==} @@ -5811,20 +5764,6 @@ packages: typescript: 4.9.5 dev: false - /cosmiconfig-typescript-loader/4.3.0_rul6kzwxzgrptt4634xh5wh7ja: - resolution: {integrity: sha512-NTxV1MFfZDLPiBMjxbHRwSh5LaLcPMwNdCutmnHJCKoVnlvldPWlllonKwrsRJ5pYZBIBGRWWU2tfvzxgeSW5Q==} - engines: {node: '>=12', npm: '>=6'} - peerDependencies: - '@types/node': '*' - cosmiconfig: '>=7' - ts-node: '>=10' - typescript: '>=3' - dependencies: - '@types/node': 17.0.41 - cosmiconfig: 8.1.3 - typescript: 4.9.5 - dev: true - /cosmiconfig/7.1.0: resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} engines: {node: '>=10'} @@ -5843,6 +5782,7 @@ packages: js-yaml: r2.cnpmjs.org/js-yaml/4.1.0 parse-json: r2.cnpmjs.org/parse-json/5.2.0 path-type: r2.cnpmjs.org/path-type/4.0.0 + dev: false /crc-32/1.2.2: resolution: {integrity: sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==} @@ -5903,6 +5843,7 @@ packages: postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 semver: 7.3.8 webpack: 5.77.0 + dev: false /css-minimizer-webpack-plugin/3.4.1_webpack@5.77.0: resolution: {integrity: sha512-1u6D71zeIfgngN2XNRJefc/hY7Ybsxd74Jm4qngIXyUEk7fss3VUzuHxLAq/R8NAba4QU9OUSaMZlbpRc7bM4Q==} @@ -5965,6 +5906,7 @@ packages: serialize-javascript: 6.0.1 source-map: r2.cnpmjs.org/source-map/0.6.1 webpack: 5.77.0 + dev: false /css-prefers-color-scheme/6.0.3_postcss@8.4.21: resolution: {integrity: sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==} @@ -6016,6 +5958,7 @@ packages: postcss-merge-idents: 5.1.1_postcss@8.4.21 postcss-reduce-idents: 5.2.0_postcss@8.4.21 postcss-zindex: 5.1.0_postcss@8.4.21 + dev: false /cssnano-preset-default/5.2.14_postcss@8.4.21: resolution: {integrity: sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==} @@ -6165,6 +6108,7 @@ packages: p-map: r2.cnpmjs.org/p-map/4.0.0 rimraf: r2.cnpmjs.org/rimraf/3.0.2 slash: r2.cnpmjs.org/slash/3.0.0 + dev: false /destroy/1.2.0: resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} @@ -6178,6 +6122,7 @@ packages: debug: 4.3.4 transitivePeerDependencies: - supports-color + dev: false /detective/5.2.1: resolution: {integrity: sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==} @@ -6199,6 +6144,7 @@ packages: engines: {node: '>=6'} dependencies: '@leichtgewicht/ip-codec': 2.0.4 + dev: false /dom-accessibility-api/0.5.16: resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==} @@ -6245,6 +6191,7 @@ packages: /duplexer3/0.1.5: resolution: {integrity: sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==} + dev: false /ejs/3.1.9: resolution: {integrity: sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ==} @@ -6272,6 +6219,7 @@ packages: /entities/4.4.0: resolution: {integrity: sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==} engines: {node: '>=0.12'} + dev: false /error-stack-parser/2.1.4: resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} @@ -6972,6 +6920,7 @@ packages: /eta/2.0.1: resolution: {integrity: sha512-46E2qDPDm7QA+usjffUWz9KfXsxVZclPOuKsXs4ZWZdI/X1wpDF7AO424pt7fdYohCzWsIkXAhNGXSlwo5naAg==} engines: {node: '>=6.0.0'} + dev: false /etag/1.8.1: resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} @@ -7055,6 +7004,7 @@ packages: dependencies: '@types/node': 17.0.41 require-like: r2.cnpmjs.org/require-like/0.1.2 + dev: false /eventemitter3/5.0.0: resolution: {integrity: sha512-riuVbElZZNXLeLEoprfNYoDSwTBRR44X3mnhdI1YcnENpWTCsTTVZ2zFuqQcpoyqPQIUXdiPEU0ECAq0KQRaHg==} @@ -7302,9 +7252,11 @@ packages: tapable: r2.cnpmjs.org/tapable/1.1.3 typescript: 4.9.5 webpack: 5.77.0 + dev: false /fraction.js/4.2.0: resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} + dev: false /framer-motion/6.5.1_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-o1BGqqposwi7cgDrtg0dNONhkmPsUFDaLcKXigzuTFC5x58mE8iyTazxSudFzmT6MEyJKfjjU8ItoMe3W+3fiw==} @@ -7357,6 +7309,7 @@ packages: /github-slugger/1.5.0: resolution: {integrity: sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==} + dev: false /glob/7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} @@ -7373,6 +7326,7 @@ packages: engines: {node: '>=10'} dependencies: ini: r2.cnpmjs.org/ini/2.0.0 + dev: false /globals/13.20.0: resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} @@ -7406,6 +7360,7 @@ packages: ignore: 5.2.4 merge2: r2.cnpmjs.org/merge2/1.4.1 slash: r2.cnpmjs.org/slash/4.0.0 + dev: false /goober/2.1.12: resolution: {integrity: sha512-yXHAvO08FU1JgTXX6Zn6sYCUFfB/OJSX8HHjDSgerZHZmFKAb08cykp5LBw5QnmyMcZyPRMqkdyHUSSzge788Q==} @@ -7475,6 +7430,7 @@ packages: /html-entities/2.3.3: resolution: {integrity: sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==} + dev: false /html-tags/3.3.1: resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==} @@ -7491,9 +7447,11 @@ packages: /http-cache-semantics/4.1.1: resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} + dev: false /http-parser-js/0.5.8: resolution: {integrity: sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==} + dev: false /http-proxy-middleware/2.0.6_@types+express@4.17.17: resolution: {integrity: sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==} @@ -7512,6 +7470,7 @@ packages: micromatch: 4.0.5 transitivePeerDependencies: - debug + dev: false /http2-wrapper/2.2.0: resolution: {integrity: sha512-kZB0wxMo0sh1PehyjJUWRFEd99KC5TLjZ2cULC4f9iqJBAmKQQXEICjxl5iPJRwP40dpeHFqqhm7tYCvODpqpQ==} @@ -7556,6 +7515,7 @@ packages: hasBin: true dependencies: queue: r2.cnpmjs.org/queue/6.0.2 + dev: false /immer/9.0.21: resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==} @@ -8115,6 +8075,7 @@ packages: ci-info: 3.8.0 graceful-fs: 4.2.11 picomatch: 2.3.1 + dev: false /jest-validate/27.5.1: resolution: {integrity: sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==} @@ -8196,6 +8157,7 @@ packages: jest-util: 29.5.0 merge-stream: r2.cnpmjs.org/merge-stream/2.0.0 supports-color: r2.cnpmjs.org/supports-color/8.1.1 + dev: false /jest/27.5.1: resolution: {integrity: sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==} @@ -8289,6 +8251,7 @@ packages: /klona/2.0.6: resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==} engines: {node: '>= 8'} + dev: false /language-subtag-registry/0.3.22: resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} @@ -8298,6 +8261,7 @@ packages: dependencies: picocolors: r2.cnpmjs.org/picocolors/1.0.0 shell-quote: 1.8.0 + dev: false /level-supports/4.0.1: resolution: {integrity: sha512-PbXpve8rKeNcZ9C1mUicC9auIYFyGpkV9/i6g76tLgANwWhtG2v7I4xNBUlkn3lE2/dZF3Pi0ygYGtLc4RXXdA==} @@ -8431,6 +8395,7 @@ packages: dependencies: schema-utils: r2.cnpmjs.org/schema-utils/4.0.0 webpack: 5.77.0 + dev: false /mini-svg-data-uri/1.4.4: resolution: {integrity: sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==} @@ -8488,6 +8453,7 @@ packages: /mrmime/1.0.1: resolution: {integrity: sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==} engines: {node: '>=10'} + dev: false /multicast-dns/7.2.5: resolution: {integrity: sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==} @@ -8495,6 +8461,7 @@ packages: dependencies: dns-packet: 5.5.0 thunky: r2.cnpmjs.org/thunky/1.1.0 + dev: false /nanoid/3.3.6: resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} @@ -8564,6 +8531,7 @@ packages: /node-forge/1.3.1: resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==} engines: {node: '>= 6.13.0'} + dev: false /node-gyp-build/4.6.0: resolution: {integrity: sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==} @@ -8726,6 +8694,7 @@ packages: dependencies: '@types/retry': r2.cnpmjs.org/@types/retry/0.12.0 retry: r2.cnpmjs.org/retry/0.13.1 + dev: false /pako/1.0.11: resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==} @@ -8923,6 +8892,7 @@ packages: dependencies: postcss: 8.4.21 postcss-selector-parser: 6.0.11 + dev: false /postcss-double-position-gradients/3.1.2_postcss@8.4.21: resolution: {integrity: sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==} @@ -9108,31 +9078,6 @@ packages: - '@types/node' dev: false - /postcss-loader/7.2.4_ymb7rd6tkzh43qbqmamtlwgxzq: - resolution: {integrity: sha512-F88rpxxNspo5hatIc+orYwZDtHFaVFOSIVAx+fBfJC1GmhWbVmPWtmg2gXKE1OxJbneOSGn8PWdIwsZFcruS+w==} - engines: {node: '>= 14.15.0'} - peerDependencies: - postcss: ^7.0.0 || ^8.0.1 - ts-node: '>=10' - typescript: '>=4' - webpack: ^5.0.0 - peerDependenciesMeta: - ts-node: - optional: true - typescript: - optional: true - dependencies: - cosmiconfig: 8.1.3 - cosmiconfig-typescript-loader: 4.3.0_rul6kzwxzgrptt4634xh5wh7ja - klona: 2.0.6 - postcss: 8.4.21 - semver: 7.3.8 - typescript: 4.9.5 - webpack: 5.77.0 - transitivePeerDependencies: - - '@types/node' - dev: true - /postcss-logical/5.0.4_postcss@8.4.21: resolution: {integrity: sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==} engines: {node: ^12 || ^14 || >=16} @@ -9151,6 +9096,7 @@ packages: cssnano-utils: 3.1.0_postcss@8.4.21 postcss: 8.4.21 postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + dev: false /postcss-merge-longhand/5.1.7_postcss@8.4.21: resolution: {integrity: sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==} @@ -9456,6 +9402,7 @@ packages: dependencies: postcss: 8.4.21 postcss-value-parser: r2.cnpmjs.org/postcss-value-parser/4.2.0 + dev: false /postcss-reduce-initial/5.1.2_postcss@8.4.21: resolution: {integrity: sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==} @@ -9501,6 +9448,7 @@ packages: dependencies: postcss: 8.4.21 sort-css-media-queries: 2.1.0 + dev: false /postcss-svgo/5.1.0_postcss@8.4.21: resolution: {integrity: sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==} @@ -9528,6 +9476,7 @@ packages: postcss: ^8.2.15 dependencies: postcss: 8.4.21 + dev: false /postcss/8.4.14: resolution: {integrity: sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==} @@ -9766,6 +9715,7 @@ packages: - eslint - supports-color - vue-template-compiler + dev: false /react-dom/18.2.0_react@18.2.0: resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} @@ -9847,6 +9797,7 @@ packages: react-router: 5.3.4_react@18.2.0 tiny-invariant: 1.3.1 tiny-warning: r2.cnpmjs.org/tiny-warning/1.0.3 + dev: false /react-router/5.3.4_react@18.2.0: resolution: {integrity: sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==} @@ -9863,6 +9814,7 @@ packages: react-is: r2.cnpmjs.org/react-is/16.13.1 tiny-invariant: 1.3.1 tiny-warning: r2.cnpmjs.org/tiny-warning/1.0.3 + dev: false /react-scripts/5.0.1_j5ip3o3v6sktjzl5cxtjyfbuo4: resolution: {integrity: sha512-8VAmEm/ZAwQzJ+GOMLbBsTdDKOpuZh7RPs0UymvBR2vRk4iZWCskjbFnxqjrzoIvlNNRZ3QJFx6/qDSi6zSnaQ==} @@ -10004,6 +9956,7 @@ packages: safe-buffer: r2.cnpmjs.org/safe-buffer/5.1.2 string_decoder: r2.cnpmjs.org/string_decoder/1.1.1 util-deprecate: r2.cnpmjs.org/util-deprecate/1.0.2 + dev: false /readable-stream/3.6.2: resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} @@ -10057,6 +10010,7 @@ packages: engines: {node: '>=6.0.0'} dependencies: rc: r2.cnpmjs.org/rc/1.2.8 + dev: false /regjsparser/0.9.1: resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} @@ -10183,6 +10137,7 @@ packages: engines: {node: '>=10'} dependencies: node-forge: 1.3.1 + dev: false /semver/7.3.8: resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==} @@ -10227,6 +10182,7 @@ packages: path-is-inside: r2.cnpmjs.org/path-is-inside/1.0.2 path-to-regexp: r2.cnpmjs.org/path-to-regexp/2.2.1 range-parser: r2.cnpmjs.org/range-parser/1.2.0 + dev: false /serve-static/1.15.0: resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==} @@ -10250,6 +10206,7 @@ packages: glob: 7.2.3 interpret: r2.cnpmjs.org/interpret/1.4.0 rechoir: r2.cnpmjs.org/rechoir/0.6.2 + dev: false /signal-exit/3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} @@ -10276,6 +10233,7 @@ packages: /sort-css-media-queries/2.1.0: resolution: {integrity: sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==} engines: {node: '>= 6.3.0'} + dev: false /source-map-js/1.0.2: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} @@ -10338,6 +10296,7 @@ packages: /std-env/3.3.2: resolution: {integrity: sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==} + dev: false /stop-iteration-iterator/1.0.0: resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==} @@ -10600,6 +10559,7 @@ packages: /tiny-invariant/1.3.1: resolution: {integrity: sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==} + dev: false /tough-cookie/4.1.2: resolution: {integrity: sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==} @@ -10682,6 +10642,7 @@ packages: /type-fest/2.19.0: resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} engines: {node: '>=12.20'} + dev: false /type/2.7.2: resolution: {integrity: sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==} @@ -10874,6 +10835,7 @@ packages: rxjs: 7.8.0 transitivePeerDependencies: - debug + dev: false /watchpack/2.4.0: resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} @@ -11176,6 +11138,7 @@ packages: transitivePeerDependencies: - bufferutil - utf-8-validate + dev: false /webpack-dev-middleware/5.3.3_webpack@5.77.0: resolution: {integrity: sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==} @@ -11189,6 +11152,7 @@ packages: range-parser: r2.cnpmjs.org/range-parser/1.2.1 schema-utils: r2.cnpmjs.org/schema-utils/4.0.0 webpack: 5.77.0 + dev: false /webpack-dev-server/4.13.2_webpack@5.77.0: resolution: {integrity: sha512-5i6TrGBRxG4vnfDpB6qSQGfnB6skGBXNL5/542w2uRGLimX6qeE5BQMLrzIC3JYV/xlGOv+s+hTleI9AZKUQNw==} @@ -11239,6 +11203,7 @@ packages: - debug - supports-color - utf-8-validate + dev: false /webpack-manifest-plugin/4.1.1_webpack@5.77.0: resolution: {integrity: sha512-YXUAwxtfKIJIKkhg03MKuiFAD72PlrqCiwdwO4VEXdRO5V0ORCNwaOwAZawPZalCbmH9kBDmXnNeQOw+BIEiow==} @@ -11475,6 +11440,7 @@ packages: ansi-styles: 6.2.1 string-width: 5.1.2 strip-ansi: r2.cnpmjs.org/strip-ansi/7.0.1 + dev: false /ws/0.4.32: resolution: {integrity: sha512-htqsS0U9Z9lb3ITjidQkRvkLdVhQePrMeu475yEfOWkAYvJ6dSjQp1tOH6ugaddzX5b7sQjMPNtY71eTzrV/kA==} @@ -11550,6 +11516,7 @@ packages: optional: true utf-8-validate: optional: true + dev: false /ws/8.13.0: resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==} @@ -11562,6 +11529,7 @@ packages: optional: true utf-8-validate: optional: true + dev: false /yaml/2.2.1: resolution: {integrity: sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==} @@ -11616,11 +11584,13 @@ packages: source-map: r2.cnpmjs.org/source-map/0.5.7 transitivePeerDependencies: - supports-color + dev: false r2.cnpmjs.org/@babel/helper-plugin-utils/7.10.4: resolution: {integrity: sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz} name: '@babel/helper-plugin-utils' version: 7.10.4 + dev: false r2.cnpmjs.org/@babel/plugin-proposal-object-rest-spread/7.12.1_@babel+core@7.12.9: resolution: {integrity: sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz} @@ -11634,6 +11604,7 @@ packages: '@babel/helper-plugin-utils': 7.20.2 '@babel/plugin-syntax-object-rest-spread': r2.cnpmjs.org/@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.12.9 '@babel/plugin-transform-parameters': 7.21.3_@babel+core@7.12.9 + dev: false r2.cnpmjs.org/@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.21.4: resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz} @@ -11736,6 +11707,7 @@ packages: dependencies: '@babel/core': r2.cnpmjs.org/@babel/core/7.12.9 '@babel/helper-plugin-utils': 7.20.2 + dev: false r2.cnpmjs.org/@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.21.4: resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz} @@ -11780,6 +11752,7 @@ packages: dependencies: '@babel/core': r2.cnpmjs.org/@babel/core/7.12.9 '@babel/helper-plugin-utils': 7.20.2 + dev: false r2.cnpmjs.org/@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.21.4: resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz} @@ -12016,6 +11989,7 @@ packages: unist-util-visit: r2.cnpmjs.org/unist-util-visit/2.0.3 transitivePeerDependencies: - supports-color + dev: false r2.cnpmjs.org/@mdx-js/react/1.6.22_react@18.2.0: resolution: {integrity: sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@mdx-js/react/-/react-1.6.22.tgz} @@ -12032,6 +12006,7 @@ packages: resolution: {integrity: sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@mdx-js/util/-/util-1.6.22.tgz} name: '@mdx-js/util' version: 1.6.22 + dev: false r2.cnpmjs.org/@nodelib/fs.scandir/2.1.5: resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz} @@ -12072,6 +12047,7 @@ packages: resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@polka/url/-/url-1.0.0-next.21.tgz} name: '@polka/url' version: 1.0.0-next.21 + dev: false r2.cnpmjs.org/@rollup/plugin-node-resolve/11.2.1_rollup@2.79.1: resolution: {integrity: sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz} @@ -12128,6 +12104,7 @@ packages: name: '@sindresorhus/is' version: 0.14.0 engines: {node: '>=6'} + dev: false r2.cnpmjs.org/@sinonjs/fake-timers/8.1.0: resolution: {integrity: sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz} @@ -12292,6 +12269,7 @@ packages: engines: {node: '>=6'} dependencies: defer-to-connect: r2.cnpmjs.org/defer-to-connect/1.1.3 + dev: false r2.cnpmjs.org/@szmarczak/http-timer/4.0.6: resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz} @@ -12405,6 +12383,7 @@ packages: dependencies: '@types/connect': r2.cnpmjs.org/@types/connect/3.4.35 '@types/node': 17.0.41 + dev: false r2.cnpmjs.org/@types/bonjour/3.5.10: resolution: {integrity: sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz} @@ -12412,6 +12391,7 @@ packages: version: 3.5.10 dependencies: '@types/node': 17.0.41 + dev: false r2.cnpmjs.org/@types/connect-history-api-fallback/1.3.5: resolution: {integrity: sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz} @@ -12420,6 +12400,7 @@ packages: dependencies: '@types/express-serve-static-core': 4.17.33 '@types/node': 17.0.41 + dev: false r2.cnpmjs.org/@types/connect/3.4.35: resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/connect/-/connect-3.4.35.tgz} @@ -12427,6 +12408,7 @@ packages: version: 3.4.35 dependencies: '@types/node': 17.0.41 + dev: false r2.cnpmjs.org/@types/estree/0.0.39: resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/estree/-/estree-0.0.39.tgz} @@ -12439,6 +12421,7 @@ packages: version: 2.3.4 dependencies: '@types/unist': r2.cnpmjs.org/@types/unist/2.0.6 + dev: false r2.cnpmjs.org/@types/html-minifier-terser/6.1.0: resolution: {integrity: sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz} @@ -12463,6 +12446,7 @@ packages: resolution: {integrity: sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz} name: '@types/istanbul-lib-coverage' version: 2.0.4 + dev: false r2.cnpmjs.org/@types/istanbul-lib-report/3.0.0: resolution: {integrity: sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz} @@ -12470,6 +12454,7 @@ packages: version: 3.0.0 dependencies: '@types/istanbul-lib-coverage': r2.cnpmjs.org/@types/istanbul-lib-coverage/2.0.4 + dev: false r2.cnpmjs.org/@types/istanbul-reports/3.0.1: resolution: {integrity: sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz} @@ -12477,6 +12462,7 @@ packages: version: 3.0.1 dependencies: '@types/istanbul-lib-report': r2.cnpmjs.org/@types/istanbul-lib-report/3.0.0 + dev: false r2.cnpmjs.org/@types/js-cookie/2.2.7: resolution: {integrity: sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/js-cookie/-/js-cookie-2.2.7.tgz} @@ -12510,6 +12496,7 @@ packages: resolution: {integrity: sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/parse5/-/parse5-5.0.3.tgz} name: '@types/parse5' version: 5.0.3 + dev: false r2.cnpmjs.org/@types/pbkdf2/3.1.0: resolution: {integrity: sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz} @@ -12529,11 +12516,13 @@ packages: resolution: {integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/qs/-/qs-6.9.7.tgz} name: '@types/qs' version: 6.9.7 + dev: false r2.cnpmjs.org/@types/range-parser/1.2.4: resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz} name: '@types/range-parser' version: 1.2.4 + dev: false r2.cnpmjs.org/@types/resolve/1.17.1: resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/resolve/-/resolve-1.17.1.tgz} @@ -12548,11 +12537,13 @@ packages: version: 1.0.0 dependencies: '@types/node': 17.0.41 + dev: false r2.cnpmjs.org/@types/retry/0.12.0: resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/retry/-/retry-0.12.0.tgz} name: '@types/retry' version: 0.12.0 + dev: false r2.cnpmjs.org/@types/sax/1.2.4: resolution: {integrity: sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/sax/-/sax-1.2.4.tgz} @@ -12582,6 +12573,7 @@ packages: version: 1.9.1 dependencies: '@types/express': 4.17.17 + dev: false r2.cnpmjs.org/@types/sockjs/0.3.33: resolution: {integrity: sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz} @@ -12589,6 +12581,7 @@ packages: version: 0.3.33 dependencies: '@types/node': 17.0.41 + dev: false r2.cnpmjs.org/@types/stack-utils/2.0.1: resolution: {integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz} @@ -12600,6 +12593,7 @@ packages: resolution: {integrity: sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@types/unist/-/unist-2.0.6.tgz} name: '@types/unist' version: 2.0.6 + dev: false r2.cnpmjs.org/@webassemblyjs/ast/1.11.1: resolution: {integrity: sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz} @@ -12788,6 +12782,7 @@ packages: name: acorn-walk version: 8.2.0 engines: {node: '>=0.4.0'} + dev: false r2.cnpmjs.org/acorn/7.4.1: resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/acorn/-/acorn-7.4.1.tgz} @@ -12847,6 +12842,7 @@ packages: optional: true dependencies: ajv: 8.12.0 + dev: false r2.cnpmjs.org/ajv-keywords/3.5.2_ajv@6.12.6: resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz} @@ -12868,6 +12864,7 @@ packages: dependencies: ajv: 8.12.0 fast-deep-equal: r2.cnpmjs.org/fast-deep-equal/3.1.3 + dev: false r2.cnpmjs.org/ajv/6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ajv/-/ajv-6.12.6.tgz} @@ -12885,6 +12882,7 @@ packages: version: 3.0.1 dependencies: string-width: r2.cnpmjs.org/string-width/4.2.3 + dev: false r2.cnpmjs.org/ansi-escapes/4.3.2: resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz} @@ -12909,6 +12907,7 @@ packages: version: 0.0.8 engines: {'0': node >= 0.8.0} hasBin: true + dev: false r2.cnpmjs.org/ansi-regex/5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz} @@ -12984,6 +12983,7 @@ packages: resolution: {integrity: sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/array-flatten/-/array-flatten-2.1.2.tgz} name: array-flatten version: 2.1.2 + dev: false r2.cnpmjs.org/array-union/2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/array-union/-/array-union-2.1.0.tgz} @@ -13108,6 +13108,7 @@ packages: '@babel/core': r2.cnpmjs.org/@babel/core/7.12.9 '@babel/helper-plugin-utils': r2.cnpmjs.org/@babel/helper-plugin-utils/7.10.4 '@mdx-js/util': r2.cnpmjs.org/@mdx-js/util/1.6.22 + dev: false r2.cnpmjs.org/babel-plugin-dynamic-import-node/2.3.3: resolution: {integrity: sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz} @@ -13115,6 +13116,7 @@ packages: version: 2.3.3 dependencies: object.assign: 4.1.4 + dev: false r2.cnpmjs.org/babel-plugin-extract-import-names/1.6.22: resolution: {integrity: sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz} @@ -13122,6 +13124,7 @@ packages: version: 1.6.22 dependencies: '@babel/helper-plugin-utils': r2.cnpmjs.org/@babel/helper-plugin-utils/7.10.4 + dev: false r2.cnpmjs.org/babel-plugin-istanbul/6.1.1: resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz} @@ -13219,6 +13222,7 @@ packages: resolution: {integrity: sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/bail/-/bail-1.0.5.tgz} name: bail version: 1.0.5 + dev: false r2.cnpmjs.org/balanced-match/1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/balanced-match/-/balanced-match-1.0.2.tgz} @@ -13243,6 +13247,7 @@ packages: resolution: {integrity: sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/batch/-/batch-0.6.1.tgz} name: batch version: 0.6.1 + dev: false r2.cnpmjs.org/bcrypt-pbkdf/1.0.2: resolution: {integrity: sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz} @@ -13336,6 +13341,7 @@ packages: type-fest: r2.cnpmjs.org/type-fest/0.20.2 widest-line: r2.cnpmjs.org/widest-line/3.1.0 wrap-ansi: r2.cnpmjs.org/wrap-ansi/7.0.0 + dev: false r2.cnpmjs.org/boxen/6.2.1: resolution: {integrity: sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/boxen/-/boxen-6.2.1.tgz} @@ -13351,6 +13357,7 @@ packages: type-fest: 2.19.0 widest-line: r2.cnpmjs.org/widest-line/4.0.1 wrap-ansi: 8.1.0 + dev: false r2.cnpmjs.org/brace-expansion/1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz} @@ -13506,6 +13513,7 @@ packages: name: bytes version: 3.0.0 engines: {node: '>= 0.8'} + dev: false r2.cnpmjs.org/cacheable-lookup/5.0.4: resolution: {integrity: sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz} @@ -13527,6 +13535,7 @@ packages: lowercase-keys: r2.cnpmjs.org/lowercase-keys/2.0.0 normalize-url: r2.cnpmjs.org/normalize-url/4.5.1 responselike: r2.cnpmjs.org/responselike/1.0.2 + dev: false r2.cnpmjs.org/cacheable-request/7.0.2: resolution: {integrity: sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz} @@ -13622,6 +13631,7 @@ packages: resolution: {integrity: sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ccount/-/ccount-1.1.0.tgz} name: ccount version: 1.1.0 + dev: false r2.cnpmjs.org/chalk/2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/chalk/-/chalk-2.4.2.tgz} @@ -13663,16 +13673,19 @@ packages: resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz} name: character-entities-legacy version: 1.1.4 + dev: false r2.cnpmjs.org/character-entities/1.2.4: resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/character-entities/-/character-entities-1.2.4.tgz} name: character-entities version: 1.2.4 + dev: false r2.cnpmjs.org/character-reference-invalid/1.1.4: resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz} name: character-reference-invalid version: 1.1.4 + dev: false r2.cnpmjs.org/chardet/0.7.0: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/chardet/-/chardet-0.7.0.tgz} @@ -13696,6 +13709,7 @@ packages: resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ci-info/-/ci-info-2.0.0.tgz} name: ci-info version: 2.0.0 + dev: false r2.cnpmjs.org/cids/0.7.5: resolution: {integrity: sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/cids/-/cids-0.7.5.tgz} @@ -13742,12 +13756,14 @@ packages: name: cli-boxes version: 2.2.1 engines: {node: '>=6'} + dev: false r2.cnpmjs.org/cli-boxes/3.0.0: resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz} name: cli-boxes version: 3.0.0 engines: {node: '>=10'} + dev: false r2.cnpmjs.org/cli-cursor/3.1.0: resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz} @@ -13843,6 +13859,7 @@ packages: resolution: {integrity: sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz} name: collapse-white-space version: 1.0.6 + dev: false r2.cnpmjs.org/collect-v8-coverage/1.0.1: resolution: {integrity: sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz} @@ -13887,6 +13904,7 @@ packages: name: combine-promises version: 1.1.0 engines: {node: '>=10'} + dev: false r2.cnpmjs.org/combined-stream/1.0.8: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/combined-stream/-/combined-stream-1.0.8.tgz} @@ -13900,6 +13918,7 @@ packages: resolution: {integrity: sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz} name: comma-separated-tokens version: 1.0.8 + dev: false r2.cnpmjs.org/command-exists/1.2.9: resolution: {integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/command-exists/-/command-exists-1.2.9.tgz} @@ -13974,6 +13993,7 @@ packages: engines: {node: '>= 0.6'} dependencies: mime-db: 1.52.0 + dev: false r2.cnpmjs.org/concat-map/0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/concat-map/-/concat-map-0.0.1.tgz} @@ -14000,6 +14020,7 @@ packages: unique-string: r2.cnpmjs.org/unique-string/2.0.0 write-file-atomic: r2.cnpmjs.org/write-file-atomic/3.0.3 xdg-basedir: r2.cnpmjs.org/xdg-basedir/4.0.0 + dev: false r2.cnpmjs.org/confusing-browser-globals/1.0.11: resolution: {integrity: sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz} @@ -14010,12 +14031,14 @@ packages: resolution: {integrity: sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/consola/-/consola-2.15.3.tgz} name: consola version: 2.15.3 + dev: false r2.cnpmjs.org/content-disposition/0.5.2: resolution: {integrity: sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/content-disposition/-/content-disposition-0.5.2.tgz} name: content-disposition version: 0.5.2 engines: {node: '>= 0.6'} + dev: false r2.cnpmjs.org/content-disposition/0.5.4: resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/content-disposition/-/content-disposition-0.5.4.tgz} @@ -14050,6 +14073,7 @@ packages: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/core-util-is/-/core-util-is-1.0.3.tgz} name: core-util-is version: 1.0.3 + dev: false r2.cnpmjs.org/cors/2.8.5: resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/cors/-/cors-2.8.5.tgz} @@ -14174,6 +14198,7 @@ packages: name: crypto-random-string version: 2.0.0 engines: {node: '>=8'} + dev: false r2.cnpmjs.org/css-color-names/0.0.4: resolution: {integrity: sha512-zj5D7X1U2h2zsXOAM8EyUREBnnts6H+Jm+d1M2DbiQQcUtnqgQsMrdo8JW9R80YFUmIdBZeMu5wvYM7hcgWP/Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/css-color-names/-/css-color-names-0.0.4.tgz} @@ -14389,6 +14414,7 @@ packages: engines: {node: '>=4'} dependencies: mimic-response: r2.cnpmjs.org/mimic-response/1.0.1 + dev: false r2.cnpmjs.org/decompress-response/6.0.0: resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/decompress-response/-/decompress-response-6.0.0.tgz} @@ -14410,6 +14436,7 @@ packages: name: deep-extend version: 0.6.0 engines: {node: '>=4.0.0'} + dev: false r2.cnpmjs.org/deep-is/0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/deep-is/-/deep-is-0.1.4.tgz} @@ -14423,11 +14450,13 @@ packages: engines: {node: '>= 10'} dependencies: execa: r2.cnpmjs.org/execa/5.1.1 + dev: false r2.cnpmjs.org/defer-to-connect/1.1.3: resolution: {integrity: sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz} name: defer-to-connect version: 1.1.3 + dev: false r2.cnpmjs.org/defer-to-connect/2.0.1: resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz} @@ -14453,6 +14482,7 @@ packages: name: depd version: 1.1.2 engines: {node: '>= 0.6'} + dev: false r2.cnpmjs.org/depd/2.0.0: resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/depd/-/depd-2.0.0.tgz} @@ -14482,6 +14512,7 @@ packages: version: 2.0.4 dependencies: repeat-string: r2.cnpmjs.org/repeat-string/1.6.1 + dev: false r2.cnpmjs.org/detect-indent/6.1.0: resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/detect-indent/-/detect-indent-6.1.0.tgz} @@ -14501,6 +14532,7 @@ packages: resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/detect-node/-/detect-node-2.1.0.tgz} name: detect-node version: 2.1.0 + dev: false r2.cnpmjs.org/detect-port-alt/1.1.6: resolution: {integrity: sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz} @@ -14553,6 +14585,7 @@ packages: resolution: {integrity: sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/dns-equal/-/dns-equal-1.0.0.tgz} name: dns-equal version: 1.0.0 + dev: false r2.cnpmjs.org/doctrine/2.1.0: resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/doctrine/-/doctrine-2.1.0.tgz} @@ -14640,6 +14673,7 @@ packages: engines: {node: '>=8'} dependencies: is-obj: r2.cnpmjs.org/is-obj/2.0.0 + dev: false r2.cnpmjs.org/dotenv-expand/5.1.0: resolution: {integrity: sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz} @@ -14717,6 +14751,7 @@ packages: resolution: {integrity: sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/emoticon/-/emoticon-3.2.0.tgz} name: emoticon version: 3.2.0 + dev: false r2.cnpmjs.org/encodeurl/1.0.2: resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/encodeurl/-/encodeurl-1.0.2.tgz} @@ -14815,6 +14850,7 @@ packages: name: escape-goat version: 2.1.1 engines: {node: '>=8'} + dev: false r2.cnpmjs.org/escape-html/1.0.3: resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/escape-html/-/escape-html-1.0.3.tgz} @@ -15104,6 +15140,7 @@ packages: onetime: r2.cnpmjs.org/onetime/5.1.2 signal-exit: 3.0.7 strip-final-newline: r2.cnpmjs.org/strip-final-newline/2.0.0 + dev: false r2.cnpmjs.org/exit/0.1.2: resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/exit/-/exit-0.1.2.tgz} @@ -15147,11 +15184,13 @@ packages: engines: {node: '>=0.10.0'} dependencies: is-extendable: r2.cnpmjs.org/is-extendable/0.1.1 + dev: false r2.cnpmjs.org/extend/3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/extend/-/extend-3.0.2.tgz} name: extend version: 3.0.2 + dev: false r2.cnpmjs.org/extendable-error/0.1.7: resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/extendable-error/-/extendable-error-0.1.7.tgz} @@ -15217,6 +15256,7 @@ packages: version: 1.1.3 dependencies: punycode: r2.cnpmjs.org/punycode/1.3.2 + dev: false r2.cnpmjs.org/faye-websocket/0.11.4: resolution: {integrity: sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz} @@ -15225,6 +15265,7 @@ packages: engines: {node: '>=0.8.0'} dependencies: websocket-driver: r2.cnpmjs.org/websocket-driver/0.7.4 + dev: false r2.cnpmjs.org/fbemitter/3.0.0: resolution: {integrity: sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/fbemitter/-/fbemitter-3.0.0.tgz} @@ -15280,6 +15321,7 @@ packages: loader-utils: 2.0.4 schema-utils: r2.cnpmjs.org/schema-utils/3.1.1 webpack: 5.77.0 + dev: false r2.cnpmjs.org/fill-range/7.0.1: resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/fill-range/-/fill-range-7.0.1.tgz} @@ -15555,6 +15597,7 @@ packages: resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz} name: get-own-enumerable-property-symbols version: 3.0.2 + dev: false r2.cnpmjs.org/get-package-type/0.1.0: resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/get-package-type/-/get-package-type-0.1.0.tgz} @@ -15577,6 +15620,7 @@ packages: engines: {node: '>=6'} dependencies: pump: r2.cnpmjs.org/pump/3.0.0 + dev: false r2.cnpmjs.org/get-stream/5.2.0: resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/get-stream/-/get-stream-5.2.0.tgz} @@ -15585,6 +15629,7 @@ packages: engines: {node: '>=8'} dependencies: pump: r2.cnpmjs.org/pump/3.0.0 + dev: false r2.cnpmjs.org/get-stream/6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/get-stream/-/get-stream-6.0.1.tgz} @@ -15732,6 +15777,7 @@ packages: p-cancelable: r2.cnpmjs.org/p-cancelable/1.1.0 to-readable-stream: r2.cnpmjs.org/to-readable-stream/1.0.0 url-parse-lax: r2.cnpmjs.org/url-parse-lax/3.0.0 + dev: false r2.cnpmjs.org/grapheme-splitter/1.0.4: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz} @@ -15748,6 +15794,7 @@ packages: kind-of: r2.cnpmjs.org/kind-of/6.0.3 section-matter: r2.cnpmjs.org/section-matter/1.0.0 strip-bom-string: r2.cnpmjs.org/strip-bom-string/1.0.0 + dev: false r2.cnpmjs.org/gzip-size/6.0.0: resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/gzip-size/-/gzip-size-6.0.0.tgz} @@ -15761,6 +15808,7 @@ packages: resolution: {integrity: sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/handle-thing/-/handle-thing-2.0.1.tgz} name: handle-thing version: 2.0.1 + dev: false r2.cnpmjs.org/har-schema/2.0.0: resolution: {integrity: sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/har-schema/-/har-schema-2.0.0.tgz} @@ -15817,6 +15865,7 @@ packages: name: has-yarn version: 2.1.0 engines: {node: '>=8'} + dev: false r2.cnpmjs.org/has/1.0.3: resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/has/-/has-1.0.3.tgz} @@ -15865,6 +15914,7 @@ packages: style-to-object: r2.cnpmjs.org/style-to-object/0.3.0 unist-util-is: r2.cnpmjs.org/unist-util-is/4.1.0 web-namespaces: r2.cnpmjs.org/web-namespaces/1.1.4 + dev: false r2.cnpmjs.org/hast-util-from-parse5/6.0.1: resolution: {integrity: sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz} @@ -15877,11 +15927,13 @@ packages: vfile: r2.cnpmjs.org/vfile/4.2.1 vfile-location: r2.cnpmjs.org/vfile-location/3.2.0 web-namespaces: r2.cnpmjs.org/web-namespaces/1.1.4 + dev: false r2.cnpmjs.org/hast-util-parse-selector/2.2.5: resolution: {integrity: sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz} name: hast-util-parse-selector version: 2.2.5 + dev: false r2.cnpmjs.org/hast-util-raw/6.0.1: resolution: {integrity: sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz} @@ -15898,6 +15950,7 @@ packages: web-namespaces: r2.cnpmjs.org/web-namespaces/1.1.4 xtend: r2.cnpmjs.org/xtend/4.0.2 zwitch: r2.cnpmjs.org/zwitch/1.0.5 + dev: false r2.cnpmjs.org/hast-util-to-parse5/6.0.0: resolution: {integrity: sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz} @@ -15909,6 +15962,7 @@ packages: web-namespaces: r2.cnpmjs.org/web-namespaces/1.1.4 xtend: r2.cnpmjs.org/xtend/4.0.2 zwitch: r2.cnpmjs.org/zwitch/1.0.5 + dev: false r2.cnpmjs.org/hastscript/6.0.0: resolution: {integrity: sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hastscript/-/hastscript-6.0.0.tgz} @@ -15920,6 +15974,7 @@ packages: hast-util-parse-selector: r2.cnpmjs.org/hast-util-parse-selector/2.2.5 property-information: r2.cnpmjs.org/property-information/5.6.0 space-separated-tokens: r2.cnpmjs.org/space-separated-tokens/1.1.5 + dev: false r2.cnpmjs.org/he/1.2.0: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/he/-/he-1.2.0.tgz} @@ -15950,6 +16005,7 @@ packages: tiny-invariant: 1.3.1 tiny-warning: r2.cnpmjs.org/tiny-warning/1.0.3 value-equal: r2.cnpmjs.org/value-equal/1.0.1 + dev: false r2.cnpmjs.org/hmac-drbg/1.0.1: resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz} @@ -15966,6 +16022,7 @@ packages: version: 3.3.2 dependencies: react-is: r2.cnpmjs.org/react-is/16.13.1 + dev: false r2.cnpmjs.org/hoopy/0.1.4: resolution: {integrity: sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hoopy/-/hoopy-0.1.4.tgz} @@ -15989,6 +16046,7 @@ packages: obuf: r2.cnpmjs.org/obuf/1.1.2 readable-stream: 2.3.8 wbuf: r2.cnpmjs.org/wbuf/1.7.3 + dev: false r2.cnpmjs.org/hsl-regex/1.0.0: resolution: {integrity: sha512-M5ezZw4LzXbBKMruP+BNANf0k+19hDQMgpzBIYnya//Al+fjNct9Wf3b1WedLqdEs2hKBvxq/jh+DsHJLj0F9A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz} @@ -16036,6 +16094,7 @@ packages: resolution: {integrity: sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz} name: html-void-elements version: 1.0.5 + dev: false r2.cnpmjs.org/html-webpack-plugin/5.5.0: resolution: {integrity: sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz} @@ -16067,6 +16126,7 @@ packages: pretty-error: r2.cnpmjs.org/pretty-error/4.0.0 tapable: r2.cnpmjs.org/tapable/2.2.1 webpack: 5.77.0 + dev: false r2.cnpmjs.org/htmlparser2/6.1.0: resolution: {integrity: sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz} @@ -16082,6 +16142,7 @@ packages: resolution: {integrity: sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz} name: http-deceiver version: 1.2.7 + dev: false r2.cnpmjs.org/http-errors/1.6.3: resolution: {integrity: sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/http-errors/-/http-errors-1.6.3.tgz} @@ -16093,6 +16154,7 @@ packages: inherits: r2.cnpmjs.org/inherits/2.0.3 setprototypeof: r2.cnpmjs.org/setprototypeof/1.1.0 statuses: r2.cnpmjs.org/statuses/1.5.0 + dev: false r2.cnpmjs.org/http-errors/2.0.0: resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/http-errors/-/http-errors-2.0.0.tgz} @@ -16136,6 +16198,7 @@ packages: requires-port: r2.cnpmjs.org/requires-port/1.0.0 transitivePeerDependencies: - debug + dev: false r2.cnpmjs.org/http-signature/1.2.0: resolution: {integrity: sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/http-signature/-/http-signature-1.2.0.tgz} @@ -16175,6 +16238,7 @@ packages: name: human-signals version: 2.1.0 engines: {node: '>=10.17.0'} + dev: false r2.cnpmjs.org/iconv-lite/0.4.24: resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz} @@ -16264,6 +16328,7 @@ packages: name: import-lazy version: 2.1.0 engines: {node: '>=4'} + dev: false r2.cnpmjs.org/imurmurhash/0.1.4: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz} @@ -16289,6 +16354,7 @@ packages: resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/inherits/-/inherits-2.0.3.tgz} name: inherits version: 2.0.3 + dev: false r2.cnpmjs.org/inherits/2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/inherits/-/inherits-2.0.4.tgz} @@ -16305,17 +16371,20 @@ packages: name: ini version: 2.0.0 engines: {node: '>=10'} + dev: false r2.cnpmjs.org/inline-style-parser/0.1.1: resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz} name: inline-style-parser version: 0.1.1 + dev: false r2.cnpmjs.org/interpret/1.4.0: resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/interpret/-/interpret-1.4.0.tgz} name: interpret version: 1.4.0 engines: {node: '>= 0.10'} + dev: false r2.cnpmjs.org/invariant/2.2.4: resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/invariant/-/invariant-2.2.4.tgz} @@ -16335,11 +16404,13 @@ packages: name: ipaddr.js version: 2.0.1 engines: {node: '>= 10'} + dev: false r2.cnpmjs.org/is-alphabetical/1.0.4: resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz} name: is-alphabetical version: 1.0.4 + dev: false r2.cnpmjs.org/is-alphanumerical/1.0.4: resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz} @@ -16348,6 +16419,7 @@ packages: dependencies: is-alphabetical: r2.cnpmjs.org/is-alphabetical/1.0.4 is-decimal: r2.cnpmjs.org/is-decimal/1.0.4 + dev: false r2.cnpmjs.org/is-arguments/1.1.1: resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-arguments/-/is-arguments-1.1.1.tgz} @@ -16398,6 +16470,7 @@ packages: name: is-buffer version: 2.0.5 engines: {node: '>=4'} + dev: false r2.cnpmjs.org/is-ci/2.0.0: resolution: {integrity: sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-ci/-/is-ci-2.0.0.tgz} @@ -16406,6 +16479,7 @@ packages: hasBin: true dependencies: ci-info: r2.cnpmjs.org/ci-info/2.0.0 + dev: false r2.cnpmjs.org/is-ci/3.0.1: resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-ci/-/is-ci-3.0.1.tgz} @@ -16441,6 +16515,7 @@ packages: resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-decimal/-/is-decimal-1.0.4.tgz} name: is-decimal version: 1.0.4 + dev: false r2.cnpmjs.org/is-docker/2.2.1: resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-docker/-/is-docker-2.2.1.tgz} @@ -16454,6 +16529,7 @@ packages: name: is-extendable version: 0.1.1 engines: {node: '>=0.10.0'} + dev: false r2.cnpmjs.org/is-extglob/2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-extglob/-/is-extglob-2.1.1.tgz} @@ -16514,6 +16590,7 @@ packages: resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz} name: is-hexadecimal version: 1.0.4 + dev: false r2.cnpmjs.org/is-installed-globally/0.4.0: resolution: {integrity: sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz} @@ -16523,6 +16600,7 @@ packages: dependencies: global-dirs: 3.0.1 is-path-inside: r2.cnpmjs.org/is-path-inside/3.0.3 + dev: false r2.cnpmjs.org/is-map/2.0.2: resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-map/-/is-map-2.0.2.tgz} @@ -16555,6 +16633,7 @@ packages: name: is-npm version: 5.0.0 engines: {node: '>=10'} + dev: false r2.cnpmjs.org/is-number/7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-number/-/is-number-7.0.0.tgz} @@ -16567,18 +16646,21 @@ packages: name: is-obj version: 1.0.1 engines: {node: '>=0.10.0'} + dev: false r2.cnpmjs.org/is-obj/2.0.0: resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-obj/-/is-obj-2.0.0.tgz} name: is-obj version: 2.0.0 engines: {node: '>=8'} + dev: false r2.cnpmjs.org/is-path-cwd/2.2.0: resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz} name: is-path-cwd version: 2.2.0 engines: {node: '>=6'} + dev: false r2.cnpmjs.org/is-path-inside/3.0.3: resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz} @@ -16598,12 +16680,14 @@ packages: name: is-plain-obj version: 2.1.0 engines: {node: '>=8'} + dev: false r2.cnpmjs.org/is-plain-obj/3.0.0: resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz} name: is-plain-obj version: 3.0.0 engines: {node: '>=10'} + dev: false r2.cnpmjs.org/is-plain-object/2.0.4: resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz} @@ -16641,6 +16725,7 @@ packages: name: is-regexp version: 1.0.0 engines: {node: '>=0.10.0'} + dev: false r2.cnpmjs.org/is-root/2.1.0: resolution: {integrity: sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-root/-/is-root-2.1.0.tgz} @@ -16658,6 +16743,7 @@ packages: name: is-stream version: 2.0.1 engines: {node: '>=8'} + dev: false r2.cnpmjs.org/is-stream/3.0.0: resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-stream/-/is-stream-3.0.0.tgz} @@ -16695,6 +16781,7 @@ packages: resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz} name: is-typedarray version: 1.0.0 + dev: false r2.cnpmjs.org/is-weakmap/2.0.1: resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz} @@ -16720,6 +16807,7 @@ packages: resolution: {integrity: sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz} name: is-whitespace-character version: 1.0.4 + dev: false r2.cnpmjs.org/is-windows/1.0.2: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-windows/-/is-windows-1.0.2.tgz} @@ -16732,6 +16820,7 @@ packages: resolution: {integrity: sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-word-character/-/is-word-character-1.0.4.tgz} name: is-word-character version: 1.0.4 + dev: false r2.cnpmjs.org/is-wsl/2.2.0: resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-wsl/-/is-wsl-2.2.0.tgz} @@ -16745,16 +16834,19 @@ packages: resolution: {integrity: sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz} name: is-yarn-global version: 0.3.0 + dev: false r2.cnpmjs.org/isarray/0.0.1: resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/isarray/-/isarray-0.0.1.tgz} name: isarray version: 0.0.1 + dev: false r2.cnpmjs.org/isarray/1.0.0: resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/isarray/-/isarray-1.0.0.tgz} name: isarray version: 1.0.0 + dev: false r2.cnpmjs.org/isarray/2.0.5: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/isarray/-/isarray-2.0.5.tgz} @@ -16930,6 +17022,7 @@ packages: resolution: {integrity: sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/json-buffer/-/json-buffer-3.0.0.tgz} name: json-buffer version: 3.0.0 + dev: false r2.cnpmjs.org/json-buffer/3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/json-buffer/-/json-buffer-3.0.1.tgz} @@ -16957,6 +17050,7 @@ packages: resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz} name: json-schema-traverse version: 1.0.0 + dev: false r2.cnpmjs.org/json-schema/0.4.0: resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/json-schema/-/json-schema-0.4.0.tgz} @@ -17017,6 +17111,7 @@ packages: version: 3.1.0 dependencies: json-buffer: r2.cnpmjs.org/json-buffer/3.0.0 + dev: false r2.cnpmjs.org/kind-of/6.0.3: resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/kind-of/-/kind-of-6.0.3.tgz} @@ -17052,6 +17147,7 @@ packages: engines: {node: '>=8'} dependencies: package-json: r2.cnpmjs.org/package-json/6.5.0 + dev: false r2.cnpmjs.org/level-transcoder/1.0.1: resolution: {integrity: sha512-t7bFwFtsQeD8cl8NIoQ2iwxA0CL/9IFw7/9gAjOonH0PWTTiRfY7Hq+Ejbsxh86tXobDQ6IOiddjNYIfOBs06w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/level-transcoder/-/level-transcoder-1.0.1.tgz} @@ -17068,6 +17164,7 @@ packages: name: leven version: 3.1.0 engines: {node: '>=6'} + dev: false r2.cnpmjs.org/levn/0.3.0: resolution: {integrity: sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/levn/-/levn-0.3.0.tgz} @@ -17254,12 +17351,14 @@ packages: name: lowercase-keys version: 1.0.1 engines: {node: '>=0.10.0'} + dev: false r2.cnpmjs.org/lowercase-keys/2.0.0: resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz} name: lowercase-keys version: 2.0.0 engines: {node: '>=8'} + dev: false r2.cnpmjs.org/lowercase-keys/3.0.0: resolution: {integrity: sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz} @@ -17332,6 +17431,7 @@ packages: resolution: {integrity: sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz} name: markdown-escapes version: 1.0.4 + dev: false r2.cnpmjs.org/material-ripple-effects/2.0.1: resolution: {integrity: sha512-hHlUkZAuXbP94lu02VgrPidbZ3hBtgXBtjlwR8APNqOIgDZMV8MCIcsclL8FmGJQHvnORyvoQgC965vPsiyXLQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/material-ripple-effects/-/material-ripple-effects-2.0.1.tgz} @@ -17361,6 +17461,7 @@ packages: version: 4.0.0 dependencies: unist-util-remove: r2.cnpmjs.org/unist-util-remove/2.1.0 + dev: false r2.cnpmjs.org/mdast-util-definitions/4.0.0: resolution: {integrity: sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz} @@ -17368,6 +17469,7 @@ packages: version: 4.0.0 dependencies: unist-util-visit: r2.cnpmjs.org/unist-util-visit/2.0.3 + dev: false r2.cnpmjs.org/mdast-util-to-hast/10.0.1: resolution: {integrity: sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz} @@ -17382,11 +17484,13 @@ packages: unist-util-generated: r2.cnpmjs.org/unist-util-generated/1.1.6 unist-util-position: r2.cnpmjs.org/unist-util-position/3.1.0 unist-util-visit: r2.cnpmjs.org/unist-util-visit/2.0.3 + dev: false r2.cnpmjs.org/mdast-util-to-string/2.0.0: resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz} name: mdast-util-to-string version: 2.0.0 + dev: false r2.cnpmjs.org/mdn-data/2.0.14: resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mdn-data/-/mdn-data-2.0.14.tgz} @@ -17403,6 +17507,7 @@ packages: resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mdurl/-/mdurl-1.0.1.tgz} name: mdurl version: 1.0.1 + dev: false r2.cnpmjs.org/media-typer/0.3.0: resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/media-typer/-/media-typer-0.3.0.tgz} @@ -17484,6 +17589,7 @@ packages: name: mime-db version: 1.33.0 engines: {node: '>= 0.6'} + dev: false r2.cnpmjs.org/mime-types/2.1.18: resolution: {integrity: sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mime-types/-/mime-types-2.1.18.tgz} @@ -17492,6 +17598,7 @@ packages: engines: {node: '>= 0.6'} dependencies: mime-db: r2.cnpmjs.org/mime-db/1.33.0 + dev: false r2.cnpmjs.org/mime/1.6.0: resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mime/-/mime-1.6.0.tgz} @@ -17518,6 +17625,7 @@ packages: name: mimic-response version: 1.0.1 engines: {node: '>=4'} + dev: false r2.cnpmjs.org/mimic-response/3.1.0: resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/mimic-response/-/mimic-response-3.1.0.tgz} @@ -17794,6 +17902,7 @@ packages: name: normalize-url version: 4.5.1 engines: {node: '>=8'} + dev: false r2.cnpmjs.org/normalize-url/6.1.0: resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/normalize-url/-/normalize-url-6.1.0.tgz} @@ -17903,12 +18012,14 @@ packages: resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/obuf/-/obuf-1.1.2.tgz} name: obuf version: 1.1.2 + dev: false r2.cnpmjs.org/on-headers/1.0.2: resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/on-headers/-/on-headers-1.0.2.tgz} name: on-headers version: 1.0.2 engines: {node: '>= 0.8'} + dev: false r2.cnpmjs.org/once/1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/once/-/once-1.4.0.tgz} @@ -17939,6 +18050,7 @@ packages: name: opener version: 1.5.2 hasBin: true + dev: false r2.cnpmjs.org/optionator/0.8.3: resolution: {integrity: sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/optionator/-/optionator-0.8.3.tgz} @@ -17997,6 +18109,7 @@ packages: name: p-cancelable version: 1.1.0 engines: {node: '>=6'} + dev: false r2.cnpmjs.org/p-cancelable/2.1.1: resolution: {integrity: sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz} @@ -18118,6 +18231,7 @@ packages: registry-auth-token: 4.2.2 registry-url: r2.cnpmjs.org/registry-url/5.1.0 semver: r2.cnpmjs.org/semver/6.3.0 + dev: false r2.cnpmjs.org/param-case/3.0.4: resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/param-case/-/param-case-3.0.4.tgz} @@ -18158,6 +18272,7 @@ packages: is-alphanumerical: r2.cnpmjs.org/is-alphanumerical/1.0.4 is-decimal: r2.cnpmjs.org/is-decimal/1.0.4 is-hexadecimal: r2.cnpmjs.org/is-hexadecimal/1.0.4 + dev: false r2.cnpmjs.org/parse-json/4.0.0: resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/parse-json/-/parse-json-4.0.0.tgz} @@ -18190,6 +18305,7 @@ packages: resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/parse5/-/parse5-6.0.1.tgz} name: parse5 version: 6.0.1 + dev: false r2.cnpmjs.org/parseurl/1.3.3: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/parseurl/-/parseurl-1.3.3.tgz} @@ -18233,6 +18349,7 @@ packages: resolution: {integrity: sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz} name: path-is-inside version: 1.0.2 + dev: false r2.cnpmjs.org/path-key/2.0.1: resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/path-key/-/path-key-2.0.1.tgz} @@ -18270,11 +18387,13 @@ packages: version: 1.8.0 dependencies: isarray: r2.cnpmjs.org/isarray/0.0.1 + dev: false r2.cnpmjs.org/path-to-regexp/2.2.1: resolution: {integrity: sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz} name: path-to-regexp version: 2.2.1 + dev: false r2.cnpmjs.org/path-type/3.0.0: resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/path-type/-/path-type-3.0.0.tgz} @@ -18676,6 +18795,7 @@ packages: name: prepend-http version: 2.0.0 engines: {node: '>=4'} + dev: false r2.cnpmjs.org/prettier-linter-helpers/1.0.0: resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz} @@ -18713,11 +18833,13 @@ packages: name: pretty-time version: 1.1.0 engines: {node: '>=4'} + dev: false r2.cnpmjs.org/process-nextick-args/2.0.1: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz} name: process-nextick-args version: 2.0.1 + dev: false r2.cnpmjs.org/process/0.11.10: resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/process/-/process-0.11.10.tgz} @@ -18747,6 +18869,7 @@ packages: version: 5.6.0 dependencies: xtend: r2.cnpmjs.org/xtend/4.0.2 + dev: false r2.cnpmjs.org/proxy-addr/2.0.7: resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz} @@ -18788,6 +18911,7 @@ packages: dependencies: end-of-stream: r2.cnpmjs.org/end-of-stream/1.4.4 once: r2.cnpmjs.org/once/1.4.0 + dev: false r2.cnpmjs.org/punycode/1.3.2: resolution: {integrity: sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/punycode/-/punycode-1.3.2.tgz} @@ -18808,6 +18932,7 @@ packages: engines: {node: '>=8'} dependencies: escape-goat: r2.cnpmjs.org/escape-goat/2.1.1 + dev: false r2.cnpmjs.org/pure-color/1.3.0: resolution: {integrity: sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/pure-color/-/pure-color-1.3.0.tgz} @@ -18863,6 +18988,7 @@ packages: version: 6.0.2 dependencies: inherits: r2.cnpmjs.org/inherits/2.0.4 + dev: false r2.cnpmjs.org/quick-lru/4.0.1: resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/quick-lru/-/quick-lru-4.0.1.tgz} @@ -18906,6 +19032,7 @@ packages: name: range-parser version: 1.2.0 engines: {node: '>= 0.6'} + dev: false r2.cnpmjs.org/range-parser/1.2.1: resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/range-parser/-/range-parser-1.2.1.tgz} @@ -18923,6 +19050,7 @@ packages: ini: r2.cnpmjs.org/ini/1.3.8 minimist: 1.2.8 strip-json-comments: r2.cnpmjs.org/strip-json-comments/2.0.1 + dev: false r2.cnpmjs.org/react-app-polyfill/3.0.0: resolution: {integrity: sha512-sZ41cxiU5llIB003yxxQBYrARBqe0repqPTTYBTmMqTz9szeBbE37BehCE891NZsmdZqqP+xWKdT3eo3vOzN8w==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/react-app-polyfill/-/react-app-polyfill-3.0.0.tgz} @@ -19019,6 +19147,7 @@ packages: '@babel/runtime': 7.21.0 react-loadable: r2.cnpmjs.org/@docusaurus/react-loadable/5.5.2_react@18.2.0 webpack: 5.77.0 + dev: false r2.cnpmjs.org/react-refresh/0.11.0: resolution: {integrity: sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/react-refresh/-/react-refresh-0.11.0.tgz} @@ -19039,6 +19168,7 @@ packages: '@babel/runtime': 7.21.0 react: 18.2.0 react-router: 5.3.4_react@18.2.0 + dev: false r2.cnpmjs.org/read-cache/1.0.0: resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/read-cache/-/read-cache-1.0.0.tgz} @@ -19114,6 +19244,7 @@ packages: engines: {node: '>= 0.10'} dependencies: resolve: 1.22.1 + dev: false r2.cnpmjs.org/redent/3.0.0: resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/redent/-/redent-3.0.0.tgz} @@ -19151,6 +19282,7 @@ packages: engines: {node: '>=8'} dependencies: rc: r2.cnpmjs.org/rc/1.2.8 + dev: false r2.cnpmjs.org/relateurl/0.2.7: resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/relateurl/-/relateurl-0.2.7.tgz} @@ -19166,11 +19298,13 @@ packages: emoticon: r2.cnpmjs.org/emoticon/3.2.0 node-emoji: r2.cnpmjs.org/node-emoji/1.11.0 unist-util-visit: r2.cnpmjs.org/unist-util-visit/2.0.3 + dev: false r2.cnpmjs.org/remark-footnotes/2.0.0: resolution: {integrity: sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz} name: remark-footnotes version: 2.0.0 + dev: false r2.cnpmjs.org/remark-mdx/1.6.22: resolution: {integrity: sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz} @@ -19187,6 +19321,7 @@ packages: unified: r2.cnpmjs.org/unified/9.2.0 transitivePeerDependencies: - supports-color + dev: false r2.cnpmjs.org/remark-parse/8.0.3: resolution: {integrity: sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/remark-parse/-/remark-parse-8.0.3.tgz} @@ -19209,6 +19344,7 @@ packages: unist-util-remove-position: r2.cnpmjs.org/unist-util-remove-position/2.0.1 vfile-location: r2.cnpmjs.org/vfile-location/3.2.0 xtend: r2.cnpmjs.org/xtend/4.0.2 + dev: false r2.cnpmjs.org/remark-squeeze-paragraphs/4.0.0: resolution: {integrity: sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz} @@ -19216,6 +19352,7 @@ packages: version: 4.0.0 dependencies: mdast-squeeze-paragraphs: r2.cnpmjs.org/mdast-squeeze-paragraphs/4.0.0 + dev: false r2.cnpmjs.org/renderkid/3.0.0: resolution: {integrity: sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/renderkid/-/renderkid-3.0.0.tgz} @@ -19233,6 +19370,7 @@ packages: name: repeat-string version: 1.6.1 engines: {node: '>=0.10'} + dev: false r2.cnpmjs.org/request/2.88.2: resolution: {integrity: sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/request/-/request-2.88.2.tgz} @@ -19274,11 +19412,13 @@ packages: name: require-from-string version: 2.0.2 engines: {node: '>=0.10.0'} + dev: false r2.cnpmjs.org/require-like/0.1.2: resolution: {integrity: sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/require-like/-/require-like-0.1.2.tgz} name: require-like version: 0.1.2 + dev: false r2.cnpmjs.org/require-main-filename/2.0.0: resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz} @@ -19290,6 +19430,7 @@ packages: resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/requires-port/-/requires-port-1.0.0.tgz} name: requires-port version: 1.0.0 + dev: false r2.cnpmjs.org/resize-observer-polyfill/1.5.1: resolution: {integrity: sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz} @@ -19328,6 +19469,7 @@ packages: resolution: {integrity: sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz} name: resolve-pathname version: 3.0.0 + dev: false r2.cnpmjs.org/resolve-url-loader/4.0.0: resolution: {integrity: sha512-05VEMczVREcbtT7Bz+C+96eUO5HDNvdthIiMB34t7FcF8ehcu4wC0sSgPUubs3XW2Q3CNLJk/BJrCU9wVRymiA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/resolve-url-loader/-/resolve-url-loader-4.0.0.tgz} @@ -19356,6 +19498,7 @@ packages: version: 1.0.2 dependencies: lowercase-keys: r2.cnpmjs.org/lowercase-keys/1.0.1 + dev: false r2.cnpmjs.org/restore-cursor/3.1.0: resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz} @@ -19372,6 +19515,7 @@ packages: name: retry version: 0.13.1 engines: {node: '>= 4'} + dev: false r2.cnpmjs.org/reusify/1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/reusify/-/reusify-1.0.4.tgz} @@ -19525,6 +19669,7 @@ packages: resolution: {integrity: sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz} name: rtl-detect version: 1.0.4 + dev: false r2.cnpmjs.org/rtlcss/3.5.0: resolution: {integrity: sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/rtlcss/-/rtlcss-3.5.0.tgz} @@ -19563,6 +19708,7 @@ packages: resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz} name: safe-buffer version: 5.1.2 + dev: false r2.cnpmjs.org/safe-buffer/5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz} @@ -19641,6 +19787,7 @@ packages: ajv: 8.12.0 ajv-formats: r2.cnpmjs.org/ajv-formats/2.1.1 ajv-keywords: r2.cnpmjs.org/ajv-keywords/5.1.0_ajv@8.12.0 + dev: false r2.cnpmjs.org/screenfull/5.2.0: resolution: {integrity: sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/screenfull/-/screenfull-5.2.0.tgz} @@ -19669,11 +19816,13 @@ packages: dependencies: extend-shallow: r2.cnpmjs.org/extend-shallow/2.0.1 kind-of: r2.cnpmjs.org/kind-of/6.0.3 + dev: false r2.cnpmjs.org/select-hose/2.0.0: resolution: {integrity: sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/select-hose/-/select-hose-2.0.0.tgz} name: select-hose version: 2.0.0 + dev: false r2.cnpmjs.org/semver-diff/3.1.1: resolution: {integrity: sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/semver-diff/-/semver-diff-3.1.1.tgz} @@ -19682,6 +19831,7 @@ packages: engines: {node: '>=8'} dependencies: semver: r2.cnpmjs.org/semver/6.3.0 + dev: false r2.cnpmjs.org/semver/5.7.1: resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/semver/-/semver-5.7.1.tgz} @@ -19733,6 +19883,7 @@ packages: parseurl: r2.cnpmjs.org/parseurl/1.3.3 transitivePeerDependencies: - supports-color + dev: false r2.cnpmjs.org/servify/0.1.12: resolution: {integrity: sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/servify/-/servify-0.1.12.tgz} @@ -19771,6 +19922,7 @@ packages: resolution: {integrity: sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz} name: setprototypeof version: 1.1.0 + dev: false r2.cnpmjs.org/setprototypeof/1.2.0: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz} @@ -19861,6 +20013,7 @@ packages: '@polka/url': r2.cnpmjs.org/@polka/url/1.0.0-next.21 mrmime: 1.0.1 totalist: r2.cnpmjs.org/totalist/1.1.0 + dev: false r2.cnpmjs.org/sisteransi/1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/sisteransi/-/sisteransi-1.0.5.tgz} @@ -19878,6 +20031,7 @@ packages: name: slash version: 4.0.0 engines: {node: '>=12'} + dev: false r2.cnpmjs.org/slice-ansi/3.0.0: resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz} @@ -19934,6 +20088,7 @@ packages: faye-websocket: r2.cnpmjs.org/faye-websocket/0.11.4 uuid: r2.cnpmjs.org/uuid/8.3.2 websocket-driver: r2.cnpmjs.org/websocket-driver/0.7.4 + dev: false r2.cnpmjs.org/solc/0.7.6: resolution: {integrity: sha512-WsR/W7CXwh2VnmZapB4JrsDeLlshoKBz5Pz/zYNulB6LBsOEHI2Zj/GeKLMFcvv57OHiXHvxq5ZOQB+EdqxlxQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/solc/-/solc-0.7.6.tgz} @@ -19974,6 +20129,7 @@ packages: name: source-map version: 0.5.7 engines: {node: '>=0.10.0'} + dev: false r2.cnpmjs.org/source-map/0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/source-map/-/source-map-0.6.1.tgz} @@ -20000,6 +20156,7 @@ packages: resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz} name: space-separated-tokens version: 1.1.5 + dev: false r2.cnpmjs.org/spawndamnit/2.0.0: resolution: {integrity: sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/spawndamnit/-/spawndamnit-2.0.0.tgz} @@ -20038,6 +20195,7 @@ packages: wbuf: r2.cnpmjs.org/wbuf/1.7.3 transitivePeerDependencies: - supports-color + dev: false r2.cnpmjs.org/spdy/4.0.2: resolution: {integrity: sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/spdy/-/spdy-4.0.2.tgz} @@ -20052,6 +20210,7 @@ packages: spdy-transport: r2.cnpmjs.org/spdy-transport/3.0.0 transitivePeerDependencies: - supports-color + dev: false r2.cnpmjs.org/sprintf-js/1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz} @@ -20074,12 +20233,14 @@ packages: resolution: {integrity: sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/state-toggle/-/state-toggle-1.0.3.tgz} name: state-toggle version: 1.0.3 + dev: false r2.cnpmjs.org/statuses/1.5.0: resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/statuses/-/statuses-1.5.0.tgz} name: statuses version: 1.5.0 engines: {node: '>= 0.6'} + dev: false r2.cnpmjs.org/statuses/2.0.1: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/statuses/-/statuses-2.0.1.tgz} @@ -20190,6 +20351,7 @@ packages: version: 1.1.1 dependencies: safe-buffer: r2.cnpmjs.org/safe-buffer/5.1.2 + dev: false r2.cnpmjs.org/string_decoder/1.3.0: resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/string_decoder/-/string_decoder-1.3.0.tgz} @@ -20207,6 +20369,7 @@ packages: get-own-enumerable-property-symbols: r2.cnpmjs.org/get-own-enumerable-property-symbols/3.0.2 is-obj: r2.cnpmjs.org/is-obj/1.0.1 is-regexp: r2.cnpmjs.org/is-regexp/1.0.0 + dev: false r2.cnpmjs.org/strip-ansi/6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz} @@ -20229,6 +20392,7 @@ packages: name: strip-bom-string version: 1.0.0 engines: {node: '>=0.10.0'} + dev: false r2.cnpmjs.org/strip-bom/3.0.0: resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/strip-bom/-/strip-bom-3.0.0.tgz} @@ -20255,6 +20419,7 @@ packages: name: strip-final-newline version: 2.0.0 engines: {node: '>=6'} + dev: false r2.cnpmjs.org/strip-final-newline/3.0.0: resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz} @@ -20285,6 +20450,7 @@ packages: name: strip-json-comments version: 2.0.1 engines: {node: '>=0.10.0'} + dev: false r2.cnpmjs.org/strip-json-comments/3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz} @@ -20328,6 +20494,7 @@ packages: version: 0.3.0 dependencies: inline-style-parser: r2.cnpmjs.org/inline-style-parser/0.1.1 + dev: false r2.cnpmjs.org/style-value-types/5.0.0: resolution: {integrity: sha512-08yq36Ikn4kx4YU6RD7jWEv27v4V+PUsOGa4n/as8Et3CuODMJQ00ENeAVXAeydX4Z2j1XHZF1K2sX4mGl18fA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/style-value-types/-/style-value-types-5.0.0.tgz} @@ -20375,6 +20542,7 @@ packages: resolution: {integrity: sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/svg-parser/-/svg-parser-2.0.4.tgz} name: svg-parser version: 2.0.4 + dev: false r2.cnpmjs.org/svgo/1.3.2: resolution: {integrity: sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/svgo/-/svgo-1.3.2.tgz} @@ -20543,6 +20711,7 @@ packages: resolution: {integrity: sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/thunky/-/thunky-1.1.0.tgz} name: thunky version: 1.1.0 + dev: false r2.cnpmjs.org/time-stamp/2.2.0: resolution: {integrity: sha512-zxke8goJQpBeEgD82CXABeMh0LSJcj7CXEd0OHOg45HgcofF7pxNwZm9+RknpxpDhwN4gFpySkApKfFYfRQnUA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/time-stamp/-/time-stamp-2.2.0.tgz} @@ -20571,6 +20740,7 @@ packages: resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz} name: tiny-warning version: 1.0.3 + dev: false r2.cnpmjs.org/tinycolor/0.0.1: resolution: {integrity: sha512-+CorETse1kl98xg0WAzii8DTT4ABF4R3nquhrkIbVGcw1T8JYs5Gfx9xEfGINPUZGDj9C4BmOtuKeaTtuuRolg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/tinycolor/-/tinycolor-0.0.1.tgz} @@ -20613,6 +20783,7 @@ packages: name: to-readable-stream version: 1.0.0 engines: {node: '>=6'} + dev: false r2.cnpmjs.org/to-regex-range/5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz} @@ -20633,6 +20804,7 @@ packages: name: totalist version: 1.1.0 engines: {node: '>=6'} + dev: false r2.cnpmjs.org/tough-cookie/2.5.0: resolution: {integrity: sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz} @@ -20678,17 +20850,20 @@ packages: resolution: {integrity: sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz} name: trim-trailing-lines version: 1.1.4 + dev: false r2.cnpmjs.org/trim/0.0.1: resolution: {integrity: sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/trim/-/trim-0.0.1.tgz} name: trim version: 0.0.1 deprecated: Use String.prototype.trim() instead + dev: false r2.cnpmjs.org/trough/1.0.5: resolution: {integrity: sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/trough/-/trough-1.0.5.tgz} name: trough version: 1.0.5 + dev: false r2.cnpmjs.org/tryer/1.0.1: resolution: {integrity: sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/tryer/-/tryer-1.0.1.tgz} @@ -20831,6 +21006,7 @@ packages: version: 3.1.5 dependencies: is-typedarray: r2.cnpmjs.org/is-typedarray/1.0.0 + dev: false r2.cnpmjs.org/ultron/1.1.1: resolution: {integrity: sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/ultron/-/ultron-1.1.1.tgz} @@ -20845,6 +21021,7 @@ packages: dependencies: inherits: r2.cnpmjs.org/inherits/2.0.4 xtend: r2.cnpmjs.org/xtend/4.0.2 + dev: false r2.cnpmjs.org/unicode-canonical-property-names-ecmascript/2.0.0: resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz} @@ -20873,6 +21050,7 @@ packages: is-plain-obj: r2.cnpmjs.org/is-plain-obj/2.1.0 trough: r2.cnpmjs.org/trough/1.0.5 vfile: r2.cnpmjs.org/vfile/4.2.1 + dev: false r2.cnpmjs.org/unified/9.2.2: resolution: {integrity: sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unified/-/unified-9.2.2.tgz} @@ -20886,6 +21064,7 @@ packages: is-plain-obj: r2.cnpmjs.org/is-plain-obj/2.1.0 trough: r2.cnpmjs.org/trough/1.0.5 vfile: r2.cnpmjs.org/vfile/4.2.1 + dev: false r2.cnpmjs.org/unique-string/2.0.0: resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unique-string/-/unique-string-2.0.0.tgz} @@ -20894,26 +21073,31 @@ packages: engines: {node: '>=8'} dependencies: crypto-random-string: r2.cnpmjs.org/crypto-random-string/2.0.0 + dev: false r2.cnpmjs.org/unist-builder/2.0.3: resolution: {integrity: sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-builder/-/unist-builder-2.0.3.tgz} name: unist-builder version: 2.0.3 + dev: false r2.cnpmjs.org/unist-util-generated/1.1.6: resolution: {integrity: sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz} name: unist-util-generated version: 1.1.6 + dev: false r2.cnpmjs.org/unist-util-is/4.1.0: resolution: {integrity: sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz} name: unist-util-is version: 4.1.0 + dev: false r2.cnpmjs.org/unist-util-position/3.1.0: resolution: {integrity: sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz} name: unist-util-position version: 3.1.0 + dev: false r2.cnpmjs.org/unist-util-remove-position/2.0.1: resolution: {integrity: sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz} @@ -20921,6 +21105,7 @@ packages: version: 2.0.1 dependencies: unist-util-visit: r2.cnpmjs.org/unist-util-visit/2.0.3 + dev: false r2.cnpmjs.org/unist-util-remove/2.1.0: resolution: {integrity: sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz} @@ -20928,6 +21113,7 @@ packages: version: 2.1.0 dependencies: unist-util-is: r2.cnpmjs.org/unist-util-is/4.1.0 + dev: false r2.cnpmjs.org/unist-util-stringify-position/2.0.3: resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz} @@ -20935,6 +21121,7 @@ packages: version: 2.0.3 dependencies: '@types/unist': r2.cnpmjs.org/@types/unist/2.0.6 + dev: false r2.cnpmjs.org/unist-util-visit-parents/3.1.1: resolution: {integrity: sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz} @@ -20943,6 +21130,7 @@ packages: dependencies: '@types/unist': r2.cnpmjs.org/@types/unist/2.0.6 unist-util-is: r2.cnpmjs.org/unist-util-is/4.1.0 + dev: false r2.cnpmjs.org/unist-util-visit/2.0.3: resolution: {integrity: sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz} @@ -20952,6 +21140,7 @@ packages: '@types/unist': r2.cnpmjs.org/@types/unist/2.0.6 unist-util-is: r2.cnpmjs.org/unist-util-is/4.1.0 unist-util-visit-parents: r2.cnpmjs.org/unist-util-visit-parents/3.1.1 + dev: false r2.cnpmjs.org/universalify/0.1.2: resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/universalify/-/universalify-0.1.2.tgz} @@ -21011,6 +21200,7 @@ packages: semver: 7.3.8 semver-diff: r2.cnpmjs.org/semver-diff/3.1.1 xdg-basedir: r2.cnpmjs.org/xdg-basedir/4.0.0 + dev: false r2.cnpmjs.org/uri-js/4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/uri-js/-/uri-js-4.4.1.tgz} @@ -21043,6 +21233,7 @@ packages: mime-types: 2.1.35 schema-utils: r2.cnpmjs.org/schema-utils/3.1.1 webpack: 5.77.0 + dev: false r2.cnpmjs.org/url-parse-lax/3.0.0: resolution: {integrity: sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz} @@ -21051,6 +21242,7 @@ packages: engines: {node: '>=4'} dependencies: prepend-http: r2.cnpmjs.org/prepend-http/2.0.0 + dev: false r2.cnpmjs.org/url-set-query/1.0.0: resolution: {integrity: sha512-3AChu4NiXquPfeckE5R5cGdiHCMWJx1dwCWOmWIL4KHAziJNOFIYJlpGFeKDvwLPHovZRCxK3cYlwzqI9Vp+Gg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/url-set-query/-/url-set-query-1.0.0.tgz} @@ -21146,6 +21338,7 @@ packages: resolution: {integrity: sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/value-equal/-/value-equal-1.0.1.tgz} name: value-equal version: 1.0.1 + dev: false r2.cnpmjs.org/varint/5.0.2: resolution: {integrity: sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/varint/-/varint-5.0.2.tgz} @@ -21174,6 +21367,7 @@ packages: resolution: {integrity: sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/vfile-location/-/vfile-location-3.2.0.tgz} name: vfile-location version: 3.2.0 + dev: false r2.cnpmjs.org/vfile-message/2.0.4: resolution: {integrity: sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/vfile-message/-/vfile-message-2.0.4.tgz} @@ -21182,6 +21376,7 @@ packages: dependencies: '@types/unist': r2.cnpmjs.org/@types/unist/2.0.6 unist-util-stringify-position: r2.cnpmjs.org/unist-util-stringify-position/2.0.3 + dev: false r2.cnpmjs.org/vfile/4.2.1: resolution: {integrity: sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/vfile/-/vfile-4.2.1.tgz} @@ -21192,6 +21387,7 @@ packages: is-buffer: r2.cnpmjs.org/is-buffer/2.0.5 unist-util-stringify-position: r2.cnpmjs.org/unist-util-stringify-position/2.0.3 vfile-message: r2.cnpmjs.org/vfile-message/2.0.4 + dev: false r2.cnpmjs.org/w3c-hr-time/1.0.2: resolution: {integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz} @@ -21225,6 +21421,7 @@ packages: version: 1.7.3 dependencies: minimalistic-assert: r2.cnpmjs.org/minimalistic-assert/1.0.1 + dev: false r2.cnpmjs.org/wcwidth/1.0.1: resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/wcwidth/-/wcwidth-1.0.1.tgz} @@ -21238,6 +21435,7 @@ packages: resolution: {integrity: sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz} name: web-namespaces version: 1.1.4 + dev: false r2.cnpmjs.org/webidl-conversions/3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz} @@ -21307,6 +21505,7 @@ packages: pretty-time: r2.cnpmjs.org/pretty-time/1.1.0 std-env: 3.3.2 webpack: 5.77.0 + dev: false r2.cnpmjs.org/websocket-driver/0.7.4: resolution: {integrity: sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz} @@ -21317,12 +21516,14 @@ packages: http-parser-js: 0.5.8 safe-buffer: r2.cnpmjs.org/safe-buffer/5.2.1 websocket-extensions: r2.cnpmjs.org/websocket-extensions/0.1.4 + dev: false r2.cnpmjs.org/websocket-extensions/0.1.4: resolution: {integrity: sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz} name: websocket-extensions version: 0.1.4 engines: {node: '>=0.8.0'} + dev: false r2.cnpmjs.org/websocket/1.0.34: resolution: {integrity: sha512-PRDso2sGwF6kM75QykIesBijKSVceR6jL2G8NGYyq2XrItNC2P5/qL5XeR056GhA+Ly7JMFvJb9I312mJfmqnQ==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/websocket/-/websocket-1.0.34.tgz} @@ -21451,6 +21652,7 @@ packages: engines: {node: '>=8'} dependencies: string-width: r2.cnpmjs.org/string-width/4.2.3 + dev: false r2.cnpmjs.org/widest-line/4.0.1: resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/widest-line/-/widest-line-4.0.1.tgz} @@ -21459,6 +21661,7 @@ packages: engines: {node: '>=12'} dependencies: string-width: 5.1.2 + dev: false r2.cnpmjs.org/wildcard/2.0.0: resolution: {integrity: sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/wildcard/-/wildcard-2.0.0.tgz} @@ -21506,12 +21709,14 @@ packages: is-typedarray: r2.cnpmjs.org/is-typedarray/1.0.0 signal-exit: 3.0.7 typedarray-to-buffer: r2.cnpmjs.org/typedarray-to-buffer/3.1.5 + dev: false r2.cnpmjs.org/xdg-basedir/4.0.0: resolution: {integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz} name: xdg-basedir version: 4.0.0 engines: {node: '>=8'} + dev: false r2.cnpmjs.org/xhr-request-promise/0.1.3: resolution: {integrity: sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/xhr-request-promise/-/xhr-request-promise-0.1.3.tgz} @@ -21687,3 +21892,4 @@ packages: resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==, registry: https://r.cnpmjs.org/, tarball: https://r2.cnpmjs.org/zwitch/-/zwitch-1.0.5.tgz} name: zwitch version: 1.0.5 + dev: false From 02e69777832d8cd3702ed696b22ff59b685dcf8b Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sun, 16 Apr 2023 12:49:14 +0800 Subject: [PATCH 12/16] fix(core): fix findmodel not return --- packages/core/src/editor/monacoEditor.tsx | 57 ++++++++++++----------- packages/core/src/editor/utils/model.ts | 2 +- 2 files changed, 31 insertions(+), 28 deletions(-) diff --git a/packages/core/src/editor/monacoEditor.tsx b/packages/core/src/editor/monacoEditor.tsx index 0238efd..46ba562 100644 --- a/packages/core/src/editor/monacoEditor.tsx +++ b/packages/core/src/editor/monacoEditor.tsx @@ -1,11 +1,12 @@ -import React, {useEffect, useRef} from 'react'; +import React, { useEffect, useRef } from 'react'; + import BaseMonaco from 'monaco-editor'; -import ReactBaseMonacoEditor, {Monaco, loader} from "@monaco-editor/react"; -import {ErrorMarker, MarkerSeverity} from 'solive-compiler-utils'; +import ReactBaseMonacoEditor, { Monaco, loader } from '@monaco-editor/react'; +import { ErrorMarker, MarkerSeverity } from 'solive-compiler-utils'; -import {BaseMonacoEditor, EditorApi, ModelInfoType} from '../types/monaco'; +import { BaseMonacoEditor, EditorApi, ModelInfoType } from '../types/monaco'; -import {useEditor} from "./contexts/editorContext"; +import { useEditor } from './contexts/editorContext'; import { initTheme, registerLangs, @@ -14,7 +15,7 @@ import { registerListeners, } from './mountFunctions'; import CodeParser from './codeParser'; -import {findModel} from './utils/model'; +import { findModel } from './utils/model'; loader.config({ paths: { vs: 'https://cdn.jsdelivr.net/npm/monaco-editor@0.37.1/min/vs' } }); @@ -22,8 +23,10 @@ interface IProps { modelInfos: ModelInfoType[]; } -function App({modelInfos}: IProps) { - const {stateRef, dispatch, actions, id} = useEditor(); +function App({ modelInfos }: IProps) { + const { + stateRef, dispatch, actions, id, + } = useEditor(); const editorRef = useRef(); const monacoRef = useRef(); const editorApiRef = useRef({} as EditorApi); @@ -53,19 +56,19 @@ function App({modelInfos}: IProps) { useEffect(() => { editorApiRef.current.addErrorMarker = (errors: ErrorMarker[], from = id) => { - const allMarkersPerfile: Record> = {} + const allMarkersPerfile: Record> = {}; for (const error of errors) { - const filePath = error.file + const filePath = error.file; - if (!filePath) return + if (!filePath) return; const model = findModel(stateRef.current.models || [], filePath); const errorServerityMap = { - 'error': MarkerSeverity.Error, - 'warning': MarkerSeverity.Warning, - 'info': MarkerSeverity.Info - } - if (model) { + error: MarkerSeverity.Error, + warning: MarkerSeverity.Warning, + info: MarkerSeverity.Info, + }; + if (model!) { const markerData: BaseMonaco.editor.IMarkerData = { severity: (typeof error.severity === 'string') ? errorServerityMap[error.severity] : error.severity, startLineNumber: ((error.position.start && error.position.start.line) || 0), @@ -73,35 +76,35 @@ function App({modelInfos}: IProps) { endLineNumber: ((error.position.end && error.position.end.line) || 0), endColumn: ((error.position.end && error.position.end.column) || 0), message: error.message, - } + }; if (!allMarkersPerfile[filePath]) { - allMarkersPerfile[filePath] = [] + allMarkersPerfile[filePath] = []; } - allMarkersPerfile[filePath].push(markerData) + allMarkersPerfile[filePath].push(markerData); } } for (const filePath in allMarkersPerfile) { const model = findModel(stateRef.current.models || [], filePath); if (model) { - monacoRef.current?.editor.setModelMarkers(model.model, from, allMarkersPerfile[filePath]) + monacoRef.current?.editor.setModelMarkers(model.model, from, allMarkersPerfile[filePath]); } } - } + }; editorApiRef.current.removeErrorMarker = (sources: string[], from = id) => { const files = Object.keys(sources); for (const file of files) { const model = findModel(stateRef.current.models || [], file); if (model) { - monacoRef.current?.editor.setModelMarkers(model.model, from, []) + monacoRef.current?.editor.setModelMarkers(model.model, from, []); } } - } - }, []) + }; + }, []); return ( - ) + ); } export default App; diff --git a/packages/core/src/editor/utils/model.ts b/packages/core/src/editor/utils/model.ts index c5ce8dc..78fea24 100644 --- a/packages/core/src/editor/utils/model.ts +++ b/packages/core/src/editor/utils/model.ts @@ -2,5 +2,5 @@ import { ModelType } from '../../types/monaco'; export const findModel = (models: ModelType[], filePath: string) => { // 由于该组件简单处理文件系统,不存在文件夹之类的路径,故:filePath就是filename - models.find((model) => model.filename === filePath); + return models.find((model) => model.filename === filePath); }; From 968ef8a97b7dcf625db56bf615af71833f687871 Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sun, 16 Apr 2023 12:55:33 +0800 Subject: [PATCH 13/16] fix: fix lint error --- packages/core/src/editor/utils/model.ts | 6 ++---- .../docusaurus-plugin/src/client/useCodeblockThemeConfig.ts | 2 +- packages/docusaurus-plugin/src/theme/CodeBlock/index.tsx | 1 + 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/packages/core/src/editor/utils/model.ts b/packages/core/src/editor/utils/model.ts index 78fea24..4f69830 100644 --- a/packages/core/src/editor/utils/model.ts +++ b/packages/core/src/editor/utils/model.ts @@ -1,6 +1,4 @@ import { ModelType } from '../../types/monaco'; -export const findModel = (models: ModelType[], filePath: string) => { - // 由于该组件简单处理文件系统,不存在文件夹之类的路径,故:filePath就是filename - return models.find((model) => model.filename === filePath); -}; +// 由于该组件简单处理文件系统,不存在文件夹之类的路径,故:filePath就是filename +export const findModel = (models: ModelType[], filePath: string) => models.find((model) => model.filename === filePath); diff --git a/packages/docusaurus-plugin/src/client/useCodeblockThemeConfig.ts b/packages/docusaurus-plugin/src/client/useCodeblockThemeConfig.ts index f88cd5f..653cbe6 100644 --- a/packages/docusaurus-plugin/src/client/useCodeblockThemeConfig.ts +++ b/packages/docusaurus-plugin/src/client/useCodeblockThemeConfig.ts @@ -1,4 +1,4 @@ -// eslint-disable-next-line import/no-unresolved +// @ts-ignore import useDocusaurusContext from '@docusaurus/useDocusaurusContext'; import type { ThemeConfig } from 'solive-docusaurus-theme-code'; diff --git a/packages/docusaurus-plugin/src/theme/CodeBlock/index.tsx b/packages/docusaurus-plugin/src/theme/CodeBlock/index.tsx index 6094a1c..3a0919f 100644 --- a/packages/docusaurus-plugin/src/theme/CodeBlock/index.tsx +++ b/packages/docusaurus-plugin/src/theme/CodeBlock/index.tsx @@ -17,6 +17,7 @@ const componentWrapper = () => { const { solive } = props; if (solive && typeof window !== 'undefined') { return ( + // @ts-ignore Loading...
}> {() => { // eslint-disable-next-line @typescript-eslint/no-var-requires,global-require From 4aa2dd296305f66813efa14b52d5979510afa247 Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sun, 16 Apr 2023 13:08:13 +0800 Subject: [PATCH 14/16] doc: update README.md --- README.md | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index d134dac..5ace895 100644 --- a/README.md +++ b/README.md @@ -3,16 +3,14 @@ A flexible online playground for Solidity smart contract, inspired by remix-IDE and react-live ### Demo -- Check demo website: https://solive-demo.vercel.app/ +- Check demo website: https://solive.wtf - build demo: [demo](./apps/demo) -### Todo -- [] NPM Publish -- [] Metamask Provider -- [] Finish Deploy -- [] Optimize logging system -- [] Build Mdx Component +### DOC +- Check doc website: https://solive-doc-git-dev-wtfacademy.vercel.app + +- build doc: [doc](./apps/doc) ### Dev From 4434339ffdb76d17b1eb8eb16a3a08e801f49273 Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sun, 16 Apr 2023 14:46:56 +0800 Subject: [PATCH 15/16] style(demo): update code style --- apps/demo/src/App.tsx | 38 ++++++++++++++++++-------------- apps/demo/src/index.tsx | 5 +++-- apps/demo/src/reportWebVitals.ts | 6 +++-- apps/demo/src/use-width.ts | 3 +-- 4 files changed, 30 insertions(+), 22 deletions(-) diff --git a/apps/demo/src/App.tsx b/apps/demo/src/App.tsx index a3138c3..dacee18 100644 --- a/apps/demo/src/App.tsx +++ b/apps/demo/src/App.tsx @@ -1,43 +1,49 @@ -import Editor from "solive-core" +import Editor from 'solive-core'; -import {useWidth} from "./use-width"; +import { useWidth } from './use-width'; -const OwnerSol = `"// SPDX-License-Identifier: GPL-3.0\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/**\\n * @title Owner\\n * @dev Set & change owner\\n */\\ncontract Owner {\\n\\n address private owner;\\n\\n // event for EVM logging\\n event OwnerSet(address indexed oldOwner, address indexed newOwner);\\n\\n // modifier to check if caller is owner\\n modifier isOwner() {\\n // If the first argument of 'require' evaluates to 'false', execution terminates and all\\n // changes to the state and to Ether balances are reverted.\\n // This used to consume all gas in old EVM versions, but not anymore.\\n // It is often a good idea to use 'require' to check if functions are called correctly.\\n // As a second argument, you can also provide an explanation about what went wrong.\\n require(msg.sender == owner, \\"Caller is not owner\\");\\n _;\\n }\\n\\n /**\\n * @dev Set contract deployer as owner\\n */\\n constructor() {\\n owner = msg.sender; // 'msg.sender' is sender of current call, contract deployer for a constructor\\n emit OwnerSet(address(0), owner);\\n }\\n\\n /**\\n * @dev Change owner\\n * @param newOwner address of new owner\\n */\\n function changeOwner(address newOwner) public isOwner {\\n emit OwnerSet(owner, newOwner);\\n owner = newOwner;\\n }\\n\\n /**\\n * @dev Return owner address \\n * @return address of owner\\n */\\n function getOwner() external view returns (address) {\\n return owner;\\n }\\n} "`; -const BallotSol = `"// SPDX-License-Identifier: GPL-3.0\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/** \\n * @title Ballot\\n * @dev Implements voting process along with vote delegation\\n */\\ncontract Ballot {\\n\\n struct Voter {\\n uint weight; // weight is accumulated by delegation\\n bool voted; // if true, that person already voted\\n address delegate; // person delegated to\\n uint vote; // index of the voted proposal\\n }\\n\\n struct Proposal {\\n // If you can limit the length to a certain number of bytes, \\n // always use one of bytes1 to bytes32 because they are much cheaper\\n bytes32 name; // short name (up to 32 bytes)\\n uint voteCount; // number of accumulated votes\\n }\\n\\n address public chairperson;\\n\\n mapping(address => Voter) public voters;\\n\\n Proposal[] public proposals;\\n\\n /** \\n * @dev Create a new ballot to choose one of 'proposalNames'.\\n * @param proposalNames names of proposals\\n */\\n constructor(bytes32[] memory proposalNames) {\\n chairperson = msg.sender;\\n voters[chairperson].weight = 1;\\n\\n for (uint i = 0; i < proposalNames.length; i++) {\\n // 'Proposal({...})' creates a temporary\\n // Proposal object and 'proposals.push(...)'\\n // appends it to the end of 'proposals'.\\n proposals.push(Proposal({\\n name: proposalNames[i],\\n voteCount: 0\\n }));\\n }\\n }\\n\\n /** \\n * @dev Give 'voter' the right to vote on this ballot. May only be called by 'chairperson'.\\n * @param voter address of voter\\n */\\n function giveRightToVote(address voter) public {\\n require(\\n msg.sender == chairperson,\\n \\"Only chairperson can give right to vote.\\"\\n );\\n require(\\n !voters[voter].voted,\\n \\"The voter already voted.\\"\\n );\\n require(voters[voter].weight == 0);\\n voters[voter].weight = 1;\\n }\\n\\n /**\\n * @dev Delegate your vote to the voter 'to'.\\n * @param to address to which vote is delegated\\n */\\n function delegate(address to) public {\\n Voter storage sender = voters[msg.sender];\\n require(!sender.voted, \\"You already voted.\\");\\n require(to != msg.sender, \\"Self-delegation is disallowed.\\");\\n\\n while (voters[to].delegate != address(0)) {\\n to = voters[to].delegate;\\n\\n // We found a loop in the delegation, not allowed.\\n require(to != msg.sender, \\"Found loop in delegation.\\");\\n }\\n sender.voted = true;\\n sender.delegate = to;\\n Voter storage delegate_ = voters[to];\\n if (delegate_.voted) {\\n // If the delegate already voted,\\n // directly add to the number of votes\\n proposals[delegate_.vote].voteCount += sender.weight;\\n } else {\\n // If the delegate did not vote yet,\\n // add to her weight.\\n delegate_.weight += sender.weight;\\n }\\n }\\n\\n /**\\n * @dev Give your vote (including votes delegated to you) to proposal 'proposals[proposal].name'.\\n * @param proposal index of proposal in the proposals array\\n */\\n function vote(uint proposal) public {\\n Voter storage sender = voters[msg.sender];\\n require(sender.weight != 0, \\"Has no right to vote\\");\\n require(!sender.voted, \\"Already voted.\\");\\n sender.voted = true;\\n sender.vote = proposal;\\n\\n // If 'proposal' is out of the range of the array,\\n // this will throw automatically and revert all\\n // changes.\\n proposals[proposal].voteCount += sender.weight;\\n }\\n\\n /** \\n * @dev Computes the winning proposal taking all previous votes into account.\\n * @return winningProposal_ index of winning proposal in the proposals array\\n */\\n function winningProposal() public view\\n returns (uint winningProposal_)\\n {\\n uint winningVoteCount = 0;\\n for (uint p = 0; p < proposals.length; p++) {\\n if (proposals[p].voteCount > winningVoteCount) {\\n winningVoteCount = proposals[p].voteCount;\\n winningProposal_ = p;\\n }\\n }\\n }\\n\\n /** \\n * @dev Calls winningProposal() function to get the index of the winner contained in the proposals array and then\\n * @return winnerName_ the name of the winner\\n */\\n function winnerName() public view\\n returns (bytes32 winnerName_)\\n {\\n winnerName_ = proposals[winningProposal()].name;\\n }\\n}"`; -function App() { - const { width, height } = useWidth() +// eslint-disable-next-line max-len +const OwnerSol = '"// SPDX-License-Identifier: GPL-3.0\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/**\\n * @title Owner\\n * @dev Set & change owner\\n */\\ncontract Owner {\\n\\n address private owner;\\n\\n // event for EVM logging\\n event OwnerSet(address indexed oldOwner, address indexed newOwner);\\n\\n // modifier to check if caller is owner\\n modifier isOwner() {\\n // If the first argument of \'require\' evaluates to \'false\', execution terminates and all\\n // changes to the state and to Ether balances are reverted.\\n // This used to consume all gas in old EVM versions, but not anymore.\\n // It is often a good idea to use \'require\' to check if functions are called correctly.\\n // As a second argument, you can also provide an explanation about what went wrong.\\n require(msg.sender == owner, \\"Caller is not owner\\");\\n _;\\n }\\n\\n /**\\n * @dev Set contract deployer as owner\\n */\\n constructor() {\\n owner = msg.sender; // \'msg.sender\' is sender of current call, contract deployer for a constructor\\n emit OwnerSet(address(0), owner);\\n }\\n\\n /**\\n * @dev Change owner\\n * @param newOwner address of new owner\\n */\\n function changeOwner(address newOwner) public isOwner {\\n emit OwnerSet(owner, newOwner);\\n owner = newOwner;\\n }\\n\\n /**\\n * @dev Return owner address \\n * @return address of owner\\n */\\n function getOwner() external view returns (address) {\\n return owner;\\n }\\n} "'; +// eslint-disable-next-line max-len +const BallotSol = '"// SPDX-License-Identifier: GPL-3.0\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/** \\n * @title Ballot\\n * @dev Implements voting process along with vote delegation\\n */\\ncontract Ballot {\\n\\n struct Voter {\\n uint weight; // weight is accumulated by delegation\\n bool voted; // if true, that person already voted\\n address delegate; // person delegated to\\n uint vote; // index of the voted proposal\\n }\\n\\n struct Proposal {\\n // If you can limit the length to a certain number of bytes, \\n // always use one of bytes1 to bytes32 because they are much cheaper\\n bytes32 name; // short name (up to 32 bytes)\\n uint voteCount; // number of accumulated votes\\n }\\n\\n address public chairperson;\\n\\n mapping(address => Voter) public voters;\\n\\n Proposal[] public proposals;\\n\\n /** \\n * @dev Create a new ballot to choose one of \'proposalNames\'.\\n * @param proposalNames names of proposals\\n */\\n constructor(bytes32[] memory proposalNames) {\\n chairperson = msg.sender;\\n voters[chairperson].weight = 1;\\n\\n for (uint i = 0; i < proposalNames.length; i++) {\\n // \'Proposal({...})\' creates a temporary\\n // Proposal object and \'proposals.push(...)\'\\n // appends it to the end of \'proposals\'.\\n proposals.push(Proposal({\\n name: proposalNames[i],\\n voteCount: 0\\n }));\\n }\\n }\\n\\n /** \\n * @dev Give \'voter\' the right to vote on this ballot. May only be called by \'chairperson\'.\\n * @param voter address of voter\\n */\\n function giveRightToVote(address voter) public {\\n require(\\n msg.sender == chairperson,\\n \\"Only chairperson can give right to vote.\\"\\n );\\n require(\\n !voters[voter].voted,\\n \\"The voter already voted.\\"\\n );\\n require(voters[voter].weight == 0);\\n voters[voter].weight = 1;\\n }\\n\\n /**\\n * @dev Delegate your vote to the voter \'to\'.\\n * @param to address to which vote is delegated\\n */\\n function delegate(address to) public {\\n Voter storage sender = voters[msg.sender];\\n require(!sender.voted, \\"You already voted.\\");\\n require(to != msg.sender, \\"Self-delegation is disallowed.\\");\\n\\n while (voters[to].delegate != address(0)) {\\n to = voters[to].delegate;\\n\\n // We found a loop in the delegation, not allowed.\\n require(to != msg.sender, \\"Found loop in delegation.\\");\\n }\\n sender.voted = true;\\n sender.delegate = to;\\n Voter storage delegate_ = voters[to];\\n if (delegate_.voted) {\\n // If the delegate already voted,\\n // directly add to the number of votes\\n proposals[delegate_.vote].voteCount += sender.weight;\\n } else {\\n // If the delegate did not vote yet,\\n // add to her weight.\\n delegate_.weight += sender.weight;\\n }\\n }\\n\\n /**\\n * @dev Give your vote (including votes delegated to you) to proposal \'proposals[proposal].name\'.\\n * @param proposal index of proposal in the proposals array\\n */\\n function vote(uint proposal) public {\\n Voter storage sender = voters[msg.sender];\\n require(sender.weight != 0, \\"Has no right to vote\\");\\n require(!sender.voted, \\"Already voted.\\");\\n sender.voted = true;\\n sender.vote = proposal;\\n\\n // If \'proposal\' is out of the range of the array,\\n // this will throw automatically and revert all\\n // changes.\\n proposals[proposal].voteCount += sender.weight;\\n }\\n\\n /** \\n * @dev Computes the winning proposal taking all previous votes into account.\\n * @return winningProposal_ index of winning proposal in the proposals array\\n */\\n function winningProposal() public view\\n returns (uint winningProposal_)\\n {\\n uint winningVoteCount = 0;\\n for (uint p = 0; p < proposals.length; p++) {\\n if (proposals[p].voteCount > winningVoteCount) {\\n winningVoteCount = proposals[p].voteCount;\\n winningProposal_ = p;\\n }\\n }\\n }\\n\\n /** \\n * @dev Calls winningProposal() function to get the index of the winner contained in the proposals array and then\\n * @return winnerName_ the name of the winner\\n */\\n function winnerName() public view\\n returns (bytes32 winnerName_)\\n {\\n winnerName_ = proposals[winningProposal()].name;\\n }\\n}"'; - console.log(height); +function App() { + const { width, height } = useWidth(); return (
=0.7.0 <0.9.0;\n\n/**\n * @title Storage\n * @dev Store & retrieve value in a variable\n * @custom:dev-run-script ./scripts/deploy_with_ethers.ts\n */\ncontract Storage {\n\n uint256 number;\n\n /**\n * @dev Store value in variable\n * @param num value to store\n */\n function store(uint256 num) public {\n number = num;\n }\n\n /**\n * @dev Return value \n * @return value of 'number'\n */\n function retrieve() public view returns (uint256){\n return number;\n }\n}", - language: "solidity" as any, + value: '// SPDX-License-Identifier: GPL-3.0\n\npragma solidity >=0.7.0 <0.9.0;\n\n/**\n * @title Storage\n * ' + + '@dev Store & retrieve value in a variable\n * @custom:dev-run-script ./scripts/deploy_with_ethers.ts\n */\ncontract ' + + 'Storage {\n\n uint256 number;\n\n /**\n * @dev Store value in variable\n ' + + '* @param num value to store\n */\n function store(uint256 num) public {\n ' + + "number = num;\n }\n\n /**\n * @dev Return value \n * @return value of 'number'\n " + + ' */\n function retrieve() public view returns (uint256){\n return number;\n }\n}', + language: 'solidity' as any, }, { - filename: "_Owner.sol", + filename: '_Owner.sol', value: JSON.parse(OwnerSol), - language: "solidity" as any, + language: 'solidity' as any, }, { - filename: "_Ballot.sol", + filename: '_Ballot.sol', value: JSON.parse(BallotSol), - language: "solidity" as any, + language: 'solidity' as any, }, ]} /> diff --git a/apps/demo/src/index.tsx b/apps/demo/src/index.tsx index 70857a5..746f81e 100644 --- a/apps/demo/src/index.tsx +++ b/apps/demo/src/index.tsx @@ -1,4 +1,5 @@ import React from 'react'; + import ReactDOM from 'react-dom/client'; import './index.css'; @@ -7,10 +8,10 @@ import App from './App'; import reportWebVitals from './reportWebVitals'; const root = ReactDOM.createRoot( - document.getElementById('root') as HTMLElement + document.getElementById('root') as HTMLElement, ); root.render( - + , ); // If you want to start measuring performance in your app, pass a function diff --git a/apps/demo/src/reportWebVitals.ts b/apps/demo/src/reportWebVitals.ts index 5fa3583..107b6c1 100644 --- a/apps/demo/src/reportWebVitals.ts +++ b/apps/demo/src/reportWebVitals.ts @@ -1,8 +1,10 @@ -import { ReportHandler } from "web-vitals"; +import { ReportHandler } from 'web-vitals'; const reportWebVitals = (onPerfEntry?: ReportHandler) => { if (onPerfEntry && onPerfEntry instanceof Function) { - import("web-vitals").then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => { + import('web-vitals').then(({ + getCLS, getFID, getFCP, getLCP, getTTFB, + }) => { getCLS(onPerfEntry); getFID(onPerfEntry); getFCP(onPerfEntry); diff --git a/apps/demo/src/use-width.ts b/apps/demo/src/use-width.ts index 95fa6f1..4ce504b 100644 --- a/apps/demo/src/use-width.ts +++ b/apps/demo/src/use-width.ts @@ -1,4 +1,3 @@ - // An highlighted block import { useState, useEffect } from 'react'; @@ -20,4 +19,4 @@ export const useWidth = () => { }, []); return windowSize; -} +}; From 4bdb9b9a69cdd79fe5c51506e7506ae7e436ae8b Mon Sep 17 00:00:00 2001 From: chenchongqiang Date: Sun, 16 Apr 2023 14:47:20 +0800 Subject: [PATCH 16/16] fix(solc): change solc build config --- .eslintrc.js | 2 ++ packages/solc/.babelrc | 6 ++++++ packages/solc/README.md | 4 ++-- packages/solc/package.json | 16 +++++++++------- packages/solc/rollup.config.js | 19 +++++++++++++++---- packages/solc/src/worker.ts | 28 +++++++++++----------------- packages/solc/tsconfig.json | 11 ++++++----- pnpm-lock.yaml | 19 +++++++++++++++++++ 8 files changed, 70 insertions(+), 35 deletions(-) create mode 100644 packages/solc/.babelrc diff --git a/.eslintrc.js b/.eslintrc.js index 78b62d1..e188436 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -29,6 +29,8 @@ module.exports = { JSX: true, React: 'readonly', localStorage: true, + HTMLElement: true, + window: true, // 在这里添加其他全局变量 }, rules: { diff --git a/packages/solc/.babelrc b/packages/solc/.babelrc new file mode 100644 index 0000000..c0993b5 --- /dev/null +++ b/packages/solc/.babelrc @@ -0,0 +1,6 @@ +{ + "presets": [ + "@babel/preset-env", + "@babel/preset-typescript" + ] +} diff --git a/packages/solc/README.md b/packages/solc/README.md index 92090f2..339ffd7 100644 --- a/packages/solc/README.md +++ b/packages/solc/README.md @@ -1,3 +1,3 @@ -## Solive Solc +## Solive Provider -use solc to compile solidity code +use Evm VM to run solidity code diff --git a/packages/solc/package.json b/packages/solc/package.json index 4022e5a..591acdf 100644 --- a/packages/solc/package.json +++ b/packages/solc/package.json @@ -2,19 +2,21 @@ "name": "solive-solc", "version": "0.0.1-aplha", "description": "", - "main": "dist/index.js", - "typings": "dist/src/index.d.ts", - "files": [ - "dist" - ], + "module": "dist/index.js", + "types": "dist/index.d.ts", "scripts": { - "build": "rollup -c", - "start": "rollup -c -w" + "build": "tsc && rollup -c", + "start": "rollup -w -c", + "tsc": "tsc", + "lint": "eslint 'src/**/*.{js,ts}'" }, "keywords": [], "author": "", "license": "ISC", "devDependencies": { "solive-tsconfig": "workspace:*" + }, + "dependencies": { + "solc": "^0.8.19" } } diff --git a/packages/solc/rollup.config.js b/packages/solc/rollup.config.js index dcdf9a7..e5a49e2 100644 --- a/packages/solc/rollup.config.js +++ b/packages/solc/rollup.config.js @@ -1,5 +1,8 @@ -import typescript from "rollup-plugin-typescript2"; -import resolve from "@rollup/plugin-node-resolve"; +import nodeResolve from "@rollup/plugin-node-resolve"; +import babel from 'rollup-plugin-babel'; +import peerDepsExternal from "rollup-plugin-peer-deps-external"; + +const extensions = ['.js', '.ts']; export default { input: { @@ -11,7 +14,15 @@ export default { format: 'esm', }, plugins: [ - typescript({ useTsconfigDeclarationDir: true }), - resolve(), + peerDepsExternal(), + nodeResolve({ + extensions, + modulesOnly: true, + }), + babel({ + exclude: 'node_modules/**', + extensions, + }), ], + external: ['@ethereumjs/common', 'ethers', '@remix-project/remix-simulator'], }; diff --git a/packages/solc/src/worker.ts b/packages/solc/src/worker.ts index b6cc260..b82ba3e 100644 --- a/packages/solc/src/worker.ts +++ b/packages/solc/src/worker.ts @@ -1,6 +1,5 @@ -const importVersions: any[] = []; +import setupMethods from 'solc/wrapper'; -// 在 Main Thread 中 postMessage 消息,Worker 中 "message" 事件监听函数会接收到对应的事件。 globalThis.addEventListener('message', ({ data }) => { if (data === 'fetch-compiler-versions') { fetch('https://binaries.soliditylang.org/bin/list.json') @@ -10,25 +9,20 @@ globalThis.addEventListener('message', ({ data }) => { globalThis.postMessage(result); }); } else if (data.type === 'init-solc') { - const jsUri = data.version; - globalThis.importScripts(jsUri); + globalThis.importScripts(data.version); } else { // version find in https://github.com/ethereum/solc-bin/tree/gh-pages/bin - // @ts-ignore - const soljson = globalThis.Module; + const compiler = setupMethods(globalThis); - if (soljson && '_solidity_compile' in soljson) { - if (!importVersions.includes(data.version)) { - importVersions.push(data.version); - } - const compile = soljson.cwrap('solidity_compile', 'string', [ - 'string', - 'number', - ]); - const output = JSON.parse(compile(data.input)); - // @ts-ignore + try { + const output = compiler.compile(data.input); globalThis.postMessage({ - output, + output: JSON.parse(output), + input: data.input && JSON.parse(data.input), + }); + } catch (exception) { + globalThis.postMessage({ + output: { error: `Uncaught JavaScript exception:\n${exception}` }, input: data.input && JSON.parse(data.input), }); } diff --git a/packages/solc/tsconfig.json b/packages/solc/tsconfig.json index 5e7f388..76d819b 100644 --- a/packages/solc/tsconfig.json +++ b/packages/solc/tsconfig.json @@ -1,10 +1,11 @@ { "extends": "solive-tsconfig/lib.json", "compilerOptions": { - "baseUrl": "./", - "outDir": "dist", - "declarationDir": "dist", - "isolatedModules": false + "target": "es2016", + "module": "es2020", + "emitDeclarationOnly": true, + "outDir": "./dist", + "forceConsistentCasingInFileNames": true, }, - "include": ["src", "**/*.json"] + "include": ["src"], } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2ffb7aa..e40f12c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -379,7 +379,10 @@ importers: packages/solc: specifiers: + solc: ^0.8.19 solive-tsconfig: workspace:* + dependencies: + solc: 0.8.19 devDependencies: solive-tsconfig: link:../tsconfig @@ -10230,6 +10233,22 @@ packages: sax: r2.cnpmjs.org/sax/1.2.4 dev: false + /solc/0.8.19: + resolution: {integrity: sha512-yqurS3wzC4LdEvmMobODXqprV4MYJcVtinuxgrp61ac8K2zz40vXA0eSAskSHPgv8dQo7Nux39i3QBsHx4pqyA==} + engines: {node: '>=10.0.0'} + hasBin: true + dependencies: + command-exists: r2.cnpmjs.org/command-exists/1.2.9 + commander: r2.cnpmjs.org/commander/8.3.0 + follow-redirects: 1.15.2 + js-sha3: r2.cnpmjs.org/js-sha3/0.8.0 + memorystream: r2.cnpmjs.org/memorystream/0.3.1 + semver: r2.cnpmjs.org/semver/5.7.1 + tmp: r2.cnpmjs.org/tmp/0.0.33 + transitivePeerDependencies: + - debug + dev: false + /sort-css-media-queries/2.1.0: resolution: {integrity: sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==} engines: {node: '>= 6.3.0'}