From 976f70b8c2e926fc305dfcbece98ff1f8a52077c Mon Sep 17 00:00:00 2001 From: Chenx Dust Date: Fri, 8 Nov 2024 18:45:34 +0000 Subject: [PATCH] feat: support mptcp and smux display Corresponding pull request in mihomo: https://github.com/MetaCubeX/mihomo/pull/1646 --- src/components/proxy/proxy-item-mini.tsx | 10 ++++++++++ src/components/proxy/proxy-item.tsx | 2 ++ src/services/api.ts | 2 ++ src/services/types.d.ts | 5 +++++ 4 files changed, 19 insertions(+) diff --git a/src/components/proxy/proxy-item-mini.tsx b/src/components/proxy/proxy-item-mini.tsx index b80da18..55504a1 100644 --- a/src/components/proxy/proxy-item-mini.tsx +++ b/src/components/proxy/proxy-item-mini.tsx @@ -160,6 +160,16 @@ export const ProxyItemMini = (props: Props) => { TFO )} + {proxy.mptcp && ( + + MPTCP + + )} + {proxy.smux && ( + + SMUX + + )} )} diff --git a/src/components/proxy/proxy-item.tsx b/src/components/proxy/proxy-item.tsx index 53f8a23..12bf50a 100644 --- a/src/components/proxy/proxy-item.tsx +++ b/src/components/proxy/proxy-item.tsx @@ -127,6 +127,8 @@ export const ProxyItem = (props: Props) => { {showType && proxy.udp && UDP} {showType && proxy.xudp && XUDP} {showType && proxy.tfo && TFO} + {showType && proxy.mptcp && MPTCP} + {showType && proxy.smux && SMUX} } /> diff --git a/src/services/api.ts b/src/services/api.ts index c102f2f..cfb8580 100644 --- a/src/services/api.ts +++ b/src/services/api.ts @@ -122,6 +122,8 @@ export const getProxies = async () => { udp: false, xudp: false, tfo: false, + mptcp: false, + smux: false, history: [], }; }; diff --git a/src/services/types.d.ts b/src/services/types.d.ts index 147323f..349fb2d 100644 --- a/src/services/types.d.ts +++ b/src/services/types.d.ts @@ -56,6 +56,8 @@ interface IProxyItem { udp: boolean; xudp: boolean; tfo: boolean; + mptcp: boolean; + smux: boolean; history: { time: string; delay: number; @@ -468,6 +470,7 @@ interface IProxyVlessConfig extends IProxyBaseConfig { fingerprint?: string; servername?: string; "client-fingerprint"?: ClientFingerprint; + smux?: boolean; } // vmess interface IProxyVmessConfig extends IProxyBaseConfig { @@ -496,6 +499,7 @@ interface IProxyVmessConfig extends IProxyBaseConfig { "global-padding"?: boolean; "authenticated-length"?: boolean; "client-fingerprint"?: ClientFingerprint; + smux?: boolean; } interface WireGuardPeerOptions { server?: string; @@ -604,6 +608,7 @@ interface IProxyShadowsocksConfig extends IProxyBaseConfig { "udp-over-tcp"?: boolean; "udp-over-tcp-version"?: number; "client-fingerprint"?: ClientFingerprint; + smux?: boolean; } // shadowsocksR interface IProxyshadowsocksRConfig extends IProxyBaseConfig {