@unpackjs/core 2.1.0 → 2.3.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 (153) hide show
  1. package/compiled/css-loader/index.js +49 -49
  2. package/compiled/less-loader/index.js +8 -8
  3. package/compiled/postcss-loader/index.js +37 -37
  4. package/compiled/sass-loader/index.js +8 -8
  5. package/dist/bundler-config/cache.cjs +113 -0
  6. package/dist/bundler-config/cache.d.ts +7 -0
  7. package/dist/bundler-config/cache.d.ts.map +1 -0
  8. package/dist/bundler-config/cache.js +71 -0
  9. package/dist/bundler-config/chunkSplit.d.ts.map +1 -1
  10. package/dist/bundler-config/chunkSplit.js +8 -8
  11. package/dist/bundler-config/css.cjs +15 -16
  12. package/dist/bundler-config/css.d.ts.map +1 -1
  13. package/dist/bundler-config/css.js +44 -45
  14. package/dist/bundler-config/experimentCss.cjs +14 -12
  15. package/dist/bundler-config/experimentCss.d.ts.map +1 -1
  16. package/dist/bundler-config/experimentCss.js +39 -37
  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 +63 -25
  22. package/dist/bundler-config/index.d.ts.map +1 -1
  23. package/dist/bundler-config/index.js +103 -65
  24. package/dist/bundler-config/jsMinify.cjs +9 -11
  25. package/dist/bundler-config/jsMinify.d.ts +2 -10
  26. package/dist/bundler-config/jsMinify.d.ts.map +1 -1
  27. package/dist/bundler-config/jsMinify.js +14 -16
  28. package/dist/bundler-config/oxlint/.oxlintrc.json +29 -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/{plugin-progress/helper.cjs → bundler-config/progress/helpers.cjs} +24 -11
  34. package/dist/{plugin-progress/helper.d.ts → bundler-config/progress/helpers.d.ts} +1 -1
  35. package/dist/bundler-config/progress/helpers.d.ts.map +1 -0
  36. package/dist/bundler-config/progress/helpers.js +81 -0
  37. package/dist/{plugin-progress → bundler-config/progress}/rspack.cjs +11 -11
  38. package/dist/{plugin-progress → bundler-config/progress}/rspack.d.ts +2 -2
  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/{plugin-progress → bundler-config/progress}/webpack.cjs +14 -12
  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 +4 -5
  49. package/dist/config.cjs +11 -3
  50. package/dist/config.d.ts +1 -0
  51. package/dist/config.d.ts.map +1 -1
  52. package/dist/config.js +25 -21
  53. package/dist/constants.cjs +21 -17
  54. package/dist/constants.d.ts +2 -1
  55. package/dist/constants.d.ts.map +1 -1
  56. package/dist/constants.js +11 -10
  57. package/dist/createUnpack.cjs +25 -33
  58. package/dist/createUnpack.d.ts +9 -4
  59. package/dist/createUnpack.d.ts.map +1 -1
  60. package/dist/createUnpack.js +36 -34
  61. package/dist/fs.cjs +91 -0
  62. package/dist/fs.d.ts +12 -0
  63. package/dist/fs.d.ts.map +1 -0
  64. package/dist/fs.js +34 -0
  65. package/dist/global.js +1 -1
  66. package/dist/index.cjs +71 -59
  67. package/dist/index.d.ts +9 -9
  68. package/dist/index.d.ts.map +1 -1
  69. package/dist/index.js +12 -47
  70. package/dist/lightningcss/loader.cjs +0 -2
  71. package/dist/lightningcss/loader.d.ts.map +1 -1
  72. package/dist/lightningcss/loader.js +5 -7
  73. package/dist/lightningcss/minimizer.cjs +14 -17
  74. package/dist/lightningcss/minimizer.d.ts +2 -2
  75. package/dist/lightningcss/minimizer.d.ts.map +1 -1
  76. package/dist/lightningcss/minimizer.js +16 -19
  77. package/dist/loadEnv.cjs +122 -0
  78. package/dist/loadEnv.d.ts +64 -0
  79. package/dist/loadEnv.d.ts.map +1 -0
  80. package/dist/loadEnv.js +80 -0
  81. package/dist/loadingAnimation.cjs +76 -0
  82. package/dist/loadingAnimation.d.ts +9 -0
  83. package/dist/loadingAnimation.d.ts.map +1 -0
  84. package/dist/loadingAnimation.js +44 -0
  85. package/dist/logger.cjs +6 -7
  86. package/dist/logger.d.ts.map +1 -1
  87. package/dist/logger.js +14 -14
  88. package/dist/openBrowser.d.ts.map +1 -1
  89. package/dist/openBrowser.js +8 -8
  90. package/dist/plugin.js +1 -1
  91. package/dist/prebundleDeps.cjs +31 -10
  92. package/dist/prebundleDeps.d.ts.map +1 -1
  93. package/dist/prebundleDeps.js +74 -52
  94. package/dist/progressBar.cjs +5 -12
  95. package/dist/progressBar.d.ts +2 -0
  96. package/dist/progressBar.d.ts.map +1 -1
  97. package/dist/progressBar.js +8 -5
  98. package/dist/reporter.cjs +15 -11
  99. package/dist/reporter.d.ts.map +1 -1
  100. package/dist/reporter.js +28 -23
  101. package/dist/run/build.cjs +4 -4
  102. package/dist/run/build.d.ts +1 -1
  103. package/dist/run/build.d.ts.map +1 -1
  104. package/dist/run/build.js +11 -11
  105. package/dist/run/dev.cjs +23 -16
  106. package/dist/run/dev.d.ts +1 -1
  107. package/dist/run/dev.d.ts.map +1 -1
  108. package/dist/run/dev.js +41 -33
  109. package/dist/run/index.js +1 -1
  110. package/dist/typed-css-modules/loader.cjs +2 -2
  111. package/dist/typed-css-modules/loader.d.ts.map +1 -1
  112. package/dist/typed-css-modules/loader.js +15 -15
  113. package/dist/typed-css-modules/plugin.cjs +1 -1
  114. package/dist/typed-css-modules/plugin.js +14 -14
  115. package/dist/typed-css-modules/utils.d.ts.map +1 -1
  116. package/dist/typed-css-modules/utils.js +7 -7
  117. package/dist/types/chunkSplit.js +1 -1
  118. package/dist/types/config.d.ts +32 -6
  119. package/dist/types/config.d.ts.map +1 -1
  120. package/dist/types/config.js +1 -1
  121. package/dist/types/index.cjs +15 -15
  122. package/dist/types/index.d.ts +3 -2
  123. package/dist/types/index.d.ts.map +1 -1
  124. package/dist/types/index.js +3 -3
  125. package/dist/types/lightningcss.d.ts +2 -2
  126. package/dist/types/lightningcss.d.ts.map +1 -1
  127. package/dist/types/lightningcss.js +1 -1
  128. package/dist/types/logger.js +1 -1
  129. package/dist/types/oxc.cjs +18 -0
  130. package/dist/types/oxc.d.ts +10 -0
  131. package/dist/types/oxc.d.ts.map +1 -0
  132. package/dist/types/oxc.js +2 -0
  133. package/dist/types/plugin.d.ts +2 -2
  134. package/dist/types/plugin.d.ts.map +1 -1
  135. package/dist/types/plugin.js +1 -1
  136. package/dist/utils.cjs +28 -38
  137. package/dist/utils.d.ts +0 -1
  138. package/dist/utils.d.ts.map +1 -1
  139. package/dist/utils.js +19 -25
  140. package/dist/watchFiles.cjs +1 -1
  141. package/dist/watchFiles.d.ts +1 -1
  142. package/dist/watchFiles.d.ts.map +1 -1
  143. package/dist/watchFiles.js +6 -6
  144. package/package.json +6 -5
  145. package/dist/bundler-config/helper.d.ts.map +0 -1
  146. package/dist/bundler-config/helper.js +0 -39
  147. package/dist/plugin-progress/helper.d.ts.map +0 -1
  148. package/dist/plugin-progress/helper.js +0 -67
  149. package/dist/plugin-progress/rspack.d.ts.map +0 -1
  150. package/dist/plugin-progress/rspack.js +0 -37
  151. package/dist/plugin-progress/webpack.d.ts +0 -8
  152. package/dist/plugin-progress/webpack.d.ts.map +0 -1
  153. package/dist/plugin-progress/webpack.js +0 -42
@@ -3,23 +3,26 @@ 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 node_fs from "node:fs";
7
+ import node_path from "node:path";
8
+ import { rspack } from "@rspack/core";
9
+ import html_webpack_plugin from "html-webpack-plugin";
10
+ import { getNodeEnv, isDev, isDevServer, isFunction, isPlainObject, isProd, mergeConfig } from "../utils.js";
11
+ import json5 from "json5";
12
+ import { DEFAULT_ES_TARGET, DEFAULT_LIGHTNINGCSS_TARGET, NODE_MODULES_REGEX, TEMPLATE_CONTENT } from "../constants.js";
13
+ import { LightningcssMinifyPlugin } from "../lightningcss/minimizer.js";
14
+ import { loadEnv } from "../loadEnv.js";
15
+ import { getNormalizedPluginsByHook } from "../plugin.js";
16
+ import webpack from "webpack";
17
+ import { applyCacheConfig } from "./cache.js";
18
+ import { applyChunkSplitConfig } from "./chunkSplit.js";
19
+ import { applyCssConfig } from "./css.js";
20
+ import { applyExperimentCssConfig } from "./experimentCss.js";
21
+ import { getEntry, getOutputFilename } from "./helpers.js";
22
+ import { JsMinifyPlugin } from "./jsMinify.js";
23
+ import { OxlintPlugin } from "./oxlint/plugin.js";
24
+ import { ProgressRspackPlugin } from "./progress/rspack.js";
25
+ import { ProgressWebpackPlugin } from "./progress/webpack.js";
23
26
  var __webpack_modules__ = {
24
27
  "../../compiled/webpack-bundle-analyzer/index.js": function(module) {
25
28
  module.exports = __WEBPACK_EXTERNAL_MODULE__compiled_webpack_bundle_analyzer_index_js_fd7b218e__;
@@ -45,59 +48,65 @@ const { TsCheckerRspackPlugin } = __webpack_require__("ts-checker-rspack-plugin"
45
48
  const BundleAnalyzerPlugin = __webpack_require__("../../compiled/webpack-bundle-analyzer/index.js").BundleAnalyzerPlugin;
46
49
  const CopyWebpackPlugin = __webpack_require__("copy-webpack-plugin");
47
50
  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;
51
+ 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_resolve, _unpackConfig_resolve1, _unpackConfig_dev, _unpackConfig_build7, _unpackConfig_experiments;
49
52
  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)({
53
+ const HtmlPlugin = isRspack ? rspack.HtmlRspackPlugin : html_webpack_plugin;
54
+ const definePlugin = (define)=>isRspack ? new rspack.DefinePlugin(define) : new webpack.DefinePlugin(define);
55
+ const JS_FILENAME = getOutputFilename({
53
56
  type: 'js',
54
57
  hash: null == (_unpackConfig_build = unpackConfig.build) ? void 0 : _unpackConfig_build.filenameHash
55
58
  });
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);
59
+ const IgnorePlugin = isRspack ? rspack.IgnorePlugin : webpack.IgnorePlugin;
60
+ const CopyPlugin = isRspack ? rspack.CopyRspackPlugin : CopyWebpackPlugin;
61
+ const tsconfigPath = node_path.resolve(unpackConfig.root, 'tsconfig.json');
62
+ const isTs = node_fs.existsSync(tsconfigPath);
60
63
  const getAliasFromTsconfig = ()=>{
61
64
  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;
65
+ const paths = null == (_json5_parse = json5.parse(node_fs.readFileSync(tsconfigPath, 'utf-8'))) ? void 0 : null == (_json5_parse_compilerOptions = _json5_parse.compilerOptions) ? void 0 : _json5_parse_compilerOptions.paths;
63
66
  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(/\/\*$/, ''));
67
+ acc[key.replace(/\/\*$/, '')] = node_path.resolve(unpackConfig.root, paths[key][0].replace(/\/\*$/, ''));
65
68
  return acc;
66
69
  }, {}) : {};
67
70
  };
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;
71
+ const minifyOptions = isPlainObject(null == (_unpackConfig_build1 = unpackConfig.build) ? void 0 : _unpackConfig_build1.minify) ? null == (_unpackConfig_build2 = unpackConfig.build) ? void 0 : _unpackConfig_build2.minify : {};
72
+ const oxcMinifyCompress = isPlainObject(null == (_minifyOptions_oxc = minifyOptions.oxc) ? void 0 : _minifyOptions_oxc.compress) ? minifyOptions.oxc.compress : {};
73
+ const ProgressPlugin = isRspack ? ProgressRspackPlugin : ProgressWebpackPlugin;
70
74
  const wasmFilename = 'js/[hash].module.wasm';
75
+ const { publicVars, filePaths: envFilePaths } = loadEnv({
76
+ prefixes: unpackConfig.envPrefix,
77
+ cwd: unpackConfig.root
78
+ });
71
79
  let config = {
72
80
  context: unpackConfig.root,
73
- mode: (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isDev)() ? 'development' : 'production',
81
+ mode: isDev() ? 'development' : 'production',
74
82
  entry: unpackConfig.mpa ? {} : {
75
- main: await (0, __WEBPACK_EXTERNAL_MODULE__helper_js_3f3fef5c__.getEntry)(unpackConfig.root, unpackConfig.entry)
83
+ main: await getEntry(unpackConfig.root, unpackConfig.entry)
76
84
  },
77
85
  stats: 'errors-only',
78
86
  output: {
79
87
  clean: true,
80
- path: __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].resolve(unpackConfig.root, null == (_unpackConfig_build3 = unpackConfig.build) ? void 0 : _unpackConfig_build3.outDir),
88
+ path: node_path.resolve(unpackConfig.root, null == (_unpackConfig_build3 = unpackConfig.build) ? void 0 : _unpackConfig_build3.outDir),
81
89
  filename: JS_FILENAME,
82
90
  chunkFilename: JS_FILENAME,
83
91
  crossOriginLoading: 'anonymous',
84
92
  pathinfo: false,
85
93
  publicPath: null == (_unpackConfig_build4 = unpackConfig.build) ? void 0 : _unpackConfig_build4.publicPath,
86
- webassemblyModuleFilename: wasmFilename
94
+ webassemblyModuleFilename: wasmFilename,
95
+ assetModuleFilename: 'assets/[name].[contenthash:8][ext]'
87
96
  },
88
97
  infrastructureLogging: {
89
- level: 'warn'
98
+ level: 'error'
90
99
  },
91
100
  devtool: null == (_unpackConfig_build5 = unpackConfig.build) ? void 0 : _unpackConfig_build5.sourceMap,
92
101
  module: {
93
102
  rules: [
94
103
  {
95
- test: /\.(png|svg|jpg|jpeg|gif)$/i,
96
- type: 'asset/resource'
104
+ test: /\.(png|jpg|jpeg|gif)$/i,
105
+ type: 'asset'
97
106
  },
98
107
  {
99
108
  test: /\.(woff|woff2|eot|ttf|otf)$/i,
100
- type: 'asset/resource'
109
+ type: 'asset'
101
110
  },
102
111
  {
103
112
  test: /\.wasm$/,
@@ -110,13 +119,19 @@ async function getBundlerConfig(unpackConfig) {
110
119
  ]
111
120
  },
112
121
  plugins: [
113
- unpackConfig.define && definePlugin(unpackConfig.define),
122
+ definePlugin({
123
+ 'import.meta.env.MODE': JSON.stringify(getNodeEnv()),
124
+ 'import.meta.env.DEV': isDev(),
125
+ 'import.meta.env.PROD': isProd(),
126
+ ...publicVars,
127
+ ...unpackConfig.define
128
+ }),
114
129
  !unpackConfig.mpa && new HtmlPlugin({
115
130
  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),
131
+ 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
132
  templateParameters: {
118
133
  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({
134
+ title: isFunction(null == (_unpackConfig_html4 = unpackConfig.html) ? void 0 : _unpackConfig_html4.title) ? null == (_unpackConfig_html5 = unpackConfig.html) ? void 0 : _unpackConfig_html5.title({
120
135
  entryName: 'index'
121
136
  }) : (null == (_unpackConfig_html6 = unpackConfig.html) ? void 0 : _unpackConfig_html6.title) || '',
122
137
  headTag: (null == (_unpackConfig_html7 = unpackConfig.html) ? void 0 : _unpackConfig_html7.headTag) || '',
@@ -127,7 +142,7 @@ async function getBundlerConfig(unpackConfig) {
127
142
  'main'
128
143
  ]
129
144
  }),
130
- (null == (_unpackConfig_performance = unpackConfig.performance) ? void 0 : _unpackConfig_performance.bundleAnalyze) && (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isProd)() && new BundleAnalyzerPlugin(),
145
+ (null == (_unpackConfig_performance = unpackConfig.performance) ? void 0 : _unpackConfig_performance.bundleAnalyze) && isProd() && new BundleAnalyzerPlugin(),
131
146
  (null == (_unpackConfig_performance1 = unpackConfig.performance) ? void 0 : _unpackConfig_performance1.removeMomentLocale) && new IgnorePlugin({
132
147
  resourceRegExp: /^\.\/locale$/,
133
148
  contextRegExp: /moment$/
@@ -135,7 +150,7 @@ async function getBundlerConfig(unpackConfig) {
135
150
  (null == (_unpackConfig_build6 = unpackConfig.build) ? void 0 : _unpackConfig_build6.copy) && new CopyPlugin({
136
151
  patterns: unpackConfig.build.copy
137
152
  }),
138
- (null == (_unpackConfig_build7 = unpackConfig.build) ? void 0 : _unpackConfig_build7.typeCheck) && (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isDev)() && isTs && new TsCheckerRspackPlugin({
153
+ unpackConfig.typeCheck && isDev() && isTs && new TsCheckerRspackPlugin({
139
154
  typescript: {
140
155
  mode: 'readonly',
141
156
  memoryLimit: 8192,
@@ -148,7 +163,7 @@ async function getBundlerConfig(unpackConfig) {
148
163
  },
149
164
  issue: {
150
165
  exclude: [
151
- ({ file = '' })=>__WEBPACK_EXTERNAL_MODULE__constants_js_59e7fa1b__.NODE_MODULES_REGEX.test(file)
166
+ ({ file = '' })=>NODE_MODULES_REGEX.test(file)
152
167
  ]
153
168
  },
154
169
  logger: {
@@ -156,69 +171,92 @@ async function getBundlerConfig(unpackConfig) {
156
171
  if (message.includes('Found')) console.log(message.split(' in ')[0]);
157
172
  },
158
173
  error (message) {
174
+ if (message.includes('RpcExitError') || message.includes('out of memory')) return;
159
175
  console.log(message.replace(/ERROR/g, 'Type Error'));
160
176
  }
161
177
  }
162
178
  }),
163
- new PluginProgress()
179
+ new ProgressPlugin(),
180
+ unpackConfig.lint && new OxlintPlugin()
164
181
  ].filter(Boolean),
165
182
  externals: unpackConfig.externals,
166
183
  resolve: {
167
184
  alias: {
168
- '@': __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].resolve(unpackConfig.root, 'src'),
185
+ '@': node_path.resolve(unpackConfig.root, 'src'),
169
186
  ...isTs ? getAliasFromTsconfig() : {},
170
187
  ...null == (_unpackConfig_resolve = unpackConfig.resolve) ? void 0 : _unpackConfig_resolve.alias
171
188
  },
189
+ extensionAlias: {
190
+ '.js': [
191
+ '.js',
192
+ '.ts',
193
+ '.tsx'
194
+ ],
195
+ '.jsx': [
196
+ '.jsx',
197
+ '.tsx'
198
+ ]
199
+ },
172
200
  extensions: [
173
201
  '.tsx',
174
202
  '.ts',
175
203
  '.jsx',
176
204
  '.js',
177
205
  '.wasm',
206
+ '.json',
178
207
  ...(null == (_unpackConfig_resolve1 = unpackConfig.resolve) ? void 0 : _unpackConfig_resolve1.extensions) || []
179
208
  ]
180
209
  },
181
210
  experiments: {
182
- lazyCompilation: (null == (_unpackConfig_dev = unpackConfig.dev) ? void 0 : _unpackConfig_dev.lazyCompilation) && (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isDevServer)(),
211
+ lazyCompilation: (null == (_unpackConfig_dev = unpackConfig.dev) ? void 0 : _unpackConfig_dev.lazyCompilation) && isDevServer(),
183
212
  css: false,
184
- asyncWebAssembly: true,
185
- ...isRspack && (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isDev)() ? {
186
- incremental: true
187
- } : {}
213
+ asyncWebAssembly: true
188
214
  },
189
215
  optimization: {
190
- moduleIds: (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isDev)() ? 'named' : 'deterministic',
191
- minimize: Boolean(null == (_unpackConfig_build8 = unpackConfig.build) ? void 0 : _unpackConfig_build8.minify),
216
+ moduleIds: isDev() ? 'named' : 'deterministic',
217
+ minimize: Boolean(null == (_unpackConfig_build7 = unpackConfig.build) ? void 0 : _unpackConfig_build7.minify),
192
218
  minimizer: [
193
- new __WEBPACK_EXTERNAL_MODULE__jsMinify_js_f62b6778__.JsMinifyPlugin(),
194
- new __WEBPACK_EXTERNAL_MODULE__lightningcss_minimizer_js_13e64036__.LightningcssMinifyPlugin(minifyOptions.lightningcss)
219
+ new JsMinifyPlugin({
220
+ ...minifyOptions.oxc,
221
+ compress: {
222
+ target: DEFAULT_ES_TARGET,
223
+ ...oxcMinifyCompress
224
+ }
225
+ }),
226
+ new LightningcssMinifyPlugin({
227
+ targets: DEFAULT_LIGHTNINGCSS_TARGET,
228
+ ...minifyOptions.lightningcss
229
+ })
195
230
  ]
196
231
  },
197
- cache: (null == (_unpackConfig_build9 = unpackConfig.build) ? void 0 : _unpackConfig_build9.cache) && 'webpack' === unpackConfig.bundler ? {
198
- type: 'filesystem'
199
- } : void 0,
200
232
  watchOptions: {
201
233
  ignored: /[\\/](?:\.git|node_modules)[\\/]/
202
234
  }
203
235
  };
204
- config = (null == (_unpackConfig_experiments = unpackConfig.experiments) ? void 0 : _unpackConfig_experiments.css) ? (0, __WEBPACK_EXTERNAL_MODULE__experimentCss_js_9e7bd201__.applyExperimentCssConfig)({
236
+ config = (null == (_unpackConfig_experiments = unpackConfig.experiments) ? void 0 : _unpackConfig_experiments.css) ? applyExperimentCssConfig({
205
237
  config,
206
238
  unpackConfig
207
- }) : (0, __WEBPACK_EXTERNAL_MODULE__css_js_1fdaa05b__.applyCssConfig)({
239
+ }) : applyCssConfig({
208
240
  config,
209
241
  unpackConfig
210
242
  });
211
- config = (0, __WEBPACK_EXTERNAL_MODULE__chunkSplit_js_e220bc09__.applyChunkSplitConfig)({
243
+ config = applyChunkSplitConfig({
212
244
  config,
213
245
  unpackConfig
214
246
  });
215
- for (const plugin of (0, __WEBPACK_EXTERNAL_MODULE__plugin_js_2616467e__.getNormalizedPluginsByHook)('bundlerConfig', unpackConfig.plugins))config = await plugin.bundlerConfig(config, {
247
+ config = await applyCacheConfig({
248
+ config,
249
+ unpackConfig,
250
+ envFilePaths
251
+ });
252
+ for (const plugin of getNormalizedPluginsByHook('bundlerConfig', unpackConfig.plugins))config = await plugin.bundlerConfig(config, {
253
+ ...unpackConfig._context,
216
254
  unpackConfig,
217
- mergeConfig: __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.mergeConfig
255
+ mergeConfig: mergeConfig
218
256
  });
219
- if (unpackConfig.bundlerConfig) config = (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.isFunction)(unpackConfig.bundlerConfig) ? await unpackConfig.bundlerConfig(config, {
220
- mergeConfig: __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.mergeConfig
221
- }) : (0, __WEBPACK_EXTERNAL_MODULE__utils_js_db66b9f7__.mergeConfig)(config, unpackConfig.bundlerConfig);
257
+ if (unpackConfig.bundlerConfig) config = isFunction(unpackConfig.bundlerConfig) ? await unpackConfig.bundlerConfig(config, {
258
+ mergeConfig: mergeConfig
259
+ }) : mergeConfig(config, unpackConfig.bundlerConfig);
222
260
  return config;
223
261
  }
224
262
  export { getBundlerConfig };
@@ -53,11 +53,10 @@ const isJsFile = /\.[cm]?js(\?.*)?$/i;
53
53
  const PLUGIN_NAME = 'JsMinifyPlugin';
54
54
  class JsMinifyPlugin {
55
55
  apply(compiler) {
56
- const { implementation, ...minifyOptions } = this.options;
57
56
  const meta = JSON.stringify({
58
57
  name: PLUGIN_NAME,
59
- version: "2.1.0",
60
- options: minifyOptions
58
+ version: "2.3.0",
59
+ options: this.minifyOptions
61
60
  });
62
61
  compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation)=>{
63
62
  compilation.hooks.chunkHash.tap(PLUGIN_NAME, (_, hash)=>hash.update(meta));
@@ -73,17 +72,16 @@ class JsMinifyPlugin {
73
72
  }
74
73
  transformAssets(compilation) {
75
74
  const { options: { devtool } } = compilation.compiler;
76
- const sourceMap = !!devtool && devtool.includes('source-map');
75
+ const sourceMap = 'string' == typeof devtool && devtool.includes('source-map');
77
76
  const assets = compilation.getAssets().filter((asset)=>!asset.info.minimized && isJsFile.test(asset.name));
78
- const { implementation, ...minifyOptions } = this.options;
79
77
  assets.map((asset)=>{
80
78
  const { source, map } = asset.source.sourceAndMap();
81
79
  const { name } = asset;
82
80
  const output = this.minify(name, Buffer.isBuffer(source) ? source.toString() : source, {
83
- ...minifyOptions,
84
- sourcemap: sourceMap
81
+ sourcemap: sourceMap,
82
+ ...this.minifyOptions
85
83
  });
86
- let newMap;
84
+ let newMap = null;
87
85
  if (output.map) {
88
86
  newMap = 'string' == typeof output.map ? JSON.parse(output.map) : output.map;
89
87
  newMap.sources = [
@@ -99,11 +97,11 @@ class JsMinifyPlugin {
99
97
  });
100
98
  }
101
99
  constructor(options = {}){
102
- _define_property(this, "options", {});
103
100
  _define_property(this, "minify", void 0);
104
- const { implementation } = options;
101
+ _define_property(this, "minifyOptions", void 0);
102
+ const { implementation, ...minifyOptions } = options;
105
103
  this.minify = (null == implementation ? void 0 : implementation.minify) ?? external_oxc_minify_namespaceObject.minify;
106
- this.options = options;
104
+ this.minifyOptions = minifyOptions;
107
105
  }
108
106
  }
109
107
  exports.JsMinifyPlugin = __webpack_exports__.JsMinifyPlugin;
@@ -1,18 +1,10 @@
1
- import { type MinifyOptions, minify } from 'oxc-minify';
1
+ import type { OxcMinifyPluginOptions } from '../types/oxc';
2
2
  import webpack from 'webpack';
3
- type Implementation = {
4
- minify: typeof minify;
5
- };
6
- export type OxcMinifyPluginOptions = MinifyOptions & {
7
- /** Pass a custom oxc-minify implementation */
8
- implementation?: Implementation;
9
- };
10
3
  export declare class JsMinifyPlugin {
11
- private readonly options;
12
4
  private readonly minify;
5
+ private readonly minifyOptions;
13
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,aAAa,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACvD,OAAO,OAAO,MAAM,SAAS,CAAA;AAK7B,KAAK,cAAc,GAAG;IACpB,MAAM,EAAE,OAAO,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG,aAAa,GAAG;IACnD,8CAA8C;IAC9C,cAAc,CAAC,EAAE,cAAc,CAAA;CAChC,CAAA;AAGD,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
+ {"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,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;gBAEjC,OAAO,GAAE,sBAA2B;IAMhD,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ;IA0BhC,OAAO,CAAC,eAAe;CA8BxB"}
@@ -1,7 +1,7 @@
1
- import __rslib_shim_module__ from 'module';
1
+ import 'module';
2
2
  /*#__PURE__*/ import.meta.url;
3
- import * as __WEBPACK_EXTERNAL_MODULE_oxc_minify_dbe80c9f__ from "oxc-minify";
4
- import * as __WEBPACK_EXTERNAL_MODULE_webpack__ from "webpack";
3
+ import { minify } from "oxc-minify";
4
+ import webpack 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,16 +12,15 @@ 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 } = webpack.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, ...minifyOptions } = this.options;
21
20
  const meta = JSON.stringify({
22
21
  name: PLUGIN_NAME,
23
- version: "2.1.0",
24
- options: minifyOptions
22
+ version: "2.3.0",
23
+ options: this.minifyOptions
25
24
  });
26
25
  compiler.hooks.compilation.tap(PLUGIN_NAME, (compilation)=>{
27
26
  compilation.hooks.chunkHash.tap(PLUGIN_NAME, (_, hash)=>hash.update(meta));
@@ -37,17 +36,16 @@ class JsMinifyPlugin {
37
36
  }
38
37
  transformAssets(compilation) {
39
38
  const { options: { devtool } } = compilation.compiler;
40
- const sourceMap = !!devtool && devtool.includes('source-map');
39
+ const sourceMap = 'string' == typeof devtool && devtool.includes('source-map');
41
40
  const assets = compilation.getAssets().filter((asset)=>!asset.info.minimized && isJsFile.test(asset.name));
42
- const { implementation, ...minifyOptions } = this.options;
43
41
  assets.map((asset)=>{
44
42
  const { source, map } = asset.source.sourceAndMap();
45
43
  const { name } = asset;
46
44
  const output = this.minify(name, Buffer.isBuffer(source) ? source.toString() : source, {
47
- ...minifyOptions,
48
- sourcemap: sourceMap
45
+ sourcemap: sourceMap,
46
+ ...this.minifyOptions
49
47
  });
50
- let newMap;
48
+ let newMap = null;
51
49
  if (output.map) {
52
50
  newMap = 'string' == typeof output.map ? JSON.parse(output.map) : output.map;
53
51
  newMap.sources = [
@@ -63,11 +61,11 @@ class JsMinifyPlugin {
63
61
  });
64
62
  }
65
63
  constructor(options = {}){
66
- _define_property(this, "options", {});
67
64
  _define_property(this, "minify", void 0);
68
- const { implementation } = options;
69
- this.minify = (null == implementation ? void 0 : implementation.minify) ?? __WEBPACK_EXTERNAL_MODULE_oxc_minify_dbe80c9f__.minify;
70
- this.options = options;
65
+ _define_property(this, "minifyOptions", void 0);
66
+ const { implementation, ...minifyOptions } = options;
67
+ this.minify = (null == implementation ? void 0 : implementation.minify) ?? minify;
68
+ this.minifyOptions = minifyOptions;
71
69
  }
72
70
  }
73
71
  export { JsMinifyPlugin };
@@ -0,0 +1,29 @@
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/prefer-node-protocol": "error",
24
+ "unicorn/prefer-array-some": "error",
25
+ "unicorn/prefer-string-slice": "error",
26
+ "unicorn/no-console-spaces": "error",
27
+ "typescript/no-import-type-side-effects": "error"
28
+ }
29
+ }
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.n = (module)=>{
5
+ var getter = module && module.__esModule ? ()=>module['default'] : ()=>module;
6
+ __webpack_require__.d(getter, {
7
+ a: getter
8
+ });
9
+ return getter;
10
+ };
11
+ })();
12
+ (()=>{
13
+ __webpack_require__.d = (exports1, definition)=>{
14
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
15
+ enumerable: true,
16
+ get: definition[key]
17
+ });
18
+ };
19
+ })();
20
+ (()=>{
21
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
22
+ })();
23
+ (()=>{
24
+ __webpack_require__.r = (exports1)=>{
25
+ if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
26
+ value: 'Module'
27
+ });
28
+ Object.defineProperty(exports1, '__esModule', {
29
+ value: true
30
+ });
31
+ };
32
+ })();
33
+ var __webpack_exports__ = {};
34
+ __webpack_require__.r(__webpack_exports__);
35
+ __webpack_require__.d(__webpack_exports__, {
36
+ OxlintPlugin: ()=>OxlintPlugin
37
+ });
38
+ const external_node_child_process_namespaceObject = require("node:child_process");
39
+ const external_node_path_namespaceObject = require("node:path");
40
+ var external_node_path_default = /*#__PURE__*/ __webpack_require__.n(external_node_path_namespaceObject);
41
+ function _define_property(obj, key, value) {
42
+ if (key in obj) Object.defineProperty(obj, key, {
43
+ value: value,
44
+ enumerable: true,
45
+ configurable: true,
46
+ writable: true
47
+ });
48
+ else obj[key] = value;
49
+ return obj;
50
+ }
51
+ class OxlintPlugin {
52
+ getGitChangedFiles() {
53
+ return new Promise((resolve)=>{
54
+ var _child_stdout;
55
+ const child = (0, external_node_child_process_namespaceObject.spawn)('git', [
56
+ 'status',
57
+ '--porcelain'
58
+ ], {
59
+ cwd: process.cwd(),
60
+ stdio: 'pipe'
61
+ });
62
+ let output = '';
63
+ null == (_child_stdout = child.stdout) || _child_stdout.on('data', (data)=>{
64
+ output += data.toString();
65
+ });
66
+ child.on('exit', (code)=>{
67
+ if (0 === code) {
68
+ const files = output.trim().split('\n').filter(Boolean).map((line)=>{
69
+ const idx = line.indexOf(' ');
70
+ const status = line.slice(0, idx);
71
+ let filePath = line.slice(idx + 1).trim();
72
+ if (status.includes('D')) return null;
73
+ if (status.startsWith('R') || status.startsWith('C')) filePath = filePath.split(' -> ')[1];
74
+ return filePath;
75
+ }).filter(Boolean).map((file)=>external_node_path_default().resolve(process.cwd(), file));
76
+ resolve(files);
77
+ } else resolve([]);
78
+ });
79
+ child.on('error', ()=>{
80
+ resolve([]);
81
+ });
82
+ });
83
+ }
84
+ runOxlint(args) {
85
+ var _child_stdout, _child_stderr;
86
+ const cwd = process.cwd();
87
+ const child = (0, external_node_child_process_namespaceObject.spawn)('npx', [
88
+ '--yes',
89
+ ...args
90
+ ], {
91
+ cwd,
92
+ stdio: 'pipe',
93
+ shell: true,
94
+ env: {
95
+ ...process.env,
96
+ FORCE_COLOR: '1'
97
+ }
98
+ });
99
+ let output = '';
100
+ null == (_child_stdout = child.stdout) || _child_stdout.on('data', (data)=>{
101
+ output += data.toString();
102
+ });
103
+ child.on('exit', (code)=>{
104
+ const hasErrors = !output.includes('Found 0 warnings and 0 errors');
105
+ if (hasErrors || 0 !== code) process.stdout.write(output);
106
+ });
107
+ null == (_child_stderr = child.stderr) || _child_stderr.on('data', (data)=>{
108
+ process.stderr.write(data);
109
+ });
110
+ }
111
+ apply(compiler) {
112
+ compiler.hooks.watchRun.tap('OxlintPlugin', ()=>{
113
+ if (this.timeoutId) clearTimeout(this.timeoutId);
114
+ this.timeoutId = setTimeout(()=>{
115
+ const configPath = external_node_path_default().resolve(__dirname, '.oxlintrc.json');
116
+ this.getGitChangedFiles().then((changedFiles)=>{
117
+ if (changedFiles.length > 0) {
118
+ const args = [
119
+ 'oxlint',
120
+ '-c',
121
+ configPath,
122
+ ...changedFiles,
123
+ '--fix',
124
+ '--fix-suggestions'
125
+ ];
126
+ this.runOxlint(args);
127
+ }
128
+ });
129
+ }, this.debounceTime);
130
+ });
131
+ }
132
+ constructor(){
133
+ _define_property(this, "timeoutId", null);
134
+ _define_property(this, "debounceTime", 200);
135
+ }
136
+ }
137
+ exports.OxlintPlugin = __webpack_exports__.OxlintPlugin;
138
+ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
139
+ "OxlintPlugin"
140
+ ].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
141
+ Object.defineProperty(exports, '__esModule', {
142
+ value: true
143
+ });
@@ -0,0 +1,10 @@
1
+ import type { Compiler } from '@rspack/core';
2
+ declare class OxlintPlugin {
3
+ private timeoutId;
4
+ private readonly debounceTime;
5
+ private getGitChangedFiles;
6
+ private runOxlint;
7
+ apply(compiler: Compiler): void;
8
+ }
9
+ export { OxlintPlugin };
10
+ //# sourceMappingURL=plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../src/bundler-config/oxlint/plugin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAE5C,cAAM,YAAY;IAChB,OAAO,CAAC,SAAS,CAA8B;IAC/C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAM;IAEnC,OAAO,CAAC,kBAAkB;IAmD1B,OAAO,CAAC,SAAS;IA+BjB,KAAK,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;CAyBhC;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}