Files
ds-galo/openspec/changes/archive/2026-10-11-thumbnail-density-control/tasks.md
T

2.6 KiB
Raw Blame History

Tasks

1. Иконки плотности

  • 1.1 Добавить в frontend/src/lib/icons/registry.ts иконку remove (минус) и использовать существующую add (плюс) — проверка: cd frontend && npm run check проходит без ошибок, обе иконки отрисованы как вектор через <Icon name>.

2. Управление размером миниатюр

  • 2.1 В frontend/src/lib/stores/density.svelte.ts добавить отображение «размер» ↔ cols (вправо = крупнее), сохранив cols каноническим и ключ localStorage['grid-cols'] неизменным — проверка: cd frontend && npm run check.
  • 2.2 Переписать frontend/src/lib/components/DensityControl.svelte: ползунок с направлением «вправо крупнее», кнопки «−»/«+» (density_small/density_large) по сторонам, доступные имена, диапазон 2..8 — проверка: в npm run dev значение меняется ползунком и кнопками и сохраняется.
  • 2.3 Подтвердить, что регулятор показан на обоих экранах и делит одно значение (frontend/src/routes/(app)/+page.svelte и frontend/src/routes/(app)/albums/[id]/+page.svelte) — проверка: смена размера на обзоре альбомов отражается в сетке альбома и переживает перезагрузку.

3. Разделитель в тулбаре альбома

  • 3.1 Добавить вертикальный разделитель между DensityControl и кнопкой загрузки в frontend/src/routes/(app)/albums/[id]/+page.svelte — проверка: в npm run dev черта видна, доступные имена обеих кнопок сохранены.

4. Интеграционная проверка

  • 4.1 cd frontend && npm run check && npm run build проходит; вручную: направление ползунка (вправо — крупнее), шаг кнопками, сохранение значения, единый размер в обзоре альбомов и в сетке фото альбома.

Workflow follow-up

  • Заархивировать change после выполнения требований ревью проекта (/opsx-archive).
  • Проверить результат после архивации.