| | |
| | | import { QUARTZ, slugify } from "../path" |
| | | import { globbyStream } from "globby" |
| | | import chalk from "chalk" |
| | | import { googleFontHref } from '../theme' |
| | | |
| | | // @ts-ignore |
| | | import spaRouterScript from '../components/scripts/spa.inline' |
| | |
| | | import popoverScript from '../components/scripts/popover.inline' |
| | | import popoverStyle from '../components/styles/popover.scss' |
| | | import { StaticResources } from "../resources" |
| | | import { QuartzLogger } from "../log" |
| | | import { googleFontHref } from "../theme" |
| | | |
| | | function addGlobalPageResources(cfg: GlobalConfiguration, staticResources: StaticResources, componentResources: ComponentResources) { |
| | | // font and other resources |
| | | staticResources.css.push(googleFontHref(cfg.theme)) |
| | | |
| | | // popovers |
| | |
| | | |
| | | export async function emitContent(contentFolder: string, output: string, cfg: QuartzConfig, content: ProcessedContent[], verbose: boolean) { |
| | | const perf = new PerfTimer() |
| | | const log = new QuartzLogger(verbose) |
| | | |
| | | log.start(`Emitting output files`) |
| | | const emit: EmitCallback = async ({ slug, ext, content }) => { |
| | | const pathToPage = path.join(output, slug + ext) |
| | | const dir = path.dirname(pathToPage) |
| | |
| | | |
| | | // component specific scripts and styles |
| | | const componentResources = getComponentResources(cfg.plugins) |
| | | |
| | | // important that this goes *after* component scripts |
| | | // as the "nav" event gets triggered here and we should make sure |
| | | // that everyone else had the chance to register a listener for it |
| | |
| | | } |
| | | } |
| | | |
| | | console.log(`Emitted ${emittedFiles} files to \`${output}\` in ${perf.timeSince()}`) |
| | | log.success(`Emitted ${emittedFiles} files to \`${output}\` in ${perf.timeSince()}`) |
| | | } |