@modern-js/builder 2.46.1 → 3.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +14 -16
  3. package/compiled/postcss-load-config/index.d.ts +1 -0
  4. package/compiled/postcss-load-config/index.js +14 -0
  5. package/compiled/postcss-load-config/license +20 -0
  6. package/compiled/postcss-load-config/package.json +1 -0
  7. package/dist/createBuilder.d.ts +8 -2
  8. package/dist/createBuilder.js +124 -39
  9. package/dist/index.d.ts +8 -4
  10. package/dist/index.js +18 -7
  11. package/dist/plugins/babel-post.d.ts +5 -0
  12. package/dist/plugins/{asset.js → babel-post.js} +21 -22
  13. package/dist/plugins/devtools.d.ts +4 -0
  14. package/dist/plugins/{devtool.js → devtools.js} +15 -16
  15. package/dist/plugins/emitRouteFile.d.ts +6 -0
  16. package/dist/plugins/{cleanOutput.js → emitRouteFile.js} +34 -16
  17. package/dist/plugins/environmentDefaults.d.ts +3 -0
  18. package/dist/plugins/environmentDefaults.js +99 -0
  19. package/dist/plugins/globalVars.d.ts +3 -0
  20. package/dist/plugins/{moment.js → globalVars.js} +23 -16
  21. package/dist/plugins/htmlMinify.d.ts +2 -0
  22. package/dist/plugins/htmlMinify.js +126 -0
  23. package/dist/plugins/manifest.d.ts +2 -0
  24. package/dist/plugins/{entry.js → manifest.js} +18 -16
  25. package/dist/plugins/postcss.d.ts +6 -0
  26. package/dist/plugins/postcss.js +133 -0
  27. package/dist/plugins/runtimeChunk.d.ts +2 -0
  28. package/dist/plugins/runtimeChunk.js +55 -0
  29. package/dist/rsc/common.d.ts +22 -0
  30. package/dist/rsc/common.js +174 -0
  31. package/dist/rsc/plugins/rsbuild-rsc-plugin.d.ts +7 -0
  32. package/dist/rsc/plugins/rsbuild-rsc-plugin.js +166 -0
  33. package/dist/rsc/plugins/rspack-rsc-client-plugin.d.ts +14 -0
  34. package/dist/rsc/plugins/rspack-rsc-client-plugin.js +233 -0
  35. package/dist/rsc/plugins/rspack-rsc-server-plugin.d.ts +32 -0
  36. package/dist/rsc/plugins/rspack-rsc-server-plugin.js +290 -0
  37. package/dist/rsc/rsc-client-loader.d.ts +7 -0
  38. package/dist/rsc/rsc-client-loader.js +70 -0
  39. package/dist/rsc/rsc-css-loader.d.ts +2 -0
  40. package/dist/{plugins/yaml.js → rsc/rsc-css-loader.js} +11 -17
  41. package/dist/rsc/rsc-server-loader.d.ts +6 -0
  42. package/dist/rsc/rsc-server-loader.js +95 -0
  43. package/dist/rsc/rsc-ssr-loader.d.ts +6 -0
  44. package/dist/rsc/rsc-ssr-loader.js +58 -0
  45. package/dist/shared/devServer.d.ts +6 -0
  46. package/dist/shared/devServer.js +83 -0
  47. package/dist/shared/getCssSupport.d.ts +1 -0
  48. package/dist/shared/getCssSupport.js +113 -0
  49. package/dist/shared/manifest.d.ts +2 -0
  50. package/dist/{plugins/toml.js → shared/manifest.js} +16 -14
  51. package/dist/shared/parseCommonConfig.d.ts +8 -0
  52. package/dist/shared/parseCommonConfig.js +232 -0
  53. package/dist/shared/utils.d.ts +12 -0
  54. package/dist/shared/utils.js +109 -0
  55. package/dist/types.d.ts +283 -0
  56. package/dist/types.js +16 -0
  57. package/package.json +54 -59
  58. package/dist/cli/commands.d.ts +0 -2
  59. package/dist/cli/commands.js +0 -45
  60. package/dist/cli/config.d.ts +0 -14
  61. package/dist/cli/config.js +0 -72
  62. package/dist/cli/index.d.ts +0 -6
  63. package/dist/cli/index.js +0 -51
  64. package/dist/cli/provider.d.ts +0 -2
  65. package/dist/cli/provider.js +0 -73
  66. package/dist/plugins/antd.d.ts +0 -3
  67. package/dist/plugins/antd.js +0 -63
  68. package/dist/plugins/arco.d.ts +0 -2
  69. package/dist/plugins/arco.js +0 -61
  70. package/dist/plugins/asset.d.ts +0 -2
  71. package/dist/plugins/assetsRetry.d.ts +0 -2
  72. package/dist/plugins/assetsRetry.js +0 -64
  73. package/dist/plugins/bundleAnalyzer.d.ts +0 -2
  74. package/dist/plugins/bundleAnalyzer.js +0 -59
  75. package/dist/plugins/cache.d.ts +0 -2
  76. package/dist/plugins/cache.js +0 -129
  77. package/dist/plugins/checkSyntax.d.ts +0 -2
  78. package/dist/plugins/checkSyntax.js +0 -73
  79. package/dist/plugins/cleanOutput.d.ts +0 -2
  80. package/dist/plugins/define.d.ts +0 -2
  81. package/dist/plugins/define.js +0 -68
  82. package/dist/plugins/devtool.d.ts +0 -2
  83. package/dist/plugins/entry.d.ts +0 -2
  84. package/dist/plugins/externals.d.ts +0 -2
  85. package/dist/plugins/externals.js +0 -48
  86. package/dist/plugins/fileSize.d.ts +0 -4
  87. package/dist/plugins/fileSize.js +0 -164
  88. package/dist/plugins/html.d.ts +0 -3
  89. package/dist/plugins/html.js +0 -236
  90. package/dist/plugins/index.d.ts +0 -2
  91. package/dist/plugins/index.js +0 -74
  92. package/dist/plugins/inlineChunk.d.ts +0 -2
  93. package/dist/plugins/inlineChunk.js +0 -82
  94. package/dist/plugins/moment.d.ts +0 -2
  95. package/dist/plugins/networkPerformance.d.ts +0 -2
  96. package/dist/plugins/networkPerformance.js +0 -54
  97. package/dist/plugins/nodeAddons.d.ts +0 -2
  98. package/dist/plugins/nodeAddons.js +0 -73
  99. package/dist/plugins/performance.d.ts +0 -5
  100. package/dist/plugins/performance.js +0 -66
  101. package/dist/plugins/preloadOrPrefetch.d.ts +0 -2
  102. package/dist/plugins/preloadOrPrefetch.js +0 -57
  103. package/dist/plugins/rem.d.ts +0 -2
  104. package/dist/plugins/rem.js +0 -106
  105. package/dist/plugins/sourceBuild.d.ts +0 -15
  106. package/dist/plugins/sourceBuild.js +0 -121
  107. package/dist/plugins/splitChunks.d.ts +0 -4
  108. package/dist/plugins/splitChunks.js +0 -249
  109. package/dist/plugins/startUrl.d.ts +0 -3
  110. package/dist/plugins/startUrl.js +0 -86
  111. package/dist/plugins/svg.d.ts +0 -2
  112. package/dist/plugins/svg.js +0 -89
  113. package/dist/plugins/target.d.ts +0 -2
  114. package/dist/plugins/target.js +0 -73
  115. package/dist/plugins/toml.d.ts +0 -2
  116. package/dist/plugins/tsChecker.d.ts +0 -2
  117. package/dist/plugins/tsChecker.js +0 -109
  118. package/dist/plugins/wasm.d.ts +0 -2
  119. package/dist/plugins/wasm.js +0 -51
  120. package/dist/plugins/yaml.d.ts +0 -2
  121. package/vitest.config.ts +0 -19
@@ -1,73 +0,0 @@
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 provider_exports = {};
30
- __export(provider_exports, {
31
- getProviderType: () => getProviderType,
32
- loadProvider: () => loadProvider
33
- });
34
- module.exports = __toCommonJS(provider_exports);
35
- var import_builder_shared = require("@modern-js/builder-shared");
36
- var import_utils = require("@modern-js/utils");
37
- var import_path = __toESM(require("path"));
38
- function getProviderType() {
39
- const root = process.cwd();
40
- const pkgJsonPath = import_path.default.join(root, "package.json");
41
- const pkgJson = import_utils.fs.readJSONSync(pkgJsonPath);
42
- const deps = {
43
- ...pkgJson.dependencies,
44
- ...pkgJson.devDependencies
45
- };
46
- if (deps[import_builder_shared.RSPACK_PROVIDER]) {
47
- return "rspack";
48
- }
49
- if (deps[import_builder_shared.WEBPACK_PROVIDER]) {
50
- return "webpack";
51
- }
52
- if ((0, import_utils.isPackageInstalled)(import_builder_shared.RSPACK_PROVIDER, root)) {
53
- return "rspack";
54
- }
55
- if ((0, import_utils.isPackageInstalled)(import_builder_shared.WEBPACK_PROVIDER, root)) {
56
- return "webpack";
57
- }
58
- throw new Error(`Failed to load builder provider, please check if you have "${import_builder_shared.RSPACK_PROVIDER}" or "${import_builder_shared.WEBPACK_PROVIDER}" installed`);
59
- }
60
- async function loadProvider() {
61
- const providerType = getProviderType();
62
- if (providerType === "rspack") {
63
- const { builderRspackProvider } = await Promise.resolve().then(() => __toESM(require("@modern-js/builder-rspack-provider")));
64
- return builderRspackProvider;
65
- }
66
- const { builderWebpackProvider } = await Promise.resolve().then(() => __toESM(require("@modern-js/builder-webpack-provider")));
67
- return builderWebpackProvider;
68
- }
69
- // Annotate the CommonJS export names for ESM import in node:
70
- 0 && (module.exports = {
71
- getProviderType,
72
- loadProvider
73
- });
@@ -1,3 +0,0 @@
1
- import type { BuilderTarget, DefaultBuilderPlugin } from '@modern-js/builder-shared';
2
- export declare const builderPluginAntd: () => DefaultBuilderPlugin;
3
- export declare function useSSR(target: BuilderTarget | BuilderTarget[]): boolean;
@@ -1,63 +0,0 @@
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 antd_exports = {};
20
- __export(antd_exports, {
21
- builderPluginAntd: () => builderPluginAntd,
22
- useSSR: () => useSSR
23
- });
24
- module.exports = __toCommonJS(antd_exports);
25
- var import_utils = require("@modern-js/utils");
26
- const builderPluginAntd = () => ({
27
- name: `builder-plugin-antd`,
28
- setup(api) {
29
- api.modifyBuilderConfig((builderConfig) => {
30
- var _builderConfig;
31
- var _source;
32
- (_source = (_builderConfig = builderConfig).source) !== null && _source !== void 0 ? _source : _builderConfig.source = {};
33
- const { transformImport } = builderConfig.source;
34
- if (transformImport === false || (transformImport === null || transformImport === void 0 ? void 0 : transformImport.some((item) => item.libraryName === "antd"))) {
35
- return;
36
- }
37
- const antdMajorVersion = (0, import_utils.getAntdMajorVersion)(api.context.rootPath);
38
- if (antdMajorVersion && antdMajorVersion < 5) {
39
- builderConfig.source.transformImport = [
40
- ...transformImport || [],
41
- {
42
- libraryName: "antd",
43
- libraryDirectory: useSSR(api.context.target) ? "lib" : "es",
44
- style: true
45
- }
46
- ];
47
- }
48
- });
49
- }
50
- });
51
- function useSSR(target) {
52
- return (Array.isArray(target) ? target : [
53
- target
54
- ]).some((item) => [
55
- "node",
56
- "service-worker"
57
- ].includes(item));
58
- }
59
- // Annotate the CommonJS export names for ESM import in node:
60
- 0 && (module.exports = {
61
- builderPluginAntd,
62
- useSSR
63
- });
@@ -1,2 +0,0 @@
1
- import type { DefaultBuilderPlugin } from '@modern-js/builder-shared';
2
- export declare const builderPluginArco: () => DefaultBuilderPlugin;
@@ -1,61 +0,0 @@
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 arco_exports = {};
20
- __export(arco_exports, {
21
- builderPluginArco: () => builderPluginArco
22
- });
23
- module.exports = __toCommonJS(arco_exports);
24
- var import_utils = require("@modern-js/utils");
25
- var import_antd = require("./antd");
26
- const builderPluginArco = () => ({
27
- name: `builder-plugin-arco`,
28
- setup(api) {
29
- const ARCO_NAME = "@arco-design/web-react";
30
- const ARCO_ICON = `${ARCO_NAME}/icon`;
31
- api.modifyBuilderConfig((builderConfig) => {
32
- var _builderConfig;
33
- const { transformImport = [] } = builderConfig.source || {};
34
- if (transformImport === false || !(0, import_utils.isPackageInstalled)(ARCO_NAME, api.context.rootPath)) {
35
- return;
36
- }
37
- const isUseSSR = (0, import_antd.useSSR)(api.context.target);
38
- if (!(transformImport === null || transformImport === void 0 ? void 0 : transformImport.some((item) => item.libraryName === ARCO_NAME))) {
39
- transformImport.push({
40
- libraryName: ARCO_NAME,
41
- libraryDirectory: isUseSSR ? "lib" : "es",
42
- camelToDashComponentName: false,
43
- style: true
44
- });
45
- }
46
- if (!(transformImport === null || transformImport === void 0 ? void 0 : transformImport.some((item) => item.libraryName === ARCO_ICON))) {
47
- transformImport.push({
48
- libraryName: ARCO_ICON,
49
- libraryDirectory: isUseSSR ? "react-icon-cjs" : "react-icon",
50
- camelToDashComponentName: false
51
- });
52
- }
53
- (_builderConfig = builderConfig).source || (_builderConfig.source = {});
54
- builderConfig.source.transformImport = transformImport;
55
- });
56
- }
57
- });
58
- // Annotate the CommonJS export names for ESM import in node:
59
- 0 && (module.exports = {
60
- builderPluginArco
61
- });
@@ -1,2 +0,0 @@
1
- import type { DefaultBuilderPlugin } from '@modern-js/builder-shared';
2
- export declare const builderAssetPlugin: (assetType: 'image' | 'media' | 'font', exts: string[]) => DefaultBuilderPlugin;
@@ -1,2 +0,0 @@
1
- import { DefaultBuilderPlugin } from '@modern-js/builder-shared';
2
- export declare function builderPluginAssetsRetry(): DefaultBuilderPlugin;
@@ -1,64 +0,0 @@
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 assetsRetry_exports = {};
30
- __export(assetsRetry_exports, {
31
- builderPluginAssetsRetry: () => builderPluginAssetsRetry
32
- });
33
- module.exports = __toCommonJS(assetsRetry_exports);
34
- var import_builder_shared = require("@modern-js/builder-shared");
35
- function builderPluginAssetsRetry() {
36
- return {
37
- name: "builder-plugin-assets-retry",
38
- setup(api) {
39
- api.modifyBundlerChain(async (chain, { CHAIN_ID, target, HtmlPlugin }) => {
40
- const config = api.getNormalizedConfig();
41
- if (!config.output.assetsRetry || (0, import_builder_shared.isHtmlDisabled)(config, target)) {
42
- return;
43
- }
44
- const { AssetsRetryPlugin } = await Promise.resolve().then(() => __toESM(require("@modern-js/builder-shared")));
45
- const distDir = (0, import_builder_shared.getDistPath)(config.output, "js");
46
- const { assetsRetry = {} } = config.output;
47
- if (assetsRetry.crossOrigin === void 0) {
48
- assetsRetry.crossOrigin = config.html.crossorigin;
49
- }
50
- chain.plugin(CHAIN_ID.PLUGIN.ASSETS_RETRY).use(AssetsRetryPlugin, [
51
- {
52
- ...assetsRetry,
53
- distDir,
54
- HtmlPlugin
55
- }
56
- ]);
57
- });
58
- }
59
- };
60
- }
61
- // Annotate the CommonJS export names for ESM import in node:
62
- 0 && (module.exports = {
63
- builderPluginAssetsRetry
64
- });
@@ -1,2 +0,0 @@
1
- import { DefaultBuilderPlugin } from '@modern-js/builder-shared';
2
- export declare function builderPluginBundleAnalyzer(): DefaultBuilderPlugin;
@@ -1,59 +0,0 @@
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 bundleAnalyzer_exports = {};
30
- __export(bundleAnalyzer_exports, {
31
- builderPluginBundleAnalyzer: () => builderPluginBundleAnalyzer
32
- });
33
- module.exports = __toCommonJS(bundleAnalyzer_exports);
34
- function builderPluginBundleAnalyzer() {
35
- return {
36
- name: "builder-plugin-bundle-analyzer",
37
- setup(api) {
38
- api.modifyBundlerChain(async (chain, { CHAIN_ID, target }) => {
39
- const config = api.getNormalizedConfig();
40
- if (!process.env.BUNDLE_ANALYZE && !config.performance.bundleAnalyze) {
41
- return;
42
- }
43
- const { default: BundleAnalyzer } = await Promise.resolve().then(() => __toESM(require("@modern-js/builder-shared/webpack-bundle-analyzer")));
44
- chain.plugin(CHAIN_ID.PLUGIN.BUNDLE_ANALYZER).use(BundleAnalyzer.BundleAnalyzerPlugin, [
45
- {
46
- analyzerMode: "static",
47
- openAnalyzer: false,
48
- reportFilename: `report-${target}.html`,
49
- ...config.performance.bundleAnalyze || {}
50
- }
51
- ]);
52
- });
53
- }
54
- };
55
- }
56
- // Annotate the CommonJS export names for ESM import in node:
57
- 0 && (module.exports = {
58
- builderPluginBundleAnalyzer
59
- });
@@ -1,2 +0,0 @@
1
- import { DefaultBuilderPlugin } from '@modern-js/builder-shared';
2
- export declare const builderPluginCache: () => DefaultBuilderPlugin;
@@ -1,129 +0,0 @@
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 cache_exports = {};
30
- __export(cache_exports, {
31
- builderPluginCache: () => builderPluginCache
32
- });
33
- module.exports = __toCommonJS(cache_exports);
34
- var import_crypto = __toESM(require("crypto"));
35
- var import_path = require("path");
36
- var import_builder_shared = require("@modern-js/builder-shared");
37
- async function validateCache(cacheDirectory, buildDependencies) {
38
- const { fs } = await Promise.resolve().then(() => __toESM(require("@modern-js/utils")));
39
- const configFile = (0, import_path.join)(cacheDirectory, "buildDependencies.json");
40
- if (await (0, import_builder_shared.isFileExists)(configFile)) {
41
- const prevBuildDependencies = await fs.readJSON(configFile);
42
- if (JSON.stringify(prevBuildDependencies) === JSON.stringify(buildDependencies)) {
43
- return;
44
- }
45
- await fs.remove(cacheDirectory);
46
- }
47
- await fs.outputJSON(configFile, buildDependencies);
48
- }
49
- function getDigestHash(digest) {
50
- const fsHash = import_crypto.default.createHash("md5");
51
- const md5 = fsHash.update(JSON.stringify(digest)).digest("hex").slice(0, 8);
52
- return md5;
53
- }
54
- function getCacheDirectory({ cacheDirectory }, context) {
55
- if (cacheDirectory) {
56
- return (0, import_path.isAbsolute)(cacheDirectory) ? cacheDirectory : (0, import_path.join)(context.rootPath, cacheDirectory);
57
- }
58
- return (0, import_path.join)(context.cachePath, context.bundlerType);
59
- }
60
- async function getBuildDependencies(context) {
61
- const { findExists } = await Promise.resolve().then(() => __toESM(require("@modern-js/utils")));
62
- const rootPackageJson = (0, import_path.join)(context.rootPath, "package.json");
63
- const browserslistConfig = (0, import_path.join)(context.rootPath, ".browserslistrc");
64
- const buildDependencies = {};
65
- if (await (0, import_builder_shared.isFileExists)(rootPackageJson)) {
66
- buildDependencies.packageJson = [
67
- rootPackageJson
68
- ];
69
- }
70
- if (context.configPath) {
71
- buildDependencies.config = [
72
- context.configPath
73
- ];
74
- }
75
- if (context.tsconfigPath) {
76
- buildDependencies.tsconfig = [
77
- context.tsconfigPath
78
- ];
79
- }
80
- if (await (0, import_builder_shared.isFileExists)(browserslistConfig)) {
81
- buildDependencies.browserslistrc = [
82
- browserslistConfig
83
- ];
84
- }
85
- const tailwindExts = [
86
- "ts",
87
- "js",
88
- "cjs",
89
- "mjs"
90
- ];
91
- const configs = tailwindExts.map((ext) => (0, import_path.join)(context.rootPath, `tailwind.config.${ext}`));
92
- const tailwindConfig = findExists(configs);
93
- if (tailwindConfig) {
94
- buildDependencies.tailwindcss = [
95
- tailwindConfig
96
- ];
97
- }
98
- return buildDependencies;
99
- }
100
- const builderPluginCache = () => ({
101
- name: "builder-plugin-cache",
102
- setup(api) {
103
- api.modifyBundlerChain(async (chain, { target, env }) => {
104
- const { buildCache } = api.getNormalizedConfig().performance;
105
- if (buildCache === false) {
106
- chain.cache(false);
107
- return;
108
- }
109
- const { context } = api;
110
- const cacheConfig = typeof buildCache === "boolean" ? {} : buildCache;
111
- const cacheDirectory = getCacheDirectory(cacheConfig, context);
112
- const buildDependencies = await getBuildDependencies(context);
113
- await validateCache(cacheDirectory, buildDependencies);
114
- const useDigest = Array.isArray(cacheConfig.cacheDigest) && cacheConfig.cacheDigest.length;
115
- chain.cache({
116
- // The default cache name of webpack is '${name}-${env}', and the `name` is `default` by default.
117
- // We set cache name to avoid cache conflicts of different targets.
118
- name: useDigest ? `${target}-${env}-${getDigestHash(cacheConfig.cacheDigest)}` : `${target}-${env}`,
119
- type: "filesystem",
120
- cacheDirectory,
121
- buildDependencies
122
- });
123
- });
124
- }
125
- });
126
- // Annotate the CommonJS export names for ESM import in node:
127
- 0 && (module.exports = {
128
- builderPluginCache
129
- });
@@ -1,2 +0,0 @@
1
- import { DefaultBuilderPlugin } from '@modern-js/builder-shared';
2
- export declare function builderPluginCheckSyntax(): DefaultBuilderPlugin;
@@ -1,73 +0,0 @@
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 checkSyntax_exports = {};
30
- __export(checkSyntax_exports, {
31
- builderPluginCheckSyntax: () => builderPluginCheckSyntax
32
- });
33
- module.exports = __toCommonJS(checkSyntax_exports);
34
- var import_builder_shared = require("@modern-js/builder-shared");
35
- function builderPluginCheckSyntax() {
36
- return {
37
- name: "builder-plugin-check-syntax",
38
- setup(api) {
39
- api.modifyBundlerChain(async (chain, { isProd, target }) => {
40
- const config = api.getNormalizedConfig();
41
- const { checkSyntax } = config.security;
42
- if (!isProd || [
43
- "node",
44
- "web-worker"
45
- ].includes(target) || !checkSyntax) {
46
- return;
47
- }
48
- const targets = await getCheckTargets(api.context, config, target, checkSyntax);
49
- const { CheckSyntaxPlugin } = await Promise.resolve().then(() => __toESM(require("@modern-js/builder-shared")));
50
- chain.plugin(CheckSyntaxPlugin.name).use(CheckSyntaxPlugin, [
51
- {
52
- targets,
53
- rootPath: api.context.rootPath,
54
- ...typeof checkSyntax === "object" ? checkSyntax : {}
55
- }
56
- ]);
57
- });
58
- }
59
- };
60
- }
61
- async function getCheckTargets(builderContext, builderConfig, builderTarget, checkSyntax) {
62
- var _ref;
63
- const browserslist = (_ref = await (0, import_builder_shared.getBrowserslistWithDefault)(builderContext.rootPath, builderConfig, builderTarget)) !== null && _ref !== void 0 ? _ref : import_builder_shared.DEFAULT_BROWSERSLIST[builderTarget];
64
- if (checkSyntax === true) {
65
- return browserslist;
66
- }
67
- var _checkSyntax_targets;
68
- return (_checkSyntax_targets = checkSyntax.targets) !== null && _checkSyntax_targets !== void 0 ? _checkSyntax_targets : browserslist;
69
- }
70
- // Annotate the CommonJS export names for ESM import in node:
71
- 0 && (module.exports = {
72
- builderPluginCheckSyntax
73
- });
@@ -1,2 +0,0 @@
1
- import type { DefaultBuilderPlugin } from '@modern-js/builder-shared';
2
- export declare const builderPluginCleanOutput: () => DefaultBuilderPlugin;
@@ -1,2 +0,0 @@
1
- import type { DefaultBuilderPlugin } from '@modern-js/builder-shared';
2
- export declare const builderPluginDefine: () => DefaultBuilderPlugin;
@@ -1,68 +0,0 @@
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 define_exports = {};
30
- __export(define_exports, {
31
- builderPluginDefine: () => builderPluginDefine
32
- });
33
- module.exports = __toCommonJS(define_exports);
34
- var import_lodash = require("@modern-js/utils/lodash");
35
- const builderPluginDefine = () => ({
36
- name: "builder-plugin-define",
37
- async setup(api) {
38
- api.modifyBundlerChain(async (chain, { env, target, CHAIN_ID, bundler }) => {
39
- const { getNodeEnv, removeTailSlash, applyOptionsChain } = await Promise.resolve().then(() => __toESM(require("@modern-js/utils")));
40
- const config = api.getNormalizedConfig();
41
- const publicPath = chain.output.get("publicPath");
42
- const assetPrefix = publicPath && typeof publicPath === "string" ? publicPath : config.output.assetPrefix;
43
- const builtinVars = {
44
- "process.env.NODE_ENV": getNodeEnv(),
45
- "process.env.ASSET_PREFIX": removeTailSlash(assetPrefix)
46
- };
47
- const globalVars = applyOptionsChain(builtinVars, config.source.globalVars, {
48
- env,
49
- target
50
- });
51
- const serializedVars = (0, import_lodash.mapValues)(globalVars, (value) => {
52
- var _JSON_stringify;
53
- return (_JSON_stringify = JSON.stringify(value)) !== null && _JSON_stringify !== void 0 ? _JSON_stringify : "undefined";
54
- });
55
- const defineExprs = config.source.define;
56
- chain.plugin(CHAIN_ID.PLUGIN.DEFINE).use(bundler.DefinePlugin, [
57
- {
58
- ...serializedVars,
59
- ...defineExprs
60
- }
61
- ]);
62
- });
63
- }
64
- });
65
- // Annotate the CommonJS export names for ESM import in node:
66
- 0 && (module.exports = {
67
- builderPluginDefine
68
- });
@@ -1,2 +0,0 @@
1
- import { DefaultBuilderPlugin } from '@modern-js/builder-shared';
2
- export declare const builderPluginDevtool: () => DefaultBuilderPlugin;
@@ -1,2 +0,0 @@
1
- import { DefaultBuilderPlugin } from '@modern-js/builder-shared';
2
- export declare const builderPluginEntry: () => DefaultBuilderPlugin;
@@ -1,2 +0,0 @@
1
- import { DefaultBuilderPlugin } from '@modern-js/builder-shared';
2
- export declare function builderPluginExternals(): DefaultBuilderPlugin;