diff --git a/src/app/deals/components/desktop/TopToolPanel/TopToolPanel.tsx b/src/app/deals/components/desktop/TopToolPanel/TopToolPanel.tsx index 453a152..fa5abfb 100644 --- a/src/app/deals/components/desktop/TopToolPanel/TopToolPanel.tsx +++ b/src/app/deals/components/desktop/TopToolPanel/TopToolPanel.tsx @@ -53,6 +53,7 @@ const TopToolPanel = () => { ( diff --git a/src/app/deals/hooks/useDealsFilters.ts b/src/app/deals/hooks/useDealsFilters.ts index f5ef529..ac397a3 100644 --- a/src/app/deals/hooks/useDealsFilters.ts +++ b/src/app/deals/hooks/useDealsFilters.ts @@ -1,10 +1,9 @@ import { isEqual } from "lodash"; import { useForm, UseFormReturnType } from "@mantine/form"; -import { useDebouncedValue } from "@mantine/hooks"; import { BoardSchema, SortDir, StatusSchema } from "@/lib/client"; export type DealsFiltersForm = { - id?: number; + id: number | null; name: string; board: BoardSchema | null; status: StatusSchema | null; @@ -13,15 +12,13 @@ export type DealsFiltersForm = { }; type ReturnType = { - debouncedId: number | undefined; - debouncedName: string; form: UseFormReturnType; isChangedFilters: boolean; }; const useDealsFilters = (): ReturnType => { const initialValues = { - id: undefined, + id: null, board: null, status: null, name: "", @@ -35,12 +32,7 @@ const useDealsFilters = (): ReturnType => { const isChangedFilters = !isEqual(form.values, initialValues); - const [debouncedId] = useDebouncedValue(form.values.id, 300); - const [debouncedName] = useDebouncedValue(form.values.name, 300); - return { - debouncedId, - debouncedName, form, isChangedFilters, }; diff --git a/src/app/deals/modals/DealsTableFiltersModal/DealsTableFiltersModal.tsx b/src/app/deals/modals/DealsTableFiltersModal/DealsTableFiltersModal.tsx index d2460fb..7463bef 100644 --- a/src/app/deals/modals/DealsTableFiltersModal/DealsTableFiltersModal.tsx +++ b/src/app/deals/modals/DealsTableFiltersModal/DealsTableFiltersModal.tsx @@ -38,11 +38,11 @@ const DealsTableFiltersModal = ({ label={"ID"} placeholder={"Введите ID"} {...filtersForm.getInputProps("id")} - value={filtersForm.values.id} + value={filtersForm.values.id ?? ""} onChange={value => typeof value === "number" ? filtersForm.setFieldValue("id", Number(value)) - : filtersForm.setFieldValue("id", undefined) + : filtersForm.setFieldValue("id", null) } min={1} /> diff --git a/src/hooks/cruds/baseCrud/useCrudOperations.tsx b/src/hooks/cruds/baseCrud/useCrudOperations.tsx index bc8049f..2efdd58 100644 --- a/src/hooks/cruds/baseCrud/useCrudOperations.tsx +++ b/src/hooks/cruds/baseCrud/useCrudOperations.tsx @@ -173,7 +173,6 @@ const useCrudOperations = < children: ( Вы уверены, что хотите удалить "{entity.name}"? ), - labels: { confirm: "Да", cancel: "Нет" }, confirmProps: { color: "red" }, onConfirm: () => { deleteMutation.mutate({ path: { pk: entity.id } } as any); diff --git a/src/hooks/lists/useDealsList.ts b/src/hooks/lists/useDealsList.ts index 6158296..d304ee0 100644 --- a/src/hooks/lists/useDealsList.ts +++ b/src/hooks/lists/useDealsList.ts @@ -1,6 +1,7 @@ import { Dispatch, SetStateAction, useState } from "react"; import { useQuery, useQueryClient } from "@tanstack/react-query"; import { UseFormReturnType } from "@mantine/form"; +import { useDebouncedValue } from "@mantine/hooks"; import useDealsFilters, { DealsFiltersForm, } from "@/app/deals/hooks/useDealsFilters"; @@ -36,8 +37,10 @@ const useDealsList = ({ const queryClient = useQueryClient(); const [page, setPage] = useState(1); const itemsPerPage = 10; - const { form, debouncedName, debouncedId, isChangedFilters } = - useDealsFilters(); + const { form, isChangedFilters } = useDealsFilters(); + + const [debouncedId] = useDebouncedValue(form.values.id, 300); + const [debouncedName] = useDebouncedValue(form.values.name, 300); const options: Omit = { query: { @@ -55,9 +58,7 @@ const useDealsList = ({ }, }; - const { data, refetch } = useQuery({ - ...getDealsOptions(options), - }); + const { data, refetch } = useQuery(getDealsOptions(options)); const queryKey = getDealsQueryKey(options);