Commit Graph

6 Commits

  • refacture: Mihomo API integration (#2900)
    * feat: add mihomo_api crate as a workspace member
    
    Added a new mihomo_api crate to handle interactions with the Mihomo API. This modular approach provides a dedicated interface for fetching and managing proxy data from Mihomo servers. The implementation includes functionality to refresh and retrieve both proxies and provider proxies with proper error handling and timeouts. Added this crate as a workspace member and included it as a dependency in the main project.
    
    * Refactors Mihomo API integration
    
    Simplifies proxy fetching by removing the MihomoManager structure.
    
    Updates the get_proxies and get_providers_proxies functions to directly use the mihomo_api module.
    
    Removes unused Mihomo API related files and modules for cleaner codebase.
    
    Enhances overall maintainability and performance.
  • feat(sysinfo): Add diagnostic information enhancements (#2880)
    Enhanced the PlatformSpecification struct with additional diagnostic information including:
    - Added Verge version information to diagnostic output
    - Added running mode information (Service/Sidecar/Not Running)
    - Improved Debug implementation to display all diagnostic fields
    - Implemented asynchronous detection of core running mode
    
    This change helps users provide more complete system information when reporting issues.
  • feat(proxy): add proxy commands and integrate with API
    Add new proxy.rs module with get_proxies and get_providers_proxies commands.
    Update mod.rs and lib.rs to re-export and register proxy commands.
    Update API.ts to use invoke for proxy commands.
    Minor formatting improvements in module/mihomo.rs.
  • feat: add Mihomo API modules and manager (#2869)
    • Introduce new API caller implementations for Mihomo in model and module layers.
    • Add configuration and API integration files under /src-tauri/src/config/api and /src-tauri/src/model/api.
    • Implement a singleton MihomoAPICaller with async API call support and integration tests.
    • Create a new MihomoManager module to refresh and fetch proxies from the API.
    • Update Cargo.lock and Cargo.toml with additional dependencies (async-trait, env_logger, mockito, tempfile, etc.) related to the Mihomo API support.