Files
bedolaga-cabinet/CHANGELOG.md
2026-03-11 00:56:05 +00:00

75 KiB

Changelog

1.31.0 (2026-03-11)

Features

  • add gifts tab to admin user detail page (695ab42)
  • desktop nav expand-on-hover with larger icons (8dab6dc)
  • display promo group and active discount banners on gift page (03c9e73)
  • responsive desktop nav — icon-only on lg, icon+text on xl (e7cd370)

Bug Fixes

  • desktop nav always icon-only with tooltips (f0777f0)
  • display zero-amount transactions with neutral styling (6fd76c8)
  • show nav labels from 2xl (1536px) instead of xl (1280px) (3bae6cf)

1.30.0 (2026-03-10)

Features

  • gift subscription redesign — code-only purchase + 3-tab UI (af3e535)
  • show localized error for self-activation attempt (7549ae7)
  • split my gifts into Active/Activated/Received sections (51ec799)

Bug Fixes

  • activation broken — token uppercased + wrong env var for bot username (d852bfe)
  • add null guard for purchase_token before rendering CodeOnlySuccessState (51cc122)
  • CopiedToast not visible due to CSS transform context (39bdf8b)
  • gift code display + share modal backdrop (a627eb0)
  • gift UI improvements — declension, GB display, share modal, deep links (1bafcca)
  • hide Quick Renew for expired trial subscriptions (8b056e0)
  • remove dark backdrop overlay from share modal (b213535)
  • replace orphaned shareModal i18n keys in GiftResult (0322974)
  • route PendingGiftCard to gift activation tab instead of landing endpoint (8ab740f)
  • use short 12-char code in bot and cabinet share links (73d67bc)

1.29.1 (2026-03-10)

Bug Fixes

  • daily tariff renewal uses purchaseTariff instead of renewSubscription (8629cfe)
  • show fallback when tariff has no available periods for renewal (ea06ad1)

1.29.0 (2026-03-09)

Features

  • add button reordering within rows and replace modal with inline add panel (082471b)
  • add gift navigation, routes, and i18n translations (7890d48)
  • add gift subscription API client and feature flag (a495205)
  • add gift subscription toggle to admin branding settings (9542607)
  • add GiftSubscription and GiftResult pages (814b1f5)
  • add gradient fade indicators to scrollable desktop nav (622172f)
  • add menu editor tab with drag-and-drop rows, custom URL buttons, and button configuration (23aa86f)
  • add open_in setting for custom buttons (external browser / Telegram miniapp) (638844e)
  • read gift warning from status response, soften poll error state (4322d58)

Bug Fixes

  • add missing nameRequired i18n key for promo group form validation (78fda22)
  • admin promo groups - add default toggle, fix threshold reset to 0 (9c7ab4b)
  • harden gift subscription frontend after multi-agent review (6ea1de2)
  • make desktop nav horizontally scrollable on narrow screens (ab7d1b7)
  • remove bg-dark-950 from gift pages to preserve animated background (c8ec221)
  • remove noreferrer from payment links to preserve Referer header (45203da)
  • restore session from refresh token when access token is missing (dc740ae)
  • support OIDC mode in TelegramLinkWidget for account linking (880b2d4)

1.28.0 (2026-03-09)

Features

  • add dedicated TopUpResult page for payment return flow (b591228)
  • support disabled daily subscription status in cabinet UI (7940410)

Bug Fixes

  • cover all payment provider statuses in TopUpResult (8897561)
  • device purchase guard condition and cache invalidation (115c684)
  • force fresh balance data on purchase-options query (69a8fe8)
  • support method query param fallback for external browser redirects (7ce5341)

1.27.0 (2026-03-08)

Features

  • add gift purchase UI states for telegram recipients (eed077b)
  • unified device manager with dot-based selector (edb7ef0)

Bug Fixes

  • add purchase-options cache invalidation on balance changes (f1102d2)
  • mobile layout overflow on landing page (9aae9cc)
  • show infinity symbol for unlimited traffic on landing page (bda95ed)
  • unify device manager into additional options card with unbounded dot selector (6dc8ca0)
  • use platform-conditional replace for QR navigation to preserve Telegram back behavior (7bb75aa)

Reverts

  • remove device manager redesign, restore original device UI (71a0111)

1.26.0 (2026-03-07)

Features

  • add configurable animated background for landing pages (a404690)
  • add landing page statistics page with recharts (3019019)
  • add purchases list with pagination to landing stats page (887b13d)

Bug Fixes

  • allow animated background to show through on landing pages (66bb86a)
  • rename duplicate 'purchases' i18n key to 'purchaseCount' (0ce74ea)
  • replace deprecated Telegram Login Widget redirect with callback (32091d3)
  • send Bearer token on email register (link to Telegram account) (68e6ce1)

1.25.0 (2026-03-07)

Features

  • add discount UI for landing pages (f7afa00)
  • add external squad selection to tariff admin form (bc45294)
  • add i18n translations and admin category for Telegram OIDC (c221c6e)
  • add landings permission section translations for role editor (5228b2d)
  • add payment sub-option selection on quick purchase page (58e93cd)
  • add sub-options UI for landing payment methods + extract components (d0be127)
  • add user filter chips and resource types to audit log (4072274)
  • guest purchase activation UI & landing editor improvements (b852e1e)
  • guest purchase cabinet credentials UI (d228d99)
  • migrate Telegram Login Widget to v23 with admin-configurable settings (2c65ca8)
  • TelegramLoginButton with OIDC popup + legacy widget fallback (91f0e9e)
  • мультиязычные лендинги + переключатель языка + исправления по ревью (ab13616)
  • публичные лендинг-страницы для быстрой покупки VPN-подписок (8b5d777)

Bug Fixes

  • adapt admin landings list for mobile layout (b7c7dec)
  • add pagination to campaigns list (46f640a)
  • add unmount safety guard to OIDC callback handler (dfa7a09)
  • address code review findings for TelegramLoginButton (5c11f12)
  • admin landing editor — tariff period mapping and cleanup (6a92814)
  • auto-select single sub-option and remove unused return_url field (83fbd0e)
  • handle Pydantic validation errors in notify + nullify empty optional fields (9bd58cb)
  • landing list crash — title is now LocaleDict, not string (6755c1d)
  • mobile layout and period label translations for quick purchase landing (6d5c6fb)
  • OIDC login UX improvements from review (b335d66)
  • prevent buyer from activating gift pending subscription (97959b0)
  • safe error handling and numeric client_id in OIDC login (45e68ff)
  • show total purchase count instead of paid on admin landings (b9f1f59)
  • админ-редактор — системные методы оплаты, реальные периоды тарифов, фильтрация на публичной странице (e01c9f5)
  • безопасность и UX лендингов — 16 исправлений (3cea482)

1.24.0 (2026-03-05)

Features

  • account linking and merge UI for cabinet (93f97d4)
  • account merge flow — merge redirect, error handling, server-complete linking (2fc0759)
  • add sales_stats RBAC permission section to frontend (262303d)
  • add Telegram account linking UI with CSRF protection (a6fabb1)
  • open OAuth linking in external browser from Telegram Mini App (7c30a1e)
  • кликабельные имена пользователей в последних платежах (e278fec)

Bug Fixes

  • accessibility, query cache clear, post-merge navigation (e447e99)
  • add Referrer-Policy to prevent merge token leakage via Referer header (584f002)
  • double-click guard on link, wall-clock timer, blur cleanup (8ad0500)
  • harden merge UI and improve error handling (58cf1e3)
  • merge: accessibility, token guard, state cleanup (579f47e)
  • move useState before useMutation for consistent hook ordering (fba4481)
  • prevent onBlur race cancelling unlink confirmation (3418ba9)
  • remove unused linkTelegramWidget i18n key from all locales (9b4a851)
  • replace window.confirm with inline confirmation for unlink (d0c01a0)
  • review findings — polling fallback, sessionStorage cleanup, UX (da1926f)
  • second round review fixes for merge UI (aa26059)
  • заменить Tailwind green/emerald классы на success из темы (86f75f2)
  • заменить хардкодный зелёный (#3EDBB0) на акцентный цвет из темы (d526d09)

1.23.1 (2026-03-04)

Bug Fixes

  • ordered list numbering in Info page shows correct sequence (8157ca5)
  • replace hardcoded green with theme-aware accent color (a3ddddf)

1.23.0 (2026-03-02)

Features

  • add admin sales statistics dashboard with 5 analytics tabs (a47c222)
  • add daily deposits by payment method chart (f012710)
  • add daily traffic & device purchase chart to addons stats (2235b3c)
  • add fullscreen QR code for subscription connection (4d14e3e)
  • add recharts analytics to admin campaign stats page (c7d05c4)
  • add reset traffic toggle on tariff switch (49fff8e)
  • display per-campaign stats on partner detail page (75a6149)
  • enhance sales stats with device stats, per-tariff charts, and dual-series trials (4622b4b)

Bug Fixes

  • add subscription tab to desktop nav, fix device dots overflow, show available referral balance (27f85a1)
  • align RecentPaymentItem types with backend schema (3f05039)
  • align TypeScript types with backend referral schemas (11343f4)
  • bar chart white hover cursor on dark theme (14e5f43)
  • block wheel spin without active subscription (821e991)
  • clean up expired trial card - remove redundant badge and subtitle (d2f02d6)
  • eliminate hover flickering across all pages (bdc201b)
  • improve campaign stats, shared chart components, and i18n coverage (673de08)
  • improve light theme visibility for dashboard and subscription cards (4cdff97)
  • improve light theme visibility for inner panels on subscription page (430b703)
  • isolate content layer from animated background to eliminate flickering (04eacf6)
  • move CTA button above additional options section (0bc817f)
  • partner system bugs - commission field, withdrawal UX, admin amount (e94d81f)
  • prevent countdown timer overflow on narrow mobile screens (96bcc76)
  • remove devices stat block, stretch countdown to full width (396f814)
  • render animated background via portal at z-index:-1 to stop implicit compositing (12c97a2)
  • replace framer-motion with CSS keyframes in boxes background (7f17d95)
  • resolve hover flickering caused by GPU layer destruction (d8cf430)
  • review fixes - Math.round kopecks, fa locale, admin list commission (82987fd)
  • rewrite BackgroundBoxes from 225 DOM divs to single canvas element (d89c534)
  • show progress bar instead of dots when device_limit > 10 (d567817)
  • stop beams background from causing UI flickering in browser (7e89cce)
  • subscription UI improvements - expired card, duplicate badges, live countdown (f4d7a2c)
  • support VK ID OAuth 2.1 device_id in frontend (60f16e6)
  • tile noise texture instead of stretching on large screens (f652936)

Performance Improvements

  • optimize animated backgrounds for mobile — reduce GPU load and memory pressure (a933f66)
  • remove permanent GPU layer promotion from cards to fix flickering (fe32322)
  • throttle theme color picker, rewrite beams with CSS animation (d019953)

Reverts

  • remove user-facing reset traffic toggle (4a68347)

1.22.0 (2026-02-25)

Features

  • adapt dashboard and subscription page for light theme (f474067)
  • add animated gradient border to Connect Device buttons (70e1ed6)
  • add dashboard sub-components for subscription cards and stats grid (909374d)
  • add fonts, animations, and shared utilities for dashboard redesign (7e345fc)
  • add Freekassa SBP and card payment method icons and labels (a725265)
  • add HoverBorderGradient effect to key action buttons (3fb9606)
  • add TrafficProgressBar and Sparkline components (eb1f788)
  • replace animated backgrounds with Aceternity UI system (1a702a6)

Bug Fixes

  • animation config not updating for users after admin change (94ddf31)
  • boxes background not covering full screen (f16f96e)
  • boxes background not covering viewport (65afb29)
  • improve HoverBorderGradient visibility with accent colors and darker bg (4332c2b)
  • remove duplicate tariff info line, make tariff card clickable (bef5102)
  • remove gemini-effect and noise backgrounds, fix aurora animation (79ff741)
  • rewrite 5 broken background components from Aceternity sources (de97a03)
  • rewrite gradient border with @property CSS angle animation (d8b83cc)
  • rewrite HoverBorderGradient with CSS rotate instead of framer-motion (e95db23)
  • show actual connected devices count instead of device limit (a819f30)

Performance Improvements

  • eagerly load Dashboard to improve LCP on main route (5c1be14)
  • improve LCP — move font loading to HTML, defer logo preload (962dd43)
  • prefetch background chunk on page load from localStorage cache (44d88f7)

1.21.0 (2026-02-25)

Features

  • add granular user permissions (balance, subscription, promo_group, referral, send_offer) (3d6987f)
  • add per-channel disable settings and global settings to channel admin (48be067)
  • add RBAC permission system to admin cabinet frontend (874ee26)
  • add translations for permission sections and actions (80bfaca)
  • add weekdays condition to ABAC policies (a1a8dc2)
  • allow editing system roles (a050125)
  • improve audit log - translate actions, fix resource filter, show request body (5d0e353)
  • show query params in audit log details (66f7fcb)

Bug Fixes

  • add missing onError handlers on RBAC mutations (c4e3211)
  • guard user detail API calls with RBAC permission checks (bc5d832)
  • RBAC frontend type mismatches and translations (4c9c399)
  • RBAC policies page role handling and permission gates (56188b1)
  • redesign role revoke confirmation dialog (f829076)
  • replace broken modal with inline confirmation for role revoke (78e7099)

1.20.0 (2026-02-24)

Features

  • add channel edit in admin, hide subscribed channels in blocking screen (5a55892)
  • add multi-channel subscription blocking UI and admin management (a767fe9)

1.19.1 (2026-02-23)

Bug Fixes

  • add max attribute to expected referrals input (d1043e8)
  • add resend email cooldown and allow email change for all auth types (91d567f)
  • correct memory display to use actual usage instead of cache-inclusive (67bacd3)
  • detect Telegram account switch across tab closes (ee6ec59)
  • parse raw query string for deep link params to avoid double-decode (ed65c29)
  • plug memory leaks in blob URLs and traffic cache (7cf7273)
  • preserve + chars in deep link URL params for crypto links (65add9a)
  • remove double URL-decode in extractTelegramUserId (e8acfee)
  • render newlines in tariff description (0b4e825)
  • stack promo offer discounts with promo group discounts (321bedc)

Performance Improvements

  • add Zustand selectors to prevent cascading re-renders (03ad255)
  • extract Twemoji options to module-level const (17b2f2e)
  • fix critical WebGL GPU resource leaks in Aurora (9a84e13)
  • fix GPU-heavy CSS patterns (8604930)
  • fix render cycle in useBranding and conditional polling (30ece69)

1.19.0 (2026-02-18)

Features

  • add referral code persistence across all auth methods (2b2ead8)

1.18.0 (2026-02-18)

Features

  • add partner management and withdrawal admin pages (779fbf0)
  • admin partner settings page, partner section visibility toggle, custom requisites text (76d20fd)
  • partner-campaign integration in admin UI (959f892)
  • show blocked_count in broadcast admin UI (9cf8e09)
  • show partner campaign links with bonuses on referral page (8b33d82)
  • show traffic reset info in subscription card (271a005)
  • show traffic reset period on tariff cards (cfe9f64)

Bug Fixes

  • add missing cancelled filter key to withdrawal i18n in all locales (9b2742f)
  • hide empty blocks in connection installation guide (96f9a71)
  • reduce campaigns fetch limit to 100 (backend max) (be168a7)
  • remove duplicate min withdrawal amount on referral page (98ab109)
  • remove server/location count from tariff cards and confirmation (0fac368)
  • rename Серверы to Локации in subscription card (19e62fc)
  • show all campaigns in assign list, add dual links and bonus details (a72042d)
  • show locations count instead of servers on tariff cards (ecc089d)
  • stop WS reconnect loop on auth rejection (code 1008) (2efce0e)
  • use correct translation key for inactive campaign badge (8207368)

1.17.0 (2026-02-17)

Features

  • add web campaign links — capture, auth integration, bonus UI (e0dd21f)

1.16.1 (2026-02-16)

Bug Fixes

  • move cabinet_branding to sessionStorage and add WebGL availabili… (8200014)
  • move cabinet_branding to sessionStorage and add WebGL availability check (fc7ee6a)

1.16.0 (2026-02-15)

Features

  • add 'no color' option for button style customization (e586129)
  • add ButtonsTab for per-section button style customization (b289873)
  • add per-button enable/disable toggle and custom labels per locale (1a0a5ff)

Bug Fixes

  • normalize all API responses, add error handling and reset confirmation (150a1b2)
  • prevent button settings cards from overflowing in admin panel (54f1483)
  • wheel lands on correct prize sector for Stars payment spins (22bda66)

1.15.0 (2026-02-12)

Features

  • add admin pinned messages section (88cc0d9)
  • add admin pinned messages section (aa5113b)

1.14.1 (2026-02-12)

Bug Fixes

  • allow email change for unverified emails without code verification (a0b10e6)
  • handle unlimited traffic package selection and button text (1d6ec70)

1.14.0 (2026-02-11)

Features

  • compact login page with collapsible email, icon OAuth row, safe areas (45cbfb5)

Bug Fixes

  • guard oauthProviders with Array.isArray to prevent TypeError on Login page (f74e316)
  • harden OAuth login flow — open redirect, path traversal, info leak (a744b41)
  • remove colored background from logo on login page (6bf0af4)
  • remove redundant subtitle and register hint from login page (d596b05)
  • restore package-lock.json for CI (npm ci requires it) (069090a)
  • use openTelegramLink for CryptoBot payment to open invoice in Telegram (fc0dd39)

1.13.0 (2026-02-09)

Features

  • add empty state for connection page when no apps configured (fb25df6)
  • show affected subscriptions count on tariff deletion (f10a02c)

Bug Fixes

  • check apps before subscription on connection page (a4e6e35)
  • hide Telegram back button on bottom nav pages (03a7db5)
  • hide Telegram back button on bottom nav pages (e5ed6d0)
  • prevent useCloseOnSuccessNotification from firing on mount (0389acd)
  • remove @floating-ui from radix chunk to resolve circular dependency (772d83d)

Performance Improvements

  • extract locales into separate chunk (2c126f5)

1.12.0 (2026-02-08)

Features

  • add admin traffic packages and device limit management UI (2dfa520)
  • add admin updates page with release history (a15b3d4)
  • add device management UI in admin user card (6f31fbe)
  • add enrichment columns to admin traffic usage table (893c69a)
  • add inline referral commission editing in admin user card (92d206f)
  • add system info card to admin dashboard (ab0270a)
  • admin panel enhancements & release history (3bd9abb)
  • enable sorting on enrichment columns (5678dfd)
  • render GitHub markdown in release changelogs (0c34668)

Bug Fixes

  • show email for OAuth/email users in traffic table (a8ea5c9)

1.11.1 (2026-02-08)

Bug Fixes

  • hide backend URL from logo by fetching as blob (de09ea0)
  • stretch low-res Aurora canvas to fill viewport (23f56af)

Performance Improvements

  • reduce Aurora animated background GPU load by ~95% (56788b1)

1.11.0 (2026-02-08)

Features

  • admin traffic usage, session persistence, and UI improvements (2193df7)

Bug Fixes

  • persist refresh token across Telegram Mini App reopens (a449dd6)
  • persist refresh token across Telegram Mini App reopens (20ea200)

1.10.0 (2026-02-07)

Features

  • add admin traffic usage page (8c8fa40)
  • add admin traffic usage page with TanStack Table (a034a60)
  • add country filter and risk columns to traffic CSV export (471e2c8)
  • add node/status filters and custom date range to traffic page (90b38e3)
  • add node/status filters, custom date range, connected devices to traffic page (0301fd8)
  • add node/status filters, date range, devices to traffic page (e824945)
  • add promo group and promo offer management to AdminUserDetail (8bd3c00)
  • add tariff checkbox filter, column resizing to traffic page (cfb7ce7)
  • add traffic abuse risk assessment with color gradation (a6507b2)
  • node/status filters + custom date range for traffic page (8b113a5)
  • promo group & offer management in AdminUserDetail (280f4ae)
  • tariff checkbox filter + column resizing for traffic (c383c78)
  • traffic abuse risk assessment with color gradation (88f8e8b)
  • traffic page filters, risk assessment, country filter & CSV export (84cce93)

Bug Fixes

  • add client-side caching and smooth loading for traffic page (471c37b)
  • allow user column to shrink smaller on mobile (6aa8951)
  • allow user column to shrink smaller on mobile (12663a5)
  • client-side caching and smooth loading for traffic page (81fcf54)
  • column shrinking on mobile + country dropdown overflow (1aa0e7f)
  • enforce column maxWidth for proper shrinking on mobile + country dropdown positioning (060c9be)
  • improve risk assessment display with GB/d values (4fe96bc)
  • improve risk calculation display with actual GB/d values (e60b846)
  • widen column resize touch target for mobile (c54cc9e)
  • widen column resize touch target for mobile devices (da273d6)

1.9.0 (2026-02-07)

Features

  • add 1d and 3d period filters for node usage (f36ee60)
  • add 1d and 3d period filters for node usage (944b2ec)
  • add Info page link to desktop top navigation (fa48cc4)
  • add Info page link to desktop top navigation (18a14d6)
  • add OAuth 2.0 login UI (Google, Yandex, Discord, VK) (83aeae8)
  • add SVG brand icons for payment methods (c4f228f)
  • add ticket status buttons to inline chat (5664b28)
  • add ticket status change buttons to inline chat (dafa69f)
  • add tickets tab to admin user detail page (995c034)
  • add Twemoji for cross-platform emoji rendering (031396d)
  • add Twemoji for cross-platform emoji rendering (72b1089)
  • add user profile link button in ticket detail (d483d84)
  • brand-accurate payment method icons from favicons (e24afc4)
  • dual-channel broadcast form (Telegram + Email simultaneously) (772dcf7)
  • dual-channel broadcasts (Telegram + Email) (74f6c61)
  • enhance admin user detail with campaign, panel data, node usage (0083b47)
  • enhance admin user detail with campaign, panel data, node usage (7b19f14)
  • inline ticket chat in admin user detail (0b10cfe)
  • inline ticket chat in admin user detail (145d94a)
  • local period calculation and refresh button for node usage (64ea757)
  • local period calculation and refresh button for node usage (bc6985f)
  • move user action buttons to detail page and fix full delete (2490399)
  • move user actions to detail page, fix full delete (dad0c5b)
  • OAuth 2.0 login UI (Google, Yandex, Discord, VK) (b7aca0c)
  • support Telegram HTML formatting in privacy/offer content (fb055c0)
  • support Telegram HTML formatting in privacy/offer content (3e70008)
  • SVG иконки платёжных методов, фикс колеса удачи (2003052)
  • tickets tab in admin user detail (1426e46)
  • update payment method icons with brand-accurate favicon designs (33e878d)
  • user profile link in ticket detail (e0c9a89)

Bug Fixes

  • add country flags to node usage display (14b73f6)
  • add country flags to node usage display (80bad9d)
  • hide onboarding when blocking screen is active (af25e6a)
  • hide onboarding when blocking screen is active (4791a9f)
  • move theme save/cancel buttons outside collapsible section (7c30454)
  • remove incorrect ruble top-up prompt from fortune wheel (2c0d265)
  • remove payment method icons from admin pages (77e0edf)
  • remove payment method icons from admin pages (dd9ed83)
  • theme custom colors not persisting after navigation (174fefd)
  • theme custom colors save button not appearing (ab80e31)
  • кнопка сохранения ручной темы не появлялась (017a6fa)

1.8.0 (2026-02-06)

Features

  • add blacklisted user blocking screen (c5cad20)
  • add blacklisted user blocking screen (5a8c1e7)
  • add drag-and-drop tariff sorting in admin panel (ef365db)
  • connect RemnaWave baseTranslations and fix SVG icons (a50dea9)
  • convert ConnectionModal to /connection page with crypto deep links (445dd06)
  • drag-and-drop tariff sorting (6f3abf8)
  • render original RemnaWave blocks on connection page (79afe3a)
  • subscription: auto-skip server selection step when only one available (998f9db)
  • subscription: auto-skip server selection when only one available (e5a1c04)
  • use app-level svgIconKey for app logos and improve tile contrast (65a6714)
  • use platform displayName from RemnaWave config in connection page (53940a0)

Bug Fixes

  • add bottom padding to last block in minimal layout (5a69496)
  • add light theme support to connection page (88d9377)
  • add retry logic for Telegram Mini App auth failures (a1c0ceb)
  • full-screen page loader and remove bg flash on transitions (30d984c)
  • increase bottom spacing for installation guide blocks (c669d2e)
  • match header icon sizes for theme toggle and logout buttons (48eee9f)
  • prevent header layout shift and unify action button styles (d900c6f)
  • prevent header nav shift with invisible theme button placeholder (50e675b)
  • remove local toast from AdminPaymentMethods, use useNotify (692e45a)
  • remove nested scroll constraint from tariff servers and promo groups (c944e9e)
  • remove space-y-0 that overrides block margins in minimal layout (c4f1070)
  • resolve RemnaWave SVG icons and icon colors on connection page (91afbbf)
  • resolve Telegram Mini App auth failures on all platforms (7df751e)
  • restore platform dropdown with SVG icon and widen app chips to match original (966343a)
  • restyle app cards to match original RemnaWave UI and debug icons (42e70f7)
  • standardize admin form inputs, validation, and sync with backend constraints (6e7eb36)
  • subscription: display promo discounts for devices, traffic and tariff switch (6c22a52)
  • subscription: display promo group discounts in device/traffic purchase and tariff switch (46b93ef)
  • theme preset persistence, page transition flash, and wheel LED jank (f54ad4e)
  • unify connection page design with global styles and add platform SVG icons (4866003)
  • unify toast notifications and improve visual/behavior (66a6697)
  • use redirect page for all platforms and fallback to regular subscription URL (5111b63)

1.7.0 (2026-02-04)

Features

  • add Stars payment confirmation and admin validation (e6f8ae6)
  • replace payment modals with page-based navigation (576893f)

Bug Fixes

  • dim accent color for background blobs (bb32cd8)
  • inline Stars confirmation and unified payment type display (8068f84)
  • prevent payment type reset after wheel spin (4499c9a)
  • unify wheel Stars payment across desktop and mobile (02640d1)
  • update Aurora colors reactively without recreating WebGL context (59a251c)

1.6.2 (2026-02-04)

Bug Fixes

  • add theme toggle to desktop header and sync theme across components (bf00d37)
  • Aurora animation ignoring light theme background color (c1dc019)
  • replace individual light theme overrides with CSS variable swap (9ac00c9)
  • use dynamic champagne variables for light theme palette swap (ecd912b)
  • use theme surface and background colors for Aurora animation (a91e055)

1.6.1 (2026-02-04)

Bug Fixes

  • add fallback recovery for Telegram popup callback not firing (7ac7db4)
  • add HMR guard to prevent ConcurrentCallError on SDK double-init (bcbda17)
  • get fresh Telegram WebApp reference on each popup call (792fb1e)
  • prevent duplicate Telegram popup opening (71647eb)
  • prevent popup cascade when Telegram callback doesn't fire (2d00a5c)
  • resolve SDK v3 mount errors, back button and fullscreen not working (61e3910)
  • use direct dialog.popup call instead of useDestructiveConfirm (ef77276)

1.6.0 (2026-02-04)

Features

  • add animated MovingGradient background (24781f3)
  • add autocomplete to settings search (e5096d5)
  • add locales for user search in promo offer sending (0c9d092)
  • add Telegram/Email channel selection to broadcast create page (0773afd)
  • add useNotify hook for unified notifications (6f4d1ef)
  • add user search autocomplete for promo offer sending (fc92267)
  • extract promocodes and promo groups into separate pages (a96ddde)
  • improve tariff builder UI (e19767a)
  • Linear-style UI redesign with improved mobile experience (b953ee0)
  • migrate to @tma.js/sdk-react for Telegram Mini App (edb5be0)
  • move campaign statistics to dedicated page (1027deb)
  • move ticket settings to dedicated page (ead4606)
  • redesign fortune wheel UI and add to mobile nav (7e2802c)
  • redesign fortune wheel with improved UX (494285b)
  • replace broadcast creation modal with dedicated page (175516e)
  • replace campaign creation modal with dedicated page (bce4d94)
  • replace MovingGradient with Aurora WebGL background (cffef41)
  • replace tariff creation modal with dedicated page (dc17695)
  • scroll to tariffs section when clicking discount badge (3613294)

Bug Fixes

  • add full i18n support for RemnaWave section and improve sync UI (ed86dfa)
  • add missing i18n keys for broadcast detail page (c60a242)
  • add placeholders to all tariff form number inputs (8cd95b8)
  • add Russian translation for device limit reduction reason (e884860)
  • add Telegram header padding for Android fullscreen mode (093c9f2)
  • AdminTariffCreate back button and daily tariff colors (d623cd4)
  • allow clearing number inputs and add validation (47e28ee)
  • Aurora uses theme colors from API with blur overlay (55ae55f)
  • disable Telegram swipe-to-close globally to prevent accidental app closures (9b0be28)
  • disable Telegram vertical swipes during drag operations (8deca2f)
  • handle unmounted SDK components gracefully (baa57b9)
  • improve admin user detail tabs scroll and sync buttons design (45dac03)
  • improve header layout for mobile - stack button below title (643d4fd)
  • improve mobile layout for bandwidth and add pluralization support (e9af285)
  • improve tariff delete button visibility (5b30f24)
  • improve Toast visibility and allow tariff deletion with subscriptions (36cc01c)
  • make Aurora colors vibrant and increase speed (851e6a3)
  • promo offer button mobile layout (1d4a99c)
  • remove dark backgrounds causing black rectangles (2926a5a)
  • remove page transition animations to prevent flashing (dda8323)
  • remove quick actions section and optimize build chunks (de613d9)
  • remove small discount badge and improve large badge UX (822b9a6)
  • restore page animations, improve checkbox visibility (5ad5e8d)
  • revert to native Telegram WebApp API, remove SDK usage (6f8bc4f)
  • scroll to start of tariffs section and wait for data to load (c815ac2)
  • UI improvements - reduce Android header, hide mobile scrollbar, disable animations in Telegram, consistent menu overlay (768b340)
  • unify card styles across the project (4a25d8d)
  • use native Telegram popup for email preview restriction (7aeb47f)
  • use pill-style tabs in admin user detail page (09584fc)
  • use RemnaWave icon in admin panel menu (4034b4d)
  • use single shared WebSocket connection and optimize build chunks (f6854c6)
  • wrap all SDK isSupported() calls in try-catch (e5ea09d)