@
Закрытый #640 (ветка fix/mgr-modx-manager-theme-ui) закрыт правильно — его тема-подход (безусловный ModxManagerTheme + Modx-завязанный CSS) несовместим с новой моделью темизации (переключение из VueTools, дефолт Aura, см. modx-pro/vueTools#22). Но ~90% труда там — переиспользуемый фундамент интерфейса, его терять нельзя. Этот issue фиксирует, что и как вытащить.
Часть A — вытащить отдельным PR сейчас (концепт-независимо, визуально нейтрально)
Работает против релизной VueTools 1.1.2, тему оставить Aura (theme: { preset: Aura, options: { darkModeSelector: none } }). Что берём из #640:
- Barrel-миграция PrimeVue (~445 строк):
import X from primevue/x → import { X } from primevue по всем компонентам. Даёт единый экземпляр PrimeVue из VueTools (обязательно и для будущей темизации).
- Subpath guard
rejectPrimeVueSubpaths в vueManager/vite.config.js — роняет сборку при primevue/*, чтобы barrel-only не регрессировал.
- Cache-bust vue-модулей —
core/components/minishop3/controllers/vue_module_cache_bust.inc.php + проводка в контроллерах (filemtime).
- Локализация ru/en — help/product/vue лексиконы, история заказа, строки Uppy Image Editor.
Исключить из Части A (это слой Modx-вида, не нейтрален): плотность (size="small" → normal), severity="success" на Save, и весь MS3-CSS, завязанный на токены modx.*.
Критерий приёмки Части A: npm run build зелёный (guard проходит), менеджер визуально идентичен текущему (Aura), единый инстанс PrimeVue, вкладки не залипают в кэше после rebuild.
Часть B — отложить до переработанной VueTools (централизованная тема)
Ждёт modx-pro/vueTools#22 (getActiveTheme() / @vuetools/useTheme). Что делаем:
- Применение темы:
theme: getActiveTheme() вместо хардкода (11 entry).
- Плотность /
severity="success" / Modx-CSS — сделать theme-aware (скоупить под активную тему), иначе при дефолтной Aura сломается (у Aura нет токенов modx.*).
- Усиленная проверка зависимости: сигнал
imports[vuetools/theme] / доступность getActiveTheme → понятный алерт вместо ошибки линковки на старом ядре.
- Резолвер зависимости
VueTools → версия с централизованной темизацией.
Источники
@
Закрытый #640 (ветка
fix/mgr-modx-manager-theme-ui) закрыт правильно — его тема-подход (безусловныйModxManagerTheme+ Modx-завязанный CSS) несовместим с новой моделью темизации (переключение из VueTools, дефолт Aura, см. modx-pro/vueTools#22). Но ~90% труда там — переиспользуемый фундамент интерфейса, его терять нельзя. Этот issue фиксирует, что и как вытащить.Часть A — вытащить отдельным PR сейчас (концепт-независимо, визуально нейтрально)
Работает против релизной VueTools 1.1.2, тему оставить Aura (
theme: { preset: Aura, options: { darkModeSelector: none } }). Что берём из #640:import X from primevue/x→import { X } from primevueпо всем компонентам. Даёт единый экземпляр PrimeVue из VueTools (обязательно и для будущей темизации).rejectPrimeVueSubpathsвvueManager/vite.config.js— роняет сборку приprimevue/*, чтобы barrel-only не регрессировал.core/components/minishop3/controllers/vue_module_cache_bust.inc.php+ проводка в контроллерах (filemtime).Исключить из Части A (это слой Modx-вида, не нейтрален): плотность (
size="small"→normal),severity="success"на Save, и весь MS3-CSS, завязанный на токеныmodx.*.Критерий приёмки Части A:
npm run buildзелёный (guard проходит), менеджер визуально идентичен текущему (Aura), единый инстанс PrimeVue, вкладки не залипают в кэше после rebuild.Часть B — отложить до переработанной VueTools (централизованная тема)
Ждёт modx-pro/vueTools#22 (
getActiveTheme()/@vuetools/useTheme). Что делаем:theme: getActiveTheme()вместо хардкода (11 entry).severity="success"/ Modx-CSS — сделать theme-aware (скоупить под активную тему), иначе при дефолтной Aura сломается (у Aura нет токеновmodx.*).imports[vuetools/theme]/ доступностьgetActiveTheme→ понятный алерт вместо ошибки линковки на старом ядре.VueTools→ версия с централизованной темизацией.Источники
fix/mgr-modx-manager-theme-ui(код здесь, cherry-pick оттуда).@