Add mux options
This commit is contained in:
@@ -201,6 +201,7 @@
|
||||
"route": "Route Options",
|
||||
"dns": "DNS Options",
|
||||
"inbound": "Inbound Options",
|
||||
"mux": "Multiplexer",
|
||||
"outbound": "Outbound Options",
|
||||
"tlsTricks": "TLS Tricks",
|
||||
"misc": "Misc Options"
|
||||
@@ -239,7 +240,10 @@
|
||||
"tlsFragmentSleep": "TLS Fragment Sleep",
|
||||
"enableTlsMixedSniCase": "Enable TLS Mixed SNI Case",
|
||||
"enableTlsPadding": "Enable TLS Padding",
|
||||
"tlsPaddingSize": "TLS Padding"
|
||||
"tlsPaddingSize": "TLS Padding",
|
||||
"enableMux": "Enable Mux",
|
||||
"muxProtocol": "Mux Protocol",
|
||||
"muxMaxStreams": "Max Concurrent Streams"
|
||||
},
|
||||
"geoAssets": {
|
||||
"pageTitle": "Routing Assets",
|
||||
|
||||
@@ -208,6 +208,7 @@
|
||||
"route": "Opciones de ruta",
|
||||
"dns": "Opciones de DNS",
|
||||
"inbound": "Opciones entrantes",
|
||||
"mux": "Multiplexer",
|
||||
"outbound": "Opciones de salida",
|
||||
"tlsTricks": "Trucos TLS",
|
||||
"misc": "Opciones varias"
|
||||
@@ -233,7 +234,10 @@
|
||||
"tlsFragmentSleep": "Sueño de fragmento TLS",
|
||||
"enableTlsMixedSniCase": "Habilitar caso SNI mixto TLS",
|
||||
"enableTlsPadding": "Habilitar el relleno TLS",
|
||||
"tlsPaddingSize": "Relleno TLS"
|
||||
"tlsPaddingSize": "Relleno TLS",
|
||||
"enableMux": "Enable Mux",
|
||||
"muxProtocol": "Mux Protocol",
|
||||
"muxMaxStreams": "Max Concurrent Streams"
|
||||
},
|
||||
"geoAssets": {
|
||||
"successMsg": "Activo actualizado correctamente",
|
||||
|
||||
@@ -201,6 +201,7 @@
|
||||
"route": "تنظیمات مسیریاب",
|
||||
"dns": "تنظیمات DNS",
|
||||
"inbound": "تنظیمات ورودی",
|
||||
"mux": "Multiplexer",
|
||||
"outbound": "Outbound Options",
|
||||
"tlsTricks": "TLS Tricks",
|
||||
"misc": "تنظیمات متفرقه"
|
||||
@@ -239,7 +240,10 @@
|
||||
"tlsFragmentSleep": "TLS Fragment Sleep",
|
||||
"enableTlsMixedSniCase": "Enable TLS Mixed SNI Case",
|
||||
"enableTlsPadding": "Enable TLS Padding",
|
||||
"tlsPaddingSize": "TLS Padding"
|
||||
"tlsPaddingSize": "TLS Padding",
|
||||
"enableMux": "Enable Mux",
|
||||
"muxProtocol": "Mux Protocol",
|
||||
"muxMaxStreams": "Max Concurrent Streams"
|
||||
},
|
||||
"geoAssets": {
|
||||
"pageTitle": "فایلهای مسیریابی",
|
||||
|
||||
@@ -201,6 +201,7 @@
|
||||
"route": "Варианты маршрутизации",
|
||||
"dns": "Параметры DNS",
|
||||
"inbound": "Входящие параметры",
|
||||
"mux": "Multiplexer",
|
||||
"outbound": "Outbound Options",
|
||||
"tlsTricks": "TLS Tricks",
|
||||
"misc": "Разные параметры"
|
||||
@@ -239,7 +240,10 @@
|
||||
"tlsFragmentSleep": "TLS Fragment Sleep",
|
||||
"enableTlsMixedSniCase": "Enable TLS Mixed SNI Case",
|
||||
"enableTlsPadding": "Enable TLS Padding",
|
||||
"tlsPaddingSize": "TLS Padding"
|
||||
"tlsPaddingSize": "TLS Padding",
|
||||
"enableMux": "Enable Mux",
|
||||
"muxProtocol": "Mux Protocol",
|
||||
"muxMaxStreams": "Max Concurrent Streams"
|
||||
},
|
||||
"geoAssets": {
|
||||
"pageTitle": "Активы маршрутизации",
|
||||
|
||||
@@ -201,6 +201,7 @@
|
||||
"route": "Rota Seçenekleri",
|
||||
"dns": "DNS Seçenekleri",
|
||||
"inbound": "Gelen Seçenekler",
|
||||
"mux": "Multiplexer",
|
||||
"outbound": "Outbound Options",
|
||||
"tlsTricks": "TLS Tricks",
|
||||
"misc": "Çeşitli Seçenekler"
|
||||
@@ -239,7 +240,10 @@
|
||||
"tlsFragmentSleep": "TLS Fragment Sleep",
|
||||
"enableTlsMixedSniCase": "Enable TLS Mixed SNI Case",
|
||||
"enableTlsPadding": "Enable TLS Padding",
|
||||
"tlsPaddingSize": "TLS Padding"
|
||||
"tlsPaddingSize": "TLS Padding",
|
||||
"enableMux": "Enable Mux",
|
||||
"muxProtocol": "Mux Protocol",
|
||||
"muxMaxStreams": "Max Concurrent Streams"
|
||||
},
|
||||
"geoAssets": {
|
||||
"pageTitle": "Varlıkları Yönlendirme",
|
||||
|
||||
@@ -201,6 +201,7 @@
|
||||
"route": "路由选项",
|
||||
"dns": "DNS 选项",
|
||||
"inbound": "入站选项",
|
||||
"mux": "Multiplexer",
|
||||
"outbound": "出站选项",
|
||||
"tlsTricks": "TLS Tricks",
|
||||
"misc": "其它选项"
|
||||
@@ -239,7 +240,10 @@
|
||||
"tlsFragmentSleep": "TLS 分段休眠",
|
||||
"enableTlsMixedSniCase": "启用 TLS 混合 SNI 情形",
|
||||
"enableTlsPadding": "启用 TLS 填充",
|
||||
"tlsPaddingSize": "TLS 填充"
|
||||
"tlsPaddingSize": "TLS 填充",
|
||||
"enableMux": "Enable Mux",
|
||||
"muxProtocol": "Mux Protocol",
|
||||
"muxMaxStreams": "Max Concurrent Streams"
|
||||
},
|
||||
"geoAssets": {
|
||||
"pageTitle": "路由资源文件",
|
||||
|
||||
@@ -182,6 +182,49 @@ class ConfigOptionsPage extends HookConsumerWidget {
|
||||
),
|
||||
),
|
||||
const SettingsDivider(),
|
||||
SettingsSection(experimental(t.settings.config.section.mux)),
|
||||
SwitchListTile(
|
||||
title: Text(t.settings.config.enableMux),
|
||||
value: options.enableMux,
|
||||
onChanged: (value) => changeOption(
|
||||
ConfigOptionPatch(enableMux: value),
|
||||
),
|
||||
),
|
||||
ListTile(
|
||||
title: Text(t.settings.config.muxProtocol),
|
||||
subtitle: Text(options.muxProtocol.name),
|
||||
onTap: () async {
|
||||
final pickedProtocol = await SettingsPickerDialog(
|
||||
title: t.settings.config.muxProtocol,
|
||||
selected: options.muxProtocol,
|
||||
options: MuxProtocol.values,
|
||||
getTitle: (e) => e.name,
|
||||
resetValue: defaultOptions.muxProtocol,
|
||||
).show(context);
|
||||
if (pickedProtocol == null) return;
|
||||
await changeOption(
|
||||
ConfigOptionPatch(muxProtocol: pickedProtocol),
|
||||
);
|
||||
},
|
||||
),
|
||||
ListTile(
|
||||
title: Text(t.settings.config.muxMaxStreams),
|
||||
subtitle: Text(options.muxMaxStreams.toString()),
|
||||
onTap: () async {
|
||||
final maxStreams = await SettingsInputDialog(
|
||||
title: t.settings.config.muxMaxStreams,
|
||||
initialValue: options.muxMaxStreams,
|
||||
resetValue: defaultOptions.muxMaxStreams,
|
||||
mapTo: int.tryParse,
|
||||
digitsOnly: true,
|
||||
).show(context);
|
||||
if (maxStreams == null || maxStreams < 1) return;
|
||||
await changeOption(
|
||||
ConfigOptionPatch(muxMaxStreams: maxStreams),
|
||||
);
|
||||
},
|
||||
),
|
||||
const SettingsDivider(),
|
||||
SettingsSection(t.settings.config.section.inbound),
|
||||
ListTile(
|
||||
title: Text(t.settings.config.serviceMode),
|
||||
|
||||
Reference in New Issue
Block a user