Visual editor in admin settings for configuring Telegram button colors
and custom emoji IDs per menu section. Includes API client, draft state
management, save/reset, and translations for ru/en/fa/zh locales.
Fixed issue where users had to click the Telegram Mini App back button twice
in many admin pages. The replace flag was causing conflicts between Telegram's
BackButton internal history and React Router's history management.
Updated all 32 admin pages to use simple navigate() calls without replace flag.
Add replace: true to all navigate() calls in useBackButton hooks
Prevents history cycles when navigating back and forth
All 32 admin pages now use navigate(path, { replace: true })
Back button now goes directly to parent without cycling
Main sections navigate to /admin (15 pages)
Detail/edit pages navigate to parent lists (16 pages)
All pages use useBackButton hook with proper navigation paths
Native Telegram back button in Mini App, UI button on web
Email template pages keep UI-only back buttons as required
- Show dropdown with top 8 matching settings while typing
- Search by key, name, translated name, description and category
- Display setting name and category in suggestions
- Keyboard navigation (arrows, Enter, Escape)
- On select: switch to correct section and filter by setting key
- Works on both desktop and mobile
Major changes:
- Redesign cabinet with Linear-style components and top navigation
- Replace detail modals with dedicated pages (users, broadcasts, email templates)
- Add email channel support for broadcasts
- Remove pull-to-refresh, improve drag-and-drop on touch devices
- Fix Telegram Mini App: fullscreen, back button, scroll restoration
- Unify admin pages color scheme to design system
- Mobile-first improvements: horizontal tabs for settings, better touch targets
- Introduced SettingsSidebar for improved navigation and organization.
- Added SettingsSearch and its mobile variant for enhanced search functionality.
- Updated AdminSettings to utilize new components, streamlining the layout and improving user experience.
- Search across all settings regardless of active section
- Search by translated names, descriptions, and categories
- Add clear search button (X icon)
- Show search results count
- Add 65+ new translations for subscription, trial, traffic, autopay settings
- Replace flat navigation with accordion-style collapsible subcategories
- Categories are collapsed by default, click to expand
- Search shows flat list when query is present
- Remove unused ChevronRightIcon and activeSubCategory state
- Remove SETTING_TRANSLATIONS object with 50+ hardcoded Russian translations
- Add translations to ru.json under admin.settings.settingNames
- Rename formatSettingName to formatSettingKey
- Use t() function with fallback for setting names
- Introduced a dictionary for translating various settings into Russian.
- Updated the `formatSettingName` function to return translated names when available.
- Adjusted layout for sidebar and main content to improve responsiveness and organization.
- Introduced `formatSettingName` to convert setting names from Snake_Case/CamelCase to a readable format.
- Added `stripHtml` function to remove HTML tags from setting descriptions.
- Updated rendering logic in `renderSettingRow` to utilize the new helper functions for improved display of setting names and descriptions.
- Enhanced layout for settings display with better spacing and organization.
- Replace top tabs with sidebar menu navigation
- Add sub-categories for settings (payments, subscriptions, etc.)
- Implement full Russian localization for all UI elements
- Add category translations for all setting groups
- Collapsible presets and custom colors sections
- Favorites functionality with localStorage persistence
- Search functionality in settings
- Responsive layout with collapsible sidebar
- Quick Presets: collapsible section with 8 theme presets
- Custom Colors: collapsible section with all color pickers
- Added translations for quickPresets, customColors in all locales (ru, en, zh, fa)
- Chevron icon rotates when section is expanded
- Preview section moved inside Custom Colors
- Updated ColorPicker component styles for better visual consistency and usability.
- Adjusted button sizes and input fields for a more cohesive design.
- Introduced theme presets in AdminSettings for quick color scheme selection, enhancing user experience.
- Added new color schemes with predefined colors for easier theme management.