34 lines
1.4 KiB
JavaScript
34 lines
1.4 KiB
JavaScript
import { Command } from "commander";
|
|
import { log } from "../../utils/log";
|
|
import grabDirNames from "../../utils/grab-dir-names";
|
|
import { rmSync, writeFileSync } from "fs";
|
|
import bunextInit from "../../functions/bunext-init";
|
|
import pagesSSRBundler from "../../functions/bundler/pages-ssr-bundler";
|
|
const { HYDRATION_DST_DIR, BUNX_CWD_PAGES_REWRITE_DIR, BUNDLER_CTX_MAP_JSON, SSR_BUNDLER_CTX_MAP_JSON, BUNX_CWD_MODULE_CACHE_DIR, } = grabDirNames();
|
|
export default function () {
|
|
return new Command("build")
|
|
.description("Build Project")
|
|
.action(async () => {
|
|
try {
|
|
rmSync(HYDRATION_DST_DIR, { recursive: true });
|
|
rmSync(BUNX_CWD_PAGES_REWRITE_DIR, { recursive: true });
|
|
rmSync(BUNX_CWD_MODULE_CACHE_DIR, {
|
|
recursive: true,
|
|
force: true,
|
|
});
|
|
}
|
|
catch (error) { }
|
|
global.BUNEXT_SKIPPED_BROWSER_MODULES = new Set();
|
|
await bunextInit({ build_only: true });
|
|
// await pagesSSRBundler();
|
|
if (global.BUNEXT_BUNDLER_CTX_MAP) {
|
|
writeFileSync(BUNDLER_CTX_MAP_JSON, JSON.stringify(global.BUNEXT_BUNDLER_CTX_MAP), "utf-8");
|
|
}
|
|
if (global.BUNEXT_SSR_BUNDLER_CTX_MAP) {
|
|
writeFileSync(SSR_BUNDLER_CTX_MAP_JSON, JSON.stringify(global.BUNEXT_SSR_BUNDLER_CTX_MAP), "utf-8");
|
|
}
|
|
log.success("Modules Built Successfully!");
|
|
process.exit();
|
|
});
|
|
}
|