mirror of
https://github.com/strapi/strapi.git
synced 2025-12-27 07:03:38 +00:00
Optimize build and clean scripts
This commit is contained in:
parent
54d40354c8
commit
7beda02158
@ -1,50 +0,0 @@
|
||||
const injectReducer = require('./utils/injectReducer').default;
|
||||
const injectSaga = require('./utils/injectSaga').default;
|
||||
const { languages } = require('./i18n');
|
||||
|
||||
window.strapi = Object.assign(window.strapi || {}, {
|
||||
node: MODE || 'host',
|
||||
backendURL: BACKEND_URL,
|
||||
languages,
|
||||
currentLanguage:
|
||||
window.localStorage.getItem('strapi-admin-language') ||
|
||||
window.navigator.language ||
|
||||
window.navigator.userLanguage ||
|
||||
'en',
|
||||
injectReducer,
|
||||
injectSaga,
|
||||
});
|
||||
|
||||
// module.exports = {
|
||||
// documentation: require('../../../strapi-plugin-documentation/admin/dist/strapi-plugin-documentation.esm.js')
|
||||
// .default,
|
||||
// 'content-manager': require('../../../strapi-plugin-content-manager/admin/dist/strapi-plugin-content-manager.esm.js')
|
||||
// .default,
|
||||
// 'content-type-builder': require('../../../strapi-plugin-content-type-builder/admin/dist/strapi-plugin-content-type-builder.cjs.js')
|
||||
// .default,
|
||||
// email: require('../../../strapi-plugin-email/admin/dist/strapi-plugin-email.esm.js')
|
||||
// .default,
|
||||
// 'users-permissions': require('../../../strapi-plugin-users-permissions/admin/dist/strapi-plugin-users-permissions.esm.js')
|
||||
// .default,
|
||||
// upload: require('../../../strapi-plugin-upload/admin/dist/strapi-plugin-upload.esm.js')
|
||||
// .default,
|
||||
// 'settings-manager':
|
||||
// // 'settings-manager': require('../../../strapi-plugin-settings-manager/admin/src')
|
||||
// require('../../../strapi-plugin-settings-manager/admin/dist/strapi-plugin-settings-manager.esm.js')
|
||||
// .default,
|
||||
// };
|
||||
module.exports = {
|
||||
documentation: require('../../../strapi-plugin-documentation/admin/src')
|
||||
.default,
|
||||
'content-manager': require('../../../strapi-plugin-content-manager/admin/src')
|
||||
.default,
|
||||
'content-type-builder': require('../../../strapi-plugin-content-type-builder/admin/src')
|
||||
.default,
|
||||
email: require('../../../strapi-plugin-email/admin/src').default,
|
||||
'users-permissions': require('../../../strapi-plugin-users-permissions/admin/src')
|
||||
.default,
|
||||
upload: require('../../../strapi-plugin-upload/admin/src').default,
|
||||
'settings-manager':
|
||||
// 'settings-manager': require('../../../strapi-plugin-settings-manager/admin/src')
|
||||
require('../../../strapi-plugin-settings-manager/admin/src').default,
|
||||
};
|
||||
158
packages/strapi-admin/index.js
Normal file
158
packages/strapi-admin/index.js
Normal file
@ -0,0 +1,158 @@
|
||||
const path = require('path');
|
||||
const chalk = require('chalk');
|
||||
const fs = require('fs-extra');
|
||||
const webpack = require('webpack');
|
||||
const getWebpackConfig = require('./webpack.config.js');
|
||||
|
||||
const getPkgPath = name =>
|
||||
path.dirname(require.resolve(`${name}/package.json`));
|
||||
|
||||
function createPluginsJs(plugins, dest) {
|
||||
const content = `
|
||||
const injectReducer = require('./utils/injectReducer').default;
|
||||
const injectSaga = require('./utils/injectSaga').default;
|
||||
const { languages } = require('./i18n');
|
||||
|
||||
window.strapi = Object.assign(window.strapi || {}, {
|
||||
node: MODE || 'host',
|
||||
backendURL: BACKEND_URL,
|
||||
languages,
|
||||
currentLanguage:
|
||||
window.localStorage.getItem('strapi-admin-language') ||
|
||||
window.navigator.language ||
|
||||
window.navigator.userLanguage ||
|
||||
'en',
|
||||
injectReducer,
|
||||
injectSaga,
|
||||
});
|
||||
|
||||
module.exports = {
|
||||
${plugins
|
||||
.map(name => {
|
||||
const shortName = name.replace(/^strapi-plugin-/i, '');
|
||||
const req = `require('../../plugins/${name}/admin/src').default`;
|
||||
return `'${shortName}': ${req}`;
|
||||
})
|
||||
.join(',\n')}
|
||||
}
|
||||
`;
|
||||
|
||||
fs.writeFileSync(path.resolve(dest, 'admin', 'src', 'plugins.js'), content);
|
||||
}
|
||||
|
||||
async function copyPlugin(name, dest) {
|
||||
const pkgFilePath = getPkgPath(name);
|
||||
|
||||
const resolveDepPath = (...args) => path.resolve(pkgFilePath, ...args);
|
||||
const resolveDest = (...args) => path.resolve(dest, 'plugins', name, ...args);
|
||||
|
||||
const copy = (...args) => {
|
||||
fs.copySync(resolveDepPath(...args), resolveDest(...args));
|
||||
};
|
||||
|
||||
// Copy the entire admin folder
|
||||
copy('admin');
|
||||
|
||||
// Copy the layout.js if it exists
|
||||
if (fs.existsSync(path.resolve(pkgFilePath, 'config', 'layout.js'))) {
|
||||
fs.ensureDirSync(resolveDest('config'));
|
||||
copy('config', 'layout.js');
|
||||
}
|
||||
|
||||
copy('package.json');
|
||||
}
|
||||
|
||||
async function copyAdmin(dest) {
|
||||
const adminPath = getPkgPath('strapi-admin');
|
||||
|
||||
await fs.ensureDir(path.resolve(dest, 'config'));
|
||||
await fs.copy(path.resolve(adminPath, 'admin'), path.resolve(dest, 'admin'));
|
||||
await fs.copy(
|
||||
path.resolve(adminPath, 'config', 'layout.js'),
|
||||
path.resolve(dest, 'config', 'layout.js')
|
||||
);
|
||||
}
|
||||
|
||||
async function build({ dir, env }) {
|
||||
console.log('Building your app');
|
||||
const cacheDir = path.resolve(dir, '.cache');
|
||||
|
||||
const pkgJSON = require(path.join(dir, 'package.json'));
|
||||
|
||||
// create .cache dir
|
||||
await fs.ensureDir(cacheDir);
|
||||
|
||||
await copyAdmin(cacheDir);
|
||||
|
||||
const pluginsToCopy = Object.keys(pkgJSON.dependencies).filter(
|
||||
dep =>
|
||||
dep.startsWith('strapi-plugin') &&
|
||||
fs.existsSync(path.resolve(getPkgPath(dep), 'admin', 'src', 'index.js'))
|
||||
);
|
||||
|
||||
pluginsToCopy.forEach(name => copyPlugin(name, cacheDir));
|
||||
|
||||
createPluginsJs(pluginsToCopy, cacheDir);
|
||||
|
||||
const entry = path.resolve(cacheDir, 'admin', 'src', 'app.js');
|
||||
const dest = path.resolve(dir, 'build');
|
||||
|
||||
const config = getWebpackConfig({ entry, dest, env });
|
||||
|
||||
const compiler = webpack(config);
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
compiler.run((err, stats) => {
|
||||
let messages;
|
||||
if (err) {
|
||||
if (!err.message) {
|
||||
return reject(err);
|
||||
}
|
||||
messages = {
|
||||
errors: [err.message],
|
||||
warnings: [],
|
||||
};
|
||||
} else {
|
||||
messages = stats.toJson({ all: false, warnings: true, errors: true });
|
||||
}
|
||||
|
||||
if (messages.errors.length) {
|
||||
// Only keep the first error. Others are often indicative
|
||||
// of the same problem, but confuse the reader with noise.
|
||||
if (messages.errors.length > 1) {
|
||||
messages.errors.length = 1;
|
||||
}
|
||||
return reject(new Error(messages.errors.join('\n\n')));
|
||||
}
|
||||
|
||||
return resolve({
|
||||
stats,
|
||||
warnings: messages.warnings,
|
||||
});
|
||||
});
|
||||
})
|
||||
.then(
|
||||
({ stats, warnings }) => {
|
||||
console.log(chalk.green('Compiled successfully.\n'));
|
||||
},
|
||||
err => {
|
||||
console.log(chalk.red('Failed to compile.\n'));
|
||||
|
||||
const message = err != null && err.message;
|
||||
console.log((message || err) + '\n');
|
||||
console.log();
|
||||
|
||||
process.exit(1);
|
||||
}
|
||||
)
|
||||
.catch(err => {
|
||||
if (err && err.message) {
|
||||
console.log(err.message);
|
||||
}
|
||||
process.exit(1);
|
||||
});
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
build,
|
||||
};
|
||||
@ -9,17 +9,44 @@
|
||||
"scripts": {
|
||||
"test": "echo \"no tests yet\""
|
||||
},
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"@babel/core": "^7.4.3",
|
||||
"@babel/plugin-proposal-async-generator-functions": "^7.2.0",
|
||||
"@babel/plugin-proposal-class-properties": "^7.4.0",
|
||||
"@babel/plugin-syntax-dynamic-import": "^7.2.0",
|
||||
"@babel/plugin-transform-runtime": "^7.4.3",
|
||||
"@babel/polyfill": "^7.4.3",
|
||||
"@babel/preset-env": "^7.4.3",
|
||||
"@babel/preset-react": "^7.0.0",
|
||||
"@babel/runtime": "^7.4.3",
|
||||
"autoprefixer": "^9.5.1",
|
||||
"babel-loader": "^8.0.5",
|
||||
"chalk": "^2.4.2",
|
||||
"classnames": "^2.2.6",
|
||||
"cross-env": "^5.0.5",
|
||||
"crypto": "^1.0.1",
|
||||
"css-loader": "^2.1.1",
|
||||
"duplicate-package-checker-webpack-plugin": "^3.0.0",
|
||||
"file-loader": "^3.0.1",
|
||||
"friendly-errors-webpack-plugin": "^1.7.0",
|
||||
"fs-extra": "^7.0.1",
|
||||
"history": "^4.9.0",
|
||||
"hoist-non-react-statics": "^3.3.0",
|
||||
"html-loader": "^0.5.5",
|
||||
"html-webpack-plugin": "^3.2.0",
|
||||
"image-webpack-loader": "^4.6.0",
|
||||
"immutable": "^3.8.2",
|
||||
"intl": "^1.2.5",
|
||||
"invariant": "^2.2.4",
|
||||
"is-wsl": "^2.0.0",
|
||||
"mini-css-extract-plugin": "^0.6.0",
|
||||
"moment": "^2.24.0",
|
||||
"node-sass": "^4.11.0",
|
||||
"open-browser-webpack-plugin": "^0.0.5",
|
||||
"postcss-loader": "^3.0.0",
|
||||
"postcss-smart-import": "^0.7.6",
|
||||
"precss": "^4.0.0",
|
||||
"prop-types": "^15.7.2",
|
||||
"react": "^16.5.2",
|
||||
"react-copy-to-clipboard": "^5.0.1",
|
||||
@ -42,43 +69,19 @@
|
||||
"redux-saga": "^0.16.0",
|
||||
"remove-markdown": "^0.2.2",
|
||||
"reselect": "^3.0.1",
|
||||
"strapi-helper-plugin": "^3.0.0-beta.0",
|
||||
"styled-components": "^4.2.0",
|
||||
"video-react": "^0.13.2",
|
||||
"@babel/core": "^7.4.3",
|
||||
"@babel/plugin-proposal-async-generator-functions": "^7.2.0",
|
||||
"@babel/plugin-proposal-class-properties": "^7.4.0",
|
||||
"@babel/plugin-syntax-dynamic-import": "^7.2.0",
|
||||
"@babel/plugin-transform-runtime": "^7.4.3",
|
||||
"@babel/preset-env": "^7.4.3",
|
||||
"@babel/preset-react": "^7.0.0",
|
||||
"autoprefixer": "^9.5.1",
|
||||
"babel-loader": "^8.0.5",
|
||||
"cross-env": "^5.0.5",
|
||||
"css-loader": "^2.1.1",
|
||||
"duplicate-package-checker-webpack-plugin": "^3.0.0",
|
||||
"file-loader": "^3.0.1",
|
||||
"friendly-errors-webpack-plugin": "^1.7.0",
|
||||
"html-loader": "^0.5.5",
|
||||
"html-webpack-plugin": "^3.2.0",
|
||||
"image-webpack-loader": "^4.6.0",
|
||||
"mini-css-extract-plugin": "^0.6.0",
|
||||
"node-sass": "^4.11.0",
|
||||
"open-browser-webpack-plugin": "^0.0.5",
|
||||
"postcss-loader": "^3.0.0",
|
||||
"postcss-smart-import": "^0.7.6",
|
||||
"precss": "^4.0.0",
|
||||
"sanitize.css": "^4.1.0",
|
||||
"sass-loader": "^7.1.0",
|
||||
"shelljs": "^0.7.8",
|
||||
"simple-progress-webpack-plugin": "^1.1.2",
|
||||
"strapi-helper-plugin": "^3.0.0-beta.0",
|
||||
"strapi-utils": "^3.0.0-beta.0",
|
||||
"style-loader": "^0.23.1",
|
||||
"styled-components": "^4.2.0",
|
||||
"terser-webpack-plugin": "^1.2.3",
|
||||
"url-loader": "^1.1.2",
|
||||
"video-react": "^0.13.2",
|
||||
"webpack": "^4.29.6",
|
||||
"webpack-bundle-analyzer": "^3.3.2",
|
||||
"webpack-cli": "^3.3.0",
|
||||
"webpack-dashboard": "^3.0.2",
|
||||
"webpack-dev-server": "^3.3.1"
|
||||
},
|
||||
"author": {
|
||||
|
||||
@ -6,221 +6,248 @@ const FriendlyErrorsWebpackPlugin = require('friendly-errors-webpack-plugin');
|
||||
const SimpleProgressWebpackPlugin = require('simple-progress-webpack-plugin');
|
||||
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
|
||||
const HtmlWebpackPlugin = require('html-webpack-plugin');
|
||||
const WebpackDashboard = require('webpack-dashboard/plugin');
|
||||
const DuplicatePckgChecker = require('duplicate-package-checker-webpack-plugin');
|
||||
const TerserPlugin = require('terser-webpack-plugin');
|
||||
const isWsl = require('is-wsl');
|
||||
const alias = require('./webpack.alias.js');
|
||||
|
||||
// TODO: parametrize
|
||||
const URLs = {
|
||||
host: '/admin/',
|
||||
backend: 'http://localhost:1337',
|
||||
publicPath: '/admin/',
|
||||
mode: 'host',
|
||||
};
|
||||
|
||||
const webpackPlugins = ({ dev }) =>
|
||||
dev
|
||||
module.exports = ({ publicPath = '/admin/', entry, dest, env }) => {
|
||||
const isProduction = env === 'production';
|
||||
|
||||
const webpackPlugins = isProduction
|
||||
? [
|
||||
new WebpackDashboard(),
|
||||
new DuplicatePckgChecker({
|
||||
verbose: true,
|
||||
}),
|
||||
new FriendlyErrorsWebpackPlugin(),
|
||||
// new BundleAnalyzerPlugin(),
|
||||
// new OpenBrowserWebpackPlugin({
|
||||
// url: `http://localhost:${PORT}/${URLs.publicPath}`,
|
||||
// }),
|
||||
]
|
||||
: [
|
||||
new webpack.IgnorePlugin({
|
||||
resourceRegExp: /^\.\/locale$/,
|
||||
contextRegExp: /moment$/,
|
||||
}),
|
||||
new MiniCssExtractPlugin({
|
||||
filename: dev ? '[name].css' : '[name].[chunkhash].css',
|
||||
chunkFilename: dev
|
||||
? '[name].chunk.css'
|
||||
: '[name].[chunkhash].chunkhash.css',
|
||||
filename: '[name].[chunkhash].css',
|
||||
chunkFilename: '[name].[chunkhash].chunkhash.css',
|
||||
}),
|
||||
]
|
||||
: [
|
||||
new DuplicatePckgChecker({
|
||||
verbose: true,
|
||||
}),
|
||||
new FriendlyErrorsWebpackPlugin(),
|
||||
];
|
||||
|
||||
// Use style loader in dev mode to optimize compilation
|
||||
const scssLoader = ({ dev }) =>
|
||||
dev
|
||||
? [{ loader: 'style-loader', options: {} }]
|
||||
: [
|
||||
const scssLoader = isProduction
|
||||
? [
|
||||
{
|
||||
loader: MiniCssExtractPlugin.loader,
|
||||
options: {
|
||||
fallback: require.resolve('style-loader'),
|
||||
publicPath: URLs.publicPath,
|
||||
publicPath: publicPath,
|
||||
},
|
||||
},
|
||||
];
|
||||
]
|
||||
: [{ loader: 'style-loader', options: {} }];
|
||||
|
||||
module.exports = ({ entry, dest, dev = false }) => ({
|
||||
mode: dev ? 'development' : 'production',
|
||||
bail: dev ? false : true,
|
||||
devServer: {
|
||||
historyApiFallback: {
|
||||
index: URLs.publicPath,
|
||||
return {
|
||||
mode: isProduction ? 'production' : 'development',
|
||||
bail: isProduction ? true : false,
|
||||
devtool: isProduction ? false : 'cheap-module-source-map',
|
||||
entry,
|
||||
output: {
|
||||
path: dest,
|
||||
publicPath: publicPath,
|
||||
// Utilize long-term caching by adding content hashes (not compilation hashes)
|
||||
// to compiled assets for production
|
||||
filename: isProduction ? '[name].js' : '[name].[chunkhash].js',
|
||||
chunkFilename: isProduction
|
||||
? '[name].chunk.js'
|
||||
: '[name].[chunkhash].chunk.js',
|
||||
},
|
||||
port: 4000,
|
||||
stats: 'minimal',
|
||||
// hot: true,
|
||||
},
|
||||
stats: dev ? 'minimal' : 'errors-only',
|
||||
devtool: 'cheap-module-source-map',
|
||||
entry,
|
||||
output: {
|
||||
path: dest,
|
||||
publicPath: URLs.publicPath,
|
||||
// Utilize long-term caching by adding content hashes (not compilation hashes)
|
||||
// to compiled assets for production
|
||||
filename: dev ? '[name].js' : '[name].[chunkhash].js',
|
||||
chunkFilename: dev ? '[name].chunk.js' : '[name].[chunkhash].chunk.js',
|
||||
},
|
||||
module: {
|
||||
rules: [
|
||||
{
|
||||
test: /\.m?js$/,
|
||||
exclude: /node_modules/,
|
||||
use: {
|
||||
loader: require.resolve('babel-loader'),
|
||||
options: {
|
||||
cacheDirectory: true,
|
||||
cacheCompression: !dev,
|
||||
compact: !dev,
|
||||
presets: [
|
||||
require.resolve('@babel/preset-env'),
|
||||
require.resolve('@babel/preset-react'),
|
||||
],
|
||||
plugins: [
|
||||
require.resolve('@babel/plugin-proposal-class-properties'),
|
||||
require.resolve('@babel/plugin-syntax-dynamic-import'),
|
||||
require.resolve(
|
||||
'@babel/plugin-proposal-async-generator-functions'
|
||||
),
|
||||
[
|
||||
require.resolve('@babel/plugin-transform-runtime'),
|
||||
{
|
||||
helpers: true,
|
||||
regenerator: true,
|
||||
},
|
||||
optimization: {
|
||||
minimize: isProduction,
|
||||
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,
|
||||
// Enable file caching
|
||||
cache: true,
|
||||
sourceMap: false,
|
||||
}),
|
||||
],
|
||||
// splitChunks: {
|
||||
// chunks: 'all',
|
||||
// name: false,
|
||||
// },
|
||||
runtimeChunk: true,
|
||||
},
|
||||
module: {
|
||||
rules: [
|
||||
{
|
||||
test: /\.m?js$/,
|
||||
exclude: /node_modules/,
|
||||
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('@babel/plugin-proposal-class-properties'),
|
||||
require.resolve('@babel/plugin-syntax-dynamic-import'),
|
||||
require.resolve(
|
||||
'@babel/plugin-proposal-async-generator-functions'
|
||||
),
|
||||
[
|
||||
require.resolve('@babel/plugin-transform-runtime'),
|
||||
{
|
||||
helpers: true,
|
||||
regenerator: true,
|
||||
},
|
||||
],
|
||||
],
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
test: /\.css$/,
|
||||
include: /node_modules/,
|
||||
use: [
|
||||
{
|
||||
loader: require.resolve('style-loader'),
|
||||
},
|
||||
{
|
||||
loader: require.resolve('css-loader'),
|
||||
options: {
|
||||
sourceMap: false,
|
||||
{
|
||||
test: /\.css$/,
|
||||
include: /node_modules/,
|
||||
use: [
|
||||
{
|
||||
loader: require.resolve('style-loader'),
|
||||
},
|
||||
},
|
||||
{
|
||||
loader: require.resolve('postcss-loader'),
|
||||
options: {
|
||||
config: {
|
||||
path: path.resolve(__dirname, 'postcss.config.js'),
|
||||
{
|
||||
loader: require.resolve('css-loader'),
|
||||
options: {
|
||||
sourceMap: false,
|
||||
},
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
test: /\.scss$/,
|
||||
use: scssLoader({ dev }).concat([
|
||||
{
|
||||
loader: require.resolve('css-loader'),
|
||||
options: {
|
||||
localIdentName: '[local]__[path][name]__[hash:base64:5]',
|
||||
modules: true,
|
||||
importLoaders: 1,
|
||||
sourceMap: false,
|
||||
},
|
||||
},
|
||||
{
|
||||
loader: require.resolve('postcss-loader'),
|
||||
options: {
|
||||
config: {
|
||||
path: path.resolve(__dirname, 'postcss.config.js'),
|
||||
{
|
||||
loader: require.resolve('postcss-loader'),
|
||||
options: {
|
||||
config: {
|
||||
path: path.resolve(__dirname, 'postcss.config.js'),
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
loader: 'sass-loader',
|
||||
},
|
||||
]),
|
||||
},
|
||||
{
|
||||
test: /\.(svg|eot|otf|ttf|woff|woff2)$/,
|
||||
use: 'file-loader',
|
||||
},
|
||||
{
|
||||
test: /\.(jpg|png|gif)$/,
|
||||
loaders: [
|
||||
require.resolve('file-loader'),
|
||||
{
|
||||
loader: require.resolve('image-webpack-loader'),
|
||||
query: {
|
||||
mozjpeg: {
|
||||
progressive: true,
|
||||
},
|
||||
gifsicle: {
|
||||
interlaced: false,
|
||||
},
|
||||
optipng: {
|
||||
optimizationLevel: 4,
|
||||
},
|
||||
pngquant: {
|
||||
quality: '65-90',
|
||||
speed: 4,
|
||||
},
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
test: /\.html$/,
|
||||
include: [path.join(__dirname, 'src')],
|
||||
use: require.resolve('html-loader'),
|
||||
},
|
||||
{
|
||||
test: /\.(mp4|webm)$/,
|
||||
loader: require.resolve('url-loader'),
|
||||
options: {
|
||||
limit: 10000,
|
||||
],
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
resolve: {
|
||||
alias,
|
||||
symlinks: false,
|
||||
extensions: ['.js', '.jsx', '.react.js'],
|
||||
mainFields: ['browser', 'jsnext:main', 'main'],
|
||||
},
|
||||
plugins: [
|
||||
new HtmlWebpackPlugin({
|
||||
inject: true,
|
||||
template: path.resolve(__dirname, 'index.html'),
|
||||
favicon: path.resolve(__dirname, 'admin/src/favicon.ico'),
|
||||
}),
|
||||
new SimpleProgressWebpackPlugin(),
|
||||
{
|
||||
test: /\.scss$/,
|
||||
use: scssLoader.concat([
|
||||
{
|
||||
loader: require.resolve('css-loader'),
|
||||
options: {
|
||||
localIdentName: '[local]__[path][name]__[hash:base64:5]',
|
||||
modules: true,
|
||||
importLoaders: 1,
|
||||
sourceMap: false,
|
||||
},
|
||||
},
|
||||
{
|
||||
loader: require.resolve('postcss-loader'),
|
||||
options: {
|
||||
config: {
|
||||
path: path.resolve(__dirname, 'postcss.config.js'),
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
loader: 'sass-loader',
|
||||
},
|
||||
]),
|
||||
},
|
||||
{
|
||||
test: /\.(svg|eot|otf|ttf|woff|woff2)$/,
|
||||
use: 'file-loader',
|
||||
},
|
||||
{
|
||||
test: /\.(jpg|png|gif)$/,
|
||||
loaders: [
|
||||
require.resolve('file-loader'),
|
||||
{
|
||||
loader: require.resolve('image-webpack-loader'),
|
||||
query: {
|
||||
mozjpeg: {
|
||||
progressive: true,
|
||||
},
|
||||
gifsicle: {
|
||||
interlaced: false,
|
||||
},
|
||||
optipng: {
|
||||
optimizationLevel: 4,
|
||||
},
|
||||
pngquant: {
|
||||
quality: '65-90',
|
||||
speed: 4,
|
||||
},
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
test: /\.html$/,
|
||||
include: [path.join(__dirname, 'src')],
|
||||
use: require.resolve('html-loader'),
|
||||
},
|
||||
{
|
||||
test: /\.(mp4|webm)$/,
|
||||
loader: require.resolve('url-loader'),
|
||||
options: {
|
||||
limit: 10000,
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
resolve: {
|
||||
alias,
|
||||
symlinks: false,
|
||||
extensions: ['.js', '.jsx', '.react.js'],
|
||||
mainFields: ['browser', 'jsnext:main', 'main'],
|
||||
},
|
||||
plugins: [
|
||||
new HtmlWebpackPlugin({
|
||||
inject: true,
|
||||
template: path.resolve(__dirname, 'index.html'),
|
||||
favicon: path.resolve(__dirname, 'admin/src/favicon.ico'),
|
||||
}),
|
||||
new SimpleProgressWebpackPlugin(),
|
||||
|
||||
new webpack.DefinePlugin({
|
||||
NODE_ENV: JSON.stringify(process.env.NODE_ENV),
|
||||
REMOTE_URL: JSON.stringify(URLs.host),
|
||||
BACKEND_URL: JSON.stringify(URLs.backend),
|
||||
MODE: JSON.stringify(URLs.mode), // Allow us to define the public path for the plugins assets.
|
||||
PUBLIC_PATH: JSON.stringify(URLs.publicPath),
|
||||
}),
|
||||
].concat(webpackPlugins({ dev })),
|
||||
});
|
||||
new webpack.DefinePlugin({
|
||||
'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV),
|
||||
NODE_ENV: JSON.stringify(process.env.NODE_ENV),
|
||||
REMOTE_URL: JSON.stringify(URLs.host),
|
||||
BACKEND_URL: JSON.stringify(URLs.backend),
|
||||
MODE: JSON.stringify(URLs.mode), // Allow us to define the public path for the plugins assets.
|
||||
PUBLIC_PATH: JSON.stringify(publicPath),
|
||||
}),
|
||||
|
||||
...webpackPlugins,
|
||||
],
|
||||
};
|
||||
};
|
||||
|
||||
@ -70,8 +70,7 @@
|
||||
"strapi-generate-plugin": "^3.0.0-beta.0",
|
||||
"strapi-generate-policy": "^3.0.0-beta.0",
|
||||
"strapi-generate-service": "^3.0.0-beta.0",
|
||||
"strapi-utils": "^3.0.0-beta.0",
|
||||
"webpack": "^4.30.0"
|
||||
"strapi-utils": "^3.0.0-beta.0"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "jest --verbose",
|
||||
|
||||
@ -1,162 +1,9 @@
|
||||
const path = require('path');
|
||||
const webpack = require('webpack');
|
||||
const fs = require('fs-extra');
|
||||
const getPkgPath = require('../lib/load/package-path');
|
||||
const chalk = require('chalk');
|
||||
'use strict';
|
||||
|
||||
function createPluginsJs(plugins, dest) {
|
||||
const content = `
|
||||
const injectReducer = require('./utils/injectReducer').default;
|
||||
const injectSaga = require('./utils/injectSaga').default;
|
||||
const { languages } = require('./i18n');
|
||||
const strapiAdmin = require('strapi-admin');
|
||||
|
||||
window.strapi = Object.assign(window.strapi || {}, {
|
||||
node: MODE || 'host',
|
||||
backendURL: BACKEND_URL,
|
||||
languages,
|
||||
currentLanguage:
|
||||
window.localStorage.getItem('strapi-admin-language') ||
|
||||
window.navigator.language ||
|
||||
window.navigator.userLanguage ||
|
||||
'en',
|
||||
injectReducer,
|
||||
injectSaga,
|
||||
});
|
||||
|
||||
module.exports = {
|
||||
${plugins
|
||||
.map(name => {
|
||||
const shortName = name.replace(/^strapi-plugin-/i, '');
|
||||
const req = `require('../../plugins/${name}/admin/src').default`;
|
||||
return `'${shortName}': ${req}`;
|
||||
})
|
||||
.join(',\n')}
|
||||
}
|
||||
`;
|
||||
|
||||
fs.writeFileSync(path.resolve(dest, 'admin', 'src', 'plugins.js'), content);
|
||||
}
|
||||
|
||||
async function copyPlugin(name, dest) {
|
||||
const pkgFilePath = getPkgPath(name);
|
||||
|
||||
const resolveDepPath = (...args) => path.resolve(pkgFilePath, ...args);
|
||||
const resolveDest = (...args) => path.resolve(dest, 'plugins', name, ...args);
|
||||
|
||||
const copy = (...args) => {
|
||||
fs.copySync(resolveDepPath(...args), resolveDest(...args));
|
||||
};
|
||||
|
||||
// Copy the entire admin folder
|
||||
copy('admin');
|
||||
|
||||
// Copy the layout.js if it exists
|
||||
if (fs.existsSync(path.resolve(pkgFilePath, 'config', 'layout.js'))) {
|
||||
fs.ensureDirSync(resolveDest('config'));
|
||||
copy('config', 'layout.js');
|
||||
}
|
||||
|
||||
copy('package.json');
|
||||
}
|
||||
|
||||
async function copyAdmin(dest) {
|
||||
const adminPath = getPkgPath('strapi-admin');
|
||||
|
||||
await fs.ensureDir(path.resolve(dest, 'config'));
|
||||
await fs.copy(path.resolve(adminPath, 'admin'), path.resolve(dest, 'admin'));
|
||||
await fs.copy(
|
||||
path.resolve(adminPath, 'config', 'layout.js'),
|
||||
path.resolve(dest, 'config', 'layout.js')
|
||||
);
|
||||
}
|
||||
|
||||
function printBuildError(err) {
|
||||
const message = err != null && err.message;
|
||||
|
||||
console.log((message || err) + '\n');
|
||||
console.log();
|
||||
}
|
||||
|
||||
|
||||
module.exports = async () => {
|
||||
// set the node env to prod when building
|
||||
process.env.NODE_ENV = 'production';
|
||||
|
||||
console.log('Building your app');
|
||||
const dir = process.cwd();
|
||||
const cacheDir = path.resolve(dir, '.cache');
|
||||
|
||||
const pkgJSON = require(path.join(dir, 'package.json'));
|
||||
|
||||
// create .cache dir
|
||||
await fs.ensureDir(cacheDir);
|
||||
|
||||
await copyAdmin(cacheDir);
|
||||
|
||||
const pluginsToCopy = Object.keys(pkgJSON.dependencies).filter(
|
||||
dep =>
|
||||
dep.startsWith('strapi-plugin') &&
|
||||
fs.existsSync(path.resolve(getPkgPath(dep), 'admin', 'src', 'index.js'))
|
||||
);
|
||||
|
||||
pluginsToCopy.forEach(name => copyPlugin(name, cacheDir));
|
||||
|
||||
createPluginsJs(pluginsToCopy, cacheDir);
|
||||
|
||||
const config = require(path.resolve(
|
||||
getPkgPath('strapi-admin'),
|
||||
'webpack.config.js'
|
||||
))({
|
||||
entry: path.resolve(cacheDir, 'admin', 'src', 'app.js'),
|
||||
dest: path.resolve(dir, 'build'),
|
||||
});
|
||||
|
||||
const compiler = webpack(config);
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
compiler.run((err, stats) => {
|
||||
let messages;
|
||||
if (err) {
|
||||
if (!err.message) {
|
||||
return reject(err);
|
||||
}
|
||||
messages = {
|
||||
errors: [err.message],
|
||||
warnings: [],
|
||||
};
|
||||
} else {
|
||||
messages = stats.toJson({ all: false, warnings: true, errors: true });
|
||||
}
|
||||
|
||||
if (messages.errors.length) {
|
||||
// Only keep the first error. Others are often indicative
|
||||
// of the same problem, but confuse the reader with noise.
|
||||
if (messages.errors.length > 1) {
|
||||
messages.errors.length = 1;
|
||||
}
|
||||
return reject(new Error(messages.errors.join('\n\n')));
|
||||
}
|
||||
|
||||
return resolve({
|
||||
stats,
|
||||
warnings: messages.warnings,
|
||||
});
|
||||
});
|
||||
})
|
||||
.then(
|
||||
() => {
|
||||
console.log(chalk.green('Compiled successfully.\n'));
|
||||
},
|
||||
err => {
|
||||
console.log(chalk.red('Failed to compile.\n'));
|
||||
printBuildError(err);
|
||||
process.exit(1);
|
||||
}
|
||||
)
|
||||
.catch(err => {
|
||||
if (err && err.message) {
|
||||
console.log(err.message);
|
||||
}
|
||||
process.exit(1);
|
||||
});
|
||||
// build script shoul only run in production mode
|
||||
process.env.NODE_ENV = 'production';
|
||||
module.exports = () => {
|
||||
strapiAdmin.build({ dir: process.cwd(), env: 'production' });
|
||||
};
|
||||
|
||||
320
yarn.lock
320
yarn.lock
@ -1565,18 +1565,6 @@
|
||||
npmlog "^4.1.2"
|
||||
write-file-atomic "^2.3.0"
|
||||
|
||||
"@most/multicast@^1.2.5":
|
||||
version "1.3.0"
|
||||
resolved "https://registry.yarnpkg.com/@most/multicast/-/multicast-1.3.0.tgz#e01574840df634478ac3fabd164c6e830fb3b966"
|
||||
integrity sha512-DWH8AShgp5bXn+auGzf5tzPxvpmEvQJd0CNsApOci1LDF4eAEcnw4HQOr2Jaa+L92NbDYFKBSXxll+i7r1ikvw==
|
||||
dependencies:
|
||||
"@most/prelude" "^1.4.0"
|
||||
|
||||
"@most/prelude@^1.4.0":
|
||||
version "1.7.2"
|
||||
resolved "https://registry.yarnpkg.com/@most/prelude/-/prelude-1.7.2.tgz#be4ed406518d4c8c220e45c39fa7251365425b73"
|
||||
integrity sha512-GM5ec7+xpkuXiCMyzhyENgH/xZ8t0nAMDBY0QOsVVD6TrZYjJKUnW1eaI18HHX8W+COWMwWR9c0zoPiBp9+tUg==
|
||||
|
||||
"@mrmlnc/readdir-enhanced@^2.2.1":
|
||||
version "2.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde"
|
||||
@ -2312,11 +2300,6 @@ addressparser@1.0.1:
|
||||
resolved "https://registry.yarnpkg.com/addressparser/-/addressparser-1.0.1.tgz#47afbe1a2a9262191db6838e4fd1d39b40821746"
|
||||
integrity sha1-R6++GiqSYhkdtoOOT9HTm0CCF0Y=
|
||||
|
||||
after@0.8.2:
|
||||
version "0.8.2"
|
||||
resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f"
|
||||
integrity sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=
|
||||
|
||||
agent-base@4, agent-base@^4.1.0, agent-base@^4.2.0, agent-base@~4.2.1:
|
||||
version "4.2.1"
|
||||
resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.2.1.tgz#d89e5999f797875674c07d87f260fc41e83e8ca9"
|
||||
@ -2821,11 +2804,6 @@ array.prototype.flat@^1.2.1:
|
||||
es-abstract "^1.10.0"
|
||||
function-bind "^1.1.1"
|
||||
|
||||
arraybuffer.slice@~0.0.7:
|
||||
version "0.0.7"
|
||||
resolved "https://registry.yarnpkg.com/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz#3bbc4275dd584cc1b10809b89d4e8b63a69e7675"
|
||||
integrity sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==
|
||||
|
||||
arrify@^1.0.0, arrify@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
|
||||
@ -3950,7 +3928,7 @@ babylon@^6.0.18, babylon@^6.17.0, babylon@^6.18.0:
|
||||
resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3"
|
||||
integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==
|
||||
|
||||
backo2@1.0.2, backo2@^1.0.2:
|
||||
backo2@^1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/backo2/-/backo2-1.0.2.tgz#31ab1ac8b129363463e35b3ebb69f4dfcfba7947"
|
||||
integrity sha1-MasayLEpNjRj41s+u2n038+6eUc=
|
||||
@ -3960,21 +3938,11 @@ balanced-match@^1.0.0:
|
||||
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
|
||||
integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c=
|
||||
|
||||
base64-arraybuffer@0.1.5:
|
||||
version "0.1.5"
|
||||
resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz#73926771923b5a19747ad666aa5cd4bf9c6e9ce8"
|
||||
integrity sha1-c5JncZI7Whl0etZmqlzUv5xunOg=
|
||||
|
||||
base64-js@^1.0.2:
|
||||
version "1.3.0"
|
||||
resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3"
|
||||
integrity sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==
|
||||
|
||||
base64id@1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/base64id/-/base64id-1.0.0.tgz#47688cb99bb6804f0e06d3e763b1c32e57d8e6b6"
|
||||
integrity sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=
|
||||
|
||||
base64url@~0.0.4:
|
||||
version "0.0.6"
|
||||
resolved "https://registry.yarnpkg.com/base64url/-/base64url-0.0.6.tgz#9597b36b330db1c42477322ea87ea8027499b82b"
|
||||
@ -4023,13 +3991,6 @@ before-after-hook@^1.4.0:
|
||||
resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-1.4.0.tgz#2b6bf23dca4f32e628fd2747c10a37c74a4b484d"
|
||||
integrity sha512-l5r9ir56nda3qu14nAXIlyq1MmUSs0meCIaFAh8HwkFwP1F8eToOuS3ah2VAHHcY04jaYD7FpJC5JTXHYRbkzg==
|
||||
|
||||
better-assert@~1.0.0:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/better-assert/-/better-assert-1.0.2.tgz#40866b9e1b9e0b55b481894311e68faffaebc522"
|
||||
integrity sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=
|
||||
dependencies:
|
||||
callsite "1.0.0"
|
||||
|
||||
bfj@^6.1.1:
|
||||
version "6.1.1"
|
||||
resolved "https://registry.yarnpkg.com/bfj/-/bfj-6.1.1.tgz#05a3b7784fbd72cfa3c22e56002ef99336516c48"
|
||||
@ -4130,11 +4091,6 @@ black-hole-stream@0.0.1:
|
||||
resolved "https://registry.yarnpkg.com/black-hole-stream/-/black-hole-stream-0.0.1.tgz#33b7a06b9f1e7453d6041b82974481d2152aea42"
|
||||
integrity sha1-M7ega58edFPWBBuCl0SB0hUq6kI=
|
||||
|
||||
blob@0.0.5:
|
||||
version "0.0.5"
|
||||
resolved "https://registry.yarnpkg.com/blob/-/blob-0.0.5.tgz#d680eeef25f8cd91ad533f5b01eed48e64caf683"
|
||||
integrity sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==
|
||||
|
||||
block-stream@*:
|
||||
version "0.0.9"
|
||||
resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a"
|
||||
@ -4655,11 +4611,6 @@ caller-path@^2.0.0:
|
||||
dependencies:
|
||||
caller-callsite "^2.0.0"
|
||||
|
||||
callsite@1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/callsite/-/callsite-1.0.0.tgz#280398e5d664bd74038b6f0905153e6e8af1bc20"
|
||||
integrity sha1-KAOY5dZkvXQDi28JBRU+borxvCA=
|
||||
|
||||
callsites@^0.2.0:
|
||||
version "0.2.0"
|
||||
resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca"
|
||||
@ -4824,7 +4775,7 @@ chalk@2.4.1:
|
||||
escape-string-regexp "^1.0.5"
|
||||
supports-color "^5.3.0"
|
||||
|
||||
chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.4.0, chalk@^2.4.1, chalk@^2.4.2:
|
||||
chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.4.1, chalk@^2.4.2:
|
||||
version "2.4.2"
|
||||
resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
|
||||
integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
|
||||
@ -5233,7 +5184,7 @@ commander@2.3.0:
|
||||
resolved "https://registry.yarnpkg.com/commander/-/commander-2.3.0.tgz#fd430e889832ec353b9acd1de217c11cb3eef873"
|
||||
integrity sha1-/UMOiJgy7DU7ms0d4hfBHLPu+HM=
|
||||
|
||||
commander@^2.11.0, commander@^2.15.1, commander@^2.18.0, commander@^2.19.0, commander@^2.20.0, commander@^2.8.1, commander@~2.20.0:
|
||||
commander@^2.11.0, commander@^2.18.0, commander@^2.19.0, commander@^2.20.0, commander@^2.8.1, commander@~2.20.0:
|
||||
version "2.20.0"
|
||||
resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422"
|
||||
integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==
|
||||
@ -5275,26 +5226,11 @@ compare-versions@3.4.0, compare-versions@^3.2.1:
|
||||
resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-3.4.0.tgz#e0747df5c9cb7f054d6d3dc3e1dbc444f9e92b26"
|
||||
integrity sha512-tK69D7oNXXqUW3ZNo/z7NXTEz22TCF0pTE+YF9cxvaAM9XnkLo1fV621xCLrRR6aevJlKxExkss0vWqUCUpqdg==
|
||||
|
||||
component-bind@1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/component-bind/-/component-bind-1.0.0.tgz#00c608ab7dcd93897c0009651b1d3a8e1e73bbd1"
|
||||
integrity sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=
|
||||
|
||||
component-emitter@1.2.1:
|
||||
version "1.2.1"
|
||||
resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6"
|
||||
integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=
|
||||
|
||||
component-emitter@^1.2.1:
|
||||
version "1.3.0"
|
||||
resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0"
|
||||
integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==
|
||||
|
||||
component-inherit@0.0.3:
|
||||
version "0.0.3"
|
||||
resolved "https://registry.yarnpkg.com/component-inherit/-/component-inherit-0.0.3.tgz#645fc4adf58b72b649d5cae65135619db26ff143"
|
||||
integrity sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=
|
||||
|
||||
compressible@^2.0.0, compressible@~2.0.16:
|
||||
version "2.0.17"
|
||||
resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.17.tgz#6e8c108a16ad58384a977f3a482ca20bff2f38c1"
|
||||
@ -6178,7 +6114,7 @@ dateformat@^3.0.0:
|
||||
resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae"
|
||||
integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==
|
||||
|
||||
debug@*, debug@4, debug@4.1.1, debug@^4.1.0, debug@^4.1.1, debug@~4.1.0:
|
||||
debug@*, debug@4, debug@4.1.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"
|
||||
integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==
|
||||
@ -6852,46 +6788,6 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0:
|
||||
dependencies:
|
||||
once "^1.4.0"
|
||||
|
||||
engine.io-client@~3.3.1:
|
||||
version "3.3.2"
|
||||
resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-3.3.2.tgz#04e068798d75beda14375a264bb3d742d7bc33aa"
|
||||
integrity sha512-y0CPINnhMvPuwtqXfsGuWE8BB66+B6wTtCofQDRecMQPYX3MYUZXFNKDhdrSe3EVjgOu4V3rxdeqN/Tr91IgbQ==
|
||||
dependencies:
|
||||
component-emitter "1.2.1"
|
||||
component-inherit "0.0.3"
|
||||
debug "~3.1.0"
|
||||
engine.io-parser "~2.1.1"
|
||||
has-cors "1.1.0"
|
||||
indexof "0.0.1"
|
||||
parseqs "0.0.5"
|
||||
parseuri "0.0.5"
|
||||
ws "~6.1.0"
|
||||
xmlhttprequest-ssl "~1.5.4"
|
||||
yeast "0.1.2"
|
||||
|
||||
engine.io-parser@~2.1.0, engine.io-parser@~2.1.1:
|
||||
version "2.1.3"
|
||||
resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-2.1.3.tgz#757ab970fbf2dfb32c7b74b033216d5739ef79a6"
|
||||
integrity sha512-6HXPre2O4Houl7c4g7Ic/XzPnHBvaEmN90vtRO9uLmwtRqQmTOw0QMevL1TOfL2Cpu1VzsaTmMotQgMdkzGkVA==
|
||||
dependencies:
|
||||
after "0.8.2"
|
||||
arraybuffer.slice "~0.0.7"
|
||||
base64-arraybuffer "0.1.5"
|
||||
blob "0.0.5"
|
||||
has-binary2 "~1.0.2"
|
||||
|
||||
engine.io@~3.3.1:
|
||||
version "3.3.2"
|
||||
resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-3.3.2.tgz#18cbc8b6f36e9461c5c0f81df2b830de16058a59"
|
||||
integrity sha512-AsaA9KG7cWPXWHp5FvHdDWY3AMWeZ8x+2pUVLcn71qE5AtAzgGbxuclOytygskw8XGmiQafTmnI9Bix3uihu2w==
|
||||
dependencies:
|
||||
accepts "~1.3.4"
|
||||
base64id "1.0.0"
|
||||
cookie "0.3.1"
|
||||
debug "~3.1.0"
|
||||
engine.io-parser "~2.1.0"
|
||||
ws "~6.1.0"
|
||||
|
||||
enhanced-resolve@^4.1.0:
|
||||
version "4.1.0"
|
||||
resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz#41c7e0bfdfe74ac1ffe1e57ad6a5c6c9f3742a7f"
|
||||
@ -8020,11 +7916,6 @@ forwarded@~0.1.2:
|
||||
resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84"
|
||||
integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=
|
||||
|
||||
fp-ts@^1.0.0, fp-ts@^1.0.1:
|
||||
version "1.17.1"
|
||||
resolved "https://registry.yarnpkg.com/fp-ts/-/fp-ts-1.17.1.tgz#8ee8f4aa7107654b837f99f6aef915e655b1ce5e"
|
||||
integrity sha512-B/pJfKxcPbDLzD4FJIQQeDtgPkYpihtS14/pbJJf5FwZ8FX4g3lXVraN4De7PSYOeV7RX/1dpc+Ri7F9N9fYtQ==
|
||||
|
||||
fragment-cache@^0.2.1:
|
||||
version "0.2.1"
|
||||
resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19"
|
||||
@ -8784,7 +8675,7 @@ handle-thing@^2.0.0:
|
||||
resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.0.tgz#0e039695ff50c93fc288557d696f3c1dc6776754"
|
||||
integrity sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==
|
||||
|
||||
handlebars@^4.0.1, handlebars@^4.1.0, handlebars@^4.1.2:
|
||||
handlebars@^4.0.1, handlebars@^4.1.0:
|
||||
version "4.1.2"
|
||||
resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.1.2.tgz#b6b37c1ced0306b221e094fc7aca3ec23b131b67"
|
||||
integrity sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==
|
||||
@ -8833,18 +8724,6 @@ has-ansi@^2.0.0:
|
||||
dependencies:
|
||||
ansi-regex "^2.0.0"
|
||||
|
||||
has-binary2@~1.0.2:
|
||||
version "1.0.3"
|
||||
resolved "https://registry.yarnpkg.com/has-binary2/-/has-binary2-1.0.3.tgz#7776ac627f3ea77250cfc332dab7ddf5e4f5d11d"
|
||||
integrity sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==
|
||||
dependencies:
|
||||
isarray "2.0.1"
|
||||
|
||||
has-cors@1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/has-cors/-/has-cors-1.1.0.tgz#5e474793f7ea9843d1bb99c23eef49ff126fff39"
|
||||
integrity sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=
|
||||
|
||||
has-flag@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa"
|
||||
@ -9594,18 +9473,6 @@ inquirer@^6.2.0, inquirer@^6.2.1, inquirer@^6.2.2:
|
||||
strip-ansi "^5.1.0"
|
||||
through "^2.3.6"
|
||||
|
||||
inspectpack@^4.2.1:
|
||||
version "4.2.1"
|
||||
resolved "https://registry.yarnpkg.com/inspectpack/-/inspectpack-4.2.1.tgz#8e1893feb5293458c9d587cb2a8ec70be2e79dd4"
|
||||
integrity sha512-3kraYZ9tfxNYXzBsRTNvluj1oJKlJ6wkD+TZ6Vk9CNI1SZcQ5H/9yskuq1Yzha1Cn/wEX/Qw+g+tSLIP5iGXhg==
|
||||
dependencies:
|
||||
chalk "^2.4.0"
|
||||
io-ts "^1.0.5"
|
||||
io-ts-reporters "^0.0.20"
|
||||
pify "^3.0.0"
|
||||
semver-compare "^1.0.0"
|
||||
yargs "^11.0.0"
|
||||
|
||||
internal-ip@^4.2.0:
|
||||
version "4.3.0"
|
||||
resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-4.3.0.tgz#845452baad9d2ca3b69c635a137acb9a0dad0907"
|
||||
@ -9673,21 +9540,6 @@ invert-kv@^2.0.0:
|
||||
resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02"
|
||||
integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==
|
||||
|
||||
io-ts-reporters@^0.0.20:
|
||||
version "0.0.20"
|
||||
resolved "https://registry.yarnpkg.com/io-ts-reporters/-/io-ts-reporters-0.0.20.tgz#2b8cbb6a2bc4562dae6917a3a413fa2c9851a644"
|
||||
integrity sha512-ZGyPkto96U8exipqA915ZqxIJsaFLavgZIQOEgg4Pa8qgq1Hl9ZKBtN708ZXPzlAGR/jxofrD4QNT8SHowIDVA==
|
||||
dependencies:
|
||||
fp-ts "^1.0.1"
|
||||
io-ts "^1.0.2"
|
||||
|
||||
io-ts@^1.0.2, io-ts@^1.0.5:
|
||||
version "1.8.5"
|
||||
resolved "https://registry.yarnpkg.com/io-ts/-/io-ts-1.8.5.tgz#2e102f7f518abe17b0f7e7ede0db54a4c4ddc188"
|
||||
integrity sha512-4HzDeg7mTygFjFIKh7ajBSanoVaFryYSFI0ocdwndSWl3eWQXhg3wVR0WI+Li5Vq11TIsoIngQszVbN4dy//9A==
|
||||
dependencies:
|
||||
fp-ts "^1.0.0"
|
||||
|
||||
ioredis@^3.1.2:
|
||||
version "3.2.2"
|
||||
resolved "https://registry.yarnpkg.com/ioredis/-/ioredis-3.2.2.tgz#b7d5ff3afd77bb9718bb2821329b894b9a44c00b"
|
||||
@ -10247,6 +10099,11 @@ is-wsl@^1.1.0:
|
||||
resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d"
|
||||
integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=
|
||||
|
||||
is-wsl@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.0.0.tgz#32849d5bf66413883ce07fada2e924f5505ed493"
|
||||
integrity sha512-58xqeym9YpL60zUX4GlBfSLgV0mOL5JRQ6b8HnmmD4crNxprFdL7JGuo9AgtY38+JqseeA6t+XzYCprTkD4nmg==
|
||||
|
||||
isarray@0.0.1:
|
||||
version "0.0.1"
|
||||
resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
|
||||
@ -10257,11 +10114,6 @@ isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0:
|
||||
resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
|
||||
integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
|
||||
|
||||
isarray@2.0.1:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.1.tgz#a37d94ed9cda2d59865c9f76fe596ee1f338741e"
|
||||
integrity sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=
|
||||
|
||||
isemail@2.x.x:
|
||||
version "2.2.1"
|
||||
resolved "https://registry.yarnpkg.com/isemail/-/isemail-2.2.1.tgz#0353d3d9a62951080c262c2aa0a42b8ea8e9e2a6"
|
||||
@ -12604,15 +12456,6 @@ moo@^0.4.3:
|
||||
resolved "https://registry.yarnpkg.com/moo/-/moo-0.4.3.tgz#3f847a26f31cf625a956a87f2b10fbc013bfd10e"
|
||||
integrity sha512-gFD2xGCl8YFgGHsqJ9NKRVdwlioeW3mI1iqfLNYQOv0+6JRwG58Zk9DIGQgyIaffSYaO1xsKnMaYzzNr1KyIAw==
|
||||
|
||||
most@^1.7.3:
|
||||
version "1.7.3"
|
||||
resolved "https://registry.yarnpkg.com/most/-/most-1.7.3.tgz#406c31a66d73aa16957816fdf96965e27df84f1a"
|
||||
integrity sha512-mk68SM/ptK8WSo3l03raXcWy02Hl7jbzxVozMuvyYxohn4yteh2THhl3+XABF5cunWE8eXHAsLbv+RCJI5y+jg==
|
||||
dependencies:
|
||||
"@most/multicast" "^1.2.5"
|
||||
"@most/prelude" "^1.4.0"
|
||||
symbol-observable "^1.0.2"
|
||||
|
||||
move-concurrently@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92"
|
||||
@ -12804,11 +12647,6 @@ neo-async@^2.5.0, neo-async@^2.6.0:
|
||||
resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.0.tgz#b9d15e4d71c6762908654b5183ed38b753340835"
|
||||
integrity sha512-MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA==
|
||||
|
||||
neo-blessed@^0.2.0:
|
||||
version "0.2.0"
|
||||
resolved "https://registry.yarnpkg.com/neo-blessed/-/neo-blessed-0.2.0.tgz#30f9495fdd104494402b62c6273a9c9b82de4f2b"
|
||||
integrity sha512-C2kC4K+G2QnNQFXUIxTQvqmrdSIzGTX1ZRKeDW6ChmvPRw8rTkTEJzbEQHiHy06d36PCl/yMOCjquCRV8SpSQw==
|
||||
|
||||
nested-error-stacks@^2.0.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-2.1.0.tgz#0fbdcf3e13fe4994781280524f8b96b0cdff9c61"
|
||||
@ -13229,11 +13067,6 @@ object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1:
|
||||
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
|
||||
integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
|
||||
|
||||
object-component@0.0.3:
|
||||
version "0.0.3"
|
||||
resolved "https://registry.yarnpkg.com/object-component/-/object-component-0.0.3.tgz#f0c69aa50efc95b866c186f400a33769cb2f1291"
|
||||
integrity sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=
|
||||
|
||||
object-copy@^0.1.0:
|
||||
version "0.1.0"
|
||||
resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c"
|
||||
@ -13890,20 +13723,6 @@ parse5@^3.0.1:
|
||||
dependencies:
|
||||
"@types/node" "*"
|
||||
|
||||
parseqs@0.0.5:
|
||||
version "0.0.5"
|
||||
resolved "https://registry.yarnpkg.com/parseqs/-/parseqs-0.0.5.tgz#d5208a3738e46766e291ba2ea173684921a8b89d"
|
||||
integrity sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=
|
||||
dependencies:
|
||||
better-assert "~1.0.0"
|
||||
|
||||
parseuri@0.0.5:
|
||||
version "0.0.5"
|
||||
resolved "https://registry.yarnpkg.com/parseuri/-/parseuri-0.0.5.tgz#80204a50d4dbb779bfdc6ebe2778d90e4bce320a"
|
||||
integrity sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=
|
||||
dependencies:
|
||||
better-assert "~1.0.0"
|
||||
|
||||
parseurl@^1.3.2, parseurl@~1.3.2:
|
||||
version "1.3.3"
|
||||
resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4"
|
||||
@ -16855,11 +16674,6 @@ selfsigned@^1.10.4:
|
||||
dependencies:
|
||||
node-forge "0.7.5"
|
||||
|
||||
semver-compare@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc"
|
||||
integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w=
|
||||
|
||||
semver-diff@^2.0.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-2.1.0.tgz#4bbb8437c8d37e4b0cf1a68fd726ec6d645d6d36"
|
||||
@ -17445,52 +17259,6 @@ snyk@^1.99.0:
|
||||
update-notifier "^2.5.0"
|
||||
uuid "^3.3.2"
|
||||
|
||||
socket.io-adapter@~1.1.0:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz#2a805e8a14d6372124dd9159ad4502f8cb07f06b"
|
||||
integrity sha1-KoBeihTWNyEk3ZFZrUUC+MsH8Gs=
|
||||
|
||||
socket.io-client@2.2.0, socket.io-client@^2.1.1:
|
||||
version "2.2.0"
|
||||
resolved "https://registry.yarnpkg.com/socket.io-client/-/socket.io-client-2.2.0.tgz#84e73ee3c43d5020ccc1a258faeeb9aec2723af7"
|
||||
integrity sha512-56ZrkTDbdTLmBIyfFYesgOxsjcLnwAKoN4CiPyTVkMQj3zTUh0QAx3GbvIvLpFEOvQWu92yyWICxB0u7wkVbYA==
|
||||
dependencies:
|
||||
backo2 "1.0.2"
|
||||
base64-arraybuffer "0.1.5"
|
||||
component-bind "1.0.0"
|
||||
component-emitter "1.2.1"
|
||||
debug "~3.1.0"
|
||||
engine.io-client "~3.3.1"
|
||||
has-binary2 "~1.0.2"
|
||||
has-cors "1.1.0"
|
||||
indexof "0.0.1"
|
||||
object-component "0.0.3"
|
||||
parseqs "0.0.5"
|
||||
parseuri "0.0.5"
|
||||
socket.io-parser "~3.3.0"
|
||||
to-array "0.1.4"
|
||||
|
||||
socket.io-parser@~3.3.0:
|
||||
version "3.3.0"
|
||||
resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.3.0.tgz#2b52a96a509fdf31440ba40fed6094c7d4f1262f"
|
||||
integrity sha512-hczmV6bDgdaEbVqhAeVMM/jfUfzuEZHsQg6eOmLgJht6G3mPKMxYm75w2+qhAQZ+4X+1+ATZ+QFKeOZD5riHng==
|
||||
dependencies:
|
||||
component-emitter "1.2.1"
|
||||
debug "~3.1.0"
|
||||
isarray "2.0.1"
|
||||
|
||||
socket.io@^2.1.1:
|
||||
version "2.2.0"
|
||||
resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-2.2.0.tgz#f0f633161ef6712c972b307598ecd08c9b1b4d5b"
|
||||
integrity sha512-wxXrIuZ8AILcn+f1B4ez4hJTPG24iNgxBBDaJfT6MsyOhVYiTXWexGoPkd87ktJG8kQEcL/NBvRi64+9k4Kc0w==
|
||||
dependencies:
|
||||
debug "~4.1.0"
|
||||
engine.io "~3.3.1"
|
||||
has-binary2 "~1.0.2"
|
||||
socket.io-adapter "~1.1.0"
|
||||
socket.io-client "2.2.0"
|
||||
socket.io-parser "~3.3.0"
|
||||
|
||||
sockjs-client@1.3.0:
|
||||
version "1.3.0"
|
||||
resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.3.0.tgz#12fc9d6cb663da5739d3dc5fb6e8687da95cb177"
|
||||
@ -18165,7 +17933,7 @@ symbol-observable@1.0.1:
|
||||
resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.1.tgz#8340fc4702c3122df5d22288f88283f513d3fdd4"
|
||||
integrity sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=
|
||||
|
||||
symbol-observable@^1.0.2, symbol-observable@^1.0.4, symbol-observable@^1.1.0, symbol-observable@^1.2.0:
|
||||
symbol-observable@^1.0.4, symbol-observable@^1.1.0, symbol-observable@^1.2.0:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804"
|
||||
integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==
|
||||
@ -18294,7 +18062,7 @@ terraformer@~1.0.5:
|
||||
optionalDependencies:
|
||||
"@types/geojson" "^1.0.0"
|
||||
|
||||
terser-webpack-plugin@^1.1.0:
|
||||
terser-webpack-plugin@^1.1.0, terser-webpack-plugin@^1.2.3:
|
||||
version "1.2.3"
|
||||
resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.2.3.tgz#3f98bc902fac3e5d0de730869f50668561262ec8"
|
||||
integrity sha512-GOK7q85oAb/5kE12fMuLdn2btOS9OBZn4VsecpHDywoUC/jLhSAKOiYo0ezx7ss2EXPMzyEWFoE0s1WLE+4+oA==
|
||||
@ -18459,11 +18227,6 @@ tmpl@1.0.x:
|
||||
resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1"
|
||||
integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=
|
||||
|
||||
to-array@0.1.4:
|
||||
version "0.1.4"
|
||||
resolved "https://registry.yarnpkg.com/to-array/-/to-array-0.1.4.tgz#17e6c11f73dd4f3d74cda7a4ff3238e9ad9bf890"
|
||||
integrity sha1-F+bBH3PdTz10zaek/zI46a2b+JA=
|
||||
|
||||
to-arraybuffer@^1.0.0:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
|
||||
@ -19189,21 +18952,6 @@ webpack-cli@^3.3.0:
|
||||
v8-compile-cache "^2.0.2"
|
||||
yargs "^12.0.5"
|
||||
|
||||
webpack-dashboard@^3.0.2:
|
||||
version "3.0.5"
|
||||
resolved "https://registry.yarnpkg.com/webpack-dashboard/-/webpack-dashboard-3.0.5.tgz#5b1dd2b736cbef5d1959821e7014e30bb35d22c3"
|
||||
integrity sha512-u7jG+NHND08aDNj58UeJBsmaJGy0IptY4rR/pb/FPgX6JXBQpPnd71Ynj7dJYRrj01Fpvvn+eAJMKlN8xKL8uQ==
|
||||
dependencies:
|
||||
commander "^2.15.1"
|
||||
cross-spawn "^6.0.5"
|
||||
filesize "^3.6.1"
|
||||
handlebars "^4.1.2"
|
||||
inspectpack "^4.2.1"
|
||||
most "^1.7.3"
|
||||
neo-blessed "^0.2.0"
|
||||
socket.io "^2.1.1"
|
||||
socket.io-client "^2.1.1"
|
||||
|
||||
webpack-dev-middleware@^3.6.2:
|
||||
version "3.6.2"
|
||||
resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.6.2.tgz#f37a27ad7c09cd7dc67cd97655413abaa1f55942"
|
||||
@ -19266,7 +19014,7 @@ webpack-sources@^1.1.0, webpack-sources@^1.3.0:
|
||||
source-list-map "^2.0.0"
|
||||
source-map "~0.6.1"
|
||||
|
||||
webpack@^4.29.6, webpack@^4.30.0:
|
||||
webpack@^4.29.6:
|
||||
version "4.30.0"
|
||||
resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.30.0.tgz#aca76ef75630a22c49fcc235b39b4c57591d33a9"
|
||||
integrity sha512-4hgvO2YbAFUhyTdlR4FNyt2+YaYBYHavyzjCMbZzgglo02rlKi/pcsEzwCuCpsn1ryzIl1cq/u8ArIKu8JBYMg==
|
||||
@ -19506,13 +19254,6 @@ ws@^6.0.0:
|
||||
dependencies:
|
||||
async-limiter "~1.0.0"
|
||||
|
||||
ws@~6.1.0:
|
||||
version "6.1.4"
|
||||
resolved "https://registry.yarnpkg.com/ws/-/ws-6.1.4.tgz#5b5c8800afab925e94ccb29d153c8d02c1776ef9"
|
||||
integrity sha512-eqZfL+NE/YQc1/ZynhojeV8q+H050oR8AZ2uIev7RU10svA9ZnJUddHcOUZTJLinZ9yEfdA2kSATS2qZK5fhJA==
|
||||
dependencies:
|
||||
async-limiter "~1.0.0"
|
||||
|
||||
xdg-basedir@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4"
|
||||
@ -19543,11 +19284,6 @@ xmlbuilder@~9.0.1:
|
||||
resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d"
|
||||
integrity sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=
|
||||
|
||||
xmlhttprequest-ssl@~1.5.4:
|
||||
version "1.5.5"
|
||||
resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz#c2876b06168aadc40e57d97e81191ac8f4398b3e"
|
||||
integrity sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=
|
||||
|
||||
xregexp@2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-2.0.0.tgz#52a63e56ca0b84a7f3a5f3d61872f126ad7a5943"
|
||||
@ -19615,13 +19351,6 @@ yargs-parser@^8.1.0:
|
||||
dependencies:
|
||||
camelcase "^4.1.0"
|
||||
|
||||
yargs-parser@^9.0.2:
|
||||
version "9.0.2"
|
||||
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-9.0.2.tgz#9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077"
|
||||
integrity sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc=
|
||||
dependencies:
|
||||
camelcase "^4.1.0"
|
||||
|
||||
yargs@12.0.5, yargs@^12.0.1, yargs@^12.0.2, yargs@^12.0.5:
|
||||
version "12.0.5"
|
||||
resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13"
|
||||
@ -19658,24 +19387,6 @@ yargs@^10.0.3:
|
||||
y18n "^3.2.1"
|
||||
yargs-parser "^8.1.0"
|
||||
|
||||
yargs@^11.0.0:
|
||||
version "11.1.0"
|
||||
resolved "https://registry.yarnpkg.com/yargs/-/yargs-11.1.0.tgz#90b869934ed6e871115ea2ff58b03f4724ed2d77"
|
||||
integrity sha512-NwW69J42EsCSanF8kyn5upxvjp5ds+t3+udGBeTbFnERA+lF541DDpMawzo4z6W/QrzNM18D+BPMiOBibnFV5A==
|
||||
dependencies:
|
||||
cliui "^4.0.0"
|
||||
decamelize "^1.1.1"
|
||||
find-up "^2.1.0"
|
||||
get-caller-file "^1.0.1"
|
||||
os-locale "^2.0.0"
|
||||
require-directory "^2.1.1"
|
||||
require-main-filename "^1.0.1"
|
||||
set-blocking "^2.0.0"
|
||||
string-width "^2.0.0"
|
||||
which-module "^2.0.0"
|
||||
y18n "^3.2.1"
|
||||
yargs-parser "^9.0.2"
|
||||
|
||||
yargs@^13.2.2:
|
||||
version "13.2.2"
|
||||
resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.2.2.tgz#0c101f580ae95cea7f39d927e7770e3fdc97f993"
|
||||
@ -19748,11 +19459,6 @@ yauzl@^2.4.2:
|
||||
buffer-crc32 "~0.2.3"
|
||||
fd-slicer "~1.1.0"
|
||||
|
||||
yeast@0.1.2:
|
||||
version "0.1.2"
|
||||
resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419"
|
||||
integrity sha1-AI4G2AlDIMNy28L47XagymyKxBk=
|
||||
|
||||
ylru@^1.2.0:
|
||||
version "1.2.1"
|
||||
resolved "https://registry.yarnpkg.com/ylru/-/ylru-1.2.1.tgz#f576b63341547989c1de7ba288760923b27fe84f"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user