import { __ } from '@wordpress/i18n'; import { useState, useEffect } from '@wordpress/element'; import { InspectorControls, useBlockProps } from '@wordpress/block-editor'; import { PanelBody, Spinner } from '@wordpress/components'; import { PayPalScriptProvider, PayPalMessages } from '@paypal/react-paypal-js'; import { useScriptParams } from '../../../../ppcp-paylater-block/resources/js/hooks/script-params'; export default function Edit({ attributes, clientId, setAttributes }) { const { id, ppcpId } = attributes; const [loaded, setLoaded] = useState(false); let amount; const postContent = String(wp.data.select('core/editor')?.getEditedPostContent()); if (postContent.includes('woocommerce/checkout') || postContent.includes('woocommerce/cart')) { amount = 50.0; } const cartConfig = PcpCartPayLaterBlock.config.cart; // Dynamically setting previewStyle based on the layout attribute let previewStyle = {}; if (cartConfig.layout === 'flex') { previewStyle = { layout: cartConfig.layout, color: cartConfig.color, ratio: cartConfig.ratio, }; } else { previewStyle = { layout: cartConfig.layout, logo: { position: cartConfig['logo-position'], type: cartConfig['logo-type'], }, text: { color: cartConfig['text-color'], size: cartConfig['text-size'], }, }; } let classes = ['ppcp-paylater-block-preview', 'ppcp-overlay-parent']; if (PcpCartPayLaterBlock.vaultingEnabled || !PcpCartPayLaterBlock.placementEnabled) { classes = [...classes, 'ppcp-paylater-unavailable', 'block-editor-warning']; } const props = useBlockProps({ className: classes.join(' ') }); useEffect(() => { if (!ppcpId) { setAttributes({ ppcpId: `ppcp-${clientId}` }); } }, [ppcpId, clientId]); if (PcpCartPayLaterBlock.vaultingEnabled) { return (
{__('Choose the layout and color of your messaging in the PayPal Payments Pay Later settings for the “Cart” messaging placement.', 'woocommerce-paypal-payments')}