@rspack/core 0.1.8 → 0.1.10

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 (120) hide show
  1. package/dist/ContextModuleFactory.d.ts +13 -0
  2. package/dist/ContextModuleFactory.d.ts.map +1 -0
  3. package/dist/ContextModuleFactory.js +40 -0
  4. package/dist/ContextModuleFactory.js.map +1 -0
  5. package/dist/RuleSetCompiler.d.ts +6 -0
  6. package/dist/RuleSetCompiler.d.ts.map +1 -0
  7. package/dist/RuleSetCompiler.js +10 -0
  8. package/dist/RuleSetCompiler.js.map +1 -0
  9. package/dist/compilation.d.ts +30 -11
  10. package/dist/compilation.d.ts.map +1 -1
  11. package/dist/compilation.js +48 -12
  12. package/dist/compilation.js.map +1 -1
  13. package/dist/compiler.d.ts +24 -4
  14. package/dist/compiler.d.ts.map +1 -1
  15. package/dist/compiler.js +233 -14
  16. package/dist/compiler.js.map +1 -1
  17. package/dist/config/adapter-rule-use.d.ts +64 -6
  18. package/dist/config/adapter-rule-use.d.ts.map +1 -1
  19. package/dist/config/adapter-rule-use.js +45 -392
  20. package/dist/config/adapter-rule-use.js.map +1 -1
  21. package/dist/config/adapter.d.ts +6 -3
  22. package/dist/config/adapter.d.ts.map +1 -1
  23. package/dist/config/adapter.js +85 -16
  24. package/dist/config/adapter.js.map +1 -1
  25. package/dist/config/builtins.d.ts +24 -2
  26. package/dist/config/builtins.d.ts.map +1 -1
  27. package/dist/config/builtins.js +44 -4
  28. package/dist/config/builtins.js.map +1 -1
  29. package/dist/config/defaults.d.ts.map +1 -1
  30. package/dist/config/defaults.js +128 -40
  31. package/dist/config/defaults.js.map +1 -1
  32. package/dist/config/normalization.d.ts.map +1 -1
  33. package/dist/config/normalization.js +26 -1
  34. package/dist/config/normalization.js.map +1 -1
  35. package/dist/config/schema.check.d.ts.map +1 -1
  36. package/dist/config/schema.check.js +2449 -1684
  37. package/dist/config/schema.check.js.map +1 -1
  38. package/dist/config/schema.d.ts +1131 -950
  39. package/dist/config/schema.js +149 -0
  40. package/dist/config/schema.js.map +1 -1
  41. package/dist/config/types.d.ts +63 -4
  42. package/dist/config/types.d.ts.map +1 -1
  43. package/dist/lib/Cache.d.ts +72 -0
  44. package/dist/lib/Cache.d.ts.map +1 -0
  45. package/dist/lib/Cache.js +131 -0
  46. package/dist/lib/Cache.js.map +1 -0
  47. package/dist/lib/CacheFacade.d.ts +192 -0
  48. package/dist/lib/CacheFacade.d.ts.map +1 -0
  49. package/dist/lib/CacheFacade.js +320 -0
  50. package/dist/lib/CacheFacade.js.map +1 -0
  51. package/dist/lib/HookWebpackError.d.ts +47 -0
  52. package/dist/lib/HookWebpackError.d.ts.map +1 -0
  53. package/dist/lib/HookWebpackError.js +83 -0
  54. package/dist/lib/HookWebpackError.js.map +1 -0
  55. package/dist/lib/WebpackError.d.ts +24 -0
  56. package/dist/lib/WebpackError.d.ts.map +1 -0
  57. package/dist/lib/WebpackError.js +35 -0
  58. package/dist/lib/WebpackError.js.map +1 -0
  59. package/dist/lib/cache/getLazyHashedEtag.d.ts +36 -0
  60. package/dist/lib/cache/getLazyHashedEtag.d.ts.map +1 -0
  61. package/dist/lib/cache/getLazyHashedEtag.js +74 -0
  62. package/dist/lib/cache/getLazyHashedEtag.js.map +1 -0
  63. package/dist/lib/cache/mergeEtags.d.ts +12 -0
  64. package/dist/lib/cache/mergeEtags.d.ts.map +1 -0
  65. package/dist/lib/cache/mergeEtags.js +72 -0
  66. package/dist/lib/cache/mergeEtags.js.map +1 -0
  67. package/dist/lib/ignoreWarningsPlugin.d.ts +8 -0
  68. package/dist/lib/ignoreWarningsPlugin.d.ts.map +1 -0
  69. package/dist/lib/ignoreWarningsPlugin.js +19 -0
  70. package/dist/lib/ignoreWarningsPlugin.js.map +1 -0
  71. package/dist/loader-runner/LoaderLoadingError.d.ts +5 -0
  72. package/dist/loader-runner/LoaderLoadingError.d.ts.map +1 -0
  73. package/dist/loader-runner/LoaderLoadingError.js +19 -0
  74. package/dist/loader-runner/LoaderLoadingError.js.map +1 -0
  75. package/dist/loader-runner/index.d.ts +18 -0
  76. package/dist/loader-runner/index.d.ts.map +1 -0
  77. package/dist/loader-runner/index.js +678 -0
  78. package/dist/loader-runner/index.js.map +1 -0
  79. package/dist/loader-runner/loadLoader.d.ts +3 -0
  80. package/dist/loader-runner/loadLoader.d.ts.map +1 -0
  81. package/dist/loader-runner/loadLoader.js +69 -0
  82. package/dist/loader-runner/loadLoader.js.map +1 -0
  83. package/dist/multiStats.d.ts.map +1 -1
  84. package/dist/multiStats.js +4 -1
  85. package/dist/multiStats.js.map +1 -1
  86. package/dist/normalModule.d.ts +6 -0
  87. package/dist/normalModule.d.ts.map +1 -0
  88. package/dist/normalModule.js +84 -0
  89. package/dist/normalModule.js.map +1 -0
  90. package/dist/normalModuleFactory.d.ts +5 -0
  91. package/dist/normalModuleFactory.d.ts.map +1 -1
  92. package/dist/normalModuleFactory.js +2 -8
  93. package/dist/normalModuleFactory.js.map +1 -1
  94. package/dist/rspack.d.ts.map +1 -1
  95. package/dist/rspack.js +4 -0
  96. package/dist/rspack.js.map +1 -1
  97. package/dist/stats.d.ts +2 -0
  98. package/dist/stats.d.ts.map +1 -1
  99. package/dist/stats.js +2 -2
  100. package/dist/stats.js.map +1 -1
  101. package/dist/util/fake.d.ts +2 -0
  102. package/dist/util/fake.d.ts.map +1 -1
  103. package/dist/util/fake.js +2 -0
  104. package/dist/util/fake.js.map +1 -1
  105. package/dist/util/index.d.ts +6 -1
  106. package/dist/util/index.d.ts.map +1 -1
  107. package/dist/util/index.js +42 -2
  108. package/dist/util/index.js.map +1 -1
  109. package/dist/util/scheme.d.ts +7 -0
  110. package/dist/util/scheme.d.ts.map +1 -0
  111. package/dist/util/scheme.js +58 -0
  112. package/dist/util/scheme.js.map +1 -0
  113. package/dist/util/webpack.d.ts +5 -0
  114. package/dist/util/webpack.d.ts.map +1 -0
  115. package/dist/util/webpack.js +27 -0
  116. package/dist/util/webpack.js.map +1 -0
  117. package/dist/watching.d.ts.map +1 -1
  118. package/dist/watching.js +1 -1
  119. package/dist/watching.js.map +1 -1
  120. package/package.json +10 -10
package/dist/compiler.js CHANGED
@@ -36,7 +36,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
36
36
  var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  return (mod && mod.__esModule) ? mod : { "default": mod };
38
38
  };
39
- var _Compiler_instances, _Compiler__instance, _Compiler_disabledHooks, _Compiler_instance_get, _Compiler_updateDisabledHooks, _Compiler_processAssets, _Compiler_normalModuleFactoryResolveForScheme, _Compiler_optimize_chunk_modules, _Compiler_finish_modules, _Compiler_make, _Compiler_emit, _Compiler_afterEmit, _Compiler_compilation, _Compiler_newCompilation;
39
+ var _Compiler_instances, _Compiler__instance, _Compiler_disabledHooks, _Compiler_instance_get, _Compiler_updateDisabledHooks, _Compiler_beforeCompile, _Compiler_finishModules, _Compiler_processAssets, _Compiler_beforeResolve, _Compiler_contextModuleBeforeResolve, _Compiler_normalModuleFactoryResolveForScheme, _Compiler_optimize_chunk_modules, _Compiler_optimize_modules, _Compiler_chunkAsset, _Compiler_finish_modules, _Compiler_make, _Compiler_emit, _Compiler_afterEmit, _Compiler_compilation, _Compiler_newCompilation;
40
40
  Object.defineProperty(exports, "__esModule", { value: true });
41
41
  exports.Compiler = void 0;
42
42
  /**
@@ -48,22 +48,60 @@ exports.Compiler = void 0;
48
48
  * Copyright (c) JS Foundation and other contributors
49
49
  * https://github.com/webpack/webpack/blob/main/LICENSE
50
50
  */
51
+ const binding = __importStar(require("@rspack/binding"));
51
52
  const fs_1 = __importDefault(require("fs"));
53
+ const path_1 = __importDefault(require("path"));
52
54
  const tapable = __importStar(require("tapable"));
53
55
  const tapable_1 = require("tapable");
54
- const watching_1 = __importDefault(require("./watching"));
55
- const binding = __importStar(require("@rspack/binding"));
56
- const Logger_1 = require("./logging/Logger");
56
+ const RuleSetCompiler_1 = require("./RuleSetCompiler");
57
57
  const stats_1 = require("./stats");
58
58
  const compilation_1 = require("./compilation");
59
+ const ContextModuleFactory_1 = require("./ContextModuleFactory");
59
60
  const ResolverFactory_1 = __importDefault(require("./ResolverFactory"));
60
- const ConcurrentCompilationError_1 = __importDefault(require("./error/ConcurrentCompilationError"));
61
61
  const adapter_1 = require("./config/adapter");
62
+ const ConcurrentCompilationError_1 = __importDefault(require("./error/ConcurrentCompilationError"));
62
63
  const fileSystem_1 = require("./fileSystem");
64
+ const Cache_1 = __importDefault(require("./lib/Cache"));
65
+ const identifier_1 = require("./util/identifier");
66
+ const CacheFacade_1 = __importDefault(require("./lib/CacheFacade"));
67
+ const loader_runner_1 = require("./loader-runner");
68
+ const Logger_1 = require("./logging/Logger");
63
69
  const normalModuleFactory_1 = require("./normalModuleFactory");
70
+ const scheme_1 = require("./util/scheme");
71
+ const watching_1 = __importDefault(require("./watching"));
72
+ const normalModule_1 = require("./normalModule");
64
73
  class EntryPlugin {
74
+ constructor(context, entry, options = {}) {
75
+ this.context = context;
76
+ this.entry = entry;
77
+ this.options = options;
78
+ }
79
+ apply(compiler) {
80
+ const entry = this.context
81
+ ? path_1.default.resolve(this.context, this.entry)
82
+ : this.entry;
83
+ compiler.options.entry = {
84
+ [this.options.name || "main"]: {
85
+ import: [entry],
86
+ runtime: this.options.runtime
87
+ }
88
+ };
89
+ }
90
+ }
91
+ class NodeTargetPlugin {
65
92
  apply() { }
66
93
  }
94
+ class NodeTemplatePlugin {
95
+ apply() { }
96
+ }
97
+ class EnableLibraryPlugin {
98
+ constructor(libraryType) {
99
+ this.libraryType = libraryType;
100
+ }
101
+ apply(compiler) {
102
+ compiler.options.output.enabledLibraryTypes = [this.libraryType];
103
+ }
104
+ }
67
105
  class HotModuleReplacementPlugin {
68
106
  apply() { }
69
107
  }
@@ -74,20 +112,32 @@ class Compiler {
74
112
  _Compiler_disabledHooks.set(this, void 0);
75
113
  this.outputFileSystem = fs_1.default;
76
114
  this.options = options;
115
+ this.cache = new Cache_1.default();
116
+ this.compilerPath = "";
77
117
  // to workaround some plugin access webpack, we may change dev-server to avoid this hack in the future
78
118
  this.webpack = {
79
119
  EntryPlugin,
80
120
  HotModuleReplacementPlugin,
121
+ NormalModule: // modernjs/server will auto inject this plugin not set
122
+ normalModule_1.NormalModule,
81
123
  get sources() {
82
124
  return require("webpack-sources");
83
125
  },
84
126
  Compilation: compilation_1.Compilation,
85
127
  get version() {
86
- return "5.75.0"; // this is a hack to be compatible with plugin which detect webpack's version
128
+ return require("../package.json").webpackVersion; // this is a hack to be compatible with plugin which detect webpack's version
87
129
  },
88
130
  get rspackVersion() {
89
131
  return require("../package.json").version;
90
132
  },
133
+ WebpackError: Error,
134
+ node: {
135
+ NodeTargetPlugin,
136
+ NodeTemplatePlugin
137
+ },
138
+ library: {
139
+ EnableLibraryPlugin
140
+ },
91
141
  util: {
92
142
  get createHash() {
93
143
  return require("./util/createHash").createHash;
@@ -110,6 +160,7 @@ class Compiler {
110
160
  }
111
161
  };
112
162
  this.root = this;
163
+ this.ruleSet = new RuleSetCompiler_1.RuleSetCompiler();
113
164
  this.running = false;
114
165
  this.context = context;
115
166
  this.resolverFactory = new ResolverFactory_1.default();
@@ -127,23 +178,138 @@ class Compiler {
127
178
  "compilation",
128
179
  "params"
129
180
  ]),
130
- compilation: new tapable.SyncHook(["compilation"]),
181
+ compilation: new tapable.SyncHook([
182
+ "compilation",
183
+ "params"
184
+ ]),
131
185
  invalid: new tapable_1.SyncHook(["filename", "changeTime"]),
132
186
  compile: new tapable_1.SyncHook(["params"]),
133
187
  infrastructureLog: new tapable_1.SyncBailHook(["origin", "type", "args"]),
134
188
  failed: new tapable_1.SyncHook(["error"]),
189
+ normalModuleFactory: new tapable.SyncHook([
190
+ "normalModuleFactory"
191
+ ]),
192
+ contextModuleFactory: new tapable.SyncHook([
193
+ "contextModuleFactory"
194
+ ]),
135
195
  watchRun: new tapable.AsyncSeriesHook(["compiler"]),
136
196
  watchClose: new tapable.SyncHook([]),
137
197
  environment: new tapable.SyncHook([]),
138
198
  afterEnvironment: new tapable.SyncHook([]),
139
199
  afterPlugins: new tapable.SyncHook(["compiler"]),
140
200
  afterResolvers: new tapable.SyncHook(["compiler"]),
141
- make: new tapable.AsyncParallelHook(["compilation"])
201
+ make: new tapable.AsyncParallelHook(["compilation"]),
202
+ beforeCompile: new tapable.AsyncSeriesHook(["params"]),
203
+ finishModules: new tapable.AsyncSeriesHook(["modules"])
142
204
  };
143
205
  this.modifiedFiles = undefined;
144
206
  this.removedFiles = undefined;
145
207
  __classPrivateFieldSet(this, _Compiler_disabledHooks, [], "f");
146
208
  }
209
+ /**
210
+ * @param {string} name cache name
211
+ * @returns {CacheFacade} the cache facade instance
212
+ */
213
+ getCache(name) {
214
+ return new CacheFacade_1.default(this.cache, `${this.compilerPath}${name}`, this.options.output.hashFunction);
215
+ }
216
+ createChildCompiler(compilation, compilerName, compilerIndex, outputOptions, plugins) {
217
+ const childCompiler = new Compiler(this.context, {
218
+ ...this.options,
219
+ output: {
220
+ ...this.options.output,
221
+ ...outputOptions
222
+ },
223
+ // TODO: check why we need to have builtins otherwise this.#instance will fail to initialize Rspack
224
+ builtins: {
225
+ ...this.options.builtins,
226
+ html: undefined
227
+ }
228
+ });
229
+ childCompiler.name = compilerName;
230
+ childCompiler.outputPath = this.outputPath;
231
+ childCompiler.inputFileSystem = this.inputFileSystem;
232
+ // childCompiler.outputFileSystem = null;
233
+ childCompiler.resolverFactory = this.resolverFactory;
234
+ childCompiler.modifiedFiles = this.modifiedFiles;
235
+ childCompiler.removedFiles = this.removedFiles;
236
+ // childCompiler.fileTimestamps = this.fileTimestamps;
237
+ // childCompiler.contextTimestamps = this.contextTimestamps;
238
+ // childCompiler.fsStartTime = this.fsStartTime;
239
+ childCompiler.cache = this.cache;
240
+ childCompiler.compilerPath = `${this.compilerPath}${compilerName}|${compilerIndex}|`;
241
+ // childCompiler._backCompat = this._backCompat;
242
+ const relativeCompilerName = (0, identifier_1.makePathsRelative)(this.context, compilerName, this.root);
243
+ // if (!this.records[relativeCompilerName]) {
244
+ // this.records[relativeCompilerName] = [];
245
+ // }
246
+ // if (this.records[relativeCompilerName][compilerIndex]) {
247
+ // childCompiler.records = this.records[relativeCompilerName][compilerIndex];
248
+ // } else {
249
+ // this.records[relativeCompilerName].push((childCompiler.records = {}));
250
+ // }
251
+ childCompiler.parentCompilation = compilation;
252
+ childCompiler.root = this.root;
253
+ if (Array.isArray(plugins)) {
254
+ for (const plugin of plugins) {
255
+ plugin.apply(childCompiler);
256
+ }
257
+ }
258
+ for (const name in this.hooks) {
259
+ if (![
260
+ "make",
261
+ "compile",
262
+ "emit",
263
+ "afterEmit",
264
+ "invalid",
265
+ "done",
266
+ "thisCompilation"
267
+ ].includes(name)) {
268
+ //@ts-ignore
269
+ if (childCompiler.hooks[name]) {
270
+ //@ts-ignore
271
+ childCompiler.hooks[name].taps = this.hooks[name].taps.slice();
272
+ }
273
+ }
274
+ }
275
+ // compilation.hooks.childCompiler.call(
276
+ // childCompiler,
277
+ // compilerName,
278
+ // compilerIndex
279
+ // );
280
+ return childCompiler;
281
+ }
282
+ runAsChild(callback) {
283
+ const startTime = Date.now();
284
+ const finalCallback = (err, entries, compilation) => {
285
+ try {
286
+ callback(err, entries, compilation);
287
+ }
288
+ catch (e) {
289
+ const err = new Error(`compiler.runAsChild callback error: ${e}`);
290
+ // err.details = e.stack;
291
+ this.parentCompilation.errors.push(err);
292
+ // TODO: remove once this works
293
+ console.log(e);
294
+ }
295
+ };
296
+ this.run((err, stats) => {
297
+ if (err)
298
+ return finalCallback(err);
299
+ const compilation = stats.compilation;
300
+ this.parentCompilation.children.push(compilation);
301
+ for (const { name, source, info } of compilation.getAssets()) {
302
+ this.parentCompilation.emitAsset(name, source, info);
303
+ }
304
+ const entries = [];
305
+ for (const ep of compilation.entrypoints.values()) {
306
+ entries.push(...ep.getFiles());
307
+ }
308
+ // compilation.startTime = startTime;
309
+ // compilation.endTime = Date.now();
310
+ return finalCallback(null, entries, compilation);
311
+ });
312
+ }
147
313
  getInfrastructureLogger(name) {
148
314
  if (!name) {
149
315
  throw new TypeError("Compiler.getInfrastructureLogger(name) called without a name");
@@ -332,15 +498,34 @@ class Compiler {
332
498
  exports.Compiler = Compiler;
333
499
  _Compiler__instance = new WeakMap(), _Compiler_disabledHooks = new WeakMap(), _Compiler_instances = new WeakSet(), _Compiler_instance_get = function _Compiler_instance_get() {
334
500
  var _a;
335
- __classPrivateFieldSet(this, _Compiler__instance, (_a = __classPrivateFieldGet(this, _Compiler__instance, "f")) !== null && _a !== void 0 ? _a : new binding.Rspack((0, adapter_1.getRawOptions)(this.options, this), {
501
+ const processResource = (loaderContext, resourcePath, callback) => {
502
+ const resource = loaderContext.resource;
503
+ const scheme = (0, scheme_1.getScheme)(resource);
504
+ this.compilation
505
+ .currentNormalModuleHooks()
506
+ .readResource.for(scheme)
507
+ .callAsync(loaderContext, (err, result) => {
508
+ if (err)
509
+ return callback(err);
510
+ if (typeof result !== "string" && !result) {
511
+ return callback(new Error(`Unhandled ${scheme} resource`));
512
+ }
513
+ return callback(null, result);
514
+ });
515
+ };
516
+ const options = (0, adapter_1.getRawOptions)(this.options, this, processResource);
517
+ __classPrivateFieldSet(this, _Compiler__instance, (_a = __classPrivateFieldGet(this, _Compiler__instance, "f")) !== null && _a !== void 0 ? _a : new binding.Rspack(options, {
518
+ beforeCompile: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_beforeCompile).bind(this),
336
519
  make: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_make).bind(this),
337
520
  emit: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_emit).bind(this),
338
521
  afterEmit: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_afterEmit).bind(this),
339
522
  processAssetsStageAdditional: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_processAssets).bind(this, compilation_1.Compilation.PROCESS_ASSETS_STAGE_ADDITIONAL),
340
523
  processAssetsStagePreProcess: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_processAssets).bind(this, compilation_1.Compilation.PROCESS_ASSETS_STAGE_PRE_PROCESS),
524
+ processAssetsStageAdditions: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_processAssets).bind(this, compilation_1.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS),
341
525
  processAssetsStageNone: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_processAssets).bind(this, compilation_1.Compilation.PROCESS_ASSETS_STAGE_NONE),
342
526
  processAssetsStageOptimizeInline: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_processAssets).bind(this, compilation_1.Compilation.PROCESS_ASSETS_STAGE_OPTIMIZE_INLINE),
343
527
  processAssetsStageSummarize: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_processAssets).bind(this, compilation_1.Compilation.PROCESS_ASSETS_STAGE_SUMMARIZE),
528
+ processAssetsStageOptimizeHash: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_processAssets).bind(this, compilation_1.Compilation.PROCESS_ASSETS_STAGE_OPTIMIZE_HASH),
344
529
  processAssetsStageReport: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_processAssets).bind(this, compilation_1.Compilation.PROCESS_ASSETS_STAGE_REPORT),
345
530
  // `Compilation` should be created with hook `thisCompilation`, and here is the reason:
346
531
  // We know that the hook `thisCompilation` will not be called from a child compiler(it doesn't matter whether the child compiler is created on the Rust or the Node side).
@@ -351,15 +536,20 @@ _Compiler__instance = new WeakMap(), _Compiler_disabledHooks = new WeakMap(), _C
351
536
  // still it does not matter where the child compiler is created(Rust or Node) as calling the hook `compilation` is a required task.
352
537
  // No matter how it will be implemented, it will be copied to the child compiler.
353
538
  compilation: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_compilation).bind(this),
539
+ optimizeModules: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_optimize_modules).bind(this),
354
540
  optimizeChunkModule: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_optimize_chunk_modules).bind(this),
355
541
  finishModules: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_finish_modules).bind(this),
356
- normalModuleFactoryResolveForScheme: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_normalModuleFactoryResolveForScheme).bind(this)
357
- }, (0, fileSystem_1.createThreadsafeNodeFSFromRaw)(this.outputFileSystem)), "f");
542
+ normalModuleFactoryResolveForScheme: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_normalModuleFactoryResolveForScheme).bind(this),
543
+ chunkAsset: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_chunkAsset).bind(this),
544
+ beforeResolve: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_beforeResolve).bind(this),
545
+ contextModuleBeforeResolve: __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_contextModuleBeforeResolve).bind(this)
546
+ }, (0, fileSystem_1.createThreadsafeNodeFSFromRaw)(this.outputFileSystem), loaderContext => (0, loader_runner_1.runLoader)(loaderContext, this)), "f");
358
547
  return __classPrivateFieldGet(this, _Compiler__instance, "f");
359
548
  }, _Compiler_updateDisabledHooks = function _Compiler_updateDisabledHooks() {
360
549
  const disabledHooks = [];
361
550
  const hookMap = {
362
551
  make: this.hooks.make,
552
+ beforeCompile: this.hooks.beforeCompile,
363
553
  emit: this.hooks.emit,
364
554
  afterEmit: this.hooks.afterEmit,
365
555
  processAssetsStageAdditional: this.compilation.__internal_getProcessAssetsHookByStage(compilation_1.Compilation.PROCESS_ASSETS_STAGE_ADDITIONAL),
@@ -370,8 +560,8 @@ _Compiler__instance = new WeakMap(), _Compiler_disabledHooks = new WeakMap(), _C
370
560
  processAssetsStageReport: this.compilation.__internal_getProcessAssetsHookByStage(compilation_1.Compilation.PROCESS_ASSETS_STAGE_REPORT),
371
561
  compilation: this.hooks.compilation,
372
562
  optimizeChunkModules: this.compilation.hooks.optimizeChunkModules,
373
- finishModules: this.compilation.hooks.finishModules
374
- // normalModuleFactoryResolveForScheme: this.#
563
+ finishModules: this.compilation.hooks.finishModules,
564
+ optimizeModules: this.compilation.hooks.optimizeModules
375
565
  };
376
566
  for (const [name, hook] of Object.entries(hookMap)) {
377
567
  if (hook.taps.length === 0) {
@@ -383,11 +573,28 @@ _Compiler__instance = new WeakMap(), _Compiler_disabledHooks = new WeakMap(), _C
383
573
  __classPrivateFieldGet(this, _Compiler_instances, "a", _Compiler_instance_get).unsafe_set_disabled_hooks(disabledHooks);
384
574
  __classPrivateFieldSet(this, _Compiler_disabledHooks, disabledHooks, "f");
385
575
  }
576
+ }, _Compiler_beforeCompile = async function _Compiler_beforeCompile() {
577
+ await this.hooks.beforeCompile.promise();
578
+ // compilation is not created yet, so this will fail
579
+ // this.#updateDisabledHooks();
580
+ }, _Compiler_finishModules = async function _Compiler_finishModules() {
581
+ await this.compilation.hooks.finishModules.promise(this.compilation.getModules());
582
+ __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_updateDisabledHooks).call(this);
386
583
  }, _Compiler_processAssets = async function _Compiler_processAssets(stage) {
387
584
  await this.compilation
388
585
  .__internal_getProcessAssetsHookByStage(stage)
389
586
  .promise(this.compilation.assets);
390
587
  __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_updateDisabledHooks).call(this);
588
+ }, _Compiler_beforeResolve = async function _Compiler_beforeResolve(resourceData) {
589
+ var _a;
590
+ let res = await ((_a = this.compilation.normalModuleFactory) === null || _a === void 0 ? void 0 : _a.hooks.beforeResolve.promise(resourceData));
591
+ __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_updateDisabledHooks).call(this);
592
+ return res;
593
+ }, _Compiler_contextModuleBeforeResolve = async function _Compiler_contextModuleBeforeResolve(resourceData) {
594
+ var _a;
595
+ let res = await ((_a = this.compilation.contextModuleFactory) === null || _a === void 0 ? void 0 : _a.hooks.beforeResolve.promise(resourceData));
596
+ __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_updateDisabledHooks).call(this);
597
+ return res;
391
598
  }, _Compiler_normalModuleFactoryResolveForScheme = async function _Compiler_normalModuleFactoryResolveForScheme(resourceData) {
392
599
  var _a;
393
600
  await ((_a = this.compilation.normalModuleFactory) === null || _a === void 0 ? void 0 : _a.hooks.resolveForScheme.for(resourceData.scheme).promise(resourceData.resourceData));
@@ -395,6 +602,12 @@ _Compiler__instance = new WeakMap(), _Compiler_disabledHooks = new WeakMap(), _C
395
602
  }, _Compiler_optimize_chunk_modules = async function _Compiler_optimize_chunk_modules() {
396
603
  await this.compilation.hooks.optimizeChunkModules.promise(this.compilation.getChunks(), this.compilation.getModules());
397
604
  __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_updateDisabledHooks).call(this);
605
+ }, _Compiler_optimize_modules = async function _Compiler_optimize_modules() {
606
+ await this.compilation.hooks.optimizeModules.promise(this.compilation.getModules());
607
+ __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_updateDisabledHooks).call(this);
608
+ }, _Compiler_chunkAsset = function _Compiler_chunkAsset(assetArg) {
609
+ this.compilation.hooks.chunkAsset.call(assetArg.chunk, assetArg.filename);
610
+ __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_updateDisabledHooks).call(this);
398
611
  }, _Compiler_finish_modules = async function _Compiler_finish_modules() {
399
612
  await this.compilation.hooks.finishModules.promise(this.compilation.getModules());
400
613
  __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_updateDisabledHooks).call(this);
@@ -409,7 +622,9 @@ _Compiler__instance = new WeakMap(), _Compiler_disabledHooks = new WeakMap(), _C
409
622
  __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_updateDisabledHooks).call(this);
410
623
  }, _Compiler_compilation = function _Compiler_compilation(native) {
411
624
  // TODO: implement this based on the child compiler impl.
412
- this.hooks.compilation.call(this.compilation);
625
+ this.hooks.compilation.call(this.compilation, {
626
+ normalModuleFactory: this.compilation.normalModuleFactory
627
+ });
413
628
  __classPrivateFieldGet(this, _Compiler_instances, "m", _Compiler_updateDisabledHooks).call(this);
414
629
  }, _Compiler_newCompilation = function _Compiler_newCompilation(native) {
415
630
  const compilation = new compilation_1.Compilation(this, native);
@@ -417,7 +632,11 @@ _Compiler__instance = new WeakMap(), _Compiler_disabledHooks = new WeakMap(), _C
417
632
  this.compilation = compilation;
418
633
  // reset normalModuleFactory when create new compilation
419
634
  let normalModuleFactory = new normalModuleFactory_1.NormalModuleFactory();
635
+ let contextModuleFactory = new ContextModuleFactory_1.ContextModuleFactory();
420
636
  this.compilation.normalModuleFactory = normalModuleFactory;
637
+ this.hooks.normalModuleFactory.call(normalModuleFactory);
638
+ this.compilation.contextModuleFactory = contextModuleFactory;
639
+ this.hooks.contextModuleFactory.call(normalModuleFactory);
421
640
  this.hooks.thisCompilation.call(this.compilation, {
422
641
  normalModuleFactory: normalModuleFactory
423
642
  });
@@ -1 +1 @@
1
- {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../src/compiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../src/compiler.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="node" />
2
- import { JsAssetInfo, JsLoaderContext, RawModuleRuleUse, RawOptions } from "@rspack/binding";
2
+ import { JsAssetInfo, RawModuleRuleUse, RawOptions } from "@rspack/binding";
3
3
  import { ResolveRequest } from "enhanced-resolve";
4
4
  import { Compiler } from "../compiler";
5
5
  import { Logger } from "../logging/Logger";
@@ -22,18 +22,59 @@ export interface SourceMap {
22
22
  export interface AdditionalData {
23
23
  [index: string]: any;
24
24
  }
25
- export interface LoaderContext extends Pick<JsLoaderContext, "resource" | "resourcePath" | "resourceQuery" | "resourceFragment"> {
25
+ export interface LoaderObject {
26
+ request: string;
27
+ path: string;
28
+ query: string;
29
+ fragment: string;
30
+ options: object | string | undefined;
31
+ ident: string;
32
+ normal: Function | undefined;
33
+ pitch: Function | undefined;
34
+ raw: boolean | undefined;
35
+ data: object | undefined;
36
+ pitchExecuted: boolean;
37
+ normalExecuted: boolean;
38
+ }
39
+ export interface LoaderContext<OptionsType = {}> {
26
40
  version: 2;
27
- async(): (err: Error | null, content: string | Buffer, sourceMap?: string | SourceMap, additionalData?: AdditionalData) => void;
28
- callback(err: Error | null, content: string | Buffer, sourceMap?: string | SourceMap, additionalData?: AdditionalData): void;
41
+ resource: string;
42
+ resourcePath: string;
43
+ resourceQuery: string;
44
+ resourceFragment: string;
45
+ async(): (err?: Error | null, content?: string | Buffer, sourceMap?: string | SourceMap, additionalData?: AdditionalData) => void;
46
+ callback(err?: Error | null, content?: string | Buffer, sourceMap?: string | SourceMap, additionalData?: AdditionalData): void;
29
47
  cacheable(cacheable?: boolean): void;
30
48
  sourceMap: boolean;
31
49
  rootContext: string;
32
50
  context: string;
33
51
  loaderIndex: number;
52
+ remainingRequest: string;
53
+ currentRequest: string;
54
+ previousRequest: string;
55
+ request: string;
56
+ /**
57
+ * An array of all the loaders. It is writeable in the pitch phase.
58
+ * loaders = [{request: string, path: string, query: string, module: function}]
59
+ *
60
+ * In the example:
61
+ * [
62
+ * { request: "/abc/loader1.js?xyz",
63
+ * path: "/abc/loader1.js",
64
+ * query: "?xyz",
65
+ * module: [Function]
66
+ * },
67
+ * { request: "/abc/node_modules/loader2/index.js",
68
+ * path: "/abc/node_modules/loader2/index.js",
69
+ * query: "",
70
+ * module: [Function]
71
+ * }
72
+ * ]
73
+ */
74
+ loaders: LoaderObject[];
34
75
  mode?: Mode;
35
76
  hot?: boolean;
36
- getOptions(schema?: any): unknown;
77
+ getOptions(schema?: any): OptionsType;
37
78
  resolve(context: string, request: string, callback: (arg0: null | Error, arg1?: string | false, arg2?: ResolveRequest) => void): void;
38
79
  getResolve(options: Resolve): (context: any, request: any, callback: any) => Promise<any>;
39
80
  getLogger(name: string): Logger;
@@ -55,10 +96,17 @@ export interface LoaderContext extends Pick<JsLoaderContext, "resource" | "resou
55
96
  contextify: (context: string, request: string) => string;
56
97
  createHash: (algorithm?: string) => Hash;
57
98
  };
58
- query: unknown;
99
+ query: string | OptionsType;
59
100
  data: unknown;
60
101
  _compiler: Compiler;
61
102
  _compilation: Compiler["compilation"];
103
+ /**
104
+ * Internal field for interoperability.
105
+ * Do not use this in anywhere else.
106
+ *
107
+ * @internal
108
+ */
109
+ __internal__isPitching: boolean;
62
110
  }
63
111
  export interface LoaderResult {
64
112
  cacheable: boolean;
@@ -70,6 +118,16 @@ export interface LoaderResult {
70
118
  missingDependencies: string[];
71
119
  buildDependencies: string[];
72
120
  }
121
+ export interface LoaderDefinitionFunction<OptionsType = {}, ContextAdditions = {}> {
122
+ (this: LoaderContext<OptionsType> & ContextAdditions, content: string, sourceMap?: string | SourceMap, additionalData?: AdditionalData): string | void | Buffer | Promise<string | Buffer>;
123
+ }
124
+ export interface PitchLoaderDefinitionFunction<OptionsType = {}, ContextAdditions = {}> {
125
+ (this: LoaderContext<OptionsType> & ContextAdditions, remainingRequest: string, previousRequest: string, data: object): string | void | Buffer | Promise<string | Buffer>;
126
+ }
127
+ export type LoaderDefinition<OptionsType = {}, ContextAdditions = {}> = LoaderDefinitionFunction<OptionsType, ContextAdditions> & {
128
+ raw?: false;
129
+ pitch?: PitchLoaderDefinitionFunction;
130
+ };
73
131
  export declare function createRawModuleRuleUses(uses: RuleSetUse, options: ComposeJsUseOptions): RawModuleRuleUse[];
74
132
  export declare function isUseSourceMap(devtool: RawOptions["devtool"]): boolean;
75
133
  export declare function isUseSimpleSourceMap(devtool: RawOptions["devtool"]): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-rule-use.d.ts","sourceRoot":"","sources":["../../src/config/adapter-rule-use.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter-rule-use.d.ts","sourceRoot":"","sources":["../../src/config/adapter-rule-use.ts"],"names":[],"mappings":"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"}