Files
mtdb_movie/common/resources/client/admin/subscriptions/create-subscription-dialog.tsx
maher 703f50a09d
Some checks failed
Build / run (push) Has been cancelled
first commit
2025-10-29 11:42:25 +01:00

57 lines
1.7 KiB
TypeScript
Executable File

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 {useCreateSubscription} from './requests/use-create-subscription';
import {Subscription} from '../../billing/subscription';
import {CrupdateSubscriptionForm} from './crupdate-subscription-form';
export function CreateSubscriptionDialog() {
const {close, formId} = useDialogContext();
const form = useForm<Partial<Subscription>>({});
const createSubscription = useCreateSubscription(form);
return (
<Dialog>
<DialogHeader>
<Trans message="Add new subscription" />
</DialogHeader>
<DialogBody>
<CrupdateSubscriptionForm
formId={formId}
form={form}
onSubmit={values => {
createSubscription.mutate(values, {
onSuccess: () => {
close();
},
});
}}
/>
</DialogBody>
<DialogFooter>
<Button
onClick={() => {
close();
}}
>
<Trans message="Cancel" />
</Button>
<Button
form={formId}
disabled={createSubscription.isPending}
variant="flat"
color="primary"
type="submit"
>
<Trans message="Save" />
</Button>
</DialogFooter>
</Dialog>
);
}