import type { CriteriaDTO } from "@erp/core"; import { INITIAL_PAGE_INDEX, INITIAL_PAGE_SIZE } from "@repo/rdx-criteria"; import type { QueryKey } from "@tanstack/react-query"; export const LIST_CUSTOMERS_QUERY_KEY_PREFIX = ["customers"] as const; export const LIST_CUSTOMERS_QUERY_KEY = (criteria?: CriteriaDTO): QueryKey => [ ...LIST_CUSTOMERS_QUERY_KEY_PREFIX, { pageNumber: criteria?.pageNumber ?? INITIAL_PAGE_INDEX, pageSize: criteria?.pageSize ?? INITIAL_PAGE_SIZE, q: criteria?.q ?? "", filters: criteria?.filters ?? [], orderBy: criteria?.orderBy ?? "", order: criteria?.order ?? "", }, ] as const; export const CUSTOMER_QUERY_KEY = (customerId?: string): QueryKey => [ "customers:detail", { customerId, }, ]; export const CUSTOMER_CREATE_KEY = ["customers", "create"] as const; export const CUSTOMER_UPDATE_KEY = ["customers", "update"] as const; export const CUSTOMER_DELETE_KEY = ["customers", "delete"] as const;