diff --git a/docs/config/README.md b/docs/config/README.md index fbd83981a0a1..08af5c4529c3 100644 --- a/docs/config/README.md +++ b/docs/config/README.md @@ -556,6 +556,27 @@ export default { 简单理解的话,可以理解为 `import react from 'react'` 会被替换为 `const react = window.React`。 +## extraBabelIncludes + +* Type: `Array` +* Default: `[]` + +配置额外需要做 babel 编译的 npm 包或目录。 + +比如: + +```js +export default { + extraBabelIncludes: [ + // 支持绝对路径 + join(__dirname, '../../common'), + + // 支持 npm 包 + 'react-monaco-editor', + ], +} +``` + ## extraBabelPlugins * Type: `Array` diff --git a/docs/config/README.zh-CN.md b/docs/config/README.zh-CN.md index 901b88bda6ac..93fc3e03dfc4 100644 --- a/docs/config/README.zh-CN.md +++ b/docs/config/README.zh-CN.md @@ -554,6 +554,27 @@ export default { 简单理解的话,可以理解为 `import react from 'react'` 会被替换为 `const react = window.React`。 +## extraBabelIncludes + +* Type: `Array` +* Default: `[]` + +配置额外需要做 babel 编译的 npm 包或目录。 + +比如: + +```js +export default { + extraBabelIncludes: [ + // 支持绝对路径 + join(__dirname, '../../common'), + + // 支持 npm 包 + 'react-monaco-editor', + ], +} +``` + ## extraBabelPlugins * Type: `Array` diff --git a/packages/bundler-webpack/package.json b/packages/bundler-webpack/package.json index db10db709851..06365ea0d489 100644 --- a/packages/bundler-webpack/package.json +++ b/packages/bundler-webpack/package.json @@ -29,18 +29,18 @@ "anymatch": "3.1.1" }, "dependencies": { - "@babel/core": "7.12.3", + "@babel/core": "7.12.10", "@types/sockjs-client": "1.1.1", - "@types/webpack": "4.41.22", + "@types/webpack": "4.41.25", "@types/webpack-dev-middleware": "3.7.2", "@umijs/bundler-utils": "3.3.3", "@umijs/types": "3.3.3", "@umijs/utils": "3.3.3", - "babel-loader": "8.1.0", + "babel-loader": "8.2.2", "copy-webpack-plugin": "6.1.0", "css-loader": "3.6.0", - "css-modules-typescript-loader": "4.0.0", - "file-loader": "6.1.0", + "css-modules-typescript-loader": "4.0.1", + "file-loader": "6.2.0", "friendly-errors-webpack-plugin": "1.7.0", "less": "3.12.2", "less-loader": "5.0.0", @@ -53,8 +53,8 @@ "postcss-loader": "3.0.0", "postcss-preset-env": "6.7.0", "postcss-safe-parser": "4.0.2", - "raw-loader": "4.0.1", - "react-error-overlay": "6.0.7", + "raw-loader": "4.0.2", + "react-error-overlay": "6.0.8", "schema-utils": "^1.0.0", "sockjs-client": "1.5.0", "speed-measure-webpack-plugin": "1.3.3", @@ -62,7 +62,7 @@ "strip-ansi": "6.0.0", "style-loader": "2.0.0", "terser-webpack-plugin": "4.2.3", - "url-loader": "4.1.0", + "url-loader": "4.1.1", "webpack": "4.44.1", "webpack-chain": "6.5.1", "webpack-dev-middleware": "3.7.2", diff --git a/packages/bundler-webpack/src/cli.ts b/packages/bundler-webpack/src/cli.ts index 2ca4768d8117..ab56106bb1bc 100644 --- a/packages/bundler-webpack/src/cli.ts +++ b/packages/bundler-webpack/src/cli.ts @@ -73,6 +73,7 @@ if (args.version && !command) { config, }); + // @ts-ignore const webpackConfig = await bundler.getConfig({ env, type: BundlerConfigType.csr, @@ -92,6 +93,7 @@ if (args.version && !command) { const port = await portfinder.getPortPromise({ port: 8000, }); + // @ts-ignore webpackConfig.plugins!.push(new DevCompileDonePlugin({ port })); const devServerOpts = bundler.setupDevServerOpts({ bundleConfigs: [webpackConfig], diff --git a/packages/bundler-webpack/src/fixtures/.extraBabelIncludes/hoo.js b/packages/bundler-webpack/src/fixtures/.extraBabelIncludes/hoo.js new file mode 100644 index 000000000000..db8351bbd494 --- /dev/null +++ b/packages/bundler-webpack/src/fixtures/.extraBabelIncludes/hoo.js @@ -0,0 +1,6 @@ + +export default function() { + let hoo = 1; + hoo += 1; + return hoo; +} diff --git a/packages/bundler-webpack/src/fixtures/extraBabelIncludes/config.ts b/packages/bundler-webpack/src/fixtures/extraBabelIncludes/config.ts new file mode 100644 index 000000000000..cf7c9e7a41d0 --- /dev/null +++ b/packages/bundler-webpack/src/fixtures/extraBabelIncludes/config.ts @@ -0,0 +1,12 @@ +import { join } from 'path'; + +export default { + nodeModulesTransform: { + type: 'none' + }, + extraBabelIncludes: [ + join(__dirname, '../.extraBabelIncludes'), + 'foo', + 'bar', + ], +} diff --git a/packages/bundler-webpack/src/fixtures/extraBabelIncludes/expect.ts b/packages/bundler-webpack/src/fixtures/extraBabelIncludes/expect.ts new file mode 100644 index 000000000000..69e590c2529e --- /dev/null +++ b/packages/bundler-webpack/src/fixtures/extraBabelIncludes/expect.ts @@ -0,0 +1,7 @@ +import { IExpectOpts } from '../types'; + +export default ({ indexJS }: IExpectOpts) => { + expect(indexJS).toContain('var bar = 1;'); + expect(indexJS).toContain('var foo = 1;'); + expect(indexJS).toContain('var hoo = 1;'); +} diff --git a/packages/bundler-webpack/src/fixtures/extraBabelIncludes/index.ts b/packages/bundler-webpack/src/fixtures/extraBabelIncludes/index.ts new file mode 100644 index 000000000000..d297e613e241 --- /dev/null +++ b/packages/bundler-webpack/src/fixtures/extraBabelIncludes/index.ts @@ -0,0 +1,9 @@ +// @ts-ignore +import bar from 'bar/bar'; +// @ts-ignore +import foo from 'foo/foo'; +import hoo from '../.extraBabelIncludes/hoo'; + +bar(); +foo(); +hoo(); diff --git a/packages/bundler-webpack/src/fixtures/extraBabelIncludes/node_modules/bar/bar.js b/packages/bundler-webpack/src/fixtures/extraBabelIncludes/node_modules/bar/bar.js new file mode 100644 index 000000000000..f3e6b2cbe269 --- /dev/null +++ b/packages/bundler-webpack/src/fixtures/extraBabelIncludes/node_modules/bar/bar.js @@ -0,0 +1,6 @@ + +export default function() { + let bar = 1; + bar += 1; + return bar; +} diff --git a/packages/bundler-webpack/src/fixtures/extraBabelIncludes/node_modules/bar/package.json b/packages/bundler-webpack/src/fixtures/extraBabelIncludes/node_modules/bar/package.json new file mode 100644 index 000000000000..06a8b8dcc6aa --- /dev/null +++ b/packages/bundler-webpack/src/fixtures/extraBabelIncludes/node_modules/bar/package.json @@ -0,0 +1,4 @@ +{ + "name": "bar", + "version": "1.0.0" +} diff --git a/packages/bundler-webpack/src/fixtures/extraBabelIncludes/node_modules/foo/foo.js b/packages/bundler-webpack/src/fixtures/extraBabelIncludes/node_modules/foo/foo.js new file mode 100644 index 000000000000..f60b3dfaab16 --- /dev/null +++ b/packages/bundler-webpack/src/fixtures/extraBabelIncludes/node_modules/foo/foo.js @@ -0,0 +1,6 @@ + +export default function() { + let foo = 1; + foo += 1; + return foo; +} diff --git a/packages/bundler-webpack/src/fixtures/extraBabelIncludes/node_modules/foo/package.json b/packages/bundler-webpack/src/fixtures/extraBabelIncludes/node_modules/foo/package.json new file mode 100644 index 000000000000..da86787ad3ec --- /dev/null +++ b/packages/bundler-webpack/src/fixtures/extraBabelIncludes/node_modules/foo/package.json @@ -0,0 +1,4 @@ +{ + "name": "foo", + "version": "1.0.0" +} diff --git a/packages/bundler-webpack/src/getConfig/getConfig.ts b/packages/bundler-webpack/src/getConfig/getConfig.ts index f84be7080b14..9271eb1aeda7 100644 --- a/packages/bundler-webpack/src/getConfig/getConfig.ts +++ b/packages/bundler-webpack/src/getConfig/getConfig.ts @@ -25,6 +25,7 @@ import { es5ImcompatibleVersionsToPkg, } from './nodeModulesTransform'; import resolveDefine from './resolveDefine'; +import { getPkgPath, shouldTransform } from './pkgMatch'; export interface IOpts { cwd: string; @@ -190,13 +191,39 @@ export default async function getConfig( .loader(require.resolve('babel-loader')) .options(babelOpts); + if (config.extraBabelIncludes) { + config.extraBabelIncludes.forEach((include, index) => { + const rule = `extraBabelInclude_${index}`; + // prettier-ignore + webpackConfig.module + .rule(rule) + .test(/\.(js|mjs|jsx)$/) + .include + .add((a) => { + // 支持绝对路径匹配 + if (include.startsWith('/')) { + return a.startsWith(include); + } + + // 支持 node_modules 下的 npm 包 + if (!a.includes('node_modules')) return false; + const pkgPath = getPkgPath(a); + return shouldTransform(pkgPath, include); + }) + .end() + .use('babel-loader') + .loader(require.resolve('babel-loader')) + .options(babelOpts); + }); + } + // umi/dist/index.esm.js 走 babel 编译 // why? 极速模式下不打包 @umijs/runtime if (process.env.UMI_DIR) { // prettier-ignore webpackConfig.module - .rule('js') - .test(/\.(js|mjs|jsx|ts|tsx)$/) + .rule('js-for-umi-dist') + .test(/\.(js|mjs|jsx)$/) .include.add(join(process.env.UMI_DIR as string, 'dist', 'index.esm.js')).end() .use('babel-loader') .loader(require.resolve('babel-loader')) @@ -522,6 +549,7 @@ export default async function getConfig( await config.chainWebpack(webpackConfig, { type, env, + // @ts-ignore webpack: bundleImplementor, createCSSRule: createCSSRuleFn, }); diff --git a/packages/bundler-webpack/src/getConfig/pkgMatch.ts b/packages/bundler-webpack/src/getConfig/pkgMatch.ts new file mode 100644 index 000000000000..a2895e29d61b --- /dev/null +++ b/packages/bundler-webpack/src/getConfig/pkgMatch.ts @@ -0,0 +1,16 @@ +import { dirname } from 'path'; +import { pkgUp } from '@umijs/utils'; + +const pkgPathCache = {}; + +export function getPkgPath(filePath: string) { + const dir = dirname(filePath); + if (dir in pkgPathCache) return pkgPathCache[dir]; + pkgPathCache[dir] = pkgUp.sync({ cwd: filePath }); + return pkgPathCache[dir]; +} + +export function shouldTransform(pkgPath: string, include: string) { + const { name } = require(pkgPath); // eslint-disable-line + return name === include; +} diff --git a/packages/bundler-webpack/src/index.test.ts b/packages/bundler-webpack/src/index.test.ts index 2a70a2242db7..b0294fe6f6df 100644 --- a/packages/bundler-webpack/src/index.test.ts +++ b/packages/bundler-webpack/src/index.test.ts @@ -2,8 +2,8 @@ import { join } from 'path'; import { readdirSync, readFileSync, statSync } from 'fs'; import { getFile, rimraf, portfinder } from '@umijs/utils'; import { BundlerConfigType } from '@umijs/types'; -import { Bundler } from './index'; import { Server } from '@umijs/server'; +import { Bundler } from './index'; import DevCompileDonePlugin from './DevCompileDonePlugin'; const fixtures = join(__dirname, 'fixtures'); @@ -118,6 +118,7 @@ test.skip('dev', async () => { const port = await portfinder.getPortPromise({ port: 8000, }); + // @ts-ignore webpackConfig.plugins!.push(new DevCompileDonePlugin({ port })); const devServerOpts = bundler.setupDevServerOpts({ bundleConfigs: [webpackConfig], diff --git a/packages/core/package.json b/packages/core/package.json index f63ae20a1ea9..10dab6fac02d 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -24,14 +24,14 @@ "access": "public" }, "dependencies": { - "@babel/core": "7.12.3", - "@babel/register": "7.12.1", + "@babel/core": "7.12.10", + "@babel/register": "7.12.10", "@hapi/joi": "16.1.8", - "@types/ejs": "3.0.4", + "@types/ejs": "3.0.5", "@types/hapi__joi": "16.0.12", - "@types/marked": "^1.1.0", + "@types/marked": "^1.2.1", "@types/marked-terminal": "^3.1.1", - "@types/prettier": "2.1.0", + "@types/prettier": "2.1.6", "@types/tapable": "1.0.6", "@umijs/ast": "3.3.3", "@umijs/babel-preset-umi": "3.3.3", @@ -39,10 +39,10 @@ "@umijs/utils": "3.3.3", "dotenv": "8.2.0", "ejs": "3.1.5", - "marked": "1.1.1", + "marked": "1.2.7", "marked-terminal": "4.1.0", "os-locale": "5.0.0", - "prettier": "2.1.1", + "prettier": "2.2.1", "set-value": "3.0.2", "tapable": "1.1.3" } diff --git a/packages/preset-built-in/src/index.ts b/packages/preset-built-in/src/index.ts index 8660f03cb378..57089369fe15 100644 --- a/packages/preset-built-in/src/index.ts +++ b/packages/preset-built-in/src/index.ts @@ -34,6 +34,7 @@ export default function () { require.resolve('./plugins/features/dynamicImport'), require.resolve('./plugins/features/exportStatic'), require.resolve('./plugins/features/externals'), + require.resolve('./plugins/features/extraBabelIncludes'), require.resolve('./plugins/features/extraBabelPlugins'), require.resolve('./plugins/features/extraBabelPresets'), require.resolve('./plugins/features/extraPostCSSPlugins'), diff --git a/packages/preset-built-in/src/plugins/features/extraBabelIncludes.ts b/packages/preset-built-in/src/plugins/features/extraBabelIncludes.ts new file mode 100644 index 000000000000..e8765d11e08a --- /dev/null +++ b/packages/preset-built-in/src/plugins/features/extraBabelIncludes.ts @@ -0,0 +1,12 @@ +import { IApi } from '@umijs/types'; + +export default (api: IApi) => { + api.describe({ + key: 'extraBabelIncludes', + config: { + schema(joi) { + return joi.array(); + }, + }, + }); +}; diff --git a/packages/test/package.json b/packages/test/package.json index 66df01c40f7b..d092e409e47b 100644 --- a/packages/test/package.json +++ b/packages/test/package.json @@ -26,18 +26,18 @@ "access": "public" }, "dependencies": { - "@babel/core": "7.12.3", + "@babel/core": "7.12.10", "@umijs/babel-preset-umi": "3.3.3", "@umijs/utils": "3.3.3", "babel-core": "7.0.0-bridge.0", "babel-jest": "^25.4.0", - "core-js": "3.6.5", + "core-js": "3.8.2", "identity-obj-proxy": "3.0.0", "jest": "^25.4.0", "jest-cli": "^25.4.0", "jest-environment-jsdom-fourteen": "1.0.1", "regenerator-runtime": "^0.13.7", - "whatwg-fetch": "^3.4.1" + "whatwg-fetch": "^3.5.0" }, "bin": { "umi-test": "bin/umi-test.js" diff --git a/packages/types/index.d.ts b/packages/types/index.d.ts index 5b3b12713134..4d24aecfd3a2 100644 --- a/packages/types/index.d.ts +++ b/packages/types/index.d.ts @@ -310,6 +310,7 @@ export interface BaseIConfig extends IConfigCore { extraRoutePaths?: () => Promise; }; externals?: any; + extraBabelIncludes?: string[]; extraBabelPlugins?: IBabelPresetOrPlugin[]; extraBabelPresets?: IBabelPresetOrPlugin[]; extraPostCSSPlugins?: any[]; diff --git a/packages/umi/package.json b/packages/umi/package.json index 899a0b67450f..8b45f4164398 100644 --- a/packages/umi/package.json +++ b/packages/umi/package.json @@ -28,7 +28,7 @@ "access": "public" }, "dependencies": { - "@babel/core": "7.12.3", + "@babel/core": "7.12.10", "@umijs/core": "3.3.3", "@umijs/preset-built-in": "3.3.3", "@umijs/runtime": "3.3.3", diff --git a/packages/utils/package.json b/packages/utils/package.json index 7b71f74117b4..7955166623cc 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -24,46 +24,46 @@ "access": "public" }, "dependencies": { - "@babel/parser": "7.12.5", - "@babel/register": "7.12.1", - "@babel/traverse": "7.12.5", - "@babel/types": "7.12.6", - "@types/cheerio": "0.22.21", + "@babel/parser": "7.12.11", + "@babel/register": "7.12.10", + "@babel/traverse": "7.12.12", + "@babel/types": "7.12.12", + "@types/cheerio": "0.22.23", "@types/color": "3.0.1", "@types/cross-spawn": "6.0.2", "@types/debug": "4.1.5", "@types/glob": "7.1.3", "@types/got": "9.6.11", - "@types/lodash": "4.14.161", + "@types/lodash": "4.14.167", "@types/mkdirp": "1.0.1", - "@types/mustache": "4.0.1", + "@types/mustache": "4.1.0", "@types/resolve": "1.17.1", "@types/rimraf": "3.0.0", - "@types/semver": "7.3.3", + "@types/semver": "7.3.4", "@types/signale": "1.4.1", - "@types/yargs": "15.0.5", + "@types/yargs": "15.0.12", "@types/yargs-parser": "15.0.0", "address": "1.1.2", "chalk": "4.1.0", "cheerio": "1.0.0-rc.3", - "chokidar": "3.4.2", + "chokidar": "3.4.3", "clipboardy": "2.3.0", - "color": "3.1.2", + "color": "3.1.3", "crequire": "1.8.1", "cross-spawn": "7.0.3", - "debug": "4.1.1", + "debug": "4.3.1", "deepmerge": "4.2.2", "execa": "4.0.3", "glob": "7.1.6", "got": "9.6.0", "lodash": "4.17.20", "mkdirp": "1.0.4", - "mustache": "4.0.1", + "mustache": "4.1.0", "pkg-up": "3.1.0", "portfinder": "1.0.28", - "resolve": "1.17.0", + "resolve": "1.19.0", "rimraf": "3.0.2", - "semver": "7.3.2", + "semver": "7.3.4", "signale": "1.4.0", "yargs": "15.4.1", "yargs-parser": "18.1.3" diff --git a/yarn.lock b/yarn.lock index 36d91e35d5a4..c00a3dacc36a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -14,6 +14,13 @@ dependencies: "@babel/highlight" "^7.10.4" +"@babel/code-frame@^7.12.11": + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" + integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== + dependencies: + "@babel/highlight" "^7.10.4" + "@babel/compat-data@^7.12.1": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.12.1.tgz#d7386a689aa0ddf06255005b4b991988021101a0" @@ -49,6 +56,27 @@ semver "^5.4.1" source-map "^0.5.0" +"@babel/core@7.12.10": + version "7.12.10" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.12.10.tgz#b79a2e1b9f70ed3d84bbfb6d8c4ef825f606bccd" + integrity sha512-eTAlQKq65zHfkHZV0sIVODCPGVgoo1HdBlbSLi9CqOzuZanMv2ihzY+4paiKr1mH+XmYESMAmJ/dpZ68eN6d8w== + dependencies: + "@babel/code-frame" "^7.10.4" + "@babel/generator" "^7.12.10" + "@babel/helper-module-transforms" "^7.12.1" + "@babel/helpers" "^7.12.5" + "@babel/parser" "^7.12.10" + "@babel/template" "^7.12.7" + "@babel/traverse" "^7.12.10" + "@babel/types" "^7.12.10" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.1" + json5 "^2.1.2" + lodash "^4.17.19" + semver "^5.4.1" + source-map "^0.5.0" + "@babel/core@7.12.3", "@babel/core@^7.12.3": version "7.12.3" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.12.3.tgz#1b436884e1e3bff6fb1328dc02b208759de92ad8" @@ -110,6 +138,15 @@ jsesc "^2.5.1" source-map "^0.5.0" +"@babel/generator@^7.12.10", "@babel/generator@^7.12.11": + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.12.11.tgz#98a7df7b8c358c9a37ab07a24056853016aba3af" + integrity sha512-Ggg6WPOJtSi8yYQvLVjG8F/TlpWDlKx0OpS4Kt+xMQPs5OaGYWy+v1A+1TvxI6sAMGZpKWWoAQ1DaeQbImlItA== + dependencies: + "@babel/types" "^7.12.11" + jsesc "^2.5.1" + source-map "^0.5.0" + "@babel/generator@^7.12.5": version "7.12.5" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.12.5.tgz#a2c50de5c8b6d708ab95be5e6053936c1884a4de" @@ -282,6 +319,15 @@ "@babel/template" "^7.10.4" "@babel/types" "^7.10.4" +"@babel/helper-function-name@^7.12.11": + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.12.11.tgz#1fd7738aee5dcf53c3ecff24f1da9c511ec47b42" + integrity sha512-AtQKjtYNolKNi6nNNVLQ27CP6D9oFR6bq/HPYSizlzbp7uC1M59XJe8L+0uXjbIaZaUJF99ruHqVGiKXU/7ybA== + dependencies: + "@babel/helper-get-function-arity" "^7.12.10" + "@babel/template" "^7.12.7" + "@babel/types" "^7.12.11" + "@babel/helper-function-name@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz#eeeb665a01b1f11068e9fb86ad56a1cb1a824cca" @@ -296,6 +342,13 @@ dependencies: "@babel/types" "^7.10.4" +"@babel/helper-get-function-arity@^7.12.10": + version "7.12.10" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.10.tgz#b158817a3165b5faa2047825dfa61970ddcc16cf" + integrity sha512-mm0n5BPjR06wh9mPQaDdXWDoll/j5UpCAPl1x8fS71GHm7HA6Ua2V4ylG1Ju8lvcTOietbPNNPaSilKj+pj+Ag== + dependencies: + "@babel/types" "^7.12.10" + "@babel/helper-get-function-arity@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz#b894b947bd004381ce63ea1db9f08547e920abd5" @@ -477,6 +530,13 @@ dependencies: "@babel/types" "^7.11.0" +"@babel/helper-split-export-declaration@^7.12.11": + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.11.tgz#1b4cc424458643c47d37022223da33d76ea4603a" + integrity sha512-LsIVN8j48gHgwzfocYUSkO/hjYAOJqlpJEc7tGXcIm4cubjVUf8LGW6eWRyxEu7gA25q02p0rQUWoCI33HNS5g== + dependencies: + "@babel/types" "^7.12.11" + "@babel/helper-split-export-declaration@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz#31a9f30070f91368a7182cf05f831781065fc7a9" @@ -487,6 +547,11 @@ version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz#a78c7a7251e01f616512d31b10adcf52ada5e0d2" +"@babel/helper-validator-identifier@^7.12.11": + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz#c9a1f021917dcb5ccf0d4e453e399022981fc9ed" + integrity sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw== + "@babel/helper-validator-identifier@^7.9.0": version "7.9.0" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz#ad53562a7fc29b3b9a91bbf7d10397fd146346ed" @@ -514,7 +579,7 @@ "@babel/traverse" "^7.8.3" "@babel/types" "^7.8.3" -"@babel/helpers@^7.10.4": +"@babel/helpers@^7.10.4", "@babel/helpers@^7.12.5": version "7.12.5" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.12.5.tgz#1a1ba4a768d9b58310eda516c449913fe647116e" integrity sha512-lgKGMQlKqA8meJqKsW6rUnc4MdUk35Ln0ATDqdM1a/UpARODdI4j5Y5lVfUScnSNkJcdCRAaWkspykNoFg9sJA== @@ -556,10 +621,10 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@7.12.5", "@babel/parser@^7.12.5": - version "7.12.5" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.12.5.tgz#b4af32ddd473c0bfa643bd7ff0728b8e71b81ea0" - integrity sha512-FVM6RZQ0mn2KCf1VUED7KepYeUWoVShczewOCfm3nzoBybaih51h+sYVVGthW9M6lPByEPTQf+xm27PBdlpwmQ== +"@babel/parser@7.12.11", "@babel/parser@^7.12.10", "@babel/parser@^7.12.11", "@babel/parser@^7.12.7": + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.12.11.tgz#9ce3595bcd74bc5c466905e86c535b8b25011e79" + integrity sha512-N3UxG+uuF4CMYoNj8AhnbAcJF0PiuJ9KHuy1lQmkYsxTer/MAH9UBNHsBoAX/4s6NvlDD047No8mYVGGzLL4hg== "@babel/parser@^7.1.0", "@babel/parser@^7.4.3", "@babel/parser@^7.7.5", "@babel/parser@^7.8.6", "@babel/parser@^7.9.0": version "7.9.4" @@ -574,6 +639,11 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.12.3.tgz#a305415ebe7a6c7023b40b5122a0662d928334cd" integrity sha512-kFsOS0IbsuhO5ojF8Hc8z/8vEIOkylVBrjiZUbLTE3XFe0Qi+uu6HjzQixkFaqr0ZPAMZcBVxEwmsnsLPZ2Xsw== +"@babel/parser@^7.12.5": + version "7.12.5" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.12.5.tgz#b4af32ddd473c0bfa643bd7ff0728b8e71b81ea0" + integrity sha512-FVM6RZQ0mn2KCf1VUED7KepYeUWoVShczewOCfm3nzoBybaih51h+sYVVGthW9M6lPByEPTQf+xm27PBdlpwmQ== + "@babel/plugin-proposal-async-generator-functions@^7.12.1": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.12.1.tgz#dc6c1170e27d8aca99ff65f4925bd06b1c90550e" @@ -1775,6 +1845,17 @@ pirates "^4.0.0" source-map-support "^0.5.16" +"@babel/register@7.12.10": + version "7.12.10" + resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.12.10.tgz#19b87143f17128af4dbe7af54c735663b3999f60" + integrity sha512-EvX/BvMMJRAA3jZgILWgbsrHwBQvllC5T8B29McyME8DvkdOxk4ujESfrMvME8IHSDvWXrmMXxPvA/lx2gqPLQ== + dependencies: + find-cache-dir "^2.0.0" + lodash "^4.17.19" + make-dir "^2.1.0" + pirates "^4.0.0" + source-map-support "^0.5.16" + "@babel/runtime-corejs3@^7.10.2": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.10.4.tgz#f29fc1990307c4c57b10dbd6ce667b27159d9e0d" @@ -1816,6 +1897,15 @@ "@babel/parser" "^7.10.4" "@babel/types" "^7.10.4" +"@babel/template@^7.12.7": + version "7.12.7" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.12.7.tgz#c817233696018e39fbb6c491d2fb684e05ed43bc" + integrity sha512-GkDzmHS6GV7ZeXfJZ0tLRBhZcMcY0/Lnb+eEbXDBfCAcZCjrZKe6p3J4we/D24O9Y8enxWAg1cWwof59yLh2ow== + dependencies: + "@babel/code-frame" "^7.10.4" + "@babel/parser" "^7.12.7" + "@babel/types" "^7.12.7" + "@babel/template@^7.4.0", "@babel/template@^7.7.4", "@babel/template@^7.8.3", "@babel/template@^7.8.6": version "7.8.6" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.8.6.tgz#86b22af15f828dfb086474f964dcc3e39c43ce2b" @@ -1824,6 +1914,21 @@ "@babel/parser" "^7.8.6" "@babel/types" "^7.8.6" +"@babel/traverse@7.12.12", "@babel/traverse@^7.12.10": + version "7.12.12" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.12.12.tgz#d0cd87892704edd8da002d674bc811ce64743376" + integrity sha512-s88i0X0lPy45RrLM8b9mz8RPH5FqO9G9p7ti59cToE44xFm1Q+Pjh5Gq4SXBbtb88X7Uy7pexeqRIQDDMNkL0w== + dependencies: + "@babel/code-frame" "^7.12.11" + "@babel/generator" "^7.12.11" + "@babel/helper-function-name" "^7.12.11" + "@babel/helper-split-export-declaration" "^7.12.11" + "@babel/parser" "^7.12.11" + "@babel/types" "^7.12.12" + debug "^4.1.0" + globals "^11.1.0" + lodash "^4.17.19" + "@babel/traverse@7.12.5", "@babel/traverse@^7.12.5": version "7.12.5" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.12.5.tgz#78a0c68c8e8a35e4cacfd31db8bb303d5606f095" @@ -1882,6 +1987,15 @@ globals "^11.1.0" lodash "^4.17.19" +"@babel/types@7.12.12", "@babel/types@^7.12.10", "@babel/types@^7.12.11", "@babel/types@^7.12.12", "@babel/types@^7.12.7": + version "7.12.12" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.12.12.tgz#4608a6ec313abbd87afa55004d373ad04a96c299" + integrity sha512-lnIX7piTxOH22xE7fDXDbSHg9MM1/6ORnafpJmov5rs0kX5g4BZxeXNJLXsMRiO0U5Rb8/FvMS6xlTnTHvxonQ== + dependencies: + "@babel/helper-validator-identifier" "^7.12.11" + lodash "^4.17.19" + to-fast-properties "^2.0.0" + "@babel/types@7.12.6", "@babel/types@^7.12.5", "@babel/types@^7.12.6": version "7.12.6" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.12.6.tgz#ae0e55ef1cce1fbc881cd26f8234eb3e657edc96" @@ -3416,6 +3530,13 @@ dependencies: "@types/node" "*" +"@types/cheerio@0.22.23": + version "0.22.23" + resolved "https://registry.yarnpkg.com/@types/cheerio/-/cheerio-0.22.23.tgz#74bcfee9c5ee53f619711dca953a89fe5cfa4eb4" + integrity sha512-QfHLujVMlGqcS/ePSf3Oe5hK3H8wi/yN2JYuxSB1U10VvW1fO3K8C+mURQesFYS1Hn7lspOsTT75SKq/XtydQg== + dependencies: + "@types/node" "*" + "@types/clipboard@^2.0.1": version "2.0.1" resolved "https://registry.yarnpkg.com/@types/clipboard/-/clipboard-2.0.1.tgz#75a74086c293d75b12bc93ff13bc7797fef05a40" @@ -3458,9 +3579,10 @@ version "4.1.5" resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.5.tgz#b14efa8852b7768d898906613c23f688713e02cd" -"@types/ejs@3.0.4": - version "3.0.4" - resolved "https://registry.yarnpkg.com/@types/ejs/-/ejs-3.0.4.tgz#8851fcdedb96e410fbb24f83b8be6763ef9afa77" +"@types/ejs@3.0.5": + version "3.0.5" + resolved "https://registry.yarnpkg.com/@types/ejs/-/ejs-3.0.5.tgz#95a3a1c3d9603eba80fe67ff56da1ba275ef2eda" + integrity sha512-k4ef69sS4sIqAPW9GoBnN+URAON2LeL1H0duQvL4RgdEBna19/WattYSA1qYqvbVEDRTSWzOw56tCLhC/m/IOw== "@types/eslint-visitor-keys@^1.0.0": version "1.0.0" @@ -3585,9 +3707,10 @@ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.6.tgz#f4c7ec43e81b319a9815115031709f26987891f0" integrity sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw== -"@types/lodash@4.14.161": - version "4.14.161" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.161.tgz#a21ca0777dabc6e4f44f3d07f37b765f54188b18" +"@types/lodash@4.14.167": + version "4.14.167" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.167.tgz#ce7d78553e3c886d4ea643c37ec7edc20f16765e" + integrity sha512-w7tQPjARrvdeBkX/Rwg95S592JwxqOjmms3zWQ0XZgSyxSLdzWaYH3vErBhdVS/lRBX7F8aBYcYJYTr5TMGOzw== "@types/marked-terminal@^3.1.1": version "3.1.1" @@ -3600,9 +3723,10 @@ version "0.7.3" resolved "https://registry.yarnpkg.com/@types/marked/-/marked-0.7.3.tgz#3859f6fea52a2b73f42283018bd34b03f3c4fb3f" -"@types/marked@^1.1.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@types/marked/-/marked-1.1.0.tgz#53509b5f127e0c05c19176fcf1d743a41e00ff19" +"@types/marked@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@types/marked/-/marked-1.2.1.tgz#9864ecc10d0edb72e7be4e94acb5fcc607c15eed" + integrity sha512-d5adCgRHB+NAme23hkiTkvpfZUDqoNtL2Sr2nZBJqSj3zyHLxsfFWsGQ2sK2z9aX6L1xkJzon2c0jTPcsEjpaQ== "@types/memory-fs@*": version "0.3.2" @@ -3642,9 +3766,10 @@ dependencies: "@types/express" "*" -"@types/mustache@4.0.1": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@types/mustache/-/mustache-4.0.1.tgz#e4d421ed2d06d463b120621774185a5cd1b92d77" +"@types/mustache@4.1.0": + version "4.1.0" + resolved "https://registry.yarnpkg.com/@types/mustache/-/mustache-4.1.0.tgz#b702b1e2879d9ff1f39ac89a4a7784a489aee947" + integrity sha512-dj4gq0BwsONZw/jqEf1qDBkAhAdBfIb7K+RDEQQvGfd6uTkfzKNxjz6NCeg50bveU0ydi8DruGp/9+FgIxli5w== "@types/node@*", "@types/node@>= 8": version "13.11.0" @@ -3662,9 +3787,10 @@ version "4.0.0" resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" -"@types/prettier@2.1.0": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.1.0.tgz#5f96562c1075ee715a5b138f0b7f591c1f40f6b8" +"@types/prettier@2.1.6": + version "2.1.6" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.1.6.tgz#f4b1efa784e8db479cdb8b14403e2144b1e9ff03" + integrity sha512-6gOkRe7OIioWAXfnO/2lFiv+SJichKVSys1mSsgyrYHSEjk8Ctv4tSR/Odvnu+HWlH2C8j53dahU03XmQdd5fA== "@types/prettier@^1.16.1", "@types/prettier@^1.16.4", "@types/prettier@^1.19.0": version "1.19.1" @@ -3749,9 +3875,10 @@ "@types/glob" "*" "@types/node" "*" -"@types/semver@7.3.3": - version "7.3.3" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.3.tgz#3ad6ed949e7487e7bda6f886b4a2434a2c3d7b1a" +"@types/semver@7.3.4": + version "7.3.4" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.4.tgz#43d7168fec6fa0988bb1a513a697b29296721afb" + integrity sha512-+nVsLKlcUCeMzD2ufHEYuJ9a2ovstb6Dp52A5VsoKxDXgvE051XgHI/33I1EymwkRGQkwnA0LkhnUzituGs4EQ== "@types/serialize-javascript@4.0.0": version "4.0.0" @@ -3876,9 +4003,10 @@ "@types/webpack-sources" "*" source-map "^0.6.0" -"@types/webpack@4.41.22": - version "4.41.22" - resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.22.tgz#ff9758a17c6bd499e459b91e78539848c32d0731" +"@types/webpack@4.41.25": + version "4.41.25" + resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.25.tgz#4d3b5aecc4e44117b376280fbfd2dc36697968c4" + integrity sha512-cr6kZ+4m9lp86ytQc1jPOJXgINQyz3kLLunZ57jznW+WIAL0JqZbGubQk4GlD42MuQL5JGOABrxdpqqWeovlVQ== dependencies: "@types/anymatch" "*" "@types/node" "*" @@ -3891,9 +4019,10 @@ version "15.0.0" resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-15.0.0.tgz#cb3f9f741869e20cce330ffbeb9271590483882d" -"@types/yargs@15.0.5": - version "15.0.5" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.5.tgz#947e9a6561483bdee9adffc983e91a6902af8b79" +"@types/yargs@15.0.12": + version "15.0.12" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.12.tgz#6234ce3e3e3fa32c5db301a170f96a599c960d74" + integrity sha512-f+fD/fQAo3BCbCDlrUpznF1A5Zp9rB0noS5vnoormHSIPFKL0Z2DcUJ3Gxp5ytH4uLRNxy7AwYUC9exZzqGMAw== dependencies: "@types/yargs-parser" "*" @@ -4679,6 +4808,7 @@ async@0.9.x: async@^2.6.2: version "2.6.3" resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" + integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== dependencies: lodash "^4.17.14" @@ -4750,14 +4880,14 @@ babel-jest@^25.4.0: chalk "^3.0.0" slash "^3.0.0" -babel-loader@8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.1.0.tgz#c611d5112bd5209abe8b9fa84c3e4da25275f1c3" +babel-loader@8.2.2: + version "8.2.2" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.2.tgz#9363ce84c10c9a40e6c753748e1441b60c8a0b81" + integrity sha512-JvTd0/D889PQBtUXJ2PXaKU/pjZDMtHA9V2ecm+eNRmmBCMR09a+fmpGTNwnJtFmFl5Ei7Vy47LjBb+L0wQ99g== dependencies: - find-cache-dir "^2.1.0" + find-cache-dir "^3.3.1" loader-utils "^1.4.0" - mkdirp "^0.5.3" - pify "^4.0.1" + make-dir "^3.1.0" schema-utils "^2.6.5" babel-plugin-dynamic-import-node@2.3.3, babel-plugin-dynamic-import-node@^2.3.3: @@ -5394,9 +5524,10 @@ cheerio@1.0.0-rc.3: lodash "^4.15.0" parse5 "^3.0.1" -chokidar@3.4.2: - version "3.4.2" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.2.tgz#38dc8e658dec3809741eb3ef7bb0a47fe424232d" +chokidar@3.4.3, chokidar@^3.4.2: + version "3.4.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.3.tgz#c1df38231448e45ca4ac588e6c79573ba6a57d5b" + integrity sha512-DtM3g7juCXQxFVSNPNByEC2+NImtBuxQQvWlHunpJIS5Ocr0lG306cC7FCi7cEA0fzmybPUIl4txBIobk1gGOQ== dependencies: anymatch "~3.1.1" braces "~3.0.2" @@ -5404,7 +5535,7 @@ chokidar@3.4.2: is-binary-path "~2.1.0" is-glob "~4.0.1" normalize-path "~3.0.0" - readdirp "~3.4.0" + readdirp "~3.5.0" optionalDependencies: fsevents "~2.1.2" @@ -5454,21 +5585,6 @@ chokidar@^3.4.1: optionalDependencies: fsevents "~2.1.2" -chokidar@^3.4.2: - version "3.4.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.3.tgz#c1df38231448e45ca4ac588e6c79573ba6a57d5b" - integrity sha512-DtM3g7juCXQxFVSNPNByEC2+NImtBuxQQvWlHunpJIS5Ocr0lG306cC7FCi7cEA0fzmybPUIl4txBIobk1gGOQ== - dependencies: - anymatch "~3.1.1" - braces "~3.0.2" - glob-parent "~5.1.0" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.5.0" - optionalDependencies: - fsevents "~2.1.2" - chownr@^1.1.1, chownr@^1.1.2: version "1.1.4" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" @@ -5720,12 +5836,28 @@ color-string@^1.5.2: color-name "^1.0.0" simple-swizzle "^0.2.2" +color-string@^1.5.4: + version "1.5.4" + resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.4.tgz#dd51cd25cfee953d138fe4002372cc3d0e504cb6" + integrity sha512-57yF5yt8Xa3czSEW1jfQDE79Idk0+AkN/4KWad6tbdxUmAs3MvjxlWSWD4deYytcRfoZ9nhKyFl1kj5tBvidbw== + dependencies: + color-name "^1.0.0" + simple-swizzle "^0.2.2" + color-support@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== -color@3.1.2, color@^3.0.0: +color@3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/color/-/color-3.1.3.tgz#ca67fb4e7b97d611dcde39eceed422067d91596e" + integrity sha512-xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ== + dependencies: + color-convert "^1.9.1" + color-string "^1.5.4" + +color@^3.0.0: version "3.1.2" resolved "https://registry.yarnpkg.com/color/-/color-3.1.2.tgz#68148e7f85d41ad7649c5fa8c8106f098d229e10" dependencies: @@ -6012,6 +6144,11 @@ core-js@3.6.5: version "3.6.5" resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.6.5.tgz#7395dc273af37fb2e50e9bd3d9fe841285231d1a" +core-js@3.8.2: + version "3.8.2" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.8.2.tgz#0a1fd6709246da9ca8eff5bb0cbd15fba9ac7044" + integrity sha512-FfApuSRgrR6G5s58casCBd9M2k+4ikuu4wbW6pJyYU7bd9zvFc9qf7vr5xmrZOhT9nn+8uwlH1oRR9jTnFoA3A== + core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" @@ -6185,9 +6322,10 @@ css-modules-loader-core@^1.1.0: postcss-modules-scope "1.1.0" postcss-modules-values "1.3.0" -css-modules-typescript-loader@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/css-modules-typescript-loader/-/css-modules-typescript-loader-4.0.0.tgz#17c0924107f45c7d9998fb59be5c59d6398aac5c" +css-modules-typescript-loader@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/css-modules-typescript-loader/-/css-modules-typescript-loader-4.0.1.tgz#0b818cf647fefd8f9fb3d4469374e69ab1e72742" + integrity sha512-vXrUAwPGcRaopnGdg7I5oqv/NSSKQRN5L80m3f49uSGinenU5DTNsMFHS+2roh5tXqpY5+yAAKAl7A2HDvumzg== dependencies: line-diff "^2.0.1" loader-utils "^1.2.3" @@ -6411,18 +6549,32 @@ debug@3.1.0: dependencies: ms "2.0.0" -debug@4.1.1, debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" +debug@4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" + integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== dependencies: - ms "^2.1.1" + ms "2.1.2" -debug@^3.0.0, debug@^3.1.0, debug@^3.1.1, debug@^3.2.6: +debug@^3.0.0, debug@^3.1.0, debug@^3.2.6: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" dependencies: ms "^2.1.1" +debug@^3.1.1: + version "3.2.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + +debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" + dependencies: + ms "^2.1.1" + debuglog@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" @@ -7674,12 +7826,13 @@ file-entry-cache@^5.0.1: dependencies: flat-cache "^2.0.1" -file-loader@6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.1.0.tgz#65b9fcfb0ea7f65a234a1f10cdd7f1ab9a33f253" +file-loader@6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d" + integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== dependencies: loader-utils "^2.0.0" - schema-utils "^2.7.1" + schema-utils "^3.0.0" file-uri-to-path@1.0.0: version "1.0.0" @@ -10598,6 +10751,13 @@ make-dir@^3.0.0, make-dir@^3.0.2: dependencies: semver "^6.0.0" +make-dir@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== + dependencies: + semver "^6.0.0" + make-fetch-happen@^5.0.0: version "5.0.2" resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-5.0.2.tgz#aa8387104f2687edca01c8687ee45013d02d19bd" @@ -10663,9 +10823,10 @@ marked-terminal@4.1.0: node-emoji "^1.10.0" supports-hyperlinks "^2.1.0" -marked@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/marked/-/marked-1.1.1.tgz#e5d61b69842210d5df57b05856e0c91572703e6a" +marked@1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/marked/-/marked-1.2.7.tgz#6e14b595581d2319cdcf033a24caaf41455a01fb" + integrity sha512-No11hFYcXr/zkBvL6qFmAp1z6BKY3zqLMHny/JN/ey+al7qwCM2+CMBL9BOgqMxZU36fz4cCWfn2poWIf7QRXA== mathml-tag-names@^2.0.1, mathml-tag-names@^2.1.0: version "2.1.3" @@ -10901,12 +11062,24 @@ mime-db@1.43.0, "mime-db@>= 1.43.0 < 2": version "1.43.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.43.0.tgz#0a12e0502650e473d735535050e7c8f4eb4fae58" -mime-types@^2.1.12, mime-types@^2.1.26, mime-types@~2.1.19, mime-types@~2.1.24: +mime-db@1.45.0: + version "1.45.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.45.0.tgz#cceeda21ccd7c3a745eba2decd55d4b73e7879ea" + integrity sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w== + +mime-types@^2.1.12, mime-types@~2.1.19, mime-types@~2.1.24: version "2.1.26" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.26.tgz#9c921fc09b7e149a65dfdc0da4d20997200b0a06" dependencies: mime-db "1.43.0" +mime-types@^2.1.27: + version "2.1.28" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.28.tgz#1160c4757eab2c5363888e005273ecf79d2a0ecd" + integrity sha512-0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ== + dependencies: + mime-db "1.45.0" + mime@1.6.0, mime@^1.4.1: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" @@ -11080,10 +11253,15 @@ ms@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" -ms@^2.0.0, ms@^2.1.1: +ms@2.1.2, ms@^2.0.0: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" +ms@^2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + multer@1.4.2: version "1.4.2" resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.2.tgz#2f1f4d12dbaeeba74cb37e623f234bf4d3d2057a" @@ -11106,9 +11284,10 @@ multimatch@^3.0.0: arrify "^1.0.1" minimatch "^3.0.4" -mustache@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/mustache/-/mustache-4.0.1.tgz#d99beb031701ad433338e7ea65e0489416c854a2" +mustache@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/mustache/-/mustache-4.1.0.tgz#8c1b042238a982d2eb2d30efc6c14296ae3f699d" + integrity sha512-0FsgP/WVq4mKyjolIyX+Z9Bd+3WS8GOwoUTyKXT5cTYMGeauNTi2HPCwERqseC1IHAy0Z7MDZnJBfjabd4O8GQ== mute-stream@0.0.7: version "0.0.7" @@ -12088,6 +12267,7 @@ portfinder@1.0.26: portfinder@1.0.28: version "1.0.28" resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.28.tgz#67c4622852bd5374dd1dd900f779f53462fac778" + integrity sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA== dependencies: async "^2.6.2" debug "^3.1.1" @@ -12818,9 +12998,10 @@ prepend-http@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" -prettier@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.1.1.tgz#d9485dd5e499daa6cb547023b87a6cf51bee37d6" +prettier@2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.2.1.tgz#795a1a78dd52f073da0cd42b21f9c91381923ff5" + integrity sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q== prettier@^1.17.1, prettier@^1.19.1: version "1.19.1" @@ -13088,12 +13269,13 @@ raw-body@2.4.0: iconv-lite "0.4.24" unpipe "1.0.0" -raw-loader@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-4.0.1.tgz#14e1f726a359b68437e183d5a5b7d33a3eba6933" +raw-loader@4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-4.0.2.tgz#1aac6b7d1ad1501e66efdac1522c73e59a584eb6" + integrity sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA== dependencies: loader-utils "^2.0.0" - schema-utils "^2.6.5" + schema-utils "^3.0.0" rc@^1.2.8: version "1.2.8" @@ -13121,9 +13303,10 @@ react-dom@^16.13.1: prop-types "^15.6.2" scheduler "^0.19.1" -react-error-overlay@6.0.7: - version "6.0.7" - resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.7.tgz#1dcfb459ab671d53f660a991513cb2f0a0553108" +react-error-overlay@6.0.8: + version "6.0.8" + resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.8.tgz#474ed11d04fc6bda3af643447d85e9127ed6b5de" + integrity sha512-HvPuUQnLp5H7TouGq3kzBeioJmXms1wHy9EGjz2OURWBp4qZO6AfGEcnxts1D/CbwPLRAgTMPCEgYhA3sEM4vw== react-is@^16.12.0, react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1: version "16.13.1" @@ -13764,13 +13947,7 @@ resolve@1.17.0: dependencies: path-parse "^1.0.6" -resolve@^1.10.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.15.1, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.8.1: - version "1.15.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz#27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8" - dependencies: - path-parse "^1.0.6" - -resolve@^1.16.1, resolve@^1.17.0: +resolve@1.19.0, resolve@^1.16.1, resolve@^1.17.0: version "1.19.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.19.0.tgz#1af5bf630409734a067cae29318aac7fa29a267c" integrity sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg== @@ -13778,6 +13955,12 @@ resolve@^1.16.1, resolve@^1.17.0: is-core-module "^2.1.0" path-parse "^1.0.6" +resolve@^1.10.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.15.1, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.8.1: + version "1.15.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz#27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8" + dependencies: + path-parse "^1.0.6" + responselike@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" @@ -14059,14 +14242,21 @@ semver@7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" -semver@7.3.2, semver@^7.3.2: - version "7.3.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" +semver@7.3.4: + version "7.3.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.4.tgz#27aaa7d2e4ca76452f98d3add093a72c943edc97" + integrity sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw== + dependencies: + lru-cache "^6.0.0" semver@^6.0.0, semver@^6.2.0, semver@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" +semver@^7.3.2: + version "7.3.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" + send@0.17.1: version "0.17.1" resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" @@ -15810,13 +16000,14 @@ urix@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" -url-loader@4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.0.tgz#c7d6b0d6b0fccd51ab3ffc58a78d32b8d89a7be2" +url-loader@4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" + integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== dependencies: loader-utils "^2.0.0" - mime-types "^2.1.26" - schema-utils "^2.6.5" + mime-types "^2.1.27" + schema-utils "^3.0.0" url-parse-lax@^3.0.0: version "3.0.0" @@ -16197,9 +16388,10 @@ whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.5: dependencies: iconv-lite "0.4.24" -whatwg-fetch@^3.4.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.4.1.tgz#e5f871572d6879663fa5674c8f833f15a8425ab3" +whatwg-fetch@^3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.5.0.tgz#605a2cd0a7146e5db141e29d1c62ab84c0c4c868" + integrity sha512-jXkLtsR42xhXg7akoDKvKWE40eJeI+2KZqcp2h3NsOrRnDvtWX36KcKl30dy+hxECivdk2BVUHVNrPtoMBUx6A== whatwg-mimetype@^2.2.0, whatwg-mimetype@^2.3.0: version "2.3.0"