chore(*-payment-*): Cleanup PaymentProvider plugins (#3011)

This commit is contained in:
Adrien de Peretti
2023-02-07 12:43:24 +01:00
committed by GitHub
parent 0a2bf7845d
commit ce866475b4
6 changed files with 25 additions and 129 deletions

View File

@@ -0,0 +1,9 @@
---
"medusa-payment-adyen": patch
"medusa-payment-klarna": patch
"medusa-payment-manual": patch
"medusa-payment-paypal": patch
"@medusajs/medusa": patch
---
chore(*-payment-*): cleanup payment provider plugins

View File

@@ -1,8 +1,7 @@
import axios from "axios" import axios from "axios"
import _ from "lodash" import _ from "lodash"
import { hmacValidator } from "@adyen/api-library" import { CheckoutAPI, Client, Config, hmacValidator } from "@adyen/api-library"
import { BaseService } from "medusa-interfaces" import { BaseService } from "medusa-interfaces"
import { Client, Config, CheckoutAPI } from "@adyen/api-library"
class AdyenService extends BaseService { class AdyenService extends BaseService {
constructor({ cartService }, options) { constructor({ cartService }, options) {
@@ -201,10 +200,6 @@ class AdyenService extends BaseService {
return { cart_id: cart.id } return { cart_id: cart.id }
} }
async createPaymentNew(paymentInput) {
return { resource_id: paymentInput.resource_id }
}
/** /**
* Retrieves Adyen payment. This is not supported by adyen, so we simply * Retrieves Adyen payment. This is not supported by adyen, so we simply
* return the current payment method data * return the current payment method data
@@ -326,10 +321,6 @@ class AdyenService extends BaseService {
return paymentData return paymentData
} }
async updatePaymentNew(paymentData, details) {
return paymentData
}
/** /**
* Additional details * Additional details
* @param {object} paymentData - payment data * @param {object} paymentData - payment data

View File

@@ -1,4 +1,3 @@
import _ from "lodash"
import { PaymentService } from "medusa-interfaces" import { PaymentService } from "medusa-interfaces"
class MobilePayAdyenService extends PaymentService { class MobilePayAdyenService extends PaymentService {
@@ -20,12 +19,6 @@ class MobilePayAdyenService extends PaymentService {
return raw return raw
} }
async createPaymentNew(paymentInput) {
const raw = await this.adyenService_.createPaymentNew(paymentInput)
raw.type = "mobilepay"
return raw
}
async authorizePayment(sessionData, context) { async authorizePayment(sessionData, context) {
return this.adyenService_.authorizePayment(sessionData, context) return this.adyenService_.authorizePayment(sessionData, context)
} }
@@ -38,10 +31,6 @@ class MobilePayAdyenService extends PaymentService {
return this.adyenService_.updatePayment(data) return this.adyenService_.updatePayment(data)
} }
async updatePaymentNew(data, _) {
return this.adyenService_.updatePaymentNew(data)
}
async updatePaymentData(sessionData, update) { async updatePaymentData(sessionData, update) {
return this.adyenService_.updatePaymentData(sessionData, update) return this.adyenService_.updatePaymentData(sessionData, update)
} }

View File

@@ -326,33 +326,15 @@ class KlarnaProviderService extends PaymentService {
/** /**
* Creates Klarna PaymentIntent. * Creates Klarna PaymentIntent.
* @param {string} cart - the cart to create a payment for * @param {string} cart - the cart to create a payment for
* @param {number} amount - the amount to create a payment for
* @returns {string} id of payment intent * @returns {string} id of payment intent
*/ */
async createPayment(cart) { async createPayment(cart) {
try { try {
const order = await this.cartToKlarnaOrder(cart) const order = await this.cartToKlarnaOrder(cart)
const klarnaPayment = await this.klarna_ return await this.klarna_
.post(this.klarnaOrderUrl_, order) .post(this.klarnaOrderUrl_, order)
.then(({ data }) => data) .then(({ data }) => data)
return klarnaPayment
} catch (error) {
this.logger_.error(error)
throw error
}
}
async createPaymentNew(paymentInput) {
try {
const order = await this.paymentInputToKlarnaOrder(paymentInput)
const klarnaPayment = await this.klarna_
.post(this.klarnaOrderUrl_, order)
.then(({ data }) => data)
return klarnaPayment
} catch (error) { } catch (error) {
this.logger_.error(error) this.logger_.error(error)
throw error throw error
@@ -478,8 +460,8 @@ class KlarnaProviderService extends PaymentService {
/** /**
* Updates Klarna order. * Updates Klarna order.
* @param {string} order - the order to update * @param {string} paymentData
* @param {Object} data - the update object * @param {Object} cart
* @returns {Object} updated order * @returns {Object} updated order
*/ */
async updatePayment(paymentData, cart) { async updatePayment(paymentData, cart) {
@@ -498,22 +480,6 @@ class KlarnaProviderService extends PaymentService {
return paymentData return paymentData
} }
async updatePaymentNew(paymentData, paymentInput) {
if (paymentInput.amount !== paymentData.order_amount) {
const order = await this.paymentInputToKlarnaOrder(paymentInput)
return this.klarna_
.post(`${this.klarnaOrderUrl_}/${paymentData.order_id}`, order)
.then(({ data }) => data)
.catch(async (_) => {
return this.klarna_
.post(this.klarnaOrderUrl_, order)
.then(({ data }) => data)
})
}
return paymentData
}
/** /**
* Captures Klarna order. * Captures Klarna order.
* @param {Object} paymentData - payment method data from cart * @param {Object} paymentData - payment method data from cart

View File

@@ -26,10 +26,6 @@ class ManualPaymentService extends PaymentService {
return { status: "pending" } return { status: "pending" }
} }
async createPaymentNew() {
return { status: "pending" }
}
/** /**
* Retrieves payment * Retrieves payment
* @param {object} data - the data of the payment to retrieve * @param {object} data - the data of the payment to retrieve
@@ -56,12 +52,7 @@ class ManualPaymentService extends PaymentService {
return sessionData return sessionData
} }
async updatePaymentNew(sessionData) {
return sessionData
}
/** /**
.
* @param {object} sessionData - payment session data. * @param {object} sessionData - payment session data.
* @param {object} update - payment session update data. * @param {object} update - payment session update data.
* @returns {object} existing data merged with update data * @returns {object} existing data merged with update data

View File

@@ -88,8 +88,12 @@ class PayPalProviderService extends PaymentService {
* @returns {object} the data to be stored with the payment session. * @returns {object} the data to be stored with the payment session.
*/ */
async createPayment(cart) { async createPayment(cart) {
const { region_id, id, resource_id, total } = cart let { id, region_id, resource_id, currency_code, total } = cart
const { currency_code } = await this.regionService_.retrieve(region_id)
if (!currency_code) {
const region = await this.regionService_.retrieve(region_id)
currency_code = region.currency_code
}
const amount = total const amount = total
@@ -118,34 +122,6 @@ class PayPalProviderService extends PaymentService {
return { id: res.result.id } return { id: res.result.id }
} }
async createPaymentNew(paymentInput) {
const { resource_id, currency_code, amount } = paymentInput
const request = new PayPal.orders.OrdersCreateRequest()
request.requestBody({
intent: "AUTHORIZE",
application_context: {
shipping_preference: "NO_SHIPPING",
},
purchase_units: [
{
custom_id: resource_id,
amount: {
currency_code: currency_code.toUpperCase(),
value: roundToTwo(
humanizeAmount(amount, currency_code),
currency_code
),
},
},
],
})
const res = await this.paypal_.execute(request)
return { id: res.result.id }
}
/** /**
* Retrieves a PayPal order. * Retrieves a PayPal order.
* @param {object} data - the data stored with the payment * @param {object} data - the data stored with the payment
@@ -216,8 +192,12 @@ class PayPalProviderService extends PaymentService {
*/ */
async updatePayment(sessionData, cart) { async updatePayment(sessionData, cart) {
try { try {
const { region_id, total } = cart let { currency_code, total, region_id } = cart
const { currency_code } = await this.regionService_.retrieve(region_id)
if (!currency_code) {
const region = await this.regionService_.retrieve(region_id)
currency_code = region.currency_code
}
const request = new PayPal.orders.OrdersPatchRequest(sessionData.id) const request = new PayPal.orders.OrdersPatchRequest(sessionData.id)
request.requestBody([ request.requestBody([
@@ -244,35 +224,6 @@ class PayPalProviderService extends PaymentService {
} }
} }
async updatePaymentNew(sessionData, paymentInput) {
try {
const { currency_code, amount } = paymentInput
const request = new PayPal.orders.OrdersPatchRequest(sessionData.id)
request.requestBody([
{
op: "replace",
path: "/purchase_units/@reference_id=='default'",
value: {
amount: {
currency_code: currency_code.toUpperCase(),
value: roundToTwo(
humanizeAmount(amount, currency_code),
currency_code
),
},
},
},
])
await this.paypal_.execute(request)
return sessionData
} catch (error) {
return this.createPaymentNew(paymentInput)
}
}
/** /**
* Not suported * Not suported
*/ */
@@ -436,7 +387,6 @@ class PayPalProviderService extends PaymentService {
} }
const webhookRes = await this.paypal_.execute(webhookReq) const webhookRes = await this.paypal_.execute(webhookReq)
console.log(webhookRes.result.webhooks)
let found let found
if (webhookRes.result && webhookRes.result.webhooks) { if (webhookRes.result && webhookRes.result.webhooks) {
found = webhookRes.result.webhooks.find((w) => { found = webhookRes.result.webhooks.find((w) => {