feat: add pipeline flow

This commit is contained in:
2026-10-05 01:31:38 +05:00
parent e87bc1d715
commit 6b946bfb08
12 changed files with 716 additions and 177 deletions
+25 -13
View File
@@ -4,15 +4,6 @@
> находки — `docs/plan-seo.md`, `docs/plan-platform.md`,
> `docs/plan-fields-audit-fixes.md`, `docs/tools-audit.md`, `docs/decisions.md`.
## UX — приоритетная очередь
Порядок согласован: D (pipeline). Делать по одной, сверху вниз.
- [ ] **D. Pipeline** — процесс редактирования и настройки: drag-n-drop,
удаление, добавление инструментов; переход «один инструмент ↔ pipeline»
без перезагрузки. Следом — идеи 1–3 (смена первого инструмента,
сворачивание шагов, несколько цепочек)
## lint и прочие правила
- [ ] `tseslint.config(...)` deprecated: сигнатура
@@ -25,6 +16,13 @@
## Мелочи всякие
- [ ] названия инструментов - сейчас в pipeline инструмент называется "обрезать
png", но он работает с любыми картинками, наверное надо убрать. но в
заголовке - возможно надо все форматы указать (SEO задача?)
- [ ] кнопка добавить инструмент в pipeline - обдумать селектор с номальным
поиском, фильтром возможных инструментов и т.д.
- [ ] pipeline - промежуточные результаты
- [ ] pipeline - drag-n-drop инструментов
- [ ] split-into-parts-png - увеличить максимальные значения, плохо работает для
нарезки ассетов
- [ ] split-into-parts-png — режим «по размеру тайла»: указываешь размер тайла
@@ -37,21 +35,30 @@
- [ ] e2e webkit: случайные падения по таймауту 5с (элемент не появляется),
каждый прогон падают разные тесты — webkit под Windows слишком медленный.
Рассмотреть увеличение timeout/expectTimeout для webkit-проекта в
`playwright.config.ts`
`playwright.config.ts`. После фикса перепроверить `tool-flows.spec.ts`
«chain: remove step» — на webkit удаление шага не успевает за 5с (на
остальных движках стабильно)
- [ ] мёртвый i18n-ключ `noParams` («нет параметров — результат готов»): его
ничем не читают. Либо показывать подсказку для инструментов с пустой
схемой (FA-E1), либо удалить ключ из обеих локалей
- [ ] Пересмотреть тесты — убрать точные совпадения текстов и любые селекторы,
привязанные к разметке или svelte-классам (сейчас остались:
`tool-flows.spec.ts`, `schema-tool-strings.test.ts`)
- [ ] можно ли в тестах получать i18n ключ вместо текста? можно ли написать lint
правило такое (запретить toContain без i18n)
- [ ] нужен инструмент для удаления фона по выбранной точке - удалять внутри
выделенной области
- [ ] сделать конвертацию в смайлики\награды для твитча (6 размеров или выбор
какой размер и 2 сетки)
какой размер - 112\56\28px или 72\36\18)
- [ ] сделать несколько проходное сжатие png для получения необходимого размера
файлов, посмотреть реализацию в
[https://github.com/tma02/twitch-emote-resizer](https://github.com/tma02/twitch-emote-resizer)
- [ ] неудобно настраивать ползунками, некоторые инструменты удобнее настроить
через drag-n-drop. звучит сложно, но надо придумать процесс
- [ ] можно ли в тестах получать i18n ключ вместо текста?
- [ ] убрать в тестах все нестандартные символы `→`, длинные тире и т.д.
- [ ] убрать в тестах все нестандартные символы `→`, длинные тире, русский язык
и т.д., сделать lint правило
- [ ] комментарии на английском, lint правило
- [ ] уменьшить количество и многословность комментариев (lint правило?)
- [ ] Пересмотреть прозрачность в инструментах - Create empty PNG - прозрачность
должны быть настраиваемой 0-100%, а не переключателем
- [ ] обдумать объединение пар `inputMode + source` и `resultKind + result` в
@@ -89,6 +96,11 @@
(`app.css`, `SchemaToolView.svelte`). Решить, где скругления реально есть
в дизайне, а где должен быть 0
## Инструменты
- [ ] qr code to text, text to qr code
- [ ] bar code to text, text to bar code
## Переезд
- [ ] множественные числа (часть/части/частей; «N параметров», счётчики) —