@rspack-canary/browser 1.4.12-canary-c9012b88-20250801081627 → 1.4.12-canary-4f117639-20250801093856

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 (247) hide show
  1. package/dist/BuildInfo.d.ts +17 -0
  2. package/dist/Chunk.d.ts +16 -0
  3. package/dist/ChunkGraph.d.ts +9 -0
  4. package/dist/Chunks.d.ts +12 -0
  5. package/dist/CodeGenerationResults.d.ts +1 -0
  6. package/dist/Compilation.d.ts +420 -0
  7. package/dist/Compiler.d.ts +192 -0
  8. package/dist/ConcatenatedModule.d.ts +1 -0
  9. package/dist/ContextModule.d.ts +1 -0
  10. package/dist/ContextModuleFactory.d.ts +13 -0
  11. package/dist/Diagnostics.d.ts +7 -0
  12. package/dist/Entrypoint.d.ts +2 -0
  13. package/dist/ErrorHelpers.d.ts +3 -0
  14. package/dist/ExecuteModulePlugin.d.ts +4 -0
  15. package/dist/ExportsInfo.d.ts +20 -0
  16. package/dist/ExternalModule.d.ts +1 -0
  17. package/dist/FileSystem.d.ts +54 -0
  18. package/dist/FileSystemInfo.d.ts +5 -0
  19. package/dist/Module.d.ts +53 -0
  20. package/dist/ModuleGraph.d.ts +19 -0
  21. package/dist/ModuleTypeConstants.d.ts +8 -0
  22. package/dist/MultiCompiler.d.ts +78 -0
  23. package/dist/MultiStats.d.ts +22 -0
  24. package/dist/MultiWatching.d.ts +27 -0
  25. package/dist/NativeWatchFileSystem.d.ts +17 -0
  26. package/dist/NormalModule.d.ts +15 -0
  27. package/dist/NormalModuleFactory.d.ts +23 -0
  28. package/dist/Resolver.d.ts +24 -0
  29. package/dist/ResolverFactory.d.ts +14 -0
  30. package/dist/RspackError.d.ts +9 -0
  31. package/dist/RuleSetCompiler.d.ts +9 -0
  32. package/dist/RuntimeGlobals.d.ts +325 -0
  33. package/dist/RuntimeModule.d.ts +32 -0
  34. package/dist/Stats.d.ts +17 -0
  35. package/dist/Template.d.ts +77 -0
  36. package/dist/Watching.d.ts +47 -0
  37. package/dist/browser/buffer.d.ts +1 -0
  38. package/dist/browser/fs.d.ts +12 -0
  39. package/dist/browser/index.d.ts +5 -0
  40. package/dist/browser/service.d.ts +3 -0
  41. package/dist/builtin-loader/index.d.ts +1 -0
  42. package/dist/builtin-loader/lightningcss/index.d.ts +117 -0
  43. package/dist/builtin-loader/swc/collectTypeScriptInfo.d.ts +21 -0
  44. package/dist/builtin-loader/swc/index.d.ts +5 -0
  45. package/dist/builtin-loader/swc/pluginImport.d.ts +33 -0
  46. package/dist/builtin-loader/swc/types.d.ts +83 -0
  47. package/dist/builtin-plugin/APIPlugin.d.ts +9 -0
  48. package/dist/builtin-plugin/ArrayPushCallbackChunkFormatPlugin.d.ts +9 -0
  49. package/dist/builtin-plugin/AssetModulesPlugin.d.ts +9 -0
  50. package/dist/builtin-plugin/AsyncWebAssemblyModulesPlugin.d.ts +9 -0
  51. package/dist/builtin-plugin/BannerPlugin.d.ts +40 -0
  52. package/dist/builtin-plugin/BundlerInfoRspackPlugin.d.ts +14 -0
  53. package/dist/builtin-plugin/ChunkPrefetchPreloadPlugin.d.ts +9 -0
  54. package/dist/builtin-plugin/CircularDependencyRspackPlugin.d.ts +59 -0
  55. package/dist/builtin-plugin/CommonJsChunkFormatPlugin.d.ts +9 -0
  56. package/dist/builtin-plugin/ContextReplacementPlugin.d.ts +9 -0
  57. package/dist/builtin-plugin/CopyRspackPlugin.d.ts +14 -0
  58. package/dist/builtin-plugin/CssChunkingPlugin.d.ts +21 -0
  59. package/dist/builtin-plugin/CssModulesPlugin.d.ts +9 -0
  60. package/dist/builtin-plugin/DataUriPlugin.d.ts +9 -0
  61. package/dist/builtin-plugin/DefinePlugin.d.ts +16 -0
  62. package/dist/builtin-plugin/DeterministicChunkIdsPlugin.d.ts +8 -0
  63. package/dist/builtin-plugin/DeterministicModuleIdsPlugin.d.ts +8 -0
  64. package/dist/builtin-plugin/DllEntryPlugin.d.ts +12 -0
  65. package/dist/builtin-plugin/DllReferenceAgencyPlugin.d.ts +11 -0
  66. package/dist/builtin-plugin/DynamicEntryPlugin.d.ts +12 -0
  67. package/dist/builtin-plugin/ElectronTargetPlugin.d.ts +9 -0
  68. package/dist/builtin-plugin/EnableChunkLoadingPlugin.d.ts +25 -0
  69. package/dist/builtin-plugin/EnableLibraryPlugin.d.ts +11 -0
  70. package/dist/builtin-plugin/EnableWasmLoadingPlugin.d.ts +9 -0
  71. package/dist/builtin-plugin/EnsureChunkConditionsPlugin.d.ts +9 -0
  72. package/dist/builtin-plugin/EntryPlugin.d.ts +32 -0
  73. package/dist/builtin-plugin/EvalDevToolModulePlugin.d.ts +11 -0
  74. package/dist/builtin-plugin/EvalSourceMapDevToolPlugin.d.ts +10 -0
  75. package/dist/builtin-plugin/ExternalsPlugin.d.ts +11 -0
  76. package/dist/builtin-plugin/FetchCompileAsyncWasmPlugin.d.ts +9 -0
  77. package/dist/builtin-plugin/FileUriPlugin.d.ts +9 -0
  78. package/dist/builtin-plugin/FlagAllModulesAsUsedPlugin.d.ts +9 -0
  79. package/dist/builtin-plugin/FlagDependencyExportsPlugin.d.ts +9 -0
  80. package/dist/builtin-plugin/FlagDependencyUsagePlugin.d.ts +10 -0
  81. package/dist/builtin-plugin/HotModuleReplacementPlugin.d.ts +7 -0
  82. package/dist/builtin-plugin/HttpExternalsRspackPlugin.d.ts +9 -0
  83. package/dist/builtin-plugin/HttpUriPlugin.d.ts +36 -0
  84. package/dist/builtin-plugin/IgnorePlugin.d.ts +19 -0
  85. package/dist/builtin-plugin/InferAsyncModulesPlugin.d.ts +9 -0
  86. package/dist/builtin-plugin/JavascriptModulesPlugin.d.ts +15 -0
  87. package/dist/builtin-plugin/JsLoaderRspackPlugin.d.ts +10 -0
  88. package/dist/builtin-plugin/JsonModulesPlugin.d.ts +9 -0
  89. package/dist/builtin-plugin/LibManifestPlugin.d.ts +17 -0
  90. package/dist/builtin-plugin/LightningCssMinimizerRspackPlugin.d.ts +32 -0
  91. package/dist/builtin-plugin/LimitChunkCountPlugin.d.ts +14 -0
  92. package/dist/builtin-plugin/MangleExportsPlugin.d.ts +10 -0
  93. package/dist/builtin-plugin/MergeDuplicateChunksPlugin.d.ts +9 -0
  94. package/dist/builtin-plugin/ModuleChunkFormatPlugin.d.ts +9 -0
  95. package/dist/builtin-plugin/ModuleConcatenationPlugin.d.ts +8 -0
  96. package/dist/builtin-plugin/ModuleInfoHeaderPlugin.d.ts +9 -0
  97. package/dist/builtin-plugin/NamedChunkIdsPlugin.d.ts +9 -0
  98. package/dist/builtin-plugin/NamedModuleIdsPlugin.d.ts +9 -0
  99. package/dist/builtin-plugin/NaturalChunkIdsPlugin.d.ts +8 -0
  100. package/dist/builtin-plugin/NaturalModuleIdsPlugin.d.ts +8 -0
  101. package/dist/builtin-plugin/NoEmitOnErrorsPlugin.d.ts +9 -0
  102. package/dist/builtin-plugin/NodeTargetPlugin.d.ts +9 -0
  103. package/dist/builtin-plugin/OccurrenceChunkIdsPlugin.d.ts +10 -0
  104. package/dist/builtin-plugin/ProgressPlugin.d.ts +11 -0
  105. package/dist/builtin-plugin/ProvidePlugin.d.ts +10 -0
  106. package/dist/builtin-plugin/RealContentHashPlugin.d.ts +9 -0
  107. package/dist/builtin-plugin/RemoveDuplicateModulesPlugin.d.ts +9 -0
  108. package/dist/builtin-plugin/RemoveEmptyChunksPlugin.d.ts +9 -0
  109. package/dist/builtin-plugin/RsdoctorPlugin.d.ts +49 -0
  110. package/dist/builtin-plugin/RslibPlugin.d.ts +11 -0
  111. package/dist/builtin-plugin/RstestPlugin.d.ts +11 -0
  112. package/dist/builtin-plugin/RuntimeChunkPlugin.d.ts +11 -0
  113. package/dist/builtin-plugin/RuntimePlugin.d.ts +28 -0
  114. package/dist/builtin-plugin/SideEffectsFlagPlugin.d.ts +9 -0
  115. package/dist/builtin-plugin/SizeLimitsPlugin.d.ts +19 -0
  116. package/dist/builtin-plugin/SourceMapDevToolPlugin.d.ts +11 -0
  117. package/dist/builtin-plugin/SplitChunksPlugin.d.ts +11 -0
  118. package/dist/builtin-plugin/SubresourceIntegrityPlugin.d.ts +40 -0
  119. package/dist/builtin-plugin/SwcJsMinimizerPlugin.d.ts +214 -0
  120. package/dist/builtin-plugin/WarnCaseSensitiveModulesPlugin.d.ts +9 -0
  121. package/dist/builtin-plugin/WebWorkerTemplatePlugin.d.ts +7 -0
  122. package/dist/builtin-plugin/WorkerPlugin.d.ts +13 -0
  123. package/dist/builtin-plugin/base.d.ts +45 -0
  124. package/dist/builtin-plugin/css-extract/index.d.ts +24 -0
  125. package/dist/builtin-plugin/css-extract/loader.d.ts +21 -0
  126. package/dist/builtin-plugin/css-extract/utils.d.ts +6 -0
  127. package/dist/builtin-plugin/html-plugin/hooks.d.ts +32 -0
  128. package/dist/builtin-plugin/html-plugin/index.d.ts +2 -0
  129. package/dist/builtin-plugin/html-plugin/options.d.ts +83 -0
  130. package/dist/builtin-plugin/html-plugin/plugin.d.ts +24 -0
  131. package/dist/builtin-plugin/html-plugin/taps.d.ts +2 -0
  132. package/dist/builtin-plugin/index.d.ts +80 -0
  133. package/dist/builtin-plugin/lazy-compilation/lazyCompilation.d.ts +24 -0
  134. package/dist/builtin-plugin/lazy-compilation/middleware.d.ts +4 -0
  135. package/dist/config/adapter.d.ts +8 -0
  136. package/dist/config/adapterRuleUse.d.ts +333 -0
  137. package/dist/config/browserslistTargetHandler.d.ts +15 -0
  138. package/dist/config/defaults.d.ts +13 -0
  139. package/dist/config/devServer.d.ts +207 -0
  140. package/dist/config/index.d.ts +4 -0
  141. package/dist/config/normalization.d.ts +154 -0
  142. package/dist/config/target.d.ts +89 -0
  143. package/dist/config/types.d.ts +2282 -0
  144. package/dist/container/ContainerPlugin.d.ts +40 -0
  145. package/dist/container/ContainerReferencePlugin.d.ts +33 -0
  146. package/dist/container/ModuleFederationPlugin.d.ts +13 -0
  147. package/dist/container/ModuleFederationPluginV1.d.ts +22 -0
  148. package/dist/container/ModuleFederationRuntimePlugin.d.ts +12 -0
  149. package/dist/container/index.d.ts +4 -0
  150. package/dist/container/options.d.ts +3 -0
  151. package/dist/error/ConcurrentCompilationError.d.ts +14 -0
  152. package/dist/exports.d.ts +166 -0
  153. package/dist/index.d.ts +10 -0
  154. package/dist/index.mjs +57013 -0
  155. package/dist/index.mjs.LICENSE.txt +10 -0
  156. package/dist/lib/AbstractMethodError.d.ts +23 -0
  157. package/dist/lib/Cache.d.ts +65 -0
  158. package/dist/lib/CacheFacade.d.ts +139 -0
  159. package/dist/lib/DllPlugin.d.ts +42 -0
  160. package/dist/lib/DllReferencePlugin.d.ts +119 -0
  161. package/dist/lib/EntryOptionPlugin.d.ts +33 -0
  162. package/dist/lib/EnvironmentPlugin.d.ts +22 -0
  163. package/dist/lib/HookWebpackError.d.ts +40 -0
  164. package/dist/lib/IgnoreWarningsPlugin.d.ts +25 -0
  165. package/dist/lib/LoaderOptionsPlugin.d.ts +28 -0
  166. package/dist/lib/LoaderTargetPlugin.d.ts +24 -0
  167. package/dist/lib/ModuleFilenameHelpers.d.ts +53 -0
  168. package/dist/lib/NormalModuleReplacementPlugin.d.ts +29 -0
  169. package/dist/lib/WebpackError.d.ts +21 -0
  170. package/dist/lib/cache/MemoryCachePlugin.d.ts +5 -0
  171. package/dist/lib/cache/getLazyHashedEtag.d.ts +35 -0
  172. package/dist/lib/cache/mergeEtags.d.ts +17 -0
  173. package/dist/loader-runner/LoaderLoadingError.d.ts +13 -0
  174. package/dist/loader-runner/ModuleError.d.ts +7 -0
  175. package/dist/loader-runner/ModuleWarning.d.ts +7 -0
  176. package/dist/loader-runner/index.d.ts +34 -0
  177. package/dist/loader-runner/loadLoader.d.ts +12 -0
  178. package/dist/loader-runner/service.d.ts +71 -0
  179. package/dist/loader-runner/utils.d.ts +7 -0
  180. package/dist/loader-runner/worker.d.ts +14 -0
  181. package/dist/logging/Logger.d.ts +61 -0
  182. package/dist/logging/createConsoleLogger.d.ts +35 -0
  183. package/dist/logging/truncateArgs.d.ts +16 -0
  184. package/dist/node/NodeEnvironmentPlugin.d.ts +10 -0
  185. package/dist/node/NodeTemplatePlugin.d.ts +18 -0
  186. package/dist/node/NodeWatchFileSystem.d.ts +18 -0
  187. package/dist/node/nodeConsole.d.ts +15 -0
  188. package/dist/rspack.d.ts +16 -0
  189. package/dist/rspack.wasi-browser.js +101 -0
  190. package/dist/rspack.wasm32-wasi.wasm +0 -0
  191. package/dist/rspackOptionsApply.d.ts +4 -0
  192. package/dist/runtime/cssExtractHmr.d.ts +4 -0
  193. package/dist/runtime/moduleFederationDefaultRuntime.d.ts +2 -0
  194. package/dist/schema/config.d.ts +995 -0
  195. package/dist/schema/loaders.d.ts +399 -0
  196. package/dist/schema/plugins.d.ts +166 -0
  197. package/dist/schema/utils.d.ts +3 -0
  198. package/dist/schema/validate.d.ts +9 -0
  199. package/dist/sharing/ConsumeSharedPlugin.d.ts +41 -0
  200. package/dist/sharing/ProvideSharedPlugin.d.ts +34 -0
  201. package/dist/sharing/SharePlugin.d.ts +51 -0
  202. package/dist/sharing/ShareRuntimePlugin.d.ts +9 -0
  203. package/dist/sharing/utils.d.ts +1 -0
  204. package/dist/stats/DefaultStatsFactoryPlugin.d.ts +4 -0
  205. package/dist/stats/DefaultStatsPresetPlugin.d.ts +4 -0
  206. package/dist/stats/DefaultStatsPrinterPlugin.d.ts +13 -0
  207. package/dist/stats/StatsFactory.d.ts +57 -0
  208. package/dist/stats/StatsPrinter.d.ts +57 -0
  209. package/dist/stats/statsFactoryUtils.d.ts +325 -0
  210. package/dist/swc.d.ts +7 -0
  211. package/dist/taps/compilation.d.ts +8 -0
  212. package/dist/taps/compiler.d.ts +2 -0
  213. package/dist/taps/contextModuleFactory.d.ts +2 -0
  214. package/dist/taps/index.d.ts +6 -0
  215. package/dist/taps/javascriptModules.d.ts +2 -0
  216. package/dist/taps/normalModuleFactory.d.ts +2 -0
  217. package/dist/taps/types.d.ts +11 -0
  218. package/dist/trace/index.d.ts +46 -0
  219. package/dist/trace/traceHookPlugin.d.ts +5 -0
  220. package/dist/util/ArrayQueue.d.ts +45 -0
  221. package/dist/util/AsyncTask.d.ts +7 -0
  222. package/dist/util/MergeCaller.d.ts +10 -0
  223. package/dist/util/SizeFormatHelpers.d.ts +10 -0
  224. package/dist/util/SplitChunkSize.d.ts +5 -0
  225. package/dist/util/assertNotNil.d.ts +1 -0
  226. package/dist/util/assetCondition.d.ts +2 -0
  227. package/dist/util/asyncLib.d.ts +54 -0
  228. package/dist/util/bindingVersionCheck.d.ts +5 -0
  229. package/dist/util/cleverMerge.d.ts +24 -0
  230. package/dist/util/comparators.d.ts +16 -0
  231. package/dist/util/createHash.d.ts +16 -0
  232. package/dist/util/createReadonlyMap.d.ts +1 -0
  233. package/dist/util/fake.d.ts +9 -0
  234. package/dist/util/fs.d.ts +352 -0
  235. package/dist/util/hash/index.d.ts +26 -0
  236. package/dist/util/hash/md4.d.ts +11 -0
  237. package/dist/util/hash/wasm-hash.d.ts +51 -0
  238. package/dist/util/hash/xxhash64.d.ts +11 -0
  239. package/dist/util/identifier.d.ts +31 -0
  240. package/dist/util/index.d.ts +11 -0
  241. package/dist/util/memoize.d.ts +2 -0
  242. package/dist/util/require.d.ts +3 -0
  243. package/dist/util/runtime.d.ts +2 -0
  244. package/dist/util/smartGrouping.d.ts +21 -0
  245. package/dist/util/source.d.ts +7 -0
  246. package/dist/wasi-worker-browser.mjs +34 -0
  247. package/package.json +3 -3
@@ -0,0 +1,4 @@
1
+ import { type Compiler, MultiCompiler } from "../..";
2
+ import type { MiddlewareHandler } from "../../config/devServer";
3
+ export declare const LAZY_COMPILATION_PREFIX = "/lazy-compilation-using-";
4
+ export declare const lazyCompilationMiddleware: (compiler: Compiler | MultiCompiler) => MiddlewareHandler;
@@ -0,0 +1,8 @@
1
+ import { type RawOptions } from "@rspack/binding";
2
+ import type { Compiler } from "../Compiler";
3
+ import { type LoaderContext, type LoaderDefinition, type LoaderDefinitionFunction, type PitchLoaderDefinitionFunction } from "./adapterRuleUse";
4
+ import type { RspackOptionsNormalized } from "./normalization";
5
+ import type { Resolve } from "./types";
6
+ export type { LoaderContext, LoaderDefinition, LoaderDefinitionFunction, PitchLoaderDefinitionFunction };
7
+ export declare const getRawOptions: (options: RspackOptionsNormalized, compiler: Compiler) => RawOptions;
8
+ export declare function getRawResolve(resolve: Resolve): RawOptions["resolve"];
@@ -0,0 +1,333 @@
1
+ import type { AssetInfo, RawModuleRuleUse, RawOptions } from "@rspack/binding";
2
+ import type { Compilation } from "../Compilation";
3
+ import type { Compiler } from "../Compiler";
4
+ import { type LoaderObject } from "../loader-runner";
5
+ import type { Logger } from "../logging/Logger";
6
+ import type { Module } from "../Module";
7
+ import type { ResolveRequest } from "../Resolver";
8
+ import type Hash from "../util/hash";
9
+ import type { RspackOptionsNormalized } from "./normalization";
10
+ import type { Mode, PublicPath, Resolve, RuleSetUseItem, Target } from "./types";
11
+ export declare const BUILTIN_LOADER_PREFIX = "builtin:";
12
+ export interface ComposeJsUseOptions {
13
+ context: RawOptions["context"];
14
+ mode: RawOptions["mode"];
15
+ experiments: RawOptions["experiments"];
16
+ compiler: Compiler;
17
+ }
18
+ export interface SourceMap {
19
+ version: number;
20
+ sources: string[];
21
+ mappings: string;
22
+ file?: string;
23
+ sourceRoot?: string;
24
+ sourcesContent?: string[];
25
+ names?: string[];
26
+ }
27
+ export interface AdditionalData {
28
+ [index: string]: any;
29
+ }
30
+ export type LoaderContextCallback = (err?: Error | null, content?: string | Buffer, sourceMap?: string | SourceMap, additionalData?: AdditionalData) => void;
31
+ export type ErrorWithDetails = Error & {
32
+ details?: string;
33
+ };
34
+ export type ResolveCallback = (err: null | ErrorWithDetails, res?: string | false, req?: ResolveRequest) => void;
35
+ export interface DiagnosticLocation {
36
+ /** Text for highlighting the location */
37
+ text?: string;
38
+ /** 1-based line */
39
+ line: number;
40
+ /** 0-based column in bytes */
41
+ column: number;
42
+ /** Length in bytes */
43
+ length: number;
44
+ }
45
+ export interface Diagnostic {
46
+ message: string;
47
+ help?: string;
48
+ sourceCode?: string;
49
+ /**
50
+ * Location to the source code.
51
+ *
52
+ * If `sourceCode` is not provided, location will be omitted.
53
+ */
54
+ location?: DiagnosticLocation;
55
+ file?: string;
56
+ severity: "error" | "warning";
57
+ }
58
+ export interface LoaderExperiments {
59
+ emitDiagnostic(diagnostic: Diagnostic): void;
60
+ }
61
+ export interface ImportModuleOptions {
62
+ /**
63
+ * Specify a layer in which this module is placed/compiled
64
+ */
65
+ layer?: string;
66
+ /**
67
+ * The public path used for the built modules
68
+ */
69
+ publicPath?: PublicPath;
70
+ /**
71
+ * Target base uri
72
+ */
73
+ baseUri?: string;
74
+ }
75
+ export interface LoaderContext<OptionsType = {}> {
76
+ /**
77
+ * The version number of the loader API. Currently 2.
78
+ * This is useful for providing backwards compatibility. Using the version you can specify
79
+ * custom logic or fallbacks for breaking changes.
80
+ */
81
+ version: 2;
82
+ /**
83
+ * The path string of the current module.
84
+ * @example `'/abc/resource.js?query#hash'`.
85
+ */
86
+ resource: string;
87
+ /**
88
+ * The path string of the current module, excluding the query and fragment parameters.
89
+ * @example `'/abc/resource.js?query#hash'` in `'/abc/resource.js'`.
90
+ */
91
+ resourcePath: string;
92
+ /**
93
+ * The query parameter for the path string of the current module.
94
+ * @example `'?query'` in `'/abc/resource.js?query#hash'`.
95
+ */
96
+ resourceQuery: string;
97
+ /**
98
+ * The fragment parameter of the current module's path string.
99
+ * @example `'#hash'` in `'/abc/resource.js?query#hash'`.
100
+ */
101
+ resourceFragment: string;
102
+ /**
103
+ * Tells Rspack that this loader will be called asynchronously. Returns `this.callback`.
104
+ */
105
+ async(): LoaderContextCallback;
106
+ /**
107
+ * A function that can be called synchronously or asynchronously in order to return multiple
108
+ * results. The expected arguments are:
109
+ *
110
+ * 1. The first parameter must be `Error` or `null`, which marks the current module as a
111
+ * compilation failure.
112
+ * 2. The second argument is a `string` or `Buffer`, which indicates the contents of the file
113
+ * after the module has been processed by the loader.
114
+ * 3. The third parameter is a source map that can be processed by the loader.
115
+ * 4. The fourth parameter is ignored by Rspack and can be anything (e.g. some metadata).
116
+ */
117
+ callback: LoaderContextCallback;
118
+ /**
119
+ * A function that sets the cacheable flag.
120
+ * By default, the processing results of the loader are marked as cacheable.
121
+ * Calling this method and passing `false` turns off the loader's ability to
122
+ * cache processing results.
123
+ */
124
+ cacheable(cacheable?: boolean): void;
125
+ /**
126
+ * Tells if source map should be generated. Since generating source maps can be an expensive task,
127
+ * you should check if source maps are actually requested.
128
+ */
129
+ sourceMap: boolean;
130
+ /**
131
+ * The base path configured in Rspack config via `context`.
132
+ */
133
+ rootContext: string;
134
+ /**
135
+ * The directory path of the currently processed module, which changes with the
136
+ * location of each processed module.
137
+ * For example, if the loader is processing `/project/src/components/Button.js`,
138
+ * then the value of `this.context` would be `/project/src/components`.
139
+ */
140
+ context: string | null;
141
+ /**
142
+ * The index in the loaders array of the current loader.
143
+ */
144
+ loaderIndex: number;
145
+ remainingRequest: string;
146
+ currentRequest: string;
147
+ previousRequest: string;
148
+ /**
149
+ * The module specifier string after being resolved.
150
+ * For example, if a `resource.js` is processed by `loader1.js` and `loader2.js`, the value of
151
+ * `this.request` will be `/path/to/loader1.js!/path/to/loader2.js!/path/to/resource.js`.
152
+ */
153
+ request: string;
154
+ /**
155
+ * An array of all the loaders. It is writeable in the pitch phase.
156
+ * loaders = [{request: string, path: string, query: string, module: function}]
157
+ *
158
+ * In the example:
159
+ * [
160
+ * { request: "/abc/loader1.js?xyz",
161
+ * path: "/abc/loader1.js",
162
+ * query: "?xyz",
163
+ * module: [Function]
164
+ * },
165
+ * { request: "/abc/node_modules/loader2/index.js",
166
+ * path: "/abc/node_modules/loader2/index.js",
167
+ * query: "",
168
+ * module: [Function]
169
+ * }
170
+ * ]
171
+ */
172
+ loaders: LoaderObject[];
173
+ /**
174
+ * The value of `mode` is read when Rspack is run.
175
+ * The possible values are: `'production'`, `'development'`, `'none'`
176
+ */
177
+ mode?: Mode;
178
+ /**
179
+ * The current compilation target. Passed from `target` configuration options.
180
+ */
181
+ target?: Target;
182
+ /**
183
+ * Whether HMR is enabled.
184
+ */
185
+ hot?: boolean;
186
+ /**
187
+ * Get the options passed in by the loader's user.
188
+ * @param schema To provide the best performance, Rspack does not perform the schema
189
+ * validation. If your loader requires schema validation, please call scheme-utils or
190
+ * zod on your own.
191
+ */
192
+ getOptions(schema?: any): OptionsType;
193
+ /**
194
+ * Resolve a module specifier.
195
+ * @param context The absolute path to a directory. This directory is used as the starting
196
+ * location for resolving.
197
+ * @param request The module specifier to be resolved.
198
+ * @param callback A callback function that gives the resolved path.
199
+ */
200
+ resolve(context: string, request: string, callback: (arg0: null | Error, arg1?: string | false, arg2?: ResolveRequest) => void): void;
201
+ /**
202
+ * Create a resolver like `this.resolve`.
203
+ */
204
+ getResolve(options: Resolve): ((context: string, request: string, callback: ResolveCallback) => void) | ((context: string, request: string) => Promise<string | false | undefined>);
205
+ /**
206
+ * Get the logger of this compilation, through which messages can be logged.
207
+ */
208
+ getLogger(name: string): Logger;
209
+ /**
210
+ * Emit an error. Unlike `throw` and `this.callback(err)` in the loader, it does not
211
+ * mark the current module as a compilation failure, it just adds an error to Rspack's
212
+ * Compilation and displays it on the command line at the end of this compilation.
213
+ */
214
+ emitError(error: Error): void;
215
+ /**
216
+ * Emit a warning.
217
+ */
218
+ emitWarning(warning: Error): void;
219
+ /**
220
+ * Emit a new file. This method allows you to create new files during the loader execution.
221
+ */
222
+ emitFile(name: string, content: string | Buffer, sourceMap?: string, assetInfo?: AssetInfo): void;
223
+ /**
224
+ * Add a file as a dependency on the loader results so that any changes to them can be listened to.
225
+ * For example, `sass-loader`, `less-loader` use this trick to recompile when the imported style
226
+ * files change.
227
+ */
228
+ addDependency(file: string): void;
229
+ /**
230
+ * Alias of `this.addDependency()`.
231
+ */
232
+ dependency(file: string): void;
233
+ /**
234
+ * Add the directory as a dependency for the loader results so that any changes to the
235
+ * files in the directory can be listened to.
236
+ */
237
+ addContextDependency(context: string): void;
238
+ /**
239
+ * Add a currently non-existent file as a dependency of the loader result, so that its
240
+ * creation and any changes can be listened. For example, when a new file is created at
241
+ * that path, it will trigger a rebuild.
242
+ */
243
+ addMissingDependency(missing: string): void;
244
+ /**
245
+ * Removes all dependencies of the loader result.
246
+ */
247
+ clearDependencies(): void;
248
+ getDependencies(): string[];
249
+ getContextDependencies(): string[];
250
+ getMissingDependencies(): string[];
251
+ addBuildDependency(file: string): void;
252
+ /**
253
+ * Compile and execute a module at the build time.
254
+ * This is an alternative lightweight solution for the child compiler.
255
+ * `importModule` will return a Promise if no callback is provided.
256
+ *
257
+ * @example
258
+ * ```ts
259
+ * const modulePath = path.resolve(__dirname, 'some-module.ts');
260
+ * const moduleExports = await this.importModule(modulePath, {
261
+ * // optional options
262
+ * });
263
+ * ```
264
+ */
265
+ importModule<T = any>(request: string, options: ImportModuleOptions | undefined, callback: (err?: null | Error, exports?: T) => any): void;
266
+ importModule<T = any>(request: string, options?: ImportModuleOptions): Promise<T>;
267
+ /**
268
+ * Access to the `compilation` object's `inputFileSystem` property.
269
+ */
270
+ fs: any;
271
+ /**
272
+ * This is an experimental API and maybe subject to change.
273
+ * @experimental
274
+ */
275
+ experiments: LoaderExperiments;
276
+ /**
277
+ * Access to some utilities.
278
+ */
279
+ utils: {
280
+ /**
281
+ * Return a new request string using absolute paths when possible.
282
+ */
283
+ absolutify: (context: string, request: string) => string;
284
+ /**
285
+ * Return a new request string avoiding absolute paths when possible.
286
+ */
287
+ contextify: (context: string, request: string) => string;
288
+ /**
289
+ * Return a new Hash object from provided hash function.
290
+ */
291
+ createHash: (algorithm?: string) => Hash;
292
+ };
293
+ /**
294
+ * The value depends on the loader configuration:
295
+ * - If the current loader was configured with an options object, `this.query` will
296
+ * point to that object.
297
+ * - If the current loader has no options, but was invoked with a query string, this
298
+ * will be a string starting with `?`.
299
+ */
300
+ query: string | OptionsType;
301
+ /**
302
+ * A data object shared between the pitch and the normal phase.
303
+ */
304
+ data: unknown;
305
+ /**
306
+ * Access to the current Compiler object of Rspack.
307
+ */
308
+ _compiler: Compiler;
309
+ /**
310
+ * Access to the current Compilation object of Rspack.
311
+ */
312
+ _compilation: Compilation;
313
+ /**
314
+ * @deprecated Hacky access to the Module object being loaded.
315
+ */
316
+ _module: Module;
317
+ /**
318
+ * Note: This is not a Rspack public API, maybe removed in future.
319
+ * Store some data from loader, and consume it from parser, it may be removed in the future
320
+ *
321
+ * @internal
322
+ */
323
+ __internal__setParseMeta: (key: string, value: string) => void;
324
+ }
325
+ export type LoaderDefinitionFunction<OptionsType = {}, ContextAdditions = {}> = (this: LoaderContext<OptionsType> & ContextAdditions, content: string, sourceMap?: string | SourceMap, additionalData?: AdditionalData) => string | void | Buffer | Promise<string | Buffer>;
326
+ export type PitchLoaderDefinitionFunction<OptionsType = {}, ContextAdditions = {}> = (this: LoaderContext<OptionsType> & ContextAdditions, remainingRequest: string, previousRequest: string, data: object) => string | void | Buffer | Promise<string | Buffer>;
327
+ export type LoaderDefinition<OptionsType = {}, ContextAdditions = {}> = LoaderDefinitionFunction<OptionsType, ContextAdditions> & {
328
+ raw?: false;
329
+ pitch?: PitchLoaderDefinitionFunction;
330
+ };
331
+ export declare function createRawModuleRuleUses(uses: RuleSetUseItem | RuleSetUseItem[], path: string, options: ComposeJsUseOptions): RawModuleRuleUse[];
332
+ export declare function isUseSourceMap(devtool: RspackOptionsNormalized["devtool"]): boolean;
333
+ export declare function isUseSimpleSourceMap(devtool: RspackOptionsNormalized["devtool"]): boolean;
@@ -0,0 +1,15 @@
1
+ /**
2
+ * The following code is modified based on
3
+ * https://github.com/webpack/webpack/blob/4b4ca3b/lib/config/browserslistTargetHandler.js
4
+ *
5
+ * MIT Licensed
6
+ * Author Sergey Melyukov @smelukov
7
+ * Copyright (c) JS Foundation and other contributors
8
+ * https://github.com/webpack/webpack/blob/main/LICENSE
9
+ */
10
+ import type { ApiTargetProperties, EcmaTargetProperties, PlatformTargetProperties } from "./target";
11
+ /**
12
+ * @param browsers supported browsers list
13
+ * @returns target properties
14
+ */
15
+ export declare const resolve: (browsers: string[]) => EcmaTargetProperties & PlatformTargetProperties & ApiTargetProperties;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * The following code is modified based on
3
+ * https://github.com/webpack/webpack/blob/4b4ca3b/lib/config/defaults.js
4
+ *
5
+ * MIT Licensed
6
+ * Author Tobias Koppers @sokra
7
+ * Copyright (c) JS Foundation and other contributors
8
+ * https://github.com/webpack/webpack/blob/main/LICENSE
9
+ */
10
+ import type { RspackOptionsNormalized } from "./normalization";
11
+ export declare const applyRspackOptionsDefaults: (options: RspackOptionsNormalized) => void;
12
+ export declare const applyRspackOptionsBaseDefaults: (options: RspackOptionsNormalized) => void;
13
+ export declare const getPnpDefault: () => boolean;
@@ -0,0 +1,207 @@
1
+ /**
2
+ * The following code is modified based on
3
+ * https://github.com/webpack/webpack-dev-server/blob/6045b1e9d63078fb24cac52eb361b7356944cddd/types/lib/Server.d.ts
4
+ *
5
+ * MIT Licensed
6
+ * Author Tobias Koppers @sokra
7
+ * Copyright (c) JS Foundation and other contributors
8
+ * https://github.com/webpack/webpack-dev-server/blob/master/LICENSE
9
+ */
10
+ import type { Compiler, MultiCompiler, MultiStats, Stats, Watching } from "..";
11
+ type Logger = ReturnType<Compiler["getInfrastructureLogger"]>;
12
+ type MultiWatching = MultiCompiler["watch"];
13
+ type BasicServer = import("net").Server | import("tls").Server;
14
+ type ReadStream = import("fs").ReadStream;
15
+ type IncomingMessage = import("http").IncomingMessage;
16
+ type ServerResponse = import("http").ServerResponse;
17
+ type ServerOptions = import("https").ServerOptions & {
18
+ spdy?: {
19
+ plain?: boolean | undefined;
20
+ ssl?: boolean | undefined;
21
+ "x-forwarded-for"?: string | undefined;
22
+ protocol?: string | undefined;
23
+ protocols?: string[] | undefined;
24
+ };
25
+ };
26
+ type ResponseData = {
27
+ data: Buffer | ReadStream;
28
+ byteLength: number;
29
+ };
30
+ type ModifyResponseData<RequestInternal extends IncomingMessage = IncomingMessage, ResponseInternal extends ServerResponse = ServerResponse> = (req: RequestInternal, res: ResponseInternal, data: Buffer | ReadStream, byteLength: number) => ResponseData;
31
+ type Headers = Array<{
32
+ key: string;
33
+ value: string;
34
+ }> | Record<string, string | string[]>;
35
+ type OutputFileSystem = import("..").OutputFileSystem & {
36
+ createReadStream?: typeof import("fs").createReadStream;
37
+ statSync: import("fs").StatSyncFn;
38
+ readFileSync: typeof import("fs").readFileSync;
39
+ };
40
+ type RspackConfiguration = import("..").Configuration;
41
+ type Port = number | string | "auto";
42
+ type HistoryContext = {
43
+ readonly match: RegExpMatchArray;
44
+ readonly parsedUrl: import("url").Url;
45
+ readonly request: any;
46
+ };
47
+ type RewriteTo = (context: HistoryContext) => string;
48
+ type Rewrite = {
49
+ readonly from: RegExp;
50
+ readonly to: string | RegExp | RewriteTo;
51
+ };
52
+ type HistoryApiFallbackOptions = {
53
+ readonly disableDotRule?: true | undefined;
54
+ readonly htmlAcceptHeaders?: readonly string[] | undefined;
55
+ readonly index?: string | undefined;
56
+ readonly logger?: typeof console.log | undefined;
57
+ readonly rewrites?: readonly Rewrite[] | undefined;
58
+ readonly verbose?: boolean | undefined;
59
+ };
60
+ type DevMiddlewareOptions<RequestInternal extends IncomingMessage = IncomingMessage, ResponseInternal extends ServerResponse = ServerResponse> = {
61
+ mimeTypes?: {
62
+ [key: string]: string;
63
+ } | undefined;
64
+ mimeTypeDefault?: string | undefined;
65
+ writeToDisk?: boolean | ((targetPath: string) => boolean) | undefined;
66
+ methods?: string[] | undefined;
67
+ headers?: any;
68
+ publicPath?: NonNullable<RspackConfiguration["output"]>["publicPath"];
69
+ stats?: RspackConfiguration["stats"];
70
+ serverSideRender?: boolean | undefined;
71
+ outputFileSystem?: OutputFileSystem | undefined;
72
+ index?: string | boolean | undefined;
73
+ modifyResponseData?: ModifyResponseData<RequestInternal, ResponseInternal> | undefined;
74
+ etag?: "strong" | "weak" | undefined;
75
+ lastModified?: boolean | undefined;
76
+ cacheControl?: string | number | boolean | {
77
+ maxAge?: number;
78
+ immutable?: boolean;
79
+ } | undefined;
80
+ cacheImmutable?: boolean | undefined;
81
+ };
82
+ type BasicApplication = any;
83
+ type BonjourServer = any;
84
+ type ChokidarWatchOptions = {
85
+ [key: string]: any;
86
+ };
87
+ type ServeIndexOptions = {
88
+ [key: string]: any;
89
+ };
90
+ type ServeStaticOptions = {
91
+ [key: string]: any;
92
+ };
93
+ type HttpProxyMiddlewareOptionsFilter = any;
94
+ type Request = IncomingMessage;
95
+ type Response = ServerResponse;
96
+ type WatchFiles = {
97
+ paths: string | string[];
98
+ options?: (ChokidarWatchOptions & {
99
+ aggregateTimeout?: number;
100
+ ignored?: ChokidarWatchOptions["ignored"];
101
+ poll?: number | boolean;
102
+ }) | undefined;
103
+ };
104
+ type Static = {
105
+ directory?: string | undefined;
106
+ publicPath?: string | string[] | undefined;
107
+ serveIndex?: boolean | ServeIndexOptions | undefined;
108
+ staticOptions?: ServeStaticOptions | undefined;
109
+ watch?: boolean | (ChokidarWatchOptions & {
110
+ aggregateTimeout?: number;
111
+ ignored?: ChokidarWatchOptions["ignored"];
112
+ poll?: number | boolean;
113
+ }) | undefined;
114
+ };
115
+ type ServerType<A extends BasicApplication = BasicApplication, S extends BasicServer = import("http").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse>> = "http" | "https" | "spdy" | "http2" | string | ((arg0: ServerOptions, arg1: A) => S);
116
+ type ServerConfiguration<A extends BasicApplication = BasicApplication, S extends BasicServer = import("http").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse>> = {
117
+ type?: ServerType<A, S> | undefined;
118
+ options?: ServerOptions | undefined;
119
+ };
120
+ type WebSocketServerConfiguration = {
121
+ type?: string | Function | undefined;
122
+ options?: Record<string, any> | undefined;
123
+ };
124
+ type NextFunction = (err?: any) => void;
125
+ type ProxyConfigArrayItem = {
126
+ path?: HttpProxyMiddlewareOptionsFilter | undefined;
127
+ context?: HttpProxyMiddlewareOptionsFilter | undefined;
128
+ } & {
129
+ bypass?: ByPass;
130
+ } & {
131
+ [key: string]: any;
132
+ };
133
+ type ByPass = (req: Request, res: Response, proxyConfig: ProxyConfigArrayItem) => any;
134
+ type ProxyConfigArray = (ProxyConfigArrayItem | ((req?: Request | undefined, res?: Response | undefined, next?: NextFunction | undefined) => ProxyConfigArrayItem))[];
135
+ type Callback = (stats?: Stats | MultiStats | undefined) => any;
136
+ type DevMiddlewareContext<_RequestInternal extends IncomingMessage = IncomingMessage, _ResponseInternal extends ServerResponse = ServerResponse> = {
137
+ state: boolean;
138
+ stats: Stats | MultiStats | undefined;
139
+ callbacks: Callback[];
140
+ options: any;
141
+ compiler: Compiler | MultiCompiler;
142
+ watching: Watching | MultiWatching | undefined;
143
+ logger: Logger;
144
+ outputFileSystem: OutputFileSystem;
145
+ };
146
+ type Server = any;
147
+ export type MiddlewareHandler<RequestInternal extends Request = Request, ResponseInternal extends Response = Response> = (req: RequestInternal, res: ResponseInternal, next: NextFunction) => void | Promise<void>;
148
+ type MiddlewareObject<RequestInternal extends Request = Request, ResponseInternal extends Response = Response> = {
149
+ name?: string;
150
+ path?: string;
151
+ middleware: MiddlewareHandler<RequestInternal, ResponseInternal>;
152
+ };
153
+ export type Middleware<RequestInternal extends Request = Request, ResponseInternal extends Response = Response> = MiddlewareObject<RequestInternal, ResponseInternal> | MiddlewareHandler<RequestInternal, ResponseInternal>;
154
+ type OpenApp = {
155
+ name?: string | undefined;
156
+ arguments?: string[] | undefined;
157
+ };
158
+ type Open = {
159
+ app?: string | string[] | OpenApp | undefined;
160
+ target?: string | string[] | undefined;
161
+ };
162
+ type OverlayMessageOptions = boolean | ((error: Error) => void);
163
+ type WebSocketURL = {
164
+ hostname?: string | undefined;
165
+ password?: string | undefined;
166
+ pathname?: string | undefined;
167
+ port?: string | number | undefined;
168
+ protocol?: string | undefined;
169
+ username?: string | undefined;
170
+ };
171
+ type ClientConfiguration = {
172
+ logging?: "none" | "error" | "warn" | "info" | "log" | "verbose" | undefined;
173
+ overlay?: boolean | {
174
+ warnings?: OverlayMessageOptions;
175
+ errors?: OverlayMessageOptions;
176
+ runtimeErrors?: OverlayMessageOptions;
177
+ } | undefined;
178
+ progress?: boolean | undefined;
179
+ reconnect?: number | boolean | undefined;
180
+ webSocketTransport?: string | undefined;
181
+ webSocketURL?: string | WebSocketURL | undefined;
182
+ };
183
+ export type DevServerOptions<A extends BasicApplication = BasicApplication, S extends BasicServer = import("http").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse>> = {
184
+ ipc?: string | boolean | undefined;
185
+ host?: string | undefined;
186
+ port?: Port | undefined;
187
+ hot?: boolean | "only" | undefined;
188
+ liveReload?: boolean | undefined;
189
+ devMiddleware?: DevMiddlewareOptions | undefined;
190
+ compress?: boolean | undefined;
191
+ allowedHosts?: string | string[] | undefined;
192
+ historyApiFallback?: boolean | HistoryApiFallbackOptions | undefined;
193
+ bonjour?: boolean | Record<string, never> | BonjourServer | undefined;
194
+ watchFiles?: string | string[] | WatchFiles | (string | WatchFiles)[] | undefined;
195
+ static?: string | boolean | Static | (string | Static)[] | undefined;
196
+ server?: ServerType<A, S> | ServerConfiguration<A, S> | undefined;
197
+ app?: (() => Promise<A>) | undefined;
198
+ webSocketServer?: string | boolean | WebSocketServerConfiguration | undefined;
199
+ proxy?: ProxyConfigArray | undefined;
200
+ open?: string | boolean | Open | (string | Open)[] | undefined;
201
+ setupExitSignals?: boolean | undefined;
202
+ client?: boolean | ClientConfiguration | undefined;
203
+ headers?: Headers | ((req: Request, res: Response, context: DevMiddlewareContext<Request, Response> | undefined) => Headers) | undefined;
204
+ onListening?: ((devServer: Server) => void) | undefined;
205
+ setupMiddlewares?: ((middlewares: Middleware[], devServer: Server) => Middleware[]) | undefined;
206
+ };
207
+ export {};
@@ -0,0 +1,4 @@
1
+ export * from "./adapter";
2
+ export * from "./defaults";
3
+ export * from "./normalization";
4
+ export type * from "./types";