File "block.js"
Full Path: /home/vantageo/public_html/cache/cache/cache/cache/.wp-cli/wp-content/plugins/mailchimp-for-woocommerce_bk/blocks/assets/js/checkout-newsletter-subscription-block/block.js
File size: 1.48 KB
MIME-type: text/x-java
Charset: utf-8
/**
* External dependencies
*/
import { useEffect, useState } from '@wordpress/element';
import { CheckboxControl } from '@woocommerce/blocks-checkout';
import {__} from "@wordpress/i18n";
const Block = ( { cart, extensions, text, gdprHeadline, gdpr, checkoutExtensionData } ) => {
let defaultGDPR = {};
if (gdpr && gdpr.length) {
gdpr.forEach((item) => {
defaultGDPR[item.marketing_permission_id] = false;
});
}
const [ checked, setChecked ] = useState( false );
const [ gdprFields ] = useState({});
const { setExtensionData } = checkoutExtensionData;
useEffect( () => {
setExtensionData( 'mailchimp-newsletter', 'optin', checked );
}, [ checked, setExtensionData ] );
return (
<>
<CheckboxControl
id="subscribe-to-newsletter"
checked={ checked }
onChange={ setChecked }
>
<span dangerouslySetInnerHTML={ {__html: text} }/>
</CheckboxControl>
{gdpr && gdpr.length ? __(gdprHeadline, 'mailchimp-for-woocommerce') : ''}
{gdpr && gdpr.length ? gdpr.map((gdprItem) => {
return (<CheckboxControl
id={'gdpr_'+gdprItem.marketing_permission_id}
checked={ gdprFields[gdprItem.marketing_permission_id] }
onChange={ (e) => {
gdprFields[gdprItem.marketing_permission_id] = !gdprFields[gdprItem.marketing_permission_id];
setExtensionData( 'mailchimp-newsletter', 'gdprFields', gdprFields);
}}
>
<span dangerouslySetInnerHTML={ {__html: gdprItem.text} }/>
</CheckboxControl>);
}) : ''}
</>
);
};
export default Block;