Commit Graph
85 Commits
Author SHA1 Message Date
DenozordecandCursor da818fe104 feat(topology): добавить схему инфраструктуры на React Flow
Docker / build (push) Failing after 19s
Редактор схем с VPS-нодами, связями и персистом в SQLite по space.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 16:52:36 +07:00
DenozordecandCursor c90b42c9c4 fix(web): реактивно переключать пространство через SpaceProvider
Docker / build (push) Failing after 18s
localStorage не вызывал re-render; useSpaceId + remount main по spaceId.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 16:15:52 +07:00
DenozordecandCursor a61b352f0a fix(auth): остановить SSO-цикл редиректов после handoff
Docker / build (push) Failing after 19s
Cooldown 12с между portal handoff и страница sso_loop вместо бесконечного редиректа.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 16:08:50 +07:00
DenozordecandCursor 47c1f37912 fix(web): починить SpaceSwitcher #31 и добавить NavUser в footer
Docker / build (push) Failing after 21s
DropdownMenuLabel только внутри Group; аккаунт в SidebarFooter по app-shell-1.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 15:58:31 +07:00
DenozordecandCursor e360efb885 feat(spaces): добавить изолированные пространства и multi-user
Docker / build (push) Failing after 20s
Полная изоляция данных по space, Share (ACL) и Assign, switcher и участники в UI.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 15:42:54 +07:00
DenozordecandCursor f26b2c8777 fix(auth): убрать SSO-цикл на /auth/callback после replaceState
Docker / build (push) Failing after 18s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 14:09:21 +07:00
DenozordecandCursor 812aa614df fix(auth): редирект на portal по runtime /api/auth/config при 401
Docker / build (push) Failing after 20s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 13:49:36 +07:00
Denozordec 84cc800d54 fix(web): улучшить адаптивность сетки графиков и дашборда
Docker / build (push) Failing after 22s
Добавлены классы для двухколоночного макета в компоненты ChartsGrid и OpsDashboard, улучшая отображение на больших экранах. Теперь элементы будут более эффективно использовать доступное пространство.
2026-07-18 13:26:16 +07:00
DenozordecandCursor f8e13a4a72 fix(web): вернуть графики дашборда в один ряд на десктопе
Docker / build (push) Failing after 23s
ChartsGrid снова lg:grid-cols-2 — Платежи и Расходы рядом на широких экранах.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 01:17:35 +07:00
DenozordecandCursor da97abce41 fix(web): графики дашборда на всю ширину
Docker / build (push) Failing after 19s
Убран двухколоночный layout ChartsGrid и секции аналитики OpsDashboard — Платежи и Расходы идут столбцом full-width.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 00:58:05 +07:00
DenozordecandCursor d0c515767a fix(web): выровнять ReUI Badge light-варианты с CFDM
Docker / build (push) Failing after 20s
Чипы «Система / Внимание» в SystemMonitorPopover теперь с той же рамкой и тонами, что в CFDM.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 00:15:45 +07:00
Denozordec d04630a7d1 feat(web): улучшить компоненты PageHeader и AppShell, добавить TooltipProvider
Docker / build (push) Failing after 18s
- Обновлены стили компонента PageHeader для более компактного отображения описания.
- Внедрён TooltipProvider в AppShell для улучшения взаимодействия с пользователем.
- Изменён размер боковой панели на 240px для согласованности с дизайном.
- Обновлена документация интерфейса для отражения изменений в компонентах.
2026-07-17 23:56:26 +07:00
Denozordec 29e096862a feat(web): обновить AppShell и добавить новый элемент EvoBGP в App Switcher
Docker / build (push) Failing after 20s
- Обновлены стили компонента AppShell для улучшения макета и адаптивности.
- Добавлен новый элемент EvoBGP в конфигурацию App Switcher с соответствующими параметрами.
- Обновлена документация интерфейса для отражения изменений в AppShell и новых элементах навигации.
2026-07-17 23:14:35 +07:00
Denozordec 267aa1c230 refactor(web): обновить стили компонента SystemMonitorPopover для улучшения макета
Docker / build (push) Failing after 19s
- Изменены классы в компоненте SystemMonitorPopover, чтобы использовать flexbox для более компактного и организованного отображения содержимого.
- Обновлены стили для улучшения визуального представления и взаимодействия с пользователем.
2026-07-17 20:34:01 +07:00
DenozordecandCursor d52c633d90 feat(web): добавить поддержку быстрого доступа на дашборде и обновить настройки интерфейса
Docker / build (push) Failing after 19s
- Внедрён компонент QuickActionGrid для отображения часто используемых разделов на дашборде, управляемый настройкой showQuickActions.
- Добавлен новый параметр showQuickActions в схему настроек для управления видимостью быстрого доступа.
- Обновлён интерфейс настроек для включения переключателя отображения быстрого доступа.
- Добавлен компонент SystemMonitorPopover в заголовок приложения для мониторинга системы.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-17 20:32:59 +07:00
DenozordecandCursor 9c43b45245 refactor(web): улучшить компоненты KpiStatGrid и KpiStatCardBody для более компактного отображения
Docker / build (push) Failing after 18s
- Обновлены стили и структура компонентов KpiStatGrid и KpiStatCardBody для улучшения визуального представления.
- Изменены классы и добавлены новые стили для более гибкого и компактного макета.
- Обновлена документация для отражения изменений в интерфейсе и описания нового визуального представления KPI.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-17 18:36:47 +07:00
DenozordecandCursor 52665843d6 feat(web): обновить компоненты KpiStatGrid и SectionCards для улучшения интерфейса
Docker / build (push) Failing after 19s
- Добавлен новый тип KpiStatVariant для управления визуальными состояниями карточек KPI.
- Обновлены компоненты SectionCards и KpiStatGrid для поддержки новых свойств, таких как iconClassName и footer с Badge.
- Изменены стили и логика отображения для улучшения визуального представления и взаимодействия с пользователем.
- Обновлена документация для отражения изменений в интерфейсе.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-17 17:14:55 +07:00
DenozordecandCursor 35e5d8430d feat(web): обновить компоненты и добавить новые элементы интерфейса
Docker / build (push) Failing after 22s
- Добавлены новые правила для использования ReUI и обновлены существующие правила.
- Внедрены новые компоненты, такие как Frame, Alert, IconStack и DetailPanel, для улучшения интерфейса.
- Обновлены существующие компоненты, включая DataGridCard и EmptyState, с использованием новых элементов.
- Добавлены новые утилиты для фильтрации данных и управления состоянием.
- Обновлен .gitignore для исключения файлов окружения.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-17 15:30:16 +07:00
DenozordecandCursor a11fbc6efd fix(web): заполнить график расходов на дашборде
Docker / build (push) Failing after 19s
Учитывать списания из журнала баланса и не-пополнения; при отсутствии истории показывать оценку по активным VPS. Год по умолчанию — текущий.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 21:25:14 +07:00
DenozordecandCursor 77099b9ab0 feat(web): переработать дашборд по эталону REUI
Docker / build (push) Failing after 19s
Привести layout к эталону: alert с CTA, 6 KPI в ряд, помесячные графики платежей и расходов с фильтром года.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 20:57:43 +07:00
DenozordecandCursor 0e9a6a6a21 feat: интеграция с CF Domain Manager
Docker / build (push) Failing after 22s
Синхронизация bindings в vps_domains с привязкой по IP, API приёма с Bearer-токеном, настройки и App Switcher из SQLite, UI доменов на VPS и уведомление CFDM при vps_down.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 16:45:16 +07:00
DenozordecandCursor 2b01063279 chore(web): обновить дефолтные URL App Switcher для prod
Docker / build (push) Failing after 19s
VPS Tracker — http://192.168.100.67:3001, CF Domain Manager — http://192.168.100.67:6363.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 16:01:40 +07:00
DenozordecandCursor eed73a39f0 fix(web): убрать MenuGroupLabel из App Switcher
Docker / build (push) Failing after 20s
Заголовок меню — обычный div вместо DropdownMenuLabel, чтобы исключить Base UI error #31 в production.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 15:45:44 +07:00
DenozordecandCursor eaa5db38bf fix(web): исправить Base UI error #31 в App Switcher
Docker / build (push) Failing after 21s
DropdownMenuLabel перенесён внутрь DropdownMenuGroup; для внешних ссылок добавлен nativeButton={false}.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 15:32:22 +07:00
DenozordecandCursor ea9c996838 feat(web): добавить App Switcher для перехода между приложениями
Docker / build (push) Failing after 21s
Dropdown в sidebar с настраиваемым списком ссылок через VITE_APP_SWITCHER и дефолтами для VPS Tracker и CF Domain Manager.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 15:11:53 +07:00
DenozordecandCursor 7c777bffc2 fix(web): расширить select размера страницы для значения 100
Docker / build (push) Failing after 20s
Заменить фиксированную ширину w-14 на min-w-18, чтобы трёхзначные значения не обрезались.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 13:06:53 +07:00
DenozordecandCursor 5c1c94bc57 fix(web): UX/UI аудит — пагинация, a11y, settings и TruncatedText
Docker / build (push) Failing after 20s
Исправить обрезку Select в пагинации DataGrid, health-mode zero-results, подтверждение импорта бэкапа и унифицировать tooltip на обрезанном тексте.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 12:53:16 +07:00
DenozordecandCursor 447d499a8d feat(projects): переработать проекты и отчётность по проектам
Docker / build (push) Failing after 20s
Добавлены карточка проекта, KPI и фильтры на /projects, отчёты с разрезом по проектам, cascade rename и защита удаления на API.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 19:21:04 +07:00
DenozordecandCursor 0bcea39868 fix(web): объединить типы пополнения на графике платежей
Docker / build (push) Failing after 19s
topup и provider_balance_topup из разных API — один тип; добавлена легенда с русскими подписями.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 18:34:30 +07:00
DenozordecandCursor 46267669ce fix(web): корректная валюта VPS в отчётах по месячным расходам
Docker / build (push) Failing after 23s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 18:08:27 +07:00
DenozordecandCursor 5998887148 fix(veesp): читать acc_credit вместо acc_balance при получении баланса
Docker / build (push) Failing after 24s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 15:43:54 +07:00
DenozordecandCursor 0682dd0e2f fix(web): не отправлять Content-Type на DELETE без тела
Docker / build (push) Failing after 21s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 15:32:18 +07:00
DenozordecandCursor 60332db1e4 fix(web): конвертировать тарифы VPS в базовую валюту настроек
Docker / build (push) Failing after 21s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 15:19:22 +07:00
DenozordecandCursor 9a29d88b95 feat(api, web): интеграция RuVDS API v2
Docker / build (push) Failing after 21s
Синк VPS, баланса, платежей и тарифов через Bearer-токен из личного кабинета.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 14:10:15 +07:00
DenozordecandCursor ce6414c65f fix(veesp): обновление IP, характеристик и валюты при повторном синке
Docker / build (push) Failing after 21s
Перезапись vcpu/ram/disk/ip на update, fetch VM ips, приоритет валюты из balance API.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 12:10:47 +07:00
DenozordecandCursor 5983c911f2 fix(veesp): IP и характеристики VPS при синке, валюта аккаунта
Docker / build (push) Failing after 21s
Парсинг object-map ответов API (vms/ips), cpus, memory в МБ, IP-массив.
Приоритет валюты аккаунта над baseCurrency хостера; поле в UI для Veesp.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 11:50:25 +07:00
DenozordecandCursor 87aa6949b3 fix(userapi): период тарифа Macloud и отображение ставки на списке VPS
Docker / build (push) Failing after 1m45s
Месячные планы Macloud определяются через inferPlanPeriod; в UI показывается суточная или месячная ставка по tariffType, а не месячный эквивалент.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 11:21:44 +07:00
DenozordecandCursor 579c00392d feat(api, web): интеграция Veesp client area API
Docker / build (push) Has been cancelled
Добавлен отдельный модуль veesp для синка VPS, баланса, счетов и тарифов через JWT/Basic auth.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 10:25:12 +07:00
DenozordecandCursor b15e10f117 fix(userapi): корректно определять суточные ставки Macloud/VDSina при синке
Docker / build (push) Has been cancelled
Учитываются server-group, full_cost при нулевом cost и неактивные тарифные планы из индекса.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 10:04:42 +07:00
DenozordecandCursor 031fc3aaa0 fix(userapi): валюта и ставки Macloud/VDSina при синке
Docker / build (push) Has been cancelled
Валюта VPS берётся из baseCurrency хостера, ставки — из тарифных планов с fallback и parsePlanCost. На списке VPS цены в валюте провайдера. Расширен parseTariffPrice для форматов UserAPI. Добавлены фильтры на странице тарифов.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 02:48:04 +07:00
DenozordecandCursor 6c5eb04fae fix(userapi): подтягивать стоимость VPS Macloud/VDSina из тарифных планов
Docker / build (push) Has been cancelled
При синке UserAPI цена и период берутся по server-plan.id из индекса тарифов, а не остаются нулевыми.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 02:23:34 +07:00
DenozordecandCursor 87ab13e9f6 fix(accounts): учитывать baseCurrency хостера при отображении и синке баланса
Docker / build (push) Has been cancelled
API не всегда возвращает валюту (VDSina UserAPI); раньше подставлялся RUB вместо USD из настроек провайдера.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 02:18:40 +07:00
DenozordecandCursor f2c4c7a412 feat(api, web): интеграция Macloud и VDSina через унифицированный UserAPI
Docker / build (push) Has been cancelled
Один модуль userapi для идентичного API обоих хостеров: синк VPS, баланса, тарифов и пополнений.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 02:02:03 +07:00
DenozordecandCursor 9be50aa03b feat(api, web): интеграция хостера 4VPS.SU — синк VPS, баланса и тарифов
Docker / build (push) Has been cancelled
Добавлен адаптер 4vps, обобщён pipeline синхронизации через ProviderAdapter и обновлён UI для Panel ID и API Key.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 01:13:50 +07:00
DenozordecandCursor 05e7bf829e feat(api, web): тест Telegram из формы, подсказки ошибок API и UX настроек
Docker / build (push) Has been cancelled
Тест отправки использует значения формы без предварительного сохранения; пустой токен при сохранении не затирает сохранённый. Добавлены подсказки по частым ошибкам Telegram API и колонка ошибок в журнале уведомлений.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 00:54:51 +07:00
DenozordecandCursor 7f91bc3624 feat(api, web): добавить поддержку уведомлений и журнал уведомлений
Docker / build (push) Has been cancelled
Добавлены новые функции для отправки уведомлений через Telegram и webhook, включая настройки для интервалов уведомлений и проверки uptime. Реализован журнал уведомлений для отслеживания статуса отправленных сообщений. Обновлены схемы и интерфейсы для поддержки новых полей и функционала.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 00:36:05 +07:00
DenozordecandCursor 2c66d0c0ee fix(dashboard): унифицировать расчёт проблем инвентаря между API и UI
Docker / build (push) Has been cancelled
Счётчик issuesCount и таблица «Проблемы» теперь используют общую логику в @cfdm/shared; добавлены категории «истекает 7 дн» и «низкий баланс».

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 00:24:49 +07:00
DenozordecandCursor 31a4798d78 fix(web): привести UI к правилам ReUI — фильтры, badge, токены
Docker / build (push) Has been cancelled
Подключены DateSelector и number-field в VPS-фильтры, semantic StatusBadge, --focus токены и переименование DataGridColumn.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-28 23:37:30 +07:00
DenozordecandCursor f3dbd85523 chore(rules): добавить ReUI workflow для ИИ и обновить правила frontend
Docker / build (push) Has been cancelled
Зафиксированы registry @reui, MCP-ветка, размещение компонентов и матрица выбора shadcn vs ReUI.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-28 22:28:56 +07:00
DenozordecandCursor baa13260c6 feat(web, db): autocomplete проекта VPS, защита полей при синке и стиль Command
Docker / build (push) Has been cancelled
Проект выбирается из справочника; ручные правки автоматически попадают в userOverrides без сброса при сохранении. CommandDialog приведён к эталону shadcn/ReUI.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-28 22:22:21 +07:00