mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-09 13:01:00 +00:00
Evolve the inbound-documents screen into a real document library on top of the store-first backend. - Upload stays store-only and always works: the form now files a document with an optional title, category, and document date in one step. Extraction is a separate, explicit action. - List becomes an organized library: documents grouped by date, with a title (filename fallback), category and status badges, and pending/fact counts. A toolbar adds title/filename search, a category filter, and a sort control (document date / date added / title, asc/desc). Keyset pagination loads more via the returned cursor through useInfiniteQuery. - Detail panel: view or download the original, edit metadata (rename, recategorise, set the document date), optionally run extraction, then the existing review-then-confirm flow. When no scan provider is configured, extraction surfaces a calm inline note instead of a hard error; the stored document is untouched. Discard stays. - Add a parameterised list key to the query-key factory so each filter/sort combination keeps its own cache bucket while staying under the documents prefix for invalidation. - Rename the surface to "Documents" across all six locales (title, subtitle, module label/description) and add the new toolbar, edit, extract, and date-group strings. Route, model, and module key stay internal. Add component and unit coverage for the grouped list, the detail/review surface, the metadata edit form, the provider-unsupported note, and the search-param/grouping/error-classification helpers.