import { ConfirmModal } from '@affine/component/ui/modal'; import { useI18n } from '@affine/i18n'; import { useCallback } from 'react'; import * as styles from './member-limit-modal.css'; export interface MemberLimitModalProps { isFreePlan: boolean; open: boolean; plan: string; quota: string; setOpen: (value: boolean) => void; onConfirm: () => void; } export const MemberLimitModal = ({ isFreePlan, open, plan, quota, setOpen, onConfirm, }: MemberLimitModalProps) => { const t = useI18n(); const handleConfirm = useCallback(() => { setOpen(false); onConfirm(); }, [onConfirm, setOpen]); return ( } confirmText={t['com.affine.payment.upgrade']()} confirmButtonOptions={{ variant: 'primary', }} onConfirm={handleConfirm} > ); }; export const ConfirmDescription = ({ isFreePlan, plan, quota, }: { isFreePlan: boolean; plan: string; quota: string; }) => { const t = useI18n(); return (
{t['com.affine.payment.member-limit.description']({ planName: plan, quota: quota, })}
); };