JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr{ gilour
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<UpdateSubscriptionPayload>({ 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 ( <Dialog size="md"> <DialogHeader> <Trans message="Update subscription" /> </DialogHeader> <DialogBody> <CrupdateSubscriptionForm formId={formId} form={form as any} onSubmit={values => { updateSubscription.mutate(values as UpdateSubscriptionPayload, { onSuccess: () => { close(); }, }); }} /> </DialogBody> <DialogFooter> <Button onClick={() => { close(); }} > <Trans message="Cancel" /> </Button> <Button form={formId} disabled={updateSubscription.isPending} variant="flat" color="primary" type="submit" > <Trans message="Save" /> </Button> </DialogFooter> </Dialog> ); }