fix(admin-ui): QA report sweep — modal/table layout, i18n, sidebar polish
Восемь дефектов из QA-отчёта одним MR. #1 — Records-table теряла первую колонку после закрытия Create-modal. Корень: lg:grid-cols-[220px_1fr] без minmax(0,…) — 1fr имел implicit min-content (=max-content), позволяя table вырасти шире viewport. После закрытия Radix Dialog снималось body padding-right (~15px), grid пересчитывался и клиппил колонку под overflow-hidden card. Fix: grid-cols-[220px_minmax(0,1fr)] + убран overflow-hidden с card (Table primitive имеет свой overflow-x-auto). #2 — Esc закрывал modal с задержкой (визуал/DOM рассинхрон). duration-200 на slow CPU ощущался как несколько кадров между state=closed и unmount. Снижено до duration-150 — совпадает с tw-animate-css дефолтами. #3 — «+ Создать» обрезалось до «+ Соз» на ~1075px на detail-странице. EditorTabBar: 6 tabs + 3 кнопки actions в одном flex row без shrink-0 давили друг друга. Решение: tabs в overflow-x-auto wrapper с min-w-0, actions в shrink-0 контейнере — tabs скроллятся, actions всегда видны полностью. scrollbar скрыт визуально (height-консистентность). #4 — Обрезка названий в records-table при PUBLIC+INTERNAL. Добавлен div.overflow-x-auto вокруг table + min-w-[760px] на table + min-w-[180px] max-w-[320px] truncate на name cell. Catalog table также получает min-w-[220px] на name column. #5 — Заголовки колонок и кнопка «Граф» не локализованы на EN. defaultValue:'Название' inline в коде падал на ru-text при EN locale. Вынесены в i18n: dict.col.title/id/bundle/records/updated/outgoingFk/ incomingFk + dict.list.graph для обеих локалей. #6 — Modal backdrop почти невидим. bg-black/40 + 1px blur → bg-black/55 + 2px blur. Заметно темнее при сохранении читабельности фона, фокус на modal. #7 — Неестественная подсказка в форме «Создать»: «Имя оставьте уникальное; версия сбросится на 1.0.0» → «Укажите уникальное имя — версия сбросится на 1.0.0». #8 — «Главная» в сайдбаре сбивала active state. Клик на «Главную» вёл на `/` → redirect на /dictionaries → подсветка уезжала на «Справочники». Logo сверху уже даёт home affordance, поэтому duplicate nav item удалён (desktop + mobile).
This commit is contained in:
@@ -349,8 +349,19 @@ i18n
|
||||
'dict.list.col.version': 'Версия',
|
||||
'dict.list.col.locales': 'Локали',
|
||||
'dict.list.col.records': 'Записи',
|
||||
// Compact row table (catalog) — column headers per redesign/compact.html.
|
||||
// QA bug #5: defaultValue inline в коде падал на ru-text при EN locale;
|
||||
// выносим в i18n чтобы переключение языка реально влияло на заголовки.
|
||||
'dict.col.title': 'Название',
|
||||
'dict.col.id': 'id',
|
||||
'dict.col.bundle': 'bundle',
|
||||
'dict.col.records': 'записей',
|
||||
'dict.col.updated': 'изменён',
|
||||
'dict.col.outgoingFk': 'Ссылается (исходящие FK)',
|
||||
'dict.col.incomingFk': 'Используют (входящие FK)',
|
||||
// List view (handoff D)
|
||||
'dict.list.bundle.all': 'все',
|
||||
'dict.list.graph': 'Граф',
|
||||
'dict.list.deps.only': 'Только со связями',
|
||||
'dict.list.records.short': 'справочн.',
|
||||
'dict.list.fk.references': '→ ссылается',
|
||||
@@ -482,7 +493,7 @@ i18n
|
||||
'schema.bundle': 'Bundle',
|
||||
'schema.bundleHint': 'Обычно cuod',
|
||||
'schema.template.label': 'Создать по шаблону',
|
||||
'schema.template.hint': 'Скопирует схему, scope и locale выбранного словаря. Имя оставьте уникальное; версия сбросится на 1.0.0.',
|
||||
'schema.template.hint': 'Скопирует схему, scope и локали выбранного словаря. Укажите уникальное имя — версия сбросится на 1.0.0.',
|
||||
'schema.template.placeholder': '— без шаблона —',
|
||||
'schema.version': 'Версия схемы',
|
||||
'schema.supportedLocales': 'Поддерживаемые локали',
|
||||
@@ -1203,6 +1214,15 @@ i18n
|
||||
'dict.list.col.version': 'Version',
|
||||
'dict.list.col.locales': 'Locales',
|
||||
'dict.list.col.records': 'Records',
|
||||
// Compact row table (catalog) — column headers EN.
|
||||
'dict.col.title': 'Name',
|
||||
'dict.col.id': 'id',
|
||||
'dict.col.bundle': 'bundle',
|
||||
'dict.col.records': 'records',
|
||||
'dict.col.updated': 'updated',
|
||||
'dict.col.outgoingFk': 'References (outgoing FK)',
|
||||
'dict.col.incomingFk': 'Used by (incoming FK)',
|
||||
'dict.list.graph': 'Graph',
|
||||
// List view (handoff D)
|
||||
'dict.list.bundle.all': 'all',
|
||||
'dict.list.deps.only': 'Only with links',
|
||||
|
||||
Reference in New Issue
Block a user