@unpackjs/core 2.0.0 → 2.2.0

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 (116) hide show
  1. package/compiled/css-loader/index.js +46 -46
  2. package/compiled/less-loader/index.js +8 -8
  3. package/compiled/postcss-loader/index.js +11 -11
  4. package/compiled/sass-loader/index.js +8 -8
  5. package/compiled/style-loader/index.js +10 -10
  6. package/dist/bundler-config/cache.cjs +105 -0
  7. package/dist/bundler-config/cache.d.ts +6 -0
  8. package/dist/bundler-config/cache.d.ts.map +1 -0
  9. package/dist/bundler-config/cache.js +63 -0
  10. package/dist/bundler-config/chunkSplit.js +7 -7
  11. package/dist/bundler-config/css.cjs +4 -3
  12. package/dist/bundler-config/css.d.ts.map +1 -1
  13. package/dist/bundler-config/css.js +33 -32
  14. package/dist/bundler-config/experimentCss.cjs +4 -3
  15. package/dist/bundler-config/experimentCss.d.ts.map +1 -1
  16. package/dist/bundler-config/experimentCss.js +29 -28
  17. package/dist/bundler-config/{helper.cjs → helpers.cjs} +2 -2
  18. package/dist/bundler-config/{helper.d.ts → helpers.d.ts} +1 -1
  19. package/dist/bundler-config/helpers.d.ts.map +1 -0
  20. package/dist/bundler-config/helpers.js +39 -0
  21. package/dist/bundler-config/index.cjs +26 -17
  22. package/dist/bundler-config/index.d.ts.map +1 -1
  23. package/dist/bundler-config/index.js +68 -59
  24. package/dist/bundler-config/jsMinify.cjs +15 -16
  25. package/dist/bundler-config/jsMinify.d.ts +3 -11
  26. package/dist/bundler-config/jsMinify.d.ts.map +1 -1
  27. package/dist/bundler-config/jsMinify.js +17 -18
  28. package/dist/bundler-config/oxlint/.oxlintrc.json +30 -0
  29. package/dist/bundler-config/oxlint/plugin.cjs +143 -0
  30. package/dist/bundler-config/oxlint/plugin.d.ts +10 -0
  31. package/dist/bundler-config/oxlint/plugin.d.ts.map +1 -0
  32. package/dist/bundler-config/oxlint/plugin.js +104 -0
  33. package/dist/bundler-config/progress/helpers.cjs +112 -0
  34. package/dist/bundler-config/progress/helpers.d.ts +4 -0
  35. package/dist/bundler-config/progress/helpers.d.ts.map +1 -0
  36. package/dist/bundler-config/progress/helpers.js +67 -0
  37. package/dist/bundler-config/progress/rspack.cjs +69 -0
  38. package/dist/bundler-config/progress/rspack.d.ts +8 -0
  39. package/dist/bundler-config/progress/rspack.d.ts.map +1 -0
  40. package/dist/bundler-config/progress/rspack.js +37 -0
  41. package/dist/bundler-config/progress/webpack.cjs +86 -0
  42. package/dist/bundler-config/progress/webpack.d.ts +9 -0
  43. package/dist/bundler-config/progress/webpack.d.ts.map +1 -0
  44. package/dist/bundler-config/progress/webpack.js +44 -0
  45. package/dist/colors.cjs +3 -4
  46. package/dist/colors.d.ts +1 -2
  47. package/dist/colors.d.ts.map +1 -1
  48. package/dist/colors.js +3 -4
  49. package/dist/config.cjs +5 -2
  50. package/dist/config.d.ts +1 -0
  51. package/dist/config.d.ts.map +1 -1
  52. package/dist/config.js +19 -19
  53. package/dist/constants.cjs +7 -11
  54. package/dist/constants.d.ts +0 -1
  55. package/dist/constants.d.ts.map +1 -1
  56. package/dist/constants.js +3 -4
  57. package/dist/createUnpack.cjs +2 -12
  58. package/dist/createUnpack.js +19 -19
  59. package/dist/fs.cjs +82 -0
  60. package/dist/fs.d.ts +11 -0
  61. package/dist/fs.d.ts.map +1 -0
  62. package/dist/fs.js +28 -0
  63. package/dist/index.cjs +19 -20
  64. package/dist/index.d.ts +1 -1
  65. package/dist/index.d.ts.map +1 -1
  66. package/dist/index.js +6 -42
  67. package/dist/lightningcss/loader.cjs +0 -2
  68. package/dist/lightningcss/loader.d.ts.map +1 -1
  69. package/dist/lightningcss/loader.js +4 -6
  70. package/dist/lightningcss/minimizer.cjs +7 -9
  71. package/dist/lightningcss/minimizer.d.ts.map +1 -1
  72. package/dist/lightningcss/minimizer.js +9 -11
  73. package/dist/logger.cjs +7 -7
  74. package/dist/logger.d.ts.map +1 -1
  75. package/dist/logger.js +12 -11
  76. package/dist/openBrowser.js +7 -7
  77. package/dist/prebundleDeps.cjs +5 -5
  78. package/dist/prebundleDeps.d.ts.map +1 -1
  79. package/dist/prebundleDeps.js +49 -48
  80. package/dist/progressBar.cjs +3 -24
  81. package/dist/progressBar.d.ts +1 -6
  82. package/dist/progressBar.d.ts.map +1 -1
  83. package/dist/progressBar.js +5 -16
  84. package/dist/reporter.cjs +17 -9
  85. package/dist/reporter.d.ts.map +1 -1
  86. package/dist/reporter.js +31 -22
  87. package/dist/run/build.js +8 -8
  88. package/dist/run/dev.cjs +3 -4
  89. package/dist/run/dev.d.ts.map +1 -1
  90. package/dist/run/dev.js +23 -23
  91. package/dist/typed-css-modules/loader.js +12 -12
  92. package/dist/typed-css-modules/plugin.cjs +1 -1
  93. package/dist/typed-css-modules/plugin.js +13 -13
  94. package/dist/typed-css-modules/utils.js +6 -6
  95. package/dist/types/config.d.ts +2 -0
  96. package/dist/types/config.d.ts.map +1 -1
  97. package/dist/types/oxc.cjs +18 -0
  98. package/dist/types/oxc.d.ts +10 -0
  99. package/dist/types/oxc.d.ts.map +1 -0
  100. package/dist/types/oxc.js +2 -0
  101. package/dist/utils.cjs +29 -26
  102. package/dist/utils.d.ts +1 -0
  103. package/dist/utils.d.ts.map +1 -1
  104. package/dist/utils.js +18 -17
  105. package/dist/watchFiles.js +4 -4
  106. package/package.json +6 -6
  107. package/dist/bundler-config/helper.d.ts.map +0 -1
  108. package/dist/bundler-config/helper.js +0 -39
  109. package/dist/plugin-progress/rspack.cjs +0 -103
  110. package/dist/plugin-progress/rspack.d.ts +0 -9
  111. package/dist/plugin-progress/rspack.d.ts.map +0 -1
  112. package/dist/plugin-progress/rspack.js +0 -60
  113. package/dist/plugin-progress/webpack.cjs +0 -110
  114. package/dist/plugin-progress/webpack.d.ts +0 -9
  115. package/dist/plugin-progress/webpack.d.ts.map +0 -1
  116. package/dist/plugin-progress/webpack.js +0 -66
@@ -69,24 +69,26 @@ var __webpack_exports__ = {};
69
69
  const external_constants_cjs_namespaceObject = require("../constants.cjs");
70
70
  const minimizer_cjs_namespaceObject = require("../lightningcss/minimizer.cjs");
71
71
  const external_plugin_cjs_namespaceObject = require("../plugin.cjs");
72
- const rspack_cjs_namespaceObject = require("../plugin-progress/rspack.cjs");
73
- const webpack_cjs_namespaceObject = require("../plugin-progress/webpack.cjs");
74
72
  const external_webpack_namespaceObject = require("webpack");
75
73
  var external_webpack_default = /*#__PURE__*/ __webpack_require__.n(external_webpack_namespaceObject);
74
+ const external_cache_cjs_namespaceObject = require("./cache.cjs");
76
75
  const external_chunkSplit_cjs_namespaceObject = require("./chunkSplit.cjs");
77
76
  const external_css_cjs_namespaceObject = require("./css.cjs");
78
77
  const external_experimentCss_cjs_namespaceObject = require("./experimentCss.cjs");
79
- const external_helper_cjs_namespaceObject = require("./helper.cjs");
78
+ const external_helpers_cjs_namespaceObject = require("./helpers.cjs");
80
79
  const external_jsMinify_cjs_namespaceObject = require("./jsMinify.cjs");
80
+ const plugin_cjs_namespaceObject = require("./oxlint/plugin.cjs");
81
+ const rspack_cjs_namespaceObject = require("./progress/rspack.cjs");
82
+ const webpack_cjs_namespaceObject = require("./progress/webpack.cjs");
81
83
  const { TsCheckerRspackPlugin } = __webpack_require__("ts-checker-rspack-plugin");
82
84
  const BundleAnalyzerPlugin = __webpack_require__("../../compiled/webpack-bundle-analyzer/index.js").BundleAnalyzerPlugin;
83
85
  const CopyWebpackPlugin = __webpack_require__("copy-webpack-plugin");
84
86
  async function getBundlerConfig(unpackConfig) {
85
- var _unpackConfig_build, _unpackConfig_build1, _unpackConfig_build2, _unpackConfig_build3, _unpackConfig_build4, _unpackConfig_build5, _unpackConfig_html, _unpackConfig_html1, _unpackConfig_html2, _unpackConfig_html3, _unpackConfig_html4, _unpackConfig_html5, _unpackConfig_html6, _unpackConfig_html7, _unpackConfig_html8, _unpackConfig_performance, _unpackConfig_performance1, _unpackConfig_build6, _unpackConfig_build7, _unpackConfig_resolve, _unpackConfig_resolve1, _unpackConfig_dev, _unpackConfig_build8, _unpackConfig_build9, _unpackConfig_experiments;
87
+ var _unpackConfig_build, _unpackConfig_build1, _unpackConfig_build2, _minifyOptions_oxc, _unpackConfig_build3, _unpackConfig_build4, _unpackConfig_build5, _unpackConfig_html, _unpackConfig_html1, _unpackConfig_html2, _unpackConfig_html3, _unpackConfig_html4, _unpackConfig_html5, _unpackConfig_html6, _unpackConfig_html7, _unpackConfig_html8, _unpackConfig_performance, _unpackConfig_performance1, _unpackConfig_build6, _unpackConfig_build7, _unpackConfig_resolve, _unpackConfig_resolve1, _unpackConfig_dev, _unpackConfig_build8, _unpackConfig_experiments;
86
88
  const isRspack = 'rspack' === unpackConfig.bundler;
87
89
  const HtmlPlugin = isRspack ? core_namespaceObject.rspack.HtmlRspackPlugin : external_html_webpack_plugin_default();
88
90
  const definePlugin = (define)=>isRspack ? new core_namespaceObject.rspack.DefinePlugin(define) : new (external_webpack_default()).DefinePlugin(define);
89
- const JS_FILENAME = (0, external_helper_cjs_namespaceObject.getOutputFilename)({
91
+ const JS_FILENAME = (0, external_helpers_cjs_namespaceObject.getOutputFilename)({
90
92
  type: 'js',
91
93
  hash: null == (_unpackConfig_build = unpackConfig.build) ? void 0 : _unpackConfig_build.filenameHash
92
94
  });
@@ -103,13 +105,14 @@ var __webpack_exports__ = {};
103
105
  }, {}) : {};
104
106
  };
105
107
  const minifyOptions = (0, external_utils_cjs_namespaceObject.isPlainObject)(null == (_unpackConfig_build1 = unpackConfig.build) ? void 0 : _unpackConfig_build1.minify) ? null == (_unpackConfig_build2 = unpackConfig.build) ? void 0 : _unpackConfig_build2.minify : {};
106
- const PluginProgress = isRspack ? rspack_cjs_namespaceObject.RspackPluginProgress : webpack_cjs_namespaceObject.WebpackPluginProgress;
108
+ const oxcMinifyCompress = (0, external_utils_cjs_namespaceObject.isPlainObject)(null == (_minifyOptions_oxc = minifyOptions.oxc) ? void 0 : _minifyOptions_oxc.compress) ? minifyOptions.oxc.compress : {};
109
+ const ProgressPlugin = isRspack ? rspack_cjs_namespaceObject.ProgressRspackPlugin : webpack_cjs_namespaceObject.ProgressWebpackPlugin;
107
110
  const wasmFilename = 'js/[hash].module.wasm';
108
111
  let config = {
109
112
  context: unpackConfig.root,
110
113
  mode: (0, external_utils_cjs_namespaceObject.isDev)() ? 'development' : 'production',
111
114
  entry: unpackConfig.mpa ? {} : {
112
- main: await (0, external_helper_cjs_namespaceObject.getEntry)(unpackConfig.root, unpackConfig.entry)
115
+ main: await (0, external_helpers_cjs_namespaceObject.getEntry)(unpackConfig.root, unpackConfig.entry)
113
116
  },
114
117
  stats: 'errors-only',
115
118
  output: {
@@ -197,7 +200,8 @@ var __webpack_exports__ = {};
197
200
  }
198
201
  }
199
202
  }),
200
- new PluginProgress()
203
+ new ProgressPlugin(),
204
+ new plugin_cjs_namespaceObject.OxlintPlugin()
201
205
  ].filter(Boolean),
202
206
  externals: unpackConfig.externals,
203
207
  resolve: {
@@ -218,24 +222,25 @@ var __webpack_exports__ = {};
218
222
  experiments: {
219
223
  lazyCompilation: (null == (_unpackConfig_dev = unpackConfig.dev) ? void 0 : _unpackConfig_dev.lazyCompilation) && (0, external_utils_cjs_namespaceObject.isDevServer)(),
220
224
  css: false,
221
- asyncWebAssembly: true,
222
- ...isRspack && (0, external_utils_cjs_namespaceObject.isDev)() ? {
223
- incremental: true
224
- } : {}
225
+ asyncWebAssembly: true
225
226
  },
226
227
  optimization: {
227
228
  moduleIds: (0, external_utils_cjs_namespaceObject.isDev)() ? 'named' : 'deterministic',
228
229
  minimize: Boolean(null == (_unpackConfig_build8 = unpackConfig.build) ? void 0 : _unpackConfig_build8.minify),
229
230
  minimizer: [
230
231
  new external_jsMinify_cjs_namespaceObject.JsMinifyPlugin({
231
- target: external_constants_cjs_namespaceObject.ESBUILD_TARGET
232
+ ...minifyOptions.oxc,
233
+ compress: {
234
+ target: 'es2015',
235
+ ...oxcMinifyCompress
236
+ }
232
237
  }),
233
- new minimizer_cjs_namespaceObject.LightningcssMinifyPlugin(minifyOptions.lightningcss)
238
+ new minimizer_cjs_namespaceObject.LightningcssMinifyPlugin({
239
+ targets: external_constants_cjs_namespaceObject.LIGHTNINGCSS_TARGET,
240
+ ...minifyOptions.lightningcss
241
+ })
234
242
  ]
235
243
  },
236
- cache: (null == (_unpackConfig_build9 = unpackConfig.build) ? void 0 : _unpackConfig_build9.cache) && 'webpack' === unpackConfig.bundler ? {
237
- type: 'filesystem'
238
- } : void 0,
239
244
  watchOptions: {
240
245
  ignored: /[\\/](?:\.git|node_modules)[\\/]/
241
246
  }
@@ -251,6 +256,10 @@ var __webpack_exports__ = {};
251
256
  config,
252
257
  unpackConfig
253
258
  });
259
+ config = await (0, external_cache_cjs_namespaceObject.applyCacheConfig)({
260
+ config,
261
+ unpackConfig
262
+ });
254
263
  for (const plugin of (0, external_plugin_cjs_namespaceObject.getNormalizedPluginsByHook)('bundlerConfig', unpackConfig.plugins))config = await plugin.bundlerConfig(config, {
255
264
  unpackConfig,
256
265
  mergeConfig: external_utils_cjs_namespaceObject.mergeConfig
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bundler-config/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAmBzE,wBAAsB,gBAAgB,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAgMhG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bundler-config/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAqBzE,wBAAsB,gBAAgB,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAoMhG"}
@@ -3,23 +3,25 @@ const require = /*#__PURE__*/ __rslib_shim_module__.createRequire(import.meta.ur
3
3
  import * as __WEBPACK_EXTERNAL_MODULE__compiled_webpack_bundle_analyzer_index_js_fd7b218e__ from "../../compiled/webpack-bundle-analyzer/index.js";
4
4
  import * as __WEBPACK_EXTERNAL_MODULE_copy_webpack_plugin_34f78a42__ from "copy-webpack-plugin";
5
5
  import * as __WEBPACK_EXTERNAL_MODULE_ts_checker_rspack_plugin_59177e58__ from "ts-checker-rspack-plugin";
6
- import * as __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__ from "node:fs";
7
- import * as __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__ from "node:path";
8
- import * as __WEBPACK_EXTERNAL_MODULE__rspack_core_e0096ff7__ from "@rspack/core";
9
- import * as __WEBPACK_EXTERNAL_MODULE_html_webpack_plugin_e07f62c9__ from "html-webpack-plugin";
10
- import * as __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__ from "../utils.js";
11
- import * as __WEBPACK_EXTERNAL_MODULE_json5__ from "json5";
12
- import * as __WEBPACK_EXTERNAL_MODULE__constants_js_59e7fa1b__ from "../constants.js";
13
- import * as __WEBPACK_EXTERNAL_MODULE__lightningcss_minimizer_js_13e64036__ from "../lightningcss/minimizer.js";
14
- import * as __WEBPACK_EXTERNAL_MODULE__plugin_js_2616467e__ from "../plugin.js";
15
- import * as __WEBPACK_EXTERNAL_MODULE__plugin_progress_rspack_js_7c160de9__ from "../plugin-progress/rspack.js";
16
- import * as __WEBPACK_EXTERNAL_MODULE__plugin_progress_webpack_js_077e3654__ from "../plugin-progress/webpack.js";
17
- import * as __WEBPACK_EXTERNAL_MODULE_webpack__ from "webpack";
18
- import * as __WEBPACK_EXTERNAL_MODULE__chunkSplit_js_e220bc09__ from "./chunkSplit.js";
19
- import * as __WEBPACK_EXTERNAL_MODULE__css_js_1fdaa05b__ from "./css.js";
20
- import * as __WEBPACK_EXTERNAL_MODULE__experimentCss_js_9e7bd201__ from "./experimentCss.js";
21
- import * as __WEBPACK_EXTERNAL_MODULE__helper_js_3f3fef5c__ from "./helper.js";
22
- import * as __WEBPACK_EXTERNAL_MODULE__jsMinify_js_f62b6778__ from "./jsMinify.js";
6
+ import external_node_fs_default from "node:fs";
7
+ import external_node_path_default from "node:path";
8
+ import { rspack } from "@rspack/core";
9
+ import external_html_webpack_plugin_default from "html-webpack-plugin";
10
+ import { isDev, isDevServer, isFunction, isPlainObject, isProd, mergeConfig } from "../utils.js";
11
+ import external_json5_default from "json5";
12
+ import { LIGHTNINGCSS_TARGET, NODE_MODULES_REGEX, TEMPLATE_CONTENT } from "../constants.js";
13
+ import { LightningcssMinifyPlugin } from "../lightningcss/minimizer.js";
14
+ import { getNormalizedPluginsByHook } from "../plugin.js";
15
+ import external_webpack_default from "webpack";
16
+ import { applyCacheConfig } from "./cache.js";
17
+ import { applyChunkSplitConfig } from "./chunkSplit.js";
18
+ import { applyCssConfig } from "./css.js";
19
+ import { applyExperimentCssConfig } from "./experimentCss.js";
20
+ import { getEntry, getOutputFilename } from "./helpers.js";
21
+ import { JsMinifyPlugin } from "./jsMinify.js";
22
+ import { OxlintPlugin } from "./oxlint/plugin.js";
23
+ import { ProgressRspackPlugin } from "./progress/rspack.js";
24
+ import { ProgressWebpackPlugin } from "./progress/webpack.js";
23
25
  var __webpack_modules__ = {
24
26
  "../../compiled/webpack-bundle-analyzer/index.js": function(module) {
25
27
  module.exports = __WEBPACK_EXTERNAL_MODULE__compiled_webpack_bundle_analyzer_index_js_fd7b218e__;
@@ -45,39 +47,40 @@ const { TsCheckerRspackPlugin } = __webpack_require__("ts-checker-rspack-plugin"
45
47
  const BundleAnalyzerPlugin = __webpack_require__("../../compiled/webpack-bundle-analyzer/index.js").BundleAnalyzerPlugin;
46
48
  const CopyWebpackPlugin = __webpack_require__("copy-webpack-plugin");
47
49
  async function getBundlerConfig(unpackConfig) {
48
- var _unpackConfig_build, _unpackConfig_build1, _unpackConfig_build2, _unpackConfig_build3, _unpackConfig_build4, _unpackConfig_build5, _unpackConfig_html, _unpackConfig_html1, _unpackConfig_html2, _unpackConfig_html3, _unpackConfig_html4, _unpackConfig_html5, _unpackConfig_html6, _unpackConfig_html7, _unpackConfig_html8, _unpackConfig_performance, _unpackConfig_performance1, _unpackConfig_build6, _unpackConfig_build7, _unpackConfig_resolve, _unpackConfig_resolve1, _unpackConfig_dev, _unpackConfig_build8, _unpackConfig_build9, _unpackConfig_experiments;
50
+ var _unpackConfig_build, _unpackConfig_build1, _unpackConfig_build2, _minifyOptions_oxc, _unpackConfig_build3, _unpackConfig_build4, _unpackConfig_build5, _unpackConfig_html, _unpackConfig_html1, _unpackConfig_html2, _unpackConfig_html3, _unpackConfig_html4, _unpackConfig_html5, _unpackConfig_html6, _unpackConfig_html7, _unpackConfig_html8, _unpackConfig_performance, _unpackConfig_performance1, _unpackConfig_build6, _unpackConfig_build7, _unpackConfig_resolve, _unpackConfig_resolve1, _unpackConfig_dev, _unpackConfig_build8, _unpackConfig_experiments;
49
51
  const isRspack = 'rspack' === unpackConfig.bundler;
50
- const HtmlPlugin = isRspack ? __WEBPACK_EXTERNAL_MODULE__rspack_core_e0096ff7__.rspack.HtmlRspackPlugin : __WEBPACK_EXTERNAL_MODULE_html_webpack_plugin_e07f62c9__["default"];
51
- const definePlugin = (define)=>isRspack ? new __WEBPACK_EXTERNAL_MODULE__rspack_core_e0096ff7__.rspack.DefinePlugin(define) : new __WEBPACK_EXTERNAL_MODULE_webpack__["default"].DefinePlugin(define);
52
- const JS_FILENAME = (0, __WEBPACK_EXTERNAL_MODULE__helper_js_3f3fef5c__.getOutputFilename)({
52
+ const HtmlPlugin = isRspack ? rspack.HtmlRspackPlugin : external_html_webpack_plugin_default;
53
+ const definePlugin = (define)=>isRspack ? new rspack.DefinePlugin(define) : new external_webpack_default.DefinePlugin(define);
54
+ const JS_FILENAME = getOutputFilename({
53
55
  type: 'js',
54
56
  hash: null == (_unpackConfig_build = unpackConfig.build) ? void 0 : _unpackConfig_build.filenameHash
55
57
  });
56
- const IgnorePlugin = isRspack ? __WEBPACK_EXTERNAL_MODULE__rspack_core_e0096ff7__.rspack.IgnorePlugin : __WEBPACK_EXTERNAL_MODULE_webpack__["default"].IgnorePlugin;
57
- const CopyPlugin = isRspack ? __WEBPACK_EXTERNAL_MODULE__rspack_core_e0096ff7__.rspack.CopyRspackPlugin : CopyWebpackPlugin;
58
- const tsconfigPath = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].resolve(unpackConfig.root, 'tsconfig.json');
59
- const isTs = __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].existsSync(tsconfigPath);
58
+ const IgnorePlugin = isRspack ? rspack.IgnorePlugin : external_webpack_default.IgnorePlugin;
59
+ const CopyPlugin = isRspack ? rspack.CopyRspackPlugin : CopyWebpackPlugin;
60
+ const tsconfigPath = external_node_path_default.resolve(unpackConfig.root, 'tsconfig.json');
61
+ const isTs = external_node_fs_default.existsSync(tsconfigPath);
60
62
  const getAliasFromTsconfig = ()=>{
61
63
  var _json5_parse_compilerOptions, _json5_parse;
62
- const paths = null == (_json5_parse = __WEBPACK_EXTERNAL_MODULE_json5__["default"].parse(__WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].readFileSync(tsconfigPath, 'utf-8'))) ? void 0 : null == (_json5_parse_compilerOptions = _json5_parse.compilerOptions) ? void 0 : _json5_parse_compilerOptions.paths;
64
+ const paths = null == (_json5_parse = external_json5_default.parse(external_node_fs_default.readFileSync(tsconfigPath, 'utf-8'))) ? void 0 : null == (_json5_parse_compilerOptions = _json5_parse.compilerOptions) ? void 0 : _json5_parse_compilerOptions.paths;
63
65
  return paths ? Object.keys(paths).reduce((acc, key)=>{
64
- acc[key.replace(/\/\*$/, '')] = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].resolve(unpackConfig.root, paths[key][0].replace(/\/\*$/, ''));
66
+ acc[key.replace(/\/\*$/, '')] = external_node_path_default.resolve(unpackConfig.root, paths[key][0].replace(/\/\*$/, ''));
65
67
  return acc;
66
68
  }, {}) : {};
67
69
  };
68
- const minifyOptions = (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isPlainObject)(null == (_unpackConfig_build1 = unpackConfig.build) ? void 0 : _unpackConfig_build1.minify) ? null == (_unpackConfig_build2 = unpackConfig.build) ? void 0 : _unpackConfig_build2.minify : {};
69
- const PluginProgress = isRspack ? __WEBPACK_EXTERNAL_MODULE__plugin_progress_rspack_js_7c160de9__.RspackPluginProgress : __WEBPACK_EXTERNAL_MODULE__plugin_progress_webpack_js_077e3654__.WebpackPluginProgress;
70
+ const minifyOptions = isPlainObject(null == (_unpackConfig_build1 = unpackConfig.build) ? void 0 : _unpackConfig_build1.minify) ? null == (_unpackConfig_build2 = unpackConfig.build) ? void 0 : _unpackConfig_build2.minify : {};
71
+ const oxcMinifyCompress = isPlainObject(null == (_minifyOptions_oxc = minifyOptions.oxc) ? void 0 : _minifyOptions_oxc.compress) ? minifyOptions.oxc.compress : {};
72
+ const ProgressPlugin = isRspack ? ProgressRspackPlugin : ProgressWebpackPlugin;
70
73
  const wasmFilename = 'js/[hash].module.wasm';
71
74
  let config = {
72
75
  context: unpackConfig.root,
73
- mode: (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isDev)() ? 'development' : 'production',
76
+ mode: isDev() ? 'development' : 'production',
74
77
  entry: unpackConfig.mpa ? {} : {
75
- main: await (0, __WEBPACK_EXTERNAL_MODULE__helper_js_3f3fef5c__.getEntry)(unpackConfig.root, unpackConfig.entry)
78
+ main: await getEntry(unpackConfig.root, unpackConfig.entry)
76
79
  },
77
80
  stats: 'errors-only',
78
81
  output: {
79
82
  clean: true,
80
- path: __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].resolve(unpackConfig.root, null == (_unpackConfig_build3 = unpackConfig.build) ? void 0 : _unpackConfig_build3.outDir),
83
+ path: external_node_path_default.resolve(unpackConfig.root, null == (_unpackConfig_build3 = unpackConfig.build) ? void 0 : _unpackConfig_build3.outDir),
81
84
  filename: JS_FILENAME,
82
85
  chunkFilename: JS_FILENAME,
83
86
  crossOriginLoading: 'anonymous',
@@ -113,10 +116,10 @@ async function getBundlerConfig(unpackConfig) {
113
116
  unpackConfig.define && definePlugin(unpackConfig.define),
114
117
  !unpackConfig.mpa && new HtmlPlugin({
115
118
  template: (null == (_unpackConfig_html = unpackConfig.html) ? void 0 : _unpackConfig_html.template) || (isRspack ? void 0 : ''),
116
- templateContent: (null == (_unpackConfig_html1 = unpackConfig.html) ? void 0 : _unpackConfig_html1.templateContent) || ((null == (_unpackConfig_html2 = unpackConfig.html) ? void 0 : _unpackConfig_html2.template) ? isRspack ? void 0 : false : __WEBPACK_EXTERNAL_MODULE__constants_js_59e7fa1b__.TEMPLATE_CONTENT),
119
+ templateContent: (null == (_unpackConfig_html1 = unpackConfig.html) ? void 0 : _unpackConfig_html1.templateContent) || ((null == (_unpackConfig_html2 = unpackConfig.html) ? void 0 : _unpackConfig_html2.template) ? isRspack ? void 0 : false : TEMPLATE_CONTENT),
117
120
  templateParameters: {
118
121
  mountId: null == (_unpackConfig_html3 = unpackConfig.html) ? void 0 : _unpackConfig_html3.mountId,
119
- title: (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isFunction)(null == (_unpackConfig_html4 = unpackConfig.html) ? void 0 : _unpackConfig_html4.title) ? null == (_unpackConfig_html5 = unpackConfig.html) ? void 0 : _unpackConfig_html5.title({
122
+ title: isFunction(null == (_unpackConfig_html4 = unpackConfig.html) ? void 0 : _unpackConfig_html4.title) ? null == (_unpackConfig_html5 = unpackConfig.html) ? void 0 : _unpackConfig_html5.title({
120
123
  entryName: 'index'
121
124
  }) : (null == (_unpackConfig_html6 = unpackConfig.html) ? void 0 : _unpackConfig_html6.title) || '',
122
125
  headTag: (null == (_unpackConfig_html7 = unpackConfig.html) ? void 0 : _unpackConfig_html7.headTag) || '',
@@ -127,7 +130,7 @@ async function getBundlerConfig(unpackConfig) {
127
130
  'main'
128
131
  ]
129
132
  }),
130
- (null == (_unpackConfig_performance = unpackConfig.performance) ? void 0 : _unpackConfig_performance.bundleAnalyze) && (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isProd)() && new BundleAnalyzerPlugin(),
133
+ (null == (_unpackConfig_performance = unpackConfig.performance) ? void 0 : _unpackConfig_performance.bundleAnalyze) && isProd() && new BundleAnalyzerPlugin(),
131
134
  (null == (_unpackConfig_performance1 = unpackConfig.performance) ? void 0 : _unpackConfig_performance1.removeMomentLocale) && new IgnorePlugin({
132
135
  resourceRegExp: /^\.\/locale$/,
133
136
  contextRegExp: /moment$/
@@ -135,7 +138,7 @@ async function getBundlerConfig(unpackConfig) {
135
138
  (null == (_unpackConfig_build6 = unpackConfig.build) ? void 0 : _unpackConfig_build6.copy) && new CopyPlugin({
136
139
  patterns: unpackConfig.build.copy
137
140
  }),
138
- (null == (_unpackConfig_build7 = unpackConfig.build) ? void 0 : _unpackConfig_build7.typeCheck) && (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isDev)() && isTs && new TsCheckerRspackPlugin({
141
+ (null == (_unpackConfig_build7 = unpackConfig.build) ? void 0 : _unpackConfig_build7.typeCheck) && isDev() && isTs && new TsCheckerRspackPlugin({
139
142
  typescript: {
140
143
  mode: 'readonly',
141
144
  memoryLimit: 8192,
@@ -148,7 +151,7 @@ async function getBundlerConfig(unpackConfig) {
148
151
  },
149
152
  issue: {
150
153
  exclude: [
151
- ({ file = '' })=>__WEBPACK_EXTERNAL_MODULE__constants_js_59e7fa1b__.NODE_MODULES_REGEX.test(file)
154
+ ({ file = '' })=>NODE_MODULES_REGEX.test(file)
152
155
  ]
153
156
  },
154
157
  logger: {
@@ -160,12 +163,13 @@ async function getBundlerConfig(unpackConfig) {
160
163
  }
161
164
  }
162
165
  }),
163
- new PluginProgress()
166
+ new ProgressPlugin(),
167
+ new OxlintPlugin()
164
168
  ].filter(Boolean),
165
169
  externals: unpackConfig.externals,
166
170
  resolve: {
167
171
  alias: {
168
- '@': __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].resolve(unpackConfig.root, 'src'),
172
+ '@': external_node_path_default.resolve(unpackConfig.root, 'src'),
169
173
  ...isTs ? getAliasFromTsconfig() : {},
170
174
  ...null == (_unpackConfig_resolve = unpackConfig.resolve) ? void 0 : _unpackConfig_resolve.alias
171
175
  },
@@ -179,48 +183,53 @@ async function getBundlerConfig(unpackConfig) {
179
183
  ]
180
184
  },
181
185
  experiments: {
182
- lazyCompilation: (null == (_unpackConfig_dev = unpackConfig.dev) ? void 0 : _unpackConfig_dev.lazyCompilation) && (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isDevServer)(),
186
+ lazyCompilation: (null == (_unpackConfig_dev = unpackConfig.dev) ? void 0 : _unpackConfig_dev.lazyCompilation) && isDevServer(),
183
187
  css: false,
184
- asyncWebAssembly: true,
185
- ...isRspack && (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isDev)() ? {
186
- incremental: true
187
- } : {}
188
+ asyncWebAssembly: true
188
189
  },
189
190
  optimization: {
190
- moduleIds: (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isDev)() ? 'named' : 'deterministic',
191
+ moduleIds: isDev() ? 'named' : 'deterministic',
191
192
  minimize: Boolean(null == (_unpackConfig_build8 = unpackConfig.build) ? void 0 : _unpackConfig_build8.minify),
192
193
  minimizer: [
193
- new __WEBPACK_EXTERNAL_MODULE__jsMinify_js_f62b6778__.JsMinifyPlugin({
194
- target: __WEBPACK_EXTERNAL_MODULE__constants_js_59e7fa1b__.ESBUILD_TARGET
194
+ new JsMinifyPlugin({
195
+ ...minifyOptions.oxc,
196
+ compress: {
197
+ target: 'es2015',
198
+ ...oxcMinifyCompress
199
+ }
195
200
  }),
196
- new __WEBPACK_EXTERNAL_MODULE__lightningcss_minimizer_js_13e64036__.LightningcssMinifyPlugin(minifyOptions.lightningcss)
201
+ new LightningcssMinifyPlugin({
202
+ targets: LIGHTNINGCSS_TARGET,
203
+ ...minifyOptions.lightningcss
204
+ })
197
205
  ]
198
206
  },
199
- cache: (null == (_unpackConfig_build9 = unpackConfig.build) ? void 0 : _unpackConfig_build9.cache) && 'webpack' === unpackConfig.bundler ? {
200
- type: 'filesystem'
201
- } : void 0,
202
207
  watchOptions: {
203
208
  ignored: /[\\/](?:\.git|node_modules)[\\/]/
204
209
  }
205
210
  };
206
- config = (null == (_unpackConfig_experiments = unpackConfig.experiments) ? void 0 : _unpackConfig_experiments.css) ? (0, __WEBPACK_EXTERNAL_MODULE__experimentCss_js_9e7bd201__.applyExperimentCssConfig)({
211
+ config = (null == (_unpackConfig_experiments = unpackConfig.experiments) ? void 0 : _unpackConfig_experiments.css) ? applyExperimentCssConfig({
212
+ config,
213
+ unpackConfig
214
+ }) : applyCssConfig({
207
215
  config,
208
216
  unpackConfig
209
- }) : (0, __WEBPACK_EXTERNAL_MODULE__css_js_1fdaa05b__.applyCssConfig)({
217
+ });
218
+ config = applyChunkSplitConfig({
210
219
  config,
211
220
  unpackConfig
212
221
  });
213
- config = (0, __WEBPACK_EXTERNAL_MODULE__chunkSplit_js_e220bc09__.applyChunkSplitConfig)({
222
+ config = await applyCacheConfig({
214
223
  config,
215
224
  unpackConfig
216
225
  });
217
- for (const plugin of (0, __WEBPACK_EXTERNAL_MODULE__plugin_js_2616467e__.getNormalizedPluginsByHook)('bundlerConfig', unpackConfig.plugins))config = await plugin.bundlerConfig(config, {
226
+ for (const plugin of getNormalizedPluginsByHook('bundlerConfig', unpackConfig.plugins))config = await plugin.bundlerConfig(config, {
218
227
  unpackConfig,
219
- mergeConfig: __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.mergeConfig
228
+ mergeConfig: mergeConfig
220
229
  });
221
- if (unpackConfig.bundlerConfig) config = (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isFunction)(unpackConfig.bundlerConfig) ? await unpackConfig.bundlerConfig(config, {
222
- mergeConfig: __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.mergeConfig
223
- }) : (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.mergeConfig)(config, unpackConfig.bundlerConfig);
230
+ if (unpackConfig.bundlerConfig) config = isFunction(unpackConfig.bundlerConfig) ? await unpackConfig.bundlerConfig(config, {
231
+ mergeConfig: mergeConfig
232
+ }) : mergeConfig(config, unpackConfig.bundlerConfig);
224
233
  return config;
225
234
  }
226
235
  export { getBundlerConfig };
@@ -35,7 +35,7 @@ __webpack_require__.r(__webpack_exports__);
35
35
  __webpack_require__.d(__webpack_exports__, {
36
36
  JsMinifyPlugin: ()=>JsMinifyPlugin
37
37
  });
38
- const external_esbuild_namespaceObject = require("esbuild");
38
+ const external_oxc_minify_namespaceObject = require("oxc-minify");
39
39
  const external_webpack_namespaceObject = require("webpack");
40
40
  var external_webpack_default = /*#__PURE__*/ __webpack_require__.n(external_webpack_namespaceObject);
41
41
  function _define_property(obj, key, value) {
@@ -53,15 +53,15 @@ const isJsFile = /\.[cm]?js(\?.*)?$/i;
53
53
  const PLUGIN_NAME = 'JsMinifyPlugin';
54
54
  class JsMinifyPlugin {
55
55
  apply(compiler) {
56
- const { implementation, ...transformOptions } = this.options;
56
+ const { implementation, ...minifyOptions } = this.options;
57
57
  const meta = JSON.stringify({
58
58
  name: PLUGIN_NAME,
59
- version: "2.0.0",
60
- options: transformOptions
59
+ version: "2.2.0",
60
+ options: minifyOptions
61
61
  });
62
62
  compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation)=>{
63
63
  compilation.hooks.chunkHash.tap(PLUGIN_NAME, (_, hash)=>hash.update(meta));
64
- compilation.hooks.processAssets.tapPromise({
64
+ compilation.hooks.processAssets.tap({
65
65
  name: PLUGIN_NAME,
66
66
  stage: compiler.webpack.Compilation.PROCESS_ASSETS_STAGE_OPTIMIZE_SIZE,
67
67
  additionalAssets: true
@@ -71,22 +71,21 @@ class JsMinifyPlugin {
71
71
  });
72
72
  });
73
73
  }
74
- async transformAssets(compilation) {
74
+ transformAssets(compilation) {
75
75
  const { options: { devtool } } = compilation.compiler;
76
76
  const sourceMap = !!devtool && devtool.includes('source-map');
77
77
  const assets = compilation.getAssets().filter((asset)=>!asset.info.minimized && isJsFile.test(asset.name));
78
- const { implementation, ...transformOptions } = this.options;
79
- await Promise.all(assets.map(async (asset)=>{
78
+ const { implementation, ...minifyOptions } = this.options;
79
+ assets.map((asset)=>{
80
80
  const { source, map } = asset.source.sourceAndMap();
81
- const output = await this.transform(Buffer.isBuffer(source) ? source.toString() : source, {
82
- ...transformOptions,
83
- minify: true,
81
+ const { name } = asset;
82
+ const output = this.minify(name, Buffer.isBuffer(source) ? source.toString() : source, {
84
83
  sourcemap: sourceMap,
85
- sourcefile: asset.name
84
+ ...minifyOptions
86
85
  });
87
86
  let newMap;
88
87
  if (output.map) {
89
- newMap = JSON.parse(output.map);
88
+ newMap = 'string' == typeof output.map ? JSON.parse(output.map) : output.map;
90
89
  newMap.sources = [
91
90
  asset.name
92
91
  ];
@@ -97,13 +96,13 @@ class JsMinifyPlugin {
97
96
  minimized: true
98
97
  };
99
98
  compilation.updateAsset(asset.name, newSource, newInfo);
100
- }));
99
+ });
101
100
  }
102
101
  constructor(options = {}){
103
102
  _define_property(this, "options", {});
104
- _define_property(this, "transform", void 0);
103
+ _define_property(this, "minify", void 0);
105
104
  const { implementation } = options;
106
- this.transform = (null == implementation ? void 0 : implementation.transform) ?? external_esbuild_namespaceObject.transform;
105
+ this.minify = (null == implementation ? void 0 : implementation.minify) ?? external_oxc_minify_namespaceObject.minify;
107
106
  this.options = options;
108
107
  }
109
108
  }
@@ -1,18 +1,10 @@
1
- import { type TransformOptions, transform } from 'esbuild';
1
+ import type { OxcMinifyPluginOptions } from '../types/oxc';
2
2
  import webpack from 'webpack';
3
- type Implementation = {
4
- transform: typeof transform;
5
- };
6
- export type EsbuildPluginOptions = Omit<TransformOptions, 'sourcemap' | 'sourcefile'> & {
7
- /** Pass a custom esbuild implementation */
8
- implementation?: Implementation;
9
- };
10
3
  export declare class JsMinifyPlugin {
11
4
  private readonly options;
12
- private readonly transform;
13
- constructor(options?: EsbuildPluginOptions);
5
+ private readonly minify;
6
+ constructor(options?: OxcMinifyPluginOptions);
14
7
  apply(compiler: webpack.Compiler): void;
15
8
  private transformAssets;
16
9
  }
17
- export {};
18
10
  //# sourceMappingURL=jsMinify.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"jsMinify.d.ts","sourceRoot":"","sources":["../../src/bundler-config/jsMinify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAC1D,OAAO,OAAO,MAAM,SAAS,CAAA;AAK7B,KAAK,cAAc,GAAG;IACpB,SAAS,EAAE,OAAO,SAAS,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,EAAE,WAAW,GAAG,YAAY,CAAC,GAAG;IACtF,2CAA2C;IAC3C,cAAc,CAAC,EAAE,cAAc,CAAA;CAChC,CAAA;AAGD,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IACnD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;gBAEhC,OAAO,GAAE,oBAAyB;IAM9C,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YA2BlB,eAAe;CAkC9B"}
1
+ {"version":3,"file":"jsMinify.d.ts","sourceRoot":"","sources":["../../src/bundler-config/jsMinify.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,OAAO,MAAM,SAAS,CAAA;AAM7B,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6B;IACrD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;gBAE1B,OAAO,GAAE,sBAA2B;IAMhD,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ;IA2BhC,OAAO,CAAC,eAAe;CA+BxB"}
@@ -1,7 +1,7 @@
1
1
  import __rslib_shim_module__ from 'module';
2
2
  /*#__PURE__*/ import.meta.url;
3
- import * as __WEBPACK_EXTERNAL_MODULE_esbuild__ from "esbuild";
4
- import * as __WEBPACK_EXTERNAL_MODULE_webpack__ from "webpack";
3
+ import { minify } from "oxc-minify";
4
+ import external_webpack_default from "webpack";
5
5
  function _define_property(obj, key, value) {
6
6
  if (key in obj) Object.defineProperty(obj, key, {
7
7
  value: value,
@@ -12,20 +12,20 @@ function _define_property(obj, key, value) {
12
12
  else obj[key] = value;
13
13
  return obj;
14
14
  }
15
- const { RawSource, SourceMapSource } = __WEBPACK_EXTERNAL_MODULE_webpack__["default"].sources;
15
+ const { RawSource, SourceMapSource } = external_webpack_default.sources;
16
16
  const isJsFile = /\.[cm]?js(\?.*)?$/i;
17
17
  const PLUGIN_NAME = 'JsMinifyPlugin';
18
18
  class JsMinifyPlugin {
19
19
  apply(compiler) {
20
- const { implementation, ...transformOptions } = this.options;
20
+ const { implementation, ...minifyOptions } = this.options;
21
21
  const meta = JSON.stringify({
22
22
  name: PLUGIN_NAME,
23
- version: "2.0.0",
24
- options: transformOptions
23
+ version: "2.2.0",
24
+ options: minifyOptions
25
25
  });
26
26
  compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation)=>{
27
27
  compilation.hooks.chunkHash.tap(PLUGIN_NAME, (_, hash)=>hash.update(meta));
28
- compilation.hooks.processAssets.tapPromise({
28
+ compilation.hooks.processAssets.tap({
29
29
  name: PLUGIN_NAME,
30
30
  stage: compiler.webpack.Compilation.PROCESS_ASSETS_STAGE_OPTIMIZE_SIZE,
31
31
  additionalAssets: true
@@ -35,22 +35,21 @@ class JsMinifyPlugin {
35
35
  });
36
36
  });
37
37
  }
38
- async transformAssets(compilation) {
38
+ transformAssets(compilation) {
39
39
  const { options: { devtool } } = compilation.compiler;
40
40
  const sourceMap = !!devtool && devtool.includes('source-map');
41
41
  const assets = compilation.getAssets().filter((asset)=>!asset.info.minimized && isJsFile.test(asset.name));
42
- const { implementation, ...transformOptions } = this.options;
43
- await Promise.all(assets.map(async (asset)=>{
42
+ const { implementation, ...minifyOptions } = this.options;
43
+ assets.map((asset)=>{
44
44
  const { source, map } = asset.source.sourceAndMap();
45
- const output = await this.transform(Buffer.isBuffer(source) ? source.toString() : source, {
46
- ...transformOptions,
47
- minify: true,
45
+ const { name } = asset;
46
+ const output = this.minify(name, Buffer.isBuffer(source) ? source.toString() : source, {
48
47
  sourcemap: sourceMap,
49
- sourcefile: asset.name
48
+ ...minifyOptions
50
49
  });
51
50
  let newMap;
52
51
  if (output.map) {
53
- newMap = JSON.parse(output.map);
52
+ newMap = 'string' == typeof output.map ? JSON.parse(output.map) : output.map;
54
53
  newMap.sources = [
55
54
  asset.name
56
55
  ];
@@ -61,13 +60,13 @@ class JsMinifyPlugin {
61
60
  minimized: true
62
61
  };
63
62
  compilation.updateAsset(asset.name, newSource, newInfo);
64
- }));
63
+ });
65
64
  }
66
65
  constructor(options = {}){
67
66
  _define_property(this, "options", {});
68
- _define_property(this, "transform", void 0);
67
+ _define_property(this, "minify", void 0);
69
68
  const { implementation } = options;
70
- this.transform = (null == implementation ? void 0 : implementation.transform) ?? __WEBPACK_EXTERNAL_MODULE_esbuild__.transform;
69
+ this.minify = (null == implementation ? void 0 : implementation.minify) ?? minify;
71
70
  this.options = options;
72
71
  }
73
72
  }
@@ -0,0 +1,30 @@
1
+ {
2
+ "plugins": ["typescript", "unicorn", "react", "oxc", "react-perf", "jsdoc"],
3
+ "env": {
4
+ "browser": true,
5
+ "node": true
6
+ },
7
+ "globals": {},
8
+ "settings": {},
9
+ "rules": {
10
+ "prefer-object-spread": "error",
11
+ "yoda": "error",
12
+ "no-duplicate-imports": "error",
13
+ "no-undef": "error",
14
+ "react/jsx-boolean-value": "error",
15
+ "react/rules-of-hooks": "error",
16
+ "react/exhaustive-deps": "off",
17
+ "react/self-closing-comp": [
18
+ "error",
19
+ {
20
+ "html": false
21
+ }
22
+ ],
23
+ "unicorn/no-nested-ternary": "error",
24
+ "unicorn/prefer-node-protocol": "error",
25
+ "unicorn/prefer-array-some": "error",
26
+ "unicorn/prefer-string-slice": "error",
27
+ "unicorn/no-console-spaces": "error",
28
+ "typescript/no-import-type-side-effects": "error"
29
+ }
30
+ }