mirror of
https://github.com/strapi/strapi.git
synced 2025-08-01 13:29:01 +00:00
Speed up webpack config by using esbuild-loader
Signed-off-by: soupette <cyril@strapi.io>
This commit is contained in:
parent
6a55ba0e98
commit
e0fb1fe0f3
@ -12,17 +12,17 @@
|
||||
"strapi": "strapi"
|
||||
},
|
||||
"dependencies": {
|
||||
"@strapi/admin": "4.2.0-beta.0",
|
||||
"@strapi/plugin-documentation": "4.2.0-beta.0",
|
||||
"@strapi/plugin-graphql": "4.2.0-beta.0",
|
||||
"@strapi/plugin-i18n": "4.2.0-beta.0",
|
||||
"@strapi/plugin-sentry": "4.2.0-beta.0",
|
||||
"@strapi/plugin-users-permissions": "4.2.0-beta.0",
|
||||
"@strapi/provider-email-mailgun": "4.2.0-beta.0",
|
||||
"@strapi/provider-upload-aws-s3": "4.2.0-beta.0",
|
||||
"@strapi/provider-upload-cloudinary": "4.2.0-beta.0",
|
||||
"@strapi/strapi": "4.2.0-beta.0",
|
||||
"@strapi/utils": "4.2.0-beta.0",
|
||||
"@strapi/admin": "4.1.4",
|
||||
"@strapi/plugin-documentation": "4.1.4",
|
||||
"@strapi/plugin-graphql": "4.1.4",
|
||||
"@strapi/plugin-i18n": "4.1.4",
|
||||
"@strapi/plugin-sentry": "4.1.4",
|
||||
"@strapi/plugin-users-permissions": "4.1.4",
|
||||
"@strapi/provider-email-mailgun": "4.1.4",
|
||||
"@strapi/provider-upload-aws-s3": "4.1.4",
|
||||
"@strapi/provider-upload-cloudinary": "4.1.4",
|
||||
"@strapi/strapi": "4.1.4",
|
||||
"@strapi/utils": "4.1.4",
|
||||
"lodash": "4.17.21",
|
||||
"mysql": "2.18.1",
|
||||
"passport-google-oauth2": "0.2.0",
|
||||
|
@ -113,6 +113,7 @@
|
||||
"request": "2.88.2",
|
||||
"request-promise-native": "1.0.9",
|
||||
"rimraf": "3.0.2",
|
||||
"speed-measure-webpack-plugin": "1.5.0",
|
||||
"stylelint": "13.13.1",
|
||||
"stylelint-config-recommended": "3.0.0",
|
||||
"stylelint-config-styled-components": "0.1.1",
|
||||
|
@ -41,7 +41,7 @@ async function build({
|
||||
ceRoot: path.resolve(cacheDir, 'admin', 'src'),
|
||||
};
|
||||
|
||||
const pluginsPath = Object.keys(plugins).map(pluginName => plugins[pluginName].appPathToPlugin );
|
||||
const pluginsPath = Object.keys(plugins).map(pluginName => plugins[pluginName].appPathToPlugin);
|
||||
|
||||
const config = getCustomWebpackConfig(appDir, {
|
||||
appDir,
|
||||
|
@ -27,7 +27,7 @@
|
||||
"develop": "yarn create:plugin-file && yarn develop:webpack",
|
||||
"develop:webpack": "cross-env NODE_ENV=development webpack serve --config webpack.config.dev.js --progress profile",
|
||||
"prepublishOnly": "yarn build",
|
||||
"build": "rimraf build && node ./scripts/build.js",
|
||||
"builde": "rimraf build && node ./scripts/build.js",
|
||||
"test": "echo \"no tests yet\"",
|
||||
"test:unit": "jest --verbose",
|
||||
"test:front": "cross-env IS_EE=true jest --config ./jest.config.front.js",
|
||||
|
@ -1,15 +1,40 @@
|
||||
'use strict';
|
||||
|
||||
const path = require('path');
|
||||
const fs = require('fs-extra');
|
||||
|
||||
// eslint-disable-next-line node/no-extraneous-require
|
||||
const glob = require('glob');
|
||||
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
|
||||
const { DuplicateReporterPlugin } = require('duplicate-dependencies-webpack-plugin');
|
||||
|
||||
const webpackConfig = require('./webpack.config');
|
||||
|
||||
const getPluginsPath = () => {
|
||||
const rootPath = path.join('..', '..', '..', 'packages');
|
||||
const corePath = path.join(rootPath, 'core', '*');
|
||||
const pluginsPath = path.join(rootPath, 'plugins', '*');
|
||||
const corePackageDirs = glob.sync(corePath);
|
||||
const pluginsPackageDirs = glob.sync(pluginsPath);
|
||||
const packageDirs = [...corePackageDirs, ...pluginsPackageDirs].filter(dir => {
|
||||
const isCoreAdmin = dir.includes('packages/core/admin/');
|
||||
const pathToEntryPoint = path.join(dir, 'admin', 'src', 'index.js');
|
||||
const doesAdminFolderExist = fs.pathExistsSync(pathToEntryPoint);
|
||||
|
||||
return !isCoreAdmin && doesAdminFolderExist;
|
||||
});
|
||||
|
||||
return packageDirs.map(dir => path.resolve(__dirname, path.join(dir, 'admin', 'src')));
|
||||
};
|
||||
|
||||
module.exports = () => {
|
||||
const analyzeBundle = process.env.ANALYZE_BUNDLE;
|
||||
const analyzeDuplicateDependencies = process.env.ANALYZE_DEPS;
|
||||
const entry = path.join(__dirname, 'admin', 'src');
|
||||
// Directly inject a polyfill in the webpack entry point before the entry point
|
||||
// FIXME: I have noticed a bug regarding the helper-plugin and esbuild-loader
|
||||
// The only I could fix it was to inject the babel polyfill
|
||||
const babelPolyfill = '@babel/polyfill/dist/polyfill.min.js';
|
||||
const entry = [babelPolyfill, path.join(__dirname, 'admin', 'src')];
|
||||
const dest = path.join(__dirname, 'build');
|
||||
|
||||
// When running the analyze:bundle command, it needs a production build
|
||||
@ -23,7 +48,7 @@ module.exports = () => {
|
||||
const args = {
|
||||
entry,
|
||||
cacheDir: __dirname,
|
||||
pluginsPath: [path.resolve(__dirname, '../../../packages')],
|
||||
pluginsPath: getPluginsPath(),
|
||||
dest,
|
||||
env,
|
||||
options,
|
||||
@ -41,27 +66,6 @@ module.exports = () => {
|
||||
|
||||
return {
|
||||
...config,
|
||||
snapshot: {
|
||||
managedPaths: [
|
||||
path.resolve(__dirname, '../content-type-builder'),
|
||||
path.resolve(__dirname, '../upload'),
|
||||
path.resolve(__dirname, '../helper-plugin'),
|
||||
],
|
||||
buildDependencies: {
|
||||
hash: true,
|
||||
timestamp: true,
|
||||
},
|
||||
module: {
|
||||
timestamp: true,
|
||||
},
|
||||
resolve: {
|
||||
timestamp: true,
|
||||
},
|
||||
resolveBuildDependencies: {
|
||||
hash: true,
|
||||
timestamp: true,
|
||||
},
|
||||
},
|
||||
|
||||
devServer: {
|
||||
port: 4000,
|
||||
|
@ -1,14 +1,14 @@
|
||||
'use strict';
|
||||
|
||||
const path = require('path');
|
||||
const fse = require('fs-extra');
|
||||
const webpack = require('webpack');
|
||||
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
|
||||
const ForkTsCheckerPlugin = require('fork-ts-checker-webpack-plugin');
|
||||
const HtmlWebpackPlugin = require('html-webpack-plugin');
|
||||
const TerserPlugin = require('terser-webpack-plugin');
|
||||
const { ESBuildMinifyPlugin } = require('esbuild-loader');
|
||||
const WebpackBar = require('webpackbar');
|
||||
const NodePolyfillPlugin = require('node-polyfill-webpack-plugin');
|
||||
const isWsl = require('is-wsl');
|
||||
const alias = require('./webpack.alias');
|
||||
const getClientEnvironment = require('./env');
|
||||
|
||||
@ -79,6 +79,11 @@ module.exports = ({
|
||||
});
|
||||
}
|
||||
|
||||
// Directly inject a polyfill in the webpack entry point before the entry point
|
||||
// FIXME: I have noticed a bug regarding the helper-plugin and esbuild-loader
|
||||
// The only I could fix it was to inject the babel polyfill
|
||||
const babelPolyfill = '@babel/polyfill/dist/polyfill.min.js';
|
||||
|
||||
return {
|
||||
mode: isProduction ? 'production' : 'development',
|
||||
bail: isProduction ? true : false,
|
||||
@ -86,7 +91,7 @@ module.exports = ({
|
||||
experiments: {
|
||||
topLevelAwait: true,
|
||||
},
|
||||
entry,
|
||||
entry: [babelPolyfill, entry],
|
||||
output: {
|
||||
path: dest,
|
||||
publicPath: options.adminPath,
|
||||
@ -98,28 +103,9 @@ module.exports = ({
|
||||
optimization: {
|
||||
minimize: optimize,
|
||||
minimizer: [
|
||||
// Copied from react-scripts
|
||||
new TerserPlugin({
|
||||
terserOptions: {
|
||||
parse: {
|
||||
ecma: 8,
|
||||
},
|
||||
compress: {
|
||||
ecma: 5,
|
||||
warnings: false,
|
||||
comparisons: false,
|
||||
inline: 2,
|
||||
},
|
||||
mangle: {
|
||||
safari10: true,
|
||||
},
|
||||
output: {
|
||||
ecma: 5,
|
||||
comments: false,
|
||||
ascii_only: true,
|
||||
},
|
||||
},
|
||||
parallel: !isWsl,
|
||||
new ESBuildMinifyPlugin({
|
||||
target: 'es2015',
|
||||
css: true, // Apply minification to CSS assets
|
||||
}),
|
||||
],
|
||||
runtimeChunk: true,
|
||||
@ -128,41 +114,83 @@ module.exports = ({
|
||||
rules: [
|
||||
{
|
||||
test: /\.m?js$/,
|
||||
// TODO remove when plugins are built separately
|
||||
include: [cacheDir, ...pluginsPath],
|
||||
use: {
|
||||
loader: require.resolve('babel-loader'),
|
||||
options: {
|
||||
cacheDirectory: true,
|
||||
cacheCompression: isProduction,
|
||||
compact: isProduction,
|
||||
presets: [
|
||||
require.resolve('@babel/preset-env'),
|
||||
require.resolve('@babel/preset-react'),
|
||||
],
|
||||
plugins: [
|
||||
[
|
||||
require.resolve('@strapi/babel-plugin-switch-ee-ce'),
|
||||
{
|
||||
// Imported this tells the custom plugin where to look for the ee folder
|
||||
roots,
|
||||
},
|
||||
],
|
||||
require.resolve('@babel/plugin-proposal-class-properties'),
|
||||
require.resolve('@babel/plugin-syntax-dynamic-import'),
|
||||
require.resolve('@babel/plugin-transform-modules-commonjs'),
|
||||
require.resolve('@babel/plugin-proposal-async-generator-functions'),
|
||||
include: cacheDir,
|
||||
oneOf: [
|
||||
// Use babel-loader for files that distinct the ee and ce code
|
||||
// These files have an import Something from 'ee_else_ce/
|
||||
{
|
||||
test(filePath) {
|
||||
if (!filePath) {
|
||||
return false;
|
||||
}
|
||||
|
||||
[
|
||||
require.resolve('@babel/plugin-transform-runtime'),
|
||||
{
|
||||
// absoluteRuntime: true,s
|
||||
helpers: true,
|
||||
regenerator: true,
|
||||
},
|
||||
],
|
||||
[require.resolve('babel-plugin-styled-components'), { pure: true }],
|
||||
],
|
||||
try {
|
||||
const fileContent = fse.readFileSync(filePath).toString();
|
||||
|
||||
if (fileContent.match(/from.* ['"]ee_else_ce\//)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
} catch (e) {
|
||||
return false;
|
||||
}
|
||||
},
|
||||
use: {
|
||||
loader: require.resolve('babel-loader'),
|
||||
options: {
|
||||
cacheDirectory: true,
|
||||
cacheCompression: isProduction,
|
||||
compact: isProduction,
|
||||
presets: [
|
||||
require.resolve('@babel/preset-env'),
|
||||
require.resolve('@babel/preset-react'),
|
||||
],
|
||||
plugins: [
|
||||
[
|
||||
require.resolve('@strapi/babel-plugin-switch-ee-ce'),
|
||||
{
|
||||
// Imported this tells the custom plugin where to look for the ee folder
|
||||
roots,
|
||||
},
|
||||
],
|
||||
require.resolve('@babel/plugin-proposal-class-properties'),
|
||||
require.resolve('@babel/plugin-syntax-dynamic-import'),
|
||||
require.resolve('@babel/plugin-transform-modules-commonjs'),
|
||||
require.resolve('@babel/plugin-proposal-async-generator-functions'),
|
||||
|
||||
[
|
||||
require.resolve('@babel/plugin-transform-runtime'),
|
||||
{
|
||||
helpers: true,
|
||||
regenerator: true,
|
||||
},
|
||||
],
|
||||
[require.resolve('babel-plugin-styled-components'), { pure: true }],
|
||||
],
|
||||
},
|
||||
},
|
||||
},
|
||||
// Use esbuild-loader for the other files
|
||||
{
|
||||
use: {
|
||||
loader: require.resolve('esbuild-loader'),
|
||||
options: {
|
||||
loader: 'jsx',
|
||||
target: 'es2015',
|
||||
},
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
test: /\.m?js$/,
|
||||
include: pluginsPath,
|
||||
use: {
|
||||
loader: require.resolve('esbuild-loader'),
|
||||
options: {
|
||||
loader: 'jsx',
|
||||
target: 'es2015',
|
||||
},
|
||||
},
|
||||
},
|
||||
@ -212,8 +240,6 @@ module.exports = ({
|
||||
new HtmlWebpackPlugin({
|
||||
inject: true,
|
||||
template: path.resolve(__dirname, 'index.html'),
|
||||
// FIXME
|
||||
// favicon: path.resolve(__dirname, 'admin/src/favicon.ico'),
|
||||
}),
|
||||
new webpack.DefinePlugin(envVariables),
|
||||
|
||||
|
@ -21,7 +21,6 @@
|
||||
}
|
||||
],
|
||||
"main": "build/index.js",
|
||||
"module": "lib/src/index.js",
|
||||
"files": [
|
||||
"build"
|
||||
],
|
||||
|
378
yarn.lock
378
yarn.lock
@ -4973,6 +4973,130 @@
|
||||
resolve-from "^5.0.0"
|
||||
store2 "^2.12.0"
|
||||
|
||||
"@strapi/admin@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/admin/-/admin-4.2.0-beta.0.tgz#537a5d1dae20acb2c0881b4cd2847a264f0e2b0f"
|
||||
integrity sha512-zNK5jopdnfpwWZ6qHFOSNXenrKIlW1oMzYM6H//SITFD5SH2sMINcJvlyejXGujxvb8Cxm6dKD9HQHlN8wotfw==
|
||||
dependencies:
|
||||
"@babel/core" "7.16.7"
|
||||
"@babel/plugin-proposal-async-generator-functions" "7.16.7"
|
||||
"@babel/plugin-proposal-class-properties" "7.16.7"
|
||||
"@babel/plugin-syntax-dynamic-import" "7.8.3"
|
||||
"@babel/plugin-transform-modules-commonjs" "7.16.7"
|
||||
"@babel/plugin-transform-runtime" "7.16.7"
|
||||
"@babel/preset-env" "7.16.7"
|
||||
"@babel/preset-react" "7.16.7"
|
||||
"@babel/runtime" "7.16.7"
|
||||
"@casl/ability" "^5.4.3"
|
||||
"@fingerprintjs/fingerprintjs" "3.3.2"
|
||||
"@fortawesome/fontawesome-free" "^5.15.3"
|
||||
"@fortawesome/fontawesome-svg-core" "^1.2.35"
|
||||
"@fortawesome/free-brands-svg-icons" "^5.15.3"
|
||||
"@fortawesome/free-solid-svg-icons" "^5.15.3"
|
||||
"@fortawesome/react-fontawesome" "^0.1.14"
|
||||
"@strapi/babel-plugin-switch-ee-ce" "4.2.0-beta.0"
|
||||
"@strapi/design-system" "0.0.1-alpha.79"
|
||||
"@strapi/helper-plugin" "4.2.0-beta.0"
|
||||
"@strapi/icons" "0.0.1-alpha.79"
|
||||
"@strapi/utils" "4.2.0-beta.0"
|
||||
axios "0.24.0"
|
||||
babel-loader "8.2.3"
|
||||
babel-plugin-styled-components "2.0.2"
|
||||
bcryptjs "2.4.3"
|
||||
chalk "^4.1.1"
|
||||
chokidar "^3.5.1"
|
||||
codemirror "^5.61.0"
|
||||
cross-env "^7.0.3"
|
||||
css-loader "6.5.1"
|
||||
date-fns "2.22.1"
|
||||
dotenv "8.5.1"
|
||||
esbuild-loader "2.18.0"
|
||||
execa "^1.0.0"
|
||||
fast-deep-equal "3.1.3"
|
||||
font-awesome "^4.7.0"
|
||||
fork-ts-checker-webpack-plugin "7.2.1"
|
||||
formik "^2.2.6"
|
||||
fs-extra "10.0.0"
|
||||
highlight.js "^10.4.1"
|
||||
history "^4.9.0"
|
||||
hoist-non-react-statics "^3.3.0"
|
||||
html-loader "3.0.1"
|
||||
html-webpack-plugin "5.5.0"
|
||||
immer "9.0.6"
|
||||
invariant "^2.2.4"
|
||||
is-wsl "2.2.0"
|
||||
js-cookie "2.2.1"
|
||||
jsonwebtoken "8.5.1"
|
||||
koa-compose "4.1.0"
|
||||
koa-passport "4.1.4"
|
||||
koa-static "5.0.0"
|
||||
lodash "4.17.21"
|
||||
markdown-it "^12.3.2"
|
||||
markdown-it-abbr "^1.0.4"
|
||||
markdown-it-container "^3.0.0"
|
||||
markdown-it-deflist "^2.1.0"
|
||||
markdown-it-emoji "^2.0.0"
|
||||
markdown-it-footnote "^3.0.3"
|
||||
markdown-it-ins "^3.0.1"
|
||||
markdown-it-mark "^3.0.1"
|
||||
markdown-it-sub "^1.0.0"
|
||||
markdown-it-sup "1.0.0"
|
||||
match-sorter "^4.0.2"
|
||||
mini-css-extract-plugin "2.4.4"
|
||||
moment "^2.29.1"
|
||||
node-polyfill-webpack-plugin "1.1.4"
|
||||
p-map "4.0.0"
|
||||
passport-local "1.0.0"
|
||||
prop-types "^15.7.2"
|
||||
qs "6.10.1"
|
||||
react "^17.0.2"
|
||||
react-copy-to-clipboard "^5.0.3"
|
||||
react-dnd "^14.0.2"
|
||||
react-dnd-html5-backend "^14.0.0"
|
||||
react-dom "^17.0.2"
|
||||
react-error-boundary "3.1.1"
|
||||
react-fast-compare "^3.2.0"
|
||||
react-helmet "^6.1.0"
|
||||
react-intl "5.20.2"
|
||||
react-query "3.24.3"
|
||||
react-redux "7.2.3"
|
||||
react-router "5.2.0"
|
||||
react-router-dom "5.2.0"
|
||||
react-select "^4.0.2"
|
||||
react-virtualized "^9.22.3"
|
||||
redux "^4.0.1"
|
||||
redux-saga "^0.16.0"
|
||||
reselect "^4.0.0"
|
||||
rimraf "3.0.2"
|
||||
sanitize-html "2.4.0"
|
||||
semver "7.3.5"
|
||||
sift "13.5.0"
|
||||
style-loader "3.3.1"
|
||||
styled-components "^5.2.3"
|
||||
terser-webpack-plugin "5.3.0"
|
||||
webpack "5.65.0"
|
||||
webpack-cli "4.9.1"
|
||||
webpack-dev-server "4.7.3"
|
||||
webpackbar "5.0.0-3"
|
||||
yup "^0.32.9"
|
||||
|
||||
"@strapi/babel-plugin-switch-ee-ce@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/babel-plugin-switch-ee-ce/-/babel-plugin-switch-ee-ce-4.2.0-beta.0.tgz#4ae4f725bd39fc5bea89d78804541ed2f0809868"
|
||||
integrity sha512-pWvsbGTcuCvpnUZhNpAUsbAZ0OShvVOgzub+le27PbscHuC244MpGwwtyjVmhNFGGXVd+wr6Hk5nKogA48wLmw==
|
||||
|
||||
"@strapi/database@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/database/-/database-4.2.0-beta.0.tgz#518df716f96d4f3776567e3dccb19f05f8a1660b"
|
||||
integrity sha512-HTVlQP3+e++pCnQviRHaL/xy60SEKuVV+BDDKorEvN6O5tqYPXkx1ZkZXhypL8vfP3JQd7j6ZSJm1RQ3uM+tCw==
|
||||
dependencies:
|
||||
date-fns "2.22.1"
|
||||
debug "4.3.1"
|
||||
fs-extra "10.0.0"
|
||||
knex "0.95.6"
|
||||
lodash "4.17.21"
|
||||
umzug "2.3.0"
|
||||
|
||||
"@strapi/design-system@0.0.1-alpha.79":
|
||||
version "0.0.1-alpha.79"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/design-system/-/design-system-0.0.1-alpha.79.tgz#23e6a7f73383b72148c926fa74ed0ba1acc32f0a"
|
||||
@ -4982,6 +5106,64 @@
|
||||
compute-scroll-into-view "^1.0.17"
|
||||
prop-types "^15.7.2"
|
||||
|
||||
"@strapi/generate-new@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/generate-new/-/generate-new-4.2.0-beta.0.tgz#86862d7713f54b56cb737856ffa0a6c3f55de53e"
|
||||
integrity sha512-uiJrlUmYDX8461LJ/vIdLlEbRxYZuySPdwK3mGRXqtwqYBHZI7HgiHj/o5rWVkXXcWJywOZaoZNGLAu4p0uwTA==
|
||||
dependencies:
|
||||
"@sentry/node" "6.3.0"
|
||||
chalk "^4.1.1"
|
||||
execa "^1.0.0"
|
||||
fs-extra "10.0.0"
|
||||
inquirer "8.2.0"
|
||||
lodash "4.17.21"
|
||||
node-fetch "^2.6.1"
|
||||
node-machine-id "^1.1.10"
|
||||
ora "^5.4.0"
|
||||
tar "6.1.11"
|
||||
uuid "^3.3.2"
|
||||
|
||||
"@strapi/generators@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/generators/-/generators-4.2.0-beta.0.tgz#4d35a1dcc00c6d7771a8509c7f0e777a0fdc587f"
|
||||
integrity sha512-KePrXfpxJNzPFAAR3S/jdyVlsY4eVwMvwRmXVmhQmXBSIMJMzzdahgG0a7zRTkCcog4dQTPwC9VGADcQJD20pw==
|
||||
dependencies:
|
||||
"@sindresorhus/slugify" "1.1.0"
|
||||
"@strapi/typescript-utils" "4.2.0-beta.0"
|
||||
"@strapi/utils" "4.2.0-beta.0"
|
||||
chalk "4.1.2"
|
||||
fs-extra "10.0.0"
|
||||
node-plop "0.26.3"
|
||||
plop "2.7.6"
|
||||
pluralize "8.0.0"
|
||||
|
||||
"@strapi/helper-plugin@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/helper-plugin/-/helper-plugin-4.2.0-beta.0.tgz#787268de66956466fe3f0fbf77c491add3f495cc"
|
||||
integrity sha512-tDn9ggXlLOLWFYKbW5j85p1wPNa7WH61c4TLAWwF16ouhcv/zx6jKe2jNSHWfpflKBKwUtQsh3eSh3c5RjmXqw==
|
||||
dependencies:
|
||||
"@fortawesome/fontawesome-free" "^5.15.2"
|
||||
"@fortawesome/fontawesome-svg-core" "^1.2.35"
|
||||
"@fortawesome/free-brands-svg-icons" "^5.15.2"
|
||||
"@fortawesome/free-solid-svg-icons" "^5.15.3"
|
||||
"@fortawesome/react-fontawesome" "^0.1.14"
|
||||
axios "0.25.0"
|
||||
babel-plugin-styled-components "2.0.2"
|
||||
formik "2.2.9"
|
||||
invariant "^2.2.1"
|
||||
lodash "4.17.21"
|
||||
match-sorter "^4.0.2"
|
||||
mini-css-extract-plugin "2.4.4"
|
||||
moment "^2.29.1"
|
||||
react "^17.0.2"
|
||||
react-dom "^17.0.2"
|
||||
react-helmet "^6.1.0"
|
||||
react-intl "5.20.2"
|
||||
react-router "^5.2.0"
|
||||
react-router-dom "5.2.0"
|
||||
styled-components "^5.2.3"
|
||||
whatwg-fetch "^3.6.2"
|
||||
|
||||
"@strapi/icons@0.0.1-alpha.79":
|
||||
version "0.0.1-alpha.79"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/icons/-/icons-0.0.1-alpha.79.tgz#eff8790ea3897419489a61cbfd72a436661d1420"
|
||||
@ -4989,6 +5171,195 @@
|
||||
dependencies:
|
||||
rimraf "^3.0.2"
|
||||
|
||||
"@strapi/logger@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/logger/-/logger-4.2.0-beta.0.tgz#bdb6d08b90ee2a2199804d931e8a493222056972"
|
||||
integrity sha512-yIJa9w2kbzLYMyU/NFB3Ss4bB9D+Z6LK+NVWGXdtaaPQ0pFXYOgaFY1t/kE3BY9xL6exB34gizwNLaQJ58dZqQ==
|
||||
dependencies:
|
||||
lodash "4.17.21"
|
||||
winston "3.3.3"
|
||||
|
||||
"@strapi/plugin-content-manager@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/plugin-content-manager/-/plugin-content-manager-4.2.0-beta.0.tgz#c9844b556df12c49654f3e8e3718b0df51014e38"
|
||||
integrity sha512-zPXNxqpCYyDk1yNqRb3jIemWqWrlrtEOQ7CiBSGKzRC1PTbvidrVQroPRVTgEHBfNTQVTfq+LDLvOt0wGJpyig==
|
||||
dependencies:
|
||||
"@sindresorhus/slugify" "1.1.0"
|
||||
"@strapi/utils" "4.2.0-beta.0"
|
||||
lodash "4.17.21"
|
||||
|
||||
"@strapi/plugin-content-type-builder@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/plugin-content-type-builder/-/plugin-content-type-builder-4.2.0-beta.0.tgz#5ce112f520b24b5b8152718341b489ed1689ac58"
|
||||
integrity sha512-uiQZJgoTAKN3MCB9l4BXAkBjmM3TuwVXpwgcaQxS1ybHo2SGFX9w1cq4y2z3Xt3uFGjJT7gGXjOAuLvgriD15w==
|
||||
dependencies:
|
||||
"@sindresorhus/slugify" "1.1.0"
|
||||
"@strapi/generators" "4.2.0-beta.0"
|
||||
"@strapi/helper-plugin" "4.2.0-beta.0"
|
||||
"@strapi/utils" "4.2.0-beta.0"
|
||||
fs-extra "10.0.0"
|
||||
lodash "4.17.21"
|
||||
pluralize "^8.0.0"
|
||||
react "^17.0.2"
|
||||
react-dom "^17.0.2"
|
||||
react-intl "5.20.2"
|
||||
react-redux "7.2.3"
|
||||
react-router "^5.2.0"
|
||||
react-router-dom "5.2.0"
|
||||
redux "^4.0.1"
|
||||
reselect "^4.0.0"
|
||||
yup "^0.32.9"
|
||||
|
||||
"@strapi/plugin-email@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/plugin-email/-/plugin-email-4.2.0-beta.0.tgz#2fe0a40b02e72df04062831ec8d7ea9f4d9bb315"
|
||||
integrity sha512-9iUO5stOiwfYQQXaK/acdMqJY0OxlZkRbR8F3UfWDeMXELCzCD/YLn3YsKw6qVvnlYg5RnI/9yqgP32oRhKx2A==
|
||||
dependencies:
|
||||
"@strapi/provider-email-sendmail" "4.2.0-beta.0"
|
||||
"@strapi/utils" "4.2.0-beta.0"
|
||||
lodash "4.17.21"
|
||||
|
||||
"@strapi/plugin-upload@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/plugin-upload/-/plugin-upload-4.2.0-beta.0.tgz#d4f766491b43570c32159295918ed1ecd5786d76"
|
||||
integrity sha512-eipDx3BASomnM8zE8bQoeI/x8bD+mJdKaZzQZcNz2I7gqXTX28ODOAdxDFfQnSq4+9JiL2teQfeLEvz6N2bf/g==
|
||||
dependencies:
|
||||
"@strapi/helper-plugin" "4.2.0-beta.0"
|
||||
"@strapi/provider-upload-local" "4.2.0-beta.0"
|
||||
"@strapi/utils" "4.2.0-beta.0"
|
||||
byte-size "7.0.1"
|
||||
cropperjs "1.5.11"
|
||||
fs-extra "10.0.0"
|
||||
immer "9.0.6"
|
||||
koa-range "0.3.0"
|
||||
koa-static "5.0.0"
|
||||
lodash "4.17.21"
|
||||
react "^17.0.2"
|
||||
react-copy-to-clipboard "^5.0.3"
|
||||
react-dom "^17.0.2"
|
||||
react-intl "5.20.2"
|
||||
react-redux "7.2.3"
|
||||
react-router "^5.2.0"
|
||||
react-router-dom "5.2.0"
|
||||
sharp "0.30.1"
|
||||
|
||||
"@strapi/provider-email-mailgun@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/provider-email-mailgun/-/provider-email-mailgun-4.2.0-beta.0.tgz#aef92ee50841300215e0cc79edfeba6d0b4e0dd4"
|
||||
integrity sha512-OQ/k0hjxw2STlPPjK/uhmYiAU8aVEAn9zJMQo/5ehBpKXUO71fqQsSOIT6k/uUYBV6tmgZC/fkzObh/SgzaOEQ==
|
||||
dependencies:
|
||||
"@strapi/utils" "4.2.0-beta.0"
|
||||
mailgun-js "0.22.0"
|
||||
|
||||
"@strapi/provider-email-sendmail@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/provider-email-sendmail/-/provider-email-sendmail-4.2.0-beta.0.tgz#534e4a21e913e51c469be0e4739ba83b3045e345"
|
||||
integrity sha512-HXhP/zPU/3e58SKiOkm30o/kmvhEsKjZrRr82j48JDbkgGxZWg29KqOFb2lq4GREXkl2xvVZQ2brwOVk+ZgN9A==
|
||||
dependencies:
|
||||
"@strapi/utils" "4.2.0-beta.0"
|
||||
sendmail "^1.6.1"
|
||||
|
||||
"@strapi/provider-upload-aws-s3@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/provider-upload-aws-s3/-/provider-upload-aws-s3-4.2.0-beta.0.tgz#4a1b73b09f59496f5b818cb19cfddd6990f64738"
|
||||
integrity sha512-l4QvHb1mupnhNLmhQgujFzYbWYJoec0ifRLpKDXnzVfXSN/PH908h+6lNbiMCnXfbfCjKrVZpxlQCpGKZlgcmg==
|
||||
dependencies:
|
||||
aws-sdk "2.892.0"
|
||||
lodash "4.17.21"
|
||||
|
||||
"@strapi/provider-upload-cloudinary@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/provider-upload-cloudinary/-/provider-upload-cloudinary-4.2.0-beta.0.tgz#190728ddf3ad1f1e352d2734771779befa338a6d"
|
||||
integrity sha512-GsUC6NzW7DbQCBcKy9FjiM5Ezj1ng3qKBqDV8EiEEXJUDigjiLJHGqUbquIJrP1OMSn1oGl3qxYcBHj1z31+7w==
|
||||
dependencies:
|
||||
"@strapi/utils" "4.2.0-beta.0"
|
||||
cloudinary "^1.25.1"
|
||||
into-stream "^5.1.0"
|
||||
|
||||
"@strapi/provider-upload-local@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/provider-upload-local/-/provider-upload-local-4.2.0-beta.0.tgz#16e3e174543a617963e6110a9d0a78d7500f5a50"
|
||||
integrity sha512-NQjbRtBaYX7jcgQoZo4/iIKwAjpGhSzQ+mpLDVf/C0eGeGO0S2cE1Zpf3FAybnt295pqmghCjm7XVL/euz+Ozg==
|
||||
dependencies:
|
||||
"@strapi/utils" "4.2.0-beta.0"
|
||||
|
||||
"@strapi/strapi@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/strapi/-/strapi-4.2.0-beta.0.tgz#c44f7ad611ce1cef40532c3a6c406fb6b740e688"
|
||||
integrity sha512-m1fEP8CfcyEnHvjFsikHmbtWeHw58dRIieVHdWTOfZyIZVaizmUyFqhGbRlfUcpQ8zR6c25wtLUoo0oJvM0l8Q==
|
||||
dependencies:
|
||||
"@koa/cors" "3.1.0"
|
||||
"@koa/router" "10.1.1"
|
||||
"@strapi/admin" "4.2.0-beta.0"
|
||||
"@strapi/database" "4.2.0-beta.0"
|
||||
"@strapi/generate-new" "4.2.0-beta.0"
|
||||
"@strapi/generators" "4.2.0-beta.0"
|
||||
"@strapi/logger" "4.2.0-beta.0"
|
||||
"@strapi/plugin-content-manager" "4.2.0-beta.0"
|
||||
"@strapi/plugin-content-type-builder" "4.2.0-beta.0"
|
||||
"@strapi/plugin-email" "4.2.0-beta.0"
|
||||
"@strapi/plugin-upload" "4.2.0-beta.0"
|
||||
"@strapi/typescript-utils" "4.2.0-beta.0"
|
||||
"@strapi/utils" "4.2.0-beta.0"
|
||||
bcryptjs "2.4.3"
|
||||
boxen "5.1.2"
|
||||
chalk "4.1.2"
|
||||
chokidar "3.5.2"
|
||||
ci-info "3.2.0"
|
||||
cli-table3 "0.6.1"
|
||||
commander "8.2.0"
|
||||
configstore "5.0.1"
|
||||
debug "4.3.2"
|
||||
delegates "1.0.0"
|
||||
dotenv "10.0.0"
|
||||
execa "5.1.1"
|
||||
fs-extra "10.0.0"
|
||||
glob "7.2.0"
|
||||
http-errors "1.8.0"
|
||||
inquirer "8.2.0"
|
||||
is-docker "2.2.1"
|
||||
koa "2.13.3"
|
||||
koa-body "4.2.0"
|
||||
koa-compose "4.1.0"
|
||||
koa-compress "5.1.0"
|
||||
koa-favicon "2.1.0"
|
||||
koa-helmet "6.1.0"
|
||||
koa-ip "2.1.0"
|
||||
koa-session "6.2.0"
|
||||
koa-static "5.0.0"
|
||||
lodash "4.17.21"
|
||||
node-fetch "2.6.7"
|
||||
node-machine-id "1.1.12"
|
||||
node-schedule "2.0.0"
|
||||
open "8.2.1"
|
||||
ora "5.4.1"
|
||||
package-json "7.0.0"
|
||||
qs "6.10.1"
|
||||
resolve-cwd "3.0.0"
|
||||
semver "7.3.5"
|
||||
statuses "2.0.1"
|
||||
uuid "^3.3.2"
|
||||
|
||||
"@strapi/typescript-utils@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/typescript-utils/-/typescript-utils-4.2.0-beta.0.tgz#9e667bb370df396e2ee52a8588fa8b64724f42b9"
|
||||
integrity sha512-bTk3F6UxmBMRFaNtX8COSii3kChZohN1A/Juq3kAR3nh7z2zClWfWUlfBvbVgx7N41Xl0mfg75WKSRnyCT3kHw==
|
||||
dependencies:
|
||||
fs-extra "10.0.1"
|
||||
lodash "4.17.21"
|
||||
typescript "4.6.2"
|
||||
|
||||
"@strapi/utils@4.2.0-beta.0":
|
||||
version "4.2.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@strapi/utils/-/utils-4.2.0-beta.0.tgz#312bfb67aa895c1a11e1a7a9cbdb3275791cb760"
|
||||
integrity sha512-si6xLONWeRZdayOAVNcLodbGJlv4KwC96XGUViQgdHx1fNh5+ar/BcH7DF9uG4U7t7RVS5LiPtr3rZfB9BlGzw==
|
||||
dependencies:
|
||||
"@sindresorhus/slugify" "1.1.0"
|
||||
date-fns "2.24.0"
|
||||
http-errors "1.8.0"
|
||||
lodash "4.17.21"
|
||||
yup "0.32.9"
|
||||
|
||||
"@stylelint/postcss-css-in-js@^0.37.2":
|
||||
version "0.37.2"
|
||||
resolved "https://registry.yarnpkg.com/@stylelint/postcss-css-in-js/-/postcss-css-in-js-0.37.2.tgz#7e5a84ad181f4234a2480803422a47b8749af3d2"
|
||||
@ -20551,6 +20922,13 @@ specificity@^0.4.1:
|
||||
resolved "https://registry.yarnpkg.com/specificity/-/specificity-0.4.1.tgz#aab5e645012db08ba182e151165738d00887b019"
|
||||
integrity sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==
|
||||
|
||||
speed-measure-webpack-plugin@1.5.0:
|
||||
version "1.5.0"
|
||||
resolved "https://registry.yarnpkg.com/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.5.0.tgz#caf2c5bee24ab66c1c7c30e8daa7910497f7681a"
|
||||
integrity sha512-Re0wX5CtM6gW7bZA64ONOfEPEhwbiSF/vz6e2GvadjuaPrQcHTQdRGsD8+BE7iUOysXH8tIenkPCQBEcspXsNg==
|
||||
dependencies:
|
||||
chalk "^4.1.0"
|
||||
|
||||
split-array-stream@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/split-array-stream/-/split-array-stream-2.0.0.tgz#85a4f8bfe14421d7bca7f33a6d176d0c076a53b1"
|
||||
|
Loading…
x
Reference in New Issue
Block a user