import { stagePrintFile, printFile, applyPrintResult } from '../../utils/printDispatch' // Shipping label → the commissioning table's label printer. // Body: { pathName, fileName, fileContent (base64), shippingPrinter?, printOptions? } // Printing goes through printDispatch (local CUPS or the tenant's Print Agent, decided per printer). export default defineEventHandler(async (event) => { let data: any = {} const body = await readBody(event) const shippingPrinter = body.shippingPrinter || 'labelprinter-1' const printOptions = body.printOptions || '' // Optional print options (e.g., '-o sides=one-sided') try { const filePath = await stagePrintFile(body.pathName, body.fileName, Buffer.from(body.fileContent, 'base64')) const result = await printFile(event, { queue: shippingPrinter, options: printOptions, filePath, source: 'print/labelprint' }) data = applyPrintResult({ ...body }, result) } catch(err: any) { data = err } return data })