From 547634efb9916898bf4cf4fa3086a78e7c3ae55b Mon Sep 17 00:00:00 2001 From: timonrieger Date: Fri, 24 Jul 2026 00:30:46 +0200 Subject: [PATCH] enum op exhaustion --- server/src/utils/search-filter.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/server/src/utils/search-filter.ts b/server/src/utils/search-filter.ts index 59510462dd..6715b6c021 100644 --- a/server/src/utils/search-filter.ts +++ b/server/src/utils/search-filter.ts @@ -4,7 +4,9 @@ import { AssetVisibility } from 'src/enum'; import { requireElevatedPermission } from 'src/utils/access'; type EnumField = 'type' | 'visibility'; -type EnumCondition = { eq?: T; ne?: T; in?: T[]; notIn?: T[] }; +type EnumOperator = keyof NonNullable; +type EnumOperandMap = { eq: T; ne: T; in: T[]; notIn: T[] }; +type EnumCondition = { [K in EnumOperator]?: EnumOperandMap[K] }; type IdsFilterField = 'albumIds' | 'personIds' | 'tagIds'; const filterBranches = (filter: SearchFilter): SearchFilterBranch[] => [filter, ...(filter.or ?? [])];