1. 09 Jun, 2025 28 commits
  2. 08 Jun, 2025 12 commits
    • fix: balance unit sync · d30ae820
      skynono committed
    • 🎨 style: remove overly vibrant colors and simplify UI design · af0f59cb
      - Remove colorful gradient backgrounds from dashboard panel headers in Detail page
      - Replace custom header styling with default Semi-UI card title styling
      - Remove background images and gradient overlays from all authentication pages
      - Simplify authentication page layouts with clean gray backgrounds
      - Update title text colors from white to dark gray for better contrast
      - Remove unnecessary z-index layering and complex positioning
      - Clean up unused background image imports
      
      This change creates a more professional and consistent visual appearance
      across the application by removing distracting visual elements.
      Apple\Apple committed
    • feat(tables): add "No Results" empty state for all table components · 4c4d3331
      Add consistent empty state handling across all table components to improve
      user experience when search/filter results are empty.
      
      Changes:
      - Import Empty component and IllustrationNoResult/IllustrationNoResultDark from @douyinfe/semi-ui
      - Add empty prop to Table components with "搜索无结果" message
      - Support both light and dark theme illustrations
      - Apply internationalization support for empty state text
      
      Affected files:
      - web/src/components/table/MjLogsTable.js
      - web/src/components/table/LogsTable.js
      - web/src/components/table/ChannelsTable.js
      - web/src/components/table/RedemptionsTable.js
      - web/src/components/table/TaskLogsTable.js
      - web/src/components/table/TokensTable.js
      - web/src/components/table/UsersTable.js
      - web/src/components/table/ModelPricing.js
      
      This ensures consistent UX across all table components when no data
      matches the current search or filter criteria.
      Apple\Apple committed
    • feat(ui): add lucide-react icons to dashboard sections · 2fc3b392
      Add visual icons to improve user experience and section identification:
      
      - Import lucide-react icons: Wallet, Activity, Zap, Gauge, PieChart
      - Add Wallet icon to "Account Data" section
      - Add Activity icon to "Usage Statistics" section
      - Add Zap icon to "Resource Consumption" section
      - Add Gauge icon to "Performance Metrics" section
      - Add PieChart icon to "Model Data Analysis" card
      
      All icons are styled with 16px size and proper flex layout with consistent spacing. Icons inherit parent text color for seamless integration with existing gradient headers.
      Apple\Apple committed
    • 🎨 feat(ui): replace list icon with tags icon for channel tag aggregation · 2df42cea
      - Replace IconList with Tags icon from lucide-react for better semantic representation
      - Update renderTagType function to use Tags icon instead of list icon
      - Remove unused IconList import from semi-icons
      - Improve visual clarity for tag aggregation feature in channels table
      
      The Tags icon better represents the concept of multiple tags being aggregated
      together, providing more intuitive user experience in the channels management
      interface.
      Apple\Apple committed
    • feat: Add lucide-react icons to all table Tag components · 48599d70
      - Add semantic icons to ChannelsTable.js for channel status, response time, and quota display
      - Add status and quota icons to TokensTable.js for better visual distinction
      - Add status and quota icons to RedemptionsTable.js for redemption code management
      - Add role, status, and statistics icons to UsersTable.js for user management
      - Import appropriate lucide-react icons for each table component
      - Enhance UI consistency and user experience across all table interfaces
      
      Icons added include:
      - Status indicators: CheckCircle, XCircle, AlertCircle, HelpCircle
      - Performance metrics: Zap, Timer, Clock, AlertTriangle, TestTube
      - Financial data: Coins, DollarSign
      - User roles: User, Shield, Crown
      - Activity tracking: Activity, Users, UserPlus
      
      This improves visual clarity and makes table data more intuitive to understand.
      Apple\Apple committed
    • 🔄 fix(tables): ensure search buttons show loading state consistently across all tables · 26d8c3ae
      Fix inconsistent loading state behavior where search buttons in ChannelsTable,
      RedemptionsTable, and UsersTable didn't display loading animation when tables
      were loading data, unlike LogsTable which handled this correctly.
      
      Changes:
      - Fix ChannelsTable searchChannels function to properly manage loading state
        - Move setSearching(true) to function start and use try-finally pattern
        - Ensure loading state is set for both search and load operations
      - Update search button loading prop in ChannelsTable: loading={searching} → loading={loading || searching}
      - Update search button loading prop in RedemptionsTable: loading={searching} → loading={loading || searching}
      - Update search button loading prop in UsersTable: loading={searching} → loading={loading || searching}
      
      This ensures search buttons show loading state consistently when:
      - Table is loading data (initial load, pagination, operations)
      - Search operation is in progress
      
      All table components now provide unified UX behavior matching LogsTable,
      preventing duplicate clicks and clearly indicating system state to users.
      Apple\Apple committed
    • ️ refactor(components): migrate all table components to use Form API · a62a8441
      - Refactor LogsTable, MjLogsTable, TokensTable, UsersTable, and ChannelsTable to use Semi-UI Form components
      - Replace individual input state management with centralized Form API
      - Add form validation and consistent form handling across all tables
      - Implement auto-search functionality with proper state update timing
      - Add reset functionality to clear all search filters
      - Improve responsive layout design for better mobile experience
      - Remove duplicate form initial values and consolidate form logic
      - Remove column visibility feature from ChannelsTable to simplify UI
      - Standardize search form structure and styling across all table components
      - Fix state update timing issues in search functionality
      - Add proper form submission handling with loading states
      
      BREAKING CHANGE: Form state management has been completely rewritten.
      All table components now use Form API instead of individual useState hooks.
      Column visibility settings for ChannelsTable have been removed.
      Apple\Apple committed
    • refactor(LogsTable): enhance Form component with auto-search and state synchronization · d1fb8415
      - Refactor Form component to use Semi Design best practices
      - Remove duplicate initValues configuration for DatePicker
      - Add real-time value change monitoring with onValueChange
      - Implement auto-search functionality for log type selector changes
      - Fix state synchronization issues causing stale values in search requests
      - Optimize form layout with proper vertical layout configuration
      - Enhance user experience with placeholders, clear buttons, and search icons
      - Remove logType parameter passing to prevent async state update conflicts
      - Ensure all form controls use latest values from formApi instead of stale state
      - Add proper validation triggers and error handling configuration
      - Improve reset button logic with proper timing for form state updates
      
      The changes resolve the issue where users needed to select log type twice
      for the search request to use the correct value, and ensure all form
      interactions provide immediate and accurate results.
      Apple\Apple committed