import { FormDialog } from "@repo/rdx-ui/components/form-dialog"; import { SelectWithAction } from "@repo/rdx-ui/components/select-with-action"; import { Button } from "@repo/shadcn-ui/components/button"; import { useTranslation } from "react-i18next"; import { CompanyEditorDialog } from "../../../companies/shared/ui/company-editor-dialog"; import { CompanyForm } from "../../../companies/shared/ui/company-form"; import { InterventionForm } from "../../../interventions"; import { TicketForm } from "../../../tickets"; import { BlockState } from "../../shared"; import { useDashboardQuickCreateController } from "../controllers"; import type { DashboardQuickCreateProps } from "../types"; export function DashboardQuickCreate(props: DashboardQuickCreateProps) { const { kind, companyId, onClose, onNavigate } = props; const { selectedCompany, setSelectedCompany, addingCompany, setAddingCompany, companies, tickets, interventions, saved, } = useDashboardQuickCreateController(props); const { t } = useTranslation("companies"); return ( <> { if (!open) { onClose(); } }} open title={t(`dashboard.create.${kind}`)} wide={kind === "ticket" || kind === "intervention"} > {kind === "company" && } {kind === "ticket" && ( {tickets.data && ( )} )} {kind === "intervention" && ( {interventions.data && ( )} )} {(kind === "asset" || kind === "resource") && ( setAddingCompany(true) }} id="dashboard-create-company" label={t("tickets.company")} onValueChange={setSelectedCompany} options={ companies.data?.companies .filter((item) => item.active) .map((item) => ({ value: item.id, label: item.name })) ?? [] } placeholder={t("dashboard.chooseCompany")} value={selectedCompany} />

{t("dashboard.chooseCompany")}

)}
{addingCompany && ( { setSelectedCompany(id); setAddingCompany(false); }} onOpenChange={setAddingCompany} open /> )} ); }