49 lines
1.1 KiB
TypeScript
49 lines
1.1 KiB
TypeScript
import { FormDialog } from "@repo/rdx-ui/components/form-dialog";
|
|
import type { ComponentProps } from "react";
|
|
import { useTranslation } from "react-i18next";
|
|
|
|
import { TicketForm } from "../../shared";
|
|
|
|
export function InterventionTicketCreateDialog({
|
|
open,
|
|
companyId,
|
|
tickets,
|
|
companies,
|
|
technicians,
|
|
onSaved,
|
|
onOpenChange,
|
|
}: {
|
|
open: boolean;
|
|
companyId: string;
|
|
tickets: ComponentProps<typeof TicketForm>["data"]["tickets"];
|
|
companies: ComponentProps<typeof TicketForm>["data"]["companies"];
|
|
technicians: ComponentProps<typeof TicketForm>["data"]["technicians"];
|
|
onSaved: (id: string) => void;
|
|
onOpenChange: (open: boolean) => void;
|
|
}) {
|
|
const { t } = useTranslation("companies");
|
|
|
|
return (
|
|
<FormDialog
|
|
cancelLabel={t("cancel")}
|
|
formActions
|
|
onOpenChange={onOpenChange}
|
|
open={open}
|
|
title={t("tickets.new")}
|
|
wide
|
|
>
|
|
{open && (
|
|
<TicketForm
|
|
data={{
|
|
companies: companies,
|
|
technicians: technicians,
|
|
tickets: tickets,
|
|
}}
|
|
onSaved={onSaved}
|
|
scope={companyId}
|
|
/>
|
|
)}
|
|
</FormDialog>
|
|
);
|
|
}
|