mirror of
https://github.com/clash-verge-rev/clash-verge-rev.git
synced 2026-01-29 08:45:41 +08:00
refactor: update imports to use as _ for unused identifiers across multiple files
This commit is contained in:
@@ -258,3 +258,7 @@ large_types_passed_by_value = "deny"
|
|||||||
expl_impl_clone_on_copy = "deny"
|
expl_impl_clone_on_copy = "deny"
|
||||||
copy_iterator = "deny"
|
copy_iterator = "deny"
|
||||||
cloned_instead_of_copied = "deny"
|
cloned_instead_of_copied = "deny"
|
||||||
|
# self_only_used_in_recursion = "deny" // Since 1.92.0
|
||||||
|
unnecessary_self_imports = "deny"
|
||||||
|
unused_trait_names = "deny"
|
||||||
|
wildcard_imports = "deny"
|
||||||
|
|||||||
@@ -2,18 +2,18 @@ use super::CmdResult;
|
|||||||
use crate::core::sysopt::Sysopt;
|
use crate::core::sysopt::Sysopt;
|
||||||
use crate::utils::resolve::ui::{self, UiReadyStage};
|
use crate::utils::resolve::ui::{self, UiReadyStage};
|
||||||
use crate::{
|
use crate::{
|
||||||
cmd::StringifyErr,
|
cmd::StringifyErr as _,
|
||||||
feat, logging,
|
feat, logging,
|
||||||
utils::{
|
utils::{
|
||||||
dirs::{self, PathBufExec},
|
dirs::{self, PathBufExec as _},
|
||||||
logging::Type,
|
logging::Type,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
use smartstring::alias::String;
|
use smartstring::alias::String;
|
||||||
use std::path::Path;
|
use std::path::Path;
|
||||||
use tauri::{AppHandle, Manager};
|
use tauri::{AppHandle, Manager as _};
|
||||||
use tokio::fs;
|
use tokio::fs;
|
||||||
use tokio::io::AsyncWriteExt;
|
use tokio::io::AsyncWriteExt as _;
|
||||||
|
|
||||||
/// 打开应用程序所在目录
|
/// 打开应用程序所在目录
|
||||||
#[tauri::command]
|
#[tauri::command]
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
use super::CmdResult;
|
use super::CmdResult;
|
||||||
use crate::{cmd::StringifyErr, feat};
|
use crate::{cmd::StringifyErr as _, feat};
|
||||||
use feat::LocalBackupFile;
|
use feat::LocalBackupFile;
|
||||||
use smartstring::alias::String;
|
use smartstring::alias::String;
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
use super::CmdResult;
|
use super::CmdResult;
|
||||||
use crate::utils::dirs;
|
use crate::utils::dirs;
|
||||||
use crate::{
|
use crate::{
|
||||||
cmd::StringifyErr,
|
cmd::StringifyErr as _,
|
||||||
config::{ClashInfo, Config},
|
config::{ClashInfo, Config},
|
||||||
constants,
|
constants,
|
||||||
core::{CoreManager, handle, validate::CoreConfigValidator},
|
core::{CoreManager, handle, validate::CoreConfigValidator},
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
use super::CmdResult;
|
use super::CmdResult;
|
||||||
use crate::cmd::StringifyErr;
|
use crate::cmd::StringifyErr as _;
|
||||||
use crate::core::{EventDrivenProxyManager, async_proxy_query::AsyncProxyQuery};
|
use crate::core::{EventDrivenProxyManager, async_proxy_query::AsyncProxyQuery};
|
||||||
use crate::process::AsyncHandler;
|
use crate::process::AsyncHandler;
|
||||||
use crate::{logging, utils::logging::Type};
|
use crate::{logging, utils::logging::Type};
|
||||||
@@ -93,7 +93,7 @@ pub fn get_network_interfaces() -> Vec<String> {
|
|||||||
/// 获取网络接口详细信息
|
/// 获取网络接口详细信息
|
||||||
#[tauri::command]
|
#[tauri::command]
|
||||||
pub fn get_network_interfaces_info() -> CmdResult<Vec<NetworkInterface>> {
|
pub fn get_network_interfaces_info() -> CmdResult<Vec<NetworkInterface>> {
|
||||||
use network_interface::{NetworkInterface, NetworkInterfaceConfig};
|
use network_interface::{NetworkInterface, NetworkInterfaceConfig as _};
|
||||||
|
|
||||||
let names = get_network_interfaces();
|
let names = get_network_interfaces();
|
||||||
let interfaces = NetworkInterface::show().stringify_err()?;
|
let interfaces = NetworkInterface::show().stringify_err()?;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
use super::CmdResult;
|
use super::CmdResult;
|
||||||
use super::StringifyErr;
|
use super::StringifyErr as _;
|
||||||
use crate::{
|
use crate::{
|
||||||
config::{
|
config::{
|
||||||
Config, IProfiles, PrfItem, PrfOption,
|
Config, IProfiles, PrfItem, PrfOption,
|
||||||
|
|||||||
@@ -1,6 +1,11 @@
|
|||||||
use super::CmdResult;
|
use super::CmdResult;
|
||||||
use crate::{cmd::StringifyErr, config::*, core::CoreManager, log_err};
|
use crate::{
|
||||||
use anyhow::{Context, anyhow};
|
cmd::StringifyErr as _,
|
||||||
|
config::{Config, ConfigType},
|
||||||
|
core::CoreManager,
|
||||||
|
log_err,
|
||||||
|
};
|
||||||
|
use anyhow::{Context as _, anyhow};
|
||||||
use serde_yaml_ng::Mapping;
|
use serde_yaml_ng::Mapping;
|
||||||
use smartstring::alias::String;
|
use smartstring::alias::String;
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
use super::CmdResult;
|
use super::CmdResult;
|
||||||
use crate::{
|
use crate::{
|
||||||
cmd::StringifyErr,
|
cmd::StringifyErr as _,
|
||||||
config::*,
|
config::{Config, PrfItem},
|
||||||
core::{validate::CoreConfigValidator, *},
|
core::{CoreManager, handle, validate::CoreConfigValidator},
|
||||||
logging,
|
logging,
|
||||||
utils::{dirs, logging::Type},
|
utils::{dirs, logging::Type},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
use super::{CmdResult, StringifyErr};
|
use super::{CmdResult, StringifyErr as _};
|
||||||
use crate::core::service::{self, SERVICE_MANAGER, ServiceStatus};
|
use crate::core::service::{self, SERVICE_MANAGER, ServiceStatus};
|
||||||
use smartstring::SmartString;
|
use smartstring::SmartString;
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ use crate::{
|
|||||||
#[cfg(target_os = "windows")]
|
#[cfg(target_os = "windows")]
|
||||||
use deelevate::{PrivilegeLevel, Token};
|
use deelevate::{PrivilegeLevel, Token};
|
||||||
use once_cell::sync::Lazy;
|
use once_cell::sync::Lazy;
|
||||||
use tauri_plugin_clipboard_manager::ClipboardExt;
|
use tauri_plugin_clipboard_manager::ClipboardExt as _;
|
||||||
use tokio::time::Instant;
|
use tokio::time::Instant;
|
||||||
|
|
||||||
// 存储应用启动时间的全局变量
|
// 存储应用启动时间的全局变量
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
use super::CmdResult;
|
use super::CmdResult;
|
||||||
use crate::{
|
use crate::{
|
||||||
core::{validate::CoreConfigValidator, *},
|
core::{handle, validate::CoreConfigValidator},
|
||||||
logging,
|
logging,
|
||||||
utils::logging::Type,
|
utils::logging::Type,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
use super::CmdResult;
|
use super::CmdResult;
|
||||||
use crate::{cmd::StringifyErr, config::IVerge, feat, utils::draft::SharedBox};
|
use crate::{cmd::StringifyErr as _, config::IVerge, feat, utils::draft::SharedBox};
|
||||||
|
|
||||||
/// 获取Verge配置
|
/// 获取Verge配置
|
||||||
#[tauri::command]
|
#[tauri::command]
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
use super::CmdResult;
|
use super::CmdResult;
|
||||||
use crate::{
|
use crate::{
|
||||||
cmd::StringifyErr,
|
cmd::StringifyErr as _,
|
||||||
config::{Config, IVerge},
|
config::{Config, IVerge},
|
||||||
core, feat,
|
core, feat,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ use serde::{Deserialize, Serialize};
|
|||||||
use serde_yaml_ng::{Mapping, Value};
|
use serde_yaml_ng::{Mapping, Value};
|
||||||
use std::{
|
use std::{
|
||||||
net::{IpAddr, Ipv4Addr, SocketAddr},
|
net::{IpAddr, Ipv4Addr, SocketAddr},
|
||||||
str::FromStr,
|
str::FromStr as _,
|
||||||
};
|
};
|
||||||
|
|
||||||
#[derive(Default, Debug, Clone)]
|
#[derive(Default, Debug, Clone)]
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
use crate::utils::dirs::get_encryption_key;
|
use crate::utils::dirs::get_encryption_key;
|
||||||
use aes_gcm::{
|
use aes_gcm::{
|
||||||
Aes256Gcm, Key,
|
Aes256Gcm, Key,
|
||||||
aead::{Aead, KeyInit},
|
aead::{Aead as _, KeyInit as _},
|
||||||
};
|
};
|
||||||
use base64::{Engine, engine::general_purpose::STANDARD};
|
use base64::{Engine as _, engine::general_purpose::STANDARD};
|
||||||
use serde::{Deserialize, Deserializer, Serialize, Serializer};
|
use serde::{Deserialize, Deserializer, Serialize, Serializer};
|
||||||
use std::cell::Cell;
|
use std::cell::Cell;
|
||||||
use std::future::Future;
|
use std::future::Future;
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ use crate::{
|
|||||||
tmpl,
|
tmpl,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
use anyhow::{Context, Result, bail};
|
use anyhow::{Context as _, Result, bail};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
use serde_yaml_ng::Mapping;
|
use serde_yaml_ng::Mapping;
|
||||||
use smartstring::alias::String;
|
use smartstring::alias::String;
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
use super::{PrfOption, prfitem::PrfItem};
|
use super::{PrfOption, prfitem::PrfItem};
|
||||||
use crate::utils::{
|
use crate::utils::{
|
||||||
dirs::{self, PathBufExec},
|
dirs::{self, PathBufExec as _},
|
||||||
help,
|
help,
|
||||||
};
|
};
|
||||||
use crate::{logging, utils::logging::Type};
|
use crate::{logging, utils::logging::Type};
|
||||||
use anyhow::{Context, Result, bail};
|
use anyhow::{Context as _, Result, bail};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
use serde_yaml_ng::Mapping;
|
use serde_yaml_ng::Mapping;
|
||||||
use smartstring::alias::String;
|
use smartstring::alias::String;
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ use smartstring::alias::String;
|
|||||||
use std::{
|
use std::{
|
||||||
collections::HashMap,
|
collections::HashMap,
|
||||||
env::{consts::OS, temp_dir},
|
env::{consts::OS, temp_dir},
|
||||||
io::Write,
|
io::Write as _,
|
||||||
path::PathBuf,
|
path::PathBuf,
|
||||||
sync::Arc,
|
sync::Arc,
|
||||||
time::Duration,
|
time::Duration,
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ use std::sync::Arc;
|
|||||||
use tokio::sync::RwLock;
|
use tokio::sync::RwLock;
|
||||||
use tokio::sync::{mpsc, oneshot};
|
use tokio::sync::{mpsc, oneshot};
|
||||||
use tokio::time::{Duration, sleep, timeout};
|
use tokio::time::{Duration, sleep, timeout};
|
||||||
use tokio_stream::{StreamExt, wrappers::UnboundedReceiverStream};
|
use tokio_stream::{StreamExt as _, wrappers::UnboundedReceiverStream};
|
||||||
|
|
||||||
use crate::config::{Config, IVerge};
|
use crate::config::{Config, IVerge};
|
||||||
use crate::core::{async_proxy_query::AsyncProxyQuery, handle};
|
use crate::core::{async_proxy_query::AsyncProxyQuery, handle};
|
||||||
|
|||||||
@@ -8,8 +8,8 @@ use std::{
|
|||||||
},
|
},
|
||||||
thread,
|
thread,
|
||||||
};
|
};
|
||||||
use tauri::{AppHandle, Manager, WebviewWindow};
|
use tauri::{AppHandle, Manager as _, WebviewWindow};
|
||||||
use tauri_plugin_mihomo::{Mihomo, MihomoExt};
|
use tauri_plugin_mihomo::{Mihomo, MihomoExt as _};
|
||||||
use tokio::sync::RwLockReadGuard;
|
use tokio::sync::RwLockReadGuard;
|
||||||
|
|
||||||
use super::notification::{ErrorMessage, FrontendEvent, NotificationSystem};
|
use super::notification::{ErrorMessage, FrontendEvent, NotificationSystem};
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ use anyhow::{Result, bail};
|
|||||||
use arc_swap::ArcSwap;
|
use arc_swap::ArcSwap;
|
||||||
use smartstring::alias::String;
|
use smartstring::alias::String;
|
||||||
use std::{collections::HashMap, fmt, str::FromStr, sync::Arc};
|
use std::{collections::HashMap, fmt, str::FromStr, sync::Arc};
|
||||||
use tauri_plugin_global_shortcut::{Code, GlobalShortcutExt, ShortcutState};
|
use tauri_plugin_global_shortcut::{Code, GlobalShortcutExt as _, ShortcutState};
|
||||||
|
|
||||||
/// Enum representing all available hotkey functions
|
/// Enum representing all available hotkey functions
|
||||||
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
|
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
use super::CoreManager;
|
use super::CoreManager;
|
||||||
use crate::{
|
use crate::{
|
||||||
config::*,
|
config::{Config, ConfigType, IRuntime},
|
||||||
constants::timing,
|
constants::timing,
|
||||||
core::{handle, validate::CoreConfigValidator},
|
core::{handle, validate::CoreConfigValidator},
|
||||||
logging,
|
logging,
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ use compact_str::CompactString;
|
|||||||
use flexi_logger::DeferredNow;
|
use flexi_logger::DeferredNow;
|
||||||
use log::Level;
|
use log::Level;
|
||||||
use scopeguard::defer;
|
use scopeguard::defer;
|
||||||
use tauri_plugin_shell::ShellExt;
|
use tauri_plugin_shell::ShellExt as _;
|
||||||
|
|
||||||
impl CoreManager {
|
impl CoreManager {
|
||||||
pub async fn get_clash_logs(&self) -> Result<Vec<CompactString>> {
|
pub async fn get_clash_logs(&self) -> Result<Vec<CompactString>> {
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ use std::{
|
|||||||
thread,
|
thread,
|
||||||
time::{Duration, Instant},
|
time::{Duration, Instant},
|
||||||
};
|
};
|
||||||
use tauri::{Emitter, WebviewWindow};
|
use tauri::{Emitter as _, WebviewWindow};
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone)]
|
||||||
pub enum FrontendEvent {
|
pub enum FrontendEvent {
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ use crate::{
|
|||||||
logging, logging_error,
|
logging, logging_error,
|
||||||
utils::{dirs, init::service_writer_config, logging::Type},
|
utils::{dirs, init::service_writer_config, logging::Type},
|
||||||
};
|
};
|
||||||
use anyhow::{Context, Result, bail};
|
use anyhow::{Context as _, Result, bail};
|
||||||
use clash_verge_service_ipc::CoreConfig;
|
use clash_verge_service_ipc::CoreConfig;
|
||||||
use compact_str::CompactString;
|
use compact_str::CompactString;
|
||||||
use once_cell::sync::Lazy;
|
use once_cell::sync::Lazy;
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ use smartstring::alias::String;
|
|||||||
use std::sync::atomic::{AtomicBool, Ordering};
|
use std::sync::atomic::{AtomicBool, Ordering};
|
||||||
#[cfg(not(target_os = "windows"))]
|
#[cfg(not(target_os = "windows"))]
|
||||||
use sysproxy::{Autoproxy, Sysproxy};
|
use sysproxy::{Autoproxy, Sysproxy};
|
||||||
use tauri_plugin_autostart::ManagerExt;
|
use tauri_plugin_autostart::ManagerExt as _;
|
||||||
|
|
||||||
pub struct Sysopt {
|
pub struct Sysopt {
|
||||||
initialed: AtomicBool,
|
initialed: AtomicBool,
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ use crate::{
|
|||||||
config::Config, core::sysopt::Sysopt, feat, logging, logging_error, singleton,
|
config::Config, core::sysopt::Sysopt, feat, logging, logging_error, singleton,
|
||||||
utils::logging::Type,
|
utils::logging::Type,
|
||||||
};
|
};
|
||||||
use anyhow::{Context, Result};
|
use anyhow::{Context as _, Result};
|
||||||
use delay_timer::prelude::{DelayTimer, DelayTimerBuilder, TaskBuilder};
|
use delay_timer::prelude::{DelayTimer, DelayTimerBuilder, TaskBuilder};
|
||||||
use parking_lot::RwLock;
|
use parking_lot::RwLock;
|
||||||
use smartstring::alias::String;
|
use smartstring::alias::String;
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ use anyhow::Result;
|
|||||||
use scopeguard::defer;
|
use scopeguard::defer;
|
||||||
use smartstring::alias::String;
|
use smartstring::alias::String;
|
||||||
use std::sync::atomic::{AtomicBool, Ordering};
|
use std::sync::atomic::{AtomicBool, Ordering};
|
||||||
use tauri_plugin_shell::ShellExt;
|
use tauri_plugin_shell::ShellExt as _;
|
||||||
use tokio::fs;
|
use tokio::fs;
|
||||||
|
|
||||||
use crate::config::{Config, ConfigType};
|
use crate::config::{Config, ConfigType};
|
||||||
|
|||||||
@@ -5,7 +5,14 @@ mod script;
|
|||||||
pub mod seq;
|
pub mod seq;
|
||||||
mod tun;
|
mod tun;
|
||||||
|
|
||||||
use self::{chain::*, field::*, merge::*, script::*, seq::*, tun::*};
|
use self::{
|
||||||
|
chain::{AsyncChainItemFrom as _, ChainItem, ChainType},
|
||||||
|
field::{use_keys, use_lowercase, use_sort},
|
||||||
|
merge::use_merge,
|
||||||
|
script::use_script,
|
||||||
|
seq::{SeqMap, use_seq},
|
||||||
|
tun::use_tun,
|
||||||
|
};
|
||||||
use crate::constants;
|
use crate::constants;
|
||||||
use crate::utils::dirs;
|
use crate::utils::dirs;
|
||||||
use crate::{config::Config, utils::tmpl};
|
use crate::{config::Config, utils::tmpl};
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ use crate::{
|
|||||||
logging, logging_error,
|
logging, logging_error,
|
||||||
process::AsyncHandler,
|
process::AsyncHandler,
|
||||||
utils::{
|
utils::{
|
||||||
dirs::{PathBufExec, app_home_dir, local_backup_dir},
|
dirs::{PathBufExec as _, app_home_dir, local_backup_dir},
|
||||||
logging::Type,
|
logging::Type,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ use crate::{
|
|||||||
};
|
};
|
||||||
use anyhow::{Result, bail};
|
use anyhow::{Result, bail};
|
||||||
use smartstring::alias::String;
|
use smartstring::alias::String;
|
||||||
use tauri::Emitter;
|
use tauri::Emitter as _;
|
||||||
|
|
||||||
/// Toggle proxy profile
|
/// Toggle proxy profile
|
||||||
pub async fn toggle_proxy_profile(profile_index: String) {
|
pub async fn toggle_proxy_profile(profile_index: String) {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ use crate::{
|
|||||||
utils::logging::Type,
|
utils::logging::Type,
|
||||||
};
|
};
|
||||||
use std::env;
|
use std::env;
|
||||||
use tauri_plugin_clipboard_manager::ClipboardExt;
|
use tauri_plugin_clipboard_manager::ClipboardExt as _;
|
||||||
|
|
||||||
/// Toggle system proxy on/off
|
/// Toggle system proxy on/off
|
||||||
pub async fn toggle_system_proxy() {
|
pub async fn toggle_system_proxy() {
|
||||||
|
|||||||
@@ -26,10 +26,10 @@ use anyhow::Result;
|
|||||||
use config::Config;
|
use config::Config;
|
||||||
use once_cell::sync::OnceCell;
|
use once_cell::sync::OnceCell;
|
||||||
use rust_i18n::i18n;
|
use rust_i18n::i18n;
|
||||||
use tauri::{AppHandle, Manager};
|
use tauri::{AppHandle, Manager as _};
|
||||||
#[cfg(target_os = "macos")]
|
#[cfg(target_os = "macos")]
|
||||||
use tauri_plugin_autostart::MacosLauncher;
|
use tauri_plugin_autostart::MacosLauncher;
|
||||||
use tauri_plugin_deep_link::DeepLinkExt;
|
use tauri_plugin_deep_link::DeepLinkExt as _;
|
||||||
use utils::logging::Type;
|
use utils::logging::Type;
|
||||||
|
|
||||||
i18n!("locales", fallback = "zh");
|
i18n!("locales", fallback = "zh");
|
||||||
|
|||||||
@@ -10,10 +10,10 @@ use crate::{
|
|||||||
use crate::logging_error;
|
use crate::logging_error;
|
||||||
|
|
||||||
use crate::utils::window_manager::WindowManager;
|
use crate::utils::window_manager::WindowManager;
|
||||||
use anyhow::{Context, Result};
|
use anyhow::{Context as _, Result};
|
||||||
use delay_timer::prelude::TaskBuilder;
|
use delay_timer::prelude::TaskBuilder;
|
||||||
use std::sync::atomic::{AtomicU8, AtomicU32, Ordering};
|
use std::sync::atomic::{AtomicU8, AtomicU32, Ordering};
|
||||||
use tauri::Listener;
|
use tauri::Listener as _;
|
||||||
|
|
||||||
const LIGHT_WEIGHT_TASK_UID: &str = "light_weight_task";
|
const LIGHT_WEIGHT_TASK_UID: &str = "light_weight_task";
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ use once_cell::sync::OnceCell;
|
|||||||
#[cfg(unix)]
|
#[cfg(unix)]
|
||||||
use std::iter;
|
use std::iter;
|
||||||
use std::{fs, path::PathBuf};
|
use std::{fs, path::PathBuf};
|
||||||
use tauri::Manager;
|
use tauri::Manager as _;
|
||||||
|
|
||||||
#[cfg(not(feature = "verge-dev"))]
|
#[cfg(not(feature = "verge-dev"))]
|
||||||
pub static APP_ID: &str = "io.github.clash-verge-rev.clash-verge-rev";
|
pub static APP_ID: &str = "io.github.clash-verge-rev.clash-verge-rev";
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
use crate::{config::with_encryption, enhance::seq::SeqMap, logging, utils::logging::Type};
|
use crate::{config::with_encryption, enhance::seq::SeqMap, logging, utils::logging::Type};
|
||||||
use anyhow::{Context, Result, anyhow, bail};
|
use anyhow::{Context as _, Result, anyhow, bail};
|
||||||
use nanoid::nanoid;
|
use nanoid::nanoid;
|
||||||
use serde::{Serialize, de::DeserializeOwned};
|
use serde::{Serialize, de::DeserializeOwned};
|
||||||
use serde_yaml_ng::Mapping;
|
use serde_yaml_ng::Mapping;
|
||||||
|
|||||||
@@ -2,26 +2,26 @@
|
|||||||
#[cfg(not(feature = "tauri-dev"))]
|
#[cfg(not(feature = "tauri-dev"))]
|
||||||
use crate::utils::logging::NoModuleFilter;
|
use crate::utils::logging::NoModuleFilter;
|
||||||
use crate::{
|
use crate::{
|
||||||
config::*,
|
config::{Config, IClashTemp, IProfiles, IVerge},
|
||||||
constants,
|
constants,
|
||||||
core::handle,
|
core::handle,
|
||||||
logging,
|
logging,
|
||||||
process::AsyncHandler,
|
process::AsyncHandler,
|
||||||
utils::{
|
utils::{
|
||||||
dirs::{self, PathBufExec, service_log_dir, sidecar_log_dir},
|
dirs::{self, PathBufExec as _, service_log_dir, sidecar_log_dir},
|
||||||
help,
|
help,
|
||||||
logging::Type,
|
logging::Type,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
use anyhow::Result;
|
use anyhow::Result;
|
||||||
use chrono::{Local, TimeZone};
|
use chrono::{Local, TimeZone as _};
|
||||||
use clash_verge_service_ipc::WriterConfig;
|
use clash_verge_service_ipc::WriterConfig;
|
||||||
use flexi_logger::writers::FileLogWriter;
|
use flexi_logger::writers::FileLogWriter;
|
||||||
use flexi_logger::{Cleanup, Criterion, FileSpec};
|
use flexi_logger::{Cleanup, Criterion, FileSpec};
|
||||||
#[cfg(not(feature = "tauri-dev"))]
|
#[cfg(not(feature = "tauri-dev"))]
|
||||||
use flexi_logger::{Duplicate, LogSpecBuilder, Logger};
|
use flexi_logger::{Duplicate, LogSpecBuilder, Logger};
|
||||||
use std::{path::PathBuf, str::FromStr};
|
use std::{path::PathBuf, str::FromStr as _};
|
||||||
use tauri_plugin_shell::ShellExt;
|
use tauri_plugin_shell::ShellExt as _;
|
||||||
use tokio::fs;
|
use tokio::fs;
|
||||||
use tokio::fs::DirEntry;
|
use tokio::fs::DirEntry;
|
||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ use flexi_logger::DeferredNow;
|
|||||||
#[cfg(not(feature = "tauri-dev"))]
|
#[cfg(not(feature = "tauri-dev"))]
|
||||||
use flexi_logger::filter::LogLineFilter;
|
use flexi_logger::filter::LogLineFilter;
|
||||||
use flexi_logger::writers::FileLogWriter;
|
use flexi_logger::writers::FileLogWriter;
|
||||||
use flexi_logger::writers::LogWriter;
|
use flexi_logger::writers::LogWriter as _;
|
||||||
use log::Level;
|
use log::Level;
|
||||||
use log::Record;
|
use log::Record;
|
||||||
use std::{fmt, sync::Arc};
|
use std::{fmt, sync::Arc};
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
use crate::{core::handle, utils::i18n};
|
use crate::{core::handle, utils::i18n};
|
||||||
use tauri_plugin_notification::NotificationExt;
|
use tauri_plugin_notification::NotificationExt as _;
|
||||||
|
|
||||||
pub enum NotificationEvent<'a> {
|
pub enum NotificationEvent<'a> {
|
||||||
DashboardToggled,
|
DashboardToggled,
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ use crate::{logging, utils::logging::Type};
|
|||||||
pub async fn set_public_dns(dns_server: String) {
|
pub async fn set_public_dns(dns_server: String) {
|
||||||
use crate::utils::logging::Type;
|
use crate::utils::logging::Type;
|
||||||
use crate::{core::handle, logging, utils::dirs};
|
use crate::{core::handle, logging, utils::dirs};
|
||||||
use tauri_plugin_shell::ShellExt;
|
use tauri_plugin_shell::ShellExt as _;
|
||||||
let app_handle = handle::Handle::app_handle();
|
let app_handle = handle::Handle::app_handle();
|
||||||
|
|
||||||
logging!(info, Type::Config, "try to set system dns");
|
logging!(info, Type::Config, "try to set system dns");
|
||||||
@@ -50,7 +50,7 @@ pub async fn set_public_dns(dns_server: String) {
|
|||||||
#[cfg(target_os = "macos")]
|
#[cfg(target_os = "macos")]
|
||||||
pub async fn restore_public_dns() {
|
pub async fn restore_public_dns() {
|
||||||
use crate::{core::handle, utils::dirs};
|
use crate::{core::handle, utils::dirs};
|
||||||
use tauri_plugin_shell::ShellExt;
|
use tauri_plugin_shell::ShellExt as _;
|
||||||
let app_handle = handle::Handle::app_handle();
|
let app_handle = handle::Handle::app_handle();
|
||||||
logging!(info, Type::Config, "try to unset system dns");
|
logging!(info, Type::Config, "try to unset system dns");
|
||||||
let resource_dir = match dirs::app_resources_dir() {
|
let resource_dir = match dirs::app_resources_dir() {
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ use reqwest::ClientBuilder;
|
|||||||
use smartstring::alias::String;
|
use smartstring::alias::String;
|
||||||
use std::time::Duration;
|
use std::time::Duration;
|
||||||
use tokio::sync::oneshot;
|
use tokio::sync::oneshot;
|
||||||
use warp::Filter;
|
use warp::Filter as _;
|
||||||
|
|
||||||
#[derive(serde::Deserialize, Debug)]
|
#[derive(serde::Deserialize, Debug)]
|
||||||
struct QueryParam {
|
struct QueryParam {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ use crate::{
|
|||||||
};
|
};
|
||||||
use std::future::Future;
|
use std::future::Future;
|
||||||
use std::pin::Pin;
|
use std::pin::Pin;
|
||||||
use tauri::{Manager, WebviewWindow, Wry};
|
use tauri::{Manager as _, WebviewWindow, Wry};
|
||||||
|
|
||||||
use once_cell::sync::OnceCell;
|
use once_cell::sync::OnceCell;
|
||||||
use parking_lot::Mutex;
|
use parking_lot::Mutex;
|
||||||
|
|||||||
Reference in New Issue
Block a user