Denozordec and Cursor
eed73a39f0
fix(web): убрать MenuGroupLabel из App Switcher
...
Docker / build (push) Failing after 20s
Заголовок меню — обычный div вместо DropdownMenuLabel, чтобы исключить Base UI error #31 в production.
Co-authored-by: Cursor <[email protected] >
2026-06-30 15:45:44 +07:00
Denozordec and Cursor
eaa5db38bf
fix(web): исправить Base UI error #31 в App Switcher
...
Docker / build (push) Failing after 21s
DropdownMenuLabel перенесён внутрь DropdownMenuGroup; для внешних ссылок добавлен nativeButton={false}.
Co-authored-by: Cursor <[email protected] >
2026-06-30 15:32:22 +07:00
Denozordec and Cursor
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 <[email protected] >
2026-06-30 15:11:53 +07:00
Denozordec and Cursor
7c777bffc2
fix(web): расширить select размера страницы для значения 100
...
Docker / build (push) Failing after 20s
Заменить фиксированную ширину w-14 на min-w-18, чтобы трёхзначные значения не обрезались.
Co-authored-by: Cursor <[email protected] >
2026-06-30 13:06:53 +07:00
Denozordec and Cursor
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 <[email protected] >
2026-06-30 12:53:16 +07:00
Denozordec and Cursor
447d499a8d
feat(projects): переработать проекты и отчётность по проектам
...
Docker / build (push) Failing after 20s
Добавлены карточка проекта, KPI и фильтры на /projects, отчёты с разрезом по проектам, cascade rename и защита удаления на API.
Co-authored-by: Cursor <[email protected] >
2026-06-29 19:21:04 +07:00
Denozordec and Cursor
0bcea39868
fix(web): объединить типы пополнения на графике платежей
...
Docker / build (push) Failing after 19s
topup и provider_balance_topup из разных API — один тип; добавлена легенда с русскими подписями.
Co-authored-by: Cursor <[email protected] >
2026-06-29 18:34:30 +07:00
Denozordec and Cursor
46267669ce
fix(web): корректная валюта VPS в отчётах по месячным расходам
...
Docker / build (push) Failing after 23s
Co-authored-by: Cursor <[email protected] >
2026-06-29 18:08:27 +07:00
Denozordec and Cursor
5998887148
fix(veesp): читать acc_credit вместо acc_balance при получении баланса
...
Docker / build (push) Failing after 24s
Co-authored-by: Cursor <[email protected] >
2026-06-29 15:43:54 +07:00
Denozordec and Cursor
0682dd0e2f
fix(web): не отправлять Content-Type на DELETE без тела
...
Docker / build (push) Failing after 21s
Co-authored-by: Cursor <[email protected] >
2026-06-29 15:32:18 +07:00
Denozordec and Cursor
60332db1e4
fix(web): конвертировать тарифы VPS в базовую валюту настроек
...
Docker / build (push) Failing after 21s
Co-authored-by: Cursor <[email protected] >
2026-06-29 15:19:22 +07:00
Denozordec and Cursor
9a29d88b95
feat(api, web): интеграция RuVDS API v2
...
Docker / build (push) Failing after 21s
Синк VPS, баланса, платежей и тарифов через Bearer-токен из личного кабинета.
Co-authored-by: Cursor <[email protected] >
2026-06-29 14:10:15 +07:00
Denozordec and Cursor
ce6414c65f
fix(veesp): обновление IP, характеристик и валюты при повторном синке
...
Docker / build (push) Failing after 21s
Перезапись vcpu/ram/disk/ip на update, fetch VM ips, приоритет валюты из balance API.
Co-authored-by: Cursor <[email protected] >
2026-06-29 12:10:47 +07:00
Denozordec and Cursor
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 <[email protected] >
2026-06-29 11:50:25 +07:00
Denozordec and Cursor
87aa6949b3
fix(userapi): период тарифа Macloud и отображение ставки на списке VPS
...
Docker / build (push) Failing after 1m45s
Месячные планы Macloud определяются через inferPlanPeriod; в UI показывается суточная или месячная ставка по tariffType, а не месячный эквивалент.
Co-authored-by: Cursor <[email protected] >
2026-06-29 11:21:44 +07:00
Denozordec and Cursor
579c00392d
feat(api, web): интеграция Veesp client area API
...
Docker / build (push) Has been cancelled
Добавлен отдельный модуль veesp для синка VPS, баланса, счетов и тарифов через JWT/Basic auth.
Co-authored-by: Cursor <[email protected] >
2026-06-29 10:25:12 +07:00
Denozordec and Cursor
b15e10f117
fix(userapi): корректно определять суточные ставки Macloud/VDSina при синке
...
Docker / build (push) Has been cancelled
Учитываются server-group, full_cost при нулевом cost и неактивные тарифные планы из индекса.
Co-authored-by: Cursor <[email protected] >
2026-06-29 10:04:42 +07:00
Denozordec and Cursor
031fc3aaa0
fix(userapi): валюта и ставки Macloud/VDSina при синке
...
Docker / build (push) Has been cancelled
Валюта VPS берётся из baseCurrency хостера, ставки — из тарифных планов с fallback и parsePlanCost. На списке VPS цены в валюте провайдера. Расширен parseTariffPrice для форматов UserAPI. Добавлены фильтры на странице тарифов.
Co-authored-by: Cursor <[email protected] >
2026-06-29 02:48:04 +07:00
Denozordec and Cursor
6c5eb04fae
fix(userapi): подтягивать стоимость VPS Macloud/VDSina из тарифных планов
...
Docker / build (push) Has been cancelled
При синке UserAPI цена и период берутся по server-plan.id из индекса тарифов, а не остаются нулевыми.
Co-authored-by: Cursor <[email protected] >
2026-06-29 02:23:34 +07:00
Denozordec and Cursor
87ab13e9f6
fix(accounts): учитывать baseCurrency хостера при отображении и синке баланса
...
Docker / build (push) Has been cancelled
API не всегда возвращает валюту (VDSina UserAPI); раньше подставлялся RUB вместо USD из настроек провайдера.
Co-authored-by: Cursor <[email protected] >
2026-06-29 02:18:40 +07:00
Denozordec and Cursor
f2c4c7a412
feat(api, web): интеграция Macloud и VDSina через унифицированный UserAPI
...
Docker / build (push) Has been cancelled
Один модуль userapi для идентичного API обоих хостеров: синк VPS, баланса, тарифов и пополнений.
Co-authored-by: Cursor <[email protected] >
2026-06-29 02:02:03 +07:00
Denozordec and Cursor
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 <[email protected] >
2026-06-29 01:13:50 +07:00
Denozordec and Cursor
05e7bf829e
feat(api, web): тест Telegram из формы, подсказки ошибок API и UX настроек
...
Docker / build (push) Has been cancelled
Тест отправки использует значения формы без предварительного сохранения; пустой токен при сохранении не затирает сохранённый. Добавлены подсказки по частым ошибкам Telegram API и колонка ошибок в журнале уведомлений.
Co-authored-by: Cursor <[email protected] >
2026-06-29 00:54:51 +07:00
Denozordec and Cursor
7f91bc3624
feat(api, web): добавить поддержку уведомлений и журнал уведомлений
...
Docker / build (push) Has been cancelled
Добавлены новые функции для отправки уведомлений через Telegram и webhook, включая настройки для интервалов уведомлений и проверки uptime. Реализован журнал уведомлений для отслеживания статуса отправленных сообщений. Обновлены схемы и интерфейсы для поддержки новых полей и функционала.
Co-authored-by: Cursor <[email protected] >
2026-06-29 00:36:05 +07:00
Denozordec and Cursor
2c66d0c0ee
fix(dashboard): унифицировать расчёт проблем инвентаря между API и UI
...
Docker / build (push) Has been cancelled
Счётчик issuesCount и таблица «Проблемы» теперь используют общую логику в @cfdm/shared; добавлены категории «истекает 7 дн» и «низкий баланс».
Co-authored-by: Cursor <[email protected] >
2026-06-29 00:24:49 +07:00
Denozordec and Cursor
31a4798d78
fix(web): привести UI к правилам ReUI — фильтры, badge, токены
...
Docker / build (push) Has been cancelled
Подключены DateSelector и number-field в VPS-фильтры, semantic StatusBadge, --focus токены и переименование DataGridColumn.
Co-authored-by: Cursor <[email protected] >
2026-06-28 23:37:30 +07:00
Denozordec and Cursor
f3dbd85523
chore(rules): добавить ReUI workflow для ИИ и обновить правила frontend
...
Docker / build (push) Has been cancelled
Зафиксированы registry @reui, MCP-ветка, размещение компонентов и матрица выбора shadcn vs ReUI.
Co-authored-by: Cursor <[email protected] >
2026-06-28 22:28:56 +07:00
Denozordec and Cursor
baa13260c6
feat(web, db): autocomplete проекта VPS, защита полей при синке и стиль Command
...
Docker / build (push) Has been cancelled
Проект выбирается из справочника; ручные правки автоматически попадают в userOverrides без сброса при сохранении. CommandDialog приведён к эталону shadcn/ReUI.
Co-authored-by: Cursor <[email protected] >
2026-06-28 22:22:21 +07:00
Denozordec and Cursor
246ad1738a
fix(web): унифицировать таблицу VPS и перенести колонки в popover «Вид»
...
Docker / build (push) Has been cancelled
Co-authored-by: Cursor <[email protected] >
2026-06-28 22:07:29 +07:00
Denozordec and Cursor
18072fdeea
feat(web): добавить ReUI color picker в форму проекта
...
Docker / build (push) Has been cancelled
Co-authored-by: Cursor <[email protected] >
2026-06-28 20:04:56 +07:00
Denozordec and Cursor
f1fbd637a7
feat(web): добавить KPI-карточки на страницы платежей, баланса и продлений
...
Docker / build (push) Has been cancelled
Co-authored-by: Cursor <[email protected] >
2026-06-28 19:47:16 +07:00
Denozordec and Cursor
5a3241a7d1
feat(vps): визуальный редактор кастомных полей и колонки в таблице
...
Docker / build (push) Has been cancelled
Заменён JSON-редактор в настройках на UI с drag-reorder, добавлены динамические колонки VPS с picker видимости и типизированные контракты в @cfdm/shared.
Co-authored-by: Cursor <[email protected] >
2026-06-28 19:28:32 +07:00
Denozordec and Cursor
2e1ca9f2a7
feat(web): компактные KPI-карточки и унификация фильтров таблиц
...
Docker / build (push) Has been cancelled
Сделать метрики плотнее и информативнее, вынести общий toolbar фильтров с chips и счётчиком результатов, улучшить читаемость DataGrid через dense и зебру.
Co-authored-by: Cursor <[email protected] >
2026-06-28 18:40:26 +07:00
Denozordec and Cursor
c80090ed08
feat(accounts): доработать управление аккаунтами хостеров
...
Docker / build (push) Has been cancelled
Добавить apiLogin из credentials, сводку и health-индикаторы на /accounts, фильтры, раздельную форму логина и пароля, безопасное удаление с 409 и тесты API/repository.
Co-authored-by: Cursor <[email protected] >
2026-06-28 16:53:51 +07:00
Denozordec and Cursor
11b67a1cef
feat: расширить инвентарь, ops и интеграции по roadmap
...
Docker / build (push) Has been cancelled
Добавлены bulk-операции VPS, карточка /vps/:id, CRUD проектов, Command Palette,
календарь продлений, webhooks, uptime-проверки, audit log, кастомные поля и адаптеры провайдеров.
Co-authored-by: Cursor <[email protected] >
2026-06-28 15:28:35 +07:00
Denozordec and Cursor
0ea92746e4
refactor(web): унифицировать UI по паттернам ReUI на всех 12 страницах
...
Docker / build (push) Has been cancelled
Ввести CrudListPage, AnalyticsPage, RowActions и domain edit sheets с FormSheetRhf; убрать устаревшие TableCard/DataTableCard.
Co-authored-by: Cursor <[email protected] >
2026-06-28 13:16:00 +07:00
Denozordec and Cursor
dc0650b61e
fix(web): вкладки дашборда по паттерну REUI Tabs
...
Docker / build (push) Has been cancelled
Line tabs с нижней границей, REUI Badge для счётчиков; исправлен URL registry @reui в components.json.
Co-authored-by: Cursor <[email protected] >
2026-06-28 01:34:51 +07:00
Denozordec and Cursor
5d83b1a95d
fix(web): фильтры VPS, вкладки дашборда и здоровье инвентаря
...
Docker / build (push) Has been cancelled
Фильтры стран и городов показывают только значения из БД; отключено автозаполнение поиска. Вкладки дашборда приведены к line tabs по REUI. VPS без проекта больше не считается проблемой.
Co-authored-by: Cursor <[email protected] >
2026-06-28 01:15:57 +07:00
Denozordec and Cursor
921feb926f
fix(sync): загрузка тарифов при обычной синхронизации аккаунтов
...
Docker / build (push) Has been cancelled
Обычный синк больше не пропускает тарифы; добавлены кнопки «Синхронизировать все» и «Загрузить тарифы», исправлен dropdown на странице аккаунтов.
Co-authored-by: Cursor <[email protected] >
2026-06-28 00:45:52 +07:00
Denozordec and Cursor
1e291b3759
feat(web): доработка UX/UI — дашборд, навигация и data foundation
...
Docker / build (push) Has been cancelled
Добавлены syncLog в snapshot, API статистики дашборда и маппинг цен тарифов; переработаны shell, главная страница, empty states и новые экраны журнала синка и проектов.
Co-authored-by: Cursor <[email protected] >
2026-06-28 00:27:09 +07:00
Denozordec and Cursor
9df91bf2cc
fix(build): сборка @cfdm/db и @cfdm/shared в dist для production
...
Docker / build (push) Has been cancelled
Node в Docker не мог импортировать .ts из workspace-пакетов; exports
переключены на dist, добавлен tsc build и сборка в Dockerfile.
Co-authored-by: Cursor <[email protected] >
2026-06-27 23:36:15 +07:00
Denozordec and Cursor
0de0538218
feat(api): завершение миграции на Fastify — sync, scheduler, backup
...
Docker / build (push) Has been cancelled
Портированы BILLmanager sync/test/balance, планировщик и Telegram,
импорт/экспорт бэкапов и migrate API; Docker по умолчанию на fastify.
Добавлен .understand-anything/ в gitignore, исправлен path codegraph в MCP.
Co-authored-by: Cursor <[email protected] >
2026-06-27 23:22:59 +07:00
Denozordec and Cursor
836c8a2936
feat(web): связка страны и города в форме VPS
...
Co-authored-by: Cursor <[email protected] >
2026-06-27 02:18:18 +07:00
Denozordec and Cursor
a954591493
feat(web): ReUI Autocomplete для страны/города и вертикальная раскладка локации
...
Co-authored-by: Cursor <[email protected] >
2026-06-27 02:11:45 +07:00
Denozordec and Cursor
f681f72e8c
fix(web): флаги стран, FormDatePicker и плоские таблицы без двойной рамки
...
SVG-флаги через flagcdn и resolveCountryCode; поле «Оплачено до» — компактный Popover+Calendar на русском; DataGridCard без вложенной обводки.
Co-authored-by: Cursor <[email protected] >
2026-06-27 01:59:50 +07:00
Denozordec and Cursor
4c7dfc45d6
feat(web): иконки заголовков и rich cells во всех таблицах
...
Lucide-иконки в заголовках, двухстрочные ячейки аккаунтов, флаги локации VPS, favicon хостеров.
Co-authored-by: Cursor <[email protected] >
2026-06-27 01:42:45 +07:00
Denozordec and Cursor
a6f202f659
feat(web): ReUI DataGrid — Column Icons, оболочка и хелперы ячеек
...
DataGridColumnHeader в columnDefFromDataTable, bordered-контейнер, русская пагинация, хелперы dataGridCellStack/WithIcon/WithFlag.
Co-authored-by: Cursor <[email protected] >
2026-06-27 01:42:39 +07:00
Denozordec and Cursor
bbb6de29be
fix(web): поиск VPS на отдельной строке над фильтрами
...
Строка поиска вынесена выше кнопки «Фильтр» и чипов активных фильтров для более понятной иерархии тулбара.
Co-authored-by: Cursor <[email protected] >
2026-06-27 01:27:58 +07:00
Denozordec and Cursor
af9bd44d44
fix(web): кнопка «Фильтр» в тулбаре VPS — явный trigger для ReUI Filters
...
Без пропа trigger компонент Filters рендерил пустую кнопку, из-за чего фильтры были невидимы на странице.
Co-authored-by: Cursor <[email protected] >
2026-06-27 00:51:20 +07:00
Denozordec and Cursor
b1315ffe0a
feat(web): миграция таблиц на @reui/data-grid (TanStack Table + virtualization + pinning)
...
- Установлен @reui/data-grid через shadcn CLI: зависимости @tanstack/react-table,
@tanstack/react-virtual, @dnd-kit/* добавлены в apps/web
- Поправлены type-only импорты во всех файлах data-grid (verbatimModuleSyntax),
убран unused параметр table в DataGridTableVirtualBody
- Создана shared-обёртка apps/web/src/components/data-grid-card.tsx (замена
DataTableCard) с типизированными ColumnDef<TData>, сортировкой, пагинацией
(>25 строк), column pinning, optional virtualization (DataGridScrollArea +
DataGridTableVirtual), footer-контентом и хелпером columnDefFromDataTable
- Мигрированы все 7 страниц: vps, dashboard, payments, balance, accounts,
tariffs, providers — DataTableCard/TableCard+Table → DataGridCard
- Virtualization включена для VPS и payments при >200 строк (height 560)
- Column pinning последней колонки (actions) — vps, payments, balance, accounts,
providers
- Footer rows с итогами: balance (приходы/списания/итого), payments (по валютам)
- build + tsc --noEmit без ошибок
Co-authored-by: Cursor <[email protected] >
2026-06-27 00:06:59 +07:00