import { FormControl, FormField, FormItem, FormMessage, Input, Textarea, } from "@repo/shadcn-ui/components"; import { ColumnDef } from "@tanstack/react-table"; import { ChevronDownIcon, ChevronUpIcon, CopyIcon, Trash2Icon } from "lucide-react"; import { useState } from "react"; import { useFieldArray, useFormContext } from "react-hook-form"; import { useTranslation } from "react-i18next"; import { useDetailColumns } from "../../hooks"; import { MODULE_NAME } from "../../manifest"; import { formatCurrency } from "../../pages/create/utils"; import { CustomerInvoiceItemsSortableDataTable, RowIdData, } from "./customer-invoice-items-sortable-datatable"; export const CustomerInvoiceItemsCardEditor = ({ //currency, //language, defaultValues, }: { //currency: CurrencyData; //language: Language; defaultValues: Readonly<{ [x: string]: any }> | undefined; }) => { const { t } = useTranslation(MODULE_NAME); const { control, watch, getValues } = useFormContext(); const watchedItems = watch("items"); //const [pickerMode] = useState<"dialog" | "panel">("dialog"); //const [articlePickerDialogOpen, setArticlePickerDialogOpen] = useState(false); //const [blockPickerDialogOpen, setBlockPickerDialogOpen] = useState(false); const { fields, ...fieldActions } = useFieldArray({ control, name: "items", }); const columns: ColumnDef[] = useDetailColumns( [ /*{ id: "row_id" as const, header: () => ( ), accessorFn: (_: unknown, index: number) => index + 1, size: 5, enableHiding: false, enableSorting: false, enableResizing: false, },*/ /*{ id: "id_article" as const, accessorKey: "id_article", header: "artículo", cell: ({ row: { index, original } }) => { return ( ); }, size: 500, },*/ { id: "description" as const, accessorKey: "description", header: t("customer_invoices.form_fields.description.label"), cell: ({ row: { index, original } }) => ( (