import {Dialog} from '../../ui/overlays/dialog/dialog'; import {DialogHeader} from '../../ui/overlays/dialog/dialog-header'; import {Trans} from '../../i18n/trans'; import {DialogBody} from '../../ui/overlays/dialog/dialog-body'; import {DialogFooter} from '../../ui/overlays/dialog/dialog-footer'; import {Button} from '../../ui/buttons/button'; import {useDialogContext} from '../../ui/overlays/dialog/dialog-context'; import {useForm} from 'react-hook-form'; import {Subscription} from '../../billing/subscription'; import { UpdateSubscriptionPayload, useUpdateSubscription, } from './requests/use-update-subscription'; import {CrupdateSubscriptionForm} from './crupdate-subscription-form'; interface UpdateSubscriptionDialogProps { subscription: Subscription; } export function UpdateSubscriptionDialog({ subscription, }: UpdateSubscriptionDialogProps) { const {close, formId} = useDialogContext(); const form = useForm({ defaultValues: { id: subscription.id, product_id: subscription.product_id, price_id: subscription.price_id, description: subscription.description, renews_at: subscription.renews_at, ends_at: subscription.ends_at, user_id: subscription.user_id, }, }); const updateSubscription = useUpdateSubscription(form); return ( { updateSubscription.mutate(values as UpdateSubscriptionPayload, { onSuccess: () => { close(); }, }); }} /> ); }