Files
alla-allaos-fullstack/src/features/foundation/document-template/queries.ts
phaichayon 56683ee7b9 Hotfix Rule: Force Fresh Data After CRUD Mutation
Task-h not implements
2026-06-16 11:59:41 +07:00

33 lines
1.3 KiB
TypeScript

import { queryOptions } from '@tanstack/react-query';
import { getDocumentTemplateById, getDocumentTemplates, getDocumentTemplateVersions } from './service';
import type { DocumentTemplateFilters } from './types';
export const documentTemplateKeys = {
all: ['crm-document-templates'] as const,
lists: () => [...documentTemplateKeys.all, 'list'] as const,
list: (filters: DocumentTemplateFilters) =>
[...documentTemplateKeys.lists(), filters] as const,
details: () => [...documentTemplateKeys.all, 'detail'] as const,
detail: (id: string) => [...documentTemplateKeys.details(), id] as const,
versionsRoot: () => [...documentTemplateKeys.all, 'versions'] as const,
versions: (id: string) => [...documentTemplateKeys.versionsRoot(), id] as const
};
export const documentTemplatesQueryOptions = (filters: DocumentTemplateFilters = {}) =>
queryOptions({
queryKey: documentTemplateKeys.list(filters),
queryFn: () => getDocumentTemplates(filters)
});
export const documentTemplateByIdOptions = (id: string) =>
queryOptions({
queryKey: documentTemplateKeys.detail(id),
queryFn: () => getDocumentTemplateById(id)
});
export const documentTemplateVersionsQueryOptions = (id: string) =>
queryOptions({
queryKey: documentTemplateKeys.versions(id),
queryFn: () => getDocumentTemplateVersions(id)
});