diff --git a/app.config.environment.dev.js b/app.config.environment.dev.js new file mode 100644 index 0000000000000000000000000000000000000000..7264f183895c8cdc51a8ec4769493453a281f2e7 --- /dev/null +++ b/app.config.environment.dev.js @@ -0,0 +1,59 @@ +'use strict' + +const webpack = require('webpack') +const merge = require('webpack-merge') +const { useHotReload, devtool } = require('cozy-scripts/config/webpack.vars') + +let plugins = [ + new webpack.DefinePlugin({ + __DEVELOPMENT__: true + }) +] + +// In development, the bar and cozy-client-js are provided automatically. We use the ProvidePlugin +// since it allows us to use in production the cozy.bar and cozy.client declared by the <script /> +// line injected by the stack, while in development to have it "served" from +// our node_modules +const stackProvidedLibsConfig = { + plugins: [ + new webpack.DefinePlugin({ + 'process.env.NODE_ENV': JSON.stringify('development'), + __IS_ALPHA__: true, + __DEVELOPMENT__: true, + __STACK_ASSETS__: true, + __PIWIK_TRACKER_URL__: JSON.stringify('https://statweb.grandlyon.com/'), + __PIWIK_SITEID__: 0 + }) + ], + module: { + rules: [ + { + test: /cozy-bar(\/|\\)dist(\/|\\)cozy-bar\.min\.js$/, + // Automatically import the CSS if the JS is imported. + // imports-loader@0.8.0 works but imports-loader@1.0.0 does not + loader: 'imports-loader?css=./cozy-bar.min.css' + } + ] + } +} + +const output = {} +if (useHotReload) { + plugins = plugins.concat([new webpack.HotModuleReplacementPlugin()]) + output.globalObject = 'this' +} + +module.exports = merge( + { + devtool: devtool || 'cheap-module-eval-source-map', + mode: 'development', + externals: ['cozy'], + plugins, + output, + optimization: { + removeAvailableModules: false, + removeEmptyChunks: false + } + }, + stackProvidedLibsConfig +) diff --git a/app.config.js b/app.config.js new file mode 100644 index 0000000000000000000000000000000000000000..e0c6b01b702b7a6554e0380293207156fba81727 --- /dev/null +++ b/app.config.js @@ -0,0 +1,42 @@ +'use strict' + +/** + * This file overrides the default cozy webpack config to specify a custom react config. + * This react config enables the use of TypeScript. + * + * @override node_modules/cozy-scripts/config/webpack.bundle.default.js + */ + +const merge = require('webpack-merge') +const { + environment, + target, + addAnalyzer +} = require('cozy-scripts/config/webpack.vars') + +const configs = [ + require('cozy-scripts/config/webpack.config.base'), + require('cozy-scripts/config/webpack.config.chunks'), + require('./app.config.react'), // Override the react config + require('cozy-scripts/config/webpack.config.cozy-ui'), + require('cozy-scripts/config/webpack.config.cozy-ui.react'), + require('cozy-scripts/config/webpack.config.intents'), + require('cozy-scripts/config/webpack.config.public'), + require('cozy-scripts/config/webpack.config.pictures'), + require('cozy-scripts/config/webpack.config.vendors'), + require('cozy-scripts/config/webpack.config.manifest'), + require('cozy-scripts/config/webpack.config.progress'), + addAnalyzer ? require('cozy-scripts/config/webpack.config.analyzer') : null, + require('./app.config.services'), // Override the services config + require(`cozy-scripts/config/webpack.target.${target}`) +] + +if (environment === 'production') { + configs.push(require('./app.config.environment.prod')) +} else { + configs.push(require('./app.config.environment.dev')) +} + +// module.exports = merge.apply(null, configs) +// eslint-disable-next-line prefer-spread +module.exports = [merge.apply(null, configs)] // cozy builder expects an array diff --git a/app.config.react.js b/app.config.react.js new file mode 100644 index 0000000000000000000000000000000000000000..2f2324628457a1b3cd0d08524be10362fc472aec --- /dev/null +++ b/app.config.react.js @@ -0,0 +1,70 @@ +'use strict' + +/** + * This file overrides the default react webpack config. + * This react config enables the use of TypeScript. + * + * @override node_modules/cozy-scripts/config/webpack.config.react.js + */ + +const webpack = require('webpack') +const path = require('path') +const { useHotReload } = require('cozy-scripts/config/webpack.vars') +const CopyPlugin = require('copy-webpack-plugin') +const CTS = require('cozy-scripts/utils/constants.js') +const babelConf = require('./babel.config') + +process.env[CTS.ENTRY_EXT] = '.tsx' // Replaces .jsx + +module.exports = { + resolve: { + extensions: ['.jsx', '.tsx', '.ts', '.scss'] // Add TS extensions + }, + module: { + rules: [ + { + test: /\.(ts|js)x?$/, // Add TS extensions + exclude: /node_modules(\/|\\)(?!(cozy-ui))/, + loader: require.resolve('cozy-scripts/node_modules/babel-loader'), // Add full path + options: { + cacheDirectory: 'node_modules/.cache/babel-loader/react', + presets: babelConf.presets, + plugins: useHotReload ? babelConf.plugins : [] + } + }, + { + test: path.resolve(__dirname, 'node_modules/uglify-js/tools/node.js'), + loader: 'null-loader' + }, + { + test: /\.scss$/, + use: ['style-loader', 'css-loader', 'sass-loader'] + } + ] + }, + // Necessary for cozy-ui during Preact -> React apps transition + plugins: [ + new CopyPlugin({ + patterns: [ + { + from: `./src/targets/vendor/assets/icon.svg`, + to: 'public/' + }, + { + from: `./src/targets/vendor/assets/favicon*`, + to: 'public/', + flatten: true + }, + { + from: `./src/targets/vendor/assets/apple-touch-icon.png`, + to: 'public/apple-touch-icon.png' + } + ] + }), + new webpack.DefinePlugin({ + 'process.env': { + USE_REACT: 'true' + } + }) + ] +} diff --git a/app.config.services.js b/app.config.services.js new file mode 100644 index 0000000000000000000000000000000000000000..d2211ee4f0c985b8062db29d47dd2dc175693b5a --- /dev/null +++ b/app.config.services.js @@ -0,0 +1,96 @@ +/* eslint-disable @typescript-eslint/no-var-requires */ +'use strict' + +/** + * This file overrides the default services webpack config. + * This services config enables the use of TypeScript. + * + * @override node_modules/cozy-scripts/config/webpack.config.services.js + */ + +const webpack = require('webpack') +const path = require('path') +const fs = require('fs-extra') +const paths = require('cozy-scripts/utils/paths') +const { + eslintFix, + makeFilename, + target +} = require('cozy-scripts/config/webpack.vars') + +const servicesFolder = paths.appServicesFolder() +const servicesPaths = fs.existsSync(servicesFolder) + ? fs.readdirSync(servicesFolder) + : [] + +const servicesEntries = {} +servicesPaths.forEach(file => { + if (!file.match(/^[^.]*.ts$/)) return + const filename = file.match(/^([^.]*).ts$/)[1] + servicesEntries[filename] = path.resolve(path.join(servicesFolder, file)) +}) + +const config = { + __mergeStrategy: { + smart: false, + strategy: { + plugins: 'replace', + output: 'replace', + entry: 'replace', + optimization: 'replace', + module: 'replace', + externals: 'replace' + } + }, + entry: servicesEntries, + output: { + path: paths.appServicesBuild(), + filename: `${makeFilename(false)}.js` + }, + target: 'node', + optimization: {}, // reset optimization property + devtool: false, + externals: [], // reset externals property + module: { + rules: [ + { + enforce: 'pre', + test: /\.ts$/, + loader: require.resolve('cozy-scripts/node_modules/eslint-loader'), + exclude: /node_modules/, + options: { + extends: ['cozy-app'], + fix: eslintFix, + emitWarning: true + } + }, + { + test: path.resolve(__dirname, 'node_modules/uglify-js/tools/node.js'), + loader: 'null-loader' + }, + { + test: /\.ts$/, + exclude: /(node_modules|cozy-(bar|client-js))/, + loader: require.resolve('cozy-scripts/node_modules/babel-loader'), + options: { + cacheDirectory: 'cozy-scripts/node_modules/.cache/babel-loader/node', + babelrc: false, + presets: [['cozy-app', { node: true, react: false }]] + } + } + ] + }, + plugins: [ + new webpack.DefinePlugin({ + __TARGET__: JSON.stringify('services'), + __IS_ALPHA__: false + }) + ] +} + +/* We don't build services if no services and if on mobile build */ +const addServicesConfig = + target === 'browser' && Object.keys(servicesEntries).length + +// only for browser target (services are usable only on cozy-stack) +module.exports = addServicesConfig ? { multiple: { services: config } } : {} diff --git a/package.json b/package.json index 11ed792678b6b8bc859b9b05159c0b410d36090d..b4570a3ed8f998e9bf505add90b5b2bb2d8c852e 100644 --- a/package.json +++ b/package.json @@ -34,11 +34,14 @@ "@testing-library/jest-dom": "5.16.5", "@testing-library/react": "13.4.0", "babel-preset-cozy-app": "^2.0.4", + "copy-webpack-plugin": "6.4.1", "cozy-bar": "7.16.0", "eslint-config-cozy-app": "^5.2.0", "git-directory-deploy": "1.5.1", "react-hot-loader": "4.13.0", "react-test-renderer": "18.2.0", + "sass": "^1.49.11", + "sass-loader": "^8.0.0", "typescript": "^5.5.4" }, "dependencies": { @@ -51,6 +54,7 @@ "cozy-logger": "^1.9.1", "cozy-scripts": "8.3.0", "cozy-ui": "^78.1.1", + "null-loader": "^4.0.1", "react": "18.2.0", "react-dom": "18.2.0", "react-router-dom": "6.4.5" diff --git a/src/components/Actions/Actions.css b/src/components/Actions/Actions.css deleted file mode 100644 index 3def0e86e472d417d94f9b43c08d0afd14043b27..0000000000000000000000000000000000000000 --- a/src/components/Actions/Actions.css +++ /dev/null @@ -1,26 +0,0 @@ -.actions { - display: flex; - flex-direction: column; - gap: 1rem; -} - -.row { - display: flex; - flex-direction: row; - gap: 1rem; -} - -.bloc { - display: flex; - flex-direction: column; - flex: 1; - justify-content: center; - padding: 1rem; - border-radius: 20px; - color: white; - font-weight: 700; -} - -.progress { - background-color: var(--orange); -} diff --git a/src/components/Actions/Actions.scss b/src/components/Actions/Actions.scss new file mode 100644 index 0000000000000000000000000000000000000000..6e62a0de5dc7c78e86a96448866c424a32d886dc --- /dev/null +++ b/src/components/Actions/Actions.scss @@ -0,0 +1,26 @@ +.actions { + display: flex; + flex-direction: column; + gap: 1rem; + + .row { + display: flex; + flex-direction: row; + gap: 1rem; + } + + .bloc { + display: flex; + flex-direction: column; + flex: 1; + justify-content: center; + padding: 1rem; + border-radius: 20px; + color: white; + font-weight: 700; + } + + .progress { + background-color: var(--orange); + } +} diff --git a/src/components/Actions/Actions.tsx b/src/components/Actions/Actions.tsx index 506e39ec6282113f1bd97dc066ce5bcefed219bf..d8bbedd8c6eda60dd83bbaf4d92915d558f5927e 100644 --- a/src/components/Actions/Actions.tsx +++ b/src/components/Actions/Actions.tsx @@ -1,5 +1,5 @@ import React from 'react' -import './Actions.css' +import './Actions.scss' import { useI18n } from 'cozy-ui/transpiled/react/I18n' export const Actions = () => { diff --git a/src/components/Dashboard/Dashboard.css b/src/components/Dashboard/Dashboard.css deleted file mode 100644 index d2cfaebaff8c7b86004ab82d819ca22d30d3fb43..0000000000000000000000000000000000000000 --- a/src/components/Dashboard/Dashboard.css +++ /dev/null @@ -1,42 +0,0 @@ -.dashboard { - display: flex; - flex-direction: column; - gap: 1rem; -} - -.row { - display: flex; - flex-direction: row; - gap: 1rem; -} - -.bloc { - display: flex; - flex: 1; - justify-content: center; - padding: 1rem; - border-radius: 20px; - color: white; - font-weight: 700; -} - -.meeting { - background-color: var(--orange); -} - -.badge { - background-color: var(--yellow); -} - -.axes { - background-color: var(--blue-light); - color: black; -} - -.objectives { - background-color: var(--blue); -} - -.actions { - background-color: var(--blue-dark); -} diff --git a/src/components/Dashboard/Dashboard.scss b/src/components/Dashboard/Dashboard.scss new file mode 100644 index 0000000000000000000000000000000000000000..5501ef2651ede84a57b90c622722c61008e9a171 --- /dev/null +++ b/src/components/Dashboard/Dashboard.scss @@ -0,0 +1,42 @@ +.dashboard { + display: flex; + flex-direction: column; + gap: 1rem; + + .row { + display: flex; + flex-direction: row; + gap: 1rem; + } + + .bloc { + display: flex; + flex: 1; + justify-content: center; + padding: 1rem; + border-radius: 20px; + color: white; + font-weight: 700; + } + + .meeting { + background-color: var(--orange); + } + + .badge { + background-color: var(--yellow); + } + + .axes { + background-color: var(--blue-light); + color: black; + } + + .objectives { + background-color: var(--blue); + } + + .actions { + background-color: var(--blue-dark); + } +} diff --git a/src/components/Dashboard/Dashboard.tsx b/src/components/Dashboard/Dashboard.tsx index d391406308a0e90a70ef99295c58af36d913f73b..0c14df1ab6380b3d8b706beedae14dc27909ba13 100644 --- a/src/components/Dashboard/Dashboard.tsx +++ b/src/components/Dashboard/Dashboard.tsx @@ -1,5 +1,5 @@ import React, { useEffect } from 'react' -import './Dashboard.css' +import './Dashboard.scss' import { useI18n } from 'cozy-ui/transpiled/react/I18n' export const Dashboard = () => { diff --git a/src/targets/browser/index.jsx b/src/targets/browser/index.tsx similarity index 100% rename from src/targets/browser/index.jsx rename to src/targets/browser/index.tsx diff --git a/yarn.lock b/yarn.lock index 720b5553605f2d2ee5e15e768d0a50f4b5085085..0eca2fd2b349a6e3b43feb78efa2034e02f3f88b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1550,6 +1550,11 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" +"@gar/promisify@^1.0.1": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" + integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== + "@humanwhocodes/config-array@^0.11.8": version "0.11.14" resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.14.tgz#d78e481a039f7566ecc9660b4ea7fe6b1fec442b" @@ -1957,6 +1962,22 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@npmcli/fs@^1.0.0": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" + integrity sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ== + dependencies: + "@gar/promisify" "^1.0.1" + semver "^7.3.5" + +"@npmcli/move-file@^1.0.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" + integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== + dependencies: + mkdirp "^1.0.4" + rimraf "^3.0.2" + "@popperjs/core@^2.4.4": version "2.11.8" resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f" @@ -2213,7 +2234,7 @@ jest-diff "^26.0.0" pretty-format "^26.0.0" -"@types/json-schema@^7.0.5", "@types/json-schema@^7.0.9": +"@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== @@ -2694,6 +2715,14 @@ agentkeepalive@^3.4.1: dependencies: humanize-ms "^1.2.1" +aggregate-error@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== + dependencies: + clean-stack "^2.0.0" + indent-string "^4.0.0" + ajv-errors@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" @@ -2704,7 +2733,7 @@ ajv-keywords@^3.1.0, ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== -ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.9.1: +ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.9.1: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -3698,6 +3727,30 @@ cacache@^12.0.2: unique-filename "^1.1.1" y18n "^4.0.0" +cacache@^15.0.5: + version "15.3.0" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" + integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== + dependencies: + "@npmcli/fs" "^1.0.0" + "@npmcli/move-file" "^1.0.1" + chownr "^2.0.0" + fs-minipass "^2.0.0" + glob "^7.1.4" + infer-owner "^1.0.4" + lru-cache "^6.0.0" + minipass "^3.1.1" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.2" + mkdirp "^1.0.3" + p-map "^4.0.0" + promise-inflight "^1.0.1" + rimraf "^3.0.2" + ssri "^8.0.1" + tar "^6.0.2" + unique-filename "^1.1.1" + cache-base@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -3879,6 +3932,21 @@ chokidar@3.0.2: optionalDependencies: fsevents "^2.0.6" +"chokidar@>=3.0.0 <4.0.0", chokidar@^3.4.1: + version "3.6.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" + integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== + dependencies: + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + optionalDependencies: + fsevents "~2.3.2" + chokidar@^2.1.8: version "2.1.8" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" @@ -3898,26 +3966,16 @@ chokidar@^2.1.8: optionalDependencies: fsevents "^1.2.7" -chokidar@^3.4.1: - version "3.6.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" - integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== - dependencies: - anymatch "~3.1.2" - braces "~3.0.2" - glob-parent "~5.1.2" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.6.0" - optionalDependencies: - fsevents "~2.3.2" - chownr@^1.0.1, chownr@^1.1.1, chownr@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== +chownr@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== + chrome-trace-event@^1.0.2: version "1.0.4" resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz#05bffd7ff928465093314708c93bdfa9bd1f0f5b" @@ -3968,6 +4026,11 @@ clean-css@4.2.x: dependencies: source-map "~0.6.0" +clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" @@ -4018,6 +4081,15 @@ cliui@^6.0.0: strip-ansi "^6.0.0" wrap-ansi "^6.2.0" +clone-deep@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" + integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== + dependencies: + is-plain-object "^2.0.4" + kind-of "^6.0.2" + shallow-clone "^3.0.0" + clone@^1.0.2: version "1.0.4" resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" @@ -4267,6 +4339,23 @@ copy-webpack-plugin@4.6.0: p-limit "^1.0.0" serialize-javascript "^1.4.0" +copy-webpack-plugin@6.4.1: + version "6.4.1" + resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-6.4.1.tgz#138cd9b436dbca0a6d071720d5414848992ec47e" + integrity sha512-MXyPCjdPVx5iiWyl40Va3JGh27bKzOTNY3NjUTrosD2q7dR/cLD0013uqJ3BpFbUjyONINjb6qI7nDIJujrMbA== + dependencies: + cacache "^15.0.5" + fast-glob "^3.2.4" + find-cache-dir "^3.3.1" + glob-parent "^5.1.1" + globby "^11.0.1" + loader-utils "^2.0.0" + normalize-path "^3.0.0" + p-limit "^3.0.2" + schema-utils "^3.0.0" + serialize-javascript "^5.0.1" + webpack-sources "^1.4.3" + core-js-compat@^3.37.1, core-js-compat@^3.38.0: version "3.38.0" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.38.0.tgz#d93393b1aa346b6ee683377b0c31172ccfe607aa" @@ -6341,7 +6430,7 @@ fast-diff@^1.1.2: resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.3.0.tgz#ece407fa550a64d638536cd727e129c61616e0f0" integrity sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw== -fast-glob@^3.2.9: +fast-glob@^3.2.4, fast-glob@^3.2.9: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== @@ -6675,6 +6764,13 @@ fs-minipass@^1.2.7: dependencies: minipass "^2.6.0" +fs-minipass@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" + integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== + dependencies: + minipass "^3.0.0" + fs-write-stream-atomic@^1.0.8: version "1.0.10" resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" @@ -6825,7 +6921,7 @@ glob-parent@^3.1.0: is-glob "^3.1.0" path-dirname "^1.0.0" -glob-parent@^5.0.0, glob-parent@^5.1.2, glob-parent@~5.1.2: +glob-parent@^5.0.0, glob-parent@^5.1.1, glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== @@ -6891,9 +6987,9 @@ globalthis@^1.0.3: define-properties "^1.2.1" gopd "^1.0.1" -globby@^11.1.0: +globby@^11.0.1, globby@^11.1.0: version "11.1.0" - resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== dependencies: array-union "^2.1.0" @@ -7446,6 +7542,11 @@ immediate@~3.0.5: resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b" integrity sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ== +immutable@^4.0.0: + version "4.3.7" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.3.7.tgz#c70145fc90d89fb02021e65c84eb0226e4e5a381" + integrity sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw== + import-cwd@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" @@ -7510,7 +7611,7 @@ indent-string@^4.0.0: resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== -infer-owner@^1.0.3: +infer-owner@^1.0.3, infer-owner@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== @@ -9120,6 +9221,13 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + lz-string@^1.5.0: version "1.5.0" resolved "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz" @@ -9462,6 +9570,27 @@ minimist@^1.1.0, minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.6: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== +minipass-collect@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== + dependencies: + minipass "^3.0.0" + +minipass-flush@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== + dependencies: + minipass "^3.0.0" + +minipass-pipeline@^1.2.2: + version "1.2.4" + resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" + integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== + dependencies: + minipass "^3.0.0" + minipass@^2.6.0, minipass@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" @@ -9470,6 +9599,18 @@ minipass@^2.6.0, minipass@^2.9.0: safe-buffer "^5.1.2" yallist "^3.0.0" +minipass@^3.0.0, minipass@^3.1.1: + version "3.3.6" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" + integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== + dependencies: + yallist "^4.0.0" + +minipass@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" + integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== + minizlib@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" @@ -9477,6 +9618,14 @@ minizlib@^1.3.3: dependencies: minipass "^2.9.0" +minizlib@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== + dependencies: + minipass "^3.0.0" + yallist "^4.0.0" + mississippi@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-2.0.0.tgz#3442a508fafc28500486feea99409676e4ee5a6f" @@ -9529,6 +9678,11 @@ mkdirp@0.x.x, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.5, mkdirp@^0.5.6, mkdirp dependencies: minimist "^1.2.6" +mkdirp@^1.0.3, mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + mout@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/mout/-/mout-0.5.0.tgz#ff967566a90f29595e9cb8b6e7800a5b56635583" @@ -9842,6 +9996,14 @@ nth-check@^2.0.1: dependencies: boolbase "^1.0.0" +null-loader@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/null-loader/-/null-loader-4.0.1.tgz#8e63bd3a2dd3c64236a4679428632edd0a6dbc6a" + integrity sha512-pxqVbi4U6N26lq+LmgIbB5XATP0VdZKOG25DhHi8btMmJJefGArFyDg1yc4U3hWCJbMqSrw0qyrz1UQX+qYXqg== + dependencies: + loader-utils "^2.0.0" + schema-utils "^3.0.0" + num2fraction@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" @@ -10184,6 +10346,13 @@ p-map@^2.0.0: resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + dependencies: + aggregate-error "^3.0.0" + p-retry@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-3.0.1.tgz#316b4c8893e2c8dc1cfa891f406c4b422bebf328" @@ -11871,6 +12040,26 @@ sane@^4.0.3: minimist "^1.1.1" walker "~1.0.5" +sass-loader@^8.0.0: + version "8.0.2" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-8.0.2.tgz#debecd8c3ce243c76454f2e8290482150380090d" + integrity sha512-7o4dbSK8/Ol2KflEmSco4jTjQoV988bM82P9CZdmo9hR3RLnvNc0ufMNdMrB0caq38JQ/FgF4/7RcbcfKzxoFQ== + dependencies: + clone-deep "^4.0.1" + loader-utils "^1.2.3" + neo-async "^2.6.1" + schema-utils "^2.6.1" + semver "^6.3.0" + +sass@^1.49.11: + version "1.78.0" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.78.0.tgz#cef369b2f9dc21ea1d2cf22c979f52365da60841" + integrity sha512-AaIqGSrjo5lA2Yg7RvFZrlXDBCp3nV4XP73GrLGvdRWWwk+8H3l0SDvq/5bA4eF+0RFPLuWUk3E+P1U/YqnpsQ== + dependencies: + chokidar ">=3.0.0 <4.0.0" + immutable "^4.0.0" + source-map-js ">=0.6.2 <2.0.0" + sax@~1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" @@ -11907,7 +12096,7 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" -schema-utils@^2.6.5: +schema-utils@^2.6.1, schema-utils@^2.6.5: version "2.7.1" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== @@ -11916,6 +12105,15 @@ schema-utils@^2.6.5: ajv "^6.12.4" ajv-keywords "^3.5.2" +schema-utils@^3.0.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" + integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== + dependencies: + "@types/json-schema" "^7.0.8" + ajv "^6.12.5" + ajv-keywords "^3.5.2" + script-ext-html-webpack-plugin@2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/script-ext-html-webpack-plugin/-/script-ext-html-webpack-plugin-2.1.3.tgz#b4bf703cddbe3de2e6f483e19dfeba2b5ec4abfe" @@ -11955,7 +12153,7 @@ semver@^6.0.0, semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.2.1, semver@^7.3.2, semver@^7.3.7, semver@^7.5.3: +semver@^7.2.1, semver@^7.3.2, semver@^7.3.5, semver@^7.3.7, semver@^7.5.3: version "7.6.3" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== @@ -11991,6 +12189,13 @@ serialize-javascript@^4.0.0: dependencies: randombytes "^2.1.0" +serialize-javascript@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" + integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== + dependencies: + randombytes "^2.1.0" + serve-index@^1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" @@ -12084,6 +12289,13 @@ sha.js@^2.4.0, sha.js@^2.4.8: inherits "^2.0.1" safe-buffer "^5.0.1" +shallow-clone@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" + integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== + dependencies: + kind-of "^6.0.2" + shallow-equal@^1.0.0, shallow-equal@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/shallow-equal/-/shallow-equal-1.2.1.tgz#4c16abfa56043aa20d050324efa68940b0da79da" @@ -12257,6 +12469,11 @@ source-list-map@^2.0.0: resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== +"source-map-js@>=0.6.2 <2.0.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.0.tgz#16b809c162517b5b8c3e7dcd315a2a5c2612b2af" + integrity sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg== + source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: version "0.5.3" resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" @@ -12386,6 +12603,13 @@ ssri@^6.0.0, ssri@^6.0.1: dependencies: figgy-pudding "^3.5.1" +ssri@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" + integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== + dependencies: + minipass "^3.1.1" + stable@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" @@ -12878,6 +13102,18 @@ tar@^4.4.13: safe-buffer "^5.2.1" yallist "^3.1.1" +tar@^6.0.2: + version "6.2.1" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.1.tgz#717549c541bc3c2af15751bea94b1dd068d4b03a" + integrity sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A== + dependencies: + chownr "^2.0.0" + fs-minipass "^2.0.0" + minipass "^5.0.0" + minizlib "^2.1.1" + mkdirp "^1.0.3" + yallist "^4.0.0" + terminal-link@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" @@ -13841,7 +14077,7 @@ webpack-merge@4.2.2: dependencies: lodash "^4.17.15" -webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1: +webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== @@ -14130,6 +14366,11 @@ yallist@^3.0.0, yallist@^3.0.2, yallist@^3.1.1: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + yaml@^1.10.0: version "1.10.2" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b"