UNPKG

@vtex/payment-provider

Version:
45 lines (44 loc) 2.06 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PaymentProvider = void 0; const ramda_1 = require("ramda"); const _1 = require("."); const clients_1 = require("../clients"); const VTEX_PROVIDER_KEY = 'x-provider-api-appkey'; const VTEX_PROVIDER_TOKEN = 'x-provider-api-apptoken'; const VTEX_TEST_SUITE = 'x-vtex-api-is-testsuite'; const VTEX_API_APPKEY = 'x-vtex-api-appkey'; const VTEX_API_APPTOKEN = 'x-vtex-api-apptoken'; class PaymentProvider { constructor(context) { var _a, _b, _c, _d; this.context = context; this.apiKey = ((_b = (_a = context.headers[VTEX_PROVIDER_KEY]) !== null && _a !== void 0 ? _a : context.headers[VTEX_API_APPKEY]) !== null && _b !== void 0 ? _b : ''); this.appToken = ((_d = (_c = context.headers[VTEX_PROVIDER_TOKEN]) !== null && _c !== void 0 ? _c : context.headers[VTEX_API_APPTOKEN]) !== null && _d !== void 0 ? _d : ''); this.isTestSuite = context.headers[VTEX_TEST_SUITE] === 'true'; const headers = (0, ramda_1.pick)([VTEX_API_APPKEY, VTEX_API_APPTOKEN], context.headers); this.payments = new clients_1.Payments(context.vtex, { headers }); } async retry(request) { const callbackUrl = (0, _1.getCallbackUrl)(request); return this.payments.retry(callbackUrl); } async callback(request, data) { const callbackUrl = (0, _1.getCallbackUrl)(request); return this.payments.callback(callbackUrl, data); } async getTokens(request) { var _a; const secureProxyTokensUrl = (_a = request.secureProxyTokensUrl) !== null && _a !== void 0 ? _a : ''; return this.payments.getTokens(secureProxyTokensUrl); } async createToken(request, payload) { var _a; const secureProxyTokensUrl = (_a = request.secureProxyTokensUrl) !== null && _a !== void 0 ? _a : ''; return this.payments.createToken(secureProxyTokensUrl, payload); } } exports.PaymentProvider = PaymentProvider; exports.default = PaymentProvider;