@umijs/bundler-webpack 3.5.20 → 4.0.0-beta.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/bin/bundler-webpack.js +1 -2
- package/client/client/client.js +202 -0
- package/client/constants.js +12 -0
- package/client/utils/formatWebpackMessages.js +92 -0
- package/compiled/autoprefixer/LICENSE +20 -0
- package/compiled/autoprefixer/browserslist/index.d.ts +172 -0
- package/compiled/autoprefixer/index.js +9 -0
- package/compiled/autoprefixer/lib/autoprefixer.d.ts +95 -0
- package/compiled/autoprefixer/package.json +1 -0
- package/compiled/autoprefixer/postcss/lib/at-rule.d.ts +106 -0
- package/compiled/autoprefixer/postcss/lib/comment.d.ts +56 -0
- package/compiled/autoprefixer/postcss/lib/container.d.ts +442 -0
- package/compiled/autoprefixer/postcss/lib/css-syntax-error.d.ts +239 -0
- package/compiled/autoprefixer/postcss/lib/declaration.d.ts +124 -0
- package/compiled/autoprefixer/postcss/lib/document.d.ts +57 -0
- package/compiled/autoprefixer/postcss/lib/input.d.ts +150 -0
- package/compiled/autoprefixer/postcss/lib/lazy-result.d.ts +176 -0
- package/compiled/autoprefixer/postcss/lib/list.d.ts +51 -0
- package/compiled/autoprefixer/postcss/lib/no-work-result.d.ts +37 -0
- package/compiled/autoprefixer/postcss/lib/node.d.ts +478 -0
- package/compiled/autoprefixer/postcss/lib/postcss.d.ts +473 -0
- package/compiled/autoprefixer/postcss/lib/previous-map.d.ts +72 -0
- package/compiled/autoprefixer/postcss/lib/processor.d.ts +102 -0
- package/compiled/autoprefixer/postcss/lib/result.d.ts +196 -0
- package/compiled/autoprefixer/postcss/lib/root.d.ts +73 -0
- package/compiled/autoprefixer/postcss/lib/rule.d.ts +104 -0
- package/compiled/autoprefixer/postcss/lib/warning.d.ts +138 -0
- package/compiled/autoprefixer/source-map-js/source-map.d.ts +98 -0
- package/compiled/babel-loader/LICENSE +22 -0
- package/compiled/babel-loader/index.js +3 -0
- package/compiled/babel-loader/package.json +1 -0
- package/compiled/compression/LICENSE +23 -0
- package/compiled/compression/index.js +57 -0
- package/compiled/compression/package.json +1 -0
- package/compiled/connect-history-api-fallback/LICENSE +21 -0
- package/compiled/connect-history-api-fallback/index.js +1 -0
- package/compiled/connect-history-api-fallback/package.json +1 -0
- package/{lib/webpack/plugins/mini-css-extract-plugin → compiled/copy-webpack-plugin}/LICENSE +0 -0
- package/compiled/copy-webpack-plugin/index.js +46 -0
- package/compiled/copy-webpack-plugin/package.json +1 -0
- package/{lib/webpack/plugins/terser-webpack-plugin → compiled/css-loader}/LICENSE +0 -0
- package/compiled/css-loader/api.js +102 -0
- package/compiled/css-loader/getUrl.js +29 -0
- package/compiled/css-loader/index.js +2 -0
- package/compiled/css-loader/noSourceMaps.js +5 -0
- package/compiled/css-loader/package.json +1 -0
- package/compiled/css-loader/sourceMaps.js +22 -0
- package/compiled/css-minimizer-webpack-plugin/LICENSE +20 -0
- package/compiled/css-minimizer-webpack-plugin/index.js +3 -0
- package/compiled/css-minimizer-webpack-plugin/minify.js +72 -0
- package/compiled/css-minimizer-webpack-plugin/package.json +1 -0
- package/compiled/css-minimizer-webpack-plugin/utils.js +166 -0
- package/compiled/cssnano/index.js +192 -0
- package/compiled/cssnano/package.json +1 -0
- package/compiled/express/LICENSE +24 -0
- package/compiled/express/body-parser/index.d.ts +104 -0
- package/compiled/express/connect/index.d.ts +93 -0
- package/compiled/express/express-serve-static-core/index.d.ts +1252 -0
- package/compiled/express/index.d.ts +133 -0
- package/compiled/express/index.js +338 -0
- package/compiled/express/mime/index.d.ts +35 -0
- package/compiled/express/package.json +1 -0
- package/compiled/express/qs/index.d.ts +62 -0
- package/compiled/express/range-parser/index.d.ts +35 -0
- package/compiled/express/serve-static/index.d.ts +108 -0
- package/compiled/http-proxy-middleware/LICENSE +22 -0
- package/compiled/http-proxy-middleware/dist/index.d.ts +4 -0
- package/compiled/http-proxy-middleware/dist/types.d.ts +54 -0
- package/compiled/http-proxy-middleware/http-proxy/index.d.ts +226 -0
- package/compiled/http-proxy-middleware/index.js +66 -0
- package/compiled/http-proxy-middleware/package.json +1 -0
- package/compiled/less/index.js +31 -0
- package/compiled/less/package.json +1 -0
- package/compiled/less-loader/LICENSE +20 -0
- package/compiled/less-loader/index.js +1 -0
- package/compiled/less-loader/package.json +1 -0
- package/compiled/mini-css-extract-plugin/LICENSE +20 -0
- package/{lib/webpack/plugins/mini-css-extract-plugin/src → compiled/mini-css-extract-plugin}/hmr/hotModuleReplacement.js +50 -52
- package/compiled/mini-css-extract-plugin/hmr/normalize-url.js +35 -0
- package/compiled/mini-css-extract-plugin/index.js +11644 -0
- package/compiled/mini-css-extract-plugin/loader-options.json +32 -0
- package/compiled/mini-css-extract-plugin/loader.js +315 -0
- package/compiled/mini-css-extract-plugin/package.json +1 -0
- package/compiled/mini-css-extract-plugin/utils.js +159 -0
- package/compiled/postcss-flexbugs-fixes/LICENSE +20 -0
- package/compiled/postcss-flexbugs-fixes/index.js +1 -0
- package/compiled/postcss-flexbugs-fixes/package.json +1 -0
- package/compiled/postcss-loader/LICENSE +20 -0
- package/compiled/postcss-loader/index.js +1 -0
- package/compiled/postcss-loader/package.json +1 -0
- package/compiled/purgecss-webpack-plugin/LICENSE +21 -0
- package/compiled/purgecss-webpack-plugin/index.js +7781 -0
- package/compiled/purgecss-webpack-plugin/package.json +1 -0
- package/compiled/react-refresh/index.js +19 -0
- package/compiled/sass-loader/LICENSE +20 -0
- package/compiled/sass-loader/index.js +1 -0
- package/compiled/sass-loader/package.json +1 -0
- package/compiled/schema-utils/LICENSE +20 -0
- package/compiled/schema-utils/ajv/dist/ajv.d.ts +16 -0
- package/compiled/schema-utils/ajv/dist/compile/codegen/code.d.ts +39 -0
- package/compiled/schema-utils/ajv/dist/compile/codegen/index.d.ts +79 -0
- package/compiled/schema-utils/ajv/dist/compile/codegen/scope.d.ts +79 -0
- package/compiled/schema-utils/ajv/dist/compile/errors.d.ts +13 -0
- package/compiled/schema-utils/ajv/dist/compile/index.d.ts +80 -0
- package/compiled/schema-utils/ajv/dist/compile/ref_error.d.ts +5 -0
- package/compiled/schema-utils/ajv/dist/compile/resolve.d.ts +12 -0
- package/compiled/schema-utils/ajv/dist/compile/rules.d.ts +28 -0
- package/compiled/schema-utils/ajv/dist/compile/util.d.ts +40 -0
- package/compiled/schema-utils/ajv/dist/compile/validate/index.d.ts +42 -0
- package/compiled/schema-utils/ajv/dist/compile/validate/subschema.d.ts +47 -0
- package/compiled/schema-utils/ajv/dist/core.d.ts +171 -0
- package/compiled/schema-utils/ajv/dist/runtime/validation_error.d.ts +7 -0
- package/compiled/schema-utils/ajv/dist/types/index.d.ts +177 -0
- package/compiled/schema-utils/ajv/dist/types/json-schema.d.ts +124 -0
- package/compiled/schema-utils/ajv/dist/types/jtd-schema.d.ts +168 -0
- package/compiled/schema-utils/ajv/lib/ajv.d.ts +397 -0
- package/compiled/schema-utils/declarations/ValidationError.d.ts +74 -0
- package/compiled/schema-utils/declarations/index.d.ts +3 -0
- package/compiled/schema-utils/declarations/validate.d.ts +37 -0
- package/compiled/schema-utils/index.js +9 -0
- package/compiled/schema-utils/json-schema/index.d.ts +751 -0
- package/compiled/schema-utils/package.json +1 -0
- package/compiled/schema-utils/uri-js/dist/es5/uri.all.d.ts +59 -0
- package/compiled/speed-measure-webpack-plugin/LICENSE +21 -0
- package/compiled/speed-measure-webpack-plugin/index.js +1 -0
- package/compiled/speed-measure-webpack-plugin/package.json +1 -0
- package/compiled/style-loader/LICENSE +20 -0
- package/compiled/style-loader/index.js +1 -0
- package/compiled/style-loader/package.json +1 -0
- package/compiled/style-loader/runtime/injectStylesIntoLinkTag.js +29 -0
- package/compiled/style-loader/runtime/injectStylesIntoStyleTag.js +104 -0
- package/compiled/style-loader/runtime/insertBySelector.js +39 -0
- package/compiled/style-loader/runtime/insertStyleElement.js +11 -0
- package/compiled/style-loader/runtime/isEqualLocals.js +35 -0
- package/compiled/style-loader/runtime/isOldIE.js +19 -0
- package/compiled/style-loader/runtime/setAttributesWithAttributes.js +16 -0
- package/compiled/style-loader/runtime/setAttributesWithAttributesAndNonce.js +10 -0
- package/compiled/style-loader/runtime/setAttributesWithoutAttributes.js +12 -0
- package/compiled/style-loader/runtime/singletonStyleDomAPI.js +93 -0
- package/compiled/style-loader/runtime/styleDomAPI.js +70 -0
- package/compiled/style-loader/runtime/styleTagTransform.js +16 -0
- package/compiled/svgo-loader/LICENSE +22 -0
- package/compiled/svgo-loader/index.js +4 -0
- package/compiled/svgo-loader/package.json +1 -0
- package/compiled/swc-loader/LICENSE +25 -0
- package/compiled/swc-loader/index.js +1 -0
- package/compiled/swc-loader/package.json +1 -0
- package/compiled/tapable/LICENSE +21 -0
- package/compiled/tapable/index.js +1 -0
- package/compiled/tapable/package.json +1 -0
- package/compiled/tapable/tapable.d.ts +116 -0
- package/compiled/terser/LICENSE +29 -0
- package/compiled/terser/index.js +1 -0
- package/compiled/terser/mappings.wasm +0 -0
- package/compiled/terser/package.json +1 -0
- package/compiled/terser/source-map/source-map.d.ts +369 -0
- package/compiled/terser/tools/terser.d.ts +207 -0
- package/compiled/terser-webpack-plugin/LICENSE +20 -0
- package/compiled/terser-webpack-plugin/ajv/lib/ajv.d.ts +397 -0
- package/compiled/terser-webpack-plugin/index.js +15019 -0
- package/compiled/terser-webpack-plugin/jest-worker/build/index.d.ts +49 -0
- package/compiled/terser-webpack-plugin/jest-worker/build/types.d.ts +143 -0
- package/compiled/terser-webpack-plugin/json-schema/index.d.ts +751 -0
- package/compiled/terser-webpack-plugin/minify.js +48 -0
- package/compiled/terser-webpack-plugin/package.json +1 -0
- package/compiled/terser-webpack-plugin/schema-utils/declarations/ValidationError.d.ts +74 -0
- package/compiled/terser-webpack-plugin/schema-utils/declarations/index.d.ts +3 -0
- package/compiled/terser-webpack-plugin/schema-utils/declarations/validate.d.ts +37 -0
- package/compiled/terser-webpack-plugin/source-map/source-map.d.ts +98 -0
- package/compiled/terser-webpack-plugin/types/cjs.d.ts +3 -0
- package/compiled/terser-webpack-plugin/types/index.d.ts +295 -0
- package/compiled/terser-webpack-plugin/types/utils.d.ts +102 -0
- package/compiled/terser-webpack-plugin/utils.js +690 -0
- package/compiled/url-loader/LICENSE +20 -0
- package/compiled/url-loader/index.js +15 -0
- package/compiled/url-loader/package.json +1 -0
- package/compiled/webpack/Chunk.js +1 -0
- package/compiled/webpack/Compilation.js +1 -0
- package/compiled/webpack/HotModuleReplacement.runtime.js +394 -0
- package/compiled/webpack/JavascriptHotModuleReplacement.runtime.js +462 -0
- package/compiled/webpack/LICENSE +20 -0
- package/compiled/webpack/LibraryTemplatePlugin.js +1 -0
- package/compiled/webpack/LoaderTargetPlugin.js +1 -0
- package/compiled/webpack/ModuleFilenameHelpers.js +1 -0
- package/compiled/webpack/NormalModule.js +1 -0
- package/compiled/webpack/RuntimeGlobals.js +1 -0
- package/compiled/webpack/RuntimeModule.js +1 -0
- package/compiled/webpack/SingleEntryPlugin.js +1 -0
- package/compiled/webpack/Template.js +1 -0
- package/compiled/webpack/ajv/lib/ajv.d.ts +397 -0
- package/compiled/webpack/deepImports.json +12 -0
- package/compiled/webpack/index.js +163291 -0
- package/compiled/webpack/json-schema/index.d.ts +751 -0
- package/compiled/webpack/lazy-compilation-node.js +40 -0
- package/compiled/webpack/lazy-compilation-web.js +74 -0
- package/compiled/webpack/package.json +5 -0
- package/compiled/webpack/schema-utils/declarations/ValidationError.d.ts +74 -0
- package/compiled/webpack/schema-utils/declarations/index.d.ts +3 -0
- package/compiled/webpack/schema-utils/declarations/validate.d.ts +37 -0
- package/compiled/webpack/types.d.ts +12664 -0
- package/compiled/webpack-5-chain/LICENSE +373 -0
- package/compiled/webpack-5-chain/index.js +1 -0
- package/compiled/webpack-5-chain/package.json +1 -0
- package/compiled/webpack-5-chain/types/index.d.ts +543 -0
- package/compiled/webpack-bundle-analyzer/LICENSE +20 -0
- package/compiled/webpack-bundle-analyzer/index.js +30 -0
- package/compiled/webpack-bundle-analyzer/package.json +1 -0
- package/compiled/webpack-bundle-analyzer/public/viewer.js +16 -0
- package/compiled/webpack-bundle-analyzer/public/viewer.js.LICENSE.txt +10 -0
- package/compiled/webpack-bundle-analyzer/public/viewer.js.map +1 -0
- package/compiled/webpack-dev-middleware/LICENSE +20 -0
- package/compiled/webpack-dev-middleware/index.js +27 -0
- package/compiled/webpack-dev-middleware/package.json +1 -0
- package/compiled/webpack-sources/LICENSE +21 -0
- package/compiled/webpack-sources/index.d.ts +20 -0
- package/compiled/webpack-sources/index.js +1 -0
- package/compiled/webpack-sources/lib/CachedSource.d.ts +18 -0
- package/compiled/webpack-sources/lib/CompatSource.d.ts +9 -0
- package/compiled/webpack-sources/lib/ConcatSource.d.ts +22 -0
- package/compiled/webpack-sources/lib/OriginalSource.d.ts +18 -0
- package/compiled/webpack-sources/lib/PrefixSource.d.ts +12 -0
- package/compiled/webpack-sources/lib/RawSource.d.ts +13 -0
- package/compiled/webpack-sources/lib/ReplaceSource.d.ts +35 -0
- package/compiled/webpack-sources/lib/SizeOnlySource.d.ts +7 -0
- package/compiled/webpack-sources/lib/Source.d.ts +45 -0
- package/compiled/webpack-sources/lib/SourceMapSource.d.ts +22 -0
- package/compiled/webpack-sources/lib/index.d.ts +60 -0
- package/compiled/webpack-sources/package.json +1 -0
- package/compiled/webpack-sources/source-list-map/index.d.ts +91 -0
- package/compiled/webpack-sources/source-map/source-map.d.ts +369 -0
- package/compiled/ws/LICENSE +19 -0
- package/compiled/ws/index.d.ts +359 -0
- package/compiled/ws/index.js +1 -0
- package/compiled/ws/package.json +1 -0
- package/dist/build.d.ts +17 -0
- package/dist/build.js +72 -0
- package/{lib → dist}/cli.d.ts +0 -0
- package/dist/cli.js +93 -0
- package/{lib/webpackHotDevClient/webpackHotDevClient.d.ts → dist/client/client.d.ts} +0 -0
- package/dist/client/client.js +239 -0
- package/dist/config/_sampleFeature.d.ts +10 -0
- package/dist/config/_sampleFeature.js +22 -0
- package/dist/config/assetRules.d.ts +11 -0
- package/dist/config/assetRules.js +57 -0
- package/dist/config/bundleAnalyzerPlugin.d.ts +10 -0
- package/dist/config/bundleAnalyzerPlugin.js +30 -0
- package/dist/config/compressPlugin.d.ts +10 -0
- package/dist/config/compressPlugin.js +77 -0
- package/dist/config/config.d.ts +20 -0
- package/dist/config/config.js +178 -0
- package/dist/config/copyPlugin.d.ts +10 -0
- package/dist/config/copyPlugin.js +49 -0
- package/dist/config/cssRules.d.ts +11 -0
- package/dist/config/cssRules.js +98 -0
- package/dist/config/definePlugin.d.ts +15 -0
- package/dist/config/definePlugin.js +45 -0
- package/dist/config/fastRefreshPlugin.d.ts +12 -0
- package/dist/config/fastRefreshPlugin.js +34 -0
- package/dist/config/ignorePlugin.d.ts +10 -0
- package/dist/config/ignorePlugin.js +27 -0
- package/dist/config/javaScriptRules.d.ts +14 -0
- package/dist/config/javaScriptRules.js +155 -0
- package/dist/config/miniCSSExtractPlugin.d.ts +10 -0
- package/dist/config/miniCSSExtractPlugin.js +34 -0
- package/dist/config/nodePolyfill.d.ts +10 -0
- package/dist/config/nodePolyfill.js +34 -0
- package/dist/config/progressPlugin.d.ts +11 -0
- package/dist/config/progressPlugin.js +27 -0
- package/dist/config/purgecssWebpackPlugin.d.ts +10 -0
- package/dist/config/purgecssWebpackPlugin.js +32 -0
- package/dist/config/speedMeasureWebpackPlugin.d.ts +6 -0
- package/dist/config/speedMeasureWebpackPlugin.js +34 -0
- package/dist/config/svgRules.d.ts +12 -0
- package/dist/config/svgRules.js +57 -0
- package/dist/constants.d.ts +11 -0
- package/dist/constants.js +15 -0
- package/dist/dev.d.ts +19 -0
- package/dist/dev.js +87 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +16 -0
- package/dist/loader/svgr.d.ts +4 -0
- package/dist/loader/svgr.js +67 -0
- package/dist/plugins/ESBuildCSSMinifyPlugin.d.ts +11 -0
- package/dist/plugins/ESBuildCSSMinifyPlugin.js +65 -0
- package/dist/plugins/ProgressPlugin.d.ts +15 -0
- package/dist/plugins/ProgressPlugin.js +44 -0
- package/dist/plugins/_SamplePlugin.d.ts +9 -0
- package/dist/plugins/_SamplePlugin.js +14 -0
- package/dist/requireHook.d.ts +1 -0
- package/dist/requireHook.js +31 -0
- package/dist/schema.d.ts +3 -0
- package/dist/schema.js +72 -0
- package/dist/server/server.d.ts +16 -0
- package/dist/server/server.js +158 -0
- package/dist/server/ws.d.ts +8 -0
- package/dist/server/ws.js +42 -0
- package/dist/swcPlugins/autoCSSModules.d.ts +8 -0
- package/dist/swcPlugins/autoCSSModules.js +35 -0
- package/dist/swcPlugins/lockCoreJS.d.ts +6 -0
- package/dist/swcPlugins/lockCoreJS.js +23 -0
- package/dist/types.d.ts +100 -0
- package/dist/types.js +29 -0
- package/dist/utils/browsersList.d.ts +5 -0
- package/dist/utils/browsersList.js +10 -0
- package/dist/utils/depMatch.d.ts +6 -0
- package/dist/utils/depMatch.js +46 -0
- package/dist/utils/formatWebpackMessages.d.ts +12 -0
- package/dist/utils/formatWebpackMessages.js +100 -0
- package/package.json +171 -43
- package/bundled/css/hotModuleReplacement.js +0 -1203
- package/bundled/js/webpackHotDevClient.js +0 -13386
- package/lib/DevCompileDonePlugin.d.ts +0 -10
- package/lib/DevCompileDonePlugin.js +0 -53
- package/lib/cli.js +0 -184
- package/lib/getConfig/css.d.ts +0 -22
- package/lib/getConfig/css.js +0 -186
- package/lib/getConfig/getConfig.d.ts +0 -26
- package/lib/getConfig/getConfig.js +0 -578
- package/lib/getConfig/nodeModulesTransform.d.ts +0 -13
- package/lib/getConfig/nodeModulesTransform.js +0 -141
- package/lib/getConfig/pkgMatch.d.ts +0 -2
- package/lib/getConfig/pkgMatch.js +0 -58
- package/lib/getConfig/resolveDefine.d.ts +0 -5
- package/lib/getConfig/resolveDefine.js +0 -53
- package/lib/getConfig/runtimePublicPathEntry.d.ts +0 -1
- package/lib/getConfig/runtimePublicPathEntry.js +0 -3
- package/lib/getConfig/terserOptions.d.ts +0 -41
- package/lib/getConfig/terserOptions.js +0 -64
- package/lib/index.d.ts +0 -34
- package/lib/index.js +0 -314
- package/lib/requireHook.d.ts +0 -3
- package/lib/requireHook.js +0 -51
- package/lib/webpack/plugins/mini-css-extract-plugin/src/CssDependency.js +0 -94
- package/lib/webpack/plugins/mini-css-extract-plugin/src/CssDependencyTemplate.js +0 -26
- package/lib/webpack/plugins/mini-css-extract-plugin/src/CssLoadingRuntimeModule.js +0 -93
- package/lib/webpack/plugins/mini-css-extract-plugin/src/CssModule.js +0 -164
- package/lib/webpack/plugins/mini-css-extract-plugin/src/CssModuleFactory.js +0 -32
- package/lib/webpack/plugins/mini-css-extract-plugin/src/cjs.js +0 -15
- package/lib/webpack/plugins/mini-css-extract-plugin/src/index.js +0 -542
- package/lib/webpack/plugins/mini-css-extract-plugin/src/loader.js +0 -319
- package/lib/webpack/plugins/mini-css-extract-plugin/src/utils.js +0 -97
- package/lib/webpack/plugins/mini-css-extract-plugin.d.ts +0 -1
- package/lib/webpack/plugins/mini-css-extract-plugin.js +0 -15
- package/lib/webpack/plugins/terser-webpack-plugin/package.json +0 -3
- package/lib/webpack/plugins/terser-webpack-plugin/src/Webpack4Cache.js +0 -187
- package/lib/webpack/plugins/terser-webpack-plugin/src/Webpack5Cache.js +0 -61
- package/lib/webpack/plugins/terser-webpack-plugin/src/index.js +0 -683
- package/lib/webpack/plugins/terser-webpack-plugin/src/minify.js +0 -197
- package/lib/webpack/plugins/terser-webpack-plugin.d.ts +0 -1
- package/lib/webpack/plugins/terser-webpack-plugin.js +0 -15
- package/lib/webpackHotDevClient/formatWebpackMessages.d.ts +0 -11
- package/lib/webpackHotDevClient/formatWebpackMessages.js +0 -127
- package/lib/webpackHotDevClient/webpackHotDevClient.js +0 -311
package/README.md
CHANGED
package/bin/bundler-webpack.js
CHANGED
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
import stripAnsi from '@umijs/utils/compiled/strip-ansi';
|
|
2
|
+
// @ts-ignore
|
|
3
|
+
import * as ErrorOverlay from 'react-error-overlay';
|
|
4
|
+
import { MESSAGE_TYPE } from '../constants';
|
|
5
|
+
import { formatWebpackMessages } from '../utils/formatWebpackMessages';
|
|
6
|
+
console.log('[webpack] connecting...');
|
|
7
|
+
let pingTimer = null;
|
|
8
|
+
const host = location.host;
|
|
9
|
+
const wsUrl = `ws://${host}`;
|
|
10
|
+
let isFirstCompilation = true;
|
|
11
|
+
let mostRecentCompilationHash = null;
|
|
12
|
+
let hasCompileErrors = false;
|
|
13
|
+
let hadRuntimeError = false;
|
|
14
|
+
const socket = new WebSocket(wsUrl, 'webpack-hmr');
|
|
15
|
+
socket.addEventListener('message', async ({ data }) => {
|
|
16
|
+
data = JSON.parse(data);
|
|
17
|
+
if (data.type === 'connected') {
|
|
18
|
+
console.log(`[webpack] connected.`);
|
|
19
|
+
// proxy(nginx, docker) hmr ws maybe caused timeout,
|
|
20
|
+
// so send ping package let ws keep alive.
|
|
21
|
+
pingTimer = setInterval(() => socket.send('ping'), 30000);
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
handleMessage(data).catch(console.error);
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
async function waitForSuccessfulPing(ms = 1000) {
|
|
28
|
+
// eslint-disable-next-line no-constant-condition
|
|
29
|
+
while (true) {
|
|
30
|
+
try {
|
|
31
|
+
await fetch(`/__umi_ping`);
|
|
32
|
+
break;
|
|
33
|
+
}
|
|
34
|
+
catch (e) {
|
|
35
|
+
await new Promise((resolve) => setTimeout(resolve, ms));
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
socket.addEventListener('close', async () => {
|
|
40
|
+
if (pingTimer)
|
|
41
|
+
clearInterval(pingTimer);
|
|
42
|
+
console.info('[webpack] Dev server disconnected. Polling for restart...');
|
|
43
|
+
await waitForSuccessfulPing();
|
|
44
|
+
location.reload();
|
|
45
|
+
});
|
|
46
|
+
ErrorOverlay.startReportingRuntimeErrors({
|
|
47
|
+
onError: function () {
|
|
48
|
+
hadRuntimeError = true;
|
|
49
|
+
},
|
|
50
|
+
filename: '/static/js/bundle.js',
|
|
51
|
+
});
|
|
52
|
+
// @ts-ignore
|
|
53
|
+
if (module.hot && typeof module.hot.dispose === 'function') {
|
|
54
|
+
// @ts-ignore
|
|
55
|
+
module.hot.dispose(function () {
|
|
56
|
+
// TODO: why do we need this?
|
|
57
|
+
ErrorOverlay.stopReportingRuntimeErrors();
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
// There is a newer version of the code available.
|
|
61
|
+
function handleAvailableHash(hash) {
|
|
62
|
+
// Update last known compilation hash.
|
|
63
|
+
mostRecentCompilationHash = hash;
|
|
64
|
+
}
|
|
65
|
+
function handleSuccess() {
|
|
66
|
+
const isHotUpdate = !isFirstCompilation;
|
|
67
|
+
isFirstCompilation = false;
|
|
68
|
+
hasCompileErrors = false;
|
|
69
|
+
// Attempt to apply hot updates or reload.
|
|
70
|
+
if (isHotUpdate) {
|
|
71
|
+
tryApplyUpdates(function onHotUpdateSuccess() {
|
|
72
|
+
// Only dismiss it when we're sure it's a hot update.
|
|
73
|
+
// Otherwise it would flicker right before the reload.
|
|
74
|
+
tryDismissErrorOverlay();
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
function handleWarnings(warnings) {
|
|
79
|
+
const isHotUpdate = !isFirstCompilation;
|
|
80
|
+
isFirstCompilation = false;
|
|
81
|
+
hasCompileErrors = false;
|
|
82
|
+
const formatted = formatWebpackMessages({
|
|
83
|
+
warnings,
|
|
84
|
+
errors: [],
|
|
85
|
+
});
|
|
86
|
+
// print warnings
|
|
87
|
+
if (typeof console !== 'undefined' && typeof console.warn === 'function') {
|
|
88
|
+
for (let i = 0; i < formatted.warnings.length; i++) {
|
|
89
|
+
if (i === 5) {
|
|
90
|
+
console.warn('There were more warnings in other files.\n' +
|
|
91
|
+
'You can find a complete log in the terminal.');
|
|
92
|
+
break;
|
|
93
|
+
}
|
|
94
|
+
console.warn(stripAnsi(formatted.warnings[i]));
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
// Attempt to apply hot updates or reload.
|
|
98
|
+
if (isHotUpdate) {
|
|
99
|
+
tryApplyUpdates(function onSuccessfulHotUpdate() {
|
|
100
|
+
// Only dismiss it when we're sure it's a hot update.
|
|
101
|
+
// Otherwise it would flicker right before the reload.
|
|
102
|
+
tryDismissErrorOverlay();
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
function handleErrors(errors) {
|
|
107
|
+
isFirstCompilation = false;
|
|
108
|
+
hasCompileErrors = true;
|
|
109
|
+
const formatted = formatWebpackMessages({
|
|
110
|
+
warnings: [],
|
|
111
|
+
errors,
|
|
112
|
+
});
|
|
113
|
+
// Only show the first error.
|
|
114
|
+
ErrorOverlay.reportBuildError(formatted.errors[0]);
|
|
115
|
+
// Also log them to the console.
|
|
116
|
+
if (typeof console !== 'undefined' && typeof console.error === 'function') {
|
|
117
|
+
for (let i = 0; i < formatted.errors.length; i++) {
|
|
118
|
+
console.error(stripAnsi(formatted.errors[i]));
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
function tryDismissErrorOverlay() {
|
|
123
|
+
if (!hasCompileErrors) {
|
|
124
|
+
ErrorOverlay.dismissBuildError();
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
// Is there a newer version of this code available?
|
|
128
|
+
function isUpdateAvailable() {
|
|
129
|
+
// @ts-ignore
|
|
130
|
+
return mostRecentCompilationHash !== __webpack_hash__;
|
|
131
|
+
}
|
|
132
|
+
function canApplyUpdates() {
|
|
133
|
+
// @ts-ignore
|
|
134
|
+
return module.hot.status() === 'idle';
|
|
135
|
+
}
|
|
136
|
+
function canAcceptErrors() {
|
|
137
|
+
// NOTE: This var is injected by Webpack's DefinePlugin, and is a boolean instead of string.
|
|
138
|
+
const hasReactRefresh = process.env.FAST_REFRESH;
|
|
139
|
+
// @ts-ignore
|
|
140
|
+
const status = module.hot.status();
|
|
141
|
+
// React refresh can handle hot-reloading over errors.
|
|
142
|
+
// However, when hot-reload status is abort or fail,
|
|
143
|
+
// it indicates the current update cannot be applied safely,
|
|
144
|
+
// and thus we should bail out to a forced reload for consistency.
|
|
145
|
+
return hasReactRefresh && ['abort', 'fail'].indexOf(status) === -1;
|
|
146
|
+
}
|
|
147
|
+
function tryApplyUpdates(onHotUpdateSuccess) {
|
|
148
|
+
// @ts-ignore
|
|
149
|
+
if (!module.hot) {
|
|
150
|
+
window.location.reload();
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
if (!isUpdateAvailable() || !canApplyUpdates()) {
|
|
154
|
+
return;
|
|
155
|
+
}
|
|
156
|
+
function handleApplyUpdates(err, updatedModules) {
|
|
157
|
+
const haveErrors = err || hadRuntimeError;
|
|
158
|
+
// When there is no error but updatedModules is unavailable,
|
|
159
|
+
// it indicates a critical failure in hot-reloading,
|
|
160
|
+
// e.g. server is not ready to serve new bundle,
|
|
161
|
+
// and hence we need to do a forced reload.
|
|
162
|
+
const needsForcedReload = !err && !updatedModules;
|
|
163
|
+
if ((haveErrors && !canAcceptErrors()) || needsForcedReload) {
|
|
164
|
+
window.location.reload();
|
|
165
|
+
}
|
|
166
|
+
if (onHotUpdateSuccess)
|
|
167
|
+
onHotUpdateSuccess();
|
|
168
|
+
// While we were updating, there was a new update! Do it again.
|
|
169
|
+
if (isUpdateAvailable()) {
|
|
170
|
+
tryApplyUpdates();
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
// @ts-ignore
|
|
174
|
+
module.hot
|
|
175
|
+
.check(/* autoApply */ true)
|
|
176
|
+
.then((updatedModules) => {
|
|
177
|
+
handleApplyUpdates(null, updatedModules);
|
|
178
|
+
})
|
|
179
|
+
.catch((err) => {
|
|
180
|
+
handleApplyUpdates(err, null);
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
async function handleMessage(payload) {
|
|
184
|
+
// console.log('[payload]', payload);
|
|
185
|
+
switch (payload.type) {
|
|
186
|
+
case MESSAGE_TYPE.hash:
|
|
187
|
+
handleAvailableHash(payload.data);
|
|
188
|
+
break;
|
|
189
|
+
case MESSAGE_TYPE.stillOk:
|
|
190
|
+
case MESSAGE_TYPE.ok:
|
|
191
|
+
handleSuccess();
|
|
192
|
+
break;
|
|
193
|
+
case MESSAGE_TYPE.errors:
|
|
194
|
+
handleErrors(payload.data);
|
|
195
|
+
break;
|
|
196
|
+
case MESSAGE_TYPE.warnings:
|
|
197
|
+
handleWarnings(payload.data);
|
|
198
|
+
break;
|
|
199
|
+
default:
|
|
200
|
+
// Do nothing
|
|
201
|
+
}
|
|
202
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export const DEFAULT_DEVTOOL = 'cheap-module-source-map';
|
|
2
|
+
export const DEFAULT_OUTPUT_PATH = 'dist';
|
|
3
|
+
export const MFSU_NAME = 'MFSU';
|
|
4
|
+
export var MESSAGE_TYPE;
|
|
5
|
+
(function (MESSAGE_TYPE) {
|
|
6
|
+
MESSAGE_TYPE["ok"] = "ok";
|
|
7
|
+
MESSAGE_TYPE["warnings"] = "warnings";
|
|
8
|
+
MESSAGE_TYPE["errors"] = "errors";
|
|
9
|
+
MESSAGE_TYPE["hash"] = "hash";
|
|
10
|
+
MESSAGE_TYPE["stillOk"] = "still-ok";
|
|
11
|
+
MESSAGE_TYPE["invalid"] = "invalid";
|
|
12
|
+
})(MESSAGE_TYPE || (MESSAGE_TYPE = {}));
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import stripAnsi from '@umijs/utils/compiled/strip-ansi';
|
|
2
|
+
const friendlySyntaxErrorLabel = 'Syntax error:';
|
|
3
|
+
function isLikelyASyntaxError(message) {
|
|
4
|
+
return stripAnsi(message).indexOf(friendlySyntaxErrorLabel) !== -1;
|
|
5
|
+
}
|
|
6
|
+
export function formatMessage(message) {
|
|
7
|
+
let lines = [];
|
|
8
|
+
if (typeof message === 'string') {
|
|
9
|
+
lines = message.split('\n');
|
|
10
|
+
}
|
|
11
|
+
else if ('message' in message) {
|
|
12
|
+
lines = message['message'].split('\n');
|
|
13
|
+
}
|
|
14
|
+
else if (Array.isArray(message)) {
|
|
15
|
+
message.forEach((message) => {
|
|
16
|
+
if ('message' in message) {
|
|
17
|
+
lines = message['message'].split('\n');
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
// Strip webpack-added headers off errors/warnings
|
|
22
|
+
// https://github.com/webpack/webpack/blob/master/lib/ModuleError.js
|
|
23
|
+
lines = lines.filter((line) => !/Module [A-z ]+\(from/.test(line));
|
|
24
|
+
// Transform parsing error into syntax error
|
|
25
|
+
// TODO: move this to our ESLint formatter?
|
|
26
|
+
lines = lines.map((line) => {
|
|
27
|
+
const parsingError = /Line (\d+):(?:(\d+):)?\s*Parsing error: (.+)$/.exec(line);
|
|
28
|
+
if (!parsingError) {
|
|
29
|
+
return line;
|
|
30
|
+
}
|
|
31
|
+
const [, errorLine, errorColumn, errorMessage] = parsingError;
|
|
32
|
+
return `${friendlySyntaxErrorLabel} ${errorMessage} (${errorLine}:${errorColumn})`;
|
|
33
|
+
});
|
|
34
|
+
message = lines.join('\n');
|
|
35
|
+
// Smoosh syntax errors (commonly found in CSS)
|
|
36
|
+
message = message.replace(/SyntaxError\s+\((\d+):(\d+)\)\s*(.+?)\n/g, `${friendlySyntaxErrorLabel} $3 ($1:$2)\n`);
|
|
37
|
+
// Clean up export errors
|
|
38
|
+
message = message.replace(/^.*export '(.+?)' was not found in '(.+?)'.*$/gm, `Attempted import error: '$1' is not exported from '$2'.`);
|
|
39
|
+
message = message.replace(/^.*export 'default' \(imported as '(.+?)'\) was not found in '(.+?)'.*$/gm, `Attempted import error: '$2' does not contain a default export (imported as '$1').`);
|
|
40
|
+
message = message.replace(/^.*export '(.+?)' \(imported as '(.+?)'\) was not found in '(.+?)'.*$/gm, `Attempted import error: '$1' is not exported from '$3' (imported as '$2').`);
|
|
41
|
+
lines = message.split('\n');
|
|
42
|
+
// Remove leading newline
|
|
43
|
+
if (lines.length > 2 && lines[1].trim() === '') {
|
|
44
|
+
lines.splice(1, 1);
|
|
45
|
+
}
|
|
46
|
+
// Clean up file name
|
|
47
|
+
lines[0] = lines[0].replace(/^(.*) \d+:\d+-\d+$/, '$1');
|
|
48
|
+
// Cleans up verbose "module not found" messages for files and packages.
|
|
49
|
+
if (lines[1] && lines[1].indexOf('Module not found: ') === 0) {
|
|
50
|
+
lines = [
|
|
51
|
+
lines[0],
|
|
52
|
+
lines[1]
|
|
53
|
+
.replace('Error: ', '')
|
|
54
|
+
.replace('Module not found: Cannot find file:', 'Cannot find file:'),
|
|
55
|
+
];
|
|
56
|
+
}
|
|
57
|
+
// Add helpful message for users trying to use Sass for the first time
|
|
58
|
+
if (lines[1] && lines[1].match(/Cannot find module.+sass/)) {
|
|
59
|
+
lines[1] = 'To import Sass files, you first need to install sass.\n';
|
|
60
|
+
lines[1] +=
|
|
61
|
+
'Run `npm install sass` or `yarn add sass` inside your workspace.';
|
|
62
|
+
}
|
|
63
|
+
message = lines.join('\n');
|
|
64
|
+
// Internal stacks are generally useless so we strip them... with the
|
|
65
|
+
// exception of stacks containing `webpack:` because they're normally
|
|
66
|
+
// from user code generated by webpack. For more information see
|
|
67
|
+
// https://github.com/facebook/create-react-app/pull/1050
|
|
68
|
+
message = message.replace(/^\s*at\s((?!webpack:).)*:\d+:\d+[\s)]*(\n|$)/gm, ''); // at ... ...:x:y
|
|
69
|
+
message = message.replace(/^\s*at\s<anonymous>(\n|$)/gm, ''); // at <anonymous>
|
|
70
|
+
lines = message.split('\n');
|
|
71
|
+
// Remove duplicated newlines
|
|
72
|
+
lines = lines.filter((line, index, arr) => index === 0 ||
|
|
73
|
+
line.trim() !== '' ||
|
|
74
|
+
line.trim() !== arr[index - 1].trim());
|
|
75
|
+
// Reassemble the message
|
|
76
|
+
message = lines.join('\n');
|
|
77
|
+
return message.trim();
|
|
78
|
+
}
|
|
79
|
+
export function formatWebpackMessages(json) {
|
|
80
|
+
const formattedErrors = json.errors.map(function (message) {
|
|
81
|
+
return formatMessage(message);
|
|
82
|
+
});
|
|
83
|
+
const formattedWarnings = json.warnings.map(function (message) {
|
|
84
|
+
return formatMessage(message);
|
|
85
|
+
});
|
|
86
|
+
const result = { errors: formattedErrors, warnings: formattedWarnings };
|
|
87
|
+
if (result.errors.some(isLikelyASyntaxError)) {
|
|
88
|
+
// If there are any syntax errors, show just them.
|
|
89
|
+
result.errors = result.errors.filter(isLikelyASyntaxError);
|
|
90
|
+
}
|
|
91
|
+
return result;
|
|
92
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
The MIT License (MIT)
|
|
2
|
+
|
|
3
|
+
Copyright 2013 Andrey Sitnik <andrey@sitnik.ru>
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
|
6
|
+
this software and associated documentation files (the "Software"), to deal in
|
|
7
|
+
the Software without restriction, including without limitation the rights to
|
|
8
|
+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
|
9
|
+
the Software, and to permit persons to whom the Software is furnished to do so,
|
|
10
|
+
subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
|
17
|
+
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
|
18
|
+
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
19
|
+
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
20
|
+
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Return array of browsers by selection queries.
|
|
3
|
+
*
|
|
4
|
+
* ```js
|
|
5
|
+
* browserslist('IE >= 10, IE 8') //=> ['ie 11', 'ie 10', 'ie 8']
|
|
6
|
+
* ```
|
|
7
|
+
*
|
|
8
|
+
* @param queries Browser queries.
|
|
9
|
+
* @returns Array with browser names in Can I Use.
|
|
10
|
+
*/
|
|
11
|
+
declare function browserslist(
|
|
12
|
+
queries?: string | readonly string[] | null,
|
|
13
|
+
opts?: browserslist.Options
|
|
14
|
+
): string[]
|
|
15
|
+
|
|
16
|
+
declare namespace browserslist {
|
|
17
|
+
interface Options {
|
|
18
|
+
/**
|
|
19
|
+
* Path to processed file. It will be used to find config files.
|
|
20
|
+
*/
|
|
21
|
+
path?: string | false
|
|
22
|
+
/**
|
|
23
|
+
* Processing environment. It will be used to take right queries
|
|
24
|
+
* from config file.
|
|
25
|
+
*/
|
|
26
|
+
env?: string
|
|
27
|
+
/**
|
|
28
|
+
* Custom browser usage statistics for "> 1% in my stats" query.
|
|
29
|
+
*/
|
|
30
|
+
stats?: Stats | string
|
|
31
|
+
/**
|
|
32
|
+
* Path to config file with queries.
|
|
33
|
+
*/
|
|
34
|
+
config?: string
|
|
35
|
+
/**
|
|
36
|
+
* Do not throw on unknown version in direct query.
|
|
37
|
+
*/
|
|
38
|
+
ignoreUnknownVersions?: boolean
|
|
39
|
+
/**
|
|
40
|
+
* Disable security checks for extend query.
|
|
41
|
+
*/
|
|
42
|
+
dangerousExtend?: boolean
|
|
43
|
+
/**
|
|
44
|
+
* Alias mobile browsers to the desktop version when Can I Use
|
|
45
|
+
* doesn’t have data about the specified version.
|
|
46
|
+
*/
|
|
47
|
+
mobileToDesktop?: boolean
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
type Config = {
|
|
51
|
+
defaults: string[]
|
|
52
|
+
[section: string]: string[] | undefined
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
interface Stats {
|
|
56
|
+
[browser: string]: {
|
|
57
|
+
[version: string]: number
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Browser names aliases.
|
|
63
|
+
*/
|
|
64
|
+
let aliases: {
|
|
65
|
+
[alias: string]: string | undefined
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Aliases to work with joined versions like `ios_saf 7.0-7.1`.
|
|
70
|
+
*/
|
|
71
|
+
let versionAliases: {
|
|
72
|
+
[browser: string]:
|
|
73
|
+
| {
|
|
74
|
+
[version: string]: string | undefined
|
|
75
|
+
}
|
|
76
|
+
| undefined
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Can I Use only provides a few versions for some browsers (e.g. `and_chr`).
|
|
81
|
+
*
|
|
82
|
+
* Fallback to a similar browser for unknown versions.
|
|
83
|
+
*/
|
|
84
|
+
let desktopNames: {
|
|
85
|
+
[browser: string]: string | undefined
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
let data: {
|
|
89
|
+
[browser: string]:
|
|
90
|
+
| {
|
|
91
|
+
name: string
|
|
92
|
+
versions: string[]
|
|
93
|
+
released: string[]
|
|
94
|
+
releaseDate: {
|
|
95
|
+
[version: string]: number | undefined | null
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
| undefined
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
interface Usage {
|
|
102
|
+
[version: string]: number
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
let usage: {
|
|
106
|
+
global?: Usage
|
|
107
|
+
custom?: Usage | null
|
|
108
|
+
[country: string]: Usage | undefined | null
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
let cache: {
|
|
112
|
+
[feature: string]: {
|
|
113
|
+
[name: string]: 'y' | 'n'
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Default browsers query
|
|
119
|
+
*/
|
|
120
|
+
let defaults: readonly string[]
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* Which statistics should be used. Country code or custom statistics.
|
|
124
|
+
* Pass `"my stats"` to load statistics from `Browserslist` files.
|
|
125
|
+
*/
|
|
126
|
+
type StatsOptions = string | 'my stats' | Stats | { dataByBrowser: Stats }
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* Return browsers market coverage.
|
|
130
|
+
*
|
|
131
|
+
* ```js
|
|
132
|
+
* browserslist.coverage(browserslist('> 1% in US'), 'US') //=> 83.1
|
|
133
|
+
* ```
|
|
134
|
+
*
|
|
135
|
+
* @param browsers Browsers names in Can I Use.
|
|
136
|
+
* @param stats Which statistics should be used.
|
|
137
|
+
* @returns Total market coverage for all selected browsers.
|
|
138
|
+
*/
|
|
139
|
+
function coverage(browsers: readonly string[], stats?: StatsOptions): number
|
|
140
|
+
|
|
141
|
+
function clearCaches(): void
|
|
142
|
+
|
|
143
|
+
function parseConfig(string: string): Config
|
|
144
|
+
|
|
145
|
+
function readConfig(file: string): Config
|
|
146
|
+
|
|
147
|
+
function findConfig(...pathSegments: string[]): Config | undefined
|
|
148
|
+
|
|
149
|
+
interface LoadConfigOptions {
|
|
150
|
+
config?: string
|
|
151
|
+
path?: string
|
|
152
|
+
env?: string
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
function loadConfig(options: LoadConfigOptions): string[] | undefined
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
declare global {
|
|
159
|
+
namespace NodeJS {
|
|
160
|
+
interface ProcessEnv {
|
|
161
|
+
BROWSERSLIST?: string
|
|
162
|
+
BROWSERSLIST_CONFIG?: string
|
|
163
|
+
BROWSERSLIST_DANGEROUS_EXTEND?: string
|
|
164
|
+
BROWSERSLIST_DISABLE_CACHE?: string
|
|
165
|
+
BROWSERSLIST_ENV?: string
|
|
166
|
+
BROWSERSLIST_IGNORE_OLD_DATA?: string
|
|
167
|
+
BROWSERSLIST_STATS?: string
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
export = browserslist
|