import { __ } from '@wordpress/i18n'; import SettingsCard from '../../ReusableComponents/SettingsCard'; import { PaymentMethodsBlock } from '../../ReusableComponents/SettingsBlocks'; import { PaymentHooks } from '../../../data'; import { useActiveModal } from '../../../data/common/hooks'; import Modal from './TabSettingsElements/Blocks/Modal'; import { usePaymentMethods } from '../../../data/payment/hooks'; const TabPaymentMethods = () => { const { paymentMethodsPayPalCheckout } = PaymentHooks.usePaymentMethodsPayPalCheckout(); const { paymentMethodsOnlineCardPayments } = PaymentHooks.usePaymentMethodsOnlineCardPayments(); const { paymentMethodsAlternative } = PaymentHooks.usePaymentMethodsAlternative(); const { setPersistent } = usePaymentMethods(); const { activeModal, setActiveModal } = useActiveModal(); const getActiveMethod = () => { if ( ! activeModal ) { return null; } const allMethods = [ ...paymentMethodsPayPalCheckout, ...paymentMethodsOnlineCardPayments, ...paymentMethodsAlternative, ]; return allMethods.find( ( method ) => method.id === activeModal ); }; return (
{ activeModal && ( setActiveModal( null ) } onSave={ ( methodId, settings ) => { setPersistent( methodId, { ...getActiveMethod(), title: settings.checkoutPageTitle, description: settings.checkoutPageDescription, } ); if ( 'paypalShowLogo' in settings ) { setPersistent( 'paypalShowLogo', settings.paypalShowLogo ); } if ( 'threeDSecure' in settings ) { setPersistent( 'threeDSecure', settings.threeDSecure ); } if ( 'fastlaneCardholderName' in settings ) { setPersistent( 'fastlaneCardholderName', settings.fastlaneCardholderName ); } if ( 'fastlaneDisplayWatermark' in settings ) { setPersistent( 'fastlaneDisplayWatermark', settings.fastlaneDisplayWatermark ); } setActiveModal( null ); } } /> ) }
); }; export default TabPaymentMethods;