#!/usr/bin/env tsx /** * Copy export-html templates from src to dist */ import fs from "node:fs"; import path from "node:path"; import { ensureDirectory, logVerboseCopy, resolveBuildCopyContext } from "./lib/copy-assets.ts"; const context = resolveBuildCopyContext(import.meta.url); const srcDir = path.join(context.projectRoot, "src", "auto-reply", "reply", "export-html"); const distDir = path.join(context.projectRoot, "dist", "export-html"); function copyExportHtmlTemplates() { if (!fs.existsSync(srcDir)) { console.warn(`${context.prefix} Source directory not found:`, srcDir); return; } ensureDirectory(distDir); const templateFiles = ["template.html", "template.css", "template.js"]; let copiedCount = 0; for (const file of templateFiles) { const srcFile = path.join(srcDir, file); const distFile = path.join(distDir, file); if (fs.existsSync(srcFile)) { fs.copyFileSync(srcFile, distFile); copiedCount += 1; logVerboseCopy(context, `Copied ${file}`); } } const srcVendor = path.join(srcDir, "vendor"); const distVendor = path.join(distDir, "vendor"); if (fs.existsSync(srcVendor)) { ensureDirectory(distVendor); const vendorFiles = fs.readdirSync(srcVendor); for (const file of vendorFiles) { const srcFile = path.join(srcVendor, file); const distFile = path.join(distVendor, file); if (fs.statSync(srcFile).isFile()) { fs.copyFileSync(srcFile, distFile); copiedCount += 1; logVerboseCopy(context, `Copied vendor/${file}`); } } } console.log(`${context.prefix} Copied ${copiedCount} export-html assets.`); } copyExportHtmlTemplates();