Commit Graph

158 Commits

Author SHA1 Message Date
c0mrade
8deca2fa5b fix: disable Telegram vertical swipes during drag operations
- Add useTelegramDnd hook for @dnd-kit integration
- Update Sheet components to disable swipes when open
- Update AdminPaymentMethods to use the new hook
- Prevents conflict between app drag gestures and Telegram swipe-to-close
2026-02-01 22:46:16 +03:00
c0mrade
4a25d8df03 fix: unify card styles across the project
- Set --bento-radius to 16px (was 24px) for more modern look
- Unified .card, .bento-card and Card component to use same:
  - border-radius: var(--bento-radius)
  - border: border-dark-700/40
  - background: bg-dark-900/70
  - inset shadow for glass effect
- Reduced padding from 24px to 20px
2026-02-01 22:07:54 +03:00
c0mrade
2926a5a89c fix: remove dark backgrounds causing black rectangles
- PageLoader: remove bg-dark-950, use transparent background
- AdminLayout: remove motion animations
- Now lazy-loaded pages show Aurora background during loading
2026-02-01 21:57:13 +03:00
c0mrade
dda8323b45 fix: remove page transition animations to prevent flashing
AnimatePresence was causing black flash between page transitions.
Removed page-level animations - stagger animations inside pages still work.
2026-02-01 21:48:28 +03:00
c0mrade
5ad5e8d365 fix: restore page animations, improve checkbox visibility
- Re-enable page transition animations in Telegram Mini App
- Change AnimatePresence mode from popLayout to wait (prevents black squares)
- Add initial={false} to skip animation on first render
- Add custom checkbox styling with better visibility (bg-dark-700, border-dark-600)
- Custom checkmark appearance when checked
- Light theme checkbox support
2026-02-01 21:32:08 +03:00
c0mrade
768b340c35 fix: UI improvements - reduce Android header, hide mobile scrollbar, disable animations in Telegram, consistent menu overlay 2026-02-01 21:22:42 +03:00
c0mrade
093c9f2893 fix: add Telegram header padding for Android fullscreen mode 2026-02-01 21:09:16 +03:00
c0mrade
edb5be09ae feat: migrate to @tma.js/sdk-react for Telegram Mini App
- Add useTelegramSDK hook with reactive signals for viewport, safe area, fullscreen
- Migrate TelegramAdapter to use SDK components (backButton, mainButton, hapticFeedback, cloudStorage, themeParams, popup)
- Update Login, TelegramRedirect to use SDK helpers
- Update PlatformProvider, api/client to use centralized SDK functions
- Simplify useTelegramWebApp as backward-compatible wrapper
- Add automatic CSS variable binding for theme and viewport
2026-02-01 20:13:50 +03:00
c0mrade
55ae55f4af fix: Aurora uses theme colors from API with blur overlay 2026-02-01 18:58:10 +03:00
c0mrade
851e6a353b fix: make Aurora colors vibrant and increase speed 2026-02-01 18:58:10 +03:00
c0mrade
cffef41f63 feat: replace MovingGradient with Aurora WebGL background 2026-02-01 18:58:10 +03:00
c0mrade
24781f32ec feat: add animated MovingGradient background 2026-02-01 18:58:10 +03:00
c0mrade
b953ee0b8c feat: Linear-style UI redesign with improved mobile experience
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
2026-02-01 18:58:10 +03:00
Egor
1d6450fd3b Add files via upload 2026-01-31 20:47:02 +03:00
Egor
35098faf88 Update InsufficientBalancePrompt.tsx 2026-01-31 20:31:23 +03:00
Egor
abe016c7b1 Add files via upload 2026-01-31 19:53:23 +03:00
c0mrade
0be1ef0340 feat: auto-close modals when success notification appears
- Add closeOthersSignal to success notification store
- Create useCloseOnSuccessNotification hook for modals to subscribe
- Update TopUpModal to auto-close on success events
- Update InsufficientBalancePrompt to auto-close on success events
- Update Subscription page to close all modals/forms on success events

This ensures that when a WebSocket event indicates successful payment
or subscription purchase, all related modals close automatically,
providing clear feedback to users.
2026-01-30 19:54:29 +03:00
c0mrade
175b5608b2 feat: add success notification modal for balance and subscription events
- Add zustand store for global success notifications
- Create SuccessNotificationModal component with prominent UI
- Update WebSocketNotifications to show modal for important events:
  - balance.topup shows balance topped up modal
  - subscription.activated shows activation modal
  - subscription.renewed shows renewal modal
- Add translations for all locales (ru, en, zh, fa)
2026-01-30 19:39:14 +03:00
c0mrade
ca227f3975 feat(websocket): add global handler for subscription and balance notifications
- Extend WSMessage interface with balance, subscription, autopay, account, referral fields
- Create WebSocketNotifications component to handle all WS events
- Add component to Layout for global event listening
- Show toasts and invalidate queries on subscription/balance events
- Add translations for all notification types (ru, en, zh, fa)
2026-01-30 19:04:45 +03:00
Egor
760761729b Add files via upload 2026-01-30 15:54:31 +03:00
Egor
80eb2a25d2 Update TopUpModal.tsx 2026-01-28 21:12:03 +03:00
Egor
f2e03ffb33 Update TopUpModal.tsx 2026-01-28 21:01:40 +03:00
c0mrade
9707ad97a4 feat(i18n): migrate all hardcoded Russian text to i18n
- Replace all hardcoded Russian strings with t() calls across 30+ files
- Add ~500 new translation keys to all 4 locales (ru, en, zh, fa)
- Convert module-level config objects to labelKey pattern
- Remove Russian fallbacks from t() calls (fallbackLng handles it)
- Replace DeepLinkRedirect custom i18n with standard t() calls
- Fix subscription.servers key collision (string vs object)
2026-01-27 22:19:41 +03:00
Egor
b42c52714b Fix formatting and improve favicon update logic 2026-01-27 17:59:36 +03:00
Egor
b523da2fb0 Merge pull request #101 from BEDOLAGA-DEV/feat/husky-eslint-security
feat/husky eslint security
2026-01-27 17:50:15 +03:00
c0mrade
bc90ba3779 refactor: migrate to eslint flat config and format codebase with prettier
- Remove legacy .eslintrc.cjs and .eslintignore
- Add eslint.config.js with flat config, security rules (no-eval, no-implied-eval, no-new-func, no-script-url)
- Add .prettierrc and .prettierignore
- Format entire codebase with prettier
2026-01-27 17:37:31 +03:00
Egor
719f8493ff Merge pull request #92 from evansvl/main
feat: Add new Layout component with navigation, branding, theme switc…
2026-01-27 17:37:28 +03:00
Egor
fea71bed83 Add files via upload 2026-01-27 01:22:00 +03:00
Egor
ce499ad5fd Update PageLoader.tsx 2026-01-27 01:21:33 +03:00
evansvl
0461f2e5c3 feat: Add new Layout component with navigation, branding, theme switching, and Telegram Web App integration. 2026-01-25 23:03:32 +03:00
Egor
41fedc4fc4 Update BrandingTab.tsx 2026-01-25 10:37:14 +03:00
Egor
012fced2a1 Update TopUpModal.tsx 2026-01-23 14:54:30 +03:00
Egor
c037faf59a Update TopUpModal.tsx 2026-01-23 14:48:30 +03:00
Egor
803a5f858f Update ConnectionModal.tsx 2026-01-23 00:11:58 +03:00
Egor
13da717707 Update ConnectionModal.tsx 2026-01-22 23:54:02 +03:00
Egor
cc7e4b19f4 Update ConnectionModal.tsx 2026-01-22 23:45:10 +03:00
Egor
a94c2a54b8 Update ConnectionModal.tsx 2026-01-22 23:38:42 +03:00
Egor
b9ef362055 Update TopUpModal.tsx 2026-01-22 22:17:55 +03:00
Egor
0207f5259a Update Layout.tsx 2026-01-21 08:41:40 +03:00
Egor
f2f93a3799 Add files via upload 2026-01-21 08:37:08 +03:00
Egor
0c44b03d5d Update ConnectionModal.tsx 2026-01-21 06:45:16 +03:00
Egor
97ebb33189 Update Layout.tsx 2026-01-21 05:31:18 +03:00
PEDZEO
ad5347a8b4 Fix lint error: use const instead of let for cleaned variable 2026-01-21 05:17:35 +03:00
PEDZEO
a364b51787 Fix theme toggles mobile layout: stack vertically on small screens 2026-01-21 05:01:19 +03:00
PEDZEO
15edd598b5 Fix Toggle animation: use translate-x instead of left position 2026-01-21 04:50:50 +03:00
PEDZEO
8d4c00d176 Add SettingsSidebar and SettingsSearch components to AdminSettings
- 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.
2026-01-21 04:31:07 +03:00
PEDZEO
82d38b829a Improve global search in AdminSettings
- 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
2026-01-21 04:28:31 +03:00
PEDZEO
b359e6445c Improve admin settings UI components
- Add EditIcon component to icons.tsx
- Enhance SettingInput with textarea for long/JSON values
- Improve SettingRow styling and long value handling
- Fix CORE category translation (Ядро → Бот)
- Add auto-resize for textarea and Ctrl+Enter save shortcut
2026-01-21 04:21:25 +03:00
PEDZEO
8776e2d128 Refactor AdminSettings into modular components
Split 1123-line monolithic AdminSettings.tsx into 11 modules:

Components:
- icons.tsx (85 lines) - All SVG icons
- Toggle.tsx (21 lines) - Reusable toggle component
- SettingInput.tsx (89 lines) - Text/select input for settings
- SettingRow.tsx (104 lines) - Single setting card
- BrandingTab.tsx (212 lines) - Logo, name, animation settings
- ThemeTab.tsx (277 lines) - Theme presets and custom colors
- FavoritesTab.tsx (59 lines) - Starred settings display
- SettingsTab.tsx (144 lines) - Accordion categories view

Utilities:
- constants.ts (55 lines) - MENU_SECTIONS, THEME_PRESETS
- utils.ts (35 lines) - formatSettingKey, stripHtml
- index.ts (13 lines) - Barrel exports

Result: AdminSettings.tsx reduced from 1123 to 251 lines
2026-01-21 03:56:21 +03:00
PEDZEO
d7b387927f Redesign AdminSettings with tabs navigation and favorites
- Add tab-based navigation (Favorites, Branding, Theme, Payments, etc.)
- Create useFavoriteSettings hook for localStorage-based favorites
- Create SettingCard component for consistent setting display
- Add global search functionality
- Implement collapsible sections for theme presets and colors
- Group settings by meta-categories (payments, subscriptions, etc.)
- Add dropdown for additional categories (More menu)
- Modern UI with improved spacing and interactions
2026-01-21 02:52:37 +03:00