feat(cache): 新增客户端失效映射子集(queryKeys only)

This commit is contained in:
SpecialX
2026-07-05 17:52:19 +08:00
parent 0058b0b311
commit 1756ac21a8

View File

@@ -0,0 +1,20 @@
/**
* 客户端可见的失效映射子集(仅 queryKeys 字段)。
*
* 从 invalidation-map.ts 提取 queryKeys避免客户端 bundle 拉入
* revalidateTag 等 server-only 依赖。
*
* 由 useActionMutation 在 onSuccess 中查询以自动 invalidateQueries。
*/
export const CLIENT_INVALIDATION_MAP = {
"classes.create": { queryKeys: [["classes", "list"]] },
"classes.update": { queryKeys: [["classes", "detail"], ["classes", "list"]] },
"classes.delete": { queryKeys: [["classes", "list"], ["classes", "detail"]] },
"classes.students.update": { queryKeys: [["classes", "students"]] },
"classes.schedule.update": { queryKeys: [["classes", "schedule"]] },
"classes.grade.update": { queryKeys: [["classes", "list"]] },
"classes.invitation.create": { queryKeys: [["classes", "invitations"]] },
"classes.invitation.revoke": { queryKeys: [["classes", "invitations"]] },
} as const
export type ClientInvalidationActionId = keyof typeof CLIENT_INVALIDATION_MAP