@rsbuild/core 0.0.0-next-20231103091827

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 (147) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +19 -0
  3. package/bin/rsbuild.js +24 -0
  4. package/dist/cli/commands.d.ts +7 -0
  5. package/dist/cli/commands.js +53 -0
  6. package/dist/cli/config.d.ts +12 -0
  7. package/dist/cli/config.js +90 -0
  8. package/dist/cli/index.d.ts +6 -0
  9. package/dist/cli/index.js +48 -0
  10. package/dist/createRsbuild.d.ts +11 -0
  11. package/dist/createRsbuild.js +103 -0
  12. package/dist/index.d.ts +5 -0
  13. package/dist/index.js +36 -0
  14. package/dist/plugins/asset.d.ts +3 -0
  15. package/dist/plugins/asset.js +67 -0
  16. package/dist/plugins/assetsRetry.d.ts +2 -0
  17. package/dist/plugins/assetsRetry.js +66 -0
  18. package/dist/plugins/bundleAnalyzer.d.ts +2 -0
  19. package/dist/plugins/bundleAnalyzer.js +59 -0
  20. package/dist/plugins/cache.d.ts +2 -0
  21. package/dist/plugins/cache.js +115 -0
  22. package/dist/plugins/cleanOutput.d.ts +2 -0
  23. package/dist/plugins/cleanOutput.js +47 -0
  24. package/dist/plugins/define.d.ts +2 -0
  25. package/dist/plugins/define.js +59 -0
  26. package/dist/plugins/devtool.d.ts +2 -0
  27. package/dist/plugins/devtool.js +46 -0
  28. package/dist/plugins/entry.d.ts +2 -0
  29. package/dist/plugins/entry.js +42 -0
  30. package/dist/plugins/externals.d.ts +2 -0
  31. package/dist/plugins/externals.js +48 -0
  32. package/dist/plugins/fileSize.d.ts +4 -0
  33. package/dist/plugins/fileSize.js +160 -0
  34. package/dist/plugins/html.d.ts +7 -0
  35. package/dist/plugins/html.js +242 -0
  36. package/dist/plugins/index.d.ts +2 -0
  37. package/dist/plugins/index.js +67 -0
  38. package/dist/plugins/inlineChunk.d.ts +2 -0
  39. package/dist/plugins/inlineChunk.js +85 -0
  40. package/dist/plugins/moment.d.ts +2 -0
  41. package/dist/plugins/moment.js +43 -0
  42. package/dist/plugins/networkPerformance.d.ts +2 -0
  43. package/dist/plugins/networkPerformance.js +58 -0
  44. package/dist/plugins/nodeAddons.d.ts +2 -0
  45. package/dist/plugins/nodeAddons.js +78 -0
  46. package/dist/plugins/performance.d.ts +5 -0
  47. package/dist/plugins/performance.js +63 -0
  48. package/dist/plugins/preloadOrPrefetch.d.ts +2 -0
  49. package/dist/plugins/preloadOrPrefetch.js +61 -0
  50. package/dist/plugins/rem.d.ts +2 -0
  51. package/dist/plugins/rem.js +103 -0
  52. package/dist/plugins/splitChunks.d.ts +4 -0
  53. package/dist/plugins/splitChunks.js +251 -0
  54. package/dist/plugins/startUrl.d.ts +12 -0
  55. package/dist/plugins/startUrl.js +146 -0
  56. package/dist/plugins/target.d.ts +2 -0
  57. package/dist/plugins/target.js +53 -0
  58. package/dist/plugins/toml.d.ts +2 -0
  59. package/dist/plugins/toml.js +36 -0
  60. package/dist/plugins/wasm.d.ts +2 -0
  61. package/dist/plugins/wasm.js +51 -0
  62. package/dist/plugins/yaml.d.ts +2 -0
  63. package/dist/plugins/yaml.js +36 -0
  64. package/dist/rspack-provider/config/defaults.d.ts +3 -0
  65. package/dist/rspack-provider/config/defaults.js +40 -0
  66. package/dist/rspack-provider/config/normalize.d.ts +7 -0
  67. package/dist/rspack-provider/config/normalize.js +33 -0
  68. package/dist/rspack-provider/core/build.d.ts +19 -0
  69. package/dist/rspack-provider/core/build.js +79 -0
  70. package/dist/rspack-provider/core/createCompiler.d.ts +9 -0
  71. package/dist/rspack-provider/core/createCompiler.js +83 -0
  72. package/dist/rspack-provider/core/createContext.d.ts +7 -0
  73. package/dist/rspack-provider/core/createContext.js +47 -0
  74. package/dist/rspack-provider/core/devMiddleware.d.ts +5 -0
  75. package/dist/rspack-provider/core/devMiddleware.js +65 -0
  76. package/dist/rspack-provider/core/initConfigs.d.ts +14 -0
  77. package/dist/rspack-provider/core/initConfigs.js +76 -0
  78. package/dist/rspack-provider/core/initHooks.d.ts +18 -0
  79. package/dist/rspack-provider/core/initHooks.js +45 -0
  80. package/dist/rspack-provider/core/initPlugins.d.ts +9 -0
  81. package/dist/rspack-provider/core/initPlugins.js +82 -0
  82. package/dist/rspack-provider/core/inspectConfig.d.ts +19 -0
  83. package/dist/rspack-provider/core/inspectConfig.js +81 -0
  84. package/dist/rspack-provider/core/rspackConfig.d.ts +9 -0
  85. package/dist/rspack-provider/core/rspackConfig.js +137 -0
  86. package/dist/rspack-provider/core/startDevServer.d.ts +6 -0
  87. package/dist/rspack-provider/core/startDevServer.js +84 -0
  88. package/dist/rspack-provider/index.d.ts +5 -0
  89. package/dist/rspack-provider/index.js +31 -0
  90. package/dist/rspack-provider/plugins/basic.d.ts +5 -0
  91. package/dist/rspack-provider/plugins/basic.js +34 -0
  92. package/dist/rspack-provider/plugins/css.d.ts +29 -0
  93. package/dist/rspack-provider/plugins/css.js +214 -0
  94. package/dist/rspack-provider/plugins/fallback.d.ts +2 -0
  95. package/dist/rspack-provider/plugins/fallback.js +54 -0
  96. package/dist/rspack-provider/plugins/hmr.d.ts +2 -0
  97. package/dist/rspack-provider/plugins/hmr.js +38 -0
  98. package/dist/rspack-provider/plugins/less.d.ts +2 -0
  99. package/dist/rspack-provider/plugins/less.js +78 -0
  100. package/dist/rspack-provider/plugins/manifest.d.ts +2 -0
  101. package/dist/rspack-provider/plugins/manifest.js +58 -0
  102. package/dist/rspack-provider/plugins/minimize.d.ts +5 -0
  103. package/dist/rspack-provider/plugins/minimize.js +77 -0
  104. package/dist/rspack-provider/plugins/output.d.ts +2 -0
  105. package/dist/rspack-provider/plugins/output.js +65 -0
  106. package/dist/rspack-provider/plugins/progress.d.ts +2 -0
  107. package/dist/rspack-provider/plugins/progress.js +57 -0
  108. package/dist/rspack-provider/plugins/resolve.d.ts +2 -0
  109. package/dist/rspack-provider/plugins/resolve.js +55 -0
  110. package/dist/rspack-provider/plugins/rspack-profile.d.ts +4 -0
  111. package/dist/rspack-provider/plugins/rspack-profile.js +107 -0
  112. package/dist/rspack-provider/plugins/sass.d.ts +2 -0
  113. package/dist/rspack-provider/plugins/sass.js +83 -0
  114. package/dist/rspack-provider/plugins/swc.d.ts +7 -0
  115. package/dist/rspack-provider/plugins/swc.js +151 -0
  116. package/dist/rspack-provider/plugins/transition.d.ts +5 -0
  117. package/dist/rspack-provider/plugins/transition.js +42 -0
  118. package/dist/rspack-provider/provider.d.ts +8 -0
  119. package/dist/rspack-provider/provider.js +116 -0
  120. package/dist/rspack-provider/rspackLoader/css-modules-typescript-pre-loader/index.d.ts +6 -0
  121. package/dist/rspack-provider/rspackLoader/css-modules-typescript-pre-loader/index.js +84 -0
  122. package/dist/rspack-provider/rspackLoader/css-modules-typescript-pre-loader/postcss-icss-extract-plugin.d.ts +11 -0
  123. package/dist/rspack-provider/rspackLoader/css-modules-typescript-pre-loader/postcss-icss-extract-plugin.js +67 -0
  124. package/dist/rspack-provider/rspackPlugin/removeCssSourcemapPlugin.d.ts +8 -0
  125. package/dist/rspack-provider/rspackPlugin/removeCssSourcemapPlugin.js +51 -0
  126. package/dist/rspack-provider/shared/constants.d.ts +1 -0
  127. package/dist/rspack-provider/shared/constants.js +28 -0
  128. package/dist/rspack-provider/shared/fs.d.ts +1 -0
  129. package/dist/rspack-provider/shared/fs.js +38 -0
  130. package/dist/rspack-provider/shared/index.d.ts +3 -0
  131. package/dist/rspack-provider/shared/index.js +26 -0
  132. package/dist/rspack-provider/shared/plugin.d.ts +3 -0
  133. package/dist/rspack-provider/shared/plugin.js +83 -0
  134. package/dist/rspack-provider/shared/rspackVersion.d.ts +3 -0
  135. package/dist/rspack-provider/shared/rspackVersion.js +61 -0
  136. package/dist/rspack-provider/types/context.d.ts +16 -0
  137. package/dist/rspack-provider/types/context.js +16 -0
  138. package/dist/rspack-provider/types/hooks.d.ts +3 -0
  139. package/dist/rspack-provider/types/hooks.js +16 -0
  140. package/dist/rspack-provider/types/index.d.ts +4 -0
  141. package/dist/rspack-provider/types/index.js +26 -0
  142. package/dist/rspack-provider/types/plugin.d.ts +7 -0
  143. package/dist/rspack-provider/types/plugin.js +16 -0
  144. package/dist/utils/generateMetaTags.d.ts +12 -0
  145. package/dist/utils/generateMetaTags.js +50 -0
  146. package/package.json +98 -0
  147. package/static/openChrome.applescript +95 -0
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var wasm_exports = {};
20
+ __export(wasm_exports, {
21
+ pluginWasm: () => pluginWasm
22
+ });
23
+ module.exports = __toCommonJS(wasm_exports);
24
+ var import_path = require("path");
25
+ var import_shared = require("@rsbuild/shared");
26
+ const pluginWasm = () => ({
27
+ name: "plugin-wasm",
28
+ setup(api) {
29
+ api.modifyBundlerChain(async (chain, { CHAIN_ID }) => {
30
+ const config = api.getNormalizedConfig();
31
+ const distPath = (0, import_shared.getDistPath)(config.output, "wasm");
32
+ chain.experiments({
33
+ ...chain.get("experiments"),
34
+ asyncWebAssembly: true
35
+ });
36
+ const wasmFilename = (0, import_path.join)(distPath, "[hash].module.wasm");
37
+ chain.output.merge({
38
+ webassemblyModuleFilename: wasmFilename
39
+ });
40
+ chain.module.rule(CHAIN_ID.RULE.WASM).test(/\.wasm$/).merge({
41
+ dependency: "url"
42
+ }).type("asset/resource").set("generator", {
43
+ filename: wasmFilename
44
+ });
45
+ });
46
+ }
47
+ });
48
+ // Annotate the CommonJS export names for ESM import in node:
49
+ 0 && (module.exports = {
50
+ pluginWasm
51
+ });
@@ -0,0 +1,2 @@
1
+ import { DefaultRsbuildPlugin } from '@rsbuild/shared';
2
+ export declare const pluginYaml: () => DefaultRsbuildPlugin;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var yaml_exports = {};
20
+ __export(yaml_exports, {
21
+ pluginYaml: () => pluginYaml
22
+ });
23
+ module.exports = __toCommonJS(yaml_exports);
24
+ var import_shared = require("@rsbuild/shared");
25
+ const pluginYaml = () => ({
26
+ name: "plugin-yaml",
27
+ setup(api) {
28
+ api.modifyBundlerChain((chain, { CHAIN_ID }) => {
29
+ chain.module.rule(CHAIN_ID.RULE.YAML).type("javascript/auto").test(/\.ya?ml$/).use(CHAIN_ID.USE.YAML).loader((0, import_shared.getSharedPkgCompiledPath)("yaml-loader"));
30
+ });
31
+ }
32
+ });
33
+ // Annotate the CommonJS export names for ESM import in node:
34
+ 0 && (module.exports = {
35
+ pluginYaml
36
+ });
@@ -0,0 +1,3 @@
1
+ import type { RsbuildConfig } from '../types';
2
+ export declare const createDefaultConfig: () => RsbuildConfig;
3
+ export declare const withDefaultConfig: (config: RsbuildConfig) => RsbuildConfig;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var defaults_exports = {};
20
+ __export(defaults_exports, {
21
+ createDefaultConfig: () => createDefaultConfig,
22
+ withDefaultConfig: () => withDefaultConfig
23
+ });
24
+ module.exports = __toCommonJS(defaults_exports);
25
+ var import_shared = require("@rsbuild/shared");
26
+ const createDefaultConfig = () => ({
27
+ dev: (0, import_shared.getDefaultDevConfig)(),
28
+ html: (0, import_shared.getDefaultHtmlConfig)(),
29
+ source: (0, import_shared.getDefaultSourceConfig)(),
30
+ output: (0, import_shared.getDefaultOutputConfig)(),
31
+ tools: (0, import_shared.getDefaultToolsConfig)(),
32
+ security: (0, import_shared.getDefaultSecurityConfig)(),
33
+ performance: (0, import_shared.getDefaultPerformanceConfig)()
34
+ });
35
+ const withDefaultConfig = (config) => (0, import_shared.mergeRsbuildConfig)(createDefaultConfig(), config);
36
+ // Annotate the CommonJS export names for ESM import in node:
37
+ 0 && (module.exports = {
38
+ createDefaultConfig,
39
+ withDefaultConfig
40
+ });
@@ -0,0 +1,7 @@
1
+ import { RsbuildConfig, NormalizedConfig } from '../types';
2
+ /** #__PURE__
3
+ * 1. May used by multiple plugins.
4
+ * 2. Object value that should not be empty.
5
+ * 3. Meaningful and can be filled by constant value.
6
+ */
7
+ export declare const normalizeConfig: (config: RsbuildConfig) => NormalizedConfig;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var normalize_exports = {};
20
+ __export(normalize_exports, {
21
+ normalizeConfig: () => normalizeConfig
22
+ });
23
+ module.exports = __toCommonJS(normalize_exports);
24
+ var import_shared = require("@rsbuild/shared");
25
+ var import_defaults = require("./defaults");
26
+ const normalizeConfig = (config) => (0, import_shared.mergeRsbuildConfig)(
27
+ (0, import_defaults.createDefaultConfig)(),
28
+ config
29
+ );
30
+ // Annotate the CommonJS export names for ESM import in node:
31
+ 0 && (module.exports = {
32
+ normalizeConfig
33
+ });
@@ -0,0 +1,19 @@
1
+ import { InitConfigsOptions } from './initConfigs';
2
+ import type { Stats, MultiStats, BuildOptions, RspackCompiler, RspackMultiCompiler } from '@rsbuild/shared';
3
+ export type BuildExecuter = {
4
+ (compiler: RspackCompiler): Promise<{
5
+ stats?: Stats;
6
+ }>;
7
+ (compiler: RspackMultiCompiler): Promise<{
8
+ stats?: MultiStats;
9
+ }>;
10
+ (compiler: RspackCompiler | RspackMultiCompiler): Promise<{
11
+ stats?: Stats | MultiStats;
12
+ }>;
13
+ };
14
+ export declare const rspackBuild: BuildExecuter;
15
+ export declare const build: (initOptions: InitConfigsOptions, {
16
+ mode,
17
+ watch,
18
+ compiler: customCompiler
19
+ }?: BuildOptions, executer?: BuildExecuter) => Promise<void>;
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var build_exports = {};
20
+ __export(build_exports, {
21
+ build: () => build,
22
+ rspackBuild: () => rspackBuild
23
+ });
24
+ module.exports = __toCommonJS(build_exports);
25
+ var import_createCompiler = require("./createCompiler");
26
+ var import_initConfigs = require("./initConfigs");
27
+ var import_shared = require("@rsbuild/shared");
28
+ const rspackBuild = async (compiler) => {
29
+ return new Promise((resolve, reject) => {
30
+ compiler.run((err, stats) => {
31
+ if (err || (stats == null ? void 0 : stats.hasErrors())) {
32
+ const buildError = err || new Error("Rspack build failed!");
33
+ reject(buildError);
34
+ } else {
35
+ compiler.close(() => {
36
+ resolve({ stats });
37
+ });
38
+ }
39
+ });
40
+ });
41
+ };
42
+ const build = async (initOptions, { mode = "production", watch, compiler: customCompiler } = {}, executer) => {
43
+ if (!process.env.NODE_ENV) {
44
+ process.env.NODE_ENV = mode;
45
+ }
46
+ const { context } = initOptions;
47
+ let compiler;
48
+ let bundlerConfigs;
49
+ if (customCompiler) {
50
+ compiler = customCompiler;
51
+ } else {
52
+ const { rspackConfigs } = await (0, import_initConfigs.initConfigs)(initOptions);
53
+ compiler = await (0, import_createCompiler.createCompiler)({
54
+ context,
55
+ rspackConfigs
56
+ });
57
+ bundlerConfigs = rspackConfigs;
58
+ }
59
+ await context.hooks.onBeforeBuildHook.call({
60
+ bundlerConfigs
61
+ });
62
+ if (watch) {
63
+ compiler.watch({}, (err) => {
64
+ if (err) {
65
+ import_shared.logger.error(err);
66
+ }
67
+ });
68
+ } else {
69
+ const executeResult = await (executer == null ? void 0 : executer(compiler));
70
+ await context.hooks.onAfterBuildHook.call({
71
+ stats: executeResult == null ? void 0 : executeResult.stats
72
+ });
73
+ }
74
+ };
75
+ // Annotate the CommonJS export names for ESM import in node:
76
+ 0 && (module.exports = {
77
+ build,
78
+ rspackBuild
79
+ });
@@ -0,0 +1,9 @@
1
+ import { type RspackConfig } from '@rsbuild/shared';
2
+ import type { Context } from '../types';
3
+ export declare function createCompiler({
4
+ context,
5
+ rspackConfigs
6
+ }: {
7
+ context: Context;
8
+ rspackConfigs: RspackConfig[];
9
+ }): Promise<import("@rspack/core").MultiCompiler>;
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var createCompiler_exports = {};
30
+ __export(createCompiler_exports, {
31
+ createCompiler: () => createCompiler
32
+ });
33
+ module.exports = __toCommonJS(createCompiler_exports);
34
+ var import_shared = require("@rsbuild/shared");
35
+ async function createCompiler({
36
+ context,
37
+ rspackConfigs
38
+ }) {
39
+ (0, import_shared.debug)("create compiler");
40
+ await context.hooks.onBeforeCreateCompilerHook.call({
41
+ bundlerConfigs: rspackConfigs
42
+ });
43
+ const { rspack } = await Promise.resolve().then(() => __toESM(require("@rspack/core")));
44
+ const compiler = rspack(rspackConfigs);
45
+ let isFirstCompile = true;
46
+ compiler.hooks.done.tap("done", async (stats) => {
47
+ var _a;
48
+ const obj = stats.toJson({
49
+ all: false,
50
+ timings: true
51
+ });
52
+ if (!stats.hasErrors()) {
53
+ (_a = obj.children) == null ? void 0 : _a.forEach((c, index) => {
54
+ if (c.time) {
55
+ const time = (0, import_shared.prettyTime)([0, c.time * 10 ** 6]);
56
+ const target = Array.isArray(context.target) ? context.target[index] : context.target;
57
+ const name = import_shared.TARGET_ID_MAP[target || "web"];
58
+ import_shared.logger.ready(`${name} compiled in ${time}`);
59
+ }
60
+ });
61
+ }
62
+ const { message, level } = (0, import_shared.formatStats)(stats);
63
+ if (level === "error") {
64
+ import_shared.logger.error(message);
65
+ }
66
+ if (level === "warning") {
67
+ import_shared.logger.warn(message);
68
+ }
69
+ if ((0, import_shared.isDev)()) {
70
+ await context.hooks.onDevCompileDoneHook.call({
71
+ isFirstCompile
72
+ });
73
+ }
74
+ isFirstCompile = false;
75
+ });
76
+ await context.hooks.onAfterCreateCompilerHook.call({ compiler });
77
+ (0, import_shared.debug)("create compiler done");
78
+ return compiler;
79
+ }
80
+ // Annotate the CommonJS export names for ESM import in node:
81
+ 0 && (module.exports = {
82
+ createCompiler
83
+ });
@@ -0,0 +1,7 @@
1
+ import { type CreateRsbuildOptions } from '@rsbuild/shared';
2
+ import type { Context, RsbuildConfig } from '../types';
3
+ /**
4
+ * Generate the actual context used in the build,
5
+ * which can have a lot of overhead and take some side effects.
6
+ */
7
+ export declare function createContext(options: Required<CreateRsbuildOptions>, userRsbuildConfig: RsbuildConfig): Promise<Context>;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var createContext_exports = {};
20
+ __export(createContext_exports, {
21
+ createContext: () => createContext
22
+ });
23
+ module.exports = __toCommonJS(createContext_exports);
24
+ var import_path = require("path");
25
+ var import_shared = require("@rsbuild/shared");
26
+ var import_initHooks = require("./initHooks");
27
+ var import_defaults = require("../config/defaults");
28
+ async function createContext(options, userRsbuildConfig) {
29
+ const rsbuildConfig = (0, import_defaults.withDefaultConfig)(userRsbuildConfig);
30
+ const context = (0, import_shared.createContextByConfig)(
31
+ options,
32
+ rsbuildConfig.output,
33
+ "rspack"
34
+ );
35
+ const tsconfigPath = (0, import_path.join)(context.rootPath, import_shared.TS_CONFIG_FILE);
36
+ return {
37
+ ...context,
38
+ hooks: (0, import_initHooks.initHooks)(),
39
+ config: { ...rsbuildConfig },
40
+ originalConfig: userRsbuildConfig,
41
+ tsconfigPath: await (0, import_shared.isFileExists)(tsconfigPath) ? tsconfigPath : void 0
42
+ };
43
+ }
44
+ // Annotate the CommonJS export names for ESM import in node:
45
+ 0 && (module.exports = {
46
+ createContext
47
+ });
@@ -0,0 +1,5 @@
1
+ import type { ModernDevServerOptions } from '@modern-js/server';
2
+ import type { Compiler, MultiCompiler } from '@rspack/core';
3
+ type DevMiddlewareOptions = ModernDevServerOptions['devMiddleware'];
4
+ export declare const getDevMiddleware: (multiCompiler: Compiler | MultiCompiler) => NonNullable<DevMiddlewareOptions>;
5
+ export {};
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var devMiddleware_exports = {};
30
+ __export(devMiddleware_exports, {
31
+ getDevMiddleware: () => getDevMiddleware
32
+ });
33
+ module.exports = __toCommonJS(devMiddleware_exports);
34
+ var import_webpack_dev_middleware = __toESM(require("@rsbuild/shared/webpack-dev-middleware"));
35
+ var import_shared = require("@rsbuild/shared");
36
+ function applyHMREntry(compiler, clientPath) {
37
+ if (!(0, import_shared.isClientCompiler)(compiler)) {
38
+ return;
39
+ }
40
+ for (const key in compiler.options.entry) {
41
+ compiler.options.entry[key].import = [
42
+ clientPath,
43
+ ...compiler.options.entry[key].import || []
44
+ ];
45
+ }
46
+ }
47
+ const getDevMiddleware = (multiCompiler) => (options) => {
48
+ const { hmrClientPath, callbacks, ...restOptions } = options;
49
+ const setupCompiler = (compiler) => {
50
+ if (hmrClientPath) {
51
+ applyHMREntry(compiler, hmrClientPath);
52
+ }
53
+ (0, import_shared.setupServerHooks)(compiler, callbacks);
54
+ };
55
+ if (multiCompiler.compilers) {
56
+ multiCompiler.compilers.forEach(setupCompiler);
57
+ } else {
58
+ setupCompiler(multiCompiler);
59
+ }
60
+ return (0, import_webpack_dev_middleware.default)(multiCompiler, restOptions);
61
+ };
62
+ // Annotate the CommonJS export names for ESM import in node:
63
+ 0 && (module.exports = {
64
+ getDevMiddleware
65
+ });
@@ -0,0 +1,14 @@
1
+ import { type PluginStore, type CreateRsbuildOptions } from '@rsbuild/shared';
2
+ import type { Context } from '../types';
3
+ export type InitConfigsOptions = {
4
+ context: Context;
5
+ pluginStore: PluginStore;
6
+ rsbuildOptions: Required<CreateRsbuildOptions>;
7
+ };
8
+ export declare function initConfigs({
9
+ context,
10
+ pluginStore,
11
+ rsbuildOptions
12
+ }: InitConfigsOptions): Promise<{
13
+ rspackConfigs: import("@rsbuild/shared").RspackConfig[];
14
+ }>;
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var initConfigs_exports = {};
20
+ __export(initConfigs_exports, {
21
+ initConfigs: () => initConfigs
22
+ });
23
+ module.exports = __toCommonJS(initConfigs_exports);
24
+ var import_shared = require("@rsbuild/shared");
25
+ var import_inspectConfig = require("./inspectConfig");
26
+ var import_rspackConfig = require("./rspackConfig");
27
+ var import_normalize = require("../config/normalize");
28
+ async function modifyRsbuildConfig(context) {
29
+ (0, import_shared.debug)("modify Rsbuild config");
30
+ const [modified] = await context.hooks.modifyRsbuildConfigHook.call(
31
+ context.config,
32
+ { mergeRsbuildConfig: import_shared.mergeRsbuildConfig }
33
+ );
34
+ context.config = modified;
35
+ (0, import_shared.debug)("modify Rsbuild config done");
36
+ }
37
+ async function initConfigs({
38
+ context,
39
+ pluginStore,
40
+ rsbuildOptions
41
+ }) {
42
+ await (0, import_shared.initPlugins)({
43
+ pluginAPI: context.pluginAPI,
44
+ pluginStore
45
+ });
46
+ await modifyRsbuildConfig(context);
47
+ context.normalizedConfig = (0, import_normalize.normalizeConfig)(context.config);
48
+ const targets = (0, import_shared.castArray)(rsbuildOptions.target);
49
+ const rspackConfigs = await Promise.all(
50
+ targets.map((target) => (0, import_rspackConfig.generateRspackConfig)({ target, context }))
51
+ );
52
+ if ((0, import_shared.isDebug)()) {
53
+ const inspect = () => {
54
+ const inspectOptions = {
55
+ verbose: true,
56
+ writeToDisk: true
57
+ };
58
+ (0, import_inspectConfig.inspectConfig)({
59
+ context,
60
+ pluginStore,
61
+ inspectOptions,
62
+ rsbuildOptions,
63
+ bundlerConfigs: rspackConfigs
64
+ });
65
+ };
66
+ context.hooks.onBeforeBuildHook.tap(inspect);
67
+ context.hooks.onBeforeStartDevServerHook.tap(inspect);
68
+ }
69
+ return {
70
+ rspackConfigs
71
+ };
72
+ }
73
+ // Annotate the CommonJS export names for ESM import in node:
74
+ 0 && (module.exports = {
75
+ initConfigs
76
+ });
@@ -0,0 +1,18 @@
1
+ import { OnExitFn, OnAfterBuildFn, OnBeforeBuildFn, OnDevCompileDoneFn, ModifyRsbuildConfigFn, OnAfterStartDevServerFn, OnBeforeStartDevServerFn, OnAfterCreateCompilerFn, OnBeforeCreateCompilerFn, ModifyBundlerChainFn, type RspackConfig } from '@rsbuild/shared';
2
+ import type { RsbuildConfig, ModifyRspackConfigFn } from '../types';
3
+ export declare function initHooks(): {
4
+ /** parameters are not bundler-related */
5
+ onExitHook: import("@rsbuild/shared").AsyncHook<OnExitFn>;
6
+ onDevCompileDoneHook: import("@rsbuild/shared").AsyncHook<OnDevCompileDoneFn>;
7
+ onAfterStartDevServerHook: import("@rsbuild/shared").AsyncHook<OnAfterStartDevServerFn>;
8
+ onBeforeStartDevServerHook: import("@rsbuild/shared").AsyncHook<OnBeforeStartDevServerFn>;
9
+ /** parameters are bundler-related */
10
+ onAfterBuildHook: import("@rsbuild/shared").AsyncHook<OnAfterBuildFn>;
11
+ onBeforeBuildHook: import("@rsbuild/shared").AsyncHook<OnBeforeBuildFn<RspackConfig>>;
12
+ modifyRspackConfigHook: import("@rsbuild/shared").AsyncHook<ModifyRspackConfigFn>;
13
+ modifyRsbuildConfigHook: import("@rsbuild/shared").AsyncHook<ModifyRsbuildConfigFn<RsbuildConfig>>;
14
+ onAfterCreateCompilerHook: import("@rsbuild/shared").AsyncHook<OnAfterCreateCompilerFn<import("@rspack/core/dist/Compiler").Compiler | import("@rspack/core").MultiCompiler>>;
15
+ onBeforeCreateCompilerHook: import("@rsbuild/shared").AsyncHook<OnBeforeCreateCompilerFn<RspackConfig>>;
16
+ modifyBundlerChainHook: import("@rsbuild/shared").AsyncHook<ModifyBundlerChainFn>;
17
+ };
18
+ export type Hooks = ReturnType<typeof initHooks>;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var initHooks_exports = {};
20
+ __export(initHooks_exports, {
21
+ initHooks: () => initHooks
22
+ });
23
+ module.exports = __toCommonJS(initHooks_exports);
24
+ var import_shared = require("@rsbuild/shared");
25
+ function initHooks() {
26
+ return {
27
+ /** parameters are not bundler-related */
28
+ onExitHook: (0, import_shared.createAsyncHook)(),
29
+ onDevCompileDoneHook: (0, import_shared.createAsyncHook)(),
30
+ onAfterStartDevServerHook: (0, import_shared.createAsyncHook)(),
31
+ onBeforeStartDevServerHook: (0, import_shared.createAsyncHook)(),
32
+ /** parameters are bundler-related */
33
+ onAfterBuildHook: (0, import_shared.createAsyncHook)(),
34
+ onBeforeBuildHook: (0, import_shared.createAsyncHook)(),
35
+ modifyRspackConfigHook: (0, import_shared.createAsyncHook)(),
36
+ modifyRsbuildConfigHook: (0, import_shared.createAsyncHook)(),
37
+ onAfterCreateCompilerHook: (0, import_shared.createAsyncHook)(),
38
+ onBeforeCreateCompilerHook: (0, import_shared.createAsyncHook)(),
39
+ modifyBundlerChainHook: (0, import_shared.createAsyncHook)()
40
+ };
41
+ }
42
+ // Annotate the CommonJS export names for ESM import in node:
43
+ 0 && (module.exports = {
44
+ initHooks
45
+ });