From f4a9e453f329a56e2f86ba64e14d49550146bbbd Mon Sep 17 00:00:00 2001 From: "openclaw-docs-i18n[bot]" Date: Sat, 25 Apr 2026 01:41:02 +0000 Subject: [PATCH] chore(i18n): refresh uk translations --- ...4-22-tweakcn-custom-theme-import-design.md | 327 ++++++++++++++++++ 1 file changed, 327 insertions(+) create mode 100644 docs/uk/superpowers/specs/2026-04-22-tweakcn-custom-theme-import-design.md diff --git a/docs/uk/superpowers/specs/2026-04-22-tweakcn-custom-theme-import-design.md b/docs/uk/superpowers/specs/2026-04-22-tweakcn-custom-theme-import-design.md new file mode 100644 index 000000000..a956cdc0f --- /dev/null +++ b/docs/uk/superpowers/specs/2026-04-22-tweakcn-custom-theme-import-design.md @@ -0,0 +1,327 @@ +--- +x-i18n: + generated_at: "2026-04-25T01:40:02Z" + model: gpt-5.4 + provider: openai + source_hash: cccaaa1b3e472279b7548ad5af5d50162db9e99a731e06be796de64ee9f8c8d8 + source_path: superpowers/specs/2026-04-22-tweakcn-custom-theme-import-design.md + workflow: 15 +--- + +# Дизайн імпорту користувацької теми Tweakcn + +Статус: схвалено в терміналі 2026-04-22 + +## Підсумок + +Додати рівно один браузерно-локальний слот користувацької теми Control UI, який можна імпортувати з посилання поширення tweakcn. Наявні вбудовані сімейства тем залишаються `claw`, `knot` і `dash`. Нове сімейство `custom` поводиться як звичайне сімейство тем OpenClaw і підтримує режими `light`, `dark` і `system`, коли імпортований payload tweakcn містить обидва набори токенів — для світлого й темного режимів. + +Імпортована тема зберігається лише в поточному профілі браузера разом з іншими налаштуваннями Control UI. Вона не записується в конфігурацію Gateway і не синхронізується між пристроями чи браузерами. + +## Проблема + +Система тем Control UI зараз замкнена на трьох жорстко закодованих сімействах тем: + +- `ui/src/ui/theme.ts` +- `ui/src/ui/views/config.ts` +- `ui/src/styles/base.css` + +Користувачі можуть перемикатися між вбудованими сімействами та варіантами режимів, але не можуть додати тему з tweakcn без редагування CSS у репозиторії. Потрібний результат менший за загальну систему тем: зберегти три вбудовані теми й додати один керований користувачем імпортований слот, який можна замінювати через посилання tweakcn. + +## Цілі + +- Зберегти наявні вбудовані сімейства тем без змін. +- Додати рівно один імпортований користувацький слот, а не бібліотеку тем. +- Приймати посилання поширення tweakcn або прямий URL `https://tweakcn.com/r/themes/{id}`. +- Зберігати імпортовану тему лише в локальному сховищі браузера. +- Зробити так, щоб імпортований слот працював з наявними елементами керування режимами `light`, `dark` і `system`. +- Зберегти безпечну поведінку при помилках: невдалий імпорт ніколи не повинен ламати активну тему UI. + +## Не цілі + +- Жодної бібліотеки з багатьох тем або браузерно-локального списку імпортів. +- Жодного збереження на боці Gateway або синхронізації між пристроями. +- Жодного довільного редактора CSS або редактора сирого JSON теми. +- Жодного автоматичного завантаження віддалених шрифтів з tweakcn. +- Жодних спроб підтримати payload tweakcn, які надають лише один режим. +- Жодного рефакторингу тем у межах усього репозиторію, окрім швів, потрібних для Control UI. + +## Уже ухвалені рішення користувача + +- Зберегти три вбудовані теми. +- Додати один слот імпорту на базі tweakcn. +- Зберігати імпортовану тему в браузері, а не в конфігурації Gateway. +- Підтримувати `light`, `dark` і `system` для імпортованого слота. +- Перезаписування користувацького слота наступним імпортом є очікуваною поведінкою. + +## Рекомендований підхід + +Додати четвертий ідентифікатор сімейства тем, `custom`, до моделі теми Control UI. Сімейство `custom` стає доступним для вибору лише тоді, коли присутній валідний імпорт tweakcn. Імпортований payload нормалізується в запис користувацької теми, специфічний для OpenClaw, і зберігається в локальному сховищі браузера разом з іншими налаштуваннями UI. + +Під час виконання OpenClaw рендерить керований тег `