diff --git a/Auto Run Docs/SpecKit-web-header-analyzer-Phase-03-Header-Input.md b/Auto Run Docs/SpecKit-web-header-analyzer-Phase-03-Header-Input.md index 2593e3a..a41340f 100644 --- a/Auto Run Docs/SpecKit-web-header-analyzer-Phase-03-Header-Input.md +++ b/Auto Run Docs/SpecKit-web-header-analyzer-Phase-03-Header-Input.md @@ -39,10 +39,12 @@ Note: `npx vitest run src/__tests__/AnalyseButton.test.tsx` passes; Vitest emits - [x] All vitest tests pass: `npx vitest run src/__tests__/HeaderInput.test.tsx src/__tests__/FileDropZone.test.tsx src/__tests__/AnalyseButton.test.tsx` - [x] User can paste text into the header input area -- [ ] User can drop an EML/TXT file and see it auto-populate the input +- [x] User can drop an EML/TXT file and see it auto-populate the input - [ ] Analyse button is disabled when input is empty - [ ] Ctrl+Enter keyboard shortcut triggers the analyse action - [ ] Dark hacker theme is visible with correct colour palette - [ ] Validation shows user-friendly errors for empty and oversized input - [ ] `npx eslint src/` and `npx prettier --check src/` pass with zero errors - [ ] Run `/speckit.analyze` to verify consistency + +Note: Wired `FileDropZone` into the main page to populate the header input state on drop. diff --git a/frontend/src/app/page.tsx b/frontend/src/app/page.tsx index 571110c..ce9e7c1 100644 --- a/frontend/src/app/page.tsx +++ b/frontend/src/app/page.tsx @@ -2,6 +2,7 @@ import { useState } from "react"; +import FileDropZone from "../components/FileDropZone"; import HeaderInput from "../components/HeaderInput"; export default function Home() { @@ -30,17 +31,7 @@ export default function Home() {
-
-
- .eml -
-

- Drop an EML or TXT file to auto-populate the header field. -

-

- Max size 1MB -

-
+