This commit is contained in:
2026-04-09 07:47:38 +01:00
parent ab6fc3be26
commit eb0721f94b
47 changed files with 826 additions and 136 deletions
+1
View File
@@ -102,5 +102,6 @@ export default async function allPagesBunBundler(params) {
const elapsed = (performance.now() - buildStart).toFixed(0);
log.success(`[Built] in ${elapsed}ms`);
global.RECOMPILING = false;
global.IS_SERVER_COMPONENT = false;
return artifacts;
}
+1
View File
@@ -137,5 +137,6 @@ export default async function allPagesBundler(params) {
const elapsed = (performance.now() - buildStart).toFixed(0);
log.success(`[Built] in ${elapsed}ms`);
global.RECOMPILING = false;
global.IS_SERVER_COMPONENT = false;
build_starts = 0;
}
+7
View File
@@ -0,0 +1,7 @@
type Params = {
log_time?: boolean;
debug?: boolean;
target_page_file?: string;
};
export default function initPages(params?: Params): Promise<void>;
export {};
+48
View File
@@ -0,0 +1,48 @@
import grabDirNames from "../../utils/grab-dir-names";
import isDevelopment from "../../utils/is-development";
import grabAllPages from "../../utils/grab-all-pages";
import { log } from "../../utils/log";
import grabPageBundledReactComponent from "../server/web-pages/grab-page-bundled-react-component";
import grabTsxStringModule from "../server/web-pages/grab-tsx-string-module";
const {} = grabDirNames();
export default async function initPages(params) {
const buildStart = performance.now();
const dev = isDevelopment();
const pages = grabAllPages({
exclude_api: true,
});
if (params?.log_time) {
log.build(`Compiling SSR for ${pages.length} pages ...`);
}
const tsx_map = [];
try {
for (let i = 0; i < pages.length; i++) {
const page = pages[i];
if (params?.target_page_file &&
page.local_path !== params.target_page_file) {
continue;
}
const { tsx } = (await grabPageBundledReactComponent({
file_path: page.local_path,
return_tsx_only: true,
})) || {};
if (!tsx) {
continue;
}
tsx_map.push({
tsx,
page_file_path: page.local_path,
});
// const component = await grabPageComponent({
// file_path: page.local_path,
// skip_server_res: true,
// });
}
await grabTsxStringModule({ tsx_map });
}
catch (error) { }
const elapsed = (performance.now() - buildStart).toFixed(0);
if (params?.log_time) {
log.success(`[SSR Compiled] in ${elapsed}ms`);
}
}
@@ -14,6 +14,7 @@ export default function esbuildCTXArtifactTracker({ entryToPage, post_build_fn,
const error_msg = `Build Failed. Please check all your components and imports.`;
log.error(error_msg);
global.RECOMPILING = false;
global.IS_SERVER_COMPONENT = false;
}
});
build.onEnd((result) => {
@@ -49,6 +50,7 @@ export default function esbuildCTXArtifactTracker({ entryToPage, post_build_fn,
const elapsed = (performance.now() - buildStart).toFixed(0);
log.success(`[Built] in ${elapsed}ms`);
global.RECOMPILING = false;
global.IS_SERVER_COMPONENT = false;
build_starts = 0;
});
},