diff --git a/package.json b/package.json index dde303c9b..9c85e5893 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,6 @@ "globby": "^8.0.1", "http-server": "^0.11.1", "jest": "^22.1.4", - "json-server": "^0.12.2", "lerna": "^2.8.0", "lint-staged": "^6.0.1", "memfs": "^2.6.0", diff --git a/packages/@vue/cli-plugin-e2e-nightwatch/package.json b/packages/@vue/cli-plugin-e2e-nightwatch/package.json index a63978fdd..f6d3e8e37 100644 --- a/packages/@vue/cli-plugin-e2e-nightwatch/package.json +++ b/packages/@vue/cli-plugin-e2e-nightwatch/package.json @@ -22,9 +22,9 @@ "access": "public" }, "dependencies": { - "chromedriver": "^2.38.1", - "deepmerge": "^2.0.1", - "execa": "^0.9.0", + "chromedriver": "^2.38.3", + "deepmerge": "^2.1.0", + "execa": "^0.10.0", "nightwatch": "^0.9.21", "selenium-server": "^3.11.0" } diff --git a/packages/@vue/cli-plugin-pwa/package.json b/packages/@vue/cli-plugin-pwa/package.json index f8cef3e07..3591e01d0 100644 --- a/packages/@vue/cli-plugin-pwa/package.json +++ b/packages/@vue/cli-plugin-pwa/package.json @@ -22,7 +22,7 @@ "access": "public" }, "dependencies": { - "workbox-webpack-plugin": "^3.1.0" + "workbox-webpack-plugin": "^3.2.0" }, "devDependencies": { "register-service-worker": "^1.0.0" diff --git a/packages/@vue/cli-plugin-typescript/package.json b/packages/@vue/cli-plugin-typescript/package.json index 5e24b17dc..0509d042a 100644 --- a/packages/@vue/cli-plugin-typescript/package.json +++ b/packages/@vue/cli-plugin-typescript/package.json @@ -25,8 +25,8 @@ "@types/node": "^9.3.0", "fork-ts-checker-webpack-plugin": "^0.4.1", "globby": "^8.0.1", - "ts-loader": "^3.4.0", - "tslint": "^5.9.1", + "ts-loader": "^4.3.0", + "tslint": "^5.10.0", "typescript": "^2.8.3" }, "devDependencies": { diff --git a/packages/@vue/cli-plugin-unit-jest/package.json b/packages/@vue/cli-plugin-unit-jest/package.json index 7be4b5adc..906a036ce 100644 --- a/packages/@vue/cli-plugin-unit-jest/package.json +++ b/packages/@vue/cli-plugin-unit-jest/package.json @@ -22,7 +22,7 @@ "access": "public" }, "dependencies": { - "execa": "^0.9.0", + "execa": "^0.10.0", "jest": "^22.4.3", "jest-serializer-vue": "^1.0.0", "jest-transform-stub": "^1.0.0", diff --git a/packages/@vue/cli-plugin-unit-mocha/package.json b/packages/@vue/cli-plugin-unit-mocha/package.json index aae066490..e522be00c 100644 --- a/packages/@vue/cli-plugin-unit-mocha/package.json +++ b/packages/@vue/cli-plugin-unit-mocha/package.json @@ -21,11 +21,11 @@ }, "homepage": "https://github.com/vuejs/vue-cli/packages/@vue/cli-plugin-unit-mocha#readme", "dependencies": { - "execa": "^0.9.0", - "jsdom": "^11.6.2", + "execa": "^0.10.0", + "jsdom": "^11.10.0", "jsdom-global": "^3.0.2", - "mocha": "^4.1.0", - "mocha-webpack": "^1.1.0", + "mocha": "^5.1.1", + "mocha-webpack": "^2.0.0-beta.0", "webpack-node-externals": "^1.7.2" }, "devDependencies": { diff --git a/packages/@vue/cli-service-global/package.json b/packages/@vue/cli-service-global/package.json index 86e513865..42f8892fb 100644 --- a/packages/@vue/cli-service-global/package.json +++ b/packages/@vue/cli-service-global/package.json @@ -25,8 +25,8 @@ "@vue/cli-plugin-babel": "^3.0.0-beta.9", "@vue/cli-plugin-eslint": "^3.0.0-beta.9", "@vue/cli-service": "^3.0.0-beta.9", - "chalk": "^2.4.0", - "eslint-plugin-vue": "^4.3.0", + "chalk": "^2.4.1", + "eslint-plugin-vue": "^4.5.0", "resolve": "^1.7.1", "vue": "^2.5.16" } diff --git a/packages/@vue/cli-service/__tests__/build.spec.js b/packages/@vue/cli-service/__tests__/build.spec.js index e063d582b..b01524c47 100644 --- a/packages/@vue/cli-service/__tests__/build.spec.js +++ b/packages/@vue/cli-service/__tests__/build.spec.js @@ -25,12 +25,10 @@ test('build', async () => { const index = await project.read('dist/index.html') // should split and preload app.js & vendor.js - expect(index).toMatch(/]+app[^>]+\.js>/) - expect(index).toMatch(/]+vendor[^>]+\.js>/) - // should not preload manifest because it's inlined - expect(index).not.toMatch(/]+manifest[^>]+\.js>/) - // should inline manifest and webpack runtime - expect(index).toMatch('webpackJsonp') + expect(index).toMatch(/]+js\/app[^>]+\.js rel=preload>/) + expect(index).toMatch(/]+js\/vendors~app[^>]+\.js rel=preload>/) + // should preload css + expect(index).toMatch(/]+app[^>]+\.css rel=preload>/) const port = await portfinder.getPortPromise() server = createServer({ root: path.join(project.dir, 'dist') }) diff --git a/packages/@vue/cli-service/__tests__/css.spec.js b/packages/@vue/cli-service/__tests__/css.spec.js index f3ce9c76b..183d9a878 100644 --- a/packages/@vue/cli-service/__tests__/css.spec.js +++ b/packages/@vue/cli-service/__tests__/css.spec.js @@ -1,6 +1,7 @@ const Service = require('../lib/Service') const LANGS = ['css', 'sass', 'scss', 'less', 'styl', 'stylus'] +const extractLoaderPath = require('mini-css-extract-plugin').loader const LOADERS = { css: 'css', @@ -36,7 +37,7 @@ const findLoaders = (config, lang) => { const findOptions = (config, lang, _loader) => { const rule = findRule(config, lang) const use = rule.use.find(({ loader }) => loader.includes(`${_loader}-loader`)) - return use.options + return use.options || {} } test('default loaders', () => { @@ -58,10 +59,9 @@ test('default loaders', () => { test('production defaults', () => { const config = genConfig({ postcss: {}}, 'production') - const extractLoaderPath = require.resolve('extract-text-webpack-plugin/dist/loader') LANGS.forEach(lang => { const loader = lang === 'css' ? [] : LOADERS[lang] - expect(findLoaders(config, lang)).toEqual([extractLoaderPath, 'vue-style', 'css', 'postcss'].concat(loader)) + expect(findLoaders(config, lang)).toEqual([extractLoaderPath, 'css', 'postcss'].concat(loader)) expect(findOptions(config, lang, 'css')).toEqual({ minimize: true, sourceMap: false, @@ -97,7 +97,6 @@ test('css.extract', () => { } } }, 'production') - const extractLoaderPath = require.resolve('extract-text-webpack-plugin/dist/loader') LANGS.forEach(lang => { expect(findLoaders(config, lang)).not.toContain(extractLoaderPath) }) diff --git a/packages/@vue/cli-service/lib/commands/build/resolveLibConfig.js b/packages/@vue/cli-service/lib/commands/build/resolveLibConfig.js index ce2f2abfe..d6efad5a7 100644 --- a/packages/@vue/cli-service/lib/commands/build/resolveLibConfig.js +++ b/packages/@vue/cli-service/lib/commands/build/resolveLibConfig.js @@ -26,7 +26,7 @@ module.exports = (api, { entry, name }, options) => { // only minify min entry if (!/\.min/.test(postfix)) { - config.plugins.delete('uglify') + config.optimization.minimize(false) } // externalize Vue in case user imports it diff --git a/packages/@vue/cli-service/lib/commands/build/resolveWcConfig.js b/packages/@vue/cli-service/lib/commands/build/resolveWcConfig.js index 6025102df..5c40ea70c 100644 --- a/packages/@vue/cli-service/lib/commands/build/resolveWcConfig.js +++ b/packages/@vue/cli-service/lib/commands/build/resolveWcConfig.js @@ -52,7 +52,7 @@ module.exports = (api, { target, entry, name }) => { // only minify min entry if (!minify) { - config.plugins.delete('uglify') + config.optimization.minimize(false) } // externalize Vue in case user imports it diff --git a/packages/@vue/cli-service/lib/commands/serve.js b/packages/@vue/cli-service/lib/commands/serve.js index 3eed23c4e..5d3f5b0a2 100644 --- a/packages/@vue/cli-service/lib/commands/serve.js +++ b/packages/@vue/cli-service/lib/commands/serve.js @@ -71,10 +71,6 @@ module.exports = (api, options) => { // create compiler const compiler = webpack(webpackConfig) - if (!process.env.VUE_CLI_TEST) { - compiler.apply(new webpack.ProgressPlugin()) - } - // resolve server options const useHttps = args.https || projectDevServerOptions.https || defaults.https const host = args.host || process.env.HOST || projectDevServerOptions.host || defaults.host @@ -148,7 +144,7 @@ module.exports = (api, options) => { return new Promise((resolve, reject) => { // log instructions & open browser on first compilation complete let isFirstCompile = true - compiler.plugin('done', stats => { + compiler.hooks.done.tap('vue-cli-service serve', stats => { if (stats.hasErrors()) { return } diff --git a/packages/@vue/cli-service/lib/config/app.js b/packages/@vue/cli-service/lib/config/app.js index daab641a5..0dc005ffa 100644 --- a/packages/@vue/cli-service/lib/config/app.js +++ b/packages/@vue/cli-service/lib/config/app.js @@ -7,23 +7,6 @@ module.exports = (api, options) => { return } - // inject preload/prefetch to HTML - const PreloadPlugin = require('../webpack/PreloadPlugin') - webpackConfig - .plugin('preload') - .use(PreloadPlugin, [{ - rel: 'preload', - include: 'initial', - fileBlacklist: [/\.map$/, /hot-update\.js$/] - }]) - - webpackConfig - .plugin('prefetch') - .use(PreloadPlugin, [{ - rel: 'prefetch', - include: 'asyncChunks' - }]) - // HTML plugin const fs = require('fs') const htmlPath = api.resolve('public/index.html') @@ -38,6 +21,23 @@ module.exports = (api, options) => { ) ]) + // inject preload/prefetch to HTML + const PreloadPlugin = require('preload-webpack-plugin') + webpackConfig + .plugin('preload') + .use(PreloadPlugin, [{ + rel: 'preload', + include: 'initial', + fileBlacklist: [/\.map$/, /hot-update\.js$/] + }]) + + webpackConfig + .plugin('prefetch') + .use(PreloadPlugin, [{ + rel: 'prefetch', + include: 'asyncChunks' + }]) + // copy static assets in public/ webpackConfig .plugin('copy') @@ -63,61 +63,11 @@ module.exports = (api, options) => { chunksSortMode: 'dependency' })]) - // Code splitting configs for better long-term caching - // This needs to be updated when upgrading to webpack 4 - const CommonsChunkPlugin = require('webpack/lib/optimize/CommonsChunkPlugin') - - // extract vendor libs into its own chunk for better caching, since they - // are more likely to stay the same. + // code splitting webpackConfig - .plugin('split-vendor') - .use(CommonsChunkPlugin, [{ - name: 'vendor', - minChunks (module) { - // any required modules inside node_modules are extracted to vendor - return ( - module.resource && - /\.js$/.test(module.resource) && - module.resource.indexOf(`node_modules`) > -1 - ) - } - }]) - - // extract webpack runtime and module manifest to its own file in order to - // prevent vendor hash from being updated whenever app bundle is updated - webpackConfig - .plugin('split-manifest') - .use(CommonsChunkPlugin, [{ - name: 'manifest', - minChunks: Infinity - }]) - - // inline the manifest chunk into HTML - webpackConfig - .plugin('inline-manifest') - .use(require('../webpack/InlineSourcePlugin'), [{ - include: /manifest\..*\.js$/ - }]) - - // since manifest is inlined, don't preload it anymore - webpackConfig - .plugin('preload') - .tap(([options]) => { - options.fileBlacklist.push(/manifest\..*\.js$/) - return [options] - }) - - // This CommonsChunkPlugin instance extracts shared chunks from async - // chunks and bundles them in a separate chunk, similar to the vendor chunk - // see: https://webpack.js.org/plugins/commons-chunk-plugin/#extra-async-commons-chunk - webpackConfig - .plugin('split-vendor-async') - .use(CommonsChunkPlugin, [{ - name: 'app', - async: 'vendor-async', - children: true, - minChunks: 3 - }]) + .optimization.splitChunks({ + chunks: 'all' + }) } }) } diff --git a/packages/@vue/cli-service/lib/config/base.js b/packages/@vue/cli-service/lib/config/base.js index 448dff613..d52c6c8df 100644 --- a/packages/@vue/cli-service/lib/config/base.js +++ b/packages/@vue/cli-service/lib/config/base.js @@ -134,17 +134,13 @@ module.exports = (api, options) => { resolveClientEnv(options.baseUrl) ]) - webpackConfig - .plugin('timefix') - .use(require('../webpack/TimeFixPlugin')) - webpackConfig .plugin('case-sensitive-paths') .use(require('case-sensitive-paths-webpack-plugin')) // friendly error plugin displays very confusing errors when webpack // fails to resolve a loader, so we provide custom handlers to improve it - const { transformer, formatter } = require('../webpack/resolveLoaderError') + const { transformer, formatter } = require('../util/resolveLoaderError') webpackConfig .plugin('friendly-errors') .use(require('friendly-errors-webpack-plugin'), [{ diff --git a/packages/@vue/cli-service/lib/config/css.js b/packages/@vue/cli-service/lib/config/css.js index bbe303c34..31bca5e1b 100644 --- a/packages/@vue/cli-service/lib/config/css.js +++ b/packages/@vue/cli-service/lib/config/css.js @@ -24,7 +24,7 @@ module.exports = (api, options) => { const shouldExtract = isProd && extract !== false && !shadowMode const extractOptions = Object.assign({ filename: `css/[name].[contenthash:8].css`, - allChunks: true + chunkFilename: 'css/[name].[id].[contenthash:8].css' }, extract && typeof extract === 'object' ? extract : {}) // check if the project has a valid postcss config @@ -50,15 +50,17 @@ module.exports = (api, options) => { if (shouldExtract) { rule .use('extract-css-loader') - .loader(require.resolve('extract-text-webpack-plugin/dist/loader')) - .options({ omit: 1, remove: true }) + .loader(require('mini-css-extract-plugin').loader) + } else { + rule + .use('vue-style-loader') + .loader('vue-style-loader') + .options({ + sourceMap, + shadowMode + }) } - rule.use('vue-style-loader').loader('vue-style-loader').options({ - sourceMap, - shadowMode - }) - const cssLoaderOptions = { minimize: isProd, sourceMap, @@ -70,21 +72,23 @@ module.exports = (api, options) => { localIdentName }) } - rule.use('css-loader') + rule + .use('css-loader') .loader('css-loader') .options(cssLoaderOptions) if (hasPostCSSConfig) { - rule.use('postcss-loader').loader('postcss-loader').options({ - // TODO: use config value after https://github.com/postcss/postcss-loader/pull/361 is merged - sourceMap: true - }) + rule + .use('postcss-loader') + .loader('postcss-loader') + .options({ sourceMap }) } if (loader) { - rule.use(loader).loader(loader).options(Object.assign({ - sourceMap - }, options)) + rule + .use(loader) + .loader(loader) + .options(Object.assign({ sourceMap }, options)) } } } @@ -103,7 +107,25 @@ module.exports = (api, options) => { if (shouldExtract) { webpackConfig .plugin('extract-css') - .use(require('extract-text-webpack-plugin'), [extractOptions]) + .use(require('mini-css-extract-plugin'), [extractOptions]) + } + + if (isProd) { + // optimize CSS (dedupe) + const cssProcessorOptions = { + safe: true, + autoprefixer: { disable: true }, + mergeLonghand: false + } + if (options.productionSourceMap && options.cssSourceMap) { + cssProcessorOptions.map = { inline: false } + } + webpackConfig + .plugin('optimize-css') + .use(require('optimize-css-assets-webpack-plugin'), [{ + canPrint: false, + cssProcessorOptions + }]) } }) } diff --git a/packages/@vue/cli-service/lib/config/dev.js b/packages/@vue/cli-service/lib/config/dev.js index 37970270c..4ca2c885d 100644 --- a/packages/@vue/cli-service/lib/config/dev.js +++ b/packages/@vue/cli-service/lib/config/dev.js @@ -1,6 +1,9 @@ module.exports = api => { api.chainWebpack(webpackConfig => { if (process.env.NODE_ENV === 'development') { + webpackConfig + .mode('development') + webpackConfig .devtool('cheap-module-eval-source-map') .output @@ -18,12 +21,11 @@ module.exports = api => { .plugin('no-emit-on-errors') .use(require('webpack/lib/NoEmitOnErrorsPlugin')) - webpackConfig - .plugin('watch-missing') - .use( - require('../webpack/WatchMissingNodeModulesPlugin'), - [api.resolve('node_modules')] - ) + if (!process.env.VUE_CLI_TEST) { + webpackConfig + .plugin('progress') + .use(require('webpack/lib/ProgressPlugin')) + } } }) } diff --git a/packages/@vue/cli-service/lib/config/prod.js b/packages/@vue/cli-service/lib/config/prod.js index bd26ac173..4ce62f2d2 100644 --- a/packages/@vue/cli-service/lib/config/prod.js +++ b/packages/@vue/cli-service/lib/config/prod.js @@ -2,6 +2,7 @@ module.exports = (api, options) => { api.chainWebpack(webpackConfig => { if (process.env.NODE_ENV === 'production') { webpackConfig + .mode('production') .devtool('source-map') .output .filename(`js/[name].[chunkhash:8].js`) @@ -12,28 +13,15 @@ module.exports = (api, options) => { .plugin('hash-module-ids') .use(require('webpack/lib/HashedModuleIdsPlugin')) - // enable scope hoisting / tree shaking - webpackConfig - .plugin('module-concatenation') - .use(require('webpack/lib/optimize/ModuleConcatenationPlugin')) - - // optimize CSS (dedupe) - webpackConfig - .plugin('optimize-css') - .use(require('optimize-css-assets-webpack-plugin'), [{ - cssProcessorOptions: options.productionSourceMap && options.cssSourceMap - ? { safe: true, map: { inline: false }} - : { safe: true } - }]) - - // minify JS - const UglifyPlugin = require('uglifyjs-webpack-plugin') - const getUglifyOptions = require('./uglifyOptions') - // disable during tests to speed things up - if (!process.env.VUE_CLI_TEST) { - webpackConfig - .plugin('uglify') - .use(UglifyPlugin, [getUglifyOptions(options)]) + // disable optimization during tests to speed things up + if (process.env.VUE_CLI_TEST) { + webpackConfig.optimization.minimize(false) + } else { + const UglifyPlugin = require('uglifyjs-webpack-plugin') + const uglifyOptions = require('./uglifyOptions') + webpackConfig.optimization.minimizer([ + new UglifyPlugin(uglifyOptions(options)) + ]) } } }) diff --git a/packages/@vue/cli-service/lib/webpack/resolveLoaderError.js b/packages/@vue/cli-service/lib/util/resolveLoaderError.js similarity index 100% rename from packages/@vue/cli-service/lib/webpack/resolveLoaderError.js rename to packages/@vue/cli-service/lib/util/resolveLoaderError.js diff --git a/packages/@vue/cli-service/lib/webpack/InlineSourcePlugin.js b/packages/@vue/cli-service/lib/webpack/InlineSourcePlugin.js deleted file mode 100644 index 7ccb2e435..000000000 --- a/packages/@vue/cli-service/lib/webpack/InlineSourcePlugin.js +++ /dev/null @@ -1,114 +0,0 @@ -/* - The MIT License (MIT) - Copyright (c) 2016 Jan Nicklas - https://github.com/DustinJackson/html-webpack-inline-source-plugin/blob/master/LICENSE - - Modified by Yuxi Evan You -*/ - -const path = require('path') -const slash = require('slash') -const sourceMapUrl = require('source-map-url') -const escapeRegex = require('escape-string-regexp') - -module.exports = class InlineSourcePlugin { - constructor (options = {}) { - this.options = options - } - - apply (compiler) { - // Hook into the html-webpack-plugin processing - compiler.plugin('compilation', compilation => { - compilation.plugin('html-webpack-plugin-before-html-generation', (htmlPluginData, callback) => { - callback(null, htmlPluginData) - }) - compilation.plugin('html-webpack-plugin-alter-asset-tags', (htmlPluginData, callback) => { - if (!this.options.include) { - return callback(null, htmlPluginData) - } - const regex = this.options.include - const result = this.processTags(compilation, regex, htmlPluginData) - callback(null, result) - }) - }) - } - - processTags (compilation, regex, pluginData) { - const processTag = tag => this.processTag(compilation, regex, tag) - return Object.assign({}, pluginData, { - head: pluginData.head.map(processTag), - body: pluginData.body.map(processTag) - }) - } - - processTag (compilation, regex, tag) { - let assetUrl - - // inline js - if (tag.tagName === 'script' && regex.test(tag.attributes.src)) { - assetUrl = tag.attributes.src - tag = { - tagName: 'script', - closeTag: true, - attributes: { - type: 'text/javascript' - } - } - - // inline css - } else if (tag.tagName === 'link' && regex.test(tag.attributes.href)) { - assetUrl = tag.attributes.href - tag = { - tagName: 'style', - closeTag: true, - attributes: { - type: 'text/css' - } - } - } - - if (assetUrl) { - // Strip public URL prefix from asset URL to get Webpack asset name - const publicUrlPrefix = compilation.outputOptions.publicPath || '' - const assetName = path.posix.relative(publicUrlPrefix, assetUrl) - const asset = compilation.assets[assetName] - // do not emit inlined assets - delete compilation.assets[assetName] - const updatedSource = this.resolveSourceMaps(compilation, assetName, asset) - tag.innerHTML = (tag.tagName === 'script') ? updatedSource.replace(/(<)(\/script>)/g, '\\x3C$2') : updatedSource - } - - return tag - } - - resolveSourceMaps (compilation, assetName, asset) { - let source = asset.source() - const out = compilation.outputOptions - // Get asset file absolute path - const assetPath = path.join(out.path, assetName) - // Extract original sourcemap URL from source string - if (typeof source !== 'string') { - source = source.toString() - } - const mapUrlOriginal = sourceMapUrl.getFrom(source) - // Return unmodified source if map is unspecified, URL-encoded, or already relative to site root - if (!mapUrlOriginal || mapUrlOriginal.indexOf('data:') === 0 || mapUrlOriginal.indexOf('/') === 0) { - return source - } - // Figure out sourcemap file path *relative to the asset file path* - const assetDir = path.dirname(assetPath) - const mapPath = path.join(assetDir, mapUrlOriginal) - const mapPathRelative = path.relative(out.path, mapPath) - // Starting with Node 6, `path` module throws on `undefined` - const publicPath = out.publicPath || '' - // Prepend Webpack public URL path to source map relative path - // Calling `slash` converts Windows backslashes to forward slashes - const mapUrlCorrected = slash(path.join(publicPath, mapPathRelative)) - // Regex: exact original sourcemap URL, possibly '*/' (for CSS), then EOF, ignoring whitespace - const regex = new RegExp(escapeRegex(mapUrlOriginal) + '(\\s*(?:\\*/)?\\s*$)') - // Replace sourcemap URL and (if necessary) preserve closing '*/' and whitespace - return source.replace(regex, (match, group) => { - return mapUrlCorrected + group - }) - } -} diff --git a/packages/@vue/cli-service/lib/webpack/PreloadPlugin.js b/packages/@vue/cli-service/lib/webpack/PreloadPlugin.js deleted file mode 100644 index ebb9a2a1b..000000000 --- a/packages/@vue/cli-service/lib/webpack/PreloadPlugin.js +++ /dev/null @@ -1,162 +0,0 @@ -/** - * @license - * Copyright 2017 Google Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * Modified by Yuxi Evan You - */ - -const flatten = arr => arr.reduce((prev, curr) => prev.concat(curr), []) -const getValues = obj => Object.keys(obj).map(key => obj[key]) - -const doesChunkBelongToHTML = (chunk, roots, visitedChunks) => { - // Prevent circular recursion. - // See https://github.com/GoogleChromeLabs/preload-webpack-plugin/issues/49 - if (visitedChunks[chunk.renderedHash]) { - return false - } - visitedChunks[chunk.renderedHash] = true - - for (const root of roots) { - if (root.hash === chunk.renderedHash) { - return true - } - } - - for (const parent of chunk.parents) { - if (doesChunkBelongToHTML(parent, roots, visitedChunks)) { - return true - } - } - - return false -} - -const defaultOptions = { - rel: 'preload', - include: 'asyncChunks', - fileBlacklist: [/\.map$/] -} - -module.exports = class PreloadPlugin { - constructor (options) { - this.options = Object.assign({}, defaultOptions, options) - } - - apply (compiler) { - const options = this.options - compiler.plugin('compilation', compilation => { - // Auto DLL plugin injects assets by mutating html plugin data, so the only - // way to get a hold of those is by saving the pre-mutated assets and - // comparing them later. - let originalAssets - compilation.plugin('html-webpack-plugin-before-html-generation', (htmlPluginData, cb) => { - originalAssets = [ - ...htmlPluginData.assets.js, - ...htmlPluginData.assets.css - ] - cb(null, htmlPluginData) - }) - - compilation.plugin('html-webpack-plugin-before-html-processing', (htmlPluginData, cb) => { - let filesToInclude = '' - let extractedChunks = [] - // 'asyncChunks' are chunks intended for lazy/async loading usually generated as - // part of code-splitting with import() or require.ensure(). By default, asyncChunks - // get wired up using link rel=preload when using this plugin. This behaviour can be - // configured to preload all types of chunks or just prefetch chunks as needed. - if (options.include === undefined || options.include === 'asyncChunks') { - try { - extractedChunks = compilation.chunks.filter(chunk => !chunk.isInitial()) - } catch (e) { - extractedChunks = compilation.chunks - } - } else if (options.include === 'initial') { - try { - extractedChunks = compilation.chunks.filter(chunk => chunk.isInitial()) - } catch (e) { - extractedChunks = compilation.chunks - } - } else if (options.include === 'all') { - // Async chunks, vendor chunks, normal chunks. - extractedChunks = compilation.chunks - } else if (Array.isArray(options.include)) { - // Keep only user specified chunks - extractedChunks = compilation - .chunks - .filter((chunk) => { - const chunkName = chunk.name - // Works only for named chunks - if (!chunkName) { - return false - } - return options.include.indexOf(chunkName) > -1 - }) - } - - const publicPath = compilation.outputOptions.publicPath || '' - - // Only handle the chunk imported by the htmlWebpackPlugin - extractedChunks = extractedChunks.filter(chunk => doesChunkBelongToHTML( - chunk, getValues(htmlPluginData.assets.chunks), {})) - - let files = flatten(extractedChunks.map(chunk => chunk.files)) - - // if handling initial or all chunks, also include assets injected by - // Auto DLL plugin. - if (options.include === 'initial' || options.include === 'all') { - files = [...htmlPluginData.assets.js, ...htmlPluginData.assets.css] - .filter(file => !originalAssets.includes(file)) - .map(file => file.replace(publicPath, '')) - .concat(files) - } - - Array.from(new Set(files)).filter(entry => { - return this.options.fileBlacklist.every(regex => regex.test(entry) === false) - }).forEach(entry => { - entry = `${publicPath}${entry}` - if (options.rel === 'preload') { - // If `as` value is not provided in option, dynamically determine the correct - // value depends on suffix of filename. Otherwise use the given `as` value. - let asValue - if (!options.as) { - if (entry.match(/\.css$/)) asValue = 'style' - else if (entry.match(/\.woff2$/)) asValue = 'font' - else asValue = 'script' - } else if (typeof options.as === 'function') { - asValue = options.as(entry) - } else { - asValue = options.as - } - const crossOrigin = asValue === 'font' ? 'crossorigin="crossorigin" ' : '' - filesToInclude += `\n` - } else { - // If preload isn't specified, the only other valid entry is prefetch here - // You could specify preconnect but as we're dealing with direct paths to resources - // instead of origins that would make less sense. - filesToInclude += `\n` - } - }) - if (htmlPluginData.html.indexOf('') !== -1) { - // If a valid closing is found, update it to include preload/prefetch tags - htmlPluginData.html = htmlPluginData.html.replace('', filesToInclude + '') - } else { - // Otherwise assume at least a is present and update it to include a new - htmlPluginData.html = htmlPluginData.html.replace('', '' + filesToInclude + '') - } - cb(null, htmlPluginData) - }) - }) - } -} diff --git a/packages/@vue/cli-service/lib/webpack/TimeFixPlugin.js b/packages/@vue/cli-service/lib/webpack/TimeFixPlugin.js deleted file mode 100644 index 05440f3d7..000000000 --- a/packages/@vue/cli-service/lib/webpack/TimeFixPlugin.js +++ /dev/null @@ -1,16 +0,0 @@ -module.exports = class TimeFixPlugin { - constructor (timefix = 11000) { - this.timefix = timefix - } - - apply (compiler) { - compiler.plugin('watch-run', (watching, callback) => { - watching.startTime += this.timefix - callback() - }) - - compiler.plugin('done', stats => { - stats.startTime -= this.timefix - }) - } -} diff --git a/packages/@vue/cli-service/lib/webpack/WatchMissingNodeModulesPlugin.js b/packages/@vue/cli-service/lib/webpack/WatchMissingNodeModulesPlugin.js deleted file mode 100644 index 2f2b95239..000000000 --- a/packages/@vue/cli-service/lib/webpack/WatchMissingNodeModulesPlugin.js +++ /dev/null @@ -1,32 +0,0 @@ -/** - * Copyright (c) 2015-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file at - * https://github.com/facebookincubator/create-react-app/blob/master/LICENSE - */ - -// This Webpack plugin ensures `npm install ` forces a project rebuild. -// We’re not sure why this isn't Webpack's default behavior. -// See https://github.com/facebookincubator/create-react-app/issues/186. - -module.exports = class WatchMissingNodeModulesPlugin { - constructor (nodeModulesPath) { - this.nodeModulesPath = nodeModulesPath - } - - apply (compiler) { - compiler.plugin('emit', (compilation, callback) => { - var missingDeps = compilation.missingDependencies - var nodeModulesPath = this.nodeModulesPath - - // If any missing files are expected to appear in node_modules... - if (missingDeps.some(file => file.indexOf(nodeModulesPath) !== -1)) { - // ...tell webpack to watch node_modules recursively until they appear. - compilation.contextDependencies.push(nodeModulesPath) - } - - callback() - }) - } -} diff --git a/packages/@vue/cli-service/package.json b/packages/@vue/cli-service/package.json index 4afd7409c..370c3e55c 100644 --- a/packages/@vue/cli-service/package.json +++ b/packages/@vue/cli-service/package.json @@ -25,17 +25,16 @@ "@vue/cli-shared-utils": "^3.0.0-beta.9", "@vue/web-component-wrapper": "^1.2.0", "address": "^1.0.3", - "autoprefixer": "^8.3.0", + "autoprefixer": "^8.4.1", "cache-loader": "^1.2.2", "case-sensitive-paths-webpack-plugin": "^2.1.2", - "chalk": "^2.4.0", + "chalk": "^2.4.1", "cliui": "^4.1.0", "copy-webpack-plugin": "^4.5.1", "css-loader": "^0.28.11", "escape-string-regexp": "^1.0.5", - "extract-text-webpack-plugin": "^3.0.2", "file-loader": "^1.1.11", - "friendly-errors-webpack-plugin": "^1.6.1", + "friendly-errors-webpack-plugin": "^1.7.0", "fs-extra": "^6.0.0", "get-value": "^3.0.1", "globby": "^8.0.1", @@ -43,11 +42,13 @@ "javascript-stringify": "^1.6.0", "launch-editor-middleware": "^2.2.1", "lodash.defaultsdeep": "^4.6.0", + "mini-css-extract-plugin": "^0.4.0", "minimist": "^1.2.0", - "optimize-css-assets-webpack-plugin": "^3.2.0", - "ora": "^2.0.0", + "optimize-css-assets-webpack-plugin": "^4.0.1", + "ora": "^2.1.0", "portfinder": "^1.0.13", - "postcss-loader": "^2.1.1", + "postcss-loader": "^2.1.5", + "preload-webpack-plugin": "^3.0.0-alpha.1", "read-pkg": "^3.0.0", "semver": "^5.5.0", "slash": "^2.0.0", @@ -58,9 +59,9 @@ "url-loader": "^1.0.1", "vue-loader": "^15.0.9", "vue-template-compiler": "^2.5.16", - "webpack": "^3.10.0", + "webpack": "^4.8.1", "webpack-chain": "^4.6.0", - "webpack-dev-server": "^2.11.1", + "webpack-dev-server": "^3.1.4", "webpack-merge": "^4.1.2", "yorkie": "^1.0.3" }, diff --git a/packages/@vue/cli-test-utils/package.json b/packages/@vue/cli-test-utils/package.json index 8acc5ec39..9a33a42c7 100644 --- a/packages/@vue/cli-test-utils/package.json +++ b/packages/@vue/cli-test-utils/package.json @@ -21,7 +21,8 @@ "access": "public" }, "dependencies": { - "execa": "^0.8.0", + "execa": "^0.10.0", + "json-server": "^0.12.2", "puppeteer": "^1.0.0", "strip-ansi": "^3.0.0" } diff --git a/packages/@vue/eslint-config-airbnb/package.json b/packages/@vue/eslint-config-airbnb/package.json index 1cb83744f..93a0f067a 100644 --- a/packages/@vue/eslint-config-airbnb/package.json +++ b/packages/@vue/eslint-config-airbnb/package.json @@ -22,7 +22,7 @@ "homepage": "https://github.com/vuejs/vue-cli/packages/@vue/eslint-config-airbnb#readme", "dependencies": { "eslint-config-airbnb-base": "^12.1.0", - "eslint-import-resolver-webpack": "^0.8.4", + "eslint-import-resolver-webpack": "^0.9.0", "eslint-plugin-import": "^2.11.0" } } diff --git a/packages/@vue/eslint-config-standard/package.json b/packages/@vue/eslint-config-standard/package.json index 0a4f9e305..5bd5b3237 100644 --- a/packages/@vue/eslint-config-standard/package.json +++ b/packages/@vue/eslint-config-standard/package.json @@ -21,8 +21,8 @@ }, "homepage": "https://github.com/vuejs/vue-cli/packages/@vue/eslint-config-standard#readme", "dependencies": { - "eslint-config-standard": "^11.0.0", - "eslint-plugin-import": "^2.9.0", + "eslint-config-standard": "^12.0.0-alpha.0", + "eslint-plugin-import": "^2.11.0", "eslint-plugin-node": "^6.0.1", "eslint-plugin-promise": "^3.7.0", "eslint-plugin-standard": "^3.1.0" diff --git a/packages/@vue/eslint-config-typescript/package.json b/packages/@vue/eslint-config-typescript/package.json index 2a922da3a..bfd24137c 100644 --- a/packages/@vue/eslint-config-typescript/package.json +++ b/packages/@vue/eslint-config-typescript/package.json @@ -21,7 +21,7 @@ }, "homepage": "https://github.com/vuejs/vue-cli/packages/@vue/eslint-config-typescript#readme", "dependencies": { - "eslint-plugin-typescript": "^0.11.0", + "eslint-plugin-typescript": "^0.12.0", "typescript-eslint-parser": "^15.0.0" } } diff --git a/yarn.lock b/yarn.lock index a55bf6ad9..0b00e0db0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -667,7 +667,7 @@ "@babel/helper-plugin-utils" "7.0.0-beta.46" "@babel/plugin-transform-typescript" "7.0.0-beta.46" -"@babel/runtime@7.0.0-beta.46": +"@babel/runtime@7.0.0-beta.46", "@babel/runtime@^7.0.0-beta.44": version "7.0.0-beta.46" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.0.0-beta.46.tgz#466a9c0498f6d12d054a185981eef742d59d4871" dependencies: @@ -866,6 +866,117 @@ version "1.2.0" resolved "https://registry.yarnpkg.com/@vue/web-component-wrapper/-/web-component-wrapper-1.2.0.tgz#bb0e46f1585a7e289b4ee6067dcc5a6ae62f1dd1" +"@webassemblyjs/ast@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.3.1.tgz#3081b4b3ff0af733aa5ba573af998f33711293f8" + dependencies: + "@webassemblyjs/helper-wasm-bytecode" "1.3.1" + "@webassemblyjs/wast-parser" "1.3.1" + webassemblyjs "1.3.1" + +"@webassemblyjs/floating-point-hex-parser@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.3.1.tgz#82646903ba25c3e5d88dec41ecb4e4d770615bfc" + +"@webassemblyjs/helper-buffer@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.3.1.tgz#aa66bb6c274a7e5610d7468f94a2702186713bc6" + +"@webassemblyjs/helper-code-frame@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.3.1.tgz#b5eba87cf37992e8a62c402545aed87dfd02be83" + dependencies: + "@webassemblyjs/wast-printer" "1.3.1" + +"@webassemblyjs/helper-fsm@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.3.1.tgz#297113d09a9541613eaeb265d7f948c5e03eb0a2" + +"@webassemblyjs/helper-wasm-bytecode@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.3.1.tgz#53b0308988e3a0cad836c83fc0801255906608f8" + +"@webassemblyjs/helper-wasm-section@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.3.1.tgz#3df13898e89a376ffb89439d216d9f0001bf9632" + dependencies: + "@webassemblyjs/ast" "1.3.1" + "@webassemblyjs/helper-buffer" "1.3.1" + "@webassemblyjs/helper-wasm-bytecode" "1.3.1" + "@webassemblyjs/wasm-gen" "1.3.1" + +"@webassemblyjs/leb128@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.3.1.tgz#e0cf1c585c72955637eeeabab1e2ab37c12c2338" + dependencies: + leb "^0.3.0" + +"@webassemblyjs/validation@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/validation/-/validation-1.3.1.tgz#ed0129d7ccca7858a3f46e7e47a6889008547a39" + dependencies: + "@webassemblyjs/ast" "1.3.1" + +"@webassemblyjs/wasm-edit@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.3.1.tgz#a16ca4d9a12144b1b28d4e66ad1ad66ec65e479e" + dependencies: + "@webassemblyjs/ast" "1.3.1" + "@webassemblyjs/helper-buffer" "1.3.1" + "@webassemblyjs/helper-wasm-bytecode" "1.3.1" + "@webassemblyjs/helper-wasm-section" "1.3.1" + "@webassemblyjs/wasm-gen" "1.3.1" + "@webassemblyjs/wasm-opt" "1.3.1" + "@webassemblyjs/wasm-parser" "1.3.1" + "@webassemblyjs/wast-printer" "1.3.1" + debug "^3.1.0" + +"@webassemblyjs/wasm-gen@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.3.1.tgz#43263fc56a0570e0564e407bbcd4c02e85167398" + dependencies: + "@webassemblyjs/ast" "1.3.1" + "@webassemblyjs/helper-wasm-bytecode" "1.3.1" + "@webassemblyjs/leb128" "1.3.1" + +"@webassemblyjs/wasm-opt@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.3.1.tgz#172601dcdaaacd6b0b002df1252033198c65eceb" + dependencies: + "@webassemblyjs/ast" "1.3.1" + "@webassemblyjs/helper-buffer" "1.3.1" + "@webassemblyjs/wasm-gen" "1.3.1" + "@webassemblyjs/wasm-parser" "1.3.1" + +"@webassemblyjs/wasm-parser@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.3.1.tgz#76727be6c313a9b775170ed38a126558eed7e8ef" + dependencies: + "@webassemblyjs/ast" "1.3.1" + "@webassemblyjs/helper-wasm-bytecode" "1.3.1" + "@webassemblyjs/leb128" "1.3.1" + "@webassemblyjs/wasm-parser" "1.3.1" + webassemblyjs "1.3.1" + +"@webassemblyjs/wast-parser@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.3.1.tgz#62b6eba09580477868dd394cee3e3f5c64e1f3f8" + dependencies: + "@webassemblyjs/ast" "1.3.1" + "@webassemblyjs/floating-point-hex-parser" "1.3.1" + "@webassemblyjs/helper-code-frame" "1.3.1" + "@webassemblyjs/helper-fsm" "1.3.1" + long "^3.2.0" + webassemblyjs "1.3.1" + +"@webassemblyjs/wast-printer@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.3.1.tgz#3e75b889e6f1ba2dfa854e4436b4287e7687e82c" + dependencies: + "@webassemblyjs/ast" "1.3.1" + "@webassemblyjs/wast-parser" "1.3.1" + long "^3.2.0" + JSONStream@^1.0.4: version "1.3.2" resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.2.tgz#c102371b6ec3a7cf3b847ca00c20bb0fce4c6dea" @@ -892,11 +1003,11 @@ accepts@~1.3.3, accepts@~1.3.4, accepts@~1.3.5: mime-types "~2.1.18" negotiator "0.6.1" -acorn-dynamic-import@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz#c752bd210bef679501b6c6cb7fc84f8f47158cc4" +acorn-dynamic-import@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz#901ceee4c7faaef7e07ad2a47e890675da50a278" dependencies: - acorn "^4.0.3" + acorn "^5.0.0" acorn-globals@^4.1.0: version "4.1.0" @@ -914,10 +1025,6 @@ acorn@^3.0.4: version "3.3.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" -acorn@^4.0.3: - version "4.0.13" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787" - acorn@^5.0.0, acorn@^5.3.0, acorn@^5.5.0: version "5.5.3" resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.5.3.tgz#f473dd47e0277a08e28e9bec5aeeb04751f0b8c9" @@ -958,7 +1065,7 @@ ajv@^4.9.1: co "^4.6.0" json-stable-stringify "^1.0.1" -ajv@^5.0.0, ajv@^5.1.0, ajv@^5.2.3, ajv@^5.3.0: +ajv@^5.1.0, ajv@^5.2.3, ajv@^5.3.0: version "5.5.2" resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" dependencies: @@ -1238,7 +1345,7 @@ async@^1.4.0, async@^1.5.0, async@^1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" -async@^2.1.2, async@^2.1.4, async@^2.3.0, async@^2.4.0, async@^2.4.1: +async@^2.1.4, async@^2.3.0, async@^2.4.0: version "2.6.0" resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4" dependencies: @@ -1267,15 +1374,15 @@ autoprefixer@^6.3.1: postcss "^5.2.16" postcss-value-parser "^3.2.3" -autoprefixer@^8.3.0: - version "8.3.0" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-8.3.0.tgz#22ac5151c3c8946bb8f75f337d5c5042c0ec6404" +autoprefixer@^8.4.1: + version "8.4.1" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-8.4.1.tgz#c6b30001ea4b3daa6b611e50071f62dd24beb564" dependencies: - browserslist "^3.2.4" - caniuse-lite "^1.0.30000830" + browserslist "^3.2.6" + caniuse-lite "^1.0.30000832" normalize-range "^0.1.2" num2fraction "^1.2.2" - postcss "^6.0.21" + postcss "^6.0.22" postcss-value-parser "^3.2.3" aws-sign2@~0.6.0: @@ -1298,7 +1405,7 @@ babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: esutils "^2.0.2" js-tokens "^3.0.2" -babel-core@7.0.0-bridge.0: +babel-core@7.0.0-bridge.0, babel-core@^7.0.0-0: version "7.0.0-bridge.0" resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" @@ -1681,6 +1788,10 @@ browser-stdout@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f" +browser-stdout@1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" + browserify-aes@^1.0.0, browserify-aes@^1.0.4: version "1.2.0" resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" @@ -1740,7 +1851,7 @@ browserslist@^1.3.6, browserslist@^1.5.2, browserslist@^1.7.6: caniuse-db "^1.0.30000639" electron-to-chromium "^1.2.7" -browserslist@^3.0.0, browserslist@^3.2.4: +browserslist@^3.0.0, browserslist@^3.2.6: version "3.2.6" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-3.2.6.tgz#138a44d04a9af64443679191d041f28ce5b965d5" dependencies: @@ -1909,10 +2020,6 @@ camelcase@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" -camelcase@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" - camelcase@^4.0.0, camelcase@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" @@ -1934,6 +2041,10 @@ caniuse-lite@^1.0.30000830: version "1.0.30000830" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000830.tgz#cb96b8a2dd3cbfe04acea2af3c4e894249095328" +caniuse-lite@^1.0.30000832: + version "1.0.30000835" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000835.tgz#517c4d3807a8527b0cbce1d84c85d4487f877268" + capture-stack-trace@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz#4a6fa07399c26bba47f0b2496b4d0fb408c5550d" @@ -1998,7 +2109,7 @@ chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.3.2, chalk@^2.4.0, chalk@^2.4.1: +chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.3.2, chalk@^2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" dependencies: @@ -2018,7 +2129,7 @@ check-more-types@2.24.0: version "2.24.0" resolved "https://registry.yarnpkg.com/check-more-types/-/check-more-types-2.24.0.tgz#1420ffb10fd444dcfc79b43891bbfffd32a84600" -chokidar@^1.6.0, chokidar@^1.6.1, chokidar@^1.7.0: +chokidar@^1.6.0, chokidar@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" dependencies: @@ -2055,9 +2166,13 @@ chownr@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181" -chromedriver@^2.38.1: - version "2.38.2" - resolved "https://registry.yarnpkg.com/chromedriver/-/chromedriver-2.38.2.tgz#e446e93b6bcd1f2b5bae544c7a64d470e73a47d1" +chrome-trace-event@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-0.1.3.tgz#d395af2d31c87b90a716c831fe326f69768ec084" + +chromedriver@^2.38.3: + version "2.38.3" + resolved "https://registry.yarnpkg.com/chromedriver/-/chromedriver-2.38.3.tgz#a432a254bc9ed1faa6edfa67cf5d1135aa2468d6" dependencies: del "^3.0.0" extract-zip "^1.6.6" @@ -2741,6 +2856,16 @@ cross-spawn@^5.0.1, cross-spawn@^5.1.0: shebang-command "^1.2.0" which "^1.2.9" +cross-spawn@^6.0.0: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + cryptiles@2.x.x: version "2.0.5" resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" @@ -3094,7 +3219,7 @@ deepmerge@^1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-1.5.2.tgz#10499d868844cdad4fee0842df8c7f6f0c95a753" -deepmerge@^2.0.1: +deepmerge@^2.0.1, deepmerge@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-2.1.0.tgz#511a54fff405fc346f0240bb270a3e9533a31102" @@ -3224,11 +3349,7 @@ diff@1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/diff/-/diff-1.4.0.tgz#7f28d2eb9ee7b15a97efd89ce63dcfdaa3ccbabf" -diff@3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75" - -diff@^3.2.0: +diff@3.5.0, diff@^3.2.0: version "3.5.0" resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" @@ -3464,14 +3585,13 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0: dependencies: once "^1.4.0" -enhanced-resolve@^3.0.0, enhanced-resolve@^3.4.0: - version "3.4.1" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz#0421e339fd71419b3da13d129b3979040230476e" +enhanced-resolve@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.0.0.tgz#e34a6eaa790f62fccd71d93959f56b2b432db10a" dependencies: graceful-fs "^4.1.2" memory-fs "^0.4.0" - object-assign "^4.0.1" - tapable "^0.2.7" + tapable "^1.0.0" enhanced-resolve@~0.9.0: version "0.9.1" @@ -3528,7 +3648,7 @@ es-to-primitive@^1.1.1: is-date-object "^1.0.1" is-symbol "^1.0.1" -es5-ext@^0.10.14, es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: +es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: version "0.10.42" resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.42.tgz#8c07dd33af04d5dcd1310b5cef13bea63a89ba8d" dependencies: @@ -3536,7 +3656,7 @@ es5-ext@^0.10.14, es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: es6-symbol "~3.1.1" next-tick "1" -es6-iterator@^2.0.1, es6-iterator@~2.0.1, es6-iterator@~2.0.3: +es6-iterator@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" dependencies: @@ -3544,17 +3664,6 @@ es6-iterator@^2.0.1, es6-iterator@~2.0.1, es6-iterator@~2.0.3: es5-ext "^0.10.35" es6-symbol "^3.1.1" -es6-map@^0.1.3: - version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0" - dependencies: - d "1" - es5-ext "~0.10.14" - es6-iterator "~2.0.1" - es6-set "~0.1.5" - es6-symbol "~3.1.1" - event-emitter "~0.3.5" - es6-promise@^4.0.3: version "4.2.4" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.4.tgz#dc4221c2b16518760bd8c39a52d8f356fc00ed29" @@ -3565,32 +3674,13 @@ es6-promisify@^5.0.0: dependencies: es6-promise "^4.0.3" -es6-set@~0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1" - dependencies: - d "1" - es5-ext "~0.10.14" - es6-iterator "~2.0.1" - es6-symbol "3.1.1" - event-emitter "~0.3.5" - -es6-symbol@3.1.1, es6-symbol@^3.1.1, es6-symbol@~3.1.1: +es6-symbol@^3.1.1, es6-symbol@~3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" dependencies: d "1" es5-ext "~0.10.14" -es6-weak-map@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f" - dependencies: - d "1" - es5-ext "^0.10.14" - es6-iterator "^2.0.1" - es6-symbol "^3.1.1" - escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" @@ -3610,15 +3700,6 @@ escodegen@1.x.x, escodegen@^1.9.0: optionalDependencies: source-map "~0.6.1" -escope@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3" - dependencies: - es6-map "^0.1.3" - es6-weak-map "^2.0.1" - esrecurse "^4.1.0" - estraverse "^4.1.1" - eslint-config-airbnb-base@^12.1.0: version "12.1.0" resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-12.1.0.tgz#386441e54a12ccd957b0a92564a4bafebd747944" @@ -3631,9 +3712,9 @@ eslint-config-prettier@^2.9.0: dependencies: get-stdin "^5.0.1" -eslint-config-standard@^11.0.0: - version "11.0.0" - resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-11.0.0.tgz#87ee0d3c9d95382dc761958cbb23da9eea31e0ba" +eslint-config-standard@^12.0.0-alpha.0: + version "12.0.0-alpha.0" + resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-12.0.0-alpha.0.tgz#f21f864ba7f52f2eb98670c94b03322186ac18a5" eslint-import-resolver-node@^0.3.1: version "0.3.2" @@ -3642,20 +3723,20 @@ eslint-import-resolver-node@^0.3.1: debug "^2.6.9" resolve "^1.5.0" -eslint-import-resolver-webpack@^0.8.4: - version "0.8.4" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-webpack/-/eslint-import-resolver-webpack-0.8.4.tgz#0f7cd74bc9d7fc1773e8d5fc25baf864b2f87a42" +eslint-import-resolver-webpack@^0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-webpack/-/eslint-import-resolver-webpack-0.9.0.tgz#231ce1578ad5124da5799f029bd33d28137623e3" dependencies: array-find "^1.0.0" debug "^2.6.8" enhanced-resolve "~0.9.0" - find-root "^0.1.1" + find-root "^1.1.0" has "^1.0.1" interpret "^1.0.0" is-absolute "^0.2.3" - lodash.get "^3.7.0" + lodash.get "^4.4.2" node-libs-browser "^1.0.0 || ^2.0.0" - resolve "^1.2.0" + resolve "^1.4.0" semver "^5.3.0" eslint-loader@^2.0.0: @@ -3687,7 +3768,7 @@ eslint-plugin-html@^4.0.1: dependencies: htmlparser2 "^3.8.2" -eslint-plugin-import@^2.11.0, eslint-plugin-import@^2.9.0: +eslint-plugin-import@^2.11.0: version "2.11.0" resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.11.0.tgz#15aeea37a67499d848e8e981806d4627b5503816" dependencies: @@ -3726,9 +3807,9 @@ eslint-plugin-standard@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-3.1.0.tgz#2a9e21259ba4c47c02d53b2d0c9135d4b1022d47" -eslint-plugin-typescript@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-typescript/-/eslint-plugin-typescript-0.11.0.tgz#a8480beeac1634271737e0ff8af32d9119b0d272" +eslint-plugin-typescript@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-typescript/-/eslint-plugin-typescript-0.12.0.tgz#e23d58cb27fe28e89fc641a1f20e8d862cb99aef" dependencies: requireindex "~1.1.0" @@ -3738,7 +3819,7 @@ eslint-plugin-vue-libs@^2.1.0: dependencies: eslint-plugin-html "^4.0.1" -eslint-plugin-vue@^4.3.0, eslint-plugin-vue@^4.5.0: +eslint-plugin-vue@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-4.5.0.tgz#09d6597f4849e31a3846c2c395fccf17685b69c3" dependencies: @@ -3845,13 +3926,6 @@ etag@~1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" -event-emitter@~0.3.5: - version "0.3.5" - resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" - dependencies: - d "1" - es5-ext "~0.10.14" - eventemitter3@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.0.tgz#090b4d6cdbd645ed10bf750d4b5407942d7ba163" @@ -3879,6 +3953,18 @@ exec-sh@^0.2.0: dependencies: merge "^1.1.3" +execa@^0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.10.0.tgz#ff456a8f53f90f8eccc71a96d11bdfc7f082cb50" + dependencies: + cross-spawn "^6.0.0" + 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@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" @@ -4050,15 +4136,6 @@ extract-from-css@^0.4.4: dependencies: css "^2.1.0" -extract-text-webpack-plugin@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extract-text-webpack-plugin/-/extract-text-webpack-plugin-3.0.2.tgz#5f043eaa02f9750a9258b78c0a6e0dc1408fb2f7" - dependencies: - async "^2.4.1" - loader-utils "^1.1.0" - schema-utils "^0.3.0" - webpack-sources "^1.0.1" - extract-zip@1.6.6, extract-zip@^1.6.5, extract-zip@^1.6.6: version "1.6.6" resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.6.6.tgz#1290ede8d20d0872b429fd3f351ca128ec5ef85c" @@ -4262,9 +4339,9 @@ find-parent-dir@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/find-parent-dir/-/find-parent-dir-0.3.0.tgz#33c44b429ab2b2f0646299c5f9f718f376ff8d54" -find-root@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/find-root/-/find-root-0.1.2.tgz#98d2267cff1916ccaf2743b3a0eea81d79d7dcd1" +find-root@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" find-up@^1.0.0: version "1.1.2" @@ -4369,7 +4446,7 @@ fresh@0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" -friendly-errors-webpack-plugin@^1.6.1: +friendly-errors-webpack-plugin@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.7.0.tgz#efc86cbb816224565861a1be7a9d84d0aafea136" dependencies: @@ -4816,6 +4893,10 @@ has-symbol-support-x@^1.4.1: version "1.4.2" resolved "https://registry.yarnpkg.com/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz#1409f98bc00247da45da67cee0a36f282ff26455" +has-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" + has-to-string-tag-x@^1.2.0: version "1.4.1" resolved "https://registry.yarnpkg.com/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz#a045ab383d7b4b2012a00148ab0aa5f290044d4d" @@ -5027,14 +5108,14 @@ http-proxy-agent@1: debug "2" extend "3" -http-proxy-middleware@~0.17.4: - version "0.17.4" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.17.4.tgz#642e8848851d66f09d4f124912846dbaeb41b833" +http-proxy-middleware@~0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz#0987e6bb5a5606e5a69168d8f967a87f15dd8aab" dependencies: http-proxy "^1.16.2" - is-glob "^3.1.0" - lodash "^4.17.2" - micromatch "^2.3.11" + is-glob "^4.0.0" + lodash "^4.17.5" + micromatch "^3.1.9" http-proxy@^1.16.2, http-proxy@^1.8.1: version "1.17.0" @@ -6060,7 +6141,38 @@ jsdom-global@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/jsdom-global/-/jsdom-global-3.0.2.tgz#6bd299c13b0c4626b2da2c0393cd4385d606acb9" -jsdom@^11.5.1, jsdom@^11.6.2: +jsdom@^11.10.0: + version "11.10.0" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.10.0.tgz#a42cd54e88895dc765f03f15b807a474962ac3b5" + dependencies: + abab "^1.0.4" + acorn "^5.3.0" + acorn-globals "^4.1.0" + array-equal "^1.0.0" + cssom ">= 0.3.2 < 0.4.0" + cssstyle ">= 0.2.37 < 0.3.0" + data-urls "^1.0.0" + domexception "^1.0.0" + escodegen "^1.9.0" + html-encoding-sniffer "^1.0.2" + left-pad "^1.2.0" + nwmatcher "^1.4.3" + parse5 "4.0.0" + pn "^1.1.0" + request "^2.83.0" + request-promise-native "^1.0.5" + sax "^1.2.4" + symbol-tree "^3.2.2" + tough-cookie "^2.3.3" + w3c-hr-time "^1.0.1" + webidl-conversions "^4.0.2" + whatwg-encoding "^1.0.3" + whatwg-mimetype "^2.1.0" + whatwg-url "^6.4.0" + ws "^4.0.0" + xml-name-validator "^3.0.0" + +jsdom@^11.5.1: version "11.9.0" resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.9.0.tgz#58ac6dfd248d560d736b0202d74eedad55590cd9" dependencies: @@ -6103,10 +6215,6 @@ jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" -json-loader@^0.5.4: - version "0.5.7" - resolved "https://registry.yarnpkg.com/json-loader/-/json-loader-0.5.7.tgz#dca14a70235ff82f0ac9a3abeb60d337a365185d" - json-parse-better-errors@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" @@ -6249,12 +6357,12 @@ klaw@^1.0.0: optionalDependencies: graceful-fs "^4.1.9" -last-call-webpack-plugin@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-2.1.2.tgz#ad80c6e310998294d2ed2180a68e9589e4768c44" +last-call-webpack-plugin@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz#9742df0e10e3cf46e5c0381c2de90d3a7a2d7555" dependencies: - lodash "^4.17.4" - webpack-sources "^1.0.1" + lodash "^4.17.5" + webpack-sources "^1.1.0" latest-version@^3.0.0: version "3.1.0" @@ -6289,6 +6397,10 @@ lcid@^1.0.0: dependencies: invert-kv "^1.0.0" +leb@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/leb/-/leb-0.3.0.tgz#32bee9fad168328d6aea8522d833f4180eed1da3" + left-pad@^1.2.0: version "1.3.0" resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e" @@ -6564,10 +6676,6 @@ lodash._basefor@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/lodash._basefor/-/lodash._basefor-3.0.3.tgz#7550b4e9218ef09fad24343b612021c79b4c20c2" -lodash._baseget@^3.0.0: - version "3.7.2" - resolved "https://registry.yarnpkg.com/lodash._baseget/-/lodash._baseget-3.7.2.tgz#1b6ae1d5facf3c25532350a13c1197cb8bb674f4" - lodash._bindcallback@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz#e531c27644cf8b57a99e17ed95b35c748789392e" @@ -6588,16 +6696,6 @@ lodash._stack@^4.0.0: version "4.1.3" resolved "https://registry.yarnpkg.com/lodash._stack/-/lodash._stack-4.1.3.tgz#751aa76c1b964b047e76d14fc72a093fcb5e2dd0" -lodash._topath@^3.0.0: - version "3.8.1" - resolved "https://registry.yarnpkg.com/lodash._topath/-/lodash._topath-3.8.1.tgz#3ec5e2606014f4cb97f755fe6914edd8bfc00eac" - dependencies: - lodash.isarray "^3.0.0" - -lodash.assign@^4.0.3, lodash.assign@^4.0.6: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" - lodash.camelcase@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" @@ -6641,12 +6739,9 @@ lodash.endswith@^4.2.1: version "4.2.1" resolved "https://registry.yarnpkg.com/lodash.endswith/-/lodash.endswith-4.2.1.tgz#fed59ac1738ed3e236edd7064ec456448b37bc09" -lodash.get@^3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-3.7.0.tgz#3ce68ae2c91683b281cc5394128303cbf75e691f" - dependencies: - lodash._baseget "^3.0.0" - lodash._topath "^3.0.0" +lodash.get@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" lodash.isarguments@^3.0.0: version "3.1.0" @@ -6725,7 +6820,7 @@ lodash.uniq@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" -lodash@4, lodash@4.x, lodash@^4.11.2, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.3.0: +lodash@4, lodash@4.x, lodash@^4.11.2, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.3.0: version "4.17.10" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7" @@ -6756,6 +6851,17 @@ loglevel@^1.4.1: version "1.6.1" resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.1.tgz#e0fc95133b6ef276cdc8887cdaf24aa6f156f8fa" +loglevelnext@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/loglevelnext/-/loglevelnext-1.0.5.tgz#36fc4f5996d6640f539ff203ba819641680d75a2" + dependencies: + es6-symbol "^3.1.1" + object.assign "^4.1.0" + +long@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/long/-/long-3.2.0.tgz#d821b7138ca1cb581c172990ef14db200b5c474b" + longest@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" @@ -6766,7 +6872,7 @@ loose-envify@^1.0.0: dependencies: js-tokens "^3.0.0" -loud-rejection@^1.0.0: +loud-rejection@^1.0.0, loud-rejection@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" dependencies: @@ -6986,7 +7092,7 @@ micromatch@^2.1.5, micromatch@^2.3.11: 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.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" dependencies: @@ -7025,11 +7131,11 @@ mime@1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" -mime@^1.3.4, mime@^1.4.1, mime@^1.5.0: +mime@^1.3.4, mime@^1.4.1: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" -mime@^2.0.3: +mime@^2.0.3, mime@^2.1.0: version "2.3.1" resolved "https://registry.yarnpkg.com/mime/-/mime-2.3.1.tgz#b1621c54d63b97c47d3cfe7f7215f7d64517c369" @@ -7037,6 +7143,13 @@ mimic-fn@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" +mini-css-extract-plugin@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.0.tgz#ff3bf08bee96e618e177c16ca6131bfecef707f9" + dependencies: + loader-utils "^1.1.0" + webpack-sources "^1.1.0" + minimalistic-assert@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" @@ -7147,15 +7260,15 @@ mocha-nightwatch@3.2.2: mkdirp "0.5.1" supports-color "3.1.2" -mocha-webpack@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mocha-webpack/-/mocha-webpack-1.1.0.tgz#292158fc191641c943c1ee615329504f47c4b0ba" +mocha-webpack@^2.0.0-beta.0: + version "2.0.0-beta.0" + resolved "https://registry.yarnpkg.com/mocha-webpack/-/mocha-webpack-2.0.0-beta.0.tgz#d85fc9a70f82a4ad595b7702a1181605dfa59549" dependencies: babel-runtime "^6.18.0" chalk "^2.3.0" - chokidar "^1.6.1" + chokidar "^2.0.2" glob-parent "^3.1.0" - globby "^6.1.0" + globby "^7.1.1" interpret "^1.0.1" is-glob "^4.0.0" loader-utils "^1.1.0" @@ -7167,20 +7280,21 @@ mocha-webpack@^1.1.0: source-map-support "^0.5.0" strip-ansi "^4.0.0" toposort "^1.0.0" - yargs "^4.8.0" + yargs "^11.0.0" -mocha@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-4.1.0.tgz#7d86cfbcf35cb829e2754c32e17355ec05338794" +mocha@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-5.1.1.tgz#b774c75609dac05eb48f4d9ba1d827b97fde8a7b" dependencies: - browser-stdout "1.3.0" + browser-stdout "1.3.1" commander "2.11.0" debug "3.1.0" - diff "3.3.1" + diff "3.5.0" escape-string-regexp "1.0.5" glob "7.1.2" growl "1.10.3" he "1.1.1" + minimatch "3.0.4" mkdirp "0.5.1" supports-color "4.4.0" @@ -7298,6 +7412,10 @@ next-tick@1: version "1.0.0" resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" +nice-try@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.4.tgz#d93962f6c52f2c1558c0fbda6d512819f1efe1c4" + nightwatch@^0.9.21: version "0.9.21" resolved "https://registry.yarnpkg.com/nightwatch/-/nightwatch-0.9.21.tgz#9e794a7514b4fd5f46602d368e50515232ab9e90" @@ -7520,7 +7638,7 @@ object-hash@^1.1.4: version "1.3.0" resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-1.3.0.tgz#76d9ba6ff113cf8efc0d996102851fe6723963e2" -object-keys@^1.0.8: +object-keys@^1.0.11, object-keys@^1.0.8: version "1.0.11" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" @@ -7530,6 +7648,15 @@ object-visit@^1.0.0: dependencies: isobject "^3.0.0" +object.assign@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" + dependencies: + define-properties "^1.1.2" + function-bind "^1.1.1" + has-symbols "^1.0.0" + object-keys "^1.0.11" + object.getownpropertydescriptors@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" @@ -7597,12 +7724,12 @@ optimist@0.6.1, optimist@0.6.x, optimist@^0.6.1: minimist "~0.0.1" wordwrap "~0.0.2" -optimize-css-assets-webpack-plugin@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-3.2.0.tgz#09a40c4cefde1dd0142444a873c56aa29eb18e6f" +optimize-css-assets-webpack-plugin@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-4.0.1.tgz#48f016766752c7648b92cc1e795b999732bd87a2" dependencies: cssnano "^3.4.0" - last-call-webpack-plugin "^2.1.2" + last-call-webpack-plugin "^3.0.0" optionator@^0.8.1, optionator@^0.8.2: version "0.8.2" @@ -7633,9 +7760,9 @@ ora@^1.3.0: cli-spinners "^1.0.1" log-symbols "^2.1.0" -ora@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ora/-/ora-2.0.0.tgz#8ec3a37fa7bffb54a3a0c188a1f6798e7e1827cd" +ora@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/ora/-/ora-2.1.0.tgz#6caf2830eb924941861ec53a173799e008b51e5b" dependencies: chalk "^2.3.1" cli-cursor "^2.1.0" @@ -7658,12 +7785,6 @@ os-homedir@^1.0.0, os-homedir@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" -os-locale@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" - dependencies: - lcid "^1.0.0" - os-locale@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" @@ -7838,7 +7959,7 @@ path-is-inside@^1.0.1, path-is-inside@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" -path-key@^2.0.0: +path-key@^2.0.0, path-key@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" @@ -8042,9 +8163,9 @@ postcss-load-plugins@^2.3.0: cosmiconfig "^2.1.1" object-assign "^4.1.0" -postcss-loader@^2.1.1: - version "2.1.4" - resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-2.1.4.tgz#f44a6390e03c84108b2b2063182d1a1011b2ce76" +postcss-loader@^2.1.5: + version "2.1.5" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-2.1.5.tgz#3c6336ee641c8f95138172533ae461a83595e788" dependencies: loader-utils "^1.1.0" postcss "^6.0.0" @@ -8236,7 +8357,7 @@ postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0 source-map "^0.5.6" supports-color "^3.2.3" -postcss@^6.0.0, postcss@^6.0.1, postcss@^6.0.21: +postcss@^6.0.0, postcss@^6.0.1: version "6.0.21" resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.21.tgz#8265662694eddf9e9a5960db6da33c39e4cd069d" dependencies: @@ -8244,7 +8365,7 @@ postcss@^6.0.0, postcss@^6.0.1, postcss@^6.0.21: source-map "^0.6.1" supports-color "^5.3.0" -postcss@^6.0.20: +postcss@^6.0.20, postcss@^6.0.22: version "6.0.22" resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.22.tgz#e23b78314905c3b90cbd61702121e7a78848f2a3" dependencies: @@ -8252,6 +8373,12 @@ postcss@^6.0.20: source-map "^0.6.1" supports-color "^5.4.0" +preload-webpack-plugin@^3.0.0-alpha.1: + version "3.0.0-alpha.3" + resolved "https://registry.yarnpkg.com/preload-webpack-plugin/-/preload-webpack-plugin-3.0.0-alpha.3.tgz#ecf0488a9f29b58e8e0ff295c7f6f11eb6c98efe" + dependencies: + "@babel/runtime" "^7.0.0-beta.44" + prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" @@ -8905,7 +9032,7 @@ resolve@1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" -resolve@^1.1.7, resolve@^1.2.0, resolve@^1.3.2, resolve@^1.3.3, resolve@^1.5.0, resolve@^1.6.0, resolve@^1.7.1: +resolve@^1.1.7, resolve@^1.3.2, resolve@^1.3.3, resolve@^1.4.0, resolve@^1.5.0, resolve@^1.6.0, resolve@^1.7.1: version "1.7.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.7.1.tgz#aadd656374fd298aee895bc026b8297418677fd3" dependencies: @@ -9012,13 +9139,7 @@ sax@^1.2.4, sax@~1.2.1: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" -schema-utils@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.3.0.tgz#f5877222ce3e931edae039f17eb3716e7137f8cf" - dependencies: - ajv "^5.0.0" - -schema-utils@^0.4.0, schema-utils@^0.4.2, schema-utils@^0.4.3, schema-utils@^0.4.5: +schema-utils@^0.4.0, schema-utils@^0.4.2, schema-utils@^0.4.3, schema-utils@^0.4.4, schema-utils@^0.4.5: version "0.4.5" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.5.tgz#21836f0608aac17b78f9e3e24daff14a5ca13a3e" dependencies: @@ -9682,7 +9803,7 @@ supports-color@^3.1.2, supports-color@^3.2.3: dependencies: has-flag "^1.0.0" -supports-color@^4.0.0, supports-color@^4.2.1: +supports-color@^4.0.0: version "4.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" dependencies: @@ -9733,10 +9854,6 @@ tapable@^0.1.8: version "0.1.10" resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.1.10.tgz#29c35707c2b70e50d07482b5d202e8ed446dafd4" -tapable@^0.2.7: - version "0.2.8" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.2.8.tgz#99372a5c999bf2df160afc0d74bed4f47948cd22" - tapable@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.0.0.tgz#cbb639d9002eed9c6b5975eb20598d7936f1f9f2" @@ -9858,10 +9975,6 @@ tildify@^1.2.0: dependencies: os-homedir "^1.0.0" -time-stamp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-2.0.0.tgz#95c6a44530e15ba8d6f4a3ecb8c3a3fac46da357" - timed-out@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" @@ -9988,12 +10101,12 @@ ts-jest@^22.0.1: pkg-dir "^2.0.0" yargs "^11.0.0" -ts-loader@^3.4.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-3.5.0.tgz#151d004dcddb4cf8e381a3bf9d6b74c2d957a9c0" +ts-loader@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-4.3.0.tgz#4e3ba172783d1256d3a23bdfadde011a795fae9e" dependencies: chalk "^2.3.0" - enhanced-resolve "^3.0.0" + enhanced-resolve "^4.0.0" loader-utils "^1.0.2" micromatch "^3.1.4" semver "^5.0.1" @@ -10011,9 +10124,9 @@ tslib@^1.8.0, tslib@^1.8.1: version "1.9.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.0.tgz#e37a86fda8cbbaf23a057f473c9f4dc64e5fc2e8" -tslint@^5.9.1: - version "5.9.1" - resolved "https://registry.yarnpkg.com/tslint/-/tslint-5.9.1.tgz#1255f87a3ff57eb0b0e1f0e610a8b4748046c9ae" +tslint@^5.10.0: + version "5.10.0" + resolved "https://registry.yarnpkg.com/tslint/-/tslint-5.10.0.tgz#11e26bccb88afa02dd0d9956cae3d4540b5f54c3" dependencies: babel-code-frame "^6.22.0" builtin-modules "^1.1.1" @@ -10098,7 +10211,7 @@ uglify-js@3.3.x: commander "~2.15.0" source-map "~0.6.1" -uglify-js@^2.6, uglify-js@^2.8.29: +uglify-js@^2.6: version "2.8.29" resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd" dependencies: @@ -10111,15 +10224,7 @@ uglify-to-browserify@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" -uglifyjs-webpack-plugin@^0.4.6: - version "0.4.6" - resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-0.4.6.tgz#b951f4abb6bd617e66f63eb891498e391763e309" - dependencies: - source-map "^0.5.6" - uglify-js "^2.8.29" - webpack-sources "^1.0.1" - -uglifyjs-webpack-plugin@^1.2.5: +uglifyjs-webpack-plugin@^1.2.4, uglifyjs-webpack-plugin@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.5.tgz#2ef8387c8f1a903ec5e44fa36f9f3cbdcea67641" dependencies: @@ -10279,6 +10384,10 @@ url-join@^2.0.2: version "2.0.5" resolved "https://registry.yarnpkg.com/url-join/-/url-join-2.0.5.tgz#5af22f18c052a000a48d7b82c5e9c2e2feeda728" +url-join@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/url-join/-/url-join-4.0.0.tgz#4d3340e807d3773bda9991f8305acdcc2a665d2a" + url-loader@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-1.0.1.tgz#61bc53f1f184d7343da2728a1289ef8722ea45ee" @@ -10495,7 +10604,7 @@ vue-style-loader@^4.1.0: hash-sum "^1.0.2" loader-utils "^1.0.2" -vue-template-compiler@^2.5.16: +vue-template-compiler@^2.5.13, vue-template-compiler@^2.5.16: version "2.5.16" resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.5.16.tgz#93b48570e56c720cdf3f051cc15287c26fbd04cb" dependencies: @@ -10539,7 +10648,7 @@ watch@~0.18.0: exec-sh "^0.2.0" minimist "^1.2.0" -watchpack@^1.4.0: +watchpack@^1.5.0: version "1.6.0" resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.6.0.tgz#4bc12c2ebe8aa277a71f1d3f14d685c7b446cd00" dependencies: @@ -10559,6 +10668,16 @@ wcwidth@^1.0.0, wcwidth@^1.0.1: dependencies: defaults "^1.0.3" +webassemblyjs@1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/webassemblyjs/-/webassemblyjs-1.3.1.tgz#2bb8ebc724d0fe09b9562ab20e32ce3f5bac5c74" + dependencies: + "@webassemblyjs/ast" "1.3.1" + "@webassemblyjs/validation" "1.3.1" + "@webassemblyjs/wasm-parser" "1.3.1" + "@webassemblyjs/wast-parser" "1.3.1" + long "^3.2.0" + webidl-conversions@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" @@ -10569,19 +10688,21 @@ webpack-chain@^4.6.0: dependencies: deepmerge "^1.5.2" -webpack-dev-middleware@1.12.2: - version "1.12.2" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.12.2.tgz#f8fc1120ce3b4fc5680ceecb43d777966b21105e" +webpack-dev-middleware@3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.1.3.tgz#8b32aa43da9ae79368c1bf1183f2b6cf5e1f39ed" dependencies: + loud-rejection "^1.6.0" memory-fs "~0.4.1" - mime "^1.5.0" + mime "^2.1.0" path-is-absolute "^1.0.0" range-parser "^1.0.3" - time-stamp "^2.0.0" + url-join "^4.0.0" + webpack-log "^1.0.1" -webpack-dev-server@^2.11.1: - version "2.11.2" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-2.11.2.tgz#1f4f4c78bf1895378f376815910812daf79a216f" +webpack-dev-server@^3.1.4: + version "3.1.4" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.1.4.tgz#9a08d13c4addd1e3b6d8ace116e86715094ad5b4" dependencies: ansi-html "0.0.7" array-includes "^3.0.3" @@ -10593,7 +10714,7 @@ webpack-dev-server@^2.11.1: del "^3.0.0" express "^4.16.2" html-entities "^1.2.0" - http-proxy-middleware "~0.17.4" + http-proxy-middleware "~0.18.0" import-local "^1.0.0" internal-ip "1.2.0" ip "^1.1.5" @@ -10608,8 +10729,18 @@ webpack-dev-server@^2.11.1: spdy "^3.4.1" strip-ansi "^3.0.0" supports-color "^5.1.0" - webpack-dev-middleware "1.12.2" - yargs "6.6.0" + webpack-dev-middleware "3.1.3" + webpack-log "^1.1.2" + yargs "11.0.0" + +webpack-log@^1.0.1, webpack-log@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-1.2.0.tgz#a4b34cda6b22b518dbb0ab32e567962d5c72a43d" + dependencies: + chalk "^2.1.0" + log-symbols "^2.1.0" + loglevelnext "^1.0.1" + uuid "^3.1.0" webpack-merge@^4.1.2: version "4.1.2" @@ -10628,32 +10759,32 @@ webpack-sources@^1.0.1, webpack-sources@^1.1.0: source-list-map "^2.0.0" source-map "~0.6.1" -webpack@^3.10.0: - version "3.11.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.11.0.tgz#77da451b1d7b4b117adaf41a1a93b5742f24d894" +webpack@^4.8.1: + version "4.8.1" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.8.1.tgz#59e38f99f2751c931dd09a035aba7bec4b5f916e" dependencies: + "@webassemblyjs/ast" "1.3.1" + "@webassemblyjs/wasm-edit" "1.3.1" + "@webassemblyjs/wasm-parser" "1.3.1" acorn "^5.0.0" - acorn-dynamic-import "^2.0.0" + acorn-dynamic-import "^3.0.0" ajv "^6.1.0" ajv-keywords "^3.1.0" - async "^2.1.2" - enhanced-resolve "^3.4.0" - escope "^3.6.0" - interpret "^1.0.0" - json-loader "^0.5.4" - json5 "^0.5.1" + chrome-trace-event "^0.1.1" + enhanced-resolve "^4.0.0" + eslint-scope "^3.7.1" loader-runner "^2.3.0" loader-utils "^1.1.0" memory-fs "~0.4.1" + micromatch "^3.1.8" mkdirp "~0.5.0" + neo-async "^2.5.0" node-libs-browser "^2.0.0" - source-map "^0.5.3" - supports-color "^4.2.1" - tapable "^0.2.7" - uglifyjs-webpack-plugin "^0.4.6" - watchpack "^1.4.0" + schema-utils "^0.4.4" + tapable "^1.0.0" + uglifyjs-webpack-plugin "^1.2.4" + watchpack "^1.5.0" webpack-sources "^1.0.1" - yargs "^8.0.2" websocket-driver@>=0.5.1: version "0.7.0" @@ -10688,10 +10819,6 @@ whet.extend@~0.9.9: version "0.9.9" resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1" -which-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" - which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" @@ -10722,10 +10849,6 @@ window-size@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" -window-size@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075" - wordwrap@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" @@ -10738,21 +10861,21 @@ wordwrap@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" -workbox-background-sync@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/workbox-background-sync/-/workbox-background-sync-3.1.0.tgz#8a7afcda4d2cd8ed4aa625c2fb740ed35ff25142" +workbox-background-sync@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/workbox-background-sync/-/workbox-background-sync-3.2.0.tgz#08d4f79fb82fb61f72fbd0359c4b616cc75612d4" dependencies: - workbox-core "^3.1.0" + workbox-core "^3.2.0" -workbox-broadcast-cache-update@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/workbox-broadcast-cache-update/-/workbox-broadcast-cache-update-3.1.0.tgz#bb9845ca1c21357bf5ff3b976398cbc38f073063" +workbox-broadcast-cache-update@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/workbox-broadcast-cache-update/-/workbox-broadcast-cache-update-3.2.0.tgz#65b4d9b3d4594751ab7ce1fee905c08214118fdc" dependencies: - workbox-core "^3.1.0" + workbox-core "^3.2.0" -workbox-build@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/workbox-build/-/workbox-build-3.1.0.tgz#547fb91c6bb3fa93395b512baf776a378ca988e1" +workbox-build@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/workbox-build/-/workbox-build-3.2.0.tgz#01f4a4f6fb5a94dadd3f86d04480c84578fa1125" dependencies: babel-runtime "^6.26.0" common-tags "^1.4.0" @@ -10761,70 +10884,84 @@ workbox-build@^3.1.0: joi "^11.1.1" lodash.template "^4.4.0" pretty-bytes "^4.0.2" - workbox-background-sync "^3.1.0" - workbox-broadcast-cache-update "^3.1.0" - workbox-cache-expiration "^3.1.0" - workbox-cacheable-response "^3.1.0" - workbox-core "^3.1.0" - workbox-google-analytics "^3.1.0" - workbox-precaching "^3.1.0" - workbox-routing "^3.1.0" - workbox-strategies "^3.1.0" - workbox-sw "^3.1.0" + workbox-background-sync "^3.2.0" + workbox-broadcast-cache-update "^3.2.0" + workbox-cache-expiration "^3.2.0" + workbox-cacheable-response "^3.2.0" + workbox-core "^3.2.0" + workbox-google-analytics "^3.2.0" + workbox-precaching "^3.2.0" + workbox-range-requests "^3.2.0" + workbox-routing "^3.2.0" + workbox-strategies "^3.2.0" + workbox-streams "^3.2.0" + workbox-sw "^3.2.0" -workbox-cache-expiration@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/workbox-cache-expiration/-/workbox-cache-expiration-3.1.0.tgz#e3178b5109ed9e3e059aa524396da3a3075305c0" +workbox-cache-expiration@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/workbox-cache-expiration/-/workbox-cache-expiration-3.2.0.tgz#a585761fd5438e439668afc6f862ac5a0ebca1a8" dependencies: - workbox-core "^3.1.0" + workbox-core "^3.2.0" -workbox-cacheable-response@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/workbox-cacheable-response/-/workbox-cacheable-response-3.1.0.tgz#64fdac9101c7718475766ff86e091443260d4348" +workbox-cacheable-response@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/workbox-cacheable-response/-/workbox-cacheable-response-3.2.0.tgz#1d8e3d437d60fb80d971d79545bb27acf1fe7653" dependencies: - workbox-core "^3.1.0" + workbox-core "^3.2.0" -workbox-core@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/workbox-core/-/workbox-core-3.1.0.tgz#974637bf9398b9e37ebd58d73dc6016c0fdc1d23" +workbox-core@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/workbox-core/-/workbox-core-3.2.0.tgz#d1bd4209447f5350d8dd6b964c86f054c96ffa0a" -workbox-google-analytics@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/workbox-google-analytics/-/workbox-google-analytics-3.1.0.tgz#ce7acd4e56b71ae425708717fe2e8d217b7b5750" +workbox-google-analytics@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/workbox-google-analytics/-/workbox-google-analytics-3.2.0.tgz#1005bc71ae03a8948b687896235dafecb1696c46" dependencies: - workbox-background-sync "^3.1.0" - workbox-core "^3.1.0" - workbox-routing "^3.1.0" - workbox-strategies "^3.1.0" + workbox-background-sync "^3.2.0" + workbox-core "^3.2.0" + workbox-routing "^3.2.0" + workbox-strategies "^3.2.0" -workbox-precaching@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/workbox-precaching/-/workbox-precaching-3.1.0.tgz#fb53f9c8e25d46bcb06da5e160c9b9d2d0e53058" +workbox-precaching@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/workbox-precaching/-/workbox-precaching-3.2.0.tgz#36568687a5615d8bd4191b38cf0f489a992d7bbc" dependencies: - workbox-core "^3.1.0" + workbox-core "^3.2.0" -workbox-routing@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/workbox-routing/-/workbox-routing-3.1.0.tgz#05a76ae7083c17402f4493407f15450e42e71bfd" +workbox-range-requests@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/workbox-range-requests/-/workbox-range-requests-3.2.0.tgz#5d6cc3621cef0951fc9c0549053f8e117736d321" dependencies: - workbox-core "^3.1.0" + workbox-core "^3.2.0" -workbox-strategies@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/workbox-strategies/-/workbox-strategies-3.1.0.tgz#5de2eba844f345da50441f973efdc1c2f763ea58" +workbox-routing@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/workbox-routing/-/workbox-routing-3.2.0.tgz#6aef7622ede2412dd116231f4f9408a6485a4832" dependencies: - workbox-core "^3.1.0" + workbox-core "^3.2.0" -workbox-sw@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/workbox-sw/-/workbox-sw-3.1.0.tgz#cf8c95a1258973d0fb519573a9d111e30788a7a0" +workbox-strategies@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/workbox-strategies/-/workbox-strategies-3.2.0.tgz#6cd5f00739764872b77b4c3766a606e43eb7d246" + dependencies: + workbox-core "^3.2.0" -workbox-webpack-plugin@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/workbox-webpack-plugin/-/workbox-webpack-plugin-3.1.0.tgz#ebb09bc51dafba5357bc019dc6552ccc33781f56" +workbox-streams@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/workbox-streams/-/workbox-streams-3.2.0.tgz#cac0e4f5693b5e13029cbd7e5fec4eb7fcb30d97" + dependencies: + workbox-core "^3.2.0" + +workbox-sw@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/workbox-sw/-/workbox-sw-3.2.0.tgz#ccda9adff557ba2233bf1837229144b4a86276cb" + +workbox-webpack-plugin@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/workbox-webpack-plugin/-/workbox-webpack-plugin-3.2.0.tgz#eab74294e88d86f4356a5dbac98cd803b22142b3" dependencies: json-stable-stringify "^1.0.1" - workbox-build "^3.1.0" + workbox-build "^3.2.0" worker-farm@^1.5.2: version "1.6.0" @@ -10939,19 +11076,6 @@ yaml-js@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/yaml-js/-/yaml-js-0.0.8.tgz#87cfa5a9613f48e26005420d6a8ee0da6fe8daec" -yargs-parser@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-2.4.1.tgz#85568de3cf150ff49fa51825f03a8c880ddcc5c4" - dependencies: - camelcase "^3.0.0" - lodash.assign "^4.0.6" - -yargs-parser@^4.2.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-4.2.1.tgz#29cceac0dc4f03c6c87b4a9f217dd18c9f74871c" - dependencies: - camelcase "^3.0.0" - yargs-parser@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-7.0.0.tgz#8d0ac42f16ea55debd332caf4c4038b3e3f5dfd9" @@ -10970,23 +11094,22 @@ yargs-parser@^9.0.2: dependencies: camelcase "^4.1.0" -yargs@6.6.0: - version "6.6.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208" +yargs@11.0.0, yargs@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-11.0.0.tgz#c052931006c5eee74610e5fc0354bedfd08a201b" dependencies: - camelcase "^3.0.0" - cliui "^3.2.0" + cliui "^4.0.0" decamelize "^1.1.1" + find-up "^2.1.0" get-caller-file "^1.0.1" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" + os-locale "^2.0.0" require-directory "^2.1.1" require-main-filename "^1.0.1" set-blocking "^2.0.0" - string-width "^1.0.2" - which-module "^1.0.0" + string-width "^2.0.0" + which-module "^2.0.0" y18n "^3.2.1" - yargs-parser "^4.2.0" + yargs-parser "^9.0.2" yargs@^10.0.3: version "10.1.2" @@ -11005,42 +11128,6 @@ yargs@^10.0.3: y18n "^3.2.1" yargs-parser "^8.1.0" -yargs@^11.0.0: - version "11.0.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-11.0.0.tgz#c052931006c5eee74610e5fc0354bedfd08a201b" - dependencies: - cliui "^4.0.0" - decamelize "^1.1.1" - find-up "^2.1.0" - get-caller-file "^1.0.1" - os-locale "^2.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1" - yargs-parser "^9.0.2" - -yargs@^4.8.0: - version "4.8.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-4.8.1.tgz#c0c42924ca4aaa6b0e6da1739dfb216439f9ddc0" - dependencies: - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - lodash.assign "^4.0.3" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^1.0.1" - which-module "^1.0.0" - window-size "^0.2.0" - y18n "^3.2.1" - yargs-parser "^2.4.1" - yargs@^8.0.2: version "8.0.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-8.0.2.tgz#6299a9055b1cefc969ff7e79c1d918dceb22c360"