mirror of
https://github.com/clash-verge-rev/clash-verge-rev.git
synced 2026-04-18 00:11:08 +08:00
refactor(base): expand barrel exports and standardize imports
This commit is contained in:
parent
60d3a1927b
commit
a981be80ef
@ -1,8 +1,16 @@
|
|||||||
export { BaseDialog, type DialogRef } from "./base-dialog";
|
export { BaseDialog, type DialogRef } from "./base-dialog";
|
||||||
export { BasePage } from "./base-page";
|
|
||||||
export { BaseEmpty } from "./base-empty";
|
export { BaseEmpty } from "./base-empty";
|
||||||
export { BaseLoading } from "./base-loading";
|
|
||||||
export { BaseErrorBoundary } from "./base-error-boundary";
|
export { BaseErrorBoundary } from "./base-error-boundary";
|
||||||
export { BaseSplitChipEditor } from "./base-split-chip-editor";
|
export { BaseFieldset } from "./base-fieldset";
|
||||||
export { Switch } from "./base-switch";
|
export { BaseLoading } from "./base-loading";
|
||||||
export { BaseLoadingOverlay } from "./base-loading-overlay";
|
export { BaseLoadingOverlay } from "./base-loading-overlay";
|
||||||
|
export { BasePage } from "./base-page";
|
||||||
|
export { BaseSearchBox, type SearchState } from "./base-search-box";
|
||||||
|
export {
|
||||||
|
BaseSplitChipEditor,
|
||||||
|
type BaseSplitChipEditorMode,
|
||||||
|
} from "./base-split-chip-editor";
|
||||||
|
export { BaseStyledSelect } from "./base-styled-select";
|
||||||
|
export { BaseStyledTextField } from "./base-styled-text-field";
|
||||||
|
export { Switch } from "./base-switch";
|
||||||
|
export { TooltipIcon } from "./base-tooltip-icon";
|
||||||
|
|||||||
@ -2,10 +2,10 @@ import { Button } from "@mui/material";
|
|||||||
import { useRef } from "react";
|
import { useRef } from "react";
|
||||||
import useSWR from "swr";
|
import useSWR from "swr";
|
||||||
|
|
||||||
|
import { DialogRef } from "@/components/base";
|
||||||
import { useVerge } from "@/hooks/use-verge";
|
import { useVerge } from "@/hooks/use-verge";
|
||||||
import { checkUpdateSafe } from "@/services/update";
|
import { checkUpdateSafe } from "@/services/update";
|
||||||
|
|
||||||
import { DialogRef } from "../base";
|
|
||||||
import { UpdateViewer } from "../setting/mods/update-viewer";
|
import { UpdateViewer } from "../setting/mods/update-viewer";
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
import { styled, Box } from "@mui/material";
|
import { styled, Box } from "@mui/material";
|
||||||
import type { ReactNode } from "react";
|
import type { ReactNode } from "react";
|
||||||
|
|
||||||
import { SearchState } from "@/components/base/base-search-box";
|
import type { SearchState } from "@/components/base";
|
||||||
|
|
||||||
const Item = styled(Box)(({ theme: { palette, typography } }) => ({
|
const Item = styled(Box)(({ theme: { palette, typography } }) => ({
|
||||||
padding: "8px 0",
|
padding: "8px 0",
|
||||||
|
|||||||
@ -48,7 +48,7 @@ import { Controller, useForm } from "react-hook-form";
|
|||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { Virtuoso } from "react-virtuoso";
|
import { Virtuoso } from "react-virtuoso";
|
||||||
|
|
||||||
import { Switch } from "@/components/base";
|
import { BaseSearchBox, Switch } from "@/components/base";
|
||||||
import { GroupItem } from "@/components/profile/group-item";
|
import { GroupItem } from "@/components/profile/group-item";
|
||||||
import {
|
import {
|
||||||
getNetworkInterfaces,
|
getNetworkInterfaces,
|
||||||
@ -60,8 +60,6 @@ import { useThemeMode } from "@/services/states";
|
|||||||
import type { TranslationKey } from "@/types/generated/i18n-keys";
|
import type { TranslationKey } from "@/types/generated/i18n-keys";
|
||||||
import getSystem from "@/utils/get-system";
|
import getSystem from "@/utils/get-system";
|
||||||
|
|
||||||
import { BaseSearchBox } from "../base/base-search-box";
|
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
proxiesUid: string;
|
proxiesUid: string;
|
||||||
mergeUid: string;
|
mergeUid: string;
|
||||||
|
|||||||
@ -40,6 +40,7 @@ import {
|
|||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { Virtuoso } from "react-virtuoso";
|
import { Virtuoso } from "react-virtuoso";
|
||||||
|
|
||||||
|
import { BaseSearchBox } from "@/components/base";
|
||||||
import { ProxyItem } from "@/components/profile/proxy-item";
|
import { ProxyItem } from "@/components/profile/proxy-item";
|
||||||
import { readProfileFile, saveProfileFile } from "@/services/cmds";
|
import { readProfileFile, saveProfileFile } from "@/services/cmds";
|
||||||
import { showNotice } from "@/services/notice-service";
|
import { showNotice } from "@/services/notice-service";
|
||||||
@ -47,8 +48,6 @@ import { useThemeMode } from "@/services/states";
|
|||||||
import getSystem from "@/utils/get-system";
|
import getSystem from "@/utils/get-system";
|
||||||
import parseUri from "@/utils/uri-parser";
|
import parseUri from "@/utils/uri-parser";
|
||||||
|
|
||||||
import { BaseSearchBox } from "../base/base-search-box";
|
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
profileUid: string;
|
profileUid: string;
|
||||||
property: string;
|
property: string;
|
||||||
|
|||||||
@ -42,7 +42,7 @@ import {
|
|||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { Virtuoso } from "react-virtuoso";
|
import { Virtuoso } from "react-virtuoso";
|
||||||
|
|
||||||
import { Switch } from "@/components/base";
|
import { BaseSearchBox, Switch } from "@/components/base";
|
||||||
import { RuleItem } from "@/components/profile/rule-item";
|
import { RuleItem } from "@/components/profile/rule-item";
|
||||||
import { readProfileFile, saveProfileFile } from "@/services/cmds";
|
import { readProfileFile, saveProfileFile } from "@/services/cmds";
|
||||||
import { showNotice } from "@/services/notice-service";
|
import { showNotice } from "@/services/notice-service";
|
||||||
@ -50,8 +50,6 @@ import { useThemeMode } from "@/services/states";
|
|||||||
import type { TranslationKey } from "@/types/generated/i18n-keys";
|
import type { TranslationKey } from "@/types/generated/i18n-keys";
|
||||||
import getSystem from "@/utils/get-system";
|
import getSystem from "@/utils/get-system";
|
||||||
|
|
||||||
import { BaseSearchBox } from "../base/base-search-box";
|
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
groupsUid: string;
|
groupsUid: string;
|
||||||
mergeUid: string;
|
mergeUid: string;
|
||||||
|
|||||||
@ -15,6 +15,7 @@ import { useTranslation } from "react-i18next";
|
|||||||
import { Virtuoso, type VirtuosoHandle } from "react-virtuoso";
|
import { Virtuoso, type VirtuosoHandle } from "react-virtuoso";
|
||||||
import { delayGroup, healthcheckProxyProvider } from "tauri-plugin-mihomo-api";
|
import { delayGroup, healthcheckProxyProvider } from "tauri-plugin-mihomo-api";
|
||||||
|
|
||||||
|
import { BaseEmpty } from "@/components/base";
|
||||||
import { useProxiesData } from "@/hooks/use-clash-data";
|
import { useProxiesData } from "@/hooks/use-clash-data";
|
||||||
import { useProxySelection } from "@/hooks/use-proxy-selection";
|
import { useProxySelection } from "@/hooks/use-proxy-selection";
|
||||||
import { useVerge } from "@/hooks/use-verge";
|
import { useVerge } from "@/hooks/use-verge";
|
||||||
@ -22,7 +23,6 @@ import { updateProxyChainConfigInRuntime } from "@/services/cmds";
|
|||||||
import delayManager from "@/services/delay";
|
import delayManager from "@/services/delay";
|
||||||
import { debugLog } from "@/utils/debug";
|
import { debugLog } from "@/utils/debug";
|
||||||
|
|
||||||
import { BaseEmpty } from "../base";
|
|
||||||
import { ScrollTopButton } from "../layout/scroll-top-button";
|
import { ScrollTopButton } from "../layout/scroll-top-button";
|
||||||
|
|
||||||
import { ProxyChain } from "./proxy-chain";
|
import { ProxyChain } from "./proxy-chain";
|
||||||
|
|||||||
@ -15,7 +15,7 @@ import { Box, IconButton, TextField, SxProps } from "@mui/material";
|
|||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
|
|
||||||
import { BaseSearchBox } from "@/components/base/base-search-box";
|
import { BaseSearchBox } from "@/components/base";
|
||||||
import { useVerge } from "@/hooks/use-verge";
|
import { useVerge } from "@/hooks/use-verge";
|
||||||
import delayManager from "@/services/delay";
|
import delayManager from "@/services/delay";
|
||||||
import { debugLog } from "@/utils/debug";
|
import { debugLog } from "@/utils/debug";
|
||||||
|
|||||||
@ -17,8 +17,7 @@ import { exists } from "@tauri-apps/plugin-fs";
|
|||||||
import { forwardRef, useEffect, useImperativeHandle, useState } from "react";
|
import { forwardRef, useEffect, useImperativeHandle, useState } from "react";
|
||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
|
|
||||||
import { BaseDialog, DialogRef, Switch } from "@/components/base";
|
import { BaseDialog, DialogRef, Switch, TooltipIcon } from "@/components/base";
|
||||||
import { TooltipIcon } from "@/components/base/base-tooltip-icon";
|
|
||||||
import { DEFAULT_HOVER_DELAY } from "@/components/proxy/proxy-group-navigator";
|
import { DEFAULT_HOVER_DELAY } from "@/components/proxy/proxy-group-navigator";
|
||||||
import { useVerge } from "@/hooks/use-verge";
|
import { useVerge } from "@/hooks/use-verge";
|
||||||
import { useWindowDecorations } from "@/hooks/use-window";
|
import { useWindowDecorations } from "@/hooks/use-window";
|
||||||
|
|||||||
@ -11,8 +11,7 @@ import type { Ref } from "react";
|
|||||||
import { useImperativeHandle, useState } from "react";
|
import { useImperativeHandle, useState } from "react";
|
||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
|
|
||||||
import { BaseDialog, DialogRef, Switch } from "@/components/base";
|
import { BaseDialog, DialogRef, Switch, TooltipIcon } from "@/components/base";
|
||||||
import { TooltipIcon } from "@/components/base/base-tooltip-icon";
|
|
||||||
import { useVerge } from "@/hooks/use-verge";
|
import { useVerge } from "@/hooks/use-verge";
|
||||||
import { entry_lightweight_mode } from "@/services/cmds";
|
import { entry_lightweight_mode } from "@/services/cmds";
|
||||||
import { showNotice } from "@/services/notice-service";
|
import { showNotice } from "@/services/notice-service";
|
||||||
|
|||||||
@ -11,8 +11,7 @@ import { useLockFn } from "ahooks";
|
|||||||
import { forwardRef, useImperativeHandle, useState } from "react";
|
import { forwardRef, useImperativeHandle, useState } from "react";
|
||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
|
|
||||||
import { BaseDialog, DialogRef, Switch } from "@/components/base";
|
import { BaseDialog, DialogRef, Switch, TooltipIcon } from "@/components/base";
|
||||||
import { TooltipIcon } from "@/components/base/base-tooltip-icon";
|
|
||||||
import { useVerge } from "@/hooks/use-verge";
|
import { useVerge } from "@/hooks/use-verge";
|
||||||
import { showNotice } from "@/services/notice-service";
|
import { showNotice } from "@/services/notice-service";
|
||||||
|
|
||||||
|
|||||||
@ -26,12 +26,12 @@ import { mutate } from "swr";
|
|||||||
|
|
||||||
import {
|
import {
|
||||||
BaseDialog,
|
BaseDialog,
|
||||||
|
BaseFieldset,
|
||||||
BaseSplitChipEditor,
|
BaseSplitChipEditor,
|
||||||
DialogRef,
|
DialogRef,
|
||||||
Switch,
|
Switch,
|
||||||
|
TooltipIcon,
|
||||||
} from "@/components/base";
|
} from "@/components/base";
|
||||||
import { BaseFieldset } from "@/components/base/base-fieldset";
|
|
||||||
import { TooltipIcon } from "@/components/base/base-tooltip-icon";
|
|
||||||
import { EditorViewer } from "@/components/profile/editor-viewer";
|
import { EditorViewer } from "@/components/profile/editor-viewer";
|
||||||
import {
|
import {
|
||||||
useClashConfig,
|
useClashConfig,
|
||||||
|
|||||||
@ -12,8 +12,7 @@ import type { Ref } from "react";
|
|||||||
import { useImperativeHandle, useState } from "react";
|
import { useImperativeHandle, useState } from "react";
|
||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
|
|
||||||
import { BaseDialog, DialogRef, Switch } from "@/components/base";
|
import { BaseDialog, DialogRef, Switch, TooltipIcon } from "@/components/base";
|
||||||
import { TooltipIcon } from "@/components/base/base-tooltip-icon";
|
|
||||||
import { useClash } from "@/hooks/use-clash";
|
import { useClash } from "@/hooks/use-clash";
|
||||||
import { enhanceProfiles } from "@/services/cmds";
|
import { enhanceProfiles } from "@/services/cmds";
|
||||||
import { showNotice } from "@/services/notice-service";
|
import { showNotice } from "@/services/notice-service";
|
||||||
|
|||||||
@ -6,8 +6,7 @@ import { useRef, useState } from "react";
|
|||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { updateGeo } from "tauri-plugin-mihomo-api";
|
import { updateGeo } from "tauri-plugin-mihomo-api";
|
||||||
|
|
||||||
import { DialogRef, Switch } from "@/components/base";
|
import { DialogRef, Switch, TooltipIcon } from "@/components/base";
|
||||||
import { TooltipIcon } from "@/components/base/base-tooltip-icon";
|
|
||||||
import { useClash } from "@/hooks/use-clash";
|
import { useClash } from "@/hooks/use-clash";
|
||||||
import { useClashLog } from "@/hooks/use-clash-log";
|
import { useClashLog } from "@/hooks/use-clash-log";
|
||||||
import { useVerge } from "@/hooks/use-verge";
|
import { useVerge } from "@/hooks/use-verge";
|
||||||
|
|||||||
@ -2,8 +2,7 @@ import React, { useRef } from "react";
|
|||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { mutate } from "swr";
|
import { mutate } from "swr";
|
||||||
|
|
||||||
import { DialogRef, Switch } from "@/components/base";
|
import { DialogRef, Switch, TooltipIcon } from "@/components/base";
|
||||||
import { TooltipIcon } from "@/components/base/base-tooltip-icon";
|
|
||||||
import ProxyControlSwitches from "@/components/shared/proxy-control-switches";
|
import ProxyControlSwitches from "@/components/shared/proxy-control-switches";
|
||||||
import { useVerge } from "@/hooks/use-verge";
|
import { useVerge } from "@/hooks/use-verge";
|
||||||
|
|
||||||
|
|||||||
@ -3,8 +3,7 @@ import { Typography } from "@mui/material";
|
|||||||
import { useCallback, useRef } from "react";
|
import { useCallback, useRef } from "react";
|
||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
|
|
||||||
import { DialogRef } from "@/components/base";
|
import { DialogRef, TooltipIcon } from "@/components/base";
|
||||||
import { TooltipIcon } from "@/components/base/base-tooltip-icon";
|
|
||||||
import {
|
import {
|
||||||
exitApp,
|
exitApp,
|
||||||
exportDiagnosticInfo,
|
exportDiagnosticInfo,
|
||||||
|
|||||||
@ -4,8 +4,7 @@ import { open } from "@tauri-apps/plugin-dialog";
|
|||||||
import { useCallback, useRef } from "react";
|
import { useCallback, useRef } from "react";
|
||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
|
|
||||||
import { DialogRef } from "@/components/base";
|
import { DialogRef, TooltipIcon } from "@/components/base";
|
||||||
import { TooltipIcon } from "@/components/base/base-tooltip-icon";
|
|
||||||
import { useVerge } from "@/hooks/use-verge";
|
import { useVerge } from "@/hooks/use-verge";
|
||||||
import { navItems } from "@/pages/_routers";
|
import { navItems } from "@/pages/_routers";
|
||||||
import { copyClashEnv } from "@/services/cmds";
|
import { copyClashEnv } from "@/services/cmds";
|
||||||
|
|||||||
@ -11,8 +11,7 @@ import { useLockFn } from "ahooks";
|
|||||||
import React, { useCallback, useRef } from "react";
|
import React, { useCallback, useRef } from "react";
|
||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
|
|
||||||
import { DialogRef, Switch } from "@/components/base";
|
import { DialogRef, Switch, TooltipIcon } from "@/components/base";
|
||||||
import { TooltipIcon } from "@/components/base/base-tooltip-icon";
|
|
||||||
import { GuardState } from "@/components/setting/mods/guard-state";
|
import { GuardState } from "@/components/setting/mods/guard-state";
|
||||||
import { SysproxyViewer } from "@/components/setting/mods/sysproxy-viewer";
|
import { SysproxyViewer } from "@/components/setting/mods/sysproxy-viewer";
|
||||||
import { TunViewer } from "@/components/setting/mods/tun-viewer";
|
import { TunViewer } from "@/components/setting/mods/tun-viewer";
|
||||||
|
|||||||
@ -18,9 +18,12 @@ import { useTranslation } from "react-i18next";
|
|||||||
import { Virtuoso } from "react-virtuoso";
|
import { Virtuoso } from "react-virtuoso";
|
||||||
import { closeAllConnections } from "tauri-plugin-mihomo-api";
|
import { closeAllConnections } from "tauri-plugin-mihomo-api";
|
||||||
|
|
||||||
import { BaseEmpty, BasePage } from "@/components/base";
|
import {
|
||||||
import { BaseSearchBox } from "@/components/base/base-search-box";
|
BaseEmpty,
|
||||||
import { BaseStyledSelect } from "@/components/base/base-styled-select";
|
BasePage,
|
||||||
|
BaseSearchBox,
|
||||||
|
BaseStyledSelect,
|
||||||
|
} from "@/components/base";
|
||||||
import {
|
import {
|
||||||
ConnectionDetail,
|
ConnectionDetail,
|
||||||
ConnectionDetailRef,
|
ConnectionDetailRef,
|
||||||
|
|||||||
@ -8,10 +8,13 @@ import { useMemo, useState } from "react";
|
|||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { Virtuoso } from "react-virtuoso";
|
import { Virtuoso } from "react-virtuoso";
|
||||||
|
|
||||||
import { BaseEmpty, BasePage } from "@/components/base";
|
import {
|
||||||
import { BaseSearchBox } from "@/components/base/base-search-box";
|
BaseEmpty,
|
||||||
import { SearchState } from "@/components/base/base-search-box";
|
BasePage,
|
||||||
import { BaseStyledSelect } from "@/components/base/base-styled-select";
|
BaseSearchBox,
|
||||||
|
BaseStyledSelect,
|
||||||
|
type SearchState,
|
||||||
|
} from "@/components/base";
|
||||||
import LogItem from "@/components/log/log-item";
|
import LogItem from "@/components/log/log-item";
|
||||||
import { useClashLog } from "@/hooks/use-clash-log";
|
import { useClashLog } from "@/hooks/use-clash-log";
|
||||||
import { useLogData } from "@/hooks/use-log-data";
|
import { useLogData } from "@/hooks/use-log-data";
|
||||||
|
|||||||
@ -36,8 +36,7 @@ import { useLocation } from "react-router";
|
|||||||
import useSWR, { mutate } from "swr";
|
import useSWR, { mutate } from "swr";
|
||||||
import { closeAllConnections } from "tauri-plugin-mihomo-api";
|
import { closeAllConnections } from "tauri-plugin-mihomo-api";
|
||||||
|
|
||||||
import { BasePage, DialogRef } from "@/components/base";
|
import { BasePage, BaseStyledTextField, DialogRef } from "@/components/base";
|
||||||
import { BaseStyledTextField } from "@/components/base/base-styled-text-field";
|
|
||||||
import { ProfileItem } from "@/components/profile/profile-item";
|
import { ProfileItem } from "@/components/profile/profile-item";
|
||||||
import { ProfileMore } from "@/components/profile/profile-more";
|
import { ProfileMore } from "@/components/profile/profile-more";
|
||||||
import {
|
import {
|
||||||
|
|||||||
@ -3,8 +3,7 @@ import { useEffect, useMemo, useRef, useState } from "react";
|
|||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { Virtuoso, VirtuosoHandle } from "react-virtuoso";
|
import { Virtuoso, VirtuosoHandle } from "react-virtuoso";
|
||||||
|
|
||||||
import { BaseEmpty, BasePage } from "@/components/base";
|
import { BaseEmpty, BasePage, BaseSearchBox } from "@/components/base";
|
||||||
import { BaseSearchBox } from "@/components/base/base-search-box";
|
|
||||||
import { ScrollTopButton } from "@/components/layout/scroll-top-button";
|
import { ScrollTopButton } from "@/components/layout/scroll-top-button";
|
||||||
import { ProviderButton } from "@/components/rule/provider-button";
|
import { ProviderButton } from "@/components/rule/provider-button";
|
||||||
import RuleItem from "@/components/rule/rule-item";
|
import RuleItem from "@/components/rule/rule-item";
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user