// npx ts-node html-templates.ts import * as readline from 'node:readline/promises'; // This uses the promise-based APIs import { stdin as input, stdout as output } from 'node:process'; import { htmlTemplateX} from '../libs/html-templates-lib'; import {templateOption} from '../libs/report-template' import fs from 'fs'; (async ()=>{ const rl = readline.createInterface({ input, output }); const e = await rl.question('Output extension(pdf,png,jpeg): '); const ext =e?e:"pdf" const dpath = await rl.question('JSON data path(./html.json): '); const datapath = dpath?dpath:"./html.json" const data_raw = fs.readFileSync(datapath); const tdata:templateOption = JSON.parse(data_raw.toString()); const bpath = await rl.question('templates path(../templates/html): '); const basepath = bpath?bpath:"../templates/html" // const template = await fs.promises.readFile(`${basepath}/${tdata.template}.docx`) let url = "https://bma-dashboard.frappet.synology.me/d/ANtkJay4z/4Lic4Li54LmJ4Lie4Li04LiB4Liy4Lij?orgId=1&kiosk" //let url = "https://pantip.com" // let url = "https://google.com" let buffer = await htmlTemplateX(url, tdata,ext) fs.writeFileSync(".output/"+tdata.reportName+"."+ext, buffer); rl.close(); })()