Files
frontend-svelte/src/shared/api/queryKeys.ts
T

38 lines
979 B
TypeScript
Raw Normal View History

2026-04-15 12:06:32 +03:00
/**
* Stable query key factory for font-related queries.
* Ensures consistent serialization for batch requests by sorting IDs.
*/
export const fontKeys = {
2026-04-17 12:14:55 +03:00
/**
* Base key for all font queries
*/
2026-04-15 12:06:32 +03:00
all: ['fonts'] as const,
2026-04-17 12:14:55 +03:00
/**
* Keys for font list queries
*/
2026-04-15 12:06:32 +03:00
lists: () => [...fontKeys.all, 'list'] as const,
2026-04-17 12:14:55 +03:00
/**
* Specific font list key with filter parameters
*/
2026-04-15 12:06:32 +03:00
list: (params: object) => [...fontKeys.lists(), params] as const,
2026-04-17 12:14:55 +03:00
/**
* Keys for font batch queries
*/
2026-04-15 12:06:32 +03:00
batches: () => [...fontKeys.all, 'batch'] as const,
2026-04-17 12:14:55 +03:00
/**
* Specific batch key, sorted for stability
*/
2026-04-15 12:06:32 +03:00
batch: (ids: string[]) => [...fontKeys.batches(), [...ids].sort()] as const,
2026-04-17 12:14:55 +03:00
/**
* Keys for font detail queries
*/
2026-04-15 12:06:32 +03:00
details: () => [...fontKeys.all, 'detail'] as const,
2026-04-17 12:14:55 +03:00
/**
* Specific font detail key by ID
*/
2026-04-15 12:06:32 +03:00
detail: (id: string) => [...fontKeys.details(), id] as const,
} as const;