feat: support mptcp and smux display

Corresponding pull request in mihomo: https://github.com/MetaCubeX/mihomo/pull/1646
This commit is contained in:
Chenx Dust 2024-11-08 18:45:34 +00:00
parent 20d163cf3a
commit 9892470d08
4 changed files with 23 additions and 0 deletions

View File

@ -160,6 +160,16 @@ export const ProxyItemMini = (props: Props) => {
TFO TFO
</TypeBox> </TypeBox>
)} )}
{proxy.mptcp && (
<TypeBox color="text.secondary" component="span">
MPTCP
</TypeBox>
)}
{proxy.smux && (
<TypeBox color="text.secondary" component="span">
sing-mux
</TypeBox>
)}
</Box> </Box>
)} )}
</Box> </Box>

View File

@ -129,6 +129,12 @@ export const ProxyItem = (props: Props) => {
<TypeBox component="span">XUDP</TypeBox> <TypeBox component="span">XUDP</TypeBox>
)} )}
{showType && proxy.tfo && <TypeBox component="span">TFO</TypeBox>} {showType && proxy.tfo && <TypeBox component="span">TFO</TypeBox>}
{showType && proxy.mptcp && (
<TypeBox component="span">MPTCP</TypeBox>
)}
{showType && proxy.smux && (
<TypeBox component="span">SMUX</TypeBox>
)}
</> </>
} }
/> />

View File

@ -122,6 +122,8 @@ export const getProxies = async () => {
udp: false, udp: false,
xudp: false, xudp: false,
tfo: false, tfo: false,
mptcp: false,
smux: false,
history: [], history: [],
}; };
}; };

View File

@ -56,6 +56,8 @@ interface IProxyItem {
udp: boolean; udp: boolean;
xudp: boolean; xudp: boolean;
tfo: boolean; tfo: boolean;
mptcp: boolean;
smux: boolean;
history: { history: {
time: string; time: string;
delay: number; delay: number;
@ -468,6 +470,7 @@ interface IProxyVlessConfig extends IProxyBaseConfig {
fingerprint?: string; fingerprint?: string;
servername?: string; servername?: string;
"client-fingerprint"?: ClientFingerprint; "client-fingerprint"?: ClientFingerprint;
smux?: boolean;
} }
// vmess // vmess
interface IProxyVmessConfig extends IProxyBaseConfig { interface IProxyVmessConfig extends IProxyBaseConfig {
@ -496,6 +499,7 @@ interface IProxyVmessConfig extends IProxyBaseConfig {
"global-padding"?: boolean; "global-padding"?: boolean;
"authenticated-length"?: boolean; "authenticated-length"?: boolean;
"client-fingerprint"?: ClientFingerprint; "client-fingerprint"?: ClientFingerprint;
smux?: boolean;
} }
interface WireGuardPeerOptions { interface WireGuardPeerOptions {
server?: string; server?: string;
@ -604,6 +608,7 @@ interface IProxyShadowsocksConfig extends IProxyBaseConfig {
"udp-over-tcp"?: boolean; "udp-over-tcp"?: boolean;
"udp-over-tcp-version"?: number; "udp-over-tcp-version"?: number;
"client-fingerprint"?: ClientFingerprint; "client-fingerprint"?: ClientFingerprint;
smux?: boolean;
} }
// shadowsocksR // shadowsocksR
interface IProxyshadowsocksRConfig extends IProxyBaseConfig { interface IProxyshadowsocksRConfig extends IProxyBaseConfig {