import { AlertDialog } from '@reach/alert-dialog' import { FunctionComponent, useRef } from 'react' import { WebApplication } from '@/Application/Application' import { PremiumFeatureModalType } from './PremiumFeatureModalType' import { FeatureName } from '@/Controllers/FeatureName' import { SuccessPrompt } from './Subviews/SuccessPrompt' import { UpgradePrompt } from './Subviews/UpgradePrompt' type Props = { application: WebApplication featureName?: FeatureName | string hasSubscription: boolean hasAccount: boolean onClose: () => void showModal: boolean type: PremiumFeatureModalType } const PremiumFeaturesModal: FunctionComponent = ({ application, featureName, hasSubscription, hasAccount, onClose, showModal, type = PremiumFeatureModalType.UpgradePrompt, }) => { const ctaButtonRef = useRef(null) if (!showModal) { return null } return (
{type === PremiumFeatureModalType.UpgradePrompt && ( )} {type === PremiumFeatureModalType.UpgradeSuccess && }
) } export default PremiumFeaturesModal