medusa-invoice
Version:
Generate invoice from Medusa
29 lines • 3 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.generateItemsTable = void 0;
const hr_1 = require("./hr");
function generateTableRow(doc, y, item, description, quantity) {
doc
.fontSize(6)
.text(item, 25, y)
.text(description, 80, y)
.text(quantity, 90, y, { align: "right", width: 100 });
}
function generateItemsTable(doc, y, order, items) {
let i;
const invoiceTableTop = y + 25;
let totalQuantity = 0;
generateTableRow(doc, invoiceTableTop, "Item", "Description", "Quantity");
(0, hr_1.generateHrInA7)(doc, invoiceTableTop + 10);
for (i = 0; i < items.length; i++) {
const item = items[i];
totalQuantity += item.quantity;
const position = invoiceTableTop + (i + 1) * 20;
generateTableRow(doc, position, item.title, item.description, item.quantity);
(0, hr_1.generateHrInA7)(doc, position + 10);
}
const totalQuantityPosition = invoiceTableTop + (i + 1) * 20;
generateTableRow(doc, totalQuantityPosition, "", "Total", totalQuantity);
}
exports.generateItemsTable = generateItemsTable;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtaXRlbXMtc21hbGwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvdGVtcGxhdGVzL3BhY2tpbmctc2xpcHMvYmFzaWMvcGFydHMvdGFibGUtaXRlbXMtc21hbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNkJBQXNDO0FBRXRDLFNBQVMsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLFFBQVE7SUFDM0QsR0FBRztTQUNBLFFBQVEsQ0FBQyxDQUFDLENBQUM7U0FDWCxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDakIsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ3hCLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7QUFDM0QsQ0FBQztBQUVELFNBQWdCLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsS0FBWSxFQUFFLEtBQWlCO0lBQ3hFLElBQUksQ0FBQyxDQUFDO0lBQ04sTUFBTSxlQUFlLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUUvQixJQUFJLGFBQWEsR0FBRyxDQUFDLENBQUM7SUFFdEIsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQzFFLElBQUEsbUJBQWMsRUFBQyxHQUFHLEVBQUUsZUFBZSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBRTFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUNqQyxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEIsYUFBYSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDL0IsTUFBTSxRQUFRLEdBQUcsZUFBZSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNoRCxnQkFBZ0IsQ0FDZCxHQUFHLEVBQ0gsUUFBUSxFQUNSLElBQUksQ0FBQyxLQUFLLEVBQ1YsSUFBSSxDQUFDLFdBQVcsRUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FDZCxDQUFDO1FBRUYsSUFBQSxtQkFBYyxFQUFDLEdBQUcsRUFBRSxRQUFRLEdBQUcsRUFBRSxDQUFDLENBQUM7S0FDcEM7SUFFRCxNQUFNLHFCQUFxQixHQUFHLGVBQWUsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDN0QsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLHFCQUFxQixFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsYUFBYSxDQUFDLENBQUM7QUFDM0UsQ0FBQztBQTFCRCxnREEwQkMifQ==