feat(documents): thread undated filter through the search loader + i18n

Parses ?undated strictly (=== 'true', mirroring the tagOp clamp), forwards
it as undated || undefined so the absent case drops out of the query, and
returns the flag in page data for the control to reflect. Adds the
docs_filter_undated_only toggle label and the explanatory
docs_range_excludes_undated empty-state copy in de/en/es. The badge reuses
the existing date_precision_unknown ("Datum unbekannt") key from #677.

OpenAPI types hand-edited for the new undated query param on /search and
/ids — CI must run `npm run generate:api` to confirm parity with the spec.

Refs #668
This commit is contained in:
Marcel
2026-05-27 18:45:03 +02:00
parent 268c31a49b
commit f1fc3dc1ce
6 changed files with 114 additions and 0 deletions

View File

@@ -5083,6 +5083,8 @@ export interface operations {
dir?: string;
/** @description Tag operator: AND (default) or OR */
tagOp?: string;
/** @description Restrict to undated documents (meta_date IS NULL) */
undated?: boolean;
/** @description Page number (0-indexed) */
page?: number;
/** @description Page size (max 100) */
@@ -5184,6 +5186,7 @@ export interface operations {
tagQ?: string;
status?: "PLACEHOLDER" | "UPLOADED" | "TRANSCRIBED" | "REVIEWED" | "ARCHIVED";
tagOp?: string;
undated?: boolean;
};
header?: never;
path?: never;