From b82c8031c2253dcf9c81b75f12d011d3ade64e77 Mon Sep 17 00:00:00 2001 From: Denozordec Date: Sun, 18 Oct 2026 14:53:25 +0700 Subject: [PATCH] =?UTF-8?q?fix(design-preview):=20=D1=80=D0=B0=D0=B7=D0=BC?= =?UTF-8?q?=D0=B5=D1=80=D1=8B,=20=D0=BE=D1=82=D1=81=D1=82=D1=83=D0=BF?= =?UTF-8?q?=D1=8B=20=D0=B8=20=D0=BF=D0=BE=D1=80=D0=BE=D0=B3=D0=B8=20=D1=88?= =?UTF-8?q?=D0=B8=D1=80=D0=B8=D0=BD=D1=8B=20=D0=BA=D0=B0=D0=BA=20=D0=BD?= =?UTF-8?q?=D0=B0=20=D0=B4=D0=BE=D1=81=D0=BA=D0=B0=D1=85=20Auth=20Portal?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Sonnet 5.5 --- apps/web/src/design-preview/bits.tsx | 21 +++++---- apps/web/src/design-preview/canvas-blocks.tsx | 4 +- .../web/src/design-preview/design-preview.css | 43 +++++++++++++++---- .../web/src/design-preview/explain-banner.tsx | 2 +- apps/web/src/design-preview/kpi-strip.tsx | 8 ++-- .../design-preview/pages/app-links-page.tsx | 2 +- .../src/design-preview/pages/audit-page.tsx | 2 +- .../src/design-preview/pages/oidc-page.tsx | 1 - .../web/src/design-preview/preview-chrome.tsx | 28 ++++++------ apps/web/src/design-preview/section-grid.tsx | 28 ++++++------ apps/web/src/design-preview/unsaved-bar.tsx | 6 +-- apps/web/src/design-preview/users-grid.tsx | 4 +- 12 files changed, 89 insertions(+), 60 deletions(-) diff --git a/apps/web/src/design-preview/bits.tsx b/apps/web/src/design-preview/bits.tsx index 4860301..403a408 100644 --- a/apps/web/src/design-preview/bits.tsx +++ b/apps/web/src/design-preview/bits.tsx @@ -60,10 +60,10 @@ export function PageHead({ actions?: ReactNode }) { return ( -
-
-

{title}

-

{sub}

+
+
+

{title}

+

{sub}

{actions ?
{actions}
: null}
@@ -298,7 +298,7 @@ export function KvFrame({ items: Array<{ label: string; value: ReactNode }> }) { return ( - + {title} {description} @@ -331,7 +331,7 @@ export function CopyList({ items: Array<{ label: string; value: string }> }) { return ( - + {title} {description} @@ -347,7 +347,6 @@ export function CopyList({ {item.label}
diff --git a/apps/web/src/design-preview/kpi-strip.tsx b/apps/web/src/design-preview/kpi-strip.tsx index 508e54b..9919e04 100644 --- a/apps/web/src/design-preview/kpi-strip.tsx +++ b/apps/web/src/design-preview/kpi-strip.tsx @@ -11,12 +11,12 @@ const VALUE: Record = { er: 'text-destructive', } -/** Колонки по числу ячеек: 4 → 4/2/1, 3 → 3/1, 2 → 2/1 (пороги контейнера как на досках). */ +/** Колонки по числу ячеек и ширине окна (на досках — ширина приложения): 4 → 4/2/1, 3 → 3/1, 2 → 2/1. */ const COLS: Record = { 1: 'grid-cols-1', - 2: 'grid-cols-1 @[640px]:grid-cols-2', - 3: 'grid-cols-1 @[1240px]:grid-cols-3', - 4: 'grid-cols-1 @[640px]:grid-cols-2 @[1240px]:grid-cols-4', + 2: 'grid-cols-2 max-[640px]:grid-cols-1', + 3: 'grid-cols-1 min-[1241px]:grid-cols-3', + 4: 'grid-cols-1 min-[641px]:grid-cols-2 min-[1241px]:grid-cols-4', } const GLYPH: Record = { neutral: '', ok: '●', in: '', wn: '▲', er: '✕' } diff --git a/apps/web/src/design-preview/pages/app-links-page.tsx b/apps/web/src/design-preview/pages/app-links-page.tsx index 0db74ef..663253e 100644 --- a/apps/web/src/design-preview/pages/app-links-page.tsx +++ b/apps/web/src/design-preview/pages/app-links-page.tsx @@ -202,7 +202,7 @@ export function AppLinksPage() { { label: 'Скрытые', match: (r) => !r.enabled }, ]} tools={ - } diff --git a/apps/web/src/design-preview/pages/audit-page.tsx b/apps/web/src/design-preview/pages/audit-page.tsx index fecdf16..543be88 100644 --- a/apps/web/src/design-preview/pages/audit-page.tsx +++ b/apps/web/src/design-preview/pages/audit-page.tsx @@ -66,7 +66,7 @@ export function AuditPage() { description="Последние события · иконка отражает тип, цвет — важность" items={AUDIT_FEED} action={ - } diff --git a/apps/web/src/design-preview/pages/oidc-page.tsx b/apps/web/src/design-preview/pages/oidc-page.tsx index 872ff31..fbe9e08 100644 --- a/apps/web/src/design-preview/pages/oidc-page.tsx +++ b/apps/web/src/design-preview/pages/oidc-page.tsx @@ -127,7 +127,6 @@ export function OidcPage() { tools={ - diff --git a/apps/web/src/design-preview/unsaved-bar.tsx b/apps/web/src/design-preview/unsaved-bar.tsx index c3f4391..3c09780 100644 --- a/apps/web/src/design-preview/unsaved-bar.tsx +++ b/apps/web/src/design-preview/unsaved-bar.tsx @@ -37,13 +37,13 @@ export function UnsavedBar() { {pending.length} · изменения ещё не записаны в портал
- - -
diff --git a/apps/web/src/design-preview/users-grid.tsx b/apps/web/src/design-preview/users-grid.tsx index 3eca95f..315affd 100644 --- a/apps/web/src/design-preview/users-grid.tsx +++ b/apps/web/src/design-preview/users-grid.tsx @@ -59,7 +59,7 @@ export function UsersGrid({ users, handlers, marks }: { users: AdminUser[]; hand { id: 'role', title: 'Роль', size: 130, sortValue: (u) => (u.is_admin ? 'a' : 'u'), cell: (u) => {u.is_admin ? 'Админ' : 'Пользователь'} }, { id: 'apps', title: 'Приложения', size: 220, cell: (u) => {appsSummary(u)} }, { id: 'passkey', title: 'Passkey', size: 100, sortValue: (u) => u.passkey_count, cell: (u) => {passkeyLabel(u.passkey_count)} }, - { id: 'activity', title: 'Активность · IP', size: 240, cell: (u) => {USER_META[u.id]?.activity ?? '—'} }, + { id: 'activity', title: 'Активность · IP', size: 240, cell: (u) => {USER_META[u.id]?.activity ?? '—'} }, ], [marks], ) @@ -108,7 +108,7 @@ export function UsersGrid({ users, handlers, marks }: { users: AdminUser[]; hand onDelete: handlers.onBulkDelete, }} tools={(ids) => ( - )}