mirror of
https://github.com/Tria-plc/emaui.git
synced 2026-08-27 10:52:54 +00:00
These three carried hardcoded sample data -- a certificate expiring in 2026, a fully-ticked training list, an eligibility checklist that always passed. They now read the portal endpoints and show the seafarer's own record. Expiry is taken from the server rather than recomputed in the browser: it is the same figure the eligibility gate uses, and a client clock that is wrong or in another timezone would otherwise show a seafarer a different number than the officer sees. Eligibility likewise -- the screen asks whether it may apply rather than deciding for itself, so it cannot offer a button the API then refuses. The seaman-book stepper is derived from the application's status instead of a stored timeline, because the status is what the workflow actually moves; a second record of the same journey would only drift out of step. Status colours are keyed by the workflow's own values, so an unmapped status falls back to grey rather than vanishing. /medical and /basic-safety-training had no route at all -- both silently fell through to the dashboard, which is why the pages looked unreachable rather than merely unwired. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>