feat(time-tracking): wire Hub / Manual Entry / Recent Activity screens into the field app
Deploy to route.crispygoat.com / deploy (push) Successful in 4m38s

The cycle 12 Hub + Manual Entry + Recent Activity surfaces were defined
(HubScreen, ManualEntryScreen, ManualEntrySuccessScreen, HistoryScreen)
and the reducer / state / server actions were all wired, but the render
branches in TimeTrackingScreens were never connected — so a worker
hitting the field app on a valid session got a blank Hub, and after
clock-out they were dumped back on the PIN screen even though the
session cookie was still valid.

This commit reconnects the four missing screens:

- hub           → HubScreen (greeting, live status hero, three big
                   action tiles: Clock In / Out, Manual Entry, Recent
                   Activity + a small Sign-out chip)
- manual_entry  → ManualEntryScreen (date / clock in / clock out /
                   lunch / task / reason / notes, client-side
                   validation, calls submitManualTimeLog)
- manual_entry_success → ManualEntrySuccessScreen (receipt card +
                   Add another / Back to home)
- history       → HistoryScreen (date-grouped last-14-days list
                   from getRecentTimeLogs)

Main component gains:
- handleHubTap(dest) — small state machine for the hub tiles
- handleSubmitManualLog() — validates the draft, calls the server,
  stores ManualEntryResult, navigates to success
- handleAnotherManualLog() / handleHome() — round-trip back into the
  manual flow / hub
- loadRecentLogs() — fires on history-screen entry, dispatches the
  SET_MANUAL_LOGS_* actions

ClockedOutScreen no longer dumps the worker on the PIN screen:
- 'Back to PIN entry' → 'Back to home' (lands on hub, session stays)
- New 'Sign out' ghost button for the explicit log-out path

Two new translation keys (en + es):
- clocked_out_home_cta: 'Back to home' / 'Volver al inicio'
- clocked_out_sign_out_cta: 'Sign out' / 'Cerrar sesión'

Verification
- npx tsc --noEmit  → 0 errors
- npm run build     → green
- local 200 on /tuxedo/time-clock (dev server)
This commit is contained in:
Nora
2026-07-04 00:57:32 -06:00
parent 34d88d594f
commit 9d0e325c26
File diff suppressed because it is too large Load Diff