shoc-frontend-new/src/infra/query-key/query-key.ts
Arthur Bassi a299b8980c feat(work-orders): keep Assigned To open and name audit actors [SH-127]
Keep assignment ungated. Match AAP unassigned copy and name audit actors.
2026-08-28 09:19:43 -03:00

131 lines
6 KiB
TypeScript

import type { WorkOrdersListParams } from "@/domain/work-orders/types/work-order-list";
import type {
WorkOrderBoardQueryParams,
WorkOrderBoardSearchQueryParams,
} from "@/domain/work-orders/types/work-order-board";
export const queryKeys = {
auth: {
all: ["auth"] as const,
session: () => [...queryKeys.auth.all, "session"] as const,
},
workOrders: {
all: ["workOrders"] as const,
list: (params?: WorkOrdersListParams) =>
[...queryKeys.workOrders.all, "list", params ?? {}] as const,
board: (params?: WorkOrderBoardQueryParams) =>
[...queryKeys.workOrders.all, "board", params ?? {}] as const,
boardSearch: (params?: WorkOrderBoardSearchQueryParams) =>
[...queryKeys.workOrders.all, "boardSearch", params ?? {}] as const,
byLocation: (locationId: string | number, search = "") =>
[...queryKeys.workOrders.all, "byLocation", locationId, search] as const,
detail: (id: string | number) => [...queryKeys.workOrders.all, "detail", id] as const,
boardDetail: (id: string | number) => [...queryKeys.workOrders.all, "boardDetail", id] as const,
boardMedia: (id: string | number) => [...queryKeys.workOrders.all, "boardMedia", id] as const,
dispatch: (id: string | number) => [...queryKeys.workOrders.all, "dispatch", id] as const,
taskTemplates: () => [...queryKeys.workOrders.all, "taskTemplates"] as const,
dispatchers: () => [...queryKeys.workOrders.all, "dispatchers"] as const,
directory: () => [...queryKeys.workOrders.all, "directory"] as const,
uplifts: (workOrderId: string | number) =>
[...queryKeys.workOrders.all, "uplifts", workOrderId] as const,
},
pmSchedules: {
all: ["pmSchedules"] as const,
list: (params?: Record<string, unknown>) =>
[...queryKeys.pmSchedules.all, "list", params ?? {}] as const,
detail: (id: string | number) => [...queryKeys.pmSchedules.all, "detail", id] as const,
},
accounts: {
all: ["accounts"] as const,
list: (params?: Record<string, unknown>) =>
[...queryKeys.accounts.all, "list", params ?? {}] as const,
detail: (id: string | number) => [...queryKeys.accounts.all, "detail", id] as const,
},
employees: {
all: ["employees"] as const,
list: (params?: Record<string, unknown>) =>
[...queryKeys.employees.all, "list", params ?? {}] as const,
detail: (id: string | number) => [...queryKeys.employees.all, "detail", id] as const,
},
dashboard: {
all: ["dashboard"] as const,
stats: () => [...queryKeys.dashboard.all, "stats"] as const,
},
dropdownOptions: {
all: ["dropdownOptions"] as const,
byCategory: (category: string, parent?: string) =>
[...queryKeys.dropdownOptions.all, "byCategory", category, parent ?? ""] as const,
},
locations: {
all: ["locations"] as const,
list: (params?: Record<string, unknown>) =>
[...queryKeys.locations.all, "list", params ?? {}] as const,
detail: (id: string | number) => [...queryKeys.locations.all, "detail", id] as const,
dropdown: () => [...queryKeys.locations.all, "dropdown"] as const,
sites: (search = "") => [...queryKeys.locations.all, "sites", search] as const,
},
vendors: {
all: ["vendors"] as const,
list: (params?: Record<string, unknown>) =>
[...queryKeys.vendors.all, "list", params ?? {}] as const,
detail: (id: string | number) => [...queryKeys.vendors.all, "detail", id] as const,
facets: (isActive?: boolean) => [...queryKeys.vendors.all, "facets", isActive ?? null] as const,
dropdown: (trade?: string, siteZip?: string) =>
[...queryKeys.vendors.all, "dropdown", trade ?? "", siteZip ?? ""] as const,
portalToken: (vendorId: string | number) =>
[...queryKeys.vendors.all, "portalToken", vendorId] as const,
deactivationImpact: (vendorId: string | number) =>
[...queryKeys.vendors.all, "deactivationImpact", vendorId] as const,
roster: (by: "vendorId" | "companyId", id: string | number) =>
[...queryKeys.vendors.all, "roster", by, id] as const,
},
calendar: {
all: ["calendar"] as const,
range: (start: string, end: string) =>
[...queryKeys.calendar.all, "range", start, end] as const,
detail: (id: string | number) => [...queryKeys.calendar.all, "detail", id] as const,
},
uplifts: {
all: ["uplifts"] as const,
queue: (params?: Record<string, unknown>) =>
[...queryKeys.uplifts.all, "queue", params ?? {}] as const,
forDispatch: (dispatchId: string | number) =>
[...queryKeys.uplifts.all, "dispatch", dispatchId] as const,
evidence: (id: string | number) => [...queryKeys.uplifts.all, "evidence", id] as const,
},
vendorPos: {
all: ["vendorPos"] as const,
list: (params?: Record<string, unknown>) =>
[...queryKeys.vendorPos.all, "list", params ?? {}] as const,
detail: (id: string | number) => [...queryKeys.vendorPos.all, "detail", id] as const,
},
followUps: {
all: ["followUps"] as const,
list: (params?: Record<string, unknown>) =>
[...queryKeys.followUps.all, "list", params ?? {}] as const,
detail: (id: string | number) => [...queryKeys.followUps.all, "detail", id] as const,
},
contacts: {
all: ["contacts"] as const,
list: (params?: Record<string, unknown>) =>
[...queryKeys.contacts.all, "list", params ?? {}] as const,
detail: (id: string | number) => [...queryKeys.contacts.all, "detail", id] as const,
},
taskTemplates: {
all: ["taskTemplates"] as const,
},
assets: {
all: ["assets"] as const,
list: (params?: Record<string, unknown>) =>
[...queryKeys.assets.all, "list", params ?? {}] as const,
detail: (id: string | number) => [...queryKeys.assets.all, "detail", id] as const,
sites: () => [...queryKeys.assets.all, "sites"] as const,
},
vendorPortal: {
all: ["vendorPortal"] as const,
session: (token: string) => [...queryKeys.vendorPortal.all, "session", token] as const,
dispatches: (token: string) => [...queryKeys.vendorPortal.all, "dispatches", token] as const,
dispatch: (token: string, id: string | number) =>
[...queryKeys.vendorPortal.all, "dispatch", token, id] as const,
},
} as const;