import { decodeEntities } from '@wordpress/html-entities'
import PaymentMethodContent from '../components/PaymentMethodContent'
import PaymentMethodLabel from '../components/PaymentMethodLabel'
import { PAYMENT_METHODS } from '../constants/paymentMethods'
const { getSetting } = window.wc.wcSettings
const { registerPaymentMethod } = window.wc.wcBlocksRegistry
export const registerPaymentMethodByName = (name: string) => {
const data = getSetting(`${name}_data`, null)
if (!data) {
return
}
const canMakePayment = () => {
switch (name) {
case PAYMENT_METHODS.APPLE_PAY:
return Object.prototype.hasOwnProperty.call(window, 'ApplePaySession') && ApplePaySession.canMakePayments()
default:
return true
}
}
const paymentMethod = {
name: name,
label: ,
content: ,
edit: ,
canMakePayment: canMakePayment,
placeOrderButtonLabel: data.checkout_button_text,
ariaLabel: decodeEntities(data.title),
supports: {
showSavedCards: false,
showSaveOption: false,
features: data.supports,
},
}
registerPaymentMethod(paymentMethod)
}