shoc-frontend-new/src/domain/vendors/use-cases/use-vendor-deactivation-impact.ts
2026-07-23 17:36:21 -03:00

22 lines
836 B
TypeScript

import { useQuery, type UseQueryResult } from "@tanstack/react-query";
import { vendorsApi } from "@/domain/vendors/api/vendors-api";
import type { VendorDeactivationImpact } from "@/domain/vendors/types/vendor";
import { queryKeys } from "@/infra/query-key/query-key";
export function useVendorDeactivationImpact(
id: string | number | undefined,
): UseQueryResult<VendorDeactivationImpact, Error> {
return useQuery({
queryKey: queryKeys.vendors.deactivationImpact(id ?? ""),
queryFn: () => vendorsApi.getDeactivationImpact(requireParam(id)),
enabled: id !== undefined && id !== null && id !== "",
staleTime: 0,
});
}
function requireParam(id: string | number | undefined): string | number {
if (id === undefined || id === null || id === "") {
throw new Error("Vendor id is required");
}
return id;
}