vite-plugin-react-server 0.3.11 → 0.3.12
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/dist/package.json +15 -11
- package/dist/plugin/checkFilesExist.d.ts +2 -2
- package/dist/plugin/checkFilesExist.d.ts.map +1 -1
- package/dist/plugin/checkFilesExist.js +39 -57
- package/dist/plugin/checkFilesExist.js.map +1 -1
- package/dist/plugin/collect-css-manifest.d.ts.map +1 -1
- package/dist/plugin/collect-css-manifest.js +5 -0
- package/dist/plugin/collect-css-manifest.js.map +1 -1
- package/dist/plugin/components.js +10 -15
- package/dist/plugin/config/createModuleIdGenerator.js +1 -1
- package/dist/plugin/config/createModuleIdGenerator.js.map +1 -1
- package/dist/plugin/config/defaults.d.ts +5 -14
- package/dist/plugin/config/defaults.d.ts.map +1 -1
- package/dist/plugin/config/defaults.js +12 -12
- package/dist/plugin/config/defaults.js.map +1 -1
- package/dist/plugin/config/getPaths.js +1 -1
- package/dist/plugin/config/resolveOptions.d.ts.map +1 -1
- package/dist/plugin/config/resolveOptions.js +73 -52
- package/dist/plugin/config/resolveOptions.js.map +1 -1
- package/dist/plugin/config/resolveUserConfig.d.ts.map +1 -1
- package/dist/plugin/config/resolveUserConfig.js +53 -65
- package/dist/plugin/config/resolveUserConfig.js.map +1 -1
- package/dist/plugin/helpers/getBundleManifest.d.ts +6 -1
- package/dist/plugin/helpers/getBundleManifest.d.ts.map +1 -1
- package/dist/plugin/helpers/getBundleManifest.js +48 -19
- package/dist/plugin/helpers/getBundleManifest.js.map +1 -1
- package/dist/plugin/helpers/inputNormalizer.d.ts +1 -2
- package/dist/plugin/helpers/inputNormalizer.d.ts.map +1 -1
- package/dist/plugin/helpers/inputNormalizer.js +52 -46
- package/dist/plugin/helpers/inputNormalizer.js.map +1 -1
- package/dist/plugin/helpers/tryManifest.d.ts +1 -1
- package/dist/plugin/helpers/tryManifest.d.ts.map +1 -1
- package/dist/plugin/helpers/tryManifest.js.map +1 -1
- package/dist/plugin/loader/createBuildLoader.d.ts +1 -1
- package/dist/plugin/loader/createBuildLoader.d.ts.map +1 -1
- package/dist/plugin/loader/createBuildLoader.js +29 -26
- package/dist/plugin/loader/createBuildLoader.js.map +1 -1
- package/dist/plugin/loader/css-loader.d.ts +16 -0
- package/dist/plugin/loader/css-loader.d.ts.map +1 -0
- package/dist/plugin/loader/css-loader.js +70 -0
- package/dist/plugin/loader/css-loader.js.map +1 -0
- package/dist/plugin/loader/react-loader.d.ts +17 -0
- package/dist/plugin/loader/react-loader.d.ts.map +1 -0
- package/dist/plugin/loader/react-loader.js +647 -0
- package/dist/plugin/loader/react-loader.js.map +1 -0
- package/dist/plugin/loader/rsc/messageHandler.d.ts +2 -0
- package/dist/plugin/loader/rsc/messageHandler.d.ts.map +1 -0
- package/dist/plugin/loader/rsc/messageHandler.js +1 -0
- package/dist/plugin/loader/rsc/rsc-worker.development.d.ts +2 -0
- package/dist/plugin/loader/rsc/rsc-worker.development.d.ts.map +1 -0
- package/dist/plugin/loader/rsc/rsc-worker.development.js +1 -0
- package/dist/plugin/react-client/index.js +2 -2
- package/dist/plugin/react-client/index.js.map +1 -1
- package/dist/plugin/react-client/plugin.d.ts.map +1 -1
- package/dist/plugin/react-client/plugin.js +202 -25
- package/dist/plugin/react-client/plugin.js.map +1 -1
- package/dist/plugin/react-server/createHandler.d.ts.map +1 -1
- package/dist/plugin/react-server/createHandler.js +10 -4
- package/dist/plugin/react-server/createHandler.js.map +1 -1
- package/dist/plugin/react-server/createRscStream.d.ts +15 -3
- package/dist/plugin/react-server/createRscStream.d.ts.map +1 -1
- package/dist/plugin/react-server/createRscStream.js +52 -49
- package/dist/plugin/react-server/createRscStream.js.map +1 -1
- package/dist/plugin/react-server/plugin.d.ts.map +1 -1
- package/dist/plugin/react-server/plugin.js +24 -20
- package/dist/plugin/react-server/plugin.js.map +1 -1
- package/dist/plugin/transformer/plugin.d.ts.map +1 -1
- package/dist/plugin/transformer/plugin.js +65 -52
- package/dist/plugin/transformer/plugin.js.map +1 -1
- package/dist/plugin/types.d.ts +5 -0
- package/dist/plugin/types.d.ts.map +1 -1
- package/dist/plugin/utils/logger.d.ts +9 -0
- package/dist/plugin/utils/logger.d.ts.map +1 -0
- package/dist/plugin/utils/logger.js +68 -0
- package/dist/plugin/utils/logger.js.map +1 -0
- package/dist/plugin/worker/createWorker.d.ts +1 -0
- package/dist/plugin/worker/createWorker.d.ts.map +1 -1
- package/dist/plugin/worker/createWorker.js +23 -36
- package/dist/plugin/worker/createWorker.js.map +1 -1
- package/dist/plugin/worker/html/html-worker.production.js +5 -1
- package/dist/plugin/worker/html/html-worker.production.js.map +1 -1
- package/dist/plugin/worker/html/messageHandler.d.ts.map +1 -1
- package/dist/plugin/worker/html/messageHandler.js +10 -19
- package/dist/plugin/worker/html/messageHandler.js.map +1 -1
- package/dist/plugin/worker/html/renderPages.d.ts +2 -2
- package/dist/plugin/worker/html/renderPages.d.ts.map +1 -1
- package/dist/plugin/worker/html/renderPages.js +130 -131
- package/dist/plugin/worker/html/renderPages.js.map +1 -1
- package/dist/plugin/worker/rsc/index.d.ts +1 -3
- package/dist/plugin/worker/rsc/index.d.ts.map +1 -1
- package/dist/plugin/worker/rsc/index.js +1 -9
- package/dist/plugin/worker/rsc/index.js.map +1 -1
- package/dist/plugin/worker/rsc/messageHandler.d.ts +3 -0
- package/dist/plugin/worker/rsc/messageHandler.d.ts.map +1 -0
- package/dist/plugin/worker/rsc/messageHandler.js +107 -0
- package/dist/plugin/worker/rsc/messageHandler.js.map +1 -0
- package/dist/plugin/worker/rsc/plugin.d.ts.map +1 -1
- package/dist/plugin/worker/rsc/plugin.js +74 -80
- package/dist/plugin/worker/rsc/rsc-worker.development.d.ts +32 -0
- package/dist/plugin/worker/rsc/rsc-worker.development.d.ts.map +1 -0
- package/dist/plugin/worker/rsc/rsc-worker.development.js +43 -0
- package/dist/plugin/worker/rsc/rsc-worker.development.js.map +1 -0
- package/dist/plugin/worker/rsc/rsc-worker.js +4 -106
- package/dist/plugin/worker/rsc/rsc-worker.production.d.ts +2 -0
- package/dist/plugin/worker/rsc/rsc-worker.production.d.ts.map +1 -0
- package/dist/plugin/worker/rsc/rsc-worker.production.js +14 -0
- package/dist/plugin/worker/rsc/rsc-worker.production.js.map +1 -0
- package/dist/plugin/worker/rsc/state.d.ts +11 -0
- package/dist/plugin/worker/rsc/state.d.ts.map +1 -0
- package/dist/plugin/worker/rsc/state.js +12 -0
- package/dist/plugin/worker/rsc/state.js.map +1 -0
- package/dist/plugin/worker/types.d.ts +60 -46
- package/dist/plugin/worker/types.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +15 -11
- package/plugin/checkFilesExist.ts +42 -62
- package/plugin/collect-css-manifest.ts +5 -1
- package/plugin/config/createModuleIdGenerator.ts +1 -1
- package/plugin/config/defaults.ts +13 -15
- package/plugin/config/resolveOptions.ts +134 -76
- package/plugin/config/resolveUserConfig.ts +75 -76
- package/plugin/helpers/getBundleManifest.ts +69 -31
- package/plugin/helpers/inputNormalizer.ts +82 -70
- package/plugin/helpers/tryManifest.ts +1 -1
- package/plugin/loader/createBuildLoader.ts +38 -41
- package/plugin/loader/css-loader.ts +96 -0
- package/plugin/loader/react-loader.ts +945 -0
- package/plugin/loader/rsc/messageHandler.tsx +1 -0
- package/plugin/loader/rsc/rsc-worker.development.ts +1 -0
- package/plugin/react-client/index.ts +1 -1
- package/plugin/react-client/plugin.ts +266 -41
- package/plugin/react-server/createHandler.ts +9 -5
- package/plugin/react-server/createRscStream.ts +75 -54
- package/plugin/react-server/plugin.ts +26 -21
- package/plugin/transformer/plugin.ts +67 -76
- package/plugin/types/global.d.ts +8 -0
- package/plugin/types.ts +2 -0
- package/plugin/utils/logger.ts +52 -0
- package/plugin/worker/createWorker.ts +43 -44
- package/plugin/worker/html/html-worker.production.tsx +7 -2
- package/plugin/worker/html/messageHandler.ts +13 -21
- package/plugin/worker/html/renderPages.ts +146 -179
- package/plugin/worker/rsc/index.ts +4 -13
- package/plugin/worker/rsc/messageHandler.tsx +143 -0
- package/plugin/worker/rsc/plugin.ts +38 -37
- package/plugin/worker/rsc/rsc-worker.development.ts +107 -0
- package/plugin/worker/rsc/rsc-worker.production.ts +13 -0
- package/plugin/worker/rsc/rsc-worker.tsx +5 -128
- package/plugin/worker/rsc/state.ts +37 -0
- package/plugin/worker/types.ts +79 -55
- package/scripts/check-react-version.mjs +17 -7
- package/scripts/react+0.0.0-experimental-b3a95caf-20250113.patch +143 -4170
- package/scripts/react-dom+0.0.0-experimental-b3a95caf-20250113.patch +14271 -90079
- package/dist/plugin/components.js.map +0 -1
- package/dist/plugin/helpers/createClientInputNormalizer.d.ts +0 -8
- package/dist/plugin/helpers/createClientInputNormalizer.d.ts.map +0 -1
- package/dist/plugin/helpers/createClientInputNormalizer.js +0 -35
- package/dist/plugin/helpers/createServerInputNormalizer.d.ts +0 -9
- package/dist/plugin/helpers/createServerInputNormalizer.d.ts.map +0 -1
- package/dist/plugin/helpers/createServerInputNormalizer.js +0 -37
- package/dist/plugin/helpers/createStaticInputNormalizer.d.ts +0 -7
- package/dist/plugin/helpers/createStaticInputNormalizer.d.ts.map +0 -1
- package/dist/plugin/helpers/createStaticInputNormalizer.js +0 -18
- package/dist/plugin/helpers/getModuleManifest.d.ts +0 -17
- package/dist/plugin/helpers/getModuleManifest.d.ts.map +0 -1
- package/dist/plugin/helpers/getModuleManifest.js +0 -23
- package/dist/plugin/helpers/inputNormalizerWorker.d.ts +0 -12
- package/dist/plugin/helpers/inputNormalizerWorker.d.ts.map +0 -1
- package/dist/plugin/helpers/inputNormalizerWorker.js +0 -33
- package/dist/plugin/helpers/normalizedRelativePath.d.ts +0 -11
- package/dist/plugin/helpers/normalizedRelativePath.d.ts.map +0 -1
- package/dist/plugin/helpers/normalizedRelativePath.js +0 -36
- package/dist/plugin/helpers/resolveFilePath.d.ts +0 -13
- package/dist/plugin/helpers/resolveFilePath.d.ts.map +0 -1
- package/dist/plugin/helpers/resolveFilePath.js +0 -74
- package/dist/plugin/helpers/resolveWorkerModule.d.ts +0 -6
- package/dist/plugin/helpers/resolveWorkerModule.d.ts.map +0 -1
- package/dist/plugin/helpers/resolveWorkerModule.js +0 -24
- package/dist/plugin/helpers/validateModuleBase.d.ts +0 -3
- package/dist/plugin/helpers/validateModuleBase.d.ts.map +0 -1
- package/dist/plugin/helpers/validateModuleBase.js +0 -16
- package/dist/plugin/helpers/validateResolvedConfig.d.ts +0 -3
- package/dist/plugin/helpers/validateResolvedConfig.d.ts.map +0 -1
- package/dist/plugin/helpers/validateResolvedConfig.js +0 -17
- package/dist/plugin/transformer/transformer-client-components.d.ts +0 -30
- package/dist/plugin/transformer/transformer-client-components.d.ts.map +0 -1
- package/dist/plugin/transformer/transformer-client-components.js +0 -122
- package/dist/plugin/transformer/transformer-client-components.js.map +0 -1
- package/dist/plugin/transformer/transformer-server-actions.d.ts +0 -29
- package/dist/plugin/transformer/transformer-server-actions.d.ts.map +0 -1
- package/dist/plugin/transformer/transformer-server-actions.js +0 -90
- package/dist/plugin/worker/rsc/createRscStream.d.ts +0 -5
- package/dist/plugin/worker/rsc/createRscStream.d.ts.map +0 -1
- package/dist/plugin/worker/rsc/createRscStream.js +0 -39
- package/dist/plugin/worker/rsc/createRscStream.js.map +0 -1
- package/dist/plugin/worker/rsc/development.d.ts +0 -5
- package/dist/plugin/worker/rsc/development.d.ts.map +0 -1
- package/dist/plugin/worker/rsc/development.js +0 -13
- package/dist/plugin/worker/rsc/development.js.map +0 -1
- package/dist/plugin/worker/rsc/plugin.js.map +0 -1
- package/dist/plugin/worker/rsc/production.d.ts +0 -5
- package/dist/plugin/worker/rsc/production.d.ts.map +0 -1
- package/dist/plugin/worker/rsc/production.js +0 -13
- package/dist/plugin/worker/rsc/production.js.map +0 -1
- package/plugin/helpers/createClientInputNormalizer.ts +0 -48
- package/plugin/helpers/createServerInputNormalizer.ts +0 -52
- package/plugin/helpers/createStaticInputNormalizer.ts +0 -26
- package/plugin/helpers/getModuleManifest.ts +0 -36
- package/plugin/helpers/inputNormalizerWorker.ts +0 -52
- package/plugin/helpers/normalizedRelativePath.ts +0 -59
- package/plugin/helpers/resolveFilePath.ts +0 -108
- package/plugin/helpers/resolveWorkerModule.ts +0 -41
- package/plugin/helpers/validateModuleBase.ts +0 -30
- package/plugin/helpers/validateResolvedConfig.ts +0 -21
- package/plugin/transformer/transformer-client-components.ts +0 -168
- package/plugin/transformer/transformer-server-actions.ts +0 -125
- package/plugin/worker/rsc/createRscStream.ts +0 -42
- package/plugin/worker/rsc/development.ts +0 -6
- package/plugin/worker/rsc/production.ts +0 -6
- package/scripts/react-server-dom-esm+0.0.1.patch +0 -24775
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
* MIT License
|
|
5
5
|
*/
|
|
6
6
|
import { DEFAULT_CONFIG } from './defaults.js';
|
|
7
|
-
import 'path';
|
|
8
7
|
import { createModuleIdGenerator } from './createModuleIdGenerator.js';
|
|
8
|
+
import 'vite';
|
|
9
9
|
|
|
10
10
|
const resolveAutoDiscoverMatcher = (options, fallback) => {
|
|
11
11
|
if (!options) {
|
|
@@ -24,9 +24,28 @@ const resolveAutoDiscoverMatcher = (options, fallback) => {
|
|
|
24
24
|
return (path) => options.test(path);
|
|
25
25
|
}
|
|
26
26
|
};
|
|
27
|
+
const addJS = (path) => {
|
|
28
|
+
if (path.endsWith(".js")) return path;
|
|
29
|
+
if (path.endsWith("/.")) return path.slice(0, -2) + ".js";
|
|
30
|
+
if (path.endsWith(".")) return path + "js";
|
|
31
|
+
return path + ".js";
|
|
32
|
+
};
|
|
33
|
+
const handleSearchQuery = (path) => {
|
|
34
|
+
const searchQuery = path.split("?")[1];
|
|
35
|
+
if (!searchQuery) return path;
|
|
36
|
+
const folder = path.split("/").slice(0, -1).join("/");
|
|
37
|
+
const filename = path.split("/").pop();
|
|
38
|
+
return `${folder}/${filename}?${searchQuery}`;
|
|
39
|
+
};
|
|
40
|
+
const applyPattern = (path, pattern, fallback) => {
|
|
41
|
+
return path;
|
|
42
|
+
};
|
|
27
43
|
const resolveOptions = (options, isClient = false) => {
|
|
28
44
|
const projectRoot = options.projectRoot ?? process.cwd();
|
|
29
|
-
const {
|
|
45
|
+
const {
|
|
46
|
+
pageExportName = DEFAULT_CONFIG.PAGE_EXPORT_NAME,
|
|
47
|
+
propsExportName = DEFAULT_CONFIG.PROPS_EXPORT_NAME
|
|
48
|
+
} = options;
|
|
30
49
|
const pages = typeof options.build?.pages === "function" ? options.build.pages : Array.isArray(options.build?.pages) ? options.build.pages : DEFAULT_CONFIG.BUILD.pages;
|
|
31
50
|
let client = options.build?.client ?? DEFAULT_CONFIG.BUILD.client;
|
|
32
51
|
let server = options.build?.server ?? DEFAULT_CONFIG.BUILD.server;
|
|
@@ -38,6 +57,18 @@ const resolveOptions = (options, isClient = false) => {
|
|
|
38
57
|
if (!n) return "";
|
|
39
58
|
return n.startsWith(moduleBase + "/") ? n.slice(moduleBase.length + 1) : n;
|
|
40
59
|
};
|
|
60
|
+
const hasWrongRoot = !projectRoot.startsWith("/");
|
|
61
|
+
if (hasWrongRoot) {
|
|
62
|
+
console.warn("projectRoot is not a full path", projectRoot);
|
|
63
|
+
}
|
|
64
|
+
const wrongRoot = !hasWrongRoot ? projectRoot.slice(1) : projectRoot;
|
|
65
|
+
const ensureNoRoot = (n) => {
|
|
66
|
+
if (!n) return "";
|
|
67
|
+
if (n.startsWith(wrongRoot)) {
|
|
68
|
+
return n.slice(wrongRoot.length + 1);
|
|
69
|
+
}
|
|
70
|
+
return n.startsWith(projectRoot + "/") ? n.slice(projectRoot.length + 1) : n;
|
|
71
|
+
};
|
|
41
72
|
const testModulePattern = resolveAutoDiscoverMatcher(
|
|
42
73
|
options.autoDiscover?.modulePattern,
|
|
43
74
|
DEFAULT_CONFIG.AUTO_DISCOVER.modulePattern
|
|
@@ -80,78 +111,66 @@ const resolveOptions = (options, isClient = false) => {
|
|
|
80
111
|
);
|
|
81
112
|
const preserveModulesRoot = options.build?.preserveModulesRoot ?? DEFAULT_CONFIG.BUILD.preserveModulesRoot;
|
|
82
113
|
const hashOption = typeof options.build?.hash === "string" ? options.build.hash : DEFAULT_CONFIG.BUILD.hash;
|
|
83
|
-
const hashString = hashOption === "" ? "" : `-[${hashOption}]`;
|
|
84
|
-
const hash = (n) => {
|
|
85
|
-
if (!n) return "";
|
|
86
|
-
if (hashString === "" || !isClient && !testClientComponents(n)) return n;
|
|
87
|
-
const extensionIndex = n.lastIndexOf(".");
|
|
88
|
-
if (extensionIndex !== -1 && !testClientComponents(n)) {
|
|
89
|
-
const extension = n.slice(extensionIndex);
|
|
90
|
-
const filename = n.slice(0, extensionIndex);
|
|
91
|
-
return filename + hashString + extension;
|
|
92
|
-
} else {
|
|
93
|
-
return n + hashString;
|
|
94
|
-
}
|
|
95
|
-
};
|
|
96
114
|
const getOutputPath = (n) => {
|
|
97
115
|
if (!n) return "";
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
116
|
+
let path = handleSearchQuery(n);
|
|
117
|
+
path = path.startsWith(moduleBase + "/") ? path.slice(moduleBase.length + 1) : path;
|
|
118
|
+
if (testVendor(path)) {
|
|
119
|
+
return path;
|
|
120
|
+
}
|
|
121
|
+
if (testCssModule(path)) {
|
|
122
|
+
return applyPattern(path, options.autoDiscover?.cssModulePattern);
|
|
101
123
|
}
|
|
102
124
|
if (testCss(path)) {
|
|
103
|
-
return
|
|
125
|
+
return applyPattern(path, options.autoDiscover?.cssPattern);
|
|
126
|
+
}
|
|
127
|
+
if (testClientComponents(path)) {
|
|
128
|
+
return applyPattern(path, options.autoDiscover?.clientComponents);
|
|
104
129
|
}
|
|
105
130
|
if (testHtml(path)) {
|
|
106
|
-
|
|
107
|
-
return `${path.replace(options.autoDiscover.htmlPattern, ".js")}`;
|
|
108
|
-
} else {
|
|
109
|
-
return `${path.replace(".html", "")}`;
|
|
110
|
-
}
|
|
131
|
+
return applyPattern(path, options.autoDiscover?.htmlPattern);
|
|
111
132
|
}
|
|
112
133
|
if (testJson(path)) {
|
|
113
|
-
|
|
114
|
-
return `${path.replace(options.autoDiscover.jsonPattern, ".js")}`;
|
|
115
|
-
} else {
|
|
116
|
-
return `${path}`;
|
|
117
|
-
}
|
|
134
|
+
return applyPattern(path, options.autoDiscover?.jsonPattern);
|
|
118
135
|
}
|
|
119
136
|
if (testPropsPattern(path)) {
|
|
120
|
-
return
|
|
137
|
+
return applyPattern(
|
|
138
|
+
path,
|
|
139
|
+
options.autoDiscover?.propsPattern,
|
|
140
|
+
options.propsExportName?.toLowerCase() ?? DEFAULT_CONFIG.PROPS_EXPORT_NAME.toLowerCase()
|
|
141
|
+
);
|
|
121
142
|
}
|
|
122
143
|
if (testPagePattern(path)) {
|
|
123
|
-
return
|
|
144
|
+
return applyPattern(
|
|
145
|
+
path,
|
|
146
|
+
options.autoDiscover?.pagePattern,
|
|
147
|
+
options.pageExportName?.toLowerCase() ?? DEFAULT_CONFIG.PAGE_EXPORT_NAME.toLowerCase()
|
|
148
|
+
);
|
|
124
149
|
}
|
|
125
150
|
if (testServerFunctions(path)) {
|
|
126
|
-
return
|
|
151
|
+
return applyPattern(path, options.autoDiscover?.serverFunctions);
|
|
127
152
|
}
|
|
128
|
-
if (
|
|
129
|
-
|
|
130
|
-
return `${path.replace(options.autoDiscover.cssModulePattern, ".js")}`;
|
|
131
|
-
} else {
|
|
132
|
-
return `${path.replace(".css.js", ".js")}`;
|
|
133
|
-
}
|
|
153
|
+
if (testModulePattern(path)) {
|
|
154
|
+
return path;
|
|
134
155
|
}
|
|
135
|
-
|
|
136
|
-
return `vendor`;
|
|
137
|
-
}
|
|
138
|
-
return `${path}`;
|
|
156
|
+
return path;
|
|
139
157
|
};
|
|
140
158
|
const entryFile = (n) => {
|
|
141
|
-
if (
|
|
142
|
-
const
|
|
143
|
-
|
|
159
|
+
if (testVendor(n.name)) {
|
|
160
|
+
const search = n.facadeModuleId?.split("?")[1];
|
|
161
|
+
if (search) {
|
|
162
|
+
return `${n.name}.${search}.js`;
|
|
163
|
+
} else {
|
|
164
|
+
return n.name + ".js";
|
|
165
|
+
}
|
|
144
166
|
}
|
|
145
|
-
|
|
146
|
-
return result;
|
|
167
|
+
return addJS(getOutputPath(ensureModuleBase(ensureNoRoot(n.name))));
|
|
147
168
|
};
|
|
148
169
|
const chunkFile = (n) => {
|
|
149
|
-
|
|
150
|
-
return result;
|
|
170
|
+
return addJS(getOutputPath(ensureModuleBase(ensureNoRoot("_" + n.name))));
|
|
151
171
|
};
|
|
152
172
|
const assetFile = (n) => {
|
|
153
|
-
|
|
154
|
-
return result;
|
|
173
|
+
return getOutputPath(ensureModuleBase(ensureNoRoot(n.names[0])));
|
|
155
174
|
};
|
|
156
175
|
const build = typeof options.build === "object" && options.build !== null ? {
|
|
157
176
|
pages,
|
|
@@ -229,7 +248,9 @@ const resolveOptions = (options, isClient = false) => {
|
|
|
229
248
|
moduleBaseExceptions: options.moduleBaseExceptions ?? [],
|
|
230
249
|
autoDiscover,
|
|
231
250
|
pipableStreamOptions: options.pipableStreamOptions ?? {
|
|
232
|
-
bootstrapModules: [
|
|
251
|
+
bootstrapModules: [
|
|
252
|
+
options.clientEntry ?? DEFAULT_CONFIG.CLIENT_ENTRY
|
|
253
|
+
]
|
|
233
254
|
}
|
|
234
255
|
}
|
|
235
256
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveOptions.js","sources":["../../../plugin/config/resolveOptions.ts"],"sourcesContent":["import type { PreRenderedAsset } from \"rollup\";\nimport type { PreRenderedChunk } from \"rollup\";\nimport type { StreamPluginOptions, ResolvedUserOptions } from \"../types.js\";\nimport { DEFAULT_CONFIG } from \"./defaults.js\";\nimport { join } from \"path\";\nimport { createModuleIdGenerator } from \"./createModuleIdGenerator.js\";\n\nconst resolveAutoDiscoverMatcher = (\n options: undefined | string | RegExp | ((path: string) => boolean),\n fallback: RegExp | ((path: string) => boolean)\n) => {\n if (!options) {\n if (typeof fallback === \"function\") {\n return fallback;\n } else {\n return (path: string) => fallback.test(path);\n }\n }\n if (typeof options === \"string\") {\n const matcher = new RegExp(options);\n return (path: string) => matcher.test(path);\n } else if (typeof options === \"function\") {\n return options;\n } else {\n return (path: string) => options.test(path);\n }\n};\n\nexport const resolveOptions = (\n options: StreamPluginOptions,\n isClient: boolean = false\n):\n | { type: \"success\"; userOptions: ResolvedUserOptions }\n | { type: \"error\"; error: Error } => {\n const projectRoot = options.projectRoot ?? process.cwd();\n const { pageExportName = DEFAULT_CONFIG.PAGE_EXPORT, propsExportName = DEFAULT_CONFIG.PROPS_EXPORT } = options;\n const pages =\n typeof options.build?.pages === \"function\"\n ? options.build.pages\n : Array.isArray(options.build?.pages)\n ? options.build.pages\n : DEFAULT_CONFIG.BUILD.pages;\n let client = options.build?.client ?? DEFAULT_CONFIG.BUILD.client;\n let server = options.build?.server ?? DEFAULT_CONFIG.BUILD.server;\n\n const api = options.build?.api ?? DEFAULT_CONFIG.BUILD.api;\n const staticBuild = options.build?.static ?? DEFAULT_CONFIG.BUILD.static;\n const outDir = options.build?.outDir ?? DEFAULT_CONFIG.BUILD.outDir;\n const assetsDir =\n options.build?.assetsDir ??\n `${DEFAULT_CONFIG.CLIENT_ASSETS_DIR}`;\n\n const ensureModuleBase = (n: string | null) => {\n if(!n) return '';\n return n.startsWith(moduleBase + \"/\") ? n.slice(moduleBase.length + 1) : n;\n }\n\n const testModulePattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.modulePattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.modulePattern\n );\n\n const testJson = resolveAutoDiscoverMatcher(\n options.autoDiscover?.jsonPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.jsonPattern\n );\n\n const testCss = resolveAutoDiscoverMatcher(\n options.autoDiscover?.cssPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.cssPattern\n );\n const testHtml = resolveAutoDiscoverMatcher(\n options.autoDiscover?.htmlPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.htmlPattern\n );\n const testClientComponents = resolveAutoDiscoverMatcher(\n options.autoDiscover?.clientComponents,\n DEFAULT_CONFIG.AUTO_DISCOVER.clientComponents\n );\n const testServerFunctions = resolveAutoDiscoverMatcher(\n options.autoDiscover?.serverFunctions,\n DEFAULT_CONFIG.AUTO_DISCOVER.serverFunctions\n );\n const testPropsPattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.propsPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.propsPattern\n );\n const testPagePattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.pagePattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.pagePattern\n );\n const testCssModule = resolveAutoDiscoverMatcher(\n options.autoDiscover?.cssModulePattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.cssModulePattern\n );\n const testVendor = resolveAutoDiscoverMatcher(\n options.autoDiscover?.vendorPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.vendorPattern\n );\n const preserveModulesRoot = options.build?.preserveModulesRoot ?? DEFAULT_CONFIG.BUILD.preserveModulesRoot;\n const hashOption = typeof options.build?.hash === \"string\" ? options.build.hash : DEFAULT_CONFIG.BUILD.hash\n const hashString = hashOption === '' ? '' : `-[${hashOption}]`;\n const hash = (n: string | null) => {\n if(!n) return '';\n if(hashString === '' || (!isClient && !testClientComponents(n))) return n;\n const extensionIndex = n.lastIndexOf('.') \n if(extensionIndex !== -1 && !testClientComponents(n)) {\n // put hash between extension and filename\n const extension = n.slice(extensionIndex)\n const filename = n.slice(0, extensionIndex)\n return filename + hashString + extension;\n } else {\n return n + hashString;\n }\n }\n\n const getOutputPath = (n: string | null) => {\n if(!n) return '';\n // Remove src/ prefix if present\n const path = n.startsWith(moduleBase + \"/\")\n ? n.slice(moduleBase.length + 1)\n : n;\n\n if (testClientComponents(path)) {\n return `${assetsDir}/${path}`; \n }\n if (testCss(path)) {\n return `${path}`; \n }\n if(testHtml(path)) {\n if(options.autoDiscover?.htmlPattern && typeof options.autoDiscover.htmlPattern !== \"function\") {\n // if it's not a function, use it as an option for replace\n return `${path.replace(options.autoDiscover.htmlPattern, '.js')}`;\n } else {\n return `${path.replace('.html', '')}`; \n }\n }\n if(testJson(path)) {\n if(options.autoDiscover?.jsonPattern && typeof options.autoDiscover.jsonPattern !== \"function\") {\n // if it's not a function, use it as an option for replace\n return `${path.replace(options.autoDiscover.jsonPattern, '.js')}`;\n } else {\n return `${path}`; \n }\n }\n if (testPropsPattern(path)) {\n return `${path}`; \n }\n if (testPagePattern(path)) {\n return `${path}`; \n }\n if (testServerFunctions(path)) {\n return `${api}/${path}`; // \n }\n if(testCssModule(path)) {\n if(options.autoDiscover?.cssModulePattern && typeof options.autoDiscover.cssModulePattern !== \"function\") {\n // if it's not a function, use it as an option for replace\n return `${path.replace(options.autoDiscover.cssModulePattern, '.js')}`;\n } else {\n return `${path.replace('.css.js', '.js')}`;\n }\n }\n if(testVendor(path)) {\n return `vendor`;\n }\n return `${path}`;\n };\n\n const entryFile = (n: PreRenderedChunk) => {\n if(testCss(n.name)) {\n // this is the css.js chunk for ssr, which (if we keep the .css) would go into client, this prevents that.\n const result = `${hash(getOutputPath(ensureModuleBase(n.name + '.js')))}`;\n return result;\n }\n const result = `${hash(getOutputPath(ensureModuleBase(n.name)))}.js`;\n return result;\n }\n\n const chunkFile = (n: PreRenderedChunk) => {\n const result = `${hash(getOutputPath(ensureModuleBase(n.name)))}.js`;\n return result;\n }\n\n const assetFile = (n: PreRenderedAsset) => {\n const result = `${hash(getOutputPath(ensureModuleBase(n.names[0])))}`;\n return result;\n }\n\n const build =\n typeof options.build === \"object\" && options.build !== null\n ? {\n pages,\n client,\n server,\n static: staticBuild,\n outDir,\n assetsDir,\n api,\n hash: hashOption,\n preserveModulesRoot,\n entryFile:\n typeof options.build?.entryFile === \"function\"\n ? options.build.entryFile\n : entryFile,\n chunkFile:\n typeof options.build?.chunkFile === \"function\"\n ? options.build.chunkFile\n : chunkFile,\n assetFile:\n typeof options.build?.assetFile === \"function\"\n ? options.build.assetFile\n : assetFile,\n }\n : {\n pages,\n client,\n server,\n static: staticBuild,\n outDir,\n assetsDir,\n api,\n hash: hashOption,\n preserveModulesRoot,\n entryFile,\n chunkFile,\n assetFile,\n };\n\n const moduleBase =\n typeof options.moduleBase === \"string\"\n ? options.moduleBase\n : DEFAULT_CONFIG.MODULE_BASE;\n const moduleBasePath =\n typeof options.moduleBasePath === \"string\"\n ? options.moduleBasePath\n : options.moduleBase.startsWith(\"/\")\n ? options.moduleBase\n : \"/\" + options.moduleBase;\n const moduleBaseURL =\n typeof options.moduleBaseURL === \"string\"\n ? options.moduleBaseURL\n : moduleBasePath ?? DEFAULT_CONFIG.MODULE_BASE_URL;\n \n const autoDiscover = {\n modulePattern: testModulePattern,\n cssPattern: testCss,\n jsonPattern: testJson,\n clientComponents: testClientComponents,\n serverFunctions: testServerFunctions,\n propsPattern: testPropsPattern,\n pagePattern: testPagePattern,\n cssModulePattern: testCssModule,\n vendorPattern: testVendor,\n };\n\n const moduleId = typeof options.moduleId === \"function\" ? options.moduleId : createModuleIdGenerator({\n isProduction: process.env['NODE_ENV'] === \"production\",\n inputRoot: projectRoot,\n client: client,\n server: server,\n moduleBase: moduleBase,\n preserveModulesRoot: preserveModulesRoot,\n removeExtension: DEFAULT_CONFIG.FILE_REGEX,\n imports: {},\n });\n\n try {\n return {\n type: \"success\",\n userOptions: {\n projectRoot,\n moduleId,\n moduleBase,\n moduleBasePath,\n moduleBaseURL,\n build: build,\n Page: options.Page ?? DEFAULT_CONFIG.PAGE,\n props: options.props ?? DEFAULT_CONFIG.PROPS,\n Html: options.Html ?? DEFAULT_CONFIG.HTML,\n pageExportName: pageExportName,\n propsExportName: propsExportName,\n collectCss: options.collectCss ?? DEFAULT_CONFIG.COLLECT_CSS,\n collectAssets: options.collectAssets ?? DEFAULT_CONFIG.COLLECT_ASSETS,\n htmlWorkerPath:\n options.htmlWorkerPath ?? DEFAULT_CONFIG.HTML_WORKER_PATH,\n rscWorkerPath: options.rscWorkerPath ?? DEFAULT_CONFIG.RSC_WORKER_PATH,\n loaderPath: options.loaderPath ?? DEFAULT_CONFIG.LOADER_PATH,\n clientEntry: options.clientEntry ?? DEFAULT_CONFIG.CLIENT_ENTRY,\n serverEntry: options.serverEntry ?? DEFAULT_CONFIG.SERVER_ENTRY,\n moduleBaseExceptions: options.moduleBaseExceptions ?? [],\n autoDiscover: autoDiscover,\n pipableStreamOptions: options.pipableStreamOptions ?? {\n bootstrapModules: [options.clientEntry ?? DEFAULT_CONFIG.CLIENT_ENTRY],\n },\n },\n };\n } catch (error) {\n return {\n type: \"error\",\n error:\n error instanceof Error ? error : new Error(\"Failed to resolve options\"),\n };\n }\n};\n"],"names":["result"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resolveOptions.js","sources":["../../../plugin/config/resolveOptions.ts"],"sourcesContent":["import type { PreRenderedAsset } from \"rollup\";\nimport type { PreRenderedChunk } from \"rollup\";\nimport type { StreamPluginOptions, ResolvedUserOptions } from \"../types.js\";\nimport { DEFAULT_CONFIG } from \"./defaults.js\";\nimport { createModuleIdGenerator } from \"./createModuleIdGenerator.js\";\nimport { normalizePath } from \"vite\";\n\nconst resolveAutoDiscoverMatcher = (\n options: undefined | string | RegExp | ((path: string) => boolean),\n fallback: RegExp | ((path: string) => boolean)\n) => {\n if (!options) {\n if (typeof fallback === \"function\") {\n return fallback;\n } else {\n return (path: string) => fallback.test(path);\n }\n }\n if (typeof options === \"string\") {\n const matcher = new RegExp(options);\n return (path: string) => matcher.test(path);\n } else if (typeof options === \"function\") {\n return options;\n } else {\n return (path: string) => options.test(path);\n }\n};\n\nconst addJS = (path: string) => {\n if (path.endsWith(\".js\")) return path;\n if (path.endsWith(\"/.\")) return path.slice(0, -2) + \".js\";\n if (path.endsWith(\".\")) return path + \"js\";\n return path + \".js\";\n};\n\nconst handleSearchQuery = (path: string) => {\n // make the query part of the name of the file so it's not ending up like index1, index2, etc.\n const searchQuery = path.split(\"?\")[1];\n if (!searchQuery) return path;\n // add the folder before the filename\n const folder = path.split(\"/\").slice(0, -1).join(\"/\");\n const filename = path.split(\"/\").pop();\n return `${folder}/${filename}?${searchQuery}`;\n};\n\nconst applyPattern = (\n path: string,\n pattern?: string | RegExp | ((path: string) => boolean) | undefined,\n fallback?: string | undefined\n) => {\n // TODO: What to actually do here? I guess we could replace the extension, but it's not needed since we map them from the manifest anyway.\n return path;\n};\n\nexport const resolveOptions = (\n options: StreamPluginOptions,\n isClient: boolean = false\n):\n | { type: \"success\"; userOptions: ResolvedUserOptions }\n | { type: \"error\"; error: Error } => {\n const projectRoot = options.projectRoot ?? process.cwd();\n const {\n pageExportName = DEFAULT_CONFIG.PAGE_EXPORT_NAME,\n propsExportName = DEFAULT_CONFIG.PROPS_EXPORT_NAME,\n } = options;\n const pages =\n typeof options.build?.pages === \"function\"\n ? options.build.pages\n : Array.isArray(options.build?.pages)\n ? options.build.pages\n : DEFAULT_CONFIG.BUILD.pages;\n let client = options.build?.client ?? DEFAULT_CONFIG.BUILD.client;\n let server = options.build?.server ?? DEFAULT_CONFIG.BUILD.server;\n\n const api = options.build?.api ?? DEFAULT_CONFIG.BUILD.api;\n const staticBuild = options.build?.static ?? DEFAULT_CONFIG.BUILD.static;\n const outDir = options.build?.outDir ?? DEFAULT_CONFIG.BUILD.outDir;\n const assetsDir =\n options.build?.assetsDir ?? `${DEFAULT_CONFIG.CLIENT_ASSETS_DIR}`;\n\n const ensureModuleBase = (n: string | null) => {\n if (!n) return \"\";\n return n.startsWith(moduleBase + \"/\") ? n.slice(moduleBase.length + 1) : n;\n };\n const hasWrongRoot = !projectRoot.startsWith(\"/\");\n if (hasWrongRoot) {\n console.warn(\"projectRoot is not a full path\", projectRoot);\n }\n const wrongRoot = !hasWrongRoot ? projectRoot.slice(1) : projectRoot;\n const ensureNoRoot = (n: string | null) => {\n if (!n) return \"\";\n if (n.startsWith(wrongRoot)) {\n return n.slice(wrongRoot.length + 1);\n }\n return n.startsWith(projectRoot + \"/\")\n ? n.slice(projectRoot.length + 1)\n : n;\n };\n\n const testModulePattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.modulePattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.modulePattern\n );\n\n const testJson = resolveAutoDiscoverMatcher(\n options.autoDiscover?.jsonPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.jsonPattern\n );\n\n const testCss = resolveAutoDiscoverMatcher(\n options.autoDiscover?.cssPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.cssPattern\n );\n const testHtml = resolveAutoDiscoverMatcher(\n options.autoDiscover?.htmlPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.htmlPattern\n );\n const testClientComponents = resolveAutoDiscoverMatcher(\n options.autoDiscover?.clientComponents,\n DEFAULT_CONFIG.AUTO_DISCOVER.clientComponents\n );\n const testServerFunctions = resolveAutoDiscoverMatcher(\n options.autoDiscover?.serverFunctions,\n DEFAULT_CONFIG.AUTO_DISCOVER.serverFunctions\n );\n const testPropsPattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.propsPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.propsPattern\n );\n const testPagePattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.pagePattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.pagePattern\n );\n const testCssModule = resolveAutoDiscoverMatcher(\n options.autoDiscover?.cssModulePattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.cssModulePattern\n );\n const testVendor = resolveAutoDiscoverMatcher(\n options.autoDiscover?.vendorPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.vendorPattern\n );\n const preserveModulesRoot =\n options.build?.preserveModulesRoot ??\n DEFAULT_CONFIG.BUILD.preserveModulesRoot;\n const hashOption =\n typeof options.build?.hash === \"string\"\n ? options.build.hash\n : DEFAULT_CONFIG.BUILD.hash;\n const hashString = hashOption === \"\" ? \"\" : `-[${hashOption}]`;\n const hash = (n: string | null) => {\n if (!n) return \"\";\n if (hashString === \"\") return n;\n const extensionIndex = n.lastIndexOf(\".\");\n if (extensionIndex !== -1) {\n // put hash between extension and filename\n const extension = n.slice(extensionIndex);\n const filename = n.slice(0, extensionIndex);\n return filename + hashString + extension;\n } else {\n return n + hashString;\n }\n };\n\n const getOutputPath = (n: string | null) => {\n if (!n) return \"\";\n let path = handleSearchQuery(n);\n // Remove src/ prefix if present\n path = path.startsWith(moduleBase + \"/\")\n ? path.slice(moduleBase.length + 1)\n : path;\n\n if (testVendor(path)) {\n return path;\n }\n \n if (testCssModule(path)) {\n // For CSS modules, keep the .css.js extension\n return applyPattern(path, options.autoDiscover?.cssModulePattern, \".css.js\");\n }\n \n if (testCss(path)) {\n // For regular CSS files, keep the .css extension\n return applyPattern(path, options.autoDiscover?.cssPattern, \".css\");\n }\n\n if (testClientComponents(path)) {\n return applyPattern(path, options.autoDiscover?.clientComponents, \"client\");\n }\n if (testHtml(path)) {\n return applyPattern(path, options.autoDiscover?.htmlPattern, \".html\");\n }\n if (testJson(path)) {\n return applyPattern(path, options.autoDiscover?.jsonPattern, \".json\");\n }\n if (testPropsPattern(path)) {\n return applyPattern(\n path,\n options.autoDiscover?.propsPattern,\n options.propsExportName?.toLowerCase() ??\n DEFAULT_CONFIG.PROPS_EXPORT_NAME.toLowerCase()\n );\n }\n if (testPagePattern(path)) {\n return applyPattern(\n path,\n options.autoDiscover?.pagePattern,\n options.pageExportName?.toLowerCase() ??\n DEFAULT_CONFIG.PAGE_EXPORT_NAME.toLowerCase()\n );\n }\n if (testServerFunctions(path)) {\n return applyPattern(path, options.autoDiscover?.serverFunctions, \"server\");\n }\n if (testModulePattern(path)) {\n return path;\n }\n return path;\n };\n\n const entryFile = (n: PreRenderedChunk) => {\n if (testVendor(n.name)) {\n const search = n.facadeModuleId?.split(\"?\")[1];\n if(search) {\n return `${n.name}.${search}.js`;\n } else {\n return n.name + \".js\";\n }\n }\n return addJS(getOutputPath(ensureModuleBase(ensureNoRoot(n.name))));\n };\n\n const chunkFile = (n: PreRenderedChunk) => {\n // For chunks, we always want .js\n return addJS(getOutputPath(ensureModuleBase(ensureNoRoot('_'+n.name))));\n };\n\n const assetFile = (n: PreRenderedAsset) => {\n // For assets, keep the original extension\n return getOutputPath(ensureModuleBase(ensureNoRoot(n.names[0])));\n };\n\n const build =\n typeof options.build === \"object\" && options.build !== null\n ? {\n pages,\n client,\n server,\n static: staticBuild,\n outDir,\n assetsDir,\n api,\n hash: hashOption,\n preserveModulesRoot,\n entryFile:\n typeof options.build?.entryFile === \"function\"\n ? options.build.entryFile\n : entryFile,\n chunkFile:\n typeof options.build?.chunkFile === \"function\"\n ? options.build.chunkFile\n : chunkFile,\n assetFile:\n typeof options.build?.assetFile === \"function\"\n ? options.build.assetFile\n : assetFile,\n }\n : {\n pages,\n client,\n server,\n static: staticBuild,\n outDir,\n assetsDir,\n api,\n hash: hashOption,\n preserveModulesRoot,\n entryFile,\n chunkFile,\n assetFile,\n };\n\n const moduleBase =\n typeof options.moduleBase === \"string\"\n ? options.moduleBase\n : DEFAULT_CONFIG.MODULE_BASE;\n const moduleBasePath =\n typeof options.moduleBasePath === \"string\"\n ? options.moduleBasePath\n : options.moduleBase.startsWith(\"/\")\n ? options.moduleBase\n : \"/\" + options.moduleBase;\n const moduleBaseURL =\n typeof options.moduleBaseURL === \"string\"\n ? options.moduleBaseURL\n : moduleBasePath ?? DEFAULT_CONFIG.MODULE_BASE_URL;\n\n const autoDiscover = {\n modulePattern: testModulePattern,\n cssPattern: testCss,\n jsonPattern: testJson,\n clientComponents: testClientComponents,\n serverFunctions: testServerFunctions,\n propsPattern: testPropsPattern,\n pagePattern: testPagePattern,\n cssModulePattern: testCssModule,\n vendorPattern: testVendor,\n };\n\n const moduleId =\n typeof options.moduleId === \"function\"\n ? options.moduleId\n : createModuleIdGenerator({\n isProduction: process.env[\"NODE_ENV\"] === \"production\",\n inputRoot: projectRoot,\n client: client,\n server: server,\n moduleBase: moduleBase,\n preserveModulesRoot: preserveModulesRoot,\n removeExtension: DEFAULT_CONFIG.FILE_REGEX,\n imports: {},\n });\n\n try {\n return {\n type: \"success\",\n userOptions: {\n projectRoot,\n moduleId: moduleId,\n moduleBase,\n moduleBasePath,\n moduleBaseURL,\n build: build,\n Page: options.Page ?? DEFAULT_CONFIG.PAGE,\n props: options.props ?? DEFAULT_CONFIG.PROPS,\n Html: options.Html ?? DEFAULT_CONFIG.HTML,\n pageExportName: pageExportName,\n propsExportName: propsExportName,\n collectCss: options.collectCss ?? DEFAULT_CONFIG.COLLECT_CSS,\n collectAssets: options.collectAssets ?? DEFAULT_CONFIG.COLLECT_ASSETS,\n htmlWorkerPath:\n options.htmlWorkerPath ?? DEFAULT_CONFIG.HTML_WORKER_PATH,\n rscWorkerPath: options.rscWorkerPath ?? DEFAULT_CONFIG.RSC_WORKER_PATH,\n loaderPath: options.loaderPath ?? DEFAULT_CONFIG.LOADER_PATH,\n clientEntry: options.clientEntry ?? DEFAULT_CONFIG.CLIENT_ENTRY,\n serverEntry: options.serverEntry ?? DEFAULT_CONFIG.SERVER_ENTRY,\n moduleBaseExceptions: options.moduleBaseExceptions ?? [],\n autoDiscover: autoDiscover,\n pipableStreamOptions: options.pipableStreamOptions ?? {\n bootstrapModules: [\n options.clientEntry ?? DEFAULT_CONFIG.CLIENT_ENTRY,\n ],\n },\n },\n };\n } catch (error) {\n return {\n type: \"error\",\n error:\n error instanceof Error ? error : new Error(\"Failed to resolve options\"),\n };\n }\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveUserConfig.d.ts","sourceRoot":"","sources":["../../../plugin/config/resolveUserConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,KAAK,EACV,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAMrB,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,mBAAmB,CAAC;IACjC,KAAK,CAAC,EAAE,qBAAqB,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAC/B;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,UAAU,EAAE,kBAAkB,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAEpC,wBAAgB,iBAAiB,CAAC,EAChC,QAAgB,EAChB,MAAM,EACN,SAAS,EACT,WAAW,EACX,KAAK,GACN,EAAE,sBAAsB,GAAG,uBAAuB,
|
|
1
|
+
{"version":3,"file":"resolveUserConfig.d.ts","sourceRoot":"","sources":["../../../plugin/config/resolveUserConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,KAAK,EACV,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAMrB,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,mBAAmB,CAAC;IACjC,KAAK,CAAC,EAAE,qBAAqB,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAC/B;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,UAAU,EAAE,kBAAkB,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAEpC,wBAAgB,iBAAiB,CAAC,EAChC,QAAgB,EAChB,MAAM,EACN,SAAS,EACT,WAAW,EACX,KAAK,GACN,EAAE,sBAAsB,GAAG,uBAAuB,CAwMlD"}
|
|
@@ -18,7 +18,8 @@ function resolveUserConfig({
|
|
|
18
18
|
const root = config.root ?? userOptions.projectRoot ?? process.cwd();
|
|
19
19
|
const normalizer = createInputNormalizer({
|
|
20
20
|
root,
|
|
21
|
-
preserveModulesRoot: void 0
|
|
21
|
+
preserveModulesRoot: userOptions.build.preserveModulesRoot ? userOptions.moduleBase : void 0,
|
|
22
|
+
removeExtension: true
|
|
22
23
|
});
|
|
23
24
|
const serverEntry = userOptions.serverEntry ? Object.fromEntries([
|
|
24
25
|
normalizer([userOptions.serverEntry, userOptions.serverEntry])
|
|
@@ -33,15 +34,12 @@ function resolveUserConfig({
|
|
|
33
34
|
const allFiles = globSync(`**/*.client.*`, {
|
|
34
35
|
cwd: join(root, userOptions.moduleBase)
|
|
35
36
|
});
|
|
36
|
-
for (const
|
|
37
|
-
|
|
38
|
-
throw new Error(`Invalid path: ${JSON.stringify(path)}`);
|
|
39
|
-
}
|
|
40
|
-
const [key2, value2] = normalizer(join(userOptions.moduleBase, path));
|
|
41
|
-
return [key2, value2];
|
|
42
|
-
})) {
|
|
37
|
+
for (const file of allFiles) {
|
|
38
|
+
const [key, value] = normalizer(join(userOptions.moduleBase, file));
|
|
43
39
|
if (!inputs2[key]) {
|
|
44
40
|
inputs2[key] = value;
|
|
41
|
+
} else {
|
|
42
|
+
console.warn(`[RSC] Client file already exists: ${key}`);
|
|
45
43
|
}
|
|
46
44
|
}
|
|
47
45
|
return inputs2;
|
|
@@ -50,41 +48,52 @@ function resolveUserConfig({
|
|
|
50
48
|
const allFiles = globSync(`${userOptions.moduleBase}/**/*.server.*`, {
|
|
51
49
|
cwd: join(root, userOptions.moduleBase)
|
|
52
50
|
});
|
|
53
|
-
for (const
|
|
51
|
+
for (const file of allFiles) {
|
|
52
|
+
const [key, value] = normalizer(join(userOptions.moduleBase, file));
|
|
54
53
|
if (!inputs2[key]) {
|
|
55
54
|
inputs2[key] = value;
|
|
55
|
+
} else {
|
|
56
|
+
console.warn(`[RSC] Server file already exists: ${key}`);
|
|
56
57
|
}
|
|
57
58
|
}
|
|
58
59
|
return inputs2;
|
|
59
60
|
};
|
|
60
61
|
const autoDiscoveredFiles = (inputs2) => {
|
|
61
|
-
if (!files)
|
|
62
|
-
|
|
63
|
-
}
|
|
64
|
-
for (const [key, value] of Object.entries(Array.from(files.pageMap.entries())).map(normalizer)) {
|
|
62
|
+
if (!files) return inputs2;
|
|
63
|
+
for (const [key, value] of files.pageMap) {
|
|
65
64
|
if (!inputs2[key]) {
|
|
66
65
|
inputs2[key] = value;
|
|
66
|
+
} else {
|
|
67
|
+
console.warn(`[RSC] Page file already exists: ${key}`);
|
|
67
68
|
}
|
|
68
69
|
}
|
|
69
|
-
for (const [key, value] of
|
|
70
|
+
for (const [key, value] of files.propsMap) {
|
|
70
71
|
if (!inputs2[key]) {
|
|
71
72
|
inputs2[key] = value;
|
|
73
|
+
} else {
|
|
74
|
+
console.warn(`[RSC] Props file already exists: ${key}`);
|
|
72
75
|
}
|
|
73
76
|
}
|
|
74
77
|
return inputs2;
|
|
75
78
|
};
|
|
76
79
|
let inputs = isClient ? autoDiscoveredClientFiles(clientEntry) : autoDiscoveredServerFiles(autoDiscoveredFiles(serverEntry ?? {}));
|
|
77
|
-
if (userOptions.build.preserveModulesRoot) {
|
|
78
|
-
inputs = Object.fromEntries(
|
|
79
|
-
Object.entries(inputs).map(([key, value]) => {
|
|
80
|
-
if (key.startsWith(userOptions.moduleBase + "/")) {
|
|
81
|
-
return [key.slice(userOptions.moduleBase.length + 1), value];
|
|
82
|
-
}
|
|
83
|
-
return [key, value];
|
|
84
|
-
})
|
|
85
|
-
);
|
|
86
|
-
}
|
|
87
80
|
const envDir = isClient ? userOptions.build.client : userOptions.build.server;
|
|
81
|
+
const pluginOutput = {
|
|
82
|
+
preserveModules: !isClient,
|
|
83
|
+
preserveModulesRoot: userOptions.build.preserveModulesRoot ? userOptions.moduleBase : void 0,
|
|
84
|
+
entryFileNames: userOptions.build.entryFile,
|
|
85
|
+
assetFileNames: userOptions.build.assetFile,
|
|
86
|
+
chunkFileNames: userOptions.build.chunkFile,
|
|
87
|
+
format: "esm",
|
|
88
|
+
exports: "named",
|
|
89
|
+
hoistTransitiveImports: false,
|
|
90
|
+
generatedCode: {
|
|
91
|
+
constBindings: true,
|
|
92
|
+
objectShorthand: true
|
|
93
|
+
},
|
|
94
|
+
interop: "auto"
|
|
95
|
+
};
|
|
96
|
+
const newOutput = Array.isArray(config.build?.rollupOptions?.output) ? [...config.build?.rollupOptions?.output, pluginOutput] : typeof config.build?.rollupOptions?.output === "object" && config.build?.rollupOptions?.output !== null ? [config.build?.rollupOptions?.output, pluginOutput] : pluginOutput;
|
|
88
97
|
if (isClient) {
|
|
89
98
|
return {
|
|
90
99
|
type: "success",
|
|
@@ -94,61 +103,42 @@ function resolveUserConfig({
|
|
|
94
103
|
mode: configEnv.command === "build" ? "production" : "development",
|
|
95
104
|
resolve: {
|
|
96
105
|
external: ["react", "react-dom"],
|
|
97
|
-
alias: {
|
|
98
|
-
[userOptions.moduleBasePath]: join(root, userOptions.moduleBasePath),
|
|
99
|
-
[userOptions.moduleBase]: join(root, userOptions.moduleBase),
|
|
100
|
-
["index.html"]: join(root, "index.html")
|
|
101
|
-
}
|
|
106
|
+
alias: {}
|
|
102
107
|
},
|
|
103
108
|
ssr: {
|
|
104
109
|
target: "node",
|
|
105
|
-
external: [
|
|
110
|
+
external: [
|
|
111
|
+
"react",
|
|
112
|
+
"react-dom",
|
|
113
|
+
"react-server-dom-esm/client.browser"
|
|
114
|
+
],
|
|
106
115
|
resolve: {
|
|
107
|
-
conditions: ["react-server"],
|
|
108
116
|
externalConditions: ["react-server"]
|
|
109
117
|
}
|
|
110
118
|
},
|
|
119
|
+
// client build options
|
|
111
120
|
build: {
|
|
112
121
|
...config.build,
|
|
113
122
|
emptyOutDir: config.build?.emptyOutDir ?? true,
|
|
114
123
|
outDir: join(userOptions.build.outDir, envDir),
|
|
115
|
-
assetsDir: userOptions.build.assetsDir,
|
|
124
|
+
assetsDir: config.build?.assetsDir ?? userOptions.build.assetsDir,
|
|
116
125
|
// modern browsers
|
|
117
126
|
target: ["esnext"],
|
|
118
127
|
minify: true,
|
|
119
|
-
ssr: true,
|
|
128
|
+
ssr: typeof configEnv.isSsrBuild === "boolean" ? configEnv.isSsrBuild : true,
|
|
120
129
|
manifest: config.build?.manifest ?? `.vite/manifest.json`,
|
|
121
130
|
ssrManifest: config.build?.ssrManifest ?? `.vite/ssr-manifest.json`,
|
|
122
|
-
ssrEmitAssets: true,
|
|
131
|
+
ssrEmitAssets: config.build?.ssrEmitAssets ?? true,
|
|
123
132
|
rollupOptions: {
|
|
124
133
|
...config.build?.rollupOptions,
|
|
125
134
|
input: inputs,
|
|
126
|
-
output:
|
|
127
|
-
|
|
128
|
-
preserveModulesRoot: userOptions.build.preserveModulesRoot ? userOptions.moduleBase : void 0
|
|
129
|
-
}
|
|
135
|
+
output: newOutput,
|
|
136
|
+
preserveEntrySignatures: "exports-only"
|
|
130
137
|
}
|
|
131
138
|
}
|
|
132
139
|
}
|
|
133
140
|
};
|
|
134
141
|
}
|
|
135
|
-
const mergeOutputArray = Array.isArray(config.build?.rollupOptions?.output);
|
|
136
|
-
const pluginOutput = {
|
|
137
|
-
preserveModules: true,
|
|
138
|
-
preserveModulesRoot: userOptions.build.preserveModulesRoot ? userOptions.moduleBase : void 0,
|
|
139
|
-
entryFileNames: userOptions.build.entryFile,
|
|
140
|
-
assetFileNames: userOptions.build.assetFile,
|
|
141
|
-
chunkFileNames: userOptions.build.chunkFile,
|
|
142
|
-
format: "esm",
|
|
143
|
-
exports: "named",
|
|
144
|
-
hoistTransitiveImports: false,
|
|
145
|
-
generatedCode: {
|
|
146
|
-
constBindings: true,
|
|
147
|
-
objectShorthand: true
|
|
148
|
-
},
|
|
149
|
-
interop: "auto"
|
|
150
|
-
};
|
|
151
|
-
const newOutput = Array.isArray(config.build?.rollupOptions?.output) ? [...config.build?.rollupOptions?.output, pluginOutput] : typeof config.build?.rollupOptions?.output === "object" && config.build?.rollupOptions?.output !== null ? [config.build?.rollupOptions?.output, pluginOutput] : pluginOutput;
|
|
152
142
|
return {
|
|
153
143
|
type: "success",
|
|
154
144
|
userConfig: {
|
|
@@ -156,27 +146,25 @@ function resolveUserConfig({
|
|
|
156
146
|
root,
|
|
157
147
|
mode: configEnv.command === "build" ? "production" : "development",
|
|
158
148
|
resolve: {
|
|
159
|
-
alias: {
|
|
160
|
-
|
|
161
|
-
[userOptions.moduleBase]: join(root, userOptions.moduleBase),
|
|
162
|
-
["index.html"]: join(root, "index.html")
|
|
163
|
-
}
|
|
149
|
+
alias: {},
|
|
150
|
+
externalConditions: ["react-server"]
|
|
164
151
|
},
|
|
152
|
+
// server build options
|
|
165
153
|
build: {
|
|
166
154
|
...config.build,
|
|
167
155
|
emptyOutDir: config.build?.emptyOutDir ?? true,
|
|
168
156
|
outDir: join(userOptions.build.outDir, envDir),
|
|
169
|
-
target: "node18",
|
|
170
|
-
minify: true,
|
|
171
|
-
ssr: true,
|
|
157
|
+
target: config.build?.target ?? "node18",
|
|
158
|
+
minify: config.build?.minify ?? true,
|
|
159
|
+
ssr: config.build?.ssr ?? configEnv.isSsrBuild ?? true,
|
|
172
160
|
manifest: config.build?.manifest ?? `.vite/manifest.json`,
|
|
173
161
|
ssrManifest: config.build?.ssrManifest ?? `.vite/ssr-manifest.json`,
|
|
174
|
-
ssrEmitAssets: true,
|
|
162
|
+
ssrEmitAssets: config.build?.ssrEmitAssets ?? true,
|
|
175
163
|
assetsDir: config.build?.assetsDir ?? userOptions.build.assetsDir,
|
|
176
164
|
rollupOptions: {
|
|
177
165
|
...config.build?.rollupOptions,
|
|
178
166
|
input: inputs,
|
|
179
|
-
preserveEntrySignatures: "strict",
|
|
167
|
+
preserveEntrySignatures: config.build?.rollupOptions?.preserveEntrySignatures ?? "strict",
|
|
180
168
|
output: newOutput
|
|
181
169
|
}
|
|
182
170
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveUserConfig.js","sources":["../../../plugin/config/resolveUserConfig.ts"],"sourcesContent":["import type { ConfigEnv, UserConfig } from \"vite\";\nimport type {\n CheckFilesExistReturn,\n ResolvedUserConfig,\n ResolvedUserOptions,\n} from \"../types.js\";\nimport { createInputNormalizer } from \"../helpers/inputNormalizer.js\";\nimport { join } from \"path\";\n// @ts-ignore\nimport { globSync } from \"fs\";\nimport type { OutputOptions } from \"rollup\";\nexport type ResolveUserConfigProps = {\n isClient?: boolean;\n config: UserConfig;\n configEnv: ConfigEnv;\n userOptions: ResolvedUserOptions;\n files?: CheckFilesExistReturn;\n};\n\nexport type ResolveUserConfigReturn =\n | { type: \"success\"; userConfig: ResolvedUserConfig }\n | { type: \"error\"; error: Error };\n\nexport function resolveUserConfig({\n isClient = false,\n config,\n configEnv,\n userOptions,\n files,\n}: ResolveUserConfigProps): ResolveUserConfigReturn {\n try {\n // Get existing inputs\n const root = config.root ?? userOptions.projectRoot ?? process.cwd();\n\n const normalizer = createInputNormalizer({\n root,\n preserveModulesRoot: undefined,\n });\n\n const serverEntry = userOptions.serverEntry\n ? Object.fromEntries([\n normalizer([userOptions.serverEntry, userOptions.serverEntry]),\n ])\n : null;\n const clientEntry = userOptions.clientEntry\n ? Object.fromEntries(\n [\n [userOptions.clientEntry, userOptions.clientEntry],\n [\"index.html\", \"index.html\"],\n ].map(normalizer)\n )\n : { \"index.html\": \"index.html\" };\n\n const autoDiscoveredClientFiles = (inputs: Record<string, string>) => {\n const allFiles = globSync(`**/*.client.*`, {\n cwd: join(root, userOptions.moduleBase),\n });\n for (const [key, value] of Object.entries(allFiles).map(([n, path]) => {\n if (typeof path !== \"string\") {\n throw new Error(`Invalid path: ${JSON.stringify(path)}`);\n }\n const [key, value] = normalizer(join(userOptions.moduleBase, path));\n return [key, value];\n })) {\n // check if not already in the inputs\n if (!inputs[key]) {\n inputs[key] = value;\n }\n }\n return inputs;\n };\n const autoDiscoveredServerFiles = (inputs: Record<string, string>) => {\n const allFiles = globSync(`${userOptions.moduleBase}/**/*.server.*`, {\n cwd: join(root, userOptions.moduleBase),\n });\n for (const [key, value] of Object.entries(allFiles).map(normalizer)) {\n if (!inputs[key]) {\n inputs[key] = value;\n }\n }\n return inputs;\n };\n const autoDiscoveredFiles = (inputs: Record<string, string>) => {\n if(!files) {\n return inputs;\n }\n for (const [key, value] of Object.entries( Array.from(files.pageMap.entries())).map(normalizer)) {\n if (!inputs[key]) {\n inputs[key] = value;\n }\n }\n for (const [key, value] of Object.entries( Array.from(files.propsMap.entries())).map(normalizer)) {\n if (!inputs[key]) {\n inputs[key] = value;\n }\n }\n return inputs;\n };\n\n // Add inputs based on condition\n let inputs = isClient\n ? autoDiscoveredClientFiles(clientEntry)\n : autoDiscoveredServerFiles(autoDiscoveredFiles(serverEntry ?? {}));\n\n if (userOptions.build.preserveModulesRoot) {\n inputs = Object.fromEntries(\n Object.entries(inputs).map(([key, value]) => {\n if (key.startsWith(userOptions.moduleBase + \"/\")) {\n return [key.slice(userOptions.moduleBase.length + 1), value];\n }\n return [key, value];\n })\n );\n }\n\n const envDir = isClient\n ? userOptions.build.client\n : userOptions.build.server;\n if (isClient) {\n return {\n type: \"success\",\n userConfig: {\n ...config,\n root: root,\n mode: configEnv.command === \"build\" ? \"production\" : \"development\",\n resolve: {\n external: [\"react\", \"react-dom\"],\n alias: {\n [userOptions.moduleBasePath]: join(root, userOptions.moduleBasePath),\n [userOptions.moduleBase]: join(root, userOptions.moduleBase),\n ['index.html']: join(root, 'index.html')\n }\n },\n ssr: {\n target: \"node\",\n external: [\"react\", \"react-dom\", \"react-server-dom-esm/client.browser\"],\n resolve: {\n conditions: [\"react-server\"],\n externalConditions: [\"react-server\"],\n },\n },\n build: {\n ...config.build,\n emptyOutDir: config.build?.emptyOutDir ?? true,\n outDir: join(userOptions.build.outDir, envDir),\n assetsDir: userOptions.build.assetsDir,\n // modern browsers\n target: [\"esnext\"],\n minify: true,\n ssr: true,\n manifest: config.build?.manifest ?? `.vite/manifest.json`,\n ssrManifest: config.build?.ssrManifest ?? `.vite/ssr-manifest.json`,\n ssrEmitAssets: true,\n rollupOptions: {\n ...config.build?.rollupOptions,\n input: inputs,\n output: {\n ...config.build?.rollupOptions?.output,\n preserveModulesRoot: userOptions.build.preserveModulesRoot\n ? userOptions.moduleBase\n : undefined,\n },\n },\n },\n },\n };\n }\n const mergeOutputArray = (Array.isArray(config.build?.rollupOptions?.output)) \n const pluginOutput = {\n preserveModules: true,\n preserveModulesRoot: userOptions.build.preserveModulesRoot\n ? userOptions.moduleBase\n : undefined,\n entryFileNames: userOptions.build.entryFile,\n assetFileNames: userOptions.build.assetFile,\n chunkFileNames: userOptions.build.chunkFile,\n format: \"esm\",\n exports: \"named\",\n hoistTransitiveImports: false,\n generatedCode: {\n constBindings: true,\n objectShorthand: true,\n },\n interop: \"auto\",\n } satisfies OutputOptions;\n const newOutput = Array.isArray(config.build?.rollupOptions?.output) ? \n [...config.build?.rollupOptions?.output, pluginOutput]\n : typeof config.build?.rollupOptions?.output === 'object' && config.build?.rollupOptions?.output !== null ?\n [config.build?.rollupOptions?.output, pluginOutput]\n : pluginOutput\n return {\n type: \"success\",\n userConfig: {\n ...config,\n root: root,\n mode: configEnv.command === \"build\" ? \"production\" : \"development\",\n resolve: {\n alias: {\n [userOptions.moduleBasePath]: join(root, userOptions.moduleBasePath),\n [userOptions.moduleBase]: join(root, userOptions.moduleBase),\n ['index.html']: join(root, 'index.html')\n }\n },\n build: {\n ...config.build,\n emptyOutDir: config.build?.emptyOutDir ?? true,\n outDir: join(userOptions.build.outDir, envDir),\n target: \"node18\",\n minify: true,\n ssr: true,\n manifest: config.build?.manifest ?? `.vite/manifest.json`,\n ssrManifest: config.build?.ssrManifest ?? `.vite/ssr-manifest.json`,\n ssrEmitAssets: true,\n assetsDir: config.build?.assetsDir ?? userOptions.build.assetsDir,\n rollupOptions: {\n ...config.build?.rollupOptions,\n input: inputs,\n preserveEntrySignatures: \"strict\",\n output: newOutput,\n },\n },\n },\n };\n } catch (error) {\n return {\n type: \"error\",\n error:\n error instanceof Error ? error : new Error(\"Failed to resolve config\"),\n };\n }\n}\n"],"names":["inputs","key","value"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resolveUserConfig.js","sources":["../../../plugin/config/resolveUserConfig.ts"],"sourcesContent":["import type { ConfigEnv, UserConfig } from \"vite\";\nimport type {\n CheckFilesExistReturn,\n ResolvedUserConfig,\n ResolvedUserOptions,\n} from \"../types.js\";\nimport { createInputNormalizer } from \"../helpers/inputNormalizer.js\";\nimport { join } from \"path\";\n// @ts-ignore\nimport { globSync } from \"fs\";\nimport type { OutputOptions } from \"rollup\";\nexport type ResolveUserConfigProps = {\n isClient?: boolean;\n config: UserConfig;\n configEnv: ConfigEnv;\n userOptions: ResolvedUserOptions;\n files?: CheckFilesExistReturn;\n};\n\nexport type ResolveUserConfigReturn =\n | { type: \"success\"; userConfig: ResolvedUserConfig }\n | { type: \"error\"; error: Error };\n\nexport function resolveUserConfig({\n isClient = false,\n config,\n configEnv,\n userOptions,\n files,\n}: ResolveUserConfigProps): ResolveUserConfigReturn {\n try {\n // Get existing inputs\n const root = config.root ?? userOptions.projectRoot ?? process.cwd();\n\n const normalizer = createInputNormalizer({\n root,\n preserveModulesRoot: userOptions.build.preserveModulesRoot\n ? userOptions.moduleBase\n : undefined,\n removeExtension: true,\n });\n\n const serverEntry = userOptions.serverEntry\n ? Object.fromEntries([\n normalizer([userOptions.serverEntry, userOptions.serverEntry]),\n ])\n : null;\n const clientEntry = userOptions.clientEntry\n ? Object.fromEntries(\n [\n [userOptions.clientEntry, userOptions.clientEntry],\n [\"index.html\", \"index.html\"],\n ].map(normalizer)\n )\n : { \"index.html\": \"index.html\" };\n\n const autoDiscoveredClientFiles = (inputs: Record<string, string>) => {\n const allFiles = globSync(`**/*.client.*`, {\n cwd: join(root, userOptions.moduleBase),\n });\n\n for (const file of allFiles) {\n const [key, value] = normalizer(join(userOptions.moduleBase, file));\n if (!inputs[key]) {\n inputs[key] = value;\n } else {\n console.warn(`[RSC] Client file already exists: ${key}`);\n }\n }\n return inputs;\n };\n const autoDiscoveredServerFiles = (inputs: Record<string, string>) => {\n const allFiles = globSync(`${userOptions.moduleBase}/**/*.server.*`, {\n cwd: join(root, userOptions.moduleBase),\n });\n for (const file of allFiles) {\n const [key, value] = normalizer(join(userOptions.moduleBase, file));\n if (!inputs[key]) {\n inputs[key] = value;\n } else {\n console.warn(`[RSC] Server file already exists: ${key}`);\n }\n }\n return inputs;\n };\n const autoDiscoveredFiles = (inputs: Record<string, string>) => {\n if (!files) return inputs;\n\n // Add page files without extra prefix\n for (const [key, value] of files.pageMap) {\n if (!inputs[key]) {\n inputs[key] = value;\n } else {\n console.warn(`[RSC] Page file already exists: ${key}`);\n }\n }\n // Add props files without extra prefix\n for (const [key, value] of files.propsMap) {\n if (!inputs[key]) {\n inputs[key] = value;\n } else {\n console.warn(`[RSC] Props file already exists: ${key}`);\n }\n }\n return inputs;\n };\n\n // Add inputs based on condition\n let inputs = isClient\n ? autoDiscoveredClientFiles(clientEntry)\n : autoDiscoveredServerFiles(autoDiscoveredFiles(serverEntry ?? {}));\n\n const envDir = isClient\n ? userOptions.build.client\n : userOptions.build.server;\n\n const pluginOutput = {\n preserveModules: !isClient,\n preserveModulesRoot: userOptions.build.preserveModulesRoot\n ? userOptions.moduleBase\n : undefined,\n entryFileNames: userOptions.build.entryFile,\n assetFileNames: userOptions.build.assetFile,\n chunkFileNames: userOptions.build.chunkFile,\n format: \"esm\",\n exports: \"named\",\n hoistTransitiveImports: false,\n generatedCode: {\n constBindings: true,\n objectShorthand: true,\n },\n interop: \"auto\",\n } satisfies OutputOptions;\n \n const newOutput = Array.isArray(config.build?.rollupOptions?.output)\n ? [...config.build?.rollupOptions?.output, pluginOutput]\n : typeof config.build?.rollupOptions?.output === \"object\" &&\n config.build?.rollupOptions?.output !== null\n ? [config.build?.rollupOptions?.output, pluginOutput]\n : pluginOutput;\n\n if (isClient) {\n // client build options\n return {\n type: \"success\",\n userConfig: {\n ...config,\n root: root,\n mode: configEnv.command === \"build\" ? \"production\" : \"development\",\n resolve: {\n external: [\"react\", \"react-dom\"],\n alias: {},\n },\n ssr: {\n target: \"node\",\n external: [\n \"react\",\n \"react-dom\",\n \"react-server-dom-esm/client.browser\",\n ],\n resolve: {\n externalConditions: [\"react-server\"],\n },\n },\n // client build options\n build: {\n ...config.build,\n emptyOutDir: config.build?.emptyOutDir ?? true,\n outDir: join(userOptions.build.outDir, envDir),\n assetsDir: config.build?.assetsDir ?? userOptions.build.assetsDir,\n // modern browsers\n target: [\"esnext\"],\n minify: true,\n ssr:\n typeof configEnv.isSsrBuild === \"boolean\"\n ? configEnv.isSsrBuild\n : true,\n manifest: config.build?.manifest ?? `.vite/manifest.json`,\n ssrManifest: config.build?.ssrManifest ?? `.vite/ssr-manifest.json`,\n ssrEmitAssets: config.build?.ssrEmitAssets ?? true,\n rollupOptions: {\n ...config.build?.rollupOptions,\n input: inputs,\n output: newOutput,\n preserveEntrySignatures: \"exports-only\",\n },\n },\n },\n };\n }\n // server build options\n return {\n type: \"success\",\n userConfig: {\n ...config,\n root: root,\n mode: configEnv.command === \"build\" ? \"production\" : \"development\",\n resolve: {\n alias: {},\n externalConditions: [\"react-server\"],\n },\n // server build options\n build: {\n ...config.build,\n emptyOutDir: config.build?.emptyOutDir ?? true,\n outDir: join(userOptions.build.outDir, envDir),\n target: config.build?.target ?? \"node18\",\n minify: config.build?.minify ?? true,\n ssr: config.build?.ssr ?? configEnv.isSsrBuild ?? true,\n manifest: config.build?.manifest ?? `.vite/manifest.json`,\n ssrManifest: config.build?.ssrManifest ?? `.vite/ssr-manifest.json`,\n ssrEmitAssets: config.build?.ssrEmitAssets ?? true,\n assetsDir: config.build?.assetsDir ?? userOptions.build.assetsDir,\n rollupOptions: {\n ...config.build?.rollupOptions,\n input: inputs,\n preserveEntrySignatures: config.build?.rollupOptions?.preserveEntrySignatures ?? \"strict\",\n output: newOutput,\n },\n },\n },\n };\n } catch (error) {\n return {\n type: \"error\",\n error:\n error instanceof Error ? error : new Error(\"Failed to resolve config\"),\n };\n }\n}\n"],"names":["inputs"],"mappings":"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"}
|
|
@@ -15,6 +15,11 @@ interface BundleManifestEntry {
|
|
|
15
15
|
* @param preserveModulesRoot - The preserve modules root
|
|
16
16
|
* @returns The bundle manifest
|
|
17
17
|
*/
|
|
18
|
-
export declare function getBundleManifest(pluginContext
|
|
18
|
+
export declare function getBundleManifest({ pluginContext, bundle, moduleBase, preserveModulesRoot, }: {
|
|
19
|
+
pluginContext: PluginContext;
|
|
20
|
+
bundle: OutputBundle;
|
|
21
|
+
moduleBase?: string;
|
|
22
|
+
preserveModulesRoot?: boolean;
|
|
23
|
+
}): Record<string, BundleManifestEntry>;
|
|
19
24
|
export {};
|
|
20
25
|
//# sourceMappingURL=getBundleManifest.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getBundleManifest.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/getBundleManifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"getBundleManifest.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/getBundleManifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EAEd,MAAM,QAAQ,CAAC;AAKhB,UAAU,mBAAmB;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,aAAa,EACb,MAAM,EACN,UAAU,EACV,mBAAmB,GACpB,EAAE;IACD,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B,GAAG,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CA4EtC"}
|