Skip to content

Salvage наработок из закрытого #640: barrel/guard/cache-bust/i18n отдельным PR, тему отложить до централизованной VueTools #701

Description

@biz87

@
Закрытый #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/ximport { 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 → версия с централизованной темизацией.

Источники

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions