feat: add dashboard ui view
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
# Мелкие замечания / backlog
|
||||
|
||||
## Dashboard
|
||||
|
||||
[ ] **Сохранение по Ctrl+S**
|
||||
|
||||
- В detail (textarea description) — hotkey `Ctrl+S` / `Cmd+S` → тот же flow, что
|
||||
кнопка Save (`saveDescription`).
|
||||
|
||||
[ ] **Форматирование при сохранении (как в VS Code, без force-format)**
|
||||
|
||||
**Почему сейчас не работает:** кнопка Save в Dashboard пишет через
|
||||
`saveTaskDescription` → `repo.update` → `fs.writeFile`. Это **не** save
|
||||
текстового документа в editor. `editor.formatOnSave` / formatters цепляются к
|
||||
`TextDocument` save (`onWillSaveTextDocument` и т.п.), а не к произвольной
|
||||
записи на диск. Обычный Ctrl+S в `.md` / `.task.md` идёт через editor → format
|
||||
применяется. Наша кнопка — другой путь.
|
||||
|
||||
**Не делать:** вручную вызывать prettier/`formatDocument` «всегда» — это не
|
||||
«как в VS Code», а свой форс, игнорит user settings (off / другой formatter).
|
||||
|
||||
**Как сделать «как в VS Code» (если захотим паритет):** UI-адаптер save
|
||||
открывает/берёт `TextDocument` файла задачи, правит body через
|
||||
`WorkspaceEdit`, затем `document.save()` — тогда сработают format-on-save и
|
||||
остальные will-save хуки, **только если** они включены у пользователя.
|
||||
Use-case/repo для headless/тестов можно оставить; editor-save — optional path
|
||||
из host.
|
||||
|
||||
**Пока:** не блокер; format при правке файла в editor уже ок. Ctrl+S в
|
||||
Dashboard без editor-path format не даст.
|
||||
|
||||
[ ] **Кнопка сброса фильтров**
|
||||
|
||||
- В toolbar Dashboard: Reset → `filter = {}`, query/chips/groupBy defaults,
|
||||
`setFilter` + при необходимости сброс groupBy.
|
||||
|
||||
[ ] **Фильтр по приоритету**
|
||||
|
||||
- Chips как у status: low / medium / high / critical → `filter.priorities` (уже
|
||||
есть в `TaskFilter` / `filterTasks`).
|
||||
|
||||
[ ] **Dashboard: raw MD ↔ view**
|
||||
|
||||
- В detail переключатель режимов: **view** (текущий UI: meta + textarea body) и
|
||||
**raw** (весь файл как markdown + frontmatter, как в editor).
|
||||
- Редактирование/save в raw — отдельный контракт (parse → task / serialize), не
|
||||
ломать format-on-save историю: raw-save тоже лучше через editor path, если
|
||||
нужен паритет с VS Code.
|
||||
|
||||
[ ] **Боковая панель** В боковой панели должны быть
|
||||
|
||||
- кнопка открытия дешборда
|
||||
- кнопки для - удаления, редактирования через дешборд
|
||||
Reference in New Issue
Block a user