-
Fetch-request source types, glass-pane create page, date formatting (#18)
released this
2026-08-24 20:28:18 +00:00 | 0 commits to main since this releaseMR: Fetch-request source types, glass-pane create page, date formatting
Branch:
xlsx-statement-support→main
Commits:1af0a6b→231869d(6 commits)Summary
Three related strands of UI work on the fetch-request flow, plus library-level improvements in
react-openapi:- Source types — the create form now offers Pdf / Xlsx / Csv / Email sources (spec-driven); legacy generic
fileis no longer offered for new fetch requests, and a per-requesttrust_fallback(amount|balance) can be set at creation. - Create page redesign — the flat single-column form is now two equal-height frosted "glass" panes over a subtle brand-indigo gradient backdrop: Source & Account (account/bank above the expanding source field) and Window & Policy (start/end/pipeline/trusted). Recent fetch-request rows share the same glass recipe.
- Date formatting — all dates/datetimes across lists, details and display-format templates render as
"24 Aug 2026"/"24 Aug 2026, 09:07"instead of raw ISO strings; datetime fields can opt into editing as a plain date picker while storing midnight.
Changes
react-openapi (library)
src/utils/datetime.ts(new) — zero-depformatDate/formatDateTime(en-IN viaIntl). Only ISO-shaped strings are rewritten; DD-MM-YYYY expense strings and non-dates pass through untouched. Exported from the package index.- Display wiring:
ListCellRenderercatch-all + inline-dialog cells,InlineRefField, andapplyDisplayFormattemplate interpolation (ISO-shaped values auto-format). x-edit-asmechanism: newFieldConfig.editAs;DateFieldrenders adate-timefield withx-edit-as: dateas a plain date input, normalizes inbound values toYYYY-MM-DD, and submitsT00:00:00. Routing sites unchanged.
App
fetch-requests.models.ts:SourceTypegains"csv", newCsvSource, create-side union dropsFileSource.FetchRequestCreate.tsx: two-pane grid layout (explicit field partitioning, grid stretch for equal heights), fixed backdrop layer, localGlassPanelhelper, list rows restyled;created_atpinned right before row actions.ReportList.tsx: generated date right-aligned before action buttons; outer row no longer wraps.ReportViewer.tsx: header timestamp formatted via exportedformatDateTime.
Verification
tsc -bclean at every commit.- Formatter behavior spot-checked:
2026-08-24T09:07:25.168000→24 Aug 2026, 09:07;01-05-2026unchanged;Z-suffixed UTC converts to local wall time.
Deploy notes
- Pairs with the khata-app MR (same branch name): backend supplies the Source oneOf (pdf/xlsx/csv/email),
trust_fallback, andx-edit-asannotations consumed here. - No dependency changes; no API changes client-side beyond honoring existing spec extensions.
Reviewed-on: #18
Co-authored-by: Vishesh 'ironeagle' Bangotra aetoskia@gmail.com
Co-committed-by: Vishesh 'ironeagle' Bangotra aetoskia@gmail.comDownloads
- Source types — the create form now offers Pdf / Xlsx / Csv / Email sources (spec-driven); legacy generic