core/steps/page.step.ts
core/steps/page.step.ts is a file in Bane's Lab Build Scripts. 28 lines of code and 3 definitions.
import { RECORD_SITEMAP_ROUTE, SECTION_SITEMAP_ROUTE, SOURCE_SITEMAP_ROUTE } from "#configuration/constants/site.constants";
import { prerenderLine, recordPagesLine, sectionPagesLine, sourcePagesLine } from "#configuration/strings/page.strings";
import { defineStep } from "#core/factories/step.factory";
import { ontologyOf } from "#core/guards/site.guard";
import { prerenderSite } from "#core/coordinators/page.coordinator";
const PRERENDER = "prerender";
defineStep({
cache: null,
modes: ["build"],
name: PRERENDER,
needs: ["ontology", "graph", "icons", "diagrams"],
phase: "close",
async run(state) {
const { catalog, records, routes, sections, sources } = await prerenderSite(
state.root,
state.outDir,
ontologyOf(state, PRERENDER),
);
return {
gives: {},
line:
prerenderLine(routes, catalog) +
sourcePagesLine(sources, SOURCE_SITEMAP_ROUTE) +
recordPagesLine(records, RECORD_SITEMAP_ROUTE) +
sectionPagesLine(sections, SECTION_SITEMAP_ROUTE),
};
},
});