@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.
- package/LICENSE +1 -1
- package/README.md +14 -16
- package/compiled/postcss-load-config/index.d.ts +1 -0
- package/compiled/postcss-load-config/index.js +14 -0
- package/compiled/postcss-load-config/license +20 -0
- package/compiled/postcss-load-config/package.json +1 -0
- package/dist/createBuilder.d.ts +8 -2
- package/dist/createBuilder.js +124 -39
- package/dist/index.d.ts +8 -4
- package/dist/index.js +18 -7
- package/dist/plugins/babel-post.d.ts +5 -0
- package/dist/plugins/{asset.js → babel-post.js} +21 -22
- package/dist/plugins/devtools.d.ts +4 -0
- package/dist/plugins/{devtool.js → devtools.js} +15 -16
- package/dist/plugins/emitRouteFile.d.ts +6 -0
- package/dist/plugins/{cleanOutput.js → emitRouteFile.js} +34 -16
- package/dist/plugins/environmentDefaults.d.ts +3 -0
- package/dist/plugins/environmentDefaults.js +99 -0
- package/dist/plugins/globalVars.d.ts +3 -0
- package/dist/plugins/{moment.js → globalVars.js} +23 -16
- package/dist/plugins/htmlMinify.d.ts +2 -0
- package/dist/plugins/htmlMinify.js +126 -0
- package/dist/plugins/manifest.d.ts +2 -0
- package/dist/plugins/{entry.js → manifest.js} +18 -16
- package/dist/plugins/postcss.d.ts +6 -0
- package/dist/plugins/postcss.js +133 -0
- package/dist/plugins/runtimeChunk.d.ts +2 -0
- package/dist/plugins/runtimeChunk.js +55 -0
- package/dist/rsc/common.d.ts +22 -0
- package/dist/rsc/common.js +174 -0
- package/dist/rsc/plugins/rsbuild-rsc-plugin.d.ts +7 -0
- package/dist/rsc/plugins/rsbuild-rsc-plugin.js +166 -0
- package/dist/rsc/plugins/rspack-rsc-client-plugin.d.ts +14 -0
- package/dist/rsc/plugins/rspack-rsc-client-plugin.js +233 -0
- package/dist/rsc/plugins/rspack-rsc-server-plugin.d.ts +32 -0
- package/dist/rsc/plugins/rspack-rsc-server-plugin.js +290 -0
- package/dist/rsc/rsc-client-loader.d.ts +7 -0
- package/dist/rsc/rsc-client-loader.js +70 -0
- package/dist/rsc/rsc-css-loader.d.ts +2 -0
- package/dist/{plugins/yaml.js → rsc/rsc-css-loader.js} +11 -17
- package/dist/rsc/rsc-server-loader.d.ts +6 -0
- package/dist/rsc/rsc-server-loader.js +95 -0
- package/dist/rsc/rsc-ssr-loader.d.ts +6 -0
- package/dist/rsc/rsc-ssr-loader.js +58 -0
- package/dist/shared/devServer.d.ts +6 -0
- package/dist/shared/devServer.js +83 -0
- package/dist/shared/getCssSupport.d.ts +1 -0
- package/dist/shared/getCssSupport.js +113 -0
- package/dist/shared/manifest.d.ts +2 -0
- package/dist/{plugins/toml.js → shared/manifest.js} +16 -14
- package/dist/shared/parseCommonConfig.d.ts +8 -0
- package/dist/shared/parseCommonConfig.js +232 -0
- package/dist/shared/utils.d.ts +12 -0
- package/dist/shared/utils.js +109 -0
- package/dist/types.d.ts +283 -0
- package/dist/types.js +16 -0
- package/package.json +54 -59
- package/dist/cli/commands.d.ts +0 -2
- package/dist/cli/commands.js +0 -45
- package/dist/cli/config.d.ts +0 -14
- package/dist/cli/config.js +0 -72
- package/dist/cli/index.d.ts +0 -6
- package/dist/cli/index.js +0 -51
- package/dist/cli/provider.d.ts +0 -2
- package/dist/cli/provider.js +0 -73
- package/dist/plugins/antd.d.ts +0 -3
- package/dist/plugins/antd.js +0 -63
- package/dist/plugins/arco.d.ts +0 -2
- package/dist/plugins/arco.js +0 -61
- package/dist/plugins/asset.d.ts +0 -2
- package/dist/plugins/assetsRetry.d.ts +0 -2
- package/dist/plugins/assetsRetry.js +0 -64
- package/dist/plugins/bundleAnalyzer.d.ts +0 -2
- package/dist/plugins/bundleAnalyzer.js +0 -59
- package/dist/plugins/cache.d.ts +0 -2
- package/dist/plugins/cache.js +0 -129
- package/dist/plugins/checkSyntax.d.ts +0 -2
- package/dist/plugins/checkSyntax.js +0 -73
- package/dist/plugins/cleanOutput.d.ts +0 -2
- package/dist/plugins/define.d.ts +0 -2
- package/dist/plugins/define.js +0 -68
- package/dist/plugins/devtool.d.ts +0 -2
- package/dist/plugins/entry.d.ts +0 -2
- package/dist/plugins/externals.d.ts +0 -2
- package/dist/plugins/externals.js +0 -48
- package/dist/plugins/fileSize.d.ts +0 -4
- package/dist/plugins/fileSize.js +0 -164
- package/dist/plugins/html.d.ts +0 -3
- package/dist/plugins/html.js +0 -236
- package/dist/plugins/index.d.ts +0 -2
- package/dist/plugins/index.js +0 -74
- package/dist/plugins/inlineChunk.d.ts +0 -2
- package/dist/plugins/inlineChunk.js +0 -82
- package/dist/plugins/moment.d.ts +0 -2
- package/dist/plugins/networkPerformance.d.ts +0 -2
- package/dist/plugins/networkPerformance.js +0 -54
- package/dist/plugins/nodeAddons.d.ts +0 -2
- package/dist/plugins/nodeAddons.js +0 -73
- package/dist/plugins/performance.d.ts +0 -5
- package/dist/plugins/performance.js +0 -66
- package/dist/plugins/preloadOrPrefetch.d.ts +0 -2
- package/dist/plugins/preloadOrPrefetch.js +0 -57
- package/dist/plugins/rem.d.ts +0 -2
- package/dist/plugins/rem.js +0 -106
- package/dist/plugins/sourceBuild.d.ts +0 -15
- package/dist/plugins/sourceBuild.js +0 -121
- package/dist/plugins/splitChunks.d.ts +0 -4
- package/dist/plugins/splitChunks.js +0 -249
- package/dist/plugins/startUrl.d.ts +0 -3
- package/dist/plugins/startUrl.js +0 -86
- package/dist/plugins/svg.d.ts +0 -2
- package/dist/plugins/svg.js +0 -89
- package/dist/plugins/target.d.ts +0 -2
- package/dist/plugins/target.js +0 -73
- package/dist/plugins/toml.d.ts +0 -2
- package/dist/plugins/tsChecker.d.ts +0 -2
- package/dist/plugins/tsChecker.js +0 -109
- package/dist/plugins/wasm.d.ts +0 -2
- package/dist/plugins/wasm.js +0 -51
- package/dist/plugins/yaml.d.ts +0 -2
- package/vitest.config.ts +0 -19
|
@@ -1,54 +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 networkPerformance_exports = {};
|
|
20
|
-
__export(networkPerformance_exports, {
|
|
21
|
-
builderPluginNetworkPerformance: () => builderPluginNetworkPerformance
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(networkPerformance_exports);
|
|
24
|
-
var import_builder_shared = require("@modern-js/builder-shared");
|
|
25
|
-
const builderPluginNetworkPerformance = () => ({
|
|
26
|
-
name: `builder-plugin-network-performance`,
|
|
27
|
-
setup(api) {
|
|
28
|
-
api.modifyBundlerChain(async (chain, { CHAIN_ID, isServer, isWebWorker, isServiceWorker, HtmlPlugin }) => {
|
|
29
|
-
const config = api.getNormalizedConfig();
|
|
30
|
-
const { performance: { dnsPrefetch, preconnect } } = config;
|
|
31
|
-
if (isServer || isWebWorker || isServiceWorker) {
|
|
32
|
-
return;
|
|
33
|
-
}
|
|
34
|
-
if (dnsPrefetch) {
|
|
35
|
-
chain.plugin(CHAIN_ID.PLUGIN.HTML_DNS_PREFETCH).use(import_builder_shared.HtmlNetworkPerformancePlugin, [
|
|
36
|
-
dnsPrefetch,
|
|
37
|
-
"dnsPrefetch",
|
|
38
|
-
HtmlPlugin
|
|
39
|
-
]);
|
|
40
|
-
}
|
|
41
|
-
if (preconnect) {
|
|
42
|
-
chain.plugin(CHAIN_ID.PLUGIN.HTML_PRECONNECT).use(import_builder_shared.HtmlNetworkPerformancePlugin, [
|
|
43
|
-
preconnect,
|
|
44
|
-
"preconnect",
|
|
45
|
-
HtmlPlugin
|
|
46
|
-
]);
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
});
|
|
51
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
52
|
-
0 && (module.exports = {
|
|
53
|
-
builderPluginNetworkPerformance
|
|
54
|
-
});
|
|
@@ -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 nodeAddons_exports = {};
|
|
30
|
-
__export(nodeAddons_exports, {
|
|
31
|
-
builderPluginNodeAddons: () => builderPluginNodeAddons
|
|
32
|
-
});
|
|
33
|
-
module.exports = __toCommonJS(nodeAddons_exports);
|
|
34
|
-
var import_builder_shared = require("@modern-js/builder-shared");
|
|
35
|
-
const builderPluginNodeAddons = () => ({
|
|
36
|
-
name: "builder-plugin-node-addons",
|
|
37
|
-
setup(api) {
|
|
38
|
-
api.modifyBundlerChain(async (chain, { isServer, isServiceWorker, CHAIN_ID }) => {
|
|
39
|
-
if (!isServer && !isServiceWorker) {
|
|
40
|
-
return;
|
|
41
|
-
}
|
|
42
|
-
const { chalk, pkgUp } = await Promise.resolve().then(() => __toESM(require("@modern-js/utils")));
|
|
43
|
-
const getDistName = (resource) => {
|
|
44
|
-
const pkgJSON = pkgUp.sync({
|
|
45
|
-
cwd: resource
|
|
46
|
-
});
|
|
47
|
-
if (!pkgJSON) {
|
|
48
|
-
throw new Error(`Failed to compile Node.js addons, couldn't find the package.json of ${chalk.yellow(resource)}.`);
|
|
49
|
-
}
|
|
50
|
-
const getFilename = (resource2, pkgName2) => {
|
|
51
|
-
const reg = new RegExp(`node_modules/${pkgName2}/(.+)`);
|
|
52
|
-
const match = resource2.match(reg);
|
|
53
|
-
const filename = match === null || match === void 0 ? void 0 : match[1];
|
|
54
|
-
if (!filename) {
|
|
55
|
-
return "[name].[ext]";
|
|
56
|
-
}
|
|
57
|
-
return `${filename}`;
|
|
58
|
-
};
|
|
59
|
-
const { name: pkgName } = require(pkgJSON);
|
|
60
|
-
const config = api.getNormalizedConfig();
|
|
61
|
-
const serverPath = (0, import_builder_shared.getDistPath)(config.output, "server");
|
|
62
|
-
return `${serverPath}/${getFilename(resource, pkgName)}`;
|
|
63
|
-
};
|
|
64
|
-
chain.module.rule(CHAIN_ID.RULE.NODE).test(/\.node$/).use(CHAIN_ID.USE.NODE).loader((0, import_builder_shared.getSharedPkgCompiledPath)("node-loader")).options({
|
|
65
|
-
name: getDistName
|
|
66
|
-
});
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
71
|
-
0 && (module.exports = {
|
|
72
|
-
builderPluginNodeAddons
|
|
73
|
-
});
|
|
@@ -1,66 +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 performance_exports = {};
|
|
20
|
-
__export(performance_exports, {
|
|
21
|
-
builderPluginPerformance: () => builderPluginPerformance
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(performance_exports);
|
|
24
|
-
function applyProfile({ chain, config }) {
|
|
25
|
-
const { profile } = config.performance;
|
|
26
|
-
if (!profile) {
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
chain.profile(profile);
|
|
30
|
-
}
|
|
31
|
-
const builderPluginPerformance = () => ({
|
|
32
|
-
name: "builder-plugin-performance",
|
|
33
|
-
setup(api) {
|
|
34
|
-
api.modifyBuilderConfig((builderConfig) => {
|
|
35
|
-
var _builderConfig_performance;
|
|
36
|
-
if ((_builderConfig_performance = builderConfig.performance) === null || _builderConfig_performance === void 0 ? void 0 : _builderConfig_performance.profile) {
|
|
37
|
-
var _builderConfig_performance1;
|
|
38
|
-
if (!((_builderConfig_performance1 = builderConfig.performance) === null || _builderConfig_performance1 === void 0 ? void 0 : _builderConfig_performance1.bundleAnalyze)) {
|
|
39
|
-
var _builderConfig;
|
|
40
|
-
var _performance;
|
|
41
|
-
(_performance = (_builderConfig = builderConfig).performance) !== null && _performance !== void 0 ? _performance : _builderConfig.performance = {};
|
|
42
|
-
builderConfig.performance.bundleAnalyze = {
|
|
43
|
-
analyzerMode: "disabled",
|
|
44
|
-
generateStatsFile: true
|
|
45
|
-
};
|
|
46
|
-
} else {
|
|
47
|
-
builderConfig.performance.bundleAnalyze = {
|
|
48
|
-
generateStatsFile: true,
|
|
49
|
-
...builderConfig.performance.bundleAnalyze || {}
|
|
50
|
-
};
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
api.modifyBundlerChain((chain) => {
|
|
55
|
-
const config = api.getNormalizedConfig();
|
|
56
|
-
applyProfile({
|
|
57
|
-
chain,
|
|
58
|
-
config
|
|
59
|
-
});
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
});
|
|
63
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
64
|
-
0 && (module.exports = {
|
|
65
|
-
builderPluginPerformance
|
|
66
|
-
});
|
|
@@ -1,57 +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 preloadOrPrefetch_exports = {};
|
|
20
|
-
__export(preloadOrPrefetch_exports, {
|
|
21
|
-
builderPluginPreloadOrPrefetch: () => builderPluginPreloadOrPrefetch
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(preloadOrPrefetch_exports);
|
|
24
|
-
var import_builder_shared = require("@modern-js/builder-shared");
|
|
25
|
-
const builderPluginPreloadOrPrefetch = () => ({
|
|
26
|
-
name: `builder-plugin-preload-or-prefetch`,
|
|
27
|
-
setup(api) {
|
|
28
|
-
api.modifyBundlerChain(async (chain, { CHAIN_ID, isServer, isWebWorker, isServiceWorker, HtmlPlugin }) => {
|
|
29
|
-
const config = api.getNormalizedConfig();
|
|
30
|
-
const { performance: { preload, prefetch } } = config;
|
|
31
|
-
if (isServer || isWebWorker || isServiceWorker) {
|
|
32
|
-
return;
|
|
33
|
-
}
|
|
34
|
-
const HTMLCount = chain.entryPoints.values().length;
|
|
35
|
-
if (prefetch) {
|
|
36
|
-
chain.plugin(CHAIN_ID.PLUGIN.HTML_PREFETCH).use(import_builder_shared.HTMLPreloadOrPrefetchPlugin, [
|
|
37
|
-
prefetch,
|
|
38
|
-
"prefetch",
|
|
39
|
-
HtmlPlugin,
|
|
40
|
-
HTMLCount
|
|
41
|
-
]);
|
|
42
|
-
}
|
|
43
|
-
if (preload) {
|
|
44
|
-
chain.plugin(CHAIN_ID.PLUGIN.HTML_PRELOAD).use(import_builder_shared.HTMLPreloadOrPrefetchPlugin, [
|
|
45
|
-
preload,
|
|
46
|
-
"preload",
|
|
47
|
-
HtmlPlugin,
|
|
48
|
-
HTMLCount
|
|
49
|
-
]);
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
55
|
-
0 && (module.exports = {
|
|
56
|
-
builderPluginPreloadOrPrefetch
|
|
57
|
-
});
|
package/dist/plugins/rem.d.ts
DELETED
package/dist/plugins/rem.js
DELETED
|
@@ -1,106 +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 rem_exports = {};
|
|
30
|
-
__export(rem_exports, {
|
|
31
|
-
builderPluginRem: () => builderPluginRem
|
|
32
|
-
});
|
|
33
|
-
module.exports = __toCommonJS(rem_exports);
|
|
34
|
-
var import_lodash = __toESM(require("@modern-js/utils/lodash"));
|
|
35
|
-
var import_builder_shared = require("@modern-js/builder-shared");
|
|
36
|
-
const defaultOptions = {
|
|
37
|
-
enableRuntime: true,
|
|
38
|
-
rootFontSize: 50
|
|
39
|
-
};
|
|
40
|
-
const builderPluginRem = () => ({
|
|
41
|
-
name: "builder-plugin-rem",
|
|
42
|
-
pre: [
|
|
43
|
-
"builder-plugin-css",
|
|
44
|
-
"builder-plugin-less",
|
|
45
|
-
"builder-plugin-sass",
|
|
46
|
-
"builder-plugin-stylus"
|
|
47
|
-
],
|
|
48
|
-
setup(api) {
|
|
49
|
-
api.modifyBundlerChain(async (chain, { CHAIN_ID, isServer, isWebWorker, HtmlPlugin }) => {
|
|
50
|
-
const config = api.getNormalizedConfig();
|
|
51
|
-
const { output: { convertToRem } } = config;
|
|
52
|
-
if (!convertToRem || isServer || isWebWorker) {
|
|
53
|
-
return;
|
|
54
|
-
}
|
|
55
|
-
const userOptions = {
|
|
56
|
-
...defaultOptions,
|
|
57
|
-
...typeof convertToRem === "boolean" ? {} : convertToRem
|
|
58
|
-
};
|
|
59
|
-
const { default: PxToRemPlugin } = await Promise.resolve().then(() => __toESM(require((0, import_builder_shared.getSharedPkgCompiledPath)("postcss-pxtorem"))));
|
|
60
|
-
const applyRules = [
|
|
61
|
-
CHAIN_ID.RULE.CSS,
|
|
62
|
-
CHAIN_ID.RULE.LESS,
|
|
63
|
-
CHAIN_ID.RULE.SASS,
|
|
64
|
-
CHAIN_ID.RULE.STYLUS
|
|
65
|
-
];
|
|
66
|
-
const getPxToRemPlugin = () => PxToRemPlugin({
|
|
67
|
-
rootValue: userOptions.rootFontSize,
|
|
68
|
-
unitPrecision: 5,
|
|
69
|
-
propList: [
|
|
70
|
-
"*"
|
|
71
|
-
],
|
|
72
|
-
...import_lodash.default.cloneDeep(userOptions.pxtorem || {})
|
|
73
|
-
});
|
|
74
|
-
applyRules.forEach((name) => {
|
|
75
|
-
chain.module.rules.has(name) && chain.module.rule(name).use(CHAIN_ID.USE.POSTCSS).tap((options = {}) => {
|
|
76
|
-
var _options_postcssOptions;
|
|
77
|
-
return {
|
|
78
|
-
...options,
|
|
79
|
-
postcssOptions: {
|
|
80
|
-
...options.postcssOptions || {},
|
|
81
|
-
plugins: [
|
|
82
|
-
...((_options_postcssOptions = options.postcssOptions) === null || _options_postcssOptions === void 0 ? void 0 : _options_postcssOptions.plugins) || [],
|
|
83
|
-
getPxToRemPlugin()
|
|
84
|
-
]
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
});
|
|
88
|
-
});
|
|
89
|
-
if (!userOptions.enableRuntime) {
|
|
90
|
-
return;
|
|
91
|
-
}
|
|
92
|
-
const entries = Object.keys(chain.entryPoints.entries() || {});
|
|
93
|
-
const distDir = (0, import_builder_shared.getDistPath)(config.output, "js");
|
|
94
|
-
chain.plugin(CHAIN_ID.PLUGIN.AUTO_SET_ROOT_SIZE).use(import_builder_shared.AutoSetRootFontSizePlugin, [
|
|
95
|
-
userOptions,
|
|
96
|
-
entries,
|
|
97
|
-
HtmlPlugin,
|
|
98
|
-
distDir
|
|
99
|
-
]);
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
});
|
|
103
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
104
|
-
0 && (module.exports = {
|
|
105
|
-
builderPluginRem
|
|
106
|
-
});
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { type BuilderPlugin } from '@modern-js/builder-shared';
|
|
2
|
-
import type { BuilderPluginAPI as WebpackBuilderPluginAPI } from '@modern-js/builder-webpack-provider';
|
|
3
|
-
import type { BuilderPluginAPI as RspackBuilderPluginAPI } from '@modern-js/builder-rspack-provider';
|
|
4
|
-
import { type Project, type ExtraMonorepoStrategies } from '@rsbuild/monorepo-utils';
|
|
5
|
-
export declare const pluginName = "builder-plugin-source-build";
|
|
6
|
-
export declare const getSourceInclude: (options: {
|
|
7
|
-
projects: Project[];
|
|
8
|
-
sourceField: string;
|
|
9
|
-
}) => Promise<string[]>;
|
|
10
|
-
export interface PluginSourceBuildOptions {
|
|
11
|
-
projectName?: string;
|
|
12
|
-
sourceField?: string;
|
|
13
|
-
extraMonorepoStrategies?: ExtraMonorepoStrategies;
|
|
14
|
-
}
|
|
15
|
-
export declare function builderPluginSourceBuild(options?: PluginSourceBuildOptions): BuilderPlugin<WebpackBuilderPluginAPI | RspackBuilderPluginAPI>;
|
|
@@ -1,121 +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 sourceBuild_exports = {};
|
|
30
|
-
__export(sourceBuild_exports, {
|
|
31
|
-
builderPluginSourceBuild: () => builderPluginSourceBuild,
|
|
32
|
-
getSourceInclude: () => getSourceInclude,
|
|
33
|
-
pluginName: () => pluginName
|
|
34
|
-
});
|
|
35
|
-
module.exports = __toCommonJS(sourceBuild_exports);
|
|
36
|
-
var import_builder_shared = require("@modern-js/builder-shared");
|
|
37
|
-
var import_monorepo_utils = require("@rsbuild/monorepo-utils");
|
|
38
|
-
var import_utils = require("@modern-js/utils");
|
|
39
|
-
var import_path = __toESM(require("path"));
|
|
40
|
-
const log = (0, import_utils.debug)("BUILDER_PLUGIN_SOURCE_BUILD");
|
|
41
|
-
const pluginName = "builder-plugin-source-build";
|
|
42
|
-
const getSourceInclude = async (options) => {
|
|
43
|
-
const { projects, sourceField } = options;
|
|
44
|
-
const includes = [];
|
|
45
|
-
for (const project of projects) {
|
|
46
|
-
includes.push(...project.getSourceEntryPaths({
|
|
47
|
-
field: sourceField
|
|
48
|
-
}));
|
|
49
|
-
}
|
|
50
|
-
log(`get include projects: ${includes}`);
|
|
51
|
-
return includes;
|
|
52
|
-
};
|
|
53
|
-
function builderPluginSourceBuild(options) {
|
|
54
|
-
const { projectName, sourceField = "source", extraMonorepoStrategies } = options !== null && options !== void 0 ? options : {};
|
|
55
|
-
return {
|
|
56
|
-
name: pluginName,
|
|
57
|
-
async setup(api) {
|
|
58
|
-
const projectRootPath = api.context.rootPath;
|
|
59
|
-
let projects = [];
|
|
60
|
-
if (api.context.bundlerType === "webpack") {
|
|
61
|
-
api.modifyBuilderConfig(async (config) => {
|
|
62
|
-
var _config_experiments;
|
|
63
|
-
const { sourceBuild } = (_config_experiments = config.experiments) !== null && _config_experiments !== void 0 ? _config_experiments : {};
|
|
64
|
-
if (!sourceBuild) {
|
|
65
|
-
return;
|
|
66
|
-
}
|
|
67
|
-
projects = await (0, import_monorepo_utils.getDependentProjects)(projectName || projectRootPath, {
|
|
68
|
-
cwd: projectRootPath,
|
|
69
|
-
recursive: true,
|
|
70
|
-
filter: (0, import_monorepo_utils.filterByField)(sourceField),
|
|
71
|
-
extraMonorepoStrategies
|
|
72
|
-
});
|
|
73
|
-
const includes = await getSourceInclude({
|
|
74
|
-
projects,
|
|
75
|
-
sourceField
|
|
76
|
-
});
|
|
77
|
-
var _config_source;
|
|
78
|
-
config.source = (_config_source = config.source) !== null && _config_source !== void 0 ? _config_source : {};
|
|
79
|
-
var _config_source_include;
|
|
80
|
-
config.source.include = [
|
|
81
|
-
...(_config_source_include = config.source.include) !== null && _config_source_include !== void 0 ? _config_source_include : [],
|
|
82
|
-
...includes
|
|
83
|
-
];
|
|
84
|
-
});
|
|
85
|
-
api.modifyWebpackChain((chain, { CHAIN_ID }) => {
|
|
86
|
-
const { experiments: { sourceBuild }, tools: { tsLoader } } = api.getNormalizedConfig();
|
|
87
|
-
if (!sourceBuild) {
|
|
88
|
-
return;
|
|
89
|
-
}
|
|
90
|
-
const useTsLoader = Boolean(tsLoader);
|
|
91
|
-
chain.module.rule(useTsLoader ? CHAIN_ID.RULE.TS : CHAIN_ID.RULE.JS).resolve.mainFields.merge([
|
|
92
|
-
sourceField,
|
|
93
|
-
"..."
|
|
94
|
-
]);
|
|
95
|
-
chain.module.rule(useTsLoader ? CHAIN_ID.RULE.TS : CHAIN_ID.RULE.JS).resolve.merge({
|
|
96
|
-
conditionNames: [
|
|
97
|
-
"...",
|
|
98
|
-
sourceField
|
|
99
|
-
]
|
|
100
|
-
});
|
|
101
|
-
const { TS_CONFIG_PATHS } = CHAIN_ID.RESOLVE_PLUGIN;
|
|
102
|
-
if (chain.resolve.plugins.has(TS_CONFIG_PATHS)) {
|
|
103
|
-
chain.resolve.plugin(TS_CONFIG_PATHS).tap((options2) => {
|
|
104
|
-
const references = projects.map((project) => import_path.default.join(project.dir, import_builder_shared.TS_CONFIG_FILE)).filter((filePath) => import_utils.fs.existsSync(filePath)).map((filePath) => import_path.default.relative(projectRootPath, filePath));
|
|
105
|
-
return options2.map((option) => ({
|
|
106
|
-
...option,
|
|
107
|
-
references
|
|
108
|
-
}));
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
117
|
-
0 && (module.exports = {
|
|
118
|
-
builderPluginSourceBuild,
|
|
119
|
-
getSourceInclude,
|
|
120
|
-
pluginName
|
|
121
|
-
});
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { type DefaultBuilderPlugin } from '@modern-js/builder-shared';
|
|
2
|
-
/** Expect to match path just like "./node_modules/react-router/" */
|
|
3
|
-
export declare const createDependenciesRegExp: (...dependencies: (string | RegExp)[]) => RegExp;
|
|
4
|
-
export declare function builderPluginSplitChunks(): DefaultBuilderPlugin;
|