Refactor imports and improve code organization across multiple components and hooks
- Consolidated and reordered imports in various files for better readability and maintainability. - Removed unused imports and ensured consistent import styles. - Enhanced the structure of components by grouping related imports together. - Updated the layout and organization of hooks to streamline functionality. - Improved the overall code quality by following best practices in import management.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
import { useState } from "react";
|
||||
import { StorageOutlined, RefreshRounded } from "@mui/icons-material";
|
||||
import {
|
||||
Button,
|
||||
Box,
|
||||
@@ -16,13 +16,14 @@ import {
|
||||
alpha,
|
||||
styled,
|
||||
} from "@mui/material";
|
||||
import { useTranslation } from "react-i18next";
|
||||
import { useLockFn } from "ahooks";
|
||||
import { proxyProviderUpdate } from "@/services/cmds";
|
||||
import { useAppData } from "@/providers/app-data-provider";
|
||||
import { showNotice } from "@/services/noticeService";
|
||||
import { StorageOutlined, RefreshRounded } from "@mui/icons-material";
|
||||
import dayjs from "dayjs";
|
||||
import { useState } from "react";
|
||||
import { useTranslation } from "react-i18next";
|
||||
|
||||
import { useAppData } from "@/providers/app-data-provider";
|
||||
import { proxyProviderUpdate } from "@/services/cmds";
|
||||
import { showNotice } from "@/services/noticeService";
|
||||
import parseTraffic from "@/utils/parse-traffic";
|
||||
|
||||
// 定义代理提供者类型
|
||||
|
||||
@@ -1,23 +1,3 @@
|
||||
import { useState, useCallback, useEffect, useRef } from "react";
|
||||
import {
|
||||
Box,
|
||||
Paper,
|
||||
Typography,
|
||||
IconButton,
|
||||
Chip,
|
||||
Alert,
|
||||
useTheme,
|
||||
Button,
|
||||
} from "@mui/material";
|
||||
import { useTranslation } from "react-i18next";
|
||||
import { useAppData } from "@/providers/app-data-provider";
|
||||
import {
|
||||
updateProxyChainConfigInRuntime,
|
||||
updateProxyAndSync,
|
||||
getProxies,
|
||||
closeAllConnections,
|
||||
} from "@/services/cmds";
|
||||
import useSWR from "swr";
|
||||
import {
|
||||
DndContext,
|
||||
closestCenter,
|
||||
@@ -38,11 +18,30 @@ import { CSS } from "@dnd-kit/utilities";
|
||||
import {
|
||||
Delete as DeleteIcon,
|
||||
DragIndicator,
|
||||
ClearAll,
|
||||
Save,
|
||||
Link,
|
||||
LinkOff,
|
||||
} from "@mui/icons-material";
|
||||
import {
|
||||
Box,
|
||||
Paper,
|
||||
Typography,
|
||||
IconButton,
|
||||
Chip,
|
||||
Alert,
|
||||
useTheme,
|
||||
Button,
|
||||
} from "@mui/material";
|
||||
import { useState, useCallback, useEffect, useRef } from "react";
|
||||
import { useTranslation } from "react-i18next";
|
||||
import useSWR from "swr";
|
||||
|
||||
import { useAppData } from "@/providers/app-data-provider";
|
||||
import {
|
||||
updateProxyChainConfigInRuntime,
|
||||
updateProxyAndSync,
|
||||
getProxies,
|
||||
closeAllConnections,
|
||||
} from "@/services/cmds";
|
||||
|
||||
interface ProxyChainItem {
|
||||
id: string;
|
||||
|
||||
@@ -1,19 +1,20 @@
|
||||
import { useRef, useState, useEffect, useCallback, useMemo } from "react";
|
||||
import { Box, Snackbar, Alert } from "@mui/material";
|
||||
import { useLockFn } from "ahooks";
|
||||
import { Virtuoso, type VirtuosoHandle } from "react-virtuoso";
|
||||
import { providerHealthCheck, getGroupProxyDelays } from "@/services/cmds";
|
||||
import { useVerge } from "@/hooks/use-verge";
|
||||
import { useProxySelection } from "@/hooks/use-proxy-selection";
|
||||
import { BaseEmpty } from "../base";
|
||||
import { useRenderList } from "./use-render-list";
|
||||
import { ProxyRender } from "./proxy-render";
|
||||
import delayManager from "@/services/delay";
|
||||
import { useRef, useState, useEffect, useCallback } from "react";
|
||||
import { useTranslation } from "react-i18next";
|
||||
import { Virtuoso, type VirtuosoHandle } from "react-virtuoso";
|
||||
|
||||
import { BaseEmpty } from "../base";
|
||||
import { ScrollTopButton } from "../layout/scroll-top-button";
|
||||
import { Box, styled, Snackbar, Alert } from "@mui/material";
|
||||
import { memo } from "react";
|
||||
import { createPortal } from "react-dom";
|
||||
|
||||
import { ProxyChain } from "./proxy-chain";
|
||||
import { ProxyRender } from "./proxy-render";
|
||||
import { useRenderList } from "./use-render-list";
|
||||
|
||||
import { useProxySelection } from "@/hooks/use-proxy-selection";
|
||||
import { useVerge } from "@/hooks/use-verge";
|
||||
import { providerHealthCheck, getGroupProxyDelays } from "@/services/cmds";
|
||||
import delayManager from "@/services/delay";
|
||||
|
||||
interface Props {
|
||||
mode: string;
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
import { useEffect, useState } from "react";
|
||||
import { useTranslation } from "react-i18next";
|
||||
import { Box, IconButton, TextField, SxProps } from "@mui/material";
|
||||
import {
|
||||
AccessTimeRounded,
|
||||
MyLocationRounded,
|
||||
@@ -14,9 +11,14 @@ import {
|
||||
SortByAlphaRounded,
|
||||
SortRounded,
|
||||
} from "@mui/icons-material";
|
||||
import { useVerge } from "@/hooks/use-verge";
|
||||
import type { HeadState } from "./use-head-state";
|
||||
import { Box, IconButton, TextField, SxProps } from "@mui/material";
|
||||
import { useEffect, useState } from "react";
|
||||
import { useTranslation } from "react-i18next";
|
||||
|
||||
import type { ProxySortType } from "./use-filter-sort";
|
||||
import type { HeadState } from "./use-head-state";
|
||||
|
||||
import { useVerge } from "@/hooks/use-verge";
|
||||
import delayManager from "@/services/delay";
|
||||
|
||||
interface Props {
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
import { useEffect, useState } from "react";
|
||||
import { useLockFn } from "ahooks";
|
||||
import { CheckCircleOutlineRounded } from "@mui/icons-material";
|
||||
import { alpha, Box, ListItemButton, styled, Typography } from "@mui/material";
|
||||
import { BaseLoading } from "@/components/base";
|
||||
import delayManager from "@/services/delay";
|
||||
import { useVerge } from "@/hooks/use-verge";
|
||||
import { useLockFn } from "ahooks";
|
||||
import { useEffect, useState } from "react";
|
||||
import { useTranslation } from "react-i18next";
|
||||
|
||||
import { BaseLoading } from "@/components/base";
|
||||
import { useVerge } from "@/hooks/use-verge";
|
||||
import delayManager from "@/services/delay";
|
||||
|
||||
interface Props {
|
||||
group: IProxyGroupItem;
|
||||
proxy: IProxyItem;
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
import { useEffect, useState } from "react";
|
||||
import { useLockFn } from "ahooks";
|
||||
import { CheckCircleOutlineRounded } from "@mui/icons-material";
|
||||
import {
|
||||
alpha,
|
||||
@@ -12,9 +10,12 @@ import {
|
||||
SxProps,
|
||||
Theme,
|
||||
} from "@mui/material";
|
||||
import { useLockFn } from "ahooks";
|
||||
import { useEffect, useState } from "react";
|
||||
|
||||
import { BaseLoading } from "@/components/base";
|
||||
import delayManager from "@/services/delay";
|
||||
import { useVerge } from "@/hooks/use-verge";
|
||||
import delayManager from "@/services/delay";
|
||||
|
||||
interface Props {
|
||||
group: IProxyGroupItem;
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
import {
|
||||
ExpandLessRounded,
|
||||
ExpandMoreRounded,
|
||||
InboxRounded,
|
||||
} from "@mui/icons-material";
|
||||
import {
|
||||
alpha,
|
||||
Box,
|
||||
@@ -8,22 +13,19 @@ import {
|
||||
Chip,
|
||||
Tooltip,
|
||||
} from "@mui/material";
|
||||
import {
|
||||
ExpandLessRounded,
|
||||
ExpandMoreRounded,
|
||||
InboxRounded,
|
||||
} from "@mui/icons-material";
|
||||
import { HeadState } from "./use-head-state";
|
||||
import { convertFileSrc } from "@tauri-apps/api/core";
|
||||
import { useEffect, useMemo, useState } from "react";
|
||||
import { useTranslation } from "react-i18next";
|
||||
|
||||
import { ProxyHead } from "./proxy-head";
|
||||
import { ProxyItem } from "./proxy-item";
|
||||
import { ProxyItemMini } from "./proxy-item-mini";
|
||||
import { HeadState } from "./use-head-state";
|
||||
import type { IRenderItem } from "./use-render-list";
|
||||
|
||||
import { useVerge } from "@/hooks/use-verge";
|
||||
import { useThemeMode } from "@/services/states";
|
||||
import { useEffect, useMemo, useState } from "react";
|
||||
import { convertFileSrc } from "@tauri-apps/api/core";
|
||||
import { downloadIconCache } from "@/services/cmds";
|
||||
import { useTranslation } from "react-i18next";
|
||||
import { useThemeMode } from "@/services/states";
|
||||
|
||||
interface RenderProps {
|
||||
item: IRenderItem;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { useEffect, useMemo, useState } from "react";
|
||||
|
||||
import delayManager from "@/services/delay";
|
||||
|
||||
// default | delay | alphabet
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
import { useCallback, useEffect, useState } from "react";
|
||||
|
||||
import { ProxySortType } from "./use-filter-sort";
|
||||
|
||||
import { useProfiles } from "@/hooks/use-profiles";
|
||||
|
||||
export interface HeadState {
|
||||
|
||||
@@ -1,14 +1,16 @@
|
||||
import { useEffect, useMemo } from "react";
|
||||
import { useVerge } from "@/hooks/use-verge";
|
||||
import useSWR from "swr";
|
||||
|
||||
import { filterSort } from "./use-filter-sort";
|
||||
import { useWindowWidth } from "./use-window-width";
|
||||
import {
|
||||
useHeadStateNew,
|
||||
DEFAULT_STATE,
|
||||
type HeadState,
|
||||
} from "./use-head-state";
|
||||
import { useWindowWidth } from "./use-window-width";
|
||||
|
||||
import { useVerge } from "@/hooks/use-verge";
|
||||
import { useAppData } from "@/providers/app-data-provider";
|
||||
import useSWR from "swr";
|
||||
import { getRuntimeConfig } from "@/services/cmds";
|
||||
import delayManager from "@/services/delay";
|
||||
|
||||
|
||||
Reference in New Issue
Block a user