From 3aff005f81ae7a47ac6c0c3f75dd3b0c7ddc5632 Mon Sep 17 00:00:00 2001 From: ezequielnick <107352853+ezequielnick@users.noreply.github.com> Date: Sat, 4 Oct 2025 13:07:38 +0800 Subject: [PATCH] fix: resolve all type errors & update changelog --- changelog.md | 4 +++- .../src/components/base/base-error-boundary.tsx | 4 ++-- src/renderer/src/components/base/substore-icon.tsx | 6 ++++-- src/renderer/src/components/proxies/proxy-item.tsx | 2 +- src/renderer/src/pages/dns.tsx | 10 +++++----- src/renderer/src/pages/logs.tsx | 2 +- src/renderer/src/pages/override.tsx | 2 +- 7 files changed, 17 insertions(+), 13 deletions(-) diff --git a/changelog.md b/changelog.md index 0dae1a8..c5d53d4 100644 --- a/changelog.md +++ b/changelog.md @@ -1,11 +1,13 @@ ## 1.8.8 ### 新功能 (Feat) +- 升级内核版本 - 增加内核版本选择 - 记住日志页面的筛选关键字 - Webdav增加Cron定时备份 - 连接卡片纯数字显示样式 -- 支持修改窗口触发行为 +- 支持修改点击任务栏的窗口触发行为 +- 在设置里增加 WebUI 快捷打开方式 ### 修复 (Fix) - MacOS 首次启动时的 ENOENT: no such file or directory(config.yaml) diff --git a/src/renderer/src/components/base/base-error-boundary.tsx b/src/renderer/src/components/base/base-error-boundary.tsx index 6b389b8..a5da2bd 100644 --- a/src/renderer/src/components/base/base-error-boundary.tsx +++ b/src/renderer/src/components/base/base-error-boundary.tsx @@ -3,7 +3,7 @@ import { ReactNode } from 'react' import { ErrorBoundary, FallbackProps } from 'react-error-boundary' import { useTranslation } from 'react-i18next' -const ErrorFallback = ({ error }: FallbackProps): JSX.Element => { +const ErrorFallback = ({ error }: FallbackProps): React.ReactElement => { const { t } = useTranslation() return ( @@ -55,7 +55,7 @@ interface Props { children?: ReactNode } -const BaseErrorBoundary = (props: Props): JSX.Element => { +const BaseErrorBoundary = (props: Props): React.ReactElement => { return {props.children} } diff --git a/src/renderer/src/components/base/substore-icon.tsx b/src/renderer/src/components/base/substore-icon.tsx index 987eabd..11700bb 100644 --- a/src/renderer/src/components/base/substore-icon.tsx +++ b/src/renderer/src/components/base/substore-icon.tsx @@ -1,5 +1,7 @@ -import { GenIcon } from 'react-icons' -function SubStoreIcon(props): JSX.Element { +import { GenIcon, IconBaseProps } from 'react-icons' +import React from 'react' + +function SubStoreIcon(props: IconBaseProps): React.ReactElement { return GenIcon({ tag: 'svg', attr: { viewBox: '0 0 192 192' }, diff --git a/src/renderer/src/components/proxies/proxy-item.tsx b/src/renderer/src/components/proxies/proxy-item.tsx index 1caf98c..45f5831 100644 --- a/src/renderer/src/components/proxies/proxy-item.tsx +++ b/src/renderer/src/components/proxies/proxy-item.tsx @@ -59,7 +59,7 @@ const ProxyItem: React.FC = React.memo((props) => { onPress={() => onSelect(group.name, proxy.name)} isPressable fullWidth - shadow="xs" + shadow="sm" className={`${ fixed ? 'bg-secondary/30 border-r-2 border-r-secondary border-l-2 border-l-secondary' diff --git a/src/renderer/src/pages/dns.tsx b/src/renderer/src/pages/dns.tsx index 9a93793..a96209b 100644 --- a/src/renderer/src/pages/dns.tsx +++ b/src/renderer/src/pages/dns.tsx @@ -61,7 +61,7 @@ const DNS: React.FC = () => { proxyServerNameserver, directNameserver, fallback, - fallbackGeoip: fallbackFilter?.geoip || true, + fallbackGeoip: (fallbackFilter?.geoip || true) as string | true | string[], fallbackGeoipCode: fallbackFilter?.['geoip-code'] || 'CN', fallbackIpcidr: fallbackFilter?.ipcidr || ['240.0.0.0/4', '0.0.0.0/32'], fallbackDomain: fallbackFilter?.domain || ['+.google.com', '+.facebook.com', '+.youtube.com'], @@ -174,7 +174,7 @@ const DNS: React.FC = () => { 'direct-nameserver': values.directNameserver, fallback: values.fallback, 'fallback-filter': { - geoip: values.fallbackGeoip, + ...(values.fallbackGeoip ? { geoip: values.fallbackGeoip } : {}), 'geoip-code': values.fallbackGeoipCode, ipcidr: values.fallbackIpcidr, domain: values.fallbackDomain @@ -415,9 +415,9 @@ const DNS: React.FC = () => { { - setValues({ ...values, fallbackGeoip: v }) + setValues({ ...values, fallbackGeoip: v as string | true | string[] }) }} /> @@ -425,7 +425,7 @@ const DNS: React.FC = () => { { setValues({ ...values, fallbackGeoipCode: v }) diff --git a/src/renderer/src/pages/logs.tsx b/src/renderer/src/pages/logs.tsx index 4b4ad42..ce72fa9 100644 --- a/src/renderer/src/pages/logs.tsx +++ b/src/renderer/src/pages/logs.tsx @@ -58,7 +58,7 @@ const Logs: React.FC = () => { localStorage.setItem(LOGS_FILTER_KEY, filter) }, [filter]) - useEffect(() => { + useEffect((): void | (() => void) => { if (!trace) { const container = containerRef.current if (container) { diff --git a/src/renderer/src/pages/override.tsx b/src/renderer/src/pages/override.tsx index 26c5cbe..c69b5bc 100644 --- a/src/renderer/src/pages/override.tsx +++ b/src/renderer/src/pages/override.tsx @@ -92,7 +92,7 @@ const Override: React.FC = () => { if (event.dataTransfer?.files) { const file = event.dataTransfer.files[0] if (file.name.endsWith('.js') || file.name.endsWith('.yaml')) { - const content = await readTextFile(file.path) + const content = await readTextFile((file as File & { path: string }).path) try { await addOverrideItem({ name: file.name,