/** * Printer → Print-Agent binding (per CUST_Printer row, stored instance-locally — no iDempiere column). * Used by the printer create/edit/duplicate pages right after a successful iDempiere save. */ export const usePrinterBinding = () => { const save = async (printerId: number | string, record: any) => { const id = Number(printerId) if (!Number.isFinite(id) || id <= 0) return null if (record?.agentId === undefined) return null try { return await $fetch(`/api/settings/print-agents/bindings/${id}`, { method: 'PUT', headers: useRequestHeaders(['cookie']), body: { agentId: Number(record.agentId) || null, cupsName: record.cupsName, orgId: Number(record.organizationId) || 0 } }) } catch (e: any) { console.warn('[printer-binding] save failed:', e?.data?.statusMessage || e?.message || e) return null } } return { save } }