import { AlertDialog, AlertDialogDescription, AlertDialogLabel, } from '@reach/alert-dialog'; import { FunctionalComponent } from 'preact'; import { Icon } from './Icon'; import { PremiumIllustration } from '@standardnotes/stylekit'; import { useRef } from 'preact/hooks'; import { WebApplication } from '@/ui_models/application'; import { openSubscriptionDashboard } from '@/hooks/manageSubscription'; type Props = { application: WebApplication; featureName: string; hasSubscription: boolean; onClose: () => void; showModal: boolean; }; export const PremiumFeaturesModal: FunctionalComponent = ({ application, featureName, hasSubscription, onClose, showModal, }) => { const plansButtonRef = useRef(null); const handleClick = () => { if (hasSubscription) { openSubscriptionDashboard(application); } else if (window.plansUrl) { window.location.assign(window.plansUrl); } }; return showModal ? (
Enable Premium Features
In order to use {featureName}{' '} and other premium features, please purchase a subscription or upgrade your current plan.
) : null; };