@rspack-debug/core 2.0.0-canary.20260120 → 2.0.0-rc.2

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 (95) hide show
  1. package/README.md +1 -1
  2. package/compiled/@rspack/lite-tapable/dist/index.d.ts +175 -0
  3. package/compiled/@rspack/lite-tapable/license +22 -0
  4. package/compiled/@rspack/lite-tapable/package.json +1 -0
  5. package/compiled/@swc/types/index.d.ts +15 -9
  6. package/compiled/@swc/types/package.json +1 -1
  7. package/compiled/connect-next/index.d.ts +56 -0
  8. package/compiled/connect-next/license +26 -0
  9. package/compiled/connect-next/package.json +1 -0
  10. package/compiled/http-proxy-middleware/index.d.ts +544 -0
  11. package/compiled/http-proxy-middleware/license +22 -0
  12. package/compiled/http-proxy-middleware/package.json +1 -0
  13. package/compiled/open/index.d.ts +161 -0
  14. package/compiled/open/package.json +1 -0
  15. package/compiled/watchpack/index.d.ts +2 -0
  16. package/compiled/webpack-sources/index.js +188 -131
  17. package/compiled/webpack-sources/package.json +1 -1
  18. package/compiled/webpack-sources/types.d.ts +6 -3
  19. package/dist/BuildInfo.d.ts +1 -1
  20. package/dist/Compilation.d.ts +5 -2
  21. package/dist/Compiler.d.ts +4 -3
  22. package/dist/ContextModuleFactory.d.ts +1 -1
  23. package/dist/FileSystem.d.ts +1 -1
  24. package/dist/Module.d.ts +1 -1
  25. package/dist/ModuleGraph.d.ts +3 -1
  26. package/dist/ModuleGraphConnection.d.ts +10 -0
  27. package/dist/MultiCompiler.d.ts +1 -1
  28. package/dist/MultiWatching.d.ts +1 -1
  29. package/dist/NativeWatchFileSystem.d.ts +1 -1
  30. package/dist/NormalModule.d.ts +1 -2
  31. package/dist/NormalModuleFactory.d.ts +1 -1
  32. package/dist/RuntimeGlobals.d.ts +1 -1
  33. package/dist/Watching.d.ts +1 -1
  34. package/dist/builtin-loader/swc/pluginImport.d.ts +1 -1
  35. package/dist/builtin-loader/swc/types.d.ts +37 -2
  36. package/dist/builtin-plugin/EsmLibraryPlugin.d.ts +4 -2
  37. package/dist/builtin-plugin/EsmNodeTargetPlugin.d.ts +9 -0
  38. package/dist/builtin-plugin/HashedModuleIdsPlugin.d.ts +10 -0
  39. package/dist/builtin-plugin/JavascriptModulesPlugin.d.ts +1 -1
  40. package/dist/builtin-plugin/ProgressPlugin.d.ts +5 -4
  41. package/dist/builtin-plugin/RsdoctorPlugin.d.ts +3 -3
  42. package/dist/builtin-plugin/RuntimePlugin.d.ts +1 -1
  43. package/dist/builtin-plugin/SideEffectsFlagPlugin.d.ts +9 -9
  44. package/dist/builtin-plugin/SplitChunksPlugin.d.ts +2 -1
  45. package/dist/builtin-plugin/WorkerPlugin.d.ts +1 -0
  46. package/dist/builtin-plugin/html-plugin/hooks.d.ts +1 -1
  47. package/dist/builtin-plugin/index.d.ts +3 -0
  48. package/dist/builtin-plugin/lazy-compilation/middleware.d.ts +3 -3
  49. package/dist/builtin-plugin/rsc/Coordinator.d.ts +8 -0
  50. package/dist/builtin-plugin/rsc/RscClientPlugin.d.ts +13 -0
  51. package/dist/builtin-plugin/rsc/RscServerPlugin.d.ts +39 -0
  52. package/dist/builtin-plugin/rsc/index.d.ts +24 -0
  53. package/dist/checkNodeVersion.d.ts +1 -0
  54. package/dist/config/adapterRuleUse.d.ts +1 -1
  55. package/dist/config/devServer.d.ts +102 -237
  56. package/dist/config/normalization.d.ts +4 -4
  57. package/dist/config/types.d.ts +184 -71
  58. package/dist/container/ContainerPlugin.d.ts +3 -2
  59. package/dist/container/ContainerReferencePlugin.d.ts +4 -3
  60. package/dist/container/ModuleFederationManifestPlugin.d.ts +10 -3
  61. package/dist/container/ModuleFederationPlugin.d.ts +20 -1
  62. package/dist/container/ModuleFederationPluginV1.d.ts +2 -2
  63. package/dist/container/ModuleFederationRuntimePlugin.d.ts +4 -0
  64. package/dist/exports.d.ts +17 -8
  65. package/dist/index.d.ts +1 -0
  66. package/dist/index.js +1751 -636
  67. package/dist/lib/Cache.d.ts +1 -1
  68. package/dist/lib/HookWebpackError.d.ts +1 -1
  69. package/dist/moduleFederationDefaultRuntime.js +1 -1
  70. package/dist/node/NodeWatchFileSystem.d.ts +1 -1
  71. package/dist/rspack.d.ts +1 -1
  72. package/dist/sharing/CollectSharedEntryPlugin.d.ts +22 -0
  73. package/dist/sharing/ConsumeSharedPlugin.d.ts +16 -3
  74. package/dist/sharing/IndependentSharedPlugin.d.ts +35 -0
  75. package/dist/sharing/ProvideSharedPlugin.d.ts +22 -2
  76. package/dist/sharing/SharePlugin.d.ts +43 -5
  77. package/dist/sharing/SharedContainerPlugin.d.ts +23 -0
  78. package/dist/sharing/SharedUsedExportsOptimizerPlugin.d.ts +14 -0
  79. package/dist/sharing/TreeShakingSharedPlugin.d.ts +16 -0
  80. package/dist/sharing/utils.d.ts +1 -0
  81. package/dist/stats/StatsFactory.d.ts +1 -1
  82. package/dist/stats/StatsPrinter.d.ts +1 -1
  83. package/dist/swc.d.ts +2 -2
  84. package/dist/taps/types.d.ts +1 -1
  85. package/dist/util/createHash.d.ts +1 -1
  86. package/dist/util/source.d.ts +1 -1
  87. package/dist/util/supportsColor.d.ts +6 -0
  88. package/dist/worker.js +21 -20
  89. package/hot/dev-server.js +1 -1
  90. package/hot/emitter.js +0 -2
  91. package/hot/log.js +0 -2
  92. package/hot/only-dev-server.js +1 -1
  93. package/module.d.ts +4 -2
  94. package/package.json +20 -22
  95. package/dist/rslib-runtime.js +0 -29
@@ -1 +1 @@
1
- {"name":"webpack-sources","author":"Tobias Koppers @sokra","version":"3.3.3","license":"MIT","types":"types.d.ts","type":"commonjs"}
1
+ {"name":"webpack-sources","author":"Tobias Koppers @sokra","version":"3.3.4","license":"MIT","types":"types.d.ts","type":"commonjs"}
@@ -371,7 +371,7 @@ declare class SourceMapSource extends Source {
371
371
  name: string,
372
372
  sourceMap?: string | RawSourceMap | Buffer,
373
373
  originalSource?: string | Buffer,
374
- innerSourceMap?: string | RawSourceMap | Buffer,
374
+ innerSourceMap?: null | string | RawSourceMap | Buffer,
375
375
  removeOriginalSource?: boolean,
376
376
  );
377
377
  getArgsAsBuffers(): [
@@ -407,14 +407,15 @@ declare interface StreamChunksOptions {
407
407
  finalSource?: boolean;
408
408
  columns?: boolean;
409
409
  }
410
+
410
411
  export namespace util {
411
412
  export namespace stringBufferUtils {
412
413
  export let disableDualStringBufferCaching: () => void;
413
414
  export let enableDualStringBufferCaching: () => void;
414
- export let internString: (str: string) => string;
415
- export let isDualStringBufferCachingEnabled: () => boolean;
416
415
  export let enterStringInterningRange: () => void;
417
416
  export let exitStringInterningRange: () => void;
417
+ export let internString: (str: string) => string;
418
+ export let isDualStringBufferCachingEnabled: () => boolean;
418
419
  }
419
420
  }
420
421
  export type OnChunk = (
@@ -456,3 +457,5 @@ declare interface StreamChunksOptions {
456
457
  StreamChunksOptions,
457
458
  };
458
459
 
460
+
461
+
@@ -1,5 +1,5 @@
1
1
  import binding from '@rspack/binding';
2
- import type { Source } from '../compiled/webpack-sources';
2
+ import type { Source } from '../compiled/webpack-sources/types.js';
3
3
  declare const $assets: unique symbol;
4
4
  declare module '@rspack/binding' {
5
5
  interface Assets {
@@ -10,8 +10,8 @@
10
10
  import type { AssetInfo, ChunkGroup, Dependency, ExternalObject, JsCompilation } from '@rspack/binding';
11
11
  import binding from '@rspack/binding';
12
12
  export type { AssetInfo } from '@rspack/binding';
13
- import * as liteTapable from '@rspack/lite-tapable';
14
- import type { Source } from '../compiled/webpack-sources';
13
+ import * as liteTapable from '../compiled/@rspack/lite-tapable/dist/index.js';
14
+ import type { Source } from '../compiled/webpack-sources/types.js';
15
15
  import type { EntryOptions, EntryPlugin } from './builtin-plugin/index.js';
16
16
  import type { Chunk } from './Chunk.js';
17
17
  import type { ChunkGraph } from './ChunkGraph.js';
@@ -162,6 +162,7 @@ export declare class Compilation {
162
162
  Iterable<Chunk>,
163
163
  Iterable<Module>
164
164
  ], void>;
165
+ beforeModuleIds: liteTapable.SyncHook<[Iterable<Module>]>;
165
166
  finishModules: liteTapable.AsyncSeriesHook<[Iterable<Module>], void>;
166
167
  chunkHash: liteTapable.SyncHook<[Chunk, Hash]>;
167
168
  chunkAsset: liteTapable.SyncHook<[Chunk, string]>;
@@ -432,6 +433,8 @@ export declare class Entries implements Map<string, EntryData> {
432
433
  has(key: string): boolean;
433
434
  set(key: string, value: EntryData): this;
434
435
  delete(key: string): boolean;
436
+ getOrInsert(key: string, defaultValue: EntryData): EntryData;
437
+ getOrInsertComputed(key: string, callback: (key: string) => EntryData): EntryData;
435
438
  get(key: string): EntryData | undefined;
436
439
  keys(): ReturnType<Map<string, EntryData>['keys']>;
437
440
  }
@@ -8,9 +8,9 @@
8
8
  * https://github.com/webpack/webpack/blob/main/LICENSE
9
9
  */
10
10
  import type binding from '@rspack/binding';
11
- import * as liteTapable from '@rspack/lite-tapable';
12
- import type Watchpack from '../compiled/watchpack';
13
- import type { Source } from '../compiled/webpack-sources';
11
+ import * as liteTapable from '../compiled/@rspack/lite-tapable/dist/index.js';
12
+ import type Watchpack from '../compiled/watchpack/index.js';
13
+ import type { Source } from '../compiled/webpack-sources/types.js';
14
14
  import type { Chunk } from './Chunk.js';
15
15
  import type { CompilationParams } from './Compilation.js';
16
16
  import { Compilation } from './Compilation.js';
@@ -79,6 +79,7 @@ export type CompilerHooks = {
79
79
  entryOption: liteTapable.SyncBailHook<[string, EntryNormalized], any>;
80
80
  additionalPass: liteTapable.AsyncSeriesHook<[]>;
81
81
  };
82
+ export declare const GET_COMPILER_ID: unique symbol;
82
83
  declare class Compiler {
83
84
  #private;
84
85
  hooks: CompilerHooks;
@@ -1,4 +1,4 @@
1
- import * as liteTapable from '@rspack/lite-tapable';
1
+ import * as liteTapable from '../compiled/@rspack/lite-tapable/dist/index.js';
2
2
  import type { ContextModuleFactoryAfterResolveResult, ContextModuleFactoryBeforeResolveResult } from './Module.js';
3
3
  export declare class ContextModuleFactory {
4
4
  hooks: {
@@ -51,4 +51,4 @@ declare class ThreadsafeIntermediateNodeFS extends ThreadsafeOutputNodeFS {
51
51
  constructor(fs?: IntermediateFileSystem);
52
52
  static __to_binding(fs?: IntermediateFileSystem): ThreadsafeIntermediateNodeFS;
53
53
  }
54
- export { ThreadsafeInputNodeFS, ThreadsafeOutputNodeFS, ThreadsafeIntermediateNodeFS, };
54
+ export { ThreadsafeInputNodeFS, ThreadsafeIntermediateNodeFS, ThreadsafeOutputNodeFS, };
package/dist/Module.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import binding, { type AssetInfo } from '@rspack/binding';
2
- import type { Source } from '../compiled/webpack-sources';
2
+ import type { Source } from '../compiled/webpack-sources/types.js';
3
3
  import type { ResourceData } from './Resolver.js';
4
4
  import './BuildInfo.js';
5
5
  export type ResourceDataWithData = ResourceData & {
@@ -1,5 +1,6 @@
1
- import type { Dependency, JsModuleGraph, ModuleGraphConnection } from '@rspack/binding';
1
+ import type { Dependency, JsModuleGraph } from '@rspack/binding';
2
2
  import { ExportsInfo } from './ExportsInfo.js';
3
+ import type { ModuleGraphConnection } from './ModuleGraphConnection.js';
3
4
  import type { Module } from './Module.js';
4
5
  export default class ModuleGraph {
5
6
  #private;
@@ -7,6 +8,7 @@ export default class ModuleGraph {
7
8
  constructor(binding: JsModuleGraph);
8
9
  getModule(dependency: Dependency): Module | null;
9
10
  getResolvedModule(dependency: Dependency): Module | null;
11
+ getUsedExports(module: Module, runtime: string | string[]): string[] | boolean | null;
10
12
  getParentModule(dependency: Dependency): Module | null;
11
13
  getIssuer(module: Module): Module | null;
12
14
  getExportsInfo(module: Module): ExportsInfo;
@@ -0,0 +1,10 @@
1
+ import binding, { ModuleGraphConnection as BindingModuleGraphConnection } from '@rspack/binding';
2
+ type ModuleGraphConnectionConstructor = typeof BindingModuleGraphConnection & {
3
+ readonly TRANSITIVE_ONLY: typeof binding.TRANSITIVE_ONLY_SYMBOL;
4
+ readonly CIRCULAR_CONNECTION: typeof binding.CIRCULAR_CONNECTION_SYMBOL;
5
+ };
6
+ export interface ModuleGraphConnection extends BindingModuleGraphConnection {
7
+ }
8
+ export declare const ModuleGraphConnection: ModuleGraphConnectionConstructor;
9
+ export type ConnectionState = boolean | typeof ModuleGraphConnection.TRANSITIVE_ONLY | typeof ModuleGraphConnection.CIRCULAR_CONNECTION;
10
+ export {};
@@ -7,7 +7,7 @@
7
7
  * Copyright (c) JS Foundation and other contributors
8
8
  * https://github.com/webpack/webpack/blob/main/LICENSE
9
9
  */
10
- import * as liteTapable from '@rspack/lite-tapable';
10
+ import * as liteTapable from '../compiled/@rspack/lite-tapable/dist/index.js';
11
11
  import type { CompilationParams, Compiler, CompilerHooks, RspackOptions } from './index.js';
12
12
  import type { WatchOptions } from './config/index.js';
13
13
  import MultiStats from './MultiStats.js';
@@ -7,7 +7,7 @@
7
7
  * Copyright (c) JS Foundation and other contributors
8
8
  * https://github.com/webpack/webpack/blob/main/LICENSE
9
9
  */
10
- import type { Callback } from '@rspack/lite-tapable';
10
+ import type { Callback } from '../compiled/@rspack/lite-tapable/dist/index.js';
11
11
  import type { MultiCompiler } from './MultiCompiler.js';
12
12
  import type { Watching } from './Watching.js';
13
13
  declare class MultiWatching {
@@ -1,5 +1,5 @@
1
1
  import binding from '@rspack/binding';
2
- import type Watchpack from '../compiled/watchpack';
2
+ import type Watchpack from '../compiled/watchpack/index.js';
3
3
  import type { FileSystemInfoEntry, InputFileSystem, Watcher, WatchFileSystem } from './util/fs.js';
4
4
  export default class NativeWatchFileSystem implements WatchFileSystem {
5
5
  #private;
@@ -1,10 +1,9 @@
1
- import * as liteTapable from '@rspack/lite-tapable';
1
+ import * as liteTapable from '../compiled/@rspack/lite-tapable/dist/index.js';
2
2
  import type { Compilation } from './Compilation.js';
3
3
  import type { LoaderContext } from './config/index.js';
4
4
  import type { Module } from './Module.js';
5
5
  export interface NormalModuleCompilationHooks {
6
6
  loader: liteTapable.SyncHook<[LoaderContext, Module]>;
7
- readResourceForScheme: any;
8
7
  readResource: liteTapable.HookMap<liteTapable.AsyncSeriesBailHook<[LoaderContext], string | Buffer>>;
9
8
  }
10
9
  declare module '@rspack/binding' {
@@ -1,5 +1,5 @@
1
1
  import type binding from '@rspack/binding';
2
- import * as liteTapable from '@rspack/lite-tapable';
2
+ import * as liteTapable from '../compiled/@rspack/lite-tapable/dist/index.js';
3
3
  import type { ResolveData, ResourceDataWithData } from './Module.js';
4
4
  import type { ResolveOptionsWithDependencyType, ResolverFactory } from './ResolverFactory.js';
5
5
  export type NormalModuleCreateData = binding.JsNormalModuleFactoryCreateModuleArgs & {
@@ -352,5 +352,5 @@ export declare enum RuntimeVariable {
352
352
  }
353
353
  export declare function renderRuntimeVariables(variable: RuntimeVariable, _compilerOptions?: RspackOptionsNormalized): string;
354
354
  export declare function createCompilerRuntimeGlobals(compilerOptions?: RspackOptionsNormalized): Record<keyof typeof RuntimeGlobals, string>;
355
- declare const DefaultRuntimeGlobals: Record<"publicPath" | "chunkName" | "moduleId" | "module" | "require" | "global" | "system" | "exports" | "requireScope" | "thisAsExports" | "returnExportsFromRuntime" | "moduleLoaded" | "entryModuleId" | "moduleCache" | "moduleFactories" | "moduleFactoriesAddOnly" | "ensureChunk" | "ensureChunkHandlers" | "ensureChunkIncludeEntries" | "prefetchChunk" | "prefetchChunkHandlers" | "preloadChunk" | "preloadChunkHandlers" | "definePropertyGetters" | "makeNamespaceObject" | "createFakeNamespaceObject" | "compatGetDefaultExport" | "harmonyModuleDecorator" | "nodeModuleDecorator" | "getFullHash" | "wasmInstances" | "instantiateWasm" | "uncaughtErrorHandler" | "scriptNonce" | "loadScript" | "createScript" | "createScriptUrl" | "getTrustedTypesPolicy" | "hasFetchPriority" | "runtimeId" | "getChunkScriptFilename" | "getChunkCssFilename" | "rspackVersion" | "hasCssModules" | "rspackUniqueId" | "getChunkUpdateScriptFilename" | "getChunkUpdateCssFilename" | "startup" | "startupNoDefault" | "startupOnlyAfter" | "startupOnlyBefore" | "chunkCallback" | "startupEntrypoint" | "startupChunkDependencies" | "onChunksLoaded" | "externalInstallChunk" | "interceptModuleExecution" | "shareScopeMap" | "initializeSharing" | "currentRemoteGetScope" | "getUpdateManifestFilename" | "hmrDownloadManifest" | "hmrDownloadUpdateHandlers" | "hmrModuleData" | "hmrInvalidateModuleHandlers" | "hmrRuntimeStatePrefix" | "amdDefine" | "amdOptions" | "hasOwnProperty" | "systemContext" | "baseURI" | "relativeUrl" | "asyncModule" | "asyncModuleExportSymbol" | "makeDeferredNamespaceObject" | "makeDeferredNamespaceObjectSymbol", string>;
355
+ declare const DefaultRuntimeGlobals: Record<"module" | "publicPath" | "chunkName" | "moduleId" | "exports" | "require" | "global" | "system" | "requireScope" | "thisAsExports" | "returnExportsFromRuntime" | "moduleLoaded" | "entryModuleId" | "moduleCache" | "moduleFactories" | "moduleFactoriesAddOnly" | "ensureChunk" | "ensureChunkHandlers" | "ensureChunkIncludeEntries" | "prefetchChunk" | "prefetchChunkHandlers" | "preloadChunk" | "preloadChunkHandlers" | "definePropertyGetters" | "makeNamespaceObject" | "createFakeNamespaceObject" | "compatGetDefaultExport" | "harmonyModuleDecorator" | "nodeModuleDecorator" | "getFullHash" | "wasmInstances" | "instantiateWasm" | "uncaughtErrorHandler" | "scriptNonce" | "loadScript" | "createScript" | "createScriptUrl" | "getTrustedTypesPolicy" | "hasFetchPriority" | "runtimeId" | "getChunkScriptFilename" | "getChunkCssFilename" | "rspackVersion" | "hasCssModules" | "rspackUniqueId" | "getChunkUpdateScriptFilename" | "getChunkUpdateCssFilename" | "startup" | "startupNoDefault" | "startupOnlyAfter" | "startupOnlyBefore" | "chunkCallback" | "startupEntrypoint" | "startupChunkDependencies" | "onChunksLoaded" | "externalInstallChunk" | "interceptModuleExecution" | "shareScopeMap" | "initializeSharing" | "currentRemoteGetScope" | "getUpdateManifestFilename" | "hmrDownloadManifest" | "hmrDownloadUpdateHandlers" | "hmrModuleData" | "hmrInvalidateModuleHandlers" | "hmrRuntimeStatePrefix" | "amdDefine" | "amdOptions" | "hasOwnProperty" | "systemContext" | "baseURI" | "relativeUrl" | "asyncModule" | "asyncModuleExportSymbol" | "makeDeferredNamespaceObject" | "makeDeferredNamespaceObjectSymbol", string>;
356
356
  export { DefaultRuntimeGlobals as RuntimeGlobals };
@@ -7,7 +7,7 @@
7
7
  * Copyright (c) JS Foundation and other contributors
8
8
  * https://github.com/webpack/webpack/blob/main/LICENSE
9
9
  */
10
- import type { Callback } from '@rspack/lite-tapable';
10
+ import type { Callback } from '../compiled/@rspack/lite-tapable/dist/index.js';
11
11
  import type { Compiler } from './index.js';
12
12
  import { Stats } from './index.js';
13
13
  import type { WatchOptions } from './config/index.js';
@@ -29,5 +29,5 @@ type PluginImportConfig = {
29
29
  };
30
30
  type PluginImportOptions = PluginImportConfig[];
31
31
  declare function resolvePluginImport(pluginImport: PluginImportOptions): RawPluginImportConfig[] | undefined;
32
- export { resolvePluginImport };
33
32
  export type { PluginImportOptions };
33
+ export { resolvePluginImport };
@@ -1,4 +1,4 @@
1
- import type { Config, EnvConfig, EsParserConfig, JscConfig, ModuleConfig, ParserConfig, TerserEcmaVersion, TransformConfig, TsParserConfig } from '../../../compiled/@swc/types';
1
+ import type { Config, EnvConfig, EsParserConfig, JscConfig, ModuleConfig, ParserConfig, TerserEcmaVersion, TransformConfig, TsParserConfig } from '../../../compiled/@swc/types/index.js';
2
2
  import type { CollectTypeScriptInfoOptions } from './collectTypeScriptInfo.js';
3
3
  import type { PluginImportOptions } from './pluginImport.js';
4
4
  export type SwcLoaderEnvConfig = EnvConfig;
@@ -8,21 +8,55 @@ export type SwcLoaderParserConfig = ParserConfig;
8
8
  export type SwcLoaderEsParserConfig = EsParserConfig;
9
9
  export type SwcLoaderTsParserConfig = TsParserConfig;
10
10
  export type SwcLoaderTransformConfig = TransformConfig;
11
- export type SwcLoaderOptions = Config & {
11
+ type SwcLoaderCommonOptions = Omit<Config, 'jsc'> & {
12
12
  isModule?: boolean | 'unknown';
13
13
  /**
14
14
  * Collects information from TypeScript's AST for consumption by subsequent Rspack processes,
15
15
  * providing better TypeScript development experience and smaller output bundle size.
16
16
  */
17
17
  collectTypeScriptInfo?: CollectTypeScriptInfoOptions;
18
+ /**
19
+ * Ported from [babel-plugin-import](https://github.com/umijs/babel-plugin-import),
20
+ * used to transform imports for modular component libraries.
21
+ */
22
+ transformImport?: PluginImportOptions;
18
23
  /**
19
24
  * Experimental features provided by Rspack.
20
25
  * @experimental
21
26
  */
22
27
  rspackExperiments?: {
28
+ /**
29
+ * @deprecated Use top-level `transformImport` instead.
30
+ */
23
31
  import?: PluginImportOptions;
32
+ /**
33
+ * Enable React Server Components support.
34
+ */
35
+ reactServerComponents?: boolean | ReactServerComponentsOptions;
24
36
  };
25
37
  };
38
+ export type SwcLoaderOptions = (SwcLoaderCommonOptions & {
39
+ /**
40
+ * When set to `"auto"`, `builtin:swc-loader` infers `jsc.parser` from the resource extension.
41
+ * This is useful when one rule needs to handle mixed module types such as `.js`, `.jsx`, `.ts`, and `.tsx`.
42
+ * @default false
43
+ */
44
+ detectSyntax?: false;
45
+ jsc?: JscConfig;
46
+ }) | (SwcLoaderCommonOptions & {
47
+ detectSyntax: 'auto';
48
+ jsc?: Omit<JscConfig, 'parser'> & {
49
+ parser?: Partial<ParserConfig>;
50
+ };
51
+ });
52
+ export interface ReactServerComponentsOptions {
53
+ /**
54
+ * Whether to disable the compile-time check that reports errors when React
55
+ * client-only APIs (e.g. `useState`, `useEffect`) are imported in server
56
+ * components. Defaults to `false`.
57
+ */
58
+ disableClientApiChecks?: boolean;
59
+ }
26
60
  export interface TerserCompressOptions {
27
61
  arguments?: boolean;
28
62
  arrows?: boolean;
@@ -81,3 +115,4 @@ export interface TerserCompressOptions {
81
115
  const_to_let?: boolean;
82
116
  module?: boolean;
83
117
  }
118
+ export {};
@@ -1,13 +1,15 @@
1
1
  import type { Compiler } from '../Compiler.js';
2
- import type { RspackOptionsNormalized } from '../config/index.js';
2
+ import type { OptimizationSplitChunksOptions, RspackOptionsNormalized } from '../config/index.js';
3
3
  export declare function applyLimits(options: RspackOptionsNormalized): void;
4
4
  export declare class EsmLibraryPlugin {
5
5
  static PLUGIN_NAME: string;
6
- options?: {
6
+ options: {
7
7
  preserveModules?: string;
8
+ splitChunks?: OptimizationSplitChunksOptions | false;
8
9
  };
9
10
  constructor(options?: {
10
11
  preserveModules?: string;
12
+ splitChunks?: OptimizationSplitChunksOptions | false;
11
13
  });
12
14
  apply(compiler: Compiler): void;
13
15
  }
@@ -0,0 +1,9 @@
1
+ export declare const EsmNodeTargetPlugin: {
2
+ new (): {
3
+ name: string;
4
+ _args: [];
5
+ affectedHooks: keyof import("../index.js").CompilerHooks | undefined;
6
+ raw(compiler: import("../index.js").Compiler): import("@rspack/binding").BuiltinPlugin;
7
+ apply(compiler: import("../index.js").Compiler): void;
8
+ };
9
+ };
@@ -0,0 +1,10 @@
1
+ import { type RawHashedModuleIdsPluginOptions } from '@rspack/binding';
2
+ export declare const HashedModuleIdsPlugin: {
3
+ new (options?: RawHashedModuleIdsPluginOptions | undefined): {
4
+ name: string;
5
+ _args: [options?: RawHashedModuleIdsPluginOptions | undefined];
6
+ affectedHooks: keyof import("../index.js").CompilerHooks | undefined;
7
+ raw(compiler: import("../index.js").Compiler): import("@rspack/binding").BuiltinPlugin;
8
+ apply(compiler: import("../index.js").Compiler): void;
9
+ };
10
+ };
@@ -1,5 +1,5 @@
1
1
  import { type BuiltinPlugin, BuiltinPluginName } from '@rspack/binding';
2
- import * as liteTapable from '@rspack/lite-tapable';
2
+ import * as liteTapable from '../../compiled/@rspack/lite-tapable/dist/index.js';
3
3
  import type { Chunk } from '../Chunk.js';
4
4
  import { type Compilation } from '../Compilation.js';
5
5
  import type Hash from '../util/hash/index.js';
@@ -1,9 +1,10 @@
1
- import { type RawProgressPluginOptions } from '@rspack/binding';
2
- export type ProgressPluginArgument = Partial<Omit<RawProgressPluginOptions, 'handler'>> | ((percentage: number, msg: string, ...args: string[]) => void) | undefined;
1
+ import { type RawProgressPluginHandlerInfo, type RawProgressPluginOptions } from '@rspack/binding';
2
+ export type ProgressPluginOptions = Partial<Omit<RawProgressPluginOptions, 'handler'>> | ((percentage: number, msg: string, info: RawProgressPluginHandlerInfo) => void) | undefined;
3
+ export type ProgressPluginHandlerInfo = RawProgressPluginHandlerInfo;
3
4
  export declare const ProgressPlugin: {
4
- new (progress?: ProgressPluginArgument): {
5
+ new (progress?: ProgressPluginOptions): {
5
6
  name: string;
6
- _args: [progress?: ProgressPluginArgument];
7
+ _args: [progress?: ProgressPluginOptions];
7
8
  affectedHooks: keyof import("../index.js").CompilerHooks | undefined;
8
9
  raw(compiler: import("../index.js").Compiler): import("@rspack/binding").BuiltinPlugin;
9
10
  apply(compiler: import("../index.js").Compiler): void;
@@ -1,10 +1,10 @@
1
- import { type JsRsdoctorAsset, type JsRsdoctorAssetPatch, type JsRsdoctorChunk, type JsRsdoctorChunkAssets, type JsRsdoctorChunkGraph, type JsRsdoctorChunkModules, type JsRsdoctorDependency, type JsRsdoctorEntrypoint, type JsRsdoctorEntrypointAssets, type JsRsdoctorExportInfo, type JsRsdoctorModule, type JsRsdoctorModuleGraph, type JsRsdoctorModuleGraphModule, type JsRsdoctorModuleIdsPatch, type JsRsdoctorModuleOriginalSource, type JsRsdoctorModuleSourcesPatch, type JsRsdoctorSideEffect, type JsRsdoctorSourcePosition, type JsRsdoctorSourceRange, type JsRsdoctorStatement, type JsRsdoctorVariable } from '@rspack/binding';
2
- import * as liteTapable from '@rspack/lite-tapable';
1
+ import { type JsRsdoctorAsset, type JsRsdoctorAssetPatch, type JsRsdoctorChunk, type JsRsdoctorChunkAssets, type JsRsdoctorChunkGraph, type JsRsdoctorChunkModules, type JsRsdoctorConnectionsOnlyImport, type JsRsdoctorConnectionsOnlyImportConnection, type JsRsdoctorDependency, type JsRsdoctorEntrypoint, type JsRsdoctorEntrypointAssets, type JsRsdoctorExportInfo, type JsRsdoctorModule, type JsRsdoctorModuleGraph, type JsRsdoctorModuleGraphModule, type JsRsdoctorModuleIdsPatch, type JsRsdoctorModuleOriginalSource, type JsRsdoctorModuleSourcesPatch, type JsRsdoctorSideEffect, type JsRsdoctorSourcePosition, type JsRsdoctorSourceRange, type JsRsdoctorStatement, type JsRsdoctorVariable } from '@rspack/binding';
2
+ import * as liteTapable from '../../compiled/@rspack/lite-tapable/dist/index.js';
3
3
  import { type Compilation } from '../Compilation.js';
4
4
  import type { Compiler } from '../Compiler.js';
5
5
  import type { CreatePartialRegisters } from '../taps/types.js';
6
6
  export declare namespace RsdoctorPluginData {
7
- export type { JsRsdoctorAsset as RsdoctorAsset, JsRsdoctorChunkGraph as RsdoctorChunkGraph, JsRsdoctorModuleGraph as RsdoctorModuleGraph, JsRsdoctorChunk as RsdoctorChunk, JsRsdoctorModule as RsdoctorModule, JsRsdoctorSideEffect as RsdoctorSideEffect, JsRsdoctorExportInfo as RsdoctorExportInfo, JsRsdoctorVariable as RsdoctorVariable, JsRsdoctorDependency as RsdoctorDependency, JsRsdoctorEntrypoint as RsdoctorEntrypoint, JsRsdoctorStatement as RsdoctorStatement, JsRsdoctorSourceRange as RsdoctorSourceRange, JsRsdoctorSourcePosition as RsdoctorSourcePosition, JsRsdoctorModuleGraphModule as RsdoctorModuleGraphModule, JsRsdoctorModuleIdsPatch as RsdoctorModuleIdsPatch, JsRsdoctorModuleOriginalSource as RsdoctorModuleOriginalSource, JsRsdoctorAssetPatch as RsdoctorAssetPatch, JsRsdoctorChunkAssets as RsdoctorChunkAssets, JsRsdoctorEntrypointAssets as RsdoctorEntrypointAssets, JsRsdoctorChunkModules as RsdoctorChunkModules, JsRsdoctorModuleSourcesPatch as RsdoctorModuleSourcesPatch, };
7
+ export type { JsRsdoctorAsset as RsdoctorAsset, JsRsdoctorChunkGraph as RsdoctorChunkGraph, JsRsdoctorModuleGraph as RsdoctorModuleGraph, JsRsdoctorChunk as RsdoctorChunk, JsRsdoctorModule as RsdoctorModule, JsRsdoctorSideEffect as RsdoctorSideEffect, JsRsdoctorExportInfo as RsdoctorExportInfo, JsRsdoctorVariable as RsdoctorVariable, JsRsdoctorConnectionsOnlyImport as RsdoctorConnectionsOnlyImport, JsRsdoctorConnectionsOnlyImportConnection as RsdoctorConnectionsOnlyImportConnection, JsRsdoctorDependency as RsdoctorDependency, JsRsdoctorEntrypoint as RsdoctorEntrypoint, JsRsdoctorStatement as RsdoctorStatement, JsRsdoctorSourceRange as RsdoctorSourceRange, JsRsdoctorSourcePosition as RsdoctorSourcePosition, JsRsdoctorModuleGraphModule as RsdoctorModuleGraphModule, JsRsdoctorModuleIdsPatch as RsdoctorModuleIdsPatch, JsRsdoctorModuleOriginalSource as RsdoctorModuleOriginalSource, JsRsdoctorAssetPatch as RsdoctorAssetPatch, JsRsdoctorChunkAssets as RsdoctorChunkAssets, JsRsdoctorEntrypointAssets as RsdoctorEntrypointAssets, JsRsdoctorChunkModules as RsdoctorChunkModules, JsRsdoctorModuleSourcesPatch as RsdoctorModuleSourcesPatch, };
8
8
  }
9
9
  export type RsdoctorPluginOptions = {
10
10
  moduleGraphFeatures?: boolean | ('graph' | 'ids' | 'sources')[];
@@ -1,5 +1,5 @@
1
1
  import binding from '@rspack/binding';
2
- import * as liteTapable from '@rspack/lite-tapable';
2
+ import * as liteTapable from '../../compiled/@rspack/lite-tapable/dist/index.js';
3
3
  import type { Chunk } from '../Chunk.js';
4
4
  import { type Compilation } from '../Compilation.js';
5
5
  import type { CreatePartialRegisters } from '../taps/types.js';
@@ -1,9 +1,9 @@
1
- export declare const SideEffectsFlagPlugin: {
2
- new (): {
3
- name: string;
4
- _args: [];
5
- affectedHooks: keyof import("../index.js").CompilerHooks | undefined;
6
- raw(compiler: import("../index.js").Compiler): import("@rspack/binding").BuiltinPlugin;
7
- apply(compiler: import("../index.js").Compiler): void;
8
- };
9
- };
1
+ import { type BuiltinPlugin, BuiltinPluginName } from '@rspack/binding';
2
+ import { RspackBuiltinPlugin } from './base.js';
3
+ export declare class SideEffectsFlagPlugin extends RspackBuiltinPlugin {
4
+ private analyzeSideEffectsFree;
5
+ name: BuiltinPluginName;
6
+ affectedHooks: "compilation";
7
+ constructor(analyzeSideEffectsFree?: boolean);
8
+ raw(): BuiltinPlugin;
9
+ }
@@ -1,4 +1,4 @@
1
- import { type BuiltinPlugin, BuiltinPluginName } from '@rspack/binding';
1
+ import { type BuiltinPlugin, BuiltinPluginName, type RawSplitChunksOptions } from '@rspack/binding';
2
2
  import type { Compiler } from '../Compiler.js';
3
3
  import type { OptimizationSplitChunksOptions } from '../config/index.js';
4
4
  import { RspackBuiltinPlugin } from './base.js';
@@ -9,3 +9,4 @@ export declare class SplitChunksPlugin extends RspackBuiltinPlugin {
9
9
  constructor(options: OptimizationSplitChunksOptions);
10
10
  raw(compiler: Compiler): BuiltinPlugin;
11
11
  }
12
+ export declare function toRawSplitChunksOptions(sc: false | OptimizationSplitChunksOptions, compiler: Compiler): RawSplitChunksOptions | undefined;
@@ -8,6 +8,7 @@ export declare class WorkerPlugin extends RspackBuiltinPlugin {
8
8
  private module;
9
9
  private workerPublicPath;
10
10
  name: BuiltinPluginName;
11
+ affectedHooks: "compilation";
11
12
  constructor(chunkLoading: ChunkLoading, wasmLoading: WasmLoading, module: OutputModule, workerPublicPath: WorkerPublicPath);
12
13
  raw(compiler: Compiler): BuiltinPlugin;
13
14
  }
@@ -1,5 +1,5 @@
1
1
  import type { JsAfterEmitData, JsAfterTemplateExecutionData, JsAlterAssetTagGroupsData, JsAlterAssetTagsData, JsBeforeAssetTagGenerationData, JsBeforeEmitData } from '@rspack/binding';
2
- import * as liteTapable from '@rspack/lite-tapable';
2
+ import * as liteTapable from '../../../compiled/@rspack/lite-tapable/dist/index.js';
3
3
  import { type Compilation } from '../../Compilation.js';
4
4
  import type { HtmlRspackPluginOptions } from './options.js';
5
5
  type ExtraPluginHookData = {
@@ -28,6 +28,7 @@ export * from './EnableWasmLoadingPlugin.js';
28
28
  export * from './EnsureChunkConditionsPlugin.js';
29
29
  export * from './EntryPlugin.js';
30
30
  export * from './EsmLibraryPlugin.js';
31
+ export * from './EsmNodeTargetPlugin.js';
31
32
  export * from './EvalDevToolModulePlugin.js';
32
33
  export * from './EvalSourceMapDevToolPlugin.js';
33
34
  export * from './ExternalsPlugin.js';
@@ -35,6 +36,7 @@ export * from './FetchCompileAsyncWasmPlugin.js';
35
36
  export * from './FileUriPlugin.js';
36
37
  export * from './FlagDependencyExportsPlugin.js';
37
38
  export * from './FlagDependencyUsagePlugin.js';
39
+ export * from './HashedModuleIdsPlugin.js';
38
40
  export * from './HotModuleReplacementPlugin.js';
39
41
  export * from './HttpExternalsRspackPlugin.js';
40
42
  export * from './HttpUriPlugin.js';
@@ -73,6 +75,7 @@ export * from './RslibPlugin.js';
73
75
  export * from './RstestPlugin.js';
74
76
  export * from './RuntimeChunkPlugin.js';
75
77
  export * from './RuntimePlugin.js';
78
+ export { rsc } from './rsc/index.js';
76
79
  export * from './SideEffectsFlagPlugin.js';
77
80
  export * from './SizeLimitsPlugin.js';
78
81
  export * from './SourceMapDevToolPlugin.js';
@@ -1,6 +1,6 @@
1
1
  import { type Compiler, MultiCompiler } from '../../index.js';
2
- import type { MiddlewareHandler } from '../../config/devServer.js';
3
- export declare const LAZY_COMPILATION_PREFIX = "/lazy-compilation-using-";
2
+ import type { DevServerMiddlewareHandler } from '../../config/devServer.js';
3
+ export declare const LAZY_COMPILATION_PREFIX = "/_rspack/lazy/trigger";
4
4
  /**
5
5
  * Create a middleware that handles lazy compilation requests from the client.
6
6
  * This function returns an Express-style middleware that listens for
@@ -9,4 +9,4 @@ export declare const LAZY_COMPILATION_PREFIX = "/lazy-compilation-using-";
9
9
  * Use this middleware when integrating lazy compilation into a
10
10
  * custom development server instead of relying on the built-in server.
11
11
  */
12
- export declare const lazyCompilationMiddleware: (compiler: Compiler | MultiCompiler) => MiddlewareHandler;
12
+ export declare const lazyCompilationMiddleware: (compiler: Compiler | MultiCompiler) => DevServerMiddlewareHandler;
@@ -0,0 +1,8 @@
1
+ import { type Compiler } from '../../Compiler.js';
2
+ export declare const GET_OR_INIT_BINDING: unique symbol;
3
+ export declare class Coordinator {
4
+ #private;
5
+ constructor();
6
+ applyServerCompiler(serverCompiler: Compiler): void;
7
+ applyClientCompiler(clientCompiler: Compiler): void;
8
+ }
@@ -0,0 +1,13 @@
1
+ import type binding from '@rspack/binding';
2
+ import type { Compiler } from '../../index.js';
3
+ import { RspackBuiltinPlugin } from '../base.js';
4
+ import { type Coordinator } from './Coordinator.js';
5
+ export type RscClientPluginOptions = {
6
+ coordinator: Coordinator;
7
+ };
8
+ export declare class RscClientPlugin extends RspackBuiltinPlugin {
9
+ #private;
10
+ name: string;
11
+ constructor(options: RscClientPluginOptions);
12
+ raw(compiler: Compiler): binding.BuiltinPlugin;
13
+ }
@@ -0,0 +1,39 @@
1
+ import type binding from '@rspack/binding';
2
+ import type { Compiler } from '../../index.js';
3
+ import { RspackBuiltinPlugin } from '../base.js';
4
+ import { type Coordinator } from './Coordinator.js';
5
+ /** Manifest export entry (server/client actions, module refs). */
6
+ export interface RscManifestExport {
7
+ id: string;
8
+ name: string;
9
+ chunks: string[];
10
+ async?: boolean;
11
+ }
12
+ /** Map of export name to manifest export. */
13
+ export type RscManifestNode = Record<string, RscManifestExport>;
14
+ /** Module loading config (prefix, crossOrigin). */
15
+ export interface RscModuleLoading {
16
+ prefix: string;
17
+ crossOrigin?: 'use-credentials' | '';
18
+ }
19
+ export interface RscManifestPerEntry {
20
+ serverManifest: Record<string, RscManifestExport>;
21
+ clientManifest: Record<string, RscManifestExport>;
22
+ serverConsumerModuleMap: Record<string, RscManifestNode>;
23
+ moduleLoading: RscModuleLoading;
24
+ entryCssFiles: Record<string, string[]>;
25
+ entryJsFiles: string[];
26
+ }
27
+ /** Full RSC manifest (all entries) passed to onManifest. Map from entry name to per-entry manifest. */
28
+ export type RscManifest = Record<string, RscManifestPerEntry>;
29
+ export type RscServerPluginOptions = {
30
+ coordinator: Coordinator;
31
+ onServerComponentChanges?: () => Promise<void>;
32
+ onManifest?: (manifest: RscManifest) => void | Promise<void>;
33
+ };
34
+ export declare class RscServerPlugin extends RspackBuiltinPlugin {
35
+ #private;
36
+ name: string;
37
+ constructor(options: RscServerPluginOptions);
38
+ raw(compiler: Compiler): binding.BuiltinPlugin;
39
+ }
@@ -0,0 +1,24 @@
1
+ import { RscClientPlugin, type RscClientPluginOptions } from './RscClientPlugin.js';
2
+ import { RscServerPlugin } from './RscServerPlugin.js';
3
+ declare class ServerPlugin extends RscServerPlugin {
4
+ constructor(options?: Omit<RscClientPluginOptions, 'coordinator'>);
5
+ }
6
+ declare class ClientPlugin extends RscClientPlugin {
7
+ }
8
+ export declare const rsc: {
9
+ createPlugins: () => {
10
+ ServerPlugin: new (options?: Omit<RscClientPluginOptions, "coordinator">) => ServerPlugin;
11
+ ClientPlugin: new () => ClientPlugin;
12
+ };
13
+ Layers: {
14
+ /**
15
+ * The layer for server-only runtime and picking up `react-server` export conditions.
16
+ */
17
+ readonly rsc: "react-server-components";
18
+ /**
19
+ * Server Side Rendering layer for app.
20
+ */
21
+ readonly ssr: "server-side-rendering";
22
+ };
23
+ };
24
+ export {};
@@ -0,0 +1 @@
1
+ declare function checkNodeVersion(): void;
@@ -186,7 +186,7 @@ export interface LoaderContext<OptionsType = {}> {
186
186
  */
187
187
  request: string;
188
188
  /**
189
- * An array of all the loaders. It is writeable in the pitch phase.
189
+ * An array of all the loaders. It is writable in the pitch phase.
190
190
  * loaders = [{request: string, path: string, query: string, module: function}]
191
191
  *
192
192
  * In the example: