Files
vps-tracker/.cursor/plans/mm_reui_foundation_8b1c5482.plan.md
Denozordec edf1da165a
Docker / build (push) Failing after 19s
feat(reui): update ReUI components and documentation to reflect 20 building blocks
- Expanded the ReUI skill description to include 20 free building blocks.
- Updated references in various documentation files to reflect the new count of components.
- Enhanced the data-grid documentation to specify the use of TanStack Table v9.
- Added new component details, including the icon-tile, and clarified usage instructions across multiple files.

This update improves clarity and ensures that all references are consistent with the latest component offerings.
2026-08-07 16:40:14 +07:00

5.0 KiB
Raw Permalink Blame History

name, overview, todos, isProject
name overview todos isProject
MM ReUI Foundation Wave A — foundation: ui-design-contract, kpi-hybrid rule, порт KpiStatGrid (EvoBGP hybrid DNA 1:1), Card→Frame shell, chrome (240px, NavUser).
id content status
docs-contract ui-design-contract + reui-mcp/kpi-hybrid rules + AGENTS pending
id content status
port-kit Порт reui-kit: KpiStatGrid hybrid DNA 1:1 с EvoBGP pending
id content status
frame-bridge DataPageCard → Frame surface bridge pending
id content status
chrome-240-navuser Sidebar 240px + NavUser segmented theme pending
false

Wave A — Foundation (MikrotikManager ReUI)

Родитель: MM ReUI Master. Источники: Explore MikrotikManager UI, ReUI SoT from siblings.

Цель

Подготовить инфраструктуру ReUI PRO без массовой миграции страниц. После Wave A любой экран переводится на Frame + hybrid KPI (KpiStatGrid) по шаблону старых apps.

KPI hybrid (закладывается здесь)

  • Порт KpiStatGrid байт-в-байт DNA с EvoBGP (horizontal compact: icon size-10.5 bg-muted + label/Badge + value ± variant)
  • Preview: stats-12 · rule kpi-hybrid.mdc в MM
  • NEVER в kit: SectionCards, vertical-only stats, Card KPI wrappers
  • Волны B–G только потребляют этот kit — не рисуют свои KPI

Scope

1. Документы и rules

  • Создать docs/ui-design-contract.md — адапт семейного контракта под пути MM (components/reui, components/reui-kit, @/components/ui, Next App Router); секция KPI = hybrid only
  • Cursor rules: reui-mcp.mdc, kpi-hybrid.mdc (копия семейного MUST/NEVER); обновить next-shadcn-production.mdc
  • Секция ReUI + KPI hybrid в AGENTS.md

2. Kit port (SoT = EvoBGP)

Создать components/reui-kit/:

Component Источник
KpiStatGrid EvoBGP kpi-stat-grid.tsx — hybrid DNA 1:1, импорты → @/components/ui/*
QuickActionGrid EvoBGP sibling hybrid DNA (не Card grid)
ResourcePage Frame + tabs + Filters + DataGrid
OpsDashboard hybrid KPI strip + afterKpi + charts slot
DetailPanel Frame sections (+ Metrics → KpiStatGrid)
SettingsShell Next nested layout / local nav (не TanStack Outlet)
filter-utils apply/clear Filters

"use client" на всех kit-компонентах с хуками (rsc: true в MM).

3. Surface bridge

  • DataPageCard: заменить внутренний Card на ReUI Frame/FramePanel или ввести DataPageFrame + deprecate Card-shell (совместимый API children/className, чтобы Wave B+ меняли минимум)
  • Сохранить DataGridShell как есть

4. Chrome

  • components/ui/sidebar.tsx: SIDEBAR_WIDTH 16rem → 240px
  • app-sidebar.tsx: подключить NavUser с segmented theme (убрать demo Sparkles/Billing); убрать дублирующий theme toggle из footer если переезжает в NavUser
  • Search: оставить ⌘K (не Search pill в header)
  • AppsMenu / auth-portal / SystemMonitor — вне scope (см. master)

5. MCP / CLI hygiene

  • user-reui get_project_context + surface: frame на будущих задачах
  • При add PRO blocks: npx shadcn@latest add @reui/<name> --dry-run перед overwrite существующих components/reui/*
  • Preview refs: app-shell-12, stats-12 (hybrid KPI)

Out of scope

Миграция app/(main)/*/page.tsx (кроме smoke-проверки, что Frame-bridge не ломает layout).

DoD

  • docs/ui-design-contract.md + kpi-hybrid.mdc на месте
  • KpiStatGrid markup совпадает с EvoBGP (diff только imports)
  • components/reui-kit/* собирается, импорты @/components/ui
  • List shell = Frame (не Card)
  • Sidebar 240px + NavUser theme
  • npm run lint / npm run build без регрессий от foundation