UNPKG

@mia-burton/klarna-node

Version:
60 lines (59 loc) 3.47 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PaymentSessionMapper = void 0; const types_1 = require("../types"); class PaymentSessionMapper { map(klarnaSession) { const session = new types_1.PaymentSession(); if (klarnaSession.billing_address) { session.billingAddress = new types_1.Address(); session.billingAddress.city = klarnaSession.billing_address.city; session.billingAddress.country = klarnaSession.billing_address.country; session.billingAddress.email = klarnaSession.billing_address.email; session.billingAddress.firstName = klarnaSession.billing_address.given_name; session.billingAddress.lastName = klarnaSession.billing_address.family_name; session.billingAddress.phone = klarnaSession.billing_address.phone; session.billingAddress.postalCode = klarnaSession.billing_address.postal_code; session.billingAddress.region = klarnaSession.billing_address.region; session.billingAddress.streetAddress = klarnaSession.billing_address.street_address; session.billingAddress.streetAddress2 = klarnaSession.billing_address.street_address2; } if (klarnaSession.shipping_address) { session.shippingAddress = new types_1.Address(); session.shippingAddress.city = klarnaSession.shipping_address.city; session.shippingAddress.country = klarnaSession.shipping_address.country; session.shippingAddress.email = klarnaSession.shipping_address.email; session.shippingAddress.firstName = klarnaSession.shipping_address.given_name; session.shippingAddress.lastName = klarnaSession.shipping_address.family_name; session.shippingAddress.phone = klarnaSession.shipping_address.phone; session.shippingAddress.postalCode = klarnaSession.shipping_address.postal_code; session.shippingAddress.region = klarnaSession.shipping_address.region; session.shippingAddress.streetAddress = klarnaSession.shipping_address.street_address; session.shippingAddress.streetAddress2 = klarnaSession.shipping_address.street_address2; } session.locale = klarnaSession.locale; session.mertchantReference = klarnaSession.merchant_reference1; session.urls = { confirmation: klarnaSession.merchant_urls.confirmation, authorization: klarnaSession.merchant_urls.authorization, notification: klarnaSession.merchant_urls.notification, push: klarnaSession.merchant_urls.push }; session.amount = klarnaSession.order_amount / 100; session.lines = klarnaSession.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; }); session.country = klarnaSession.purchase_country; session.currency = klarnaSession.purchase_currency; session.authorizationToken = klarnaSession.authorization_token; session.clientToken = klarnaSession.client_token; session.status = klarnaSession.status; return session; } } exports.PaymentSessionMapper = PaymentSessionMapper;