| #!/usr/bin/env tsx |
| |
| |
| |
|
|
| import fs from "node:fs"; |
| import path from "node:path"; |
| import { fileURLToPath } from "node:url"; |
|
|
| const __dirname = path.dirname(fileURLToPath(import.meta.url)); |
| const projectRoot = path.resolve(__dirname, ".."); |
| const verbose = process.env.OPENCLAW_BUILD_VERBOSE === "1"; |
|
|
| const srcDir = path.join(projectRoot, "src", "auto-reply", "reply", "export-html"); |
| const distDir = path.join(projectRoot, "dist", "export-html"); |
|
|
| function copyExportHtmlTemplates() { |
| if (!fs.existsSync(srcDir)) { |
| console.warn("[copy-export-html-templates] Source directory not found:", srcDir); |
| return; |
| } |
|
|
| |
| if (!fs.existsSync(distDir)) { |
| fs.mkdirSync(distDir, { recursive: true }); |
| } |
|
|
| |
| 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; |
| if (verbose) { |
| console.log(`[copy-export-html-templates] Copied ${file}`); |
| } |
| } |
| } |
|
|
| |
| const srcVendor = path.join(srcDir, "vendor"); |
| const distVendor = path.join(distDir, "vendor"); |
| if (fs.existsSync(srcVendor)) { |
| if (!fs.existsSync(distVendor)) { |
| fs.mkdirSync(distVendor, { recursive: true }); |
| } |
| 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; |
| if (verbose) { |
| console.log(`[copy-export-html-templates] Copied vendor/${file}`); |
| } |
| } |
| } |
| } |
|
|
| console.log(`[copy-export-html-templates] Copied ${copiedCount} export-html assets.`); |
| } |
|
|
| copyExportHtmlTemplates(); |
|
|