Restored from origin/main (b4663fb): - .github/ workflows and issue templates - .gitignore (proper exclusions) - .opencode/agent/web_developer.md - AGENTS.md, BUILD.md, PROGRESS.md - dev-docs/ (9 architecture/implementation docs) - docs/screenshots/ (4 UI screenshots) - images/ (CodeNomad icons) - package-lock.json (dependency lockfile) - tasks/ (25+ project task files) Also restored original source files that were modified: - packages/ui/src/App.tsx - packages/ui/src/lib/logger.ts - packages/ui/src/stores/instances.ts - packages/server/src/server/routes/workspaces.ts - packages/server/src/workspaces/manager.ts - packages/server/src/workspaces/runtime.ts - packages/server/package.json Kept new additions: - Install-*.bat/.sh (enhanced installers) - Launch-*.bat/.sh (new launchers) - README.md (SEO optimized with GLM 4.7)
35 lines
1.8 KiB
Markdown
35 lines
1.8 KiB
Markdown
# Task 046 - Prompt Input Tailwind Refactor
|
|
|
|
## Goal
|
|
Port the prompt input stack to Tailwind utilities and shared tokens so it no longer depends on custom selectors in `src/index.css`.
|
|
|
|
## Prerequisites
|
|
- Tasks 043-045 complete (color and typography tokens available, message item refactored).
|
|
|
|
## Acceptance Criteria
|
|
- [ ] `src/components/prompt-input.tsx` and nested elements use Tailwind + token classes for layout, borders, and typography.
|
|
- [ ] Legacy selectors in `src/index.css` matching `.prompt-input-container`, `.prompt-input-wrapper`, `.prompt-input`, `.send-button`, `.prompt-input-hints`, `.hint`, `.hint kbd`, and related variants are removed or replaced with token-based utilities.
|
|
- [ ] Input states (focus, disabled, multi-line expansion) and keyboard hint row look identical in light/dark modes.
|
|
- [ ] Esc debounce handling and attachment hooks remain functional.
|
|
|
|
## Steps
|
|
1. Audit existing markup in `prompt-input.tsx` and note the current class usage.
|
|
2. Replace className strings with Tailwind utility stacks that reference CSS variables (e.g., `bg-[var(--surface-base)]`, `text-[var(--text-muted)]`).
|
|
3. Introduce small reusable helpers (e.g., `.kbd` token utility) in `src/styles/components.css` if patterns recur elsewhere.
|
|
4. Delete superseded CSS blocks from `src/index.css` once equivalents exist.
|
|
5. Verify light/dark theme parity and interaction states manually.
|
|
|
|
## Testing Checklist
|
|
- [ ] Run `npm run build`.
|
|
- [ ] In dev mode, send a message with/without attachments, toggle disabled state, and confirm keyboard hints render correctly.
|
|
|
|
## Dependencies
|
|
- Blocks future component refactors for the input stack.
|
|
|
|
## Estimated Time
|
|
0.75 hours
|
|
|
|
## Notes
|
|
- Branch suggestion: `feature/task-046-prompt-input-refactor`.
|
|
- Capture light/dark screenshots for review if any subtle spacing changes occur.
|