@noego/app 0.0.21 → 0.0.22
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/package.json +1 -1
- package/src/build/server.js +19 -2
package/package.json
CHANGED
package/src/build/server.js
CHANGED
|
@@ -64,10 +64,26 @@ async function reorganizeServerOutputs(context) {
|
|
|
64
64
|
await fs.mkdir(serverOutDir, { recursive: true });
|
|
65
65
|
await fs.cp(tsOutDir, serverOutDir, { recursive: true });
|
|
66
66
|
|
|
67
|
-
|
|
67
|
+
// Flatten the server directory from the tsc output structure.
|
|
68
|
+
// When source is under src/server/, tsc produces src/server/ in the output.
|
|
69
|
+
// Compute the actual relative path to the server root directory and flatten it.
|
|
70
|
+
const serverRootRel = path.relative(config.rootDir, config.server.rootDir);
|
|
71
|
+
const nestedServerDir = serverRootRel
|
|
72
|
+
? path.join(serverOutDir, serverRootRel)
|
|
73
|
+
: path.join(serverOutDir, 'server');
|
|
68
74
|
if (await pathExists(nestedServerDir)) {
|
|
69
75
|
await fs.cp(nestedServerDir, serverOutDir, { recursive: true, force: true });
|
|
76
|
+
// Remove only the nested server directory, preserving sibling dirs (middleware, ui, etc.)
|
|
70
77
|
await fs.rm(nestedServerDir, { recursive: true, force: true });
|
|
78
|
+
// If the prefix dir (e.g. 'src') is now empty, clean it up
|
|
79
|
+
if (serverRootRel && serverRootRel.includes(path.sep)) {
|
|
80
|
+
const topLevelDir = serverRootRel.split(path.sep)[0];
|
|
81
|
+
const topLevelPath = path.join(serverOutDir, topLevelDir);
|
|
82
|
+
const remaining = await fs.readdir(topLevelPath).catch(() => []);
|
|
83
|
+
if (remaining.length === 0) {
|
|
84
|
+
await fs.rm(topLevelPath, { recursive: true, force: true });
|
|
85
|
+
}
|
|
86
|
+
}
|
|
71
87
|
}
|
|
72
88
|
|
|
73
89
|
const compiledEntryRel = replaceExtension(
|
|
@@ -109,9 +125,10 @@ async function copyServerAssets(context) {
|
|
|
109
125
|
dot: true
|
|
110
126
|
});
|
|
111
127
|
for (const absoluteSrc of matches) {
|
|
128
|
+
const serverRel = path.relative(config.rootDir, config.server.rootDir);
|
|
112
129
|
await copyRelativeTo(absoluteSrc, config.layout.serverOutDir, config, logger, {
|
|
113
130
|
seen: copiedSql,
|
|
114
|
-
stripSegments:
|
|
131
|
+
stripSegments: serverRel.split(path.sep)
|
|
115
132
|
});
|
|
116
133
|
}
|
|
117
134
|
}
|