From 4157e054393c532e0e51605ad2186ac5dce1e19d Mon Sep 17 00:00:00 2001 From: Pedro Nauck Date: Sun, 16 Dec 2018 17:56:08 -0200 Subject: [PATCH] fix(docz-core): use webpack-dev-server instead of webpack-serve --- examples/typescript/tsconfig.json | 3 +- package.json | 3 +- packages/babel-preset-docz/tsconfig.json | 3 +- packages/docz-core/librc.js | 6 +- packages/docz-core/package.json | 8 +- packages/docz-core/src/Bundler.ts | 43 +- packages/docz-core/src/Plugin.ts | 4 + packages/docz-core/src/commands/args.ts | 10 - packages/docz-core/src/commands/build.ts | 3 +- packages/docz-core/src/commands/dev.ts | 23 +- packages/docz-core/src/config/env.ts | 3 - packages/docz-core/src/config/paths.ts | 2 + packages/docz-core/src/types.d.ts | 53 +- packages/docz-core/src/webpack/config.ts | 180 +--- packages/docz-core/src/webpack/devserver.ts | 73 +- packages/docz-core/src/webpack/minifier.ts | 30 + packages/docz-core/src/webpack/plugins.ts | 118 +++ packages/docz-core/src/webpack/server.ts | 39 +- packages/docz-core/templates/index.tpl.js | 1 - packages/docz-core/tsconfig.json | 3 +- packages/docz-theme-default/tsconfig.json | 2 +- packages/docz-utils/tsconfig.json | 3 +- packages/docz/tsconfig.json | 2 +- packages/load-cfg/tsconfig.json | 3 +- packages/rehype-docz/tsconfig.json | 3 +- packages/remark-docz/tsconfig.json | 3 +- yarn.lock | 1055 ++++++++----------- 27 files changed, 724 insertions(+), 955 deletions(-) create mode 100644 packages/docz-core/src/webpack/minifier.ts create mode 100644 packages/docz-core/src/webpack/plugins.ts diff --git a/examples/typescript/tsconfig.json b/examples/typescript/tsconfig.json index 07bd504b8..d0a44ea32 100644 --- a/examples/typescript/tsconfig.json +++ b/examples/typescript/tsconfig.json @@ -4,8 +4,7 @@ "outDir": "dist", "rootDir": "src", "declaration": true, - "types": ["node"], - "typeRoots": ["node_modules/@types"] + "typeRoots": ["../../node_modules/@types", "node_modules/@types"] }, "include": ["src/**/*"], "exclude": ["node_modules/**"] diff --git a/package.json b/package.json index 3ec1adf5b..93f635b7c 100644 --- a/package.json +++ b/package.json @@ -36,12 +36,10 @@ "@commitlint/config-conventional": "^7.1.2", "@commitlint/config-lerna-scopes": "^7.2.1", "@types/chokidar": "^1.7.5", - "@types/connect-history-api-fallback": "^1.3.1", "@types/del": "^3.0.1", "@types/find-up": "^2.1.1", "@types/fs-extra": "^5.0.4", "@types/html-webpack-plugin": "^3.2.0", - "@types/koa": "^2.0.47", "@types/lodash": "^4.14.119", "@types/lodash.flatten": "^4.4.4", "@types/lodash.flattendepth": "^4.7.4", @@ -56,6 +54,7 @@ "@types/resolve": "^0.0.8", "@types/webpack": "^4.4.21", "@types/webpack-chain": "^5.0.0", + "@types/webpack-dev-server": "^3.1.1", "@types/ws": "^6.0.1", "@types/yargs": "^12.0.1", "all-contributors-cli": "^5.4.1", diff --git a/packages/babel-preset-docz/tsconfig.json b/packages/babel-preset-docz/tsconfig.json index a2ce9f5b4..82bc70beb 100644 --- a/packages/babel-preset-docz/tsconfig.json +++ b/packages/babel-preset-docz/tsconfig.json @@ -4,8 +4,7 @@ "outDir": "dist", "rootDir": "src", "declaration": true, - "types": ["node"], - "typeRoots": ["node_modules/@types", "src/types"] + "typeRoots": ["../../node_modules/@types", "node_modules/@types", "src/types"] }, "include": ["src/**/*"], "exclude": ["node_modules/**"] diff --git a/packages/docz-core/librc.js b/packages/docz-core/librc.js index 0bbb86b8b..84af4b57b 100644 --- a/packages/docz-core/librc.js +++ b/packages/docz-core/librc.js @@ -11,12 +11,16 @@ const copy = (files, dest) => ({ }) module.exports = { + plugins: [copy('templates/*.{js,html,json}', 'dist/templates')], external: Object.keys(pkg.dependencies).concat([ 'crypto', + 'react-dev-utils/errorOverlayMiddleware', + 'react-dev-utils/evalSourceMapMiddleware', 'react-dev-utils/FileSizeReporter', 'react-dev-utils/formatWebpackMessages', + 'react-dev-utils/ignoredFiles', 'react-dev-utils/printBuildError', + 'react-dev-utils/WebpackDevServerUtils', 'react-dom/server', ]), - plugins: [copy('templates/*.{js,html,json}', 'dist/templates')], } diff --git a/packages/docz-core/package.json b/packages/docz-core/package.json index d565ead96..fd81f8e1d 100644 --- a/packages/docz-core/package.json +++ b/packages/docz-core/package.json @@ -38,7 +38,6 @@ "chalk": "^2.4.1", "chokidar": "^2.0.4", "common-tags": "^1.8.0", - "connect-history-api-fallback": "^1.5.0", "cpy": "^7.0.1", "deepmerge": "^3.0.0", "detect-port": "^1.3.0", @@ -55,11 +54,7 @@ "happypack": "^5.0.0", "html-minifier": "^3.5.21", "humanize-string": "^1.0.2", - "koa": "^2.6.2", - "koa-connect": "^2.0.1", - "koa-mount": "^4.0.0", "koa-range": "^0.3.0", - "koa-static": "^5.0.0", "load-cfg": "^0.12.16", "lodash.get": "^4.4.2", "mini-html-webpack-plugin": "^0.2.3", @@ -81,10 +76,9 @@ "webpack": "^4.27.1", "webpack-bundle-analyzer": "^3.0.3", "webpack-chain": "^5.0.1", + "webpack-dev-server": "^3.1.10", "webpack-hot-client": "^4.1.1", "webpack-manifest-plugin": "^2.0.4", - "webpack-serve": "^2.0.3", - "webpack-serve-overlay": "^0.3.0", "webpackbar": "^3.1.4", "ws": "^6.1.2", "yargs": "^12.0.5" diff --git a/packages/docz-core/src/Bundler.ts b/packages/docz-core/src/Bundler.ts index 108701e13..8bcec2d0d 100644 --- a/packages/docz-core/src/Bundler.ts +++ b/packages/docz-core/src/Bundler.ts @@ -1,5 +1,6 @@ import * as path from 'path' import logger from 'signale' +import WebpackDevServer from 'webpack-dev-server' import { Plugin } from './Plugin' @@ -7,26 +8,22 @@ import { Config as Args, Env } from './commands/args' import { getBabelConfig, BabelRC } from './utils/babel-config' import * as paths from './config/paths' -export interface Server { - app: any - on: (event: string, cb: (server: any) => void) => void - close: () => void -} - export interface ServerHooks { + onPreCreateApp(app: A): void onCreateApp(app: A): void OnServerListening(server: S): void } export interface BundlerServer { - start(): Promise + start(): Promise } export type ConfigFn = (babelrc: BabelRC) => Promise export type BuildFn = (config: C, dist: string, publicDir: string) => void - -export type ServerFnReturn = BundlerServer | Promise -export type ServerFn = (config: C, hooks: ServerHooks) => ServerFnReturn +export type ServerFn = ( + config: C, + hooks: ServerHooks +) => BundlerServer | Promise export interface BundlerConstructor { args: Args @@ -54,16 +51,23 @@ export class Bundler { this.builder = build } - public async getConfig(env: Env): Promise { + public async mountConfig(env: Env): Promise { + const { plugins } = this.args + const isDev = env !== 'production' + const reduce = Plugin.reduceFromPlugins(plugins) const babelConfig = await getBabelConfig(this.args, env) - const config = this.mountConfig(await this.config(babelConfig), env) + const userConfig = await this.config(babelConfig) + const config = reduce('modifyBundlerConfig', userConfig, isDev, this.args) - return this.args.modifyBundlerConfig(config, !this.isProd(env), this.args) + return this.args.modifyBundlerConfig(config, isDev, this.args) } - public async createServer(config: C): Promise { + public async createApp(config: C): Promise { const run = Plugin.runPluginsMethod(this.args.plugins) const hooks = { + onPreCreateApp(app: A): void { + run('onPreCreateApp', app) + }, onCreateApp(app: A): void { run('onCreateApp', app) }, @@ -90,15 +94,4 @@ export class Bundler { await this.builder(config, dist, publicDir) } - - private mountConfig(config: C, env: Env): any { - const { plugins } = this.args - const reduce = Plugin.reduceFromPlugins(plugins) - - return reduce('modifyBundlerConfig', config, !this.isProd(env), this.args) - } - - private isProd(env: Env): boolean { - return env === 'production' - } } diff --git a/packages/docz-core/src/Plugin.ts b/packages/docz-core/src/Plugin.ts index 7cb062e88..4ae54e066 100644 --- a/packages/docz-core/src/Plugin.ts +++ b/packages/docz-core/src/Plugin.ts @@ -13,6 +13,7 @@ export type ModifyBundlerConfig = ( ) => C export type ModifyBabelRC = (babelrc: BabelRC, args: Config) => BabelRC export type ModifyFiles = (files: string[], args: Config) => string[] +export type onPreCreateApp = (app: A) => void export type onCreateApp = (app: A) => void export type OnServerListening = (server: S) => void export type OnPreBuild = (args: Config) => void @@ -25,6 +26,7 @@ export interface PluginFactory { modifyBundlerConfig?: ModifyBundlerConfig modifyBabelRc?: ModifyBabelRC modifyFiles?: ModifyFiles + onPreCreateApp?: onPreCreateApp onCreateApp?: onCreateApp onServerListening?: OnServerListening onPreBuild?: OnPreBuild @@ -86,6 +88,7 @@ export class Plugin implements PluginFactory { public readonly modifyBundlerConfig?: ModifyBundlerConfig public readonly modifyBabelRc?: ModifyBabelRC public readonly modifyFiles?: ModifyFiles + public readonly onPreCreateApp?: onPreCreateApp public readonly onCreateApp?: onCreateApp public readonly onServerListening?: OnServerListening public readonly onPreBuild?: OnPreBuild @@ -98,6 +101,7 @@ export class Plugin implements PluginFactory { this.modifyBundlerConfig = p.modifyBundlerConfig this.modifyBabelRc = p.modifyBabelRc this.modifyFiles = p.modifyFiles + this.onPreCreateApp = p.onPreCreateApp this.onCreateApp = p.onCreateApp this.onServerListening = p.onServerListening this.onPreBuild = p.onPreBuild diff --git a/packages/docz-core/src/commands/args.ts b/packages/docz-core/src/commands/args.ts index 93052fd3b..3b85701b4 100644 --- a/packages/docz-core/src/commands/args.ts +++ b/packages/docz-core/src/commands/args.ts @@ -64,8 +64,6 @@ export interface Argv { port: number websocketPort: number websocketHost: string - hotPort: number - hotHost: string native: boolean codeSandbox: boolean /* template args */ @@ -179,14 +177,6 @@ export const args = (env: Env) => (yargs: any) => { type: 'number', default: getEnv('docz.port', 3000), }) - yargs.positional('hotHost', { - type: 'string', - default: getEnv('docz.hot.host', '127.0.0.1'), - }) - yargs.positional('hotPort', { - type: 'number', - default: getEnv('docz.hot.port', 60757), - }) yargs.positional('websocketHost', { type: 'string', default: getEnv('docz.websocket.host', '127.0.0.1'), diff --git a/packages/docz-core/src/commands/build.ts b/packages/docz-core/src/commands/build.ts index 3f1110e5e..0f10c0f78 100644 --- a/packages/docz-core/src/commands/build.ts +++ b/packages/docz-core/src/commands/build.ts @@ -15,6 +15,7 @@ export const build = async (args: Config) => { const entries = new Entries(config) const bundler = webpack(config, env) + const bundlerConfig = await bundler.mountConfig(env) const run = Plugin.runPluginsMethod(config.plugins) const dataServer = new DataServer() @@ -25,7 +26,7 @@ export const build = async (args: Config) => { await dataServer.init() await run('onPreBuild', config) - await bundler.build(await bundler.getConfig(env)) + await bundler.build(bundlerConfig) await run('onPostBuild', config) await dataServer.close() } catch (err) { diff --git a/packages/docz-core/src/commands/dev.ts b/packages/docz-core/src/commands/dev.ts index 21cfabff9..713d7562d 100644 --- a/packages/docz-core/src/commands/dev.ts +++ b/packages/docz-core/src/commands/dev.ts @@ -15,20 +15,13 @@ export const dev = async (args: Config) => { const env = envDotProp.get('node.env') const config = await loadConfig(args) const port = await detectPort(config.port) - const hotPort = await detectPort(config.hotPort) const websocketPort = await detectPort(config.websocketPort) - - envDotProp.set( - 'webpack.server.overlay.ws.url', - `ws://${config.hotHost}:${hotPort}` - ) - - const newConfig = { ...config, websocketPort, hotPort, port } + const newConfig = { ...config, websocketPort, port } const bundler = webpack(newConfig, env) const entries = new Entries(config) - const bundlerConfig = await bundler.getConfig(env) - const server = await bundler.createServer(bundlerConfig) + const bundlerConfig = await bundler.mountConfig(env) + const app = await bundler.createApp(bundlerConfig) try { await Entries.writeApp(newConfig, true) @@ -37,12 +30,8 @@ export const dev = async (args: Config) => { process.exit(1) } - const instance = await server.start() - const dataServer = new DataServer( - instance.app.server, - websocketPort, - config.websocketHost - ) + const server = await app.start() + const dataServer = new DataServer(server, websocketPort, config.websocketHost) dataServer.register([ states.config(newConfig), @@ -60,7 +49,7 @@ export const dev = async (args: Config) => { const signals: any = ['SIGINT', 'SIGTERM'] for (const sig of signals) { process.on(sig, async () => { - instance.close() + server.close() process.exit() }) } diff --git a/packages/docz-core/src/config/env.ts b/packages/docz-core/src/config/env.ts index 6817fa4fd..bb4a62457 100644 --- a/packages/docz-core/src/config/env.ts +++ b/packages/docz-core/src/config/env.ts @@ -77,9 +77,6 @@ export const getClientEnvironment = (publicUrl: string) => { // only be used as an escape hatch. Normally you would put images into the `src` // and `import` them in code to get their PUBLIC_URL: publicUrl, - WEBPACK_SERVE_OVERLAY_WS_URL: envDotProp.get( - 'webpack.server.overlay.ws.url' - ), } ) const stringified = { diff --git a/packages/docz-core/src/config/paths.ts b/packages/docz-core/src/config/paths.ts index 59312a67f..c0f26e68f 100644 --- a/packages/docz-core/src/config/paths.ts +++ b/packages/docz-core/src/config/paths.ts @@ -30,6 +30,7 @@ export interface Paths { appPublic: string appNodeModules: string appPackageJson: string + appYarnLock: string ownNodeModules: string getDist: (dest: string) => string @@ -53,6 +54,7 @@ export const cache = path.resolve(docz, 'cache/') export const appPublic = path.resolve(docz, 'public/') export const appNodeModules = resolveApp('node_modules') export const appPackageJson = resolveApp('package.json') +export const appYarnLock = resolveOwn('yarn.lock') export const ownNodeModules = resolveOwn('node_modules') export const getDist = (dest: string) => path.join(root, dest) diff --git a/packages/docz-core/src/types.d.ts b/packages/docz-core/src/types.d.ts index 046310d1f..06ad84c32 100644 --- a/packages/docz-core/src/types.d.ts +++ b/packages/docz-core/src/types.d.ts @@ -1,40 +1,39 @@ -declare module '@mdx-js/mdxast' declare module '@mdx-js/mdx' +declare module '@mdx-js/mdxast' declare module '@sindresorhus/slugify' -declare module 'babylon' +declare module 'art-template' declare module 'babel-traverse' -declare module 'env-dot-prop' +declare module 'babylon' declare module 'chokidar' +declare module 'common-tags' +declare module 'detect-port' +declare module 'env-dot-prop' declare module 'find-up' -declare module 'humanize-string' +declare module 'friendly-errors-webpack-plugin' declare module 'get-pkg-repo' -declare module 'titleize' -declare module 'strip-indent' -declare module 'unist-util-remove' +declare module 'happypack' declare module 'hast-util-to-string' declare module 'html-minifer' -declare module 'mini-html-webpack-plugin' -declare module 'happypack' -declare module 'common-tags' -declare module 'remark-frontmatter' -declare module 'remark-parse/lib/block-elements.json' -declare module 'rehype-slug' -declare module 'rehype-autolink-headings' -declare module 'art-template' -declare module 'friendly-errors-webpack-plugin' -declare module 'webpack-manifest-plugin' -declare module 'terser-webpack-plugin' +declare module 'humanize-string' declare module 'lodash.get' -declare module 'signale' -declare module 'webpackbar' -declare module 'webpack-serve' -declare module 'koa-mount' -declare module 'koa-range' -declare module 'koa-connect' -declare module 'koa-static' -declare module 'detect-port' +declare module 'mini-html-webpack-plugin' +declare module 'p-reduce' +declare module 'react-dev-utils/errorOverlayMiddleware' +declare module 'react-dev-utils/evalSourceMapMiddleware' declare module 'react-dev-utils/FileSizeReporter' declare module 'react-dev-utils/formatWebpackMessages' +declare module 'react-dev-utils/ignoredFiles' declare module 'react-dev-utils/printBuildError' +declare module 'react-dev-utils/WebpackDevServerUtils' +declare module 'rehype-autolink-headings' +declare module 'rehype-slug' +declare module 'remark-frontmatter' +declare module 'remark-parse/lib/block-elements.json' +declare module 'signale' +declare module 'strip-indent' +declare module 'terser-webpack-plugin' +declare module 'titleize' +declare module 'unist-util-remove' declare module 'webpack-bundle-analyzer' -declare module 'p-reduce' +declare module 'webpack-manifest-plugin' +declare module 'webpackbar' diff --git a/packages/docz-core/src/webpack/config.ts b/packages/docz-core/src/webpack/config.ts index aa8273f2f..d89e1551a 100644 --- a/packages/docz-core/src/webpack/config.ts +++ b/packages/docz-core/src/webpack/config.ts @@ -1,26 +1,18 @@ import * as path from 'path' -import { Configuration, IgnorePlugin } from 'webpack' -import webpackBarPlugin from 'webpackbar' +import { Configuration } from 'webpack' import Config from 'webpack-chain' -import { minify } from 'html-minifier' -import miniHtmlWebpack from 'mini-html-webpack-plugin' -import friendlyErrors from 'friendly-errors-webpack-plugin' -import manifestPlugin from 'webpack-manifest-plugin' -import { BundleAnalyzerPlugin } from 'webpack-bundle-analyzer' -import * as TerserPlugin from 'terser-webpack-plugin' -import envDotProp from 'env-dot-prop' import * as loaders from './loaders' +import * as plugins from './plugins' import * as paths from '../config/paths' -import { getClientEnvironment } from '../config/env' import { Config as Args, Env } from '../commands/args' import { BabelRC } from '../utils/babel-config' -import { parseHtml, htmlTemplate } from '../utils/parse-html' +import { minifier } from './minifier' export const createConfig = (args: Args, env: Env) => async ( babelrc: BabelRC ): Promise => { - const { debug, host, port } = args + const { debug } = args const config = new Config() const isProd = env === 'production' @@ -70,62 +62,13 @@ export const createConfig = (args: Args, env: Env) => async ( .when(isProd, outputProd, outputDev) .crossOriginLoading('anonymous') - /** - * optimization - */ - - config.optimization - .runtimeChunk(true) - .nodeEnv(env) - .namedModules(true) - .minimize(isProd) - .splitChunks({ - cacheGroups: { - vendor: { - test: /[\\/]node_modules[\\/]/, - name: 'vendors', - chunks: 'all', - }, - }, - }) - - /** TODO: this is needed because incorrect typing on webpack-chain */ - const optimization: any = config.optimization - - if (isProd) { - optimization.minimizer('js').use(TerserPlugin, [ - { - terserOptions: { - parse: { - ecma: 8, - }, - compress: { - ecma: 5, - warnings: false, - comparisons: false, - }, - mangle: { - safari10: true, - }, - output: { - ecma: 5, - comments: false, - ascii_only: true, - }, - }, - cache: true, - parallel: true, - sourceMap: true, - }, - ]) - } - /** * entries */ config .entry('app') + .add(require.resolve('react-dev-utils/webpackHotDevClient')) .add(require.resolve('@babel/polyfill')) .add(paths.indexJs) @@ -144,10 +87,6 @@ export const createConfig = (args: Args, env: Env) => async ( .add('.mdx') .end() - config.resolve.alias.set('~db', paths.db) - config.resolve.alias.set('~imports', paths.importsJs) - config.resolve.alias.set('react-native$', 'react-native-web') - if (args.typescript) { config.resolve.extensions .prepend('.ts') @@ -155,6 +94,10 @@ export const createConfig = (args: Args, env: Env) => async ( .end() } + config.resolve.alias.set('~db', paths.db) + config.resolve.alias.set('~imports', paths.importsJs) + config.resolve.alias.set('react-native$', 'react-native-web') + config.resolve.modules // prioritize our own .add(paths.ownNodeModules) @@ -169,7 +112,6 @@ export const createConfig = (args: Args, env: Env) => async ( .filter(Boolean), ]) - config.resolveLoader .set('symlinks', true) .modules // prioritize our own @@ -195,89 +137,39 @@ export const createConfig = (args: Args, env: Env) => async ( * plugins */ - if (debug) { - config.plugin('bundle-analyzer').use(BundleAnalyzerPlugin, [ - { - generateStatsFile: true, - openAnalyzer: false, - }, - ]) - } - - config.plugin('assets-plugin').use(manifestPlugin, [ - { - publicPath, - fileName: 'assets.json', - }, - ]) - - const dev = !isProd - const template = await htmlTemplate(args.indexHtml) - - config.plugin('html-plugin').use(miniHtmlWebpack, [ - { - context: { - ...args.htmlContext, - trimWhitespace: true, - }, - template: (ctx: any) => { - const doc = parseHtml({ ctx, dev, template, config: args }) - - return dev - ? doc - : minify(doc, { - removeComments: true, - collapseWhitespace: true, - removeRedundantAttributes: true, - useShortDoctype: true, - removeEmptyAttributes: true, - removeStyleLinkTypeAttributes: true, - keepClosingSlash: true, - minifyJS: true, - minifyCSS: true, - minifyURLs: true, - }) - }, - }, - ]) - - const isLocalhost = host === '127.0.0.1' || host === '0.0.0.0' - const hostname = isLocalhost ? 'localhost' : host + await plugins.html(config, args, env) + plugins.assets(config, args, env) + plugins.ignore(config) + plugins.injections(config, args, env) + plugins.hot(config) + config.when(debug, cfg => plugins.analyzer(cfg)) config.when(!debug && !isProd, cfg => { - cfg.plugin('webpackbar').use(webpackBarPlugin, [ - { - color: '#41b883', - compiledIn: false, - name: 'Client', - }, - ]) - cfg.plugin('friendly-errors').use(friendlyErrors, [ - { - compilationSuccessInfo: { - messages: [ - `Your application is running at http://${hostname}:${port}`, - ], - }, - }, - ]) + plugins.webpackBar(cfg) + plugins.friendlyErrors(cfg, args) }) - config.plugin('injections').use(require('webpack/lib/DefinePlugin'), [ - { - ...getClientEnvironment(base).stringified, - BASE_URL: args.hashRouter ? JSON.stringify('/') : JSON.stringify(base), - NODE_ENV: JSON.stringify(env), - }, - ]) + /** + * optimization + */ - config - .plugin('ignore-plugin') - .use(IgnorePlugin as any, [ - /(regenerate\-unicode\-properties)|(elliptic)/, - /node_modules/, - ]) + config.optimization + .runtimeChunk(true) + .nodeEnv(env) + .namedModules(true) + .minimize(isProd) + .splitChunks({ + cacheGroups: { + vendor: { + test: /[\\/]node_modules[\\/]/, + name: 'vendors', + chunks: 'all', + }, + }, + }) + config.when(isProd, cfg => minifier(cfg)) config.performance.hints(false) + return config.toConfig() as Configuration } diff --git a/packages/docz-core/src/webpack/devserver.ts b/packages/docz-core/src/webpack/devserver.ts index 95000a025..0db37d2a6 100644 --- a/packages/docz-core/src/webpack/devserver.ts +++ b/packages/docz-core/src/webpack/devserver.ts @@ -1,62 +1,41 @@ import * as path from 'path' -import * as fs from 'fs-extra' -import * as Koa from 'koa' -import { Configuration } from 'webpack' -import mount from 'koa-mount' -import range from 'koa-range' -import convert from 'koa-connect' -import serveStatic from 'koa-static' -import history from 'connect-history-api-fallback' +import errorOverlayMiddleware from 'react-dev-utils/errorOverlayMiddleware' +import evalSourceMapMiddleware from 'react-dev-utils/evalSourceMapMiddleware' +import ignoredFiles from 'react-dev-utils/ignoredFiles' import * as paths from '../config/paths' -import { Config } from '../commands/args' +import { Config as Args } from '../commands/args' import { ServerHooks } from '../Bundler' -export const devServerConfig = ( - args: Config, - config: Configuration, - hooks: ServerHooks -) => { - const nonExistentDir = path.resolve(__dirname, 'non-existent') - const logLevel = (level: string) => (args.debug ? 'debug' : level) +export const devServerConfig = (hooks: ServerHooks, args: Args) => { + const srcPath = path.resolve(paths.root, args.src) const publicDir = path.join(paths.root, args.public) return { - config, + publicPath: '/', + compress: true, + clientLogLevel: 'none', + contentBase: publicDir, + watchContentBase: true, + hot: true, + quiet: true, + open: true, + watchOptions: { + ignored: ignoredFiles(srcPath), + }, + overlay: false, host: args.host, port: args.port, - content: [nonExistentDir], - logLevel: logLevel('error'), - devMiddleware: { - logLevel: logLevel('silent'), + historyApiFallback: { + disableDotRule: true, }, - hotClient: { - reload: false, - logLevel: logLevel('error'), - host: args.hotHost, - port: args.hotPort, + before(app: any, server: any): void { + app.use(evalSourceMapMiddleware(server)) + app.use(errorOverlayMiddleware()) + hooks.onPreCreateApp(app) }, - add: (app: Koa, middleware: any, options: any) => { - middleware.webpack() - middleware.content() - - app.use(range) - - if (fs.existsSync(publicDir)) { - app.use( - mount(path.posix.join(args.base, '/public'), serveStatic(publicDir)) - ) - } - - app.use( - convert( - history({ - rewrites: [{ from: /\.html$/, to: '/' }], - }) - ) - ) - - hooks.onCreateApp(app) + after(app: any, server: any): void { + hooks.onCreateApp(app) }, } } diff --git a/packages/docz-core/src/webpack/minifier.ts b/packages/docz-core/src/webpack/minifier.ts new file mode 100644 index 000000000..aaa994d12 --- /dev/null +++ b/packages/docz-core/src/webpack/minifier.ts @@ -0,0 +1,30 @@ +import Config from 'webpack-chain' +import * as TerserPlugin from 'terser-webpack-plugin' + +export const minifier = (config: Config) => { + config.optimization.minimizer('js').use(TerserPlugin, [ + { + terserOptions: { + parse: { + ecma: 8, + }, + compress: { + ecma: 5, + warnings: false, + comparisons: false, + }, + mangle: { + safari10: true, + }, + output: { + ecma: 5, + comments: false, + ascii_only: true, + }, + }, + cache: true, + parallel: true, + sourceMap: true, + }, + ]) +} diff --git a/packages/docz-core/src/webpack/plugins.ts b/packages/docz-core/src/webpack/plugins.ts new file mode 100644 index 000000000..1f52c3d8b --- /dev/null +++ b/packages/docz-core/src/webpack/plugins.ts @@ -0,0 +1,118 @@ +import Config from 'webpack-chain' +import { IgnorePlugin, HotModuleReplacementPlugin } from 'webpack' +import webpackBarPlugin from 'webpackbar' +import friendlyErrorsPlugin from 'friendly-errors-webpack-plugin' +import { minify } from 'html-minifier' +import miniHtmlWebpack from 'mini-html-webpack-plugin' +import manifestPlugin from 'webpack-manifest-plugin' +import { BundleAnalyzerPlugin } from 'webpack-bundle-analyzer' + +import * as paths from '../config/paths' +import { Config as Args, Env } from '../commands/args' +import { getClientEnvironment } from '../config/env' +import { parseHtml, htmlTemplate } from '../utils/parse-html' + +export const assets = (config: Config, args: Args, env: Env) => { + const isProd = env === 'production' + const base = paths.servedPath(args.base) + const publicPath = isProd ? base : '/' + + config.plugin('assets-plugin').use(manifestPlugin, [ + { + publicPath, + fileName: 'assets.json', + }, + ]) +} + +export const analyzer = (config: Config) => { + config.plugin('bundle-analyzer').use(BundleAnalyzerPlugin, [ + { + generateStatsFile: true, + openAnalyzer: false, + }, + ]) +} + +export const friendlyErrors = (config: Config, { host, port }: Args) => { + const isLocalhost = host === '127.0.0.1' || host === '0.0.0.0' + const hostname = isLocalhost ? 'localhost' : host + + config.plugin('friendly-errors').use(friendlyErrorsPlugin, [ + { + compilationSuccessInfo: { + messages: [`Your application is running at http://${hostname}:${port}`], + }, + }, + ]) +} + +export const injections = (config: Config, args: Args, env: Env) => { + const base = paths.servedPath(args.base) + const plugin = require('webpack/lib/DefinePlugin') + + config.plugin('injections').use(plugin, [ + { + ...getClientEnvironment(base).stringified, + BASE_URL: args.hashRouter ? JSON.stringify('/') : JSON.stringify(base), + NODE_ENV: JSON.stringify(env), + }, + ]) +} + +export const ignore = (config: Config) => { + config + .plugin('ignore-plugin') + .use(IgnorePlugin as any, [ + /(regenerate\-unicode\-properties)|(elliptic)/, + /node_modules/, + ]) +} + +export const hot = (config: Config) => { + config + .plugin('hot-module-replacement') + .use(HotModuleReplacementPlugin as any, []) +} + +export const html = async (config: Config, args: Args, env: Env) => { + const dev = env !== 'production' + const template = await htmlTemplate(args.indexHtml) + + config.plugin('html-plugin').use(miniHtmlWebpack, [ + { + context: { + ...args.htmlContext, + trimWhitespace: true, + }, + template: (ctx: any) => { + const doc = parseHtml({ ctx, dev, template, config: args }) + + return dev + ? doc + : minify(doc, { + removeComments: true, + collapseWhitespace: true, + removeRedundantAttributes: true, + useShortDoctype: true, + removeEmptyAttributes: true, + removeStyleLinkTypeAttributes: true, + keepClosingSlash: true, + minifyJS: true, + minifyCSS: true, + minifyURLs: true, + }) + }, + }, + ]) +} + +export const webpackBar = (config: Config) => { + config.plugin('webpackbar').use(webpackBarPlugin, [ + { + color: '#41b883', + compiledIn: false, + name: 'Client', + }, + ]) +} diff --git a/packages/docz-core/src/webpack/server.ts b/packages/docz-core/src/webpack/server.ts index 5cb3e5187..2a92180fa 100644 --- a/packages/docz-core/src/webpack/server.ts +++ b/packages/docz-core/src/webpack/server.ts @@ -1,28 +1,37 @@ +import * as fs from 'fs' import { Configuration as Config } from 'webpack' -import serve from 'webpack-serve' +import WebpackDevServer from 'webpack-dev-server' +import * as paths from '../config/paths' import { devServerConfig } from './devserver' -import { BundlerServer, ServerHooks } from '../Bundler' import { Config as Args } from '../commands/args' -import * as http from 'http' +import { ServerHooks as Hooks } from '../Bundler' +import * as serverUtils from 'react-dev-utils/WebpackDevServerUtils' -type Server = Promise +export const server = (args: Args) => async (config: Config, hooks: Hooks) => { + const useYarn = fs.existsSync(paths.appYarnLock) + const protocol = process.env.HTTPS === 'true' ? 'https' : 'http' + const appName = require(paths.appPackageJson).name + const urls = serverUtils.prepareUrls(protocol, args.host, args.port) + const serverConfig: any = devServerConfig(hooks, args) -export const server = (args: Args) => async ( - config: Config, - hooks: ServerHooks -): Server => { - const devserver = devServerConfig(args, config, hooks) + const compiler = serverUtils.createCompiler( + require('webpack'), + config, + appName, + urls, + useYarn + ) return { start: async () => { - const instance = await serve({}, devserver) - hooks.OnServerListening(instance.app.server) + const devServer = new WebpackDevServer(compiler, serverConfig) + devServer.listen(args.port, args.host, err => { + if (err) return console.log(err) + hooks.OnServerListening(devServer) + }) - return { - ...instance, - close: () => instance.app.stop(), - } + return devServer }, } } diff --git a/packages/docz-core/templates/index.tpl.js b/packages/docz-core/templates/index.tpl.js index 7c4a71482..a828a1acd 100644 --- a/packages/docz-core/templates/index.tpl.js +++ b/packages/docz-core/templates/index.tpl.js @@ -1,4 +1,3 @@ -<% if (!isProd) {%>import 'webpack-serve-overlay'<%}%> import React from 'react' import ReactDOM from 'react-dom' import Root from './root' diff --git a/packages/docz-core/tsconfig.json b/packages/docz-core/tsconfig.json index fb3019bab..da64ecbe6 100644 --- a/packages/docz-core/tsconfig.json +++ b/packages/docz-core/tsconfig.json @@ -4,8 +4,7 @@ "declaration": true, "outDir": "dist", "rootDir": "src", - "types": ["node"], - "typeRoots": ["node_modules/@types", "src/types"] + "typeRoots": ["../../node_modules/@types", "node_modules/@types", "src/types"] }, "include": ["src/**/*"], "exclude": ["node_modules/**"] diff --git a/packages/docz-theme-default/tsconfig.json b/packages/docz-theme-default/tsconfig.json index 5074c095c..641cc2dfa 100644 --- a/packages/docz-theme-default/tsconfig.json +++ b/packages/docz-theme-default/tsconfig.json @@ -7,7 +7,7 @@ "declaration": false, "outDir": "dist", "rootDir": "src", - "typeRoots": ["node_modules/@types", "src/types"], + "typeRoots": ["../../node_modules/@types", "node_modules/@types", "src/types"], "baseUrl": "src", "paths": { "@ui/*": ["components/ui/*"], diff --git a/packages/docz-utils/tsconfig.json b/packages/docz-utils/tsconfig.json index 07bd504b8..d0a44ea32 100644 --- a/packages/docz-utils/tsconfig.json +++ b/packages/docz-utils/tsconfig.json @@ -4,8 +4,7 @@ "outDir": "dist", "rootDir": "src", "declaration": true, - "types": ["node"], - "typeRoots": ["node_modules/@types"] + "typeRoots": ["../../node_modules/@types", "node_modules/@types"] }, "include": ["src/**/*"], "exclude": ["node_modules/**"] diff --git a/packages/docz/tsconfig.json b/packages/docz/tsconfig.json index 7f8befa43..8086bd878 100644 --- a/packages/docz/tsconfig.json +++ b/packages/docz/tsconfig.json @@ -5,7 +5,7 @@ "declaration": true, "outDir": "dist", "rootDir": "src", - "typeRoots": ["node_modules/@types", "src/types"] + "typeRoots": ["../../node_modules/@types", "node_modules/@types", "src/types"] }, "include": ["src/**/*"], "exclude": ["node_modules/**", "templates/**"] diff --git a/packages/load-cfg/tsconfig.json b/packages/load-cfg/tsconfig.json index 07bd504b8..d0a44ea32 100644 --- a/packages/load-cfg/tsconfig.json +++ b/packages/load-cfg/tsconfig.json @@ -4,8 +4,7 @@ "outDir": "dist", "rootDir": "src", "declaration": true, - "types": ["node"], - "typeRoots": ["node_modules/@types"] + "typeRoots": ["../../node_modules/@types", "node_modules/@types"] }, "include": ["src/**/*"], "exclude": ["node_modules/**"] diff --git a/packages/rehype-docz/tsconfig.json b/packages/rehype-docz/tsconfig.json index 0c14e344a..c5c14744c 100644 --- a/packages/rehype-docz/tsconfig.json +++ b/packages/rehype-docz/tsconfig.json @@ -4,8 +4,7 @@ "outDir": "dist", "rootDir": "src", "declaration": true, - "types": ["node"], - "typeRoots": ["node_modules/@types"] + "typeRoots": ["../../node_modules/@types", "node_modules/@types"] }, "include": ["src/**/*", "src/types.d.ts"], "exclude": ["node_modules/**"] diff --git a/packages/remark-docz/tsconfig.json b/packages/remark-docz/tsconfig.json index 0c14e344a..c5c14744c 100644 --- a/packages/remark-docz/tsconfig.json +++ b/packages/remark-docz/tsconfig.json @@ -4,8 +4,7 @@ "outDir": "dist", "rootDir": "src", "declaration": true, - "types": ["node"], - "typeRoots": ["node_modules/@types"] + "typeRoots": ["../../node_modules/@types", "node_modules/@types"] }, "include": ["src/**/*", "src/types.d.ts"], "exclude": ["node_modules/**"] diff --git a/yarn.lock b/yarn.lock index 927b9bb18..089f1787a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1726,24 +1726,6 @@ dependencies: any-observable "^0.3.0" -"@shellscape/koa-send@^4.1.0": - version "4.1.3" - resolved "https://registry.npmjs.org/@shellscape/koa-send/-/koa-send-4.1.3.tgz#1a7c8df21f63487e060b7bfd8ed82e1d3c4ae0b0" - integrity sha512-akNxJetq2ak8aj7U6ys+EYXfWY4k8keleDZJbHWvpuVDj0/PUbbOuPkeBYaie7C6d5fRNLK+0M1Puu8ywTlj3w== - dependencies: - debug "^2.6.3" - http-errors "^1.6.1" - mz "^2.6.0" - resolve-path "^1.3.3" - -"@shellscape/koa-static@^4.0.4": - version "4.0.5" - resolved "https://registry.npmjs.org/@shellscape/koa-static/-/koa-static-4.0.5.tgz#b329b55bfd41056a6981c584ae6bace30b5b6b3b" - integrity sha512-0T2g2NtaO2zhbqR8EBACIGtBy+haodKb8PuJ17RGDXAJwhjkgghUKLrLEnm05zuiwupfYm2APIax6D2TwLoflA== - dependencies: - "@shellscape/koa-send" "^4.1.0" - debug "^2.6.8" - "@sindresorhus/df@^1.0.1": version "1.0.1" resolved "https://registry.npmjs.org/@sindresorhus/df/-/df-1.0.1.tgz#c69b66f52f6fcdd287c807df210305dbaf78500d" @@ -1756,11 +1738,6 @@ dependencies: execa "^0.2.2" -"@sindresorhus/is@^0.7.0": - version "0.7.0" - resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-0.7.0.tgz#9a06f4f137ee84d7df0460c1fdb1135ffa6c50fd" - integrity sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow== - "@sindresorhus/slugify@^0.6.0": version "0.6.0" resolved "https://registry.npmjs.org/@sindresorhus/slugify/-/slugify-0.6.0.tgz#21ea00f4abf43d13a4c39c8174f241ff9b5d12bc" @@ -1874,13 +1851,6 @@ "@svgr/plugin-svgo" "^4.0.3" loader-utils "^1.1.0" -"@types/accepts@*": - version "1.3.5" - resolved "http://registry.npmjs.org/@types/accepts/-/accepts-1.3.5.tgz#c34bec115cfc746e04fe5a059df4ce7e7b391575" - integrity sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ== - dependencies: - "@types/node" "*" - "@types/anymatch@*": version "1.3.0" resolved "https://registry.npmjs.org/@types/anymatch/-/anymatch-1.3.0.tgz#d1d55958d1fccc5527d4aba29fc9c4b942f563ff" @@ -1907,14 +1877,6 @@ resolved "http://registry.npmjs.org/@types/clean-css/-/clean-css-3.4.30.tgz#0052c136f5248002428e3638b37de4a39818641d" integrity sha1-AFLBNvUkgAJCjjY4s33ko5gYZB0= -"@types/connect-history-api-fallback@^1.3.1": - version "1.3.1" - resolved "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.1.tgz#51df9d23f1a3181d6f9a2b36e8b457c1520dff80" - integrity sha512-G8LgUhTrCmxycj6GSTP1rNPYxG8etFr17zfhALnQB919NBrcE5tZpHg0VZYStY3CJn3PcmTSDLbwTaLU4cZwUw== - dependencies: - "@types/express-serve-static-core" "*" - "@types/node" "*" - "@types/connect@*": version "3.4.32" resolved "https://registry.npmjs.org/@types/connect/-/connect-3.4.32.tgz#aa0e9616b9435ccad02bc52b5b454ffc2c70ba28" @@ -1922,16 +1884,6 @@ dependencies: "@types/node" "*" -"@types/cookies@*": - version "0.7.1" - resolved "https://registry.npmjs.org/@types/cookies/-/cookies-0.7.1.tgz#f9f204bd6767d389eea3b87609e30c090c77a540" - integrity sha512-ku6IvbucEyuC6i4zAVK/KnuzWNXdbFd1HkXlNLg/zhWDGTtQT5VhumiPruB/BHW34PWVFwyfwGftDQHfWNxu3Q== - dependencies: - "@types/connect" "*" - "@types/express" "*" - "@types/keygrip" "*" - "@types/node" "*" - "@types/del@^3.0.1": version "3.0.1" resolved "http://registry.npmjs.org/@types/del/-/del-3.0.1.tgz#4712da8c119873cbbf533ad8dbf1baac5940ac5d" @@ -2011,31 +1963,21 @@ "@types/tapable" "*" "@types/webpack" "*" -"@types/http-assert@*": - version "1.3.0" - resolved "https://registry.npmjs.org/@types/http-assert/-/http-assert-1.3.0.tgz#5e932606153da28e1d04f9043f4912cf61fd55dd" - integrity sha512-RObYTpPMo0IY+ZksPtKHsXlYFRxsYIvUqd68e89Y7otDrXsjBy1VgMd53kxVV0JMsNlkCASjllFOlLlhxEv0iw== - -"@types/keygrip@*": - version "1.0.1" - resolved "https://registry.npmjs.org/@types/keygrip/-/keygrip-1.0.1.tgz#ff540462d2fb4d0a88441ceaf27d287b01c3d878" - integrity sha1-/1QEYtL7TQqIRBzq8n0oewHD2Hg= +"@types/http-proxy-middleware@*": + version "0.19.1" + resolved "https://registry.npmjs.org/@types/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz#042559a6c45a8f1694b3119902f92890d6ba0909" + integrity sha512-P4zpWTYFp1qXLjEPnjFVBB1KmR+b9Tt+RnzJxQSW4DTyh1lKDnYZi/Q1DzuupocX+7IYi2W7uIrbNybQg91H6A== + dependencies: + "@types/connect" "*" + "@types/http-proxy" "*" + "@types/node" "*" -"@types/koa-compose@*": - version "3.2.2" - resolved "https://registry.npmjs.org/@types/koa-compose/-/koa-compose-3.2.2.tgz#dc106e000bbf92a3ac900f756df47344887ee847" - integrity sha1-3BBuAAu/kqOskA91bfRzRIh+6Ec= - -"@types/koa@^2.0.47": - version "2.0.47" - resolved "https://registry.npmjs.org/@types/koa/-/koa-2.0.47.tgz#ac7854384a4cc49c16593c86acd99e636a48142a" - integrity sha512-llhCaHNWKFDMx1GCrqwgsWgUO+C4Da0SccbgevHIYOKVxwegEjFzl0WaMWHk3wWx0P0AdqHR+gQYZ2ZAb0ez0Q== - dependencies: - "@types/accepts" "*" - "@types/cookies" "*" - "@types/http-assert" "*" - "@types/keygrip" "*" - "@types/koa-compose" "*" +"@types/http-proxy@*": + version "1.16.2" + resolved "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.16.2.tgz#16cb373b52fff2aa2f389d23d940ed4a642349e5" + integrity sha512-GgqePmC3rlsn1nv+kx5OviPuUBU2omhnlXOaJSXFgOdsTcScNFap+OaCb2ip9Bm4m5L8EOehgT5d9M4uNB90zg== + dependencies: + "@types/events" "*" "@types/node" "*" "@types/lodash.flatten@^4.4.4": @@ -2105,9 +2047,9 @@ integrity sha512-ZBFR7TROLVzCkswA3Fmqq+IIJt62/T7aY/Dmz+QkU7CaW2QFqAitCE8Ups7IzmGhcN1YWMBT4Qcoc07jU9hOJQ== "@types/range-parser@*": - version "1.2.2" - resolved "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.2.tgz#fa8e1ad1d474688a757140c91de6dace6f4abc8d" - integrity sha512-HtKGu+qG1NPvYe1z7ezLsyIaXYyi8SoAVqWDZgDQ8dLrsZvSzUNCwZyfX33uhWxL/SU0ZDQZ3nwZ0nimt507Kw== + version "1.2.3" + resolved "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c" + integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== "@types/react-copy-write@^0.7.1": version "0.7.1" @@ -2217,6 +2159,16 @@ dependencies: "@types/webpack" "*" +"@types/webpack-dev-server@^3.1.1": + version "3.1.1" + resolved "https://registry.npmjs.org/@types/webpack-dev-server/-/webpack-dev-server-3.1.1.tgz#12ae26194b3e1b8a317559592659921f282583c2" + integrity sha512-TnEQPT+OZjWV2kRyNs0RPMDQmBCiLrr/ZhKSgFNF6aM4O/moUAfo2Yu3MIMUjoi3aE/02RH1iVR+Y6mWmXOlVA== + dependencies: + "@types/express" "*" + "@types/http-proxy-middleware" "*" + "@types/serve-static" "*" + "@types/webpack" "*" + "@types/webpack@*": version "4.4.20" resolved "https://registry.npmjs.org/@types/webpack/-/webpack-4.4.20.tgz#b2108461ac00d983ed966b0f781b451d6431a936" @@ -2395,36 +2347,6 @@ "@webassemblyjs/wast-parser" "1.7.11" "@xtuc/long" "4.2.1" -"@webpack-contrib/cli-utils@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@webpack-contrib/cli-utils/-/cli-utils-1.0.2.tgz#9618b68a79f5b3462224e0ecca416cc812b65054" - integrity sha512-ZuV0pTi7x0Xd8MVZPIcDXbu7pg5+sNdrkdpmiW8mVto8+ru2+E0n8Opx36UxlDchBSiI6HouvaYcxmGOIS5yQA== - dependencies: - "@webpack-contrib/schema-utils" "^1.0.0-beta.0" - camelize "^1.0.0" - chalk "^2.4.1" - decamelize "^2.0.0" - loader-utils "^1.1.0" - meant "^1.0.1" - strip-ansi "^4.0.0" - text-table "^0.2.0" - webpack-log "^1.2.0" - -"@webpack-contrib/config-loader@^1.1.1": - version "1.2.1" - resolved "https://registry.npmjs.org/@webpack-contrib/config-loader/-/config-loader-1.2.1.tgz#5b3dd474e207437939d294d200c68b7b00008e04" - integrity sha512-C7XsS6bXft0aRlyt7YCLg+fm97Mb3tWd+i5fVVlEl0NW5HKy8LoXVKj3mB7ECcEHNEEdHhgzg8gxP+Or8cMj8Q== - dependencies: - "@webpack-contrib/schema-utils" "^1.0.0-beta.0" - chalk "^2.1.0" - cosmiconfig "^5.0.2" - is-plain-obj "^1.1.0" - loud-rejection "^1.6.0" - merge-options "^1.0.1" - minimist "^1.2.0" - resolve "^1.6.0" - webpack-log "^1.1.2" - "@webpack-contrib/schema-utils@^1.0.0-beta.0": version "1.0.0-beta.0" resolved "https://registry.npmjs.org/@webpack-contrib/schema-utils/-/schema-utils-1.0.0-beta.0.tgz#bf9638c9464d177b48209e84209e23bee2eb4f65" @@ -2460,7 +2382,7 @@ abbrev@1: resolved "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== -accepts@^1.3.5, accepts@~1.3.5: +accepts@~1.3.4, accepts@~1.3.5: version "1.3.5" resolved "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz#eb777df6011723a3b14e8a72c0805c8e86746bd2" integrity sha1-63d99gEXI6OxTopywIBcjoZ0a9I= @@ -2556,17 +2478,10 @@ ansi-align@^1.1.0: dependencies: string-width "^1.0.1" -ansi-align@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz#c36aeccba563b89ceb556f3690f0b1d9e3547f7f" - integrity sha1-w2rsy6VjuJzrVW82kPCx2eNUf38= - dependencies: - string-width "^2.0.0" - ansi-colors@^3.0.0: - version "3.2.2" - resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.2.tgz#e49349137dbeb6d381b91e607c189915e53265ba" - integrity sha512-kJmcp4PrviBBEx95fC3dYRiC/QSN3EBd0GU1XoNEk/IuUa92rsB6o90zP3w5VAyNznR38Vkc9i8vk5zK6T7TxA== + version "3.2.3" + resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" + integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== ansi-escapes@^3.0.0, ansi-escapes@^3.1.0: version "3.1.0" @@ -2610,11 +2525,6 @@ any-observable@^0.3.0: resolved "https://registry.npmjs.org/any-observable/-/any-observable-0.3.0.tgz#af933475e5806a67d0d7df090dd5e8bef65d119b" integrity sha512-/FQM1EDkTsf63Ub2C6O7GuYFDsSXUwsaZDurV0np41ocwq0jthUAYCmhBX9f+KwlaCgIuWyr/4WlUQUBfKfZog== -any-promise@^1.0.0, any-promise@^1.1.0: - version "1.3.0" - resolved "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" - integrity sha1-q8av7tzqUugJzcA3au0845Y10X8= - anymatch@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" @@ -2623,11 +2533,6 @@ anymatch@^2.0.0: micromatch "^3.1.4" normalize-path "^2.1.1" -app-root-path@^2.0.1: - version "2.1.0" - resolved "https://registry.npmjs.org/app-root-path/-/app-root-path-2.1.0.tgz#98bf6599327ecea199309866e8140368fd2e646a" - integrity sha1-mL9lmTJ+zqGZMJhm6BQDaP0uZGo= - aproba@^1.0.3, aproba@^1.1.1, aproba@^1.1.2: version "1.2.0" resolved "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" @@ -2638,11 +2543,6 @@ aproba@^1.0.3, aproba@^1.1.1, aproba@^1.1.2: resolved "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== -arch@^2.1.0: - version "2.1.1" - resolved "https://registry.npmjs.org/arch/-/arch-2.1.1.tgz#8f5c2731aa35a30929221bb0640eed65175ec84e" - integrity sha512-BLM56aPo9vLLFVa8+/+pJLnrZ7QGGTVHWsCwieAWT9o9K8UeGaQbzZbGoabWLOo2ksBCztoXdqBZBplqLDDCSg== - are-we-there-yet@~1.1.2: version "1.1.5" resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" @@ -2700,6 +2600,11 @@ array-flatten@1.1.1: resolved "http://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= +array-flatten@^2.1.0: + version "2.1.2" + resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" + integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== + array-ify@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" @@ -2841,6 +2746,11 @@ async@1.5.0: resolved "http://registry.npmjs.org/async/-/async-1.5.0.tgz#2796642723573859565633fc6274444bee2f8ce3" integrity sha1-J5ZkJyNXOFlWVjP8YnRES+4vjOM= +async@^1.5.2: + version "1.5.2" + resolved "http://registry.npmjs.org/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" + integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= + async@^2.0.0-rc.1, async@^2.1.4, async@^2.5.0: version "2.6.1" resolved "https://registry.npmjs.org/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610" @@ -3109,6 +3019,11 @@ base@^0.11.1: mixin-deep "^1.2.0" pascalcase "^0.1.1" +batch@0.6.1: + version "0.6.1" + resolved "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" + integrity sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY= + bcrypt-pbkdf@^1.0.0: version "1.0.2" resolved "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" @@ -3208,6 +3123,18 @@ body-parser@1.18.3: raw-body "2.3.3" type-is "~1.6.16" +bonjour@^3.5.0: + version "3.5.0" + resolved "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" + integrity sha1-jokKGD2O6aI5OzhExpGkK897yfU= + dependencies: + array-flatten "^2.1.0" + deep-equal "^1.0.1" + dns-equal "^1.0.0" + dns-txt "^2.0.2" + multicast-dns "^6.0.1" + multicast-dns-service-types "^1.1.0" + boolbase@^1.0.0, boolbase@~1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" @@ -3233,19 +3160,6 @@ boxen@^0.6.0: string-width "^1.0.1" widest-line "^1.0.0" -boxen@^1.2.1: - version "1.3.0" - resolved "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz#55c6c39a8ba58d9c61ad22cd877532deb665a20b" - integrity sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw== - dependencies: - ansi-align "^2.0.0" - camelcase "^4.0.0" - chalk "^2.0.1" - cli-boxes "^1.0.0" - string-width "^2.0.0" - term-size "^1.2.0" - widest-line "^2.0.0" - brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -3388,6 +3302,11 @@ buffer-indexof-polyfill@~1.0.0: resolved "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.1.tgz#a9fb806ce8145d5428510ce72f278bb363a638bf" integrity sha1-qfuAbOgUXVQoUQznLyeLs2OmOL8= +buffer-indexof@^1.0.0: + version "1.1.1" + resolved "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" + integrity sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g== + buffer-shims@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" @@ -3482,14 +3401,6 @@ cache-base@^1.0.1: union-value "^1.0.0" unset-value "^1.0.0" -cache-content-type@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz#035cde2b08ee2129f4a8315ea8f00a00dba1453c" - integrity sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA== - dependencies: - mime-types "^2.1.18" - ylru "^1.2.0" - cache-loader@^1.2.5: version "1.2.5" resolved "https://registry.npmjs.org/cache-loader/-/cache-loader-1.2.5.tgz#9ab15b0ae5f546f376083a695fc1a75f546cb266" @@ -3586,7 +3497,7 @@ camelcase@^3.0.0: resolved "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" integrity sha1-MvxLn82vhF/N9+c7uXysImHwqwo= -camelcase@^4.0.0, camelcase@^4.1.0: +camelcase@^4.1.0: version "4.1.0" resolved "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= @@ -3596,11 +3507,6 @@ camelcase@^5.0.0: resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.0.0.tgz#03295527d58bd3cd4aa75363f35b2e8d97be2f42" integrity sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA== -camelize@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/camelize/-/camelize-1.0.0.tgz#164a5483e630fa4321e5af07020e531831b2609b" - integrity sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs= - caniuse-lite@^1.0.30000884, caniuse-lite@^1.0.30000912: version "1.0.30000914" resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000914.tgz#f802b4667c24d0255f54a95818dcf8e1aa41f624" @@ -3726,7 +3632,7 @@ check-types@^7.3.0: resolved "https://registry.npmjs.org/check-types/-/check-types-7.4.0.tgz#0378ec1b9616ec71f774931a3c6516fad8c152f4" integrity sha512-YbulWHdfP99UfZ73NcUDlNJhEIDgm9Doq9GhpyXbF+7Aegi3CVV7qqMCKTTqJxlvEvnQBp9IA+dxsGN6xK/nSg== -chokidar@^2.0.2, chokidar@^2.0.4: +chokidar@^2.0.0, chokidar@^2.0.2, chokidar@^2.0.4: version "2.0.4" resolved "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz#356ff4e2b0e8e43e322d18a372460bbcf3accd26" integrity sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ== @@ -3837,14 +3743,6 @@ clipboard@^1.5.5: select "^1.1.2" tiny-emitter "^2.0.0" -clipboardy@^1.2.2: - version "1.2.3" - resolved "https://registry.npmjs.org/clipboardy/-/clipboardy-1.2.3.tgz#0526361bf78724c1f20be248d428e365433c07ef" - integrity sha512-2WNImOvCRe6r63Gk9pShfkwXsVtKCroMAevIbiae021mS850UkWPbevxsBz3tnvjZIEGvlwaqCPsw+4ulzNgJA== - dependencies: - arch "^2.1.0" - execa "^0.8.0" - cliui@^3.2.0: version "3.2.0" resolved "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" @@ -3887,11 +3785,6 @@ cmd-shim@^2.0.2: graceful-fs "^4.1.2" mkdirp "~0.5.0" -co@^4.6.0: - version "4.6.0" - resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= - coa@~2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/coa/-/coa-2.0.1.tgz#f3f8b0b15073e35d70263fb1042cb2c023db38af" @@ -4061,6 +3954,26 @@ component-xor@0.0.4: resolved "https://registry.npmjs.org/component-xor/-/component-xor-0.0.4.tgz#c55d83ccc1b94cd5089a4e93fa7891c7263e59aa" integrity sha1-xV2DzMG5TNUImk6T+niRxyY+Wao= +compressible@~2.0.14: + version "2.0.15" + resolved "https://registry.npmjs.org/compressible/-/compressible-2.0.15.tgz#857a9ab0a7e5a07d8d837ed43fe2defff64fe212" + integrity sha512-4aE67DL33dSW9gw4CI2H/yTxqHLNcxp0yS6jB+4h+wr3e43+1z7vm0HU9qXOH8j+qjKuL8+UtkOxYQSMq60Ylw== + dependencies: + mime-db ">= 1.36.0 < 2" + +compression@^1.5.2: + version "1.7.3" + resolved "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz#27e0e176aaf260f7f2c2813c3e440adb9f1993db" + integrity sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg== + dependencies: + accepts "~1.3.5" + bytes "3.0.0" + compressible "~2.0.14" + debug "2.6.9" + on-headers "~1.0.1" + safe-buffer "5.1.2" + vary "~1.1.2" + concat-map@0.0.1: version "0.0.1" resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" @@ -4099,19 +4012,7 @@ configstore@^2.0.0: write-file-atomic "^1.1.2" xdg-basedir "^2.0.0" -configstore@^3.0.0: - version "3.1.2" - resolved "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz#c6f25defaeef26df12dd33414b001fe81a543f8f" - integrity sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw== - dependencies: - dot-prop "^4.1.0" - graceful-fs "^4.1.2" - make-dir "^1.0.0" - unique-string "^1.0.0" - write-file-atomic "^2.0.0" - xdg-basedir "^3.0.0" - -connect-history-api-fallback@^1.5.0: +connect-history-api-fallback@^1.3.0: version "1.5.0" resolved "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz#b06873934bc5e344fef611a196a6faae0aee015a" integrity sha1-sGhzk0vF40T+9hGhlqb6rgruAVo= @@ -4152,12 +4053,12 @@ constants-browserify@^1.0.0: resolved "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= -content-disposition@0.5.2, content-disposition@~0.5.2: +content-disposition@0.5.2: version "0.5.2" resolved "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" integrity sha1-DPaLud318r55YcOoUXjLhdunjLQ= -content-type@^1.0.4, content-type@~1.0.4: +content-type@~1.0.4: version "1.0.4" resolved "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== @@ -4288,14 +4189,6 @@ cookie@0.3.1: resolved "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" integrity sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s= -cookies@~0.7.1: - version "0.7.3" - resolved "https://registry.npmjs.org/cookies/-/cookies-0.7.3.tgz#7912ce21fbf2e8c2da70cf1c3f351aecf59dadfa" - integrity sha512-+gixgxYSgQLTaTIilDHAdlNPZDENDQernEMiIcZpYYP14zgHsCt4Ce1FEjFtcp6GefhozebB6orvhAAWx/IS0A== - dependencies: - depd "~1.1.2" - keygrip "~1.0.3" - copy-concurrently@^1.0.0: version "1.0.5" resolved "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" @@ -4399,7 +4292,7 @@ create-ecdh@^4.0.0: bn.js "^4.1.0" elliptic "^6.0.0" -create-error-class@^3.0.0, create-error-class@^3.0.1: +create-error-class@^3.0.1: version "3.0.2" resolved "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6" integrity sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y= @@ -4504,11 +4397,6 @@ crypto-browserify@^3.11.0: randombytes "^2.0.0" randomfill "^1.0.3" -crypto-random-string@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e" - integrity sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4= - css-animation@^1.3.2: version "1.5.0" resolved "https://registry.npmjs.org/css-animation/-/css-animation-1.5.0.tgz#c96b9097a5ef74a7be8480b45cc44e4ec6ca2bf5" @@ -4671,21 +4559,21 @@ debounce@^1.1.0: resolved "https://registry.npmjs.org/debounce/-/debounce-1.2.0.tgz#44a540abc0ea9943018dc0eaa95cce87f65cd131" integrity sha512-mYtLl1xfZLi1m4RtQYlZgJUNQjl4ZxVnHzIR8nLLgi4q1YT8o/WM+MK/f8yfcc9s5Ir5zRaPZyZU6xs1Syoocg== -debug@2.6.9, debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.3, debug@^2.6.6, debug@^2.6.8, debug@^2.6.9: +debug@2.6.9, debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.6, debug@^2.6.8, debug@^2.6.9: version "2.6.9" resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@3.1.0, debug@~3.1.0: +debug@3.1.0, debug@=3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== dependencies: ms "2.0.0" -debug@^3.1.0: +debug@^3.1.0, debug@^3.2.5: version "3.2.6" resolved "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== @@ -4748,7 +4636,7 @@ deep-assign@^2.0.0: dependencies: is-obj "^1.0.0" -deep-equal@~1.0.1: +deep-equal@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU= @@ -4780,6 +4668,14 @@ default-compare@^1.0.0: dependencies: kind-of "^5.0.2" +default-gateway@^2.6.0: + version "2.7.2" + resolved "https://registry.npmjs.org/default-gateway/-/default-gateway-2.7.2.tgz#b7ef339e5e024b045467af403d50348db4642d0f" + integrity sha512-lAc4i9QJR0YHSDFdzeBQKfZ1SRDG3hsJNEkrpcZa8QhBfidLAilT60BDEIVUUGqosFp425KOgB3uYqcnQrWafQ== + dependencies: + execa "^0.10.0" + ip-regex "^2.1.0" + defaults@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" @@ -4843,7 +4739,7 @@ delegates@^1.0.0: resolved "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= -depd@^1.1.2, depd@~1.1.2: +depd@~1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= @@ -4856,7 +4752,7 @@ des.js@^1.0.0: inherits "^2.0.1" minimalistic-assert "^1.0.0" -destroy@^1.0.4, destroy@~1.0.4: +destroy@~1.0.4: version "1.0.4" resolved "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= @@ -4948,6 +4844,26 @@ dir-glob@^2.0.0: arrify "^1.0.1" path-type "^3.0.0" +dns-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" + integrity sha1-s55/HabrCnW6nBcySzR1PEfgZU0= + +dns-packet@^1.3.1: + version "1.3.1" + resolved "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a" + integrity sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg== + dependencies: + ip "^1.1.0" + safe-buffer "^5.0.1" + +dns-txt@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" + integrity sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY= + dependencies: + buffer-indexof "^1.0.0" + doctrine@^2.0.0, doctrine@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" @@ -5047,7 +4963,7 @@ dot-prop@^3.0.0: dependencies: is-obj "^1.0.0" -dot-prop@^4.1.0, dot-prop@^4.2.0: +dot-prop@^4.2.0: version "4.2.0" resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57" integrity sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ== @@ -5206,11 +5122,6 @@ error-ex@^1.2.0, error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -error-inject@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/error-inject/-/error-inject-1.0.0.tgz#e2b3d91b54aed672f309d950d154850fa11d4f37" - integrity sha1-4rPZG1Su1nLzCdlQ0VSFD6EdTzc= - error-stack-parser@^2.0.0: version "2.0.2" resolved "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.0.2.tgz#4ae8dbaa2bf90a8b450707b9149dcabca135520d" @@ -5276,7 +5187,7 @@ es6-symbol@^3.1.1, es6-symbol@~3.1.1: d "1" es5-ext "~0.10.14" -escape-html@^1.0.3, escape-html@~1.0.3: +escape-html@~1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= @@ -5422,6 +5333,11 @@ etag@~1.8.1: resolved "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= +eventemitter3@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.0.tgz#090b4d6cdbd645ed10bf750d4b5407942d7ba163" + integrity sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA== + events@^1.0.0: version "1.1.1" resolved "http://registry.npmjs.org/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" @@ -5434,6 +5350,13 @@ eventsource@0.1.6: dependencies: original ">=0.0.5" +eventsource@^1.0.7: + version "1.0.7" + resolved "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz#8fbc72c93fcd34088090bc0a4e64f4b5cee6d8d0" + integrity sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ== + dependencies: + original "^1.0.0" + evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" @@ -5479,19 +5402,6 @@ execa@^0.7.0: signal-exit "^3.0.0" strip-eof "^1.0.0" -execa@^0.8.0: - version "0.8.0" - resolved "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz#d8d76bbc1b55217ed190fd6dd49d3c774ecfc8da" - integrity sha1-2NdrvBtVIX7RkP1t1J08d07PyNo= - dependencies: - cross-spawn "^5.0.1" - get-stream "^3.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - execa@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" @@ -5551,7 +5461,7 @@ expand-tilde@^2.0.0, expand-tilde@^2.0.2: dependencies: homedir-polyfill "^1.0.1" -express@^4.16.3: +express@^4.16.2, express@^4.16.3: version "4.16.4" resolved "https://registry.npmjs.org/express/-/express-4.16.4.tgz#fddef61926109e24c515ea97fd2f1bdbf62df12e" integrity sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg== @@ -5695,7 +5605,14 @@ fault@^1.0.1: dependencies: format "^0.2.2" -faye-websocket@~0.11.0: +faye-websocket@^0.10.0: + version "0.10.0" + resolved "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" + integrity sha1-TkkvjQTftviQA1B/btvy1QHnxvQ= + dependencies: + websocket-driver ">=0.5.1" + +faye-websocket@~0.11.0, faye-websocket@~0.11.1: version "0.11.1" resolved "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38" integrity sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg= @@ -5917,6 +5834,13 @@ flush-write-stream@^1.0.0: inherits "^2.0.1" readable-stream "^2.0.4" +follow-redirects@^1.0.0: + version "1.5.10" + resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz#7b7a9f9aea2fdff36786a94ff643ed07f4ff5e2a" + integrity sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ== + dependencies: + debug "=3.1.0" + for-in@^0.1.3: version "0.1.8" resolved "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" @@ -5965,7 +5889,7 @@ fragment-cache@^0.2.1: dependencies: map-cache "^0.2.2" -fresh@0.5.2, fresh@~0.5.2: +fresh@0.5.2: version "0.5.2" resolved "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= @@ -6425,23 +6349,6 @@ got@^5.0.0: unzip-response "^1.0.2" url-parse-lax "^1.0.0" -got@^6.7.1: - version "6.7.1" - resolved "http://registry.npmjs.org/got/-/got-6.7.1.tgz#240cd05785a9a18e561dc1b44b41c763ef1e8db0" - integrity sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA= - dependencies: - create-error-class "^3.0.0" - duplexer3 "^0.1.4" - get-stream "^3.0.0" - is-redirect "^1.0.0" - is-retry-allowed "^1.0.0" - is-stream "^1.0.0" - lowercase-keys "^1.0.0" - safe-buffer "^5.0.1" - timed-out "^4.0.0" - unzip-response "^2.0.1" - url-parse-lax "^1.0.0" - got@^7.1.0: version "7.1.0" resolved "https://registry.npmjs.org/got/-/got-7.1.0.tgz#05450fd84094e6bbea56f451a43a9c289166385a" @@ -6480,6 +6387,11 @@ gzip-size@5.0.0, gzip-size@^5.0.0: duplexer "^0.1.1" pify "^3.0.0" +handle-thing@^1.2.5: + version "1.2.5" + resolved "http://registry.npmjs.org/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" + integrity sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ= + handlebars@^4.0.2: version "4.0.12" resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.0.12.tgz#2c15c8a96d46da5e266700518ba8cb8d919d5bc5" @@ -6718,7 +6630,17 @@ hotkeys-js@^3.4.1: resolved "https://registry.npmjs.org/hotkeys-js/-/hotkeys-js-3.4.1.tgz#231234030ed677449a0c5924becf8c58855d7ead" integrity sha512-TgztcBNZlzwadbcU9KJNcHnpnI0o+ynpS+oQfeuz7lKC0B4rCkj5QaXRfnSmipsFC9QUIr6Bgu0/wl3C0kmJUA== -html-entities@^1.2.1: +hpack.js@^2.1.6: + version "2.1.6" + resolved "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" + integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= + dependencies: + inherits "^2.0.1" + obuf "^1.0.0" + readable-stream "^2.0.1" + wbuf "^1.1.0" + +html-entities@^1.2.0: version "1.2.1" resolved "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" integrity sha1-DfKTUfByEWNRXfueVUPl9u7VFi8= @@ -6746,19 +6668,16 @@ htmlparser2@~3.3.0: domutils "1.1" readable-stream "1.0" -http-assert@^1.3.0: - version "1.4.0" - resolved "https://registry.npmjs.org/http-assert/-/http-assert-1.4.0.tgz#0e550b4fca6adf121bbeed83248c17e62f593a9a" - integrity sha512-tPVv62a6l3BbQoM/N5qo969l0OFxqpnQzNUPeYfTP6Spo4zkgWeDBD1D5thI7sDLg7jCCihXTLB0X8UtdyAy8A== - dependencies: - deep-equal "~1.0.1" - http-errors "~1.7.1" - http-cache-semantics@^3.8.1: version "3.8.1" resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2" integrity sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w== +http-deceiver@^1.2.7: + version "1.2.7" + resolved "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" + integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= + http-errors@1.6.3, http-errors@~1.6.2, http-errors@~1.6.3: version "1.6.3" resolved "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" @@ -6769,17 +6688,6 @@ http-errors@1.6.3, http-errors@~1.6.2, http-errors@~1.6.3: setprototypeof "1.1.0" statuses ">= 1.4.0 < 2" -http-errors@^1.6.1, http-errors@^1.6.3, http-errors@~1.7.1: - version "1.7.1" - resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.7.1.tgz#6a4ffe5d35188e1c39f872534690585852e1f027" - integrity sha512-jWEUgtZWGSMba9I1N3gc1HmvpBUaNC9vDdA46yScAdp+C5rdEuKWUBLWTQpW9FwSWSbYYs++b6SDCxf9UEJzfw== - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.5.0 < 2" - toidentifier "1.0.0" - http-parser-js@>=0.4.0: version "0.5.0" resolved "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.0.tgz#d65edbede84349d0dc30320815a15d39cc3cbbd8" @@ -6793,6 +6701,25 @@ http-proxy-agent@^2.1.0: agent-base "4" debug "3.1.0" +http-proxy-middleware@~0.18.0: + version "0.18.0" + resolved "http://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz#0987e6bb5a5606e5a69168d8f967a87f15dd8aab" + integrity sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q== + dependencies: + http-proxy "^1.16.2" + is-glob "^4.0.0" + lodash "^4.17.5" + micromatch "^3.1.9" + +http-proxy@^1.16.2: + version "1.17.0" + resolved "https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz#7ad38494658f84605e2f6db4436df410f4e5be9a" + integrity sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g== + dependencies: + eventemitter3 "^3.0.0" + follow-redirects "^1.0.0" + requires-port "^1.0.0" + http-signature@~1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" @@ -6911,11 +6838,6 @@ import-from@2.1.0: dependencies: resolve-from "^3.0.0" -import-lazy@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" - integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM= - import-local@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz#5e4ffdc03f4fe6c009c6729beb29631c2f8227bc" @@ -6924,6 +6846,14 @@ import-local@^1.0.0: pkg-dir "^2.0.0" resolve-cwd "^2.0.0" +import-local@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" + integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ== + dependencies: + pkg-dir "^3.0.0" + resolve-cwd "^2.0.0" + imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" @@ -7049,6 +6979,14 @@ inquirer@^6.1.0, inquirer@^6.2.0: strip-ansi "^5.0.0" through "^2.3.6" +internal-ip@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/internal-ip/-/internal-ip-3.0.1.tgz#df5c99876e1d2eb2ea2d74f520e3f669a00ece27" + integrity sha512-NXXgESC2nNVtU+pqmC9e6R8B1GpKxzsAQhffvh5AL79qKnodd+L7tnEQmTiUAVngqLalPbSqRA7XGIEL5nCd0Q== + dependencies: + default-gateway "^2.6.0" + ipaddr.js "^1.5.2" + interpret@^1.0.0: version "1.1.0" resolved "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614" @@ -7071,7 +7009,12 @@ invert-kv@^2.0.0: resolved "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== -ip@^1.1.5: +ip-regex@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" + integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= + +ip@^1.1.0, ip@^1.1.5: version "1.1.5" resolved "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= @@ -7081,6 +7024,11 @@ ipaddr.js@1.8.0: resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz#eaa33d6ddd7ace8f7f6fe0c9ca0440e706738b1e" integrity sha1-6qM9bd16zo9/b+DJygRA5wZzix4= +ipaddr.js@^1.5.2: + version "1.8.1" + resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.1.tgz#fa4b79fa47fd3def5e3b159825161c0a519c9427" + integrity sha1-+kt5+kf9Pe9eOxWYJRYcClGclCc= + is-accessor-descriptor@^0.1.6: version "0.1.6" resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" @@ -7249,11 +7197,6 @@ is-fullwidth-code-point@^2.0.0: resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= -is-generator-function@^1.0.7: - version "1.0.7" - resolved "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.7.tgz#d2132e529bb0000a7f80794d4bdf5cd5e5813522" - integrity sha512-YZc5EwyO4f2kWCax7oegfuSr9mFz1ZvieNYBEjmukLxgXfBUbxAWGVF7GZf0zidYtoBl3WvC07YK0wT76a+Rtw== - is-glob@^2.0.0, is-glob@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" @@ -7280,14 +7223,6 @@ is-hexadecimal@^1.0.0: resolved "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.2.tgz#b6e710d7d07bb66b98cb8cece5c9b4921deeb835" integrity sha512-but/G3sapV3MNyqiDBLrOi4x8uCIw0RY3o/Vb5GT0sMFHrVV7731wFSVy41T5FO1og7G0gXLJh0MkgPRouko/A== -is-installed-globally@^0.1.0: - version "0.1.0" - resolved "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz#0dfd98f5a9111716dd535dda6492f67bf3d25a80" - integrity sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA= - dependencies: - global-dirs "^0.1.0" - is-path-inside "^1.0.0" - is-keyword-js@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/is-keyword-js/-/is-keyword-js-1.0.3.tgz#ac30dcf35b671f4b27b17f5cb57235126021132d" @@ -7694,11 +7629,6 @@ jsx-ast-utils@^2.0.1: dependencies: array-includes "^3.0.3" -keygrip@~1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/keygrip/-/keygrip-1.0.3.tgz#399d709f0aed2bab0a059e0cdd3a5023a053e1dc" - integrity sha512-/PpesirAIfaklxUzp4Yb7xBper9MwP6hNRA6BGGUFCgbJ+BM5CKBtsoxinNXkLHAr+GXS1/lSlF2rP7cv5Fl+g== - killable@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892" @@ -7742,44 +7672,6 @@ klaw@^1.0.0: optionalDependencies: graceful-fs "^4.1.9" -koa-compose@^3.0.0: - version "3.2.1" - resolved "https://registry.npmjs.org/koa-compose/-/koa-compose-3.2.1.tgz#a85ccb40b7d986d8e5a345b3a1ace8eabcf54de7" - integrity sha1-qFzLQLfZhtjlo0Wzoazo6rz1Tec= - dependencies: - any-promise "^1.1.0" - -koa-compose@^4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/koa-compose/-/koa-compose-4.1.0.tgz#507306b9371901db41121c812e923d0d67d3e877" - integrity sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw== - -koa-connect@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/koa-connect/-/koa-connect-2.0.1.tgz#2acad159c33862de1d73aa4562a48de13f137c0f" - integrity sha512-MNaiK5og8aj4I+tx8l+jSW24QX7aaQyZemV821VPY+AOJ8XUbrrAj9AzrpZKDQp5jTmylAZW2sXhTz2+SRqZog== - -koa-convert@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/koa-convert/-/koa-convert-1.2.0.tgz#da40875df49de0539098d1700b50820cebcd21d0" - integrity sha1-2kCHXfSd4FOQmNFwC1CCDOvNIdA= - dependencies: - co "^4.6.0" - koa-compose "^3.0.0" - -koa-is-json@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/koa-is-json/-/koa-is-json-1.0.0.tgz#273c07edcdcb8df6a2c1ab7d59ee76491451ec14" - integrity sha1-JzwH7c3Ljfaiwat9We52SRRR7BQ= - -koa-mount@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/koa-mount/-/koa-mount-4.0.0.tgz#e0265e58198e1a14ef889514c607254ff386329c" - integrity sha512-rm71jaA/P+6HeCpoRhmCv8KVBIi0tfGuO/dMKicbQnQW/YJntJ6MnnspkodoA4QstMVEZArsCphmd0bJEtoMjQ== - dependencies: - debug "^4.0.1" - koa-compose "^4.1.0" - koa-range@^0.3.0: version "0.3.0" resolved "https://registry.npmjs.org/koa-range/-/koa-range-0.3.0.tgz#3588e3496473a839a1bd264d2a42b1d85bd7feac" @@ -7787,67 +7679,6 @@ koa-range@^0.3.0: dependencies: stream-slice "^0.1.2" -koa-send@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/koa-send/-/koa-send-5.0.0.tgz#5e8441e07ef55737734d7ced25b842e50646e7eb" - integrity sha512-90ZotV7t0p3uN9sRwW2D484rAaKIsD8tAVtypw/aBU+ryfV+fR2xrcAwhI8Wl6WRkojLUs/cB9SBSCuIb+IanQ== - dependencies: - debug "^3.1.0" - http-errors "^1.6.3" - mz "^2.7.0" - resolve-path "^1.4.0" - -koa-static@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/koa-static/-/koa-static-5.0.0.tgz#5e92fc96b537ad5219f425319c95b64772776943" - integrity sha512-UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ== - dependencies: - debug "^3.1.0" - koa-send "^5.0.0" - -koa-webpack@^5.1.0: - version "5.1.1" - resolved "https://registry.npmjs.org/koa-webpack/-/koa-webpack-5.1.1.tgz#2c2414f0fbf3dc1996d76191c3d20832f7afd95e" - integrity sha512-ezs3CNJZ3a/UN0LmEslTZmiro9Y+2bPJFpcYlDsZxOmWDaDmvBgZuCdG3jCl63EzKL/Pfd+AeaUARwLJ//Unwg== - dependencies: - "@webpack-contrib/schema-utils" "^1.0.0-beta.0" - app-root-path "^2.0.1" - loud-rejection "^1.6.0" - merge-options "^1.0.0" - webpack-dev-middleware "^3.0.0" - webpack-hot-client "^4.1.0" - webpack-log "^1.1.1" - -koa@^2.4.1, koa@^2.6.2: - version "2.6.2" - resolved "https://registry.npmjs.org/koa/-/koa-2.6.2.tgz#57ba4d049b0a99cae0d594e6144e2931949a7ce1" - integrity sha512-KdnBFhTgh9ysMMoYe4J4fLvaKjT7mF3nRYV8MjxLzx6qywFNeptqi4xevyUltg1fZl2CFJ+HeLXuCGx07Yvl/A== - dependencies: - accepts "^1.3.5" - cache-content-type "^1.0.0" - content-disposition "~0.5.2" - content-type "^1.0.4" - cookies "~0.7.1" - debug "~3.1.0" - delegates "^1.0.0" - depd "^1.1.2" - destroy "^1.0.4" - error-inject "^1.0.0" - escape-html "^1.0.3" - fresh "~0.5.2" - http-assert "^1.3.0" - http-errors "^1.6.3" - is-generator-function "^1.0.7" - koa-compose "^4.1.0" - koa-convert "^1.2.0" - koa-is-json "^1.0.0" - on-finished "^2.3.0" - only "~0.0.2" - parseurl "^1.3.2" - statuses "^1.5.0" - type-is "^1.6.16" - vary "^1.1.2" - latest-version@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/latest-version/-/latest-version-2.0.0.tgz#56f8d6139620847b8017f8f1f4d78e211324168b" @@ -7855,13 +7686,6 @@ latest-version@^2.0.0: dependencies: package-json "^2.0.0" -latest-version@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz#a205383fea322b33b5ae3b18abee0dc2f356ee15" - integrity sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU= - dependencies: - package-json "^4.0.0" - lazy-cache@^0.2.3: version "0.2.7" resolved "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz#7feddf2dcb6edb77d11ef1d117ab5ffdf0ab1b65" @@ -8396,6 +8220,11 @@ log-update@^2.1.0, log-update@^2.3.0: cli-cursor "^2.0.0" wrap-ansi "^3.0.1" +loglevel@^1.4.1: + version "1.6.1" + resolved "https://registry.npmjs.org/loglevel/-/loglevel-1.6.1.tgz#e0fc95133b6ef276cdc8887cdaf24aa6f156f8fa" + integrity sha1-4PyVEztu8nbNyIh82vJKpvFW+Po= + loglevelnext@^1.0.1, loglevelnext@^1.0.2: version "1.0.5" resolved "https://registry.npmjs.org/loglevelnext/-/loglevelnext-1.0.5.tgz#36fc4f5996d6640f539ff203ba819641680d75a2" @@ -8421,7 +8250,7 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3 dependencies: js-tokens "^3.0.0 || ^4.0.0" -loud-rejection@^1.0.0, loud-rejection@^1.6.0: +loud-rejection@^1.0.0: version "1.6.0" resolved "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" integrity sha1-W0b4AUft7leIcPCG0Eghz5mOVR8= @@ -8617,11 +8446,6 @@ mdurl@^1.0.1: resolved "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= -meant@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/meant/-/meant-1.0.1.tgz#66044fea2f23230ec806fb515efea29c44d2115d" - integrity sha512-UakVLFjKkbbUwNWJ2frVLnnAtbb7D7DsloxRd3s/gDpI8rdv8W5Hp3NaDb+POBI1fQdeussER6NB8vpcRURvlg== - media-typer@0.3.0: version "0.3.0" resolved "http://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" @@ -8634,14 +8458,6 @@ mem@^1.1.0: dependencies: mimic-fn "^1.0.0" -mem@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/mem/-/mem-3.0.1.tgz#152410d0d7e835e4a4363e626238d9e5be3d6f5a" - integrity sha512-QKs47bslvOE0NbXOqG6lMxn6Bk0Iuw0vfrIeLykmQle2LkCw1p48dZDdzE+D88b/xqRJcZGcMNeDvSVma+NuIQ== - dependencies: - mimic-fn "^1.0.0" - p-is-promise "^1.1.0" - mem@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/mem/-/mem-4.0.0.tgz#6437690d9471678f6cc83659c00cbafcd6b0cdaf" @@ -8729,7 +8545,7 @@ merge-descriptors@1.0.1: resolved "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= -merge-options@^1.0.0, merge-options@^1.0.1: +merge-options@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/merge-options/-/merge-options-1.0.1.tgz#2a64b24457becd4e4dc608283247e94ce589aa32" integrity sha512-iuPV41VWKWBIOpBsjoxjDZw8/GbSfZ2mk7N1453bwMrfzdrIk7EzBd+8UVR6rkw67th7xnk9Dytl3J+lHPdxvg== @@ -8784,7 +8600,7 @@ micromatch@^2.3.11, micromatch@^2.3.7: parse-glob "^3.0.4" regex-cache "^0.4.2" -micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8: +micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8, micromatch@^3.1.9: version "3.1.10" resolved "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== @@ -8811,12 +8627,12 @@ miller-rabin@^4.0.0: bn.js "^4.0.0" brorand "^1.0.1" -mime-db@~1.37.0: +"mime-db@>= 1.36.0 < 2", mime-db@~1.37.0: version "1.37.0" resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz#0b6a0ce6fdbe9576e25f1f2d2fde8830dc0ad0d8" integrity sha512-R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg== -mime-types@^2.1.12, mime-types@^2.1.18, mime-types@~2.1.18, mime-types@~2.1.19: +mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.18, mime-types@~2.1.19: version "2.1.21" resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz#28995aa1ecb770742fe6ae7e58f9181c744b3f96" integrity sha512-3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg== @@ -8944,7 +8760,7 @@ mixin-object@^2.0.1: for-in "^0.1.3" is-extendable "^0.1.1" -"mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: +mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: version "0.5.1" resolved "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= @@ -8992,6 +8808,19 @@ ms@^2.0.0, ms@^2.1.1: resolved "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== +multicast-dns-service-types@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" + integrity sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE= + +multicast-dns@^6.0.1: + version "6.2.3" + resolved "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229" + integrity sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g== + dependencies: + dns-packet "^1.3.1" + thunky "^1.0.2" + multimatch@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz#9c7906a22fb4c02919e2f5f75161b4cdbd4b2a2b" @@ -9007,34 +8836,11 @@ mute-stream@0.0.7, mute-stream@~0.0.4: resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= -mz@^2.6.0, mz@^2.7.0: - version "2.7.0" - resolved "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" - integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q== - dependencies: - any-promise "^1.0.0" - object-assign "^4.0.1" - thenify-all "^1.0.0" - nan@^2.9.2: version "2.11.1" resolved "https://registry.npmjs.org/nan/-/nan-2.11.1.tgz#90e22bccb8ca57ea4cd37cc83d3819b52eea6766" integrity sha512-iji6k87OSXa0CcrLl9z+ZiYSuR2o+c0bGuNmXdrhTQTakxytAFsC56SArGYoiHlJlFoHSnvmhpceZJaXkVuOtA== -nanoassert@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/nanoassert/-/nanoassert-1.1.0.tgz#4f3152e09540fde28c76f44b19bbcd1d5a42478d" - integrity sha1-TzFS4JVA/eKMdvRLGbvNHVpCR40= - -nanobus@^4.3.1: - version "4.3.5" - resolved "https://registry.npmjs.org/nanobus/-/nanobus-4.3.5.tgz#9d106c35a1f136bc34e0c4b5d28230a6cdb9e6ae" - integrity sha512-6UlqagLV9/ADqcTU60mipAPEd16WDbO+a9WeeGVn9RucHKNDTcPt9MOf8ZmAvbA3V2CV+EJS28eupNalg4YF8Q== - dependencies: - nanoassert "^1.1.0" - nanotiming "^7.2.0" - remove-array-items "^1.0.0" - nanomatch@^1.2.9: version "1.2.13" resolved "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" @@ -9052,21 +8858,6 @@ nanomatch@^1.2.9: snapdragon "^0.8.1" to-regex "^3.0.1" -nanoscheduler@^1.0.2: - version "1.0.3" - resolved "https://registry.npmjs.org/nanoscheduler/-/nanoscheduler-1.0.3.tgz#6ca027941bf3e04139ea4bab6227ea6ad803692f" - integrity sha512-jBbrF3qdU9321r8n9X7yu18DjP31Do2ItJm3mWrt90wJTrnDO+HXpoV7ftaUglAtjgj9s+OaCxGufbvx6pvbEQ== - dependencies: - nanoassert "^1.1.0" - -nanotiming@^7.2.0: - version "7.3.1" - resolved "https://registry.npmjs.org/nanotiming/-/nanotiming-7.3.1.tgz#dc5cf8d9d8ad401a4394d1a9b7a16714bccfefda" - integrity sha512-l3lC7v/PfOuRWQa8vV29Jo6TG10wHtnthLElFXs4Te4Aas57Fo4n1Q8LH9n+NDh9riOzTVvb2QNBhTS4JUKNjw== - dependencies: - nanoassert "^1.1.0" - nanoscheduler "^1.0.2" - natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -9149,6 +8940,11 @@ node-fetch@^2.1.1, node-fetch@^2.1.2: resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.3.0.tgz#1a1d940bbfb916a1d3e0219f037e89e71f8c5fa5" integrity sha512-MOd8pV3fxENbryESLgVIeaGKrdl+uaYhCSSVkjeOb/31/njTpcis5aWfdqgNlHIrKOLRbMnfPINPOML2CIFeXA== +node-forge@0.7.5: + version "0.7.5" + resolved "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz#6c152c345ce11c52f465c2abd957e8639cd674df" + integrity sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ== + node-gyp@^3.8.0: version "3.8.0" resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz#540304261c330e80d0d5edce253a68cb3964218c" @@ -9224,11 +9020,6 @@ node-status-codes@^1.0.0: resolved "http://registry.npmjs.org/node-status-codes/-/node-status-codes-1.0.0.tgz#5ae5541d024645d32a58fcddc9ceecea7ae3ac2f" integrity sha1-WuVUHQJGRdMqWPzdyc7s6nrjrC8= -node-version@^1.1.3: - version "1.2.0" - resolved "https://registry.npmjs.org/node-version/-/node-version-1.2.0.tgz#34fde3ffa8e1149bd323983479dda620e1b5060d" - integrity sha512-ma6oU4Sk0qOoKEAymVoTvk8EdXEobdS7m/mAGhDJ8Rouugho48crHBORAmy5BoOcv8wraPM6xumapQp5hl4iIQ== - "nopt@2 || 3": version "3.0.6" resolved "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" @@ -9479,13 +9270,23 @@ object.values@^1.0.4: function-bind "^1.1.0" has "^1.0.1" -on-finished@^2.3.0, on-finished@~2.3.0: +obuf@^1.0.0, obuf@^1.1.1: + version "1.1.2" + resolved "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" + integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== + +on-finished@~2.3.0: version "2.3.0" resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= dependencies: ee-first "1.1.1" +on-headers@~1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" + integrity sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c= + once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" @@ -9500,11 +9301,6 @@ onetime@^2.0.0: dependencies: mimic-fn "^1.0.0" -only@~0.0.2: - version "0.0.2" - resolved "https://registry.npmjs.org/only/-/only-0.0.2.tgz#2afde84d03e50b9a8edc444e30610a70295edfb4" - integrity sha1-Kv3oTQPlC5qO3EROMGEKcCle37Q= - opener@^1.5.1: version "1.5.1" resolved "https://registry.npmjs.org/opener/-/opener-1.5.1.tgz#6d2f0e77f1a0af0032aca716c2c1fbb8e7e8abed" @@ -9537,7 +9333,7 @@ optionator@^0.8.1, optionator@^0.8.2: type-check "~0.3.2" wordwrap "~1.0.0" -original@>=0.0.5: +original@>=0.0.5, original@^1.0.0: version "1.0.2" resolved "https://registry.npmjs.org/original/-/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f" integrity sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg== @@ -9675,14 +9471,6 @@ p-reduce@^1.0.0: resolved "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa" integrity sha1-GMKw3ZNqRpClKfgjH1ig/bakffo= -p-series@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/p-series/-/p-series-1.1.0.tgz#f2d8522cdfd58b464eb9685651d465037ee3c957" - integrity sha512-356covArc9UCfj2twY/sxCJKGMzzO+pJJtucizsPC6aS1xKSTBc9PQrQhvFR3+7F+fa2KBKdJjdIcv6NEWDcIQ== - dependencies: - "@sindresorhus/is" "^0.7.0" - p-reduce "^1.0.0" - p-timeout@^1.1.1: version "1.2.1" resolved "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz#5eb3b353b7fce99f101a1038880bb054ebbea386" @@ -9717,16 +9505,6 @@ package-json@^2.0.0: registry-url "^3.0.3" semver "^5.1.0" -package-json@^4.0.0: - version "4.0.1" - resolved "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz#8869a0401253661c4c4ca3da6c2121ed555f5eed" - integrity sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0= - dependencies: - got "^6.7.1" - registry-auth-token "^3.0.1" - registry-url "^3.0.3" - semver "^5.1.0" - pacote@^9.2.3: version "9.2.3" resolved "https://registry.npmjs.org/pacote/-/pacote-9.2.3.tgz#48cfe87beb9177acd6594355a584a538835424b3" @@ -9844,7 +9622,7 @@ parse5@^5.0.0: resolved "https://registry.npmjs.org/parse5/-/parse5-5.1.0.tgz#c59341c9723f414c452975564c7c00a68d58acd2" integrity sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ== -parseurl@^1.3.2, parseurl@~1.3.2: +parseurl@~1.3.2: version "1.3.2" resolved "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" integrity sha1-/CidTtiZMRlGDBViUyYs3I3mW/M= @@ -9896,7 +9674,7 @@ path-exists@^3.0.0: resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= -path-is-absolute@1.0.1, path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: +path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: version "1.0.1" resolved "http://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= @@ -10045,6 +9823,15 @@ polished@^2.3.1: dependencies: "@babel/runtime" "^7.0.0" +portfinder@^1.0.9: + version "1.0.20" + resolved "https://registry.npmjs.org/portfinder/-/portfinder-1.0.20.tgz#bea68632e54b2e13ab7b0c4775e9b41bf270e44a" + integrity sha512-Yxe4mTyDzTd59PZJY4ojZR8F+E5e97iq2ZOHPz3HDgSvYC5siNad2tLooQ5y5QHyQhc3xVqvyk/eNA3wuoa7Sw== + dependencies: + async "^1.5.2" + debug "^2.2.0" + mkdirp "0.5.x" + posix-character-classes@^0.1.0: version "0.1.1" resolved "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" @@ -10727,7 +10514,7 @@ read@1, read@~1.0.1: dependencies: mute-stream "~0.0.4" -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: +"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: version "2.3.6" resolved "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== @@ -11032,11 +10819,6 @@ remark@^5.0.1: remark-stringify "^1.1.0" unified "^4.1.1" -remove-array-items@^1.0.0: - version "1.1.0" - resolved "https://registry.npmjs.org/remove-array-items/-/remove-array-items-1.1.0.tgz#e3d4aaba795a412479ea89408dee345387da7d3b" - integrity sha512-+YAHWd5patqAM/F4uBsto9h8RXDVxPRrKW46AkbI6eH12OFrN9wlGpkNWYxCjCfwtkidTjaaCXqU634V4mysvw== - remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" @@ -11184,14 +10966,6 @@ resolve-global@^0.1.0: dependencies: global-dirs "^0.1.0" -resolve-path@^1.3.3, resolve-path@^1.4.0: - version "1.4.0" - resolved "https://registry.npmjs.org/resolve-path/-/resolve-path-1.4.0.tgz#c4bda9f5efb2fce65247873ab36bb4d834fe16f7" - integrity sha1-xL2p9e+y/OZSR4c6s2u02DT+Fvc= - dependencies: - http-errors "~1.6.2" - path-is-absolute "1.0.1" - resolve-pathname@^2.2.0: version "2.2.0" resolved "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-2.2.0.tgz#7e9ae21ed815fd63ab189adeee64dc831eefa879" @@ -11209,7 +10983,7 @@ resolve-url@^0.2.1: resolved "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= -resolve@1.8.1, resolve@^1.1.6, resolve@^1.3.2, resolve@^1.6.0, resolve@^1.7.1, resolve@^1.8.1: +resolve@1.8.1, resolve@^1.1.6, resolve@^1.3.2, resolve@^1.7.1, resolve@^1.8.1: version "1.8.1" resolved "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26" integrity sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA== @@ -11449,11 +11223,23 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" +select-hose@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" + integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= + select@^1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" integrity sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0= +selfsigned@^1.9.1: + version "1.10.4" + resolved "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.4.tgz#cdd7eccfca4ed7635d47a08bf2d5d3074092e2cd" + integrity sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw== + dependencies: + node-forge "0.7.5" + semver-compare@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" @@ -11513,6 +11299,19 @@ serialize-javascript@^1.4.0, serialize-javascript@^1.5.0: resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.5.0.tgz#1aa336162c88a890ddad5384baebc93a655161fe" integrity sha512-Ga8c8NjAAp46Br4+0oZ2WxJCwIzwP60Gq1YPgU+39PiTVxyed/iKE/zyZI6+UlVYH5Q4PaQdHhcegIFPZTUfoQ== +serve-index@^1.7.2: + version "1.9.1" + resolved "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" + integrity sha1-03aNabHn2C5c4FD/9bRTvqEqkjk= + dependencies: + accepts "~1.3.4" + batch "0.6.1" + debug "2.6.9" + escape-html "~1.0.3" + http-errors "~1.6.2" + mime-types "~2.1.17" + parseurl "~1.3.2" + serve-static@1.13.2: version "1.13.2" resolved "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1" @@ -11739,6 +11538,26 @@ sockjs-client@1.1.5: json3 "^3.3.2" url-parse "^1.1.8" +sockjs-client@1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.3.0.tgz#12fc9d6cb663da5739d3dc5fb6e8687da95cb177" + integrity sha512-R9jxEzhnnrdxLCNln0xg5uGHqMnkhPSTzUZH2eXcR03S/On9Yvoq2wyUZILRUhZCNVu2PmwWVoyuiPz8th8zbg== + dependencies: + debug "^3.2.5" + eventsource "^1.0.7" + faye-websocket "~0.11.1" + inherits "^2.0.3" + json3 "^3.3.2" + url-parse "^1.4.3" + +sockjs@0.3.19: + version "0.3.19" + resolved "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz#d976bbe800af7bd20ae08598d582393508993c0d" + integrity sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw== + dependencies: + faye-websocket "^0.10.0" + uuid "^3.0.1" + socks-proxy-agent@^4.0.0: version "4.0.1" resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.1.tgz#5936bf8b707a993079c6f37db2091821bffa6473" @@ -11859,6 +11678,31 @@ spdx-license-ids@^3.0.0: resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.2.tgz#a59efc09784c2a5bada13cfeaf5c75dd214044d2" integrity sha512-qky9CVt0lVIECkEsYbNILVnPvycuEBkXoMFLRWsREkomQLevYhtRKC+R91a5TOAQ3bCMjikRwhyaRqj1VYatYg== +spdy-transport@^2.0.18: + version "2.1.1" + resolved "https://registry.npmjs.org/spdy-transport/-/spdy-transport-2.1.1.tgz#c54815d73858aadd06ce63001e7d25fa6441623b" + integrity sha512-q7D8c148escoB3Z7ySCASadkegMmUZW8Wb/Q1u0/XBgDKMO880rLQDj8Twiew/tYi7ghemKUi/whSYOwE17f5Q== + dependencies: + debug "^2.6.8" + detect-node "^2.0.3" + hpack.js "^2.1.6" + obuf "^1.1.1" + readable-stream "^2.2.9" + safe-buffer "^5.0.1" + wbuf "^1.7.2" + +spdy@^3.4.1: + version "3.4.7" + resolved "https://registry.npmjs.org/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc" + integrity sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw= + dependencies: + debug "^2.6.8" + handle-thing "^1.2.5" + http-deceiver "^1.2.7" + safe-buffer "^5.0.1" + select-hose "^2.0.0" + spdy-transport "^2.0.18" + split-string@^3.0.1, split-string@^3.0.2: version "3.1.0" resolved "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" @@ -11935,7 +11779,7 @@ static-extend@^0.1.1: define-property "^0.2.5" object-copy "^0.1.0" -"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@^1.5.0: +"statuses@>= 1.4.0 < 2": version "1.5.0" resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= @@ -12164,7 +12008,7 @@ supports-color@^2.0.0: resolved "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= -supports-color@^5.2.0, supports-color@^5.3.0, supports-color@^5.5.0: +supports-color@^5.1.0, supports-color@^5.2.0, supports-color@^5.3.0, supports-color@^5.5.0: version "5.5.0" resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== @@ -12270,13 +12114,6 @@ temp-write@^3.4.0: temp-dir "^1.0.0" uuid "^3.0.1" -term-size@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz#458b83887f288fc56d6fffbfad262e26638efa69" - integrity sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk= - dependencies: - execa "^0.7.0" - terser-webpack-plugin@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.1.0.tgz#cf7c25a1eee25bf121f4a587bb9e004e3f80e528" @@ -12310,20 +12147,6 @@ text-table@0.2.0, text-table@^0.2.0: resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= -thenify-all@^1.0.0: - version "1.6.0" - resolved "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" - integrity sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY= - dependencies: - thenify ">= 3.1.0 < 4" - -"thenify@>= 3.1.0 < 4": - version "3.3.0" - resolved "https://registry.npmjs.org/thenify/-/thenify-3.3.0.tgz#e69e38a1babe969b0108207978b9f62b88604839" - integrity sha1-5p44obq+lpsBCCB5eLn2K4hgSDk= - dependencies: - any-promise "^1.0.0" - through2@^2.0.0, through2@^2.0.2: version "2.0.5" resolved "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" @@ -12337,10 +12160,10 @@ through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6, through@^2.3.8: resolved "http://registry.npmjs.org/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= -time-fix-plugin@^2.0.0: - version "2.0.5" - resolved "https://registry.npmjs.org/time-fix-plugin/-/time-fix-plugin-2.0.5.tgz#41c76e734217cc91a08ea525fdde56de119fb683" - integrity sha512-veHRiEsQ50KSrfdhkZiFvZIjRoyfyfxpgskD+P7uVQAcNe6rIMLZ8vhjFRE2XrPqQdy+4CF+jXsWAlgVy9Bfcg== +thunky@^1.0.2: + version "1.0.3" + resolved "https://registry.npmjs.org/thunky/-/thunky-1.0.3.tgz#f5df732453407b09191dae73e2a8cc73f381a826" + integrity sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow== timed-out@^3.0.0: version "3.1.3" @@ -12437,11 +12260,6 @@ to-vfile@^5.0.2: is-buffer "^2.0.0" vfile "^3.0.0" -toidentifier@1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" - integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== - tough-cookie@~2.4.3: version "2.4.3" resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" @@ -12590,7 +12408,7 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" -type-is@^1.6.16, type-is@~1.6.16: +type-is@~1.6.16: version "1.6.16" resolved "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" integrity sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q== @@ -12746,13 +12564,6 @@ unique-slug@^2.0.0: dependencies: imurmurhash "^0.1.4" -unique-string@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a" - integrity sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo= - dependencies: - crypto-random-string "^1.0.0" - unist-builder@^1.0.1: version "1.0.3" resolved "https://registry.npmjs.org/unist-builder/-/unist-builder-1.0.3.tgz#ab0f9d0f10936b74f3e913521955b0478e0ff036" @@ -12859,11 +12670,6 @@ unzip-response@^1.0.2: resolved "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz#b984f0877fc0a89c2c773cc1ef7b5b232b5b06fe" integrity sha1-uYTwh3/AqJwsdzzB73tbIytbBv4= -unzip-response@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz#d2f0f737d16b0615e72a6935ed04214572d56f97" - integrity sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c= - unzipper@^0.8.11: version "0.8.14" resolved "https://registry.npmjs.org/unzipper/-/unzipper-0.8.14.tgz#ade0524cd2fc14d11b8de258be22f9d247d3f79b" @@ -12898,22 +12704,6 @@ update-notifier@^1.0.2: semver-diff "^2.0.0" xdg-basedir "^2.0.0" -update-notifier@^2.3.0: - version "2.5.0" - resolved "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz#d0744593e13f161e406acb1d9408b72cad08aff6" - integrity sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw== - dependencies: - boxen "^1.2.1" - chalk "^2.0.1" - configstore "^3.0.0" - import-lazy "^2.1.0" - is-ci "^1.0.10" - is-installed-globally "^0.1.0" - is-npm "^1.0.0" - latest-version "^3.0.0" - semver-diff "^2.0.0" - xdg-basedir "^3.0.0" - upper-case-first@^1.1.0, upper-case-first@^1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/upper-case-first/-/upper-case-first-1.1.2.tgz#5d79bedcff14419518fd2edb0a0507c9b6859115" @@ -12938,11 +12728,6 @@ urix@^0.1.0: resolved "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= -url-join@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/url-join/-/url-join-4.0.0.tgz#4d3340e807d3773bda9991f8305acdcc2a665d2a" - integrity sha1-TTNA6AfTdzvamZH4MFrNzCpmXSo= - url-loader@^1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/url-loader/-/url-loader-1.1.2.tgz#b971d191b83af693c5e3fea4064be9e1f2d7f8d8" @@ -13044,11 +12829,6 @@ uuid@^3.0.1, uuid@^3.1.0, uuid@^3.3.2: resolved "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== -v8-compile-cache@^2.0.0: - version "2.0.2" - resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.2.tgz#a428b28bb26790734c4fc8bc9fa106fccebf6a6c" - integrity sha512-1wFuMUIM16MDJRCrpbpuEPTUGmM5QMUg0cr3KFwra2XgOgFcPGDQHDh3CszSCD2Zewc/dh/pamNEW8CbfDebUw== - validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.3: version "3.0.4" resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" @@ -13069,7 +12849,7 @@ value-equal@^0.4.0: resolved "https://registry.npmjs.org/value-equal/-/value-equal-0.4.0.tgz#c5bdd2f54ee093c04839d71ce2e4758a6890abc7" integrity sha512-x+cYdNnaA3CxvMaTX0INdTCN8m8aF2uY9BvEqmxuYp8bL09cs/kWVQPVGcA35fMktdOsP69IgU7wFj/61dJHEw== -vary@^1.1.2, vary@~1.1.2: +vary@~1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= @@ -13145,6 +12925,13 @@ watchpack@^1.5.0: graceful-fs "^4.1.2" neo-async "^2.5.0" +wbuf@^1.1.0, wbuf@^1.7.2: + version "1.7.3" + resolved "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" + integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== + dependencies: + minimalistic-assert "^1.0.0" + wcwidth@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" @@ -13193,7 +12980,7 @@ webpack-chain@^5.0.1: deepmerge "^1.5.2" javascript-stringify "^1.6.0" -webpack-dev-middleware@^3.0.0: +webpack-dev-middleware@3.4.0: version "3.4.0" resolved "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz#1132fecc9026fd90f0ecedac5cbff75d1fb45890" integrity sha512-Q9Iyc0X9dP9bAsYskAVJ/hmIZZQwf/3Sy4xCAZgL5cUkjZmUZLt4l5HpbST/Pdgjn3u6pE7u5OdGd1apgzRujA== @@ -13203,7 +12990,41 @@ webpack-dev-middleware@^3.0.0: range-parser "^1.0.3" webpack-log "^2.0.0" -webpack-hot-client@^4.1.0, webpack-hot-client@^4.1.1: +webpack-dev-server@^3.1.10: + version "3.1.10" + resolved "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.1.10.tgz#507411bee727ee8d2fdffdc621b66a64ab3dea2b" + integrity sha512-RqOAVjfqZJtQcB0LmrzJ5y4Jp78lv9CK0MZ1YJDTaTmedMZ9PU9FLMQNrMCfVu8hHzaVLVOJKBlGEHMN10z+ww== + dependencies: + ansi-html "0.0.7" + bonjour "^3.5.0" + chokidar "^2.0.0" + compression "^1.5.2" + connect-history-api-fallback "^1.3.0" + debug "^3.1.0" + del "^3.0.0" + express "^4.16.2" + html-entities "^1.2.0" + http-proxy-middleware "~0.18.0" + import-local "^2.0.0" + internal-ip "^3.0.1" + ip "^1.1.5" + killable "^1.0.0" + loglevel "^1.4.1" + opn "^5.1.0" + portfinder "^1.0.9" + schema-utils "^1.0.0" + selfsigned "^1.9.1" + serve-index "^1.7.2" + sockjs "0.3.19" + sockjs-client "1.3.0" + spdy "^3.4.1" + strip-ansi "^3.0.0" + supports-color "^5.1.0" + webpack-dev-middleware "3.4.0" + webpack-log "^2.0.0" + yargs "12.0.2" + +webpack-hot-client@^4.1.1: version "4.1.1" resolved "https://registry.npmjs.org/webpack-hot-client/-/webpack-hot-client-4.1.1.tgz#fc02b396749d5fd26c4f2265567e2fc1521a41ff" integrity sha512-Gu3hEkFJIsvC+2Dg86FvAzIL8KSR88Ptk0QnV4wEucObB0c9aMIYbjSA9oPTV4X5OZRH6ftrk4FcSGsZmTLiWA== @@ -13217,7 +13038,7 @@ webpack-hot-client@^4.1.0, webpack-hot-client@^4.1.1: webpack-log "^1.1.1" ws "^4.0.0" -webpack-log@^1.1.1, webpack-log@^1.1.2, webpack-log@^1.2.0: +webpack-log@^1.1.1, webpack-log@^1.1.2: version "1.2.0" resolved "https://registry.npmjs.org/webpack-log/-/webpack-log-1.2.0.tgz#a4b34cda6b22b518dbb0ab32e567962d5c72a43d" integrity sha512-U9AnICnu50HXtiqiDxuli5gLB5PGBo7VvcHx36jRZHwK4vzOYLbImqT4lwWwoMHdQWwEKw736fCHEekokTEKHA== @@ -13244,51 +13065,6 @@ webpack-manifest-plugin@^2.0.4: lodash ">=3.5 <5" tapable "^1.0.0" -webpack-serve-overlay@^0.3.0: - version "0.3.0" - resolved "https://registry.npmjs.org/webpack-serve-overlay/-/webpack-serve-overlay-0.3.0.tgz#3ef21ca1dd834f3d106e028a0f8b2ca81f337517" - integrity sha512-JFm8tElxKx8Mv9hdgAXykqtZeKhO8i+NgmAXU1+gFodNmmL8dUUG+hOHdCxTEyIaInxCUgm7gZPiHIMjs9Ucog== - dependencies: - ansi-html "0.0.7" - html-entities "^1.2.1" - -webpack-serve@^2.0.3: - version "2.0.3" - resolved "https://registry.npmjs.org/webpack-serve/-/webpack-serve-2.0.3.tgz#61d24481d8560bcc45c7be005d326c9ba5ed7e0c" - integrity sha512-hJiikqjNm+opxaEY9JO/W+IHhWg3VC+meMOqHeOYyCjFyRVh2BzUlhvTh9ZKtuxcHCrez2VlghYrpII98ZpRqQ== - dependencies: - "@shellscape/koa-static" "^4.0.4" - "@webpack-contrib/cli-utils" "^1.0.2" - "@webpack-contrib/config-loader" "^1.1.1" - "@webpack-contrib/schema-utils" "^1.0.0-beta.0" - chalk "^2.3.0" - clipboardy "^1.2.2" - cosmiconfig "^5.0.2" - debug "^3.1.0" - decamelize "^2.0.0" - get-port "^3.2.0" - import-local "^1.0.0" - is-plain-obj "^1.1.0" - killable "^1.0.0" - koa "^2.4.1" - koa-webpack "^5.1.0" - loud-rejection "^1.6.0" - mem "^3.0.0" - meow "^5.0.0" - merge-options "^1.0.1" - nanobus "^4.3.1" - node-version "^1.1.3" - opn "^5.1.0" - p-defer "^1.0.0" - p-series "^1.1.0" - resolve "^1.6.0" - strip-ansi "^4.0.0" - time-fix-plugin "^2.0.0" - update-notifier "^2.3.0" - url-join "^4.0.0" - v8-compile-cache "^2.0.0" - webpack-log "^1.1.2" - webpack-sources@^1.1.0, webpack-sources@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz#2a28dcb9f1f45fe960d8f1493252b5ee6530fa85" @@ -13399,13 +13175,6 @@ widest-line@^1.0.0: dependencies: string-width "^1.0.1" -widest-line@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz#7438764730ec7ef4381ce4df82fb98a53142a3fc" - integrity sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA== - dependencies: - string-width "^2.1.1" - window-size@^0.2.0: version "0.2.0" resolved "https://registry.npmjs.org/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075" @@ -13542,11 +13311,6 @@ xdg-basedir@^2.0.0: dependencies: os-homedir "^1.0.0" -xdg-basedir@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4" - integrity sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ= - xdg-trashdir@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/xdg-trashdir/-/xdg-trashdir-2.1.1.tgz#59a60aaf8e6f9240c1daed9a0944b2f514c27d8e" @@ -13588,7 +13352,7 @@ yallist@^3.0.0, yallist@^3.0.2: resolved "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9" integrity sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A== -yargs-parser@^10.0.0: +yargs-parser@^10.0.0, yargs-parser@^10.1.0: version "10.1.0" resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8" integrity sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ== @@ -13618,6 +13382,24 @@ yargs-parser@^8.1.0: dependencies: camelcase "^4.1.0" +yargs@12.0.2: + version "12.0.2" + resolved "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz#fe58234369392af33ecbef53819171eff0f5aadc" + integrity sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ== + dependencies: + cliui "^4.0.0" + decamelize "^2.0.0" + find-up "^3.0.0" + get-caller-file "^1.0.1" + os-locale "^3.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 || ^4.0.0" + yargs-parser "^10.1.0" + yargs@^10.0.3: version "10.1.2" resolved "https://registry.npmjs.org/yargs/-/yargs-10.1.2.tgz#454d074c2b16a51a43e2fb7807e4f9de69ccb5c5" @@ -13673,8 +13455,3 @@ yargs@^4.2.0: window-size "^0.2.0" y18n "^3.2.1" yargs-parser "^2.4.1" - -ylru@^1.2.0: - version "1.2.1" - resolved "https://registry.npmjs.org/ylru/-/ylru-1.2.1.tgz#f576b63341547989c1de7ba288760923b27fe84f" - integrity sha512-faQrqNMzcPCHGVC2aaOINk13K+aaBDUPjGWl0teOXywElLjyVAB6Oe2jj62jHYtwsU49jXhScYbvPENK+6zAvQ==