1. 26 Jul, 2025 10 commits
  2. 25 Jul, 2025 6 commits
    • refactor: Restructure model pricing components and improve UX consistency · 1327404e
      - **Fix SideSheet double-click issue**: Remove early return for null modelData to prevent rendering blockage during async state updates
      - **Component modularization**:
        - Split ModelDetailSideSheet into focused sub-components (ModelHeader, ModelBasicInfo, ModelEndpoints, ModelPricingTable)
        - Refactor PricingFilterModal with FilterModalContent and FilterModalFooter components
        - Remove unnecessary FilterSection wrapper for cleaner interface
      - **Improve visual consistency**:
        - Unify avatar/icon logic between ModelHeader and PricingCardView components
        - Standardize tag colors across all pricing components (violet/teal for billing types)
        - Apply consistent dashed border styling using Semi UI theme colors
      - **Enhance data accuracy**:
        - Display raw endpoint type names (e.g., "openai", "anthropic") instead of translated descriptions
        - Remove text alignment classes for better responsive layout
        - Add proper null checks to prevent runtime errors
      - **Code quality improvements**:
        - Reduce component complexity by 52-74% through modularization
        - Improve maintainability with single responsibility principle
        - Add comprehensive error handling for edge cases
      
      This refactoring improves component reusability, reduces bundle size, and provides a more consistent user experience across the model pricing interface.
      t0ng7u committed
    • 🔒 fix: Enforce admin-only column visibility in logs tables · 3ea058e0
      Ensure non-admin users cannot enable columns reserved for administrators
      across the following hooks:
      
      * web/src/hooks/usage-logs/useUsageLogsData.js
        - Force-hide CHANNEL, USERNAME and RETRY columns for non-admins.
      
      * web/src/hooks/mj-logs/useMjLogsData.js
        - Force-hide CHANNEL and SUBMIT_RESULT columns for non-admins.
      
      * web/src/hooks/task-logs/useTaskLogsData.js
        - Force-hide CHANNEL column for non-admins.
      
      The checks run when loading column preferences from localStorage, overriding
      any tampered settings to keep sensitive information hidden from
      unauthorized users.
      t0ng7u committed
    • 🌟 fix: standardize and improve Playground Chat VIP group functionality · 64260422
      Merge pull request #1424 from feitianbubu/pr/fix-playground-chat-vip-group
      同語 committed
  3. 24 Jul, 2025 9 commits
  4. 23 Jul, 2025 13 commits
  5. 22 Jul, 2025 2 commits
    • feat: Add skeleton loading animation to SelectableButtonGroup component (#1365) · 3ae8c741
      Add comprehensive loading state support with skeleton animations for the SelectableButtonGroup component, improving user experience during data loading.
      
      Key Changes:
      - Add loading prop to SelectableButtonGroup with minimum 500ms display duration
      - Implement skeleton buttons with proper Semi-UI Skeleton wrapper and active animation
      - Use fixed skeleton count (6 items) to prevent visual jumping during load transitions
      - Pass loading state through all pricing filter components hierarchy:
        - PricingSidebar and PricingFilterModal as container components
        - PricingDisplaySettings, PricingCategories, PricingGroups, PricingQuotaTypes as filter components
      
      Technical Details:
      - Reference CardTable.js implementation for consistent skeleton UI patterns
      - Add useEffect hook for 500ms minimum loading duration control
      - Support both checkbox and regular button skeleton modes
      - Maintain responsive layout compatibility (mobile/desktop)
      - Add proper JSDoc parameter documentation for loading prop
      
      Fixes:
      - Prevent skeleton count sudden changes that caused visual discontinuity
      - Ensure proper skeleton animation with Semi-UI active parameter
      - Maintain consistent loading experience across all filter components
      t0ng7u committed
    • feat: enhance SelectableButtonGroup with checkbox support and refactor pricing… · 6eaaee20
       feat: enhance SelectableButtonGroup with checkbox support and refactor pricing display settings (#1365)
      
      - Add withCheckbox prop to SelectableButtonGroup component for checkbox-prefixed buttons
      - Support both single value and array activeValue for multi-selection scenarios
      - Refactor PricingDisplaySettings to use consistent SelectableButtonGroup styling
      - Replace Switch components with checkbox-enabled SelectableButtonGroup
      - Replace Select dropdown with SelectableButtonGroup for currency selection
      - Maintain unified UI/UX across all pricing filter components
      - Add proper JSDoc documentation for new withCheckbox functionality
      
      This improves visual consistency and provides a more cohesive user experience
      in the model pricing filter interface.
      t0ng7u committed