initial commit
This commit is contained in:
@ -0,0 +1 @@
|
||||
export const PAYMENT_METHOD_NAME = 'cheque';
|
@ -0,0 +1,54 @@
|
||||
/**
|
||||
* External dependencies
|
||||
*/
|
||||
import { registerPaymentMethod } from '@woocommerce/blocks-registry';
|
||||
import { __ } from '@wordpress/i18n';
|
||||
import { getSetting } from '@woocommerce/settings';
|
||||
import { decodeEntities } from '@wordpress/html-entities';
|
||||
|
||||
/**
|
||||
* Internal dependencies
|
||||
*/
|
||||
import { PAYMENT_METHOD_NAME } from './constants';
|
||||
|
||||
const settings = getSetting( 'cheque_data', {} );
|
||||
const defaultLabel = __( 'Check payment', 'woocommerce' );
|
||||
const label = decodeEntities( settings.title ) || defaultLabel;
|
||||
|
||||
/**
|
||||
* @typedef {import('@woocommerce/type-defs/registered-payment-method-props').RegisteredPaymentMethodProps} RegisteredPaymentMethodProps
|
||||
*/
|
||||
|
||||
/**
|
||||
* Content component
|
||||
*/
|
||||
const Content = () => {
|
||||
return decodeEntities( settings.description || '' );
|
||||
};
|
||||
|
||||
/**
|
||||
* Label component
|
||||
*
|
||||
* @param {*} props Props from payment API.
|
||||
*/
|
||||
const Label = ( props ) => {
|
||||
const { PaymentMethodLabel } = props.components;
|
||||
return <PaymentMethodLabel text={ label } />;
|
||||
};
|
||||
|
||||
/**
|
||||
* Cheque payment method config object.
|
||||
*/
|
||||
const offlineChequePaymentMethod = {
|
||||
name: PAYMENT_METHOD_NAME,
|
||||
label: <Label />,
|
||||
content: <Content />,
|
||||
edit: <Content />,
|
||||
canMakePayment: () => true,
|
||||
ariaLabel: label,
|
||||
supports: {
|
||||
features: settings?.supports ?? [],
|
||||
},
|
||||
};
|
||||
|
||||
registerPaymentMethod( offlineChequePaymentMethod );
|
Reference in New Issue
Block a user