Commit Graph

7 Commits

Author SHA1 Message Date
82e642a648 Clean up: Remove preview images 2026-09-05 15:27:25 +00:00
51494046b5 Clean up: Remove preview images 2026-09-05 15:27:21 +00:00
fa32a2ea9c Clean up: Remove preview images 2026-09-05 15:27:17 +00:00
743c2e9c17 Clean up: Remove preview images 2026-09-05 15:27:13 +00:00
e250ee4265 Clean up: Remove preview images 2026-09-05 15:27:10 +00:00
kiro-frontend
75ee6ce3d8 Fix QA blockers: rebuild the frontend TypeScript layer
The committed .ts/.tsx files were written through a shell heredoc that stripped
every quote character, so types.ts, App.tsx, api.ts, TaskList.tsx, TaskRow.tsx,
TaskCard.tsx and AppShell.tsx were not valid TypeScript. Nothing surfaced this
because index.js imported ./App, which resolved to the Create React App template
App.js ahead of App.tsx, and typescript was never added as a dependency, so the
broken files were never compiled. The preview was showing the CRA starter page.

Rewritten and transferred as a binary archive rather than through a shell, with
tsc and the test suite as the check that the files actually parse.

Priority 1 (blocking)
- TaskForm.tsx implemented: title, description, assignee, status, due date and
  priority, validated with react-hook-form and actionable messages.
- App.tsx is now a real container wired to the service layer, replacing the
  hardcoded mock markup. Filtering by My Tasks / All Tasks / Blocked is driven
  by the signed-in user instead of a hardcoded id.
- Edit, delete and inline status changes work from both the table and the cards.

Priority 2
- Accessibility: skip link, ARIA tablist with arrow keys, table roles, dialog
  with focus trap and restore, aria-invalid and aria-describedby on fields,
  polite live region, 44px targets. Contrast corrected to meet AA: buttons use
  #2563eb and accent text #1d4ed8, since the mockup #3b82f6 reaches only 3.7:1
  behind white text.
- Error handling: ErrorBoundary, load failure with retry, per-filter empty
  states, blocked guidance, and save failures that keep the dialog and the
  user's input on screen.
- 17 integration tests replace the CRA placeholder test.

Removed the dead CRA template files (App.js, index.js, logo.svg,
reportWebVitals.js, App_temp.css) and added tsconfig.json plus typescript.

Verified in devbox 306: tsc --noEmit clean, 17/17 tests pass, CI build compiles
with no lint warnings. Screenshots of all six states are in frontend/preview/.
2026-09-05 14:38:38 +00:00
kiro-frontend
f4d1541889 Frontend-initial-implementation 2026-09-05 13:04:52 +00:00