UNPKG

iles

Version:

Vite & Vue powered static site generator with partial hydration

55 lines (52 loc) 1.51 kB
import { renderPages } from "./chunk-CZGVVTOI.js"; import { createSitemap } from "./chunk-DZLLJML6.js"; import { writePages } from "./chunk-KBWDZC2X.js"; import { bundle } from "./chunk-ETIIOXMW.js"; import { bundleIslands } from "./chunk-YHWL6QBB.js"; import { rm, withSpinner } from "./chunk-PUZAE3UL.js"; import { resolveConfig } from "./chunk-T4WFAR6L.js"; // src/node/build/build.ts async function build(root) { const start = Date.now(); process.env.NODE_ENV = "production"; const appConfig = await resolveConfig(root, { command: "build", mode: "production", isSsrBuild: false }); rm(appConfig.outDir); const bundleResult = await withSpinner( "building client + server bundles", async () => await bundle(appConfig) ); const islandsByPath = /* @__PURE__ */ Object.create(null); const pagesResult = await renderPages(appConfig, islandsByPath, bundleResult); await createSitemap(appConfig, pagesResult.routesToRender); await withSpinner( "building islands bundle", async () => await bundleIslands(appConfig, islandsByPath) ); const ssgContext = { config: appConfig, pages: pagesResult.routesToRender }; await appConfig.ssg.onSiteBundled?.(ssgContext); await withSpinner( "writing pages", async () => await writePages(appConfig, islandsByPath, pagesResult) ); await appConfig.ssg.onSiteRendered?.(ssgContext); rm(appConfig.tempDir); console.info(`build complete in ${((Date.now() - start) / 1e3).toFixed(2)}s.`); } export { build };