@umijs/bundler-webpack 4.0.42 → 4.0.43

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.
Files changed (84) hide show
  1. package/client/utils/formatWebpackMessages.js +27 -8
  2. package/compiled/babel-loader/index.js +8 -2
  3. package/compiled/babel-loader/package.json +1 -1
  4. package/compiled/less-loader/index.js +1 -1
  5. package/compiled/less-loader/package.json +1 -1
  6. package/compiled/mini-css-extract-plugin/hmr/hotModuleReplacement.js +22 -60
  7. package/compiled/mini-css-extract-plugin/hmr/normalize-url.js +2 -10
  8. package/compiled/mini-css-extract-plugin/index.js +492 -696
  9. package/compiled/mini-css-extract-plugin/loader.js +54 -120
  10. package/compiled/mini-css-extract-plugin/package.json +1 -1
  11. package/compiled/mini-css-extract-plugin/utils.js +27 -44
  12. package/compiled/postcss-loader/index.js +1 -1
  13. package/compiled/postcss-loader/package.json +1 -1
  14. package/compiled/sass-loader/index.js +1 -1
  15. package/compiled/sass-loader/package.json +1 -1
  16. package/compiled/sass-loader/sass.default.dart.js +4 -0
  17. package/compiled/terser/@jridgewell/gen-mapping/dist/types/gen-mapping.d.ts +90 -0
  18. package/compiled/terser/@jridgewell/gen-mapping/dist/types/sourcemap-segment.d.ts +12 -0
  19. package/compiled/terser/@jridgewell/gen-mapping/dist/types/types.d.ts +35 -0
  20. package/compiled/terser/@jridgewell/source-map/dist/types/source-map.d.ts +25 -0
  21. package/compiled/terser/@jridgewell/trace-mapping/dist/types/sourcemap-segment.d.ts +16 -0
  22. package/compiled/terser/@jridgewell/trace-mapping/dist/types/trace-mapping.d.ts +74 -0
  23. package/compiled/terser/@jridgewell/trace-mapping/dist/types/types.d.ts +92 -0
  24. package/compiled/terser/index.js +1 -1
  25. package/compiled/terser/package.json +1 -1
  26. package/compiled/terser/tools/terser.d.ts +6 -3
  27. package/compiled/terser-webpack-plugin/@jridgewell/trace-mapping/dist/types/sourcemap-segment.d.ts +16 -0
  28. package/compiled/terser-webpack-plugin/@jridgewell/trace-mapping/dist/types/trace-mapping.d.ts +74 -0
  29. package/compiled/terser-webpack-plugin/@jridgewell/trace-mapping/dist/types/types.d.ts +92 -0
  30. package/compiled/terser-webpack-plugin/index.js +1211 -3390
  31. package/compiled/terser-webpack-plugin/package.json +1 -1
  32. package/compiled/terser-webpack-plugin/types/index.d.ts +10 -10
  33. package/compiled/terser-webpack-plugin/types/utils.d.ts +10 -9
  34. package/compiled/terser-webpack-plugin/utils.js +36 -10
  35. package/compiled/webpack/package.json +1 -1
  36. package/compiled/webpack/types.d.ts +137 -126
  37. package/compiled/webpack-5-chain/index.js +1 -1
  38. package/compiled/webpack-5-chain/package.json +1 -1
  39. package/compiled/webpack-5-chain/types/index.d.ts +76 -20
  40. package/compiled/webpack-bundle-analyzer/index.js +7 -6
  41. package/compiled/webpack-bundle-analyzer/package.json +1 -1
  42. package/compiled/webpack-bundle-analyzer/public/viewer.js +2 -2
  43. package/compiled/webpack-bundle-analyzer/public/viewer.js.map +1 -1
  44. package/compiled/webpack-dev-middleware/index.js +5 -5
  45. package/compiled/webpack-dev-middleware/package.json +1 -1
  46. package/compiled/ws/LICENSE +13 -12
  47. package/compiled/ws/index.d.ts +73 -33
  48. package/compiled/ws/index.js +1 -1
  49. package/compiled/ws/package.json +1 -1
  50. package/dist/build.js +8 -2
  51. package/dist/cli.js +4 -1
  52. package/dist/config/compressPlugin.js +4 -1
  53. package/dist/config/config.js +41 -11
  54. package/dist/config/cssRules.js +17 -5
  55. package/dist/config/detectDeadCode.js +38 -8
  56. package/dist/config/detectDeadCodePlugin.js +8 -2
  57. package/dist/config/fastRefreshPlugin.js +4 -1
  58. package/dist/config/forkTSCheckerPlugin.js +4 -1
  59. package/dist/config/harmonyLinkingErrorPlugin.js +14 -11
  60. package/dist/config/javaScriptRules.js +10 -5
  61. package/dist/config/miniCSSExtractPlugin.js +4 -1
  62. package/dist/config/progressPlugin.js +9 -2
  63. package/dist/config/speedMeasureWebpackPlugin.js +7 -2
  64. package/dist/config/ssrPlugin.js +20 -6
  65. package/dist/config/svgRules.js +4 -1
  66. package/dist/dev.js +29 -10
  67. package/dist/loader/svgr.js +16 -11
  68. package/dist/loader/swc.js +26 -8
  69. package/dist/parcelCSS.js +4 -1
  70. package/dist/plugins/ProgressPlugin.js +6 -2
  71. package/dist/plugins/RuntimePublicPathPlugin.js +9 -6
  72. package/dist/plugins/_SamplePlugin.d.ts +1 -1
  73. package/dist/plugins/_SamplePlugin.js +1 -1
  74. package/dist/requireHook.js +4 -1
  75. package/dist/schema.js +58 -23
  76. package/dist/server/server.d.ts +1 -4
  77. package/dist/server/server.js +37 -23
  78. package/dist/server/ws.js +8 -3
  79. package/dist/swcPlugins/autoCSSModules.js +4 -1
  80. package/dist/swcPlugins/lockCoreJS.js +8 -2
  81. package/dist/types.d.ts +2 -1
  82. package/dist/utils/formatWebpackMessages.js +31 -9
  83. package/dist/utils/getEsBuildTarget.js +7 -1
  84. package/package.json +25 -24
@@ -1 +1 @@
1
- {"name":"terser-webpack-plugin","author":"webpack Contrib Team","license":"MIT","types":"types/index.d.ts"}
1
+ {"name":"terser-webpack-plugin","version":"5.3.6","author":"webpack Contrib Team","license":"MIT","types":"types/index.d.ts"}
@@ -7,7 +7,7 @@ export = TerserPlugin;
7
7
  /** @typedef {import('./utils').TerserECMA} TerserECMA */
8
8
  /** @typedef {import('./utils').TerserOptions} TerserOptions */
9
9
  /** @typedef {import('../jest-worker').Worker} JestWorker */
10
- /** @typedef {import('../source-map').RawSourceMap} RawSourceMap */
10
+ /** @typedef {import('../@jridgewell/trace-mapping').SourceMapInput} SourceMapInput */
11
11
  /** @typedef {RegExp | string} Rule */
12
12
  /** @typedef {Rule[] | Rule} Rules */
13
13
  /**
@@ -37,7 +37,7 @@ export = TerserPlugin;
37
37
  /**
38
38
  * @typedef {Object} MinimizedResult
39
39
  * @property {string} code
40
- * @property {RawSourceMap} [map]
40
+ * @property {SourceMapInput} [map]
41
41
  * @property {Array<Error | string>} [errors]
42
42
  * @property {Array<Error | string>} [warnings]
43
43
  * @property {Array<string>} [extractedComments]
@@ -65,7 +65,7 @@ export = TerserPlugin;
65
65
  * @template T
66
66
  * @callback BasicMinimizerImplementation
67
67
  * @param {Input} input
68
- * @param {RawSourceMap | undefined} sourceMap
68
+ * @param {SourceMapInput | undefined} sourceMap
69
69
  * @param {MinimizerOptions<T>} minifyOptions
70
70
  * @param {ExtractCommentsOptions | undefined} extractComments
71
71
  * @returns {Promise<MinimizedResult>}
@@ -83,7 +83,7 @@ export = TerserPlugin;
83
83
  * @typedef {Object} InternalOptions
84
84
  * @property {string} name
85
85
  * @property {string} input
86
- * @property {RawSourceMap | undefined} inputSourceMap
86
+ * @property {SourceMapInput | undefined} inputSourceMap
87
87
  * @property {ExtractCommentsOptions | undefined} extractComments
88
88
  * @property {{ implementation: MinimizerImplementation<T>, options: MinimizerOptions<T> }} minimizer
89
89
  */
@@ -131,7 +131,7 @@ declare class TerserPlugin<T = import('../../terser').MinifyOptions> {
131
131
  * @private
132
132
  * @param {any} error
133
133
  * @param {string} file
134
- * @param {SourceMapConsumer} [sourceMap]
134
+ * @param {TraceMap} [sourceMap]
135
135
  * @param {Compilation["requestShortener"]} [requestShortener]
136
136
  * @returns {Error}
137
137
  */
@@ -190,7 +190,7 @@ declare namespace TerserPlugin {
190
190
  TerserECMA,
191
191
  TerserOptions,
192
192
  JestWorker,
193
- RawSourceMap,
193
+ SourceMapInput,
194
194
  Rule,
195
195
  Rules,
196
196
  ExtractCommentsFunction,
@@ -244,7 +244,7 @@ type Asset = import('../../webpack').Asset;
244
244
  type TerserECMA = import('./utils').TerserECMA;
245
245
  type TerserOptions = import('./utils').TerserOptions;
246
246
  type JestWorker = import('../jest-worker').Worker;
247
- type RawSourceMap = import('../source-map').RawSourceMap;
247
+ type SourceMapInput = import('../@jridgewell/trace-mapping').SourceMapInput;
248
248
  type Rule = RegExp | string;
249
249
  type Rules = Rule[] | Rule;
250
250
  type ExtractCommentsFunction = (
@@ -276,7 +276,7 @@ type ExtractCommentsObject = {
276
276
  type ExtractCommentsOptions = ExtractCommentsCondition | ExtractCommentsObject;
277
277
  type MinimizedResult = {
278
278
  code: string;
279
- map?: import('../source-map').RawSourceMap | undefined;
279
+ map?: import('../@jridgewell/trace-mapping').SourceMapInput | undefined;
280
280
  errors?: (string | Error)[] | undefined;
281
281
  warnings?: (string | Error)[] | undefined;
282
282
  extractedComments?: string[] | undefined;
@@ -295,7 +295,7 @@ type PredefinedOptions = {
295
295
  type MinimizerOptions<T> = PredefinedOptions & InferDefaultType<T>;
296
296
  type BasicMinimizerImplementation<T> = (
297
297
  input: Input,
298
- sourceMap: RawSourceMap | undefined,
298
+ sourceMap: SourceMapInput | undefined,
299
299
  minifyOptions: MinimizerOptions<T>,
300
300
  extractComments: ExtractCommentsOptions | undefined
301
301
  ) => Promise<MinimizedResult>;
@@ -307,7 +307,7 @@ type MinimizerImplementation<T> = BasicMinimizerImplementation<T> &
307
307
  type InternalOptions<T> = {
308
308
  name: string;
309
309
  input: string;
310
- inputSourceMap: RawSourceMap | undefined;
310
+ inputSourceMap: SourceMapInput | undefined;
311
311
  extractComments: ExtractCommentsOptions | undefined;
312
312
  minimizer: {
313
313
  implementation: MinimizerImplementation<T>;
@@ -1,7 +1,8 @@
1
1
  export type Task<T> = () => Promise<T>;
2
- export type RawSourceMap = import('../source-map').RawSourceMap;
2
+ export type SourceMapInput = import('../@jridgewell/trace-mapping').SourceMapInput;
3
3
  export type TerserFormatOptions = import('../../terser').FormatOptions;
4
4
  export type TerserOptions = import('../../terser').MinifyOptions;
5
+ export type TerserCompressOptions = import('../../terser').CompressOptions;
5
6
  export type TerserECMA = import('../../terser').ECMA;
6
7
  export type ExtractCommentsOptions =
7
8
  import('./index').ExtractCommentsOptions;
@@ -28,14 +29,14 @@ export type ExtractedComments = Array<string>;
28
29
  export function throttleAll<T>(limit: number, tasks: Task<T>[]): Promise<T[]>;
29
30
  /**
30
31
  * @param {Input} input
31
- * @param {RawSourceMap | undefined} sourceMap
32
+ * @param {SourceMapInput | undefined} sourceMap
32
33
  * @param {PredefinedOptions & CustomOptions} minimizerOptions
33
34
  * @param {ExtractCommentsOptions | undefined} extractComments
34
35
  * @return {Promise<MinimizedResult>}
35
36
  */
36
37
  export function terserMinify(
37
38
  input: Input,
38
- sourceMap: RawSourceMap | undefined,
39
+ sourceMap: SourceMapInput | undefined,
39
40
  minimizerOptions: PredefinedOptions & CustomOptions,
40
41
  extractComments: ExtractCommentsOptions | undefined
41
42
  ): Promise<MinimizedResult>;
@@ -47,14 +48,14 @@ export namespace terserMinify {
47
48
  }
48
49
  /**
49
50
  * @param {Input} input
50
- * @param {RawSourceMap | undefined} sourceMap
51
+ * @param {SourceMapInput | undefined} sourceMap
51
52
  * @param {PredefinedOptions & CustomOptions} minimizerOptions
52
53
  * @param {ExtractCommentsOptions | undefined} extractComments
53
54
  * @return {Promise<MinimizedResult>}
54
55
  */
55
56
  export function uglifyJsMinify(
56
57
  input: Input,
57
- sourceMap: RawSourceMap | undefined,
58
+ sourceMap: SourceMapInput | undefined,
58
59
  minimizerOptions: PredefinedOptions & CustomOptions,
59
60
  extractComments: ExtractCommentsOptions | undefined
60
61
  ): Promise<MinimizedResult>;
@@ -66,13 +67,13 @@ export namespace uglifyJsMinify {
66
67
  }
67
68
  /**
68
69
  * @param {Input} input
69
- * @param {RawSourceMap | undefined} sourceMap
70
+ * @param {SourceMapInput | undefined} sourceMap
70
71
  * @param {PredefinedOptions & CustomOptions} minimizerOptions
71
72
  * @return {Promise<MinimizedResult>}
72
73
  */
73
74
  export function swcMinify(
74
75
  input: Input,
75
- sourceMap: RawSourceMap | undefined,
76
+ sourceMap: SourceMapInput | undefined,
76
77
  minimizerOptions: PredefinedOptions & CustomOptions
77
78
  ): Promise<MinimizedResult>;
78
79
  export namespace swcMinify {
@@ -83,13 +84,13 @@ export namespace swcMinify {
83
84
  }
84
85
  /**
85
86
  * @param {Input} input
86
- * @param {RawSourceMap | undefined} sourceMap
87
+ * @param {SourceMapInput | undefined} sourceMap
87
88
  * @param {PredefinedOptions & CustomOptions} minimizerOptions
88
89
  * @return {Promise<MinimizedResult>}
89
90
  */
90
91
  export function esbuildMinify(
91
92
  input: Input,
92
- sourceMap: RawSourceMap | undefined,
93
+ sourceMap: SourceMapInput | undefined,
93
94
  minimizerOptions: PredefinedOptions & CustomOptions
94
95
  ): Promise<MinimizedResult>;
95
96
  export namespace esbuildMinify {
@@ -1,11 +1,13 @@
1
1
  "use strict";
2
2
 
3
- /** @typedef {import("source-map").RawSourceMap} RawSourceMap */
3
+ /** @typedef {import("@jridgewell/trace-mapping").SourceMapInput} SourceMapInput */
4
4
 
5
5
  /** @typedef {import("terser").FormatOptions} TerserFormatOptions */
6
6
 
7
7
  /** @typedef {import("terser").MinifyOptions} TerserOptions */
8
8
 
9
+ /** @typedef {import("terser").CompressOptions} TerserCompressOptions */
10
+
9
11
  /** @typedef {import("terser").ECMA} TerserECMA */
10
12
 
11
13
  /** @typedef {import("./index.js").ExtractCommentsOptions} ExtractCommentsOptions */
@@ -86,7 +88,7 @@ function throttleAll(limit, tasks) {
86
88
 
87
89
  /**
88
90
  * @param {Input} input
89
- * @param {RawSourceMap | undefined} sourceMap
91
+ * @param {SourceMapInput | undefined} sourceMap
90
92
  * @param {PredefinedOptions & CustomOptions} minimizerOptions
91
93
  * @param {ExtractCommentsOptions | undefined} extractComments
92
94
  * @return {Promise<MinimizedResult>}
@@ -218,14 +220,14 @@ async function terserMinify(input, sourceMap, minimizerOptions, extractComments)
218
220
  };
219
221
  /**
220
222
  * @param {PredefinedOptions & TerserOptions} [terserOptions={}]
221
- * @returns {TerserOptions & { sourceMap: undefined } & ({ output: TerserFormatOptions & { beautify: boolean } } | { format: TerserFormatOptions & { beautify: boolean } })}
223
+ * @returns {TerserOptions & { sourceMap: undefined } & { compress: TerserCompressOptions } & ({ output: TerserFormatOptions & { beautify: boolean } } | { format: TerserFormatOptions & { beautify: boolean } })}
222
224
  */
223
225
 
224
226
 
225
227
  const buildTerserOptions = (terserOptions = {}) => {
226
228
  // Need deep copy objects to avoid https://github.com/terser/terser/issues/366
227
229
  return { ...terserOptions,
228
- compress: typeof terserOptions.compress === "boolean" ? terserOptions.compress : { ...terserOptions.compress
230
+ compress: typeof terserOptions.compress === "boolean" ? terserOptions.compress ? {} : false : { ...terserOptions.compress
229
231
  },
230
232
  // ecma: terserOptions.ecma,
231
233
  // ie8: terserOptions.ie8,
@@ -282,6 +284,18 @@ async function terserMinify(input, sourceMap, minimizerOptions, extractComments)
282
284
  terserOptions.format.comments = buildComments(terserOptions, extractedComments);
283
285
  }
284
286
 
287
+ if (terserOptions.compress) {
288
+ // More optimizations
289
+ if (typeof terserOptions.compress.ecma === "undefined") {
290
+ terserOptions.compress.ecma = terserOptions.ecma;
291
+ } // https://github.com/webpack/webpack/issues/16135
292
+
293
+
294
+ if (terserOptions.ecma === 5 && typeof terserOptions.compress.arrows === "undefined") {
295
+ terserOptions.compress.arrows = false;
296
+ }
297
+ }
298
+
285
299
  const [[filename, code]] = Object.entries(input);
286
300
  const result = await minify({
287
301
  [filename]: code
@@ -293,7 +307,7 @@ async function terserMinify(input, sourceMap, minimizerOptions, extractComments)
293
307
  // @ts-ignore
294
308
  // eslint-disable-next-line no-undefined
295
309
  map: result.map ?
296
- /** @type {RawSourceMap} **/
310
+ /** @type {SourceMapInput} **/
297
311
  result.map : undefined,
298
312
  extractedComments
299
313
  };
@@ -318,7 +332,7 @@ terserMinify.getMinimizerVersion = () => {
318
332
 
319
333
  /**
320
334
  * @param {Input} input
321
- * @param {RawSourceMap | undefined} sourceMap
335
+ * @param {SourceMapInput | undefined} sourceMap
322
336
  * @param {PredefinedOptions & CustomOptions} minimizerOptions
323
337
  * @param {ExtractCommentsOptions | undefined} extractComments
324
338
  * @return {Promise<MinimizedResult>}
@@ -524,7 +538,7 @@ uglifyJsMinify.getMinimizerVersion = () => {
524
538
 
525
539
  /**
526
540
  * @param {Input} input
527
- * @param {RawSourceMap | undefined} sourceMap
541
+ * @param {SourceMapInput | undefined} sourceMap
528
542
  * @param {PredefinedOptions & CustomOptions} minimizerOptions
529
543
  * @return {Promise<MinimizedResult>}
530
544
  */
@@ -533,12 +547,12 @@ uglifyJsMinify.getMinimizerVersion = () => {
533
547
  async function swcMinify(input, sourceMap, minimizerOptions) {
534
548
  /**
535
549
  * @param {PredefinedOptions & import("@swc/core").JsMinifyOptions} [swcOptions={}]
536
- * @returns {import("@swc/core").JsMinifyOptions & { sourceMap: undefined }}
550
+ * @returns {import("@swc/core").JsMinifyOptions & { sourceMap: undefined } & { compress: import("@swc/core").TerserCompressOptions }}
537
551
  */
538
552
  const buildSwcOptions = (swcOptions = {}) => {
539
553
  // Need deep copy objects to avoid https://github.com/terser/terser/issues/366
540
554
  return { ...swcOptions,
541
- compress: typeof swcOptions.compress === "boolean" ? swcOptions.compress : { ...swcOptions.compress
555
+ compress: typeof swcOptions.compress === "boolean" ? swcOptions.compress ? {} : false : { ...swcOptions.compress
542
556
  },
543
557
  mangle: swcOptions.mangle == null ? true : typeof swcOptions.mangle === "boolean" ? swcOptions.mangle : { ...swcOptions.mangle
544
558
  },
@@ -564,6 +578,18 @@ async function swcMinify(input, sourceMap, minimizerOptions) {
564
578
  swcOptions.sourceMap = true;
565
579
  }
566
580
 
581
+ if (swcOptions.compress) {
582
+ // More optimizations
583
+ if (typeof swcOptions.compress.ecma === "undefined") {
584
+ swcOptions.compress.ecma = swcOptions.ecma;
585
+ } // https://github.com/webpack/webpack/issues/16135
586
+
587
+
588
+ if (swcOptions.ecma === 5 && typeof swcOptions.compress.arrows === "undefined") {
589
+ swcOptions.compress.arrows = false;
590
+ }
591
+ }
592
+
567
593
  const [[filename, code]] = Object.entries(input);
568
594
  const result = await swc.minify(code, swcOptions);
569
595
  let map;
@@ -600,7 +626,7 @@ swcMinify.getMinimizerVersion = () => {
600
626
 
601
627
  /**
602
628
  * @param {Input} input
603
- * @param {RawSourceMap | undefined} sourceMap
629
+ * @param {SourceMapInput | undefined} sourceMap
604
630
  * @param {PredefinedOptions & CustomOptions} minimizerOptions
605
631
  * @return {Promise<MinimizedResult>}
606
632
  */
@@ -1 +1 @@
1
- {"name":"webpack","version":"5.74.0","author":"Tobias Koppers @sokra","license":"MIT","types":"types.d.ts"}
1
+ {"name":"webpack","version":"5.75.0","author":"Tobias Koppers @sokra","license":"MIT","types":"types.d.ts"}