UNPKG

pcp-server-nodejs-sdk

Version:

[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=PAYONE-GmbH_PCP-server-nodeJS-SDK&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=PAYONE-GmbH_PCP-server-nodeJS-SDK) [![Coverage](https://sonarcloud.io/api/pr

58 lines 2.32 kB
import { ApplePaymentTokenVersion } from '../models/ApplePaymentTokenVersion.js'; import { MobilePaymentNetwork } from '../models/MobilePaymentNetwork.js'; function networkFromString(value) { switch (value.toUpperCase()) { case MobilePaymentNetwork.MASTERCARD: return MobilePaymentNetwork.MASTERCARD; case MobilePaymentNetwork.VISA: return MobilePaymentNetwork.VISA; case MobilePaymentNetwork.AMEX: return MobilePaymentNetwork.AMEX; case MobilePaymentNetwork.GIROCARD: return MobilePaymentNetwork.GIROCARD; case MobilePaymentNetwork.DISCOVER: return MobilePaymentNetwork.DISCOVER; case MobilePaymentNetwork.JCB: return MobilePaymentNetwork.JCB; default: throw new TypeError(`'${value}' can't represent a Network`); } } function versionFromString(value) { switch (value) { case ApplePaymentTokenVersion.EC_V1: return ApplePaymentTokenVersion.EC_V1; default: throw new TypeError(`'${value}' can't represent an ApplePaymentTokenVersion`); } } export function tokenFromPaymentData(paymentData) { const version = paymentData?.version ? versionFromString(paymentData.version) : undefined; const signature = paymentData?.signature; const transactionId = paymentData?.header?.transactionId; if (version === undefined || signature === undefined || transactionId === undefined) { return undefined; } return { version, signature, header: { transactionId, applicationData: paymentData?.header?.applicationData, }, }; } export function transformApplePayPaymentToMobilePaymentMethodSpecificInput(payment) { return { paymentProductId: 302, publicKeyHash: payment.token?.paymentData?.header?.publicKeyHash, ephemeralKey: payment.token?.paymentData?.header?.ephemeralPublicKey, paymentProduct302SpecificInput: { network: payment.token?.paymentMethod?.network ? networkFromString(payment.token.paymentMethod.network) : undefined, token: tokenFromPaymentData(payment.token?.paymentData), }, }; } //# sourceMappingURL=ApplePayTransformer.js.map