@mia-burton/klarna-node
Version:
A Node.js module for Klarna
54 lines (53 loc) • 3 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.OrderMapper = void 0;
const types_1 = require("../types");
class OrderMapper {
map(klarnaOrder) {
const order = new types_1.Order();
order.capturedAmount = klarnaOrder.captured_amount;
order.fraudStatus = klarnaOrder.fraud_status;
if (klarnaOrder.billing_address) {
order.billingAddress = new types_1.Address();
order.billingAddress.city = klarnaOrder.billing_address.city;
order.billingAddress.country = klarnaOrder.billing_address.country;
order.billingAddress.email = klarnaOrder.billing_address.email;
order.billingAddress.firstName = klarnaOrder.billing_address.given_name;
order.billingAddress.lastName = klarnaOrder.billing_address.family_name;
order.billingAddress.phone = klarnaOrder.billing_address.phone;
order.billingAddress.postalCode = klarnaOrder.billing_address.postal_code;
order.billingAddress.region = klarnaOrder.billing_address.region;
order.billingAddress.streetAddress = klarnaOrder.billing_address.street_address;
order.billingAddress.streetAddress2 = klarnaOrder.billing_address.street_address2;
}
if (klarnaOrder.shipping_address) {
order.shippingAddress = new types_1.Address();
order.shippingAddress.city = klarnaOrder.shipping_address.city;
order.shippingAddress.country = klarnaOrder.shipping_address.country;
order.shippingAddress.email = klarnaOrder.shipping_address.email;
order.shippingAddress.firstName = klarnaOrder.shipping_address.given_name;
order.shippingAddress.lastName = klarnaOrder.shipping_address.family_name;
order.shippingAddress.phone = klarnaOrder.shipping_address.phone;
order.shippingAddress.postalCode = klarnaOrder.shipping_address.postal_code;
order.shippingAddress.region = klarnaOrder.shipping_address.region;
order.shippingAddress.streetAddress = klarnaOrder.shipping_address.street_address;
order.shippingAddress.streetAddress2 = klarnaOrder.shipping_address.street_address2;
}
order.locale = klarnaOrder.locale;
order.mertchantReference = klarnaOrder.merchant_reference1;
order.amount = klarnaOrder.order_amount / 100;
order.lines = klarnaOrder.order_lines.map((line) => {
const orderLine = new types_1.OrderLine();
orderLine.name = line.name;
orderLine.totalAmount = line.total_amount / 100;
orderLine.quantity = line.quantity;
orderLine.unitPrice = line.unit_price / 100;
return orderLine;
});
order.country = klarnaOrder.purchase_country;
order.currency = klarnaOrder.purchase_currency;
order.status = klarnaOrder.status;
return order;
}
}
exports.OrderMapper = OrderMapper;