import { useContext, createElement, useState, Fragment, } from '@wordpress/element' import { Overlay } from 'blocksy-options' import { __, sprintf } from 'ct-i18n' const plans = { free: __('Free', 'blocksy-companion'), personal: __('Personal', 'blocksy-companion'), professional: __('Business', 'blocksy-companion'), agency: __('Agency', 'blocksy-companion'), personal_v2: __('Personal', 'blocksy-companion'), professional_v2: __('Business', 'blocksy-companion'), agency_v2: __('Agency', 'blocksy-companion'), } const useUpsellModal = ({ currentPlan = 'free', requiredPlan = 'personal', personal = { title: __('This is a Pro feature', 'blocksy-companion'), description: __( 'Upgrade to any pro plan and get instant access to this and many other feature.', 'blocksy-companion' ), }, professional = { description: __( 'Upgrade to the business or agency plan and get instant access to this and many other features.', 'blocksy-companion' ), }, agency = { description: __( 'Upgrade to the agency plan and get instant access to this and many other features.', 'blocksy-companion' ), }, } = {}) => { const [isDisplayed, setIsDisplayed] = useState(false) const content = ( setIsDisplayed(false)} render={() => (
{requiredPlan === 'personal' && (

{personal.title}

{personal.description}

)} {requiredPlan === 'professional' && ( Required plan

{__('Business or Agency', 'blocksy-companion')}

{professional.description}

)} {requiredPlan === 'agency' && ( Required plan

{__('Agency', 'blocksy-companion')}

{agency.description}

)}
{__('Compare Plans', 'blocksy-companion')} {__('Upgrade Now', 'blocksy-companion')}
)} /> ) return { showNotice: (requiredPlan) => { setIsDisplayed(requiredPlan || true) }, content, } } export default useUpsellModal