handle-css-styles.ts (694B)
1 import fs from "node:fs"; 2 import path from "node:path"; 3 import { build_styles_css_from_presets } from "../../generator/styles_css.js"; 4 import type { StylesArgs } from "./main.js"; 5 6 export const handle_css_styles = async (args: StylesArgs): Promise<void> => { 7 const trimmed_dir = args.dir_out.trim(); 8 if (trimmed_dir.length === 0) { 9 throw new Error("dir_out cannot be empty"); 10 } 11 12 const output_dir = path.resolve(process.cwd(), trimmed_dir); 13 fs.mkdirSync(output_dir, { recursive: true }); 14 15 const css = build_styles_css_from_presets(args.presets); 16 const target = path.join(output_dir, "styles.css"); 17 18 fs.writeFileSync(target, css, { encoding: "utf8" }); 19 };