204 will be used if empty."
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1123
-#: htdocs/luci-static/resources/view/fchomo/node.js:1723
+#: htdocs/luci-static/resources/view/fchomo/node.js:1781
msgid "Expected status"
msgstr ""
@@ -958,10 +960,10 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:436
#: htdocs/luci-static/resources/view/fchomo/node.js:489
#: htdocs/luci-static/resources/view/fchomo/node.js:491
-#: htdocs/luci-static/resources/view/fchomo/node.js:942
-#: htdocs/luci-static/resources/view/fchomo/node.js:1030
-#: htdocs/luci-static/resources/view/fchomo/node.js:1800
-#: htdocs/luci-static/resources/view/fchomo/node.js:1820
+#: htdocs/luci-static/resources/view/fchomo/node.js:962
+#: htdocs/luci-static/resources/view/fchomo/node.js:1050
+#: htdocs/luci-static/resources/view/fchomo/node.js:1858
+#: htdocs/luci-static/resources/view/fchomo/node.js:1878
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:291
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:305
msgid "Expecting: %s"
@@ -969,9 +971,9 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:977
#: htdocs/luci-static/resources/fchomo/listeners.js:984
-#: htdocs/luci-static/resources/view/fchomo/node.js:1140
-#: htdocs/luci-static/resources/view/fchomo/node.js:1147
-#: htdocs/luci-static/resources/view/fchomo/node.js:1155
+#: htdocs/luci-static/resources/view/fchomo/node.js:1160
+#: htdocs/luci-static/resources/view/fchomo/node.js:1167
+#: htdocs/luci-static/resources/view/fchomo/node.js:1175
msgid "Expecting: only support %s."
msgstr ""
@@ -1021,7 +1023,7 @@ msgid "Fallback filter"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1156
-#: htdocs/luci-static/resources/view/fchomo/node.js:1730
+#: htdocs/luci-static/resources/view/fchomo/node.js:1788
msgid "Filter nodes that meet keywords or regexps."
msgstr ""
@@ -1062,15 +1064,15 @@ msgid ""
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1122
-#: htdocs/luci-static/resources/view/fchomo/node.js:1599
-#: htdocs/luci-static/resources/view/fchomo/node.js:1722
+#: htdocs/luci-static/resources/view/fchomo/node.js:1657
+#: htdocs/luci-static/resources/view/fchomo/node.js:1780
msgid ""
"For format see %s."
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:710
-#: htdocs/luci-static/resources/view/fchomo/node.js:793
+#: htdocs/luci-static/resources/view/fchomo/node.js:813
msgid "Force DNS remote resolution."
msgstr ""
@@ -1089,7 +1091,7 @@ msgstr ""
msgid "FullCombo Shark!"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1180
+#: htdocs/luci-static/resources/view/fchomo/node.js:1200
msgid "GET"
msgstr ""
@@ -1104,7 +1106,7 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:119
#: htdocs/luci-static/resources/view/fchomo/client.js:1009
#: htdocs/luci-static/resources/view/fchomo/node.js:222
-#: htdocs/luci-static/resources/view/fchomo/node.js:1479
+#: htdocs/luci-static/resources/view/fchomo/node.js:1537
msgid "General fields"
msgstr ""
@@ -1186,17 +1188,16 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo.js:146
#: htdocs/luci-static/resources/fchomo.js:179
-#: htdocs/luci-static/resources/fchomo/listeners.js:977
-#: htdocs/luci-static/resources/view/fchomo/node.js:816
-#: htdocs/luci-static/resources/view/fchomo/node.js:1129
-#: htdocs/luci-static/resources/view/fchomo/node.js:1140
-#: htdocs/luci-static/resources/view/fchomo/node.js:1147
+#: htdocs/luci-static/resources/view/fchomo/node.js:836
+#: htdocs/luci-static/resources/view/fchomo/node.js:1149
+#: htdocs/luci-static/resources/view/fchomo/node.js:1160
+#: htdocs/luci-static/resources/view/fchomo/node.js:1167
msgid "HTTP"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:267
-#: htdocs/luci-static/resources/view/fchomo/node.js:1202
-#: htdocs/luci-static/resources/view/fchomo/node.js:1579
+#: htdocs/luci-static/resources/view/fchomo/node.js:1222
+#: htdocs/luci-static/resources/view/fchomo/node.js:1637
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:399
msgid "HTTP header"
msgstr ""
@@ -1222,7 +1223,7 @@ msgstr ""
msgid "HTTP mask: %s"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1179
+#: htdocs/luci-static/resources/view/fchomo/node.js:1199
msgid "HTTP request method"
msgstr ""
@@ -1241,10 +1242,9 @@ msgid ""
"returned if empty."
msgstr ""
-#: htdocs/luci-static/resources/fchomo/listeners.js:978
-#: htdocs/luci-static/resources/view/fchomo/node.js:1130
-#: htdocs/luci-static/resources/view/fchomo/node.js:1141
-#: htdocs/luci-static/resources/view/fchomo/node.js:1148
+#: htdocs/luci-static/resources/view/fchomo/node.js:1150
+#: htdocs/luci-static/resources/view/fchomo/node.js:1161
+#: htdocs/luci-static/resources/view/fchomo/node.js:1168
msgid "HTTPUpgrade"
msgstr ""
@@ -1269,27 +1269,27 @@ msgid "Health check"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1091
-#: htdocs/luci-static/resources/view/fchomo/node.js:1690
+#: htdocs/luci-static/resources/view/fchomo/node.js:1748
msgid "Health check URL"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1120
-#: htdocs/luci-static/resources/view/fchomo/node.js:1720
+#: htdocs/luci-static/resources/view/fchomo/node.js:1778
msgid "Health check expected status"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1100
-#: htdocs/luci-static/resources/view/fchomo/node.js:1700
+#: htdocs/luci-static/resources/view/fchomo/node.js:1758
msgid "Health check interval"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1107
-#: htdocs/luci-static/resources/view/fchomo/node.js:1707
+#: htdocs/luci-static/resources/view/fchomo/node.js:1765
msgid "Health check timeout"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1011
-#: htdocs/luci-static/resources/view/fchomo/node.js:1481
+#: htdocs/luci-static/resources/view/fchomo/node.js:1539
msgid "Health fields"
msgstr ""
@@ -1301,7 +1301,7 @@ msgstr ""
msgid "Hidden"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:822
+#: htdocs/luci-static/resources/view/fchomo/node.js:842
msgid "Host that supports TLS 1.3"
msgstr ""
@@ -1340,8 +1340,8 @@ msgstr ""
msgid "IP override"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1361
-#: htdocs/luci-static/resources/view/fchomo/node.js:1676
+#: htdocs/luci-static/resources/view/fchomo/node.js:1419
+#: htdocs/luci-static/resources/view/fchomo/node.js:1734
msgid "IP version"
msgstr ""
@@ -1402,8 +1402,8 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1713
#: htdocs/luci-static/resources/view/fchomo/client.js:1748
#: htdocs/luci-static/resources/view/fchomo/client.js:1769
-#: htdocs/luci-static/resources/view/fchomo/node.js:1386
-#: htdocs/luci-static/resources/view/fchomo/node.js:1467
+#: htdocs/luci-static/resources/view/fchomo/node.js:1444
+#: htdocs/luci-static/resources/view/fchomo/node.js:1525
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:153
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:241
msgid "Import mihomo config"
@@ -1419,12 +1419,12 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:181
#: htdocs/luci-static/resources/view/fchomo/node.js:286
#: htdocs/luci-static/resources/view/fchomo/node.js:292
-#: htdocs/luci-static/resources/view/fchomo/node.js:1637
-#: htdocs/luci-static/resources/view/fchomo/node.js:1643
+#: htdocs/luci-static/resources/view/fchomo/node.js:1695
+#: htdocs/luci-static/resources/view/fchomo/node.js:1701
msgid "In Mbps."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1557
+#: htdocs/luci-static/resources/view/fchomo/node.js:1615
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:377
msgid "In bytes. %s will be used if empty."
msgstr ""
@@ -1436,7 +1436,7 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1108
#: htdocs/luci-static/resources/view/fchomo/client.js:1137
-#: htdocs/luci-static/resources/view/fchomo/node.js:1708
+#: htdocs/luci-static/resources/view/fchomo/node.js:1766
msgid "In millisecond. %s will be used if empty."
msgstr ""
@@ -1445,7 +1445,7 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:428
#: htdocs/luci-static/resources/view/fchomo/node.js:604
#: htdocs/luci-static/resources/view/fchomo/node.js:611
-#: htdocs/luci-static/resources/view/fchomo/node.js:1218
+#: htdocs/luci-static/resources/view/fchomo/node.js:1238
msgid "In seconds."
msgstr ""
@@ -1454,14 +1454,14 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/global.js:430
#: htdocs/luci-static/resources/view/fchomo/global.js:515
#: htdocs/luci-static/resources/view/fchomo/node.js:280
-#: htdocs/luci-static/resources/view/fchomo/node.js:1563
-#: htdocs/luci-static/resources/view/fchomo/node.js:1701
+#: htdocs/luci-static/resources/view/fchomo/node.js:1621
+#: htdocs/luci-static/resources/view/fchomo/node.js:1759
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:383
msgid "In seconds. %s will be used if empty."
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:649
-#: htdocs/luci-static/resources/view/fchomo/node.js:931
+#: htdocs/luci-static/resources/view/fchomo/node.js:951
msgid ""
"In the order of one Padding-Length and one Padding-"
"Interval, infinite concatenation."
@@ -1501,7 +1501,7 @@ msgstr ""
msgid "Info"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1496
+#: htdocs/luci-static/resources/view/fchomo/node.js:1554
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:279
msgid "Inline"
msgstr ""
@@ -1522,7 +1522,7 @@ msgid "Key"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:829
-#: htdocs/luci-static/resources/view/fchomo/node.js:1059
+#: htdocs/luci-static/resources/view/fchomo/node.js:1079
msgid "Key path"
msgstr ""
@@ -1538,14 +1538,14 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1719
#: htdocs/luci-static/resources/view/fchomo/client.js:1775
#: htdocs/luci-static/resources/view/fchomo/node.js:229
-#: htdocs/luci-static/resources/view/fchomo/node.js:1484
-#: htdocs/luci-static/resources/view/fchomo/node.js:1769
+#: htdocs/luci-static/resources/view/fchomo/node.js:1542
+#: htdocs/luci-static/resources/view/fchomo/node.js:1827
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:259
msgid "Label"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1114
-#: htdocs/luci-static/resources/view/fchomo/node.js:1714
+#: htdocs/luci-static/resources/view/fchomo/node.js:1772
msgid "Lazy"
msgstr ""
@@ -1565,7 +1565,7 @@ msgid "Less compatibility and sometimes better performance."
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:810
-#: htdocs/luci-static/resources/view/fchomo/node.js:983
+#: htdocs/luci-static/resources/view/fchomo/node.js:1003
msgid "List of supported application level protocols, in order of preference."
msgstr ""
@@ -1594,18 +1594,18 @@ msgstr ""
msgid "Load balance"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1494
+#: htdocs/luci-static/resources/view/fchomo/node.js:1552
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:277
msgid "Local"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:697
-#: htdocs/luci-static/resources/view/fchomo/node.js:740
+#: htdocs/luci-static/resources/view/fchomo/node.js:760
msgid "Local IPv6 address"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:689
-#: htdocs/luci-static/resources/view/fchomo/node.js:732
+#: htdocs/luci-static/resources/view/fchomo/node.js:752
msgid "Local address"
msgstr ""
@@ -1642,7 +1642,7 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/global.js:502
#: htdocs/luci-static/resources/view/fchomo/node.js:703
-#: htdocs/luci-static/resources/view/fchomo/node.js:786
+#: htdocs/luci-static/resources/view/fchomo/node.js:806
msgid "MTU"
msgstr ""
@@ -1682,7 +1682,7 @@ msgstr ""
msgid "Match rule set."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1224
+#: htdocs/luci-static/resources/view/fchomo/node.js:1244
msgid "Max Early Data"
msgstr ""
@@ -1691,6 +1691,15 @@ msgstr ""
msgid "Max UDP relay packet size"
msgstr ""
+#: htdocs/luci-static/resources/view/fchomo/node.js:1300
+msgid "Max concurrency"
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:731
+#: htdocs/luci-static/resources/view/fchomo/node.js:1295
+msgid "Max connections"
+msgstr ""
+
#: htdocs/luci-static/resources/view/fchomo/client.js:1128
msgid "Max count of failures"
msgstr ""
@@ -1700,21 +1709,47 @@ msgstr ""
msgid "Max download speed"
msgstr ""
+#: htdocs/luci-static/resources/fchomo/listeners.js:1033
+#: htdocs/luci-static/resources/view/fchomo/node.js:1284
+msgid "Max each POST bytes"
+msgstr ""
+
#: htdocs/luci-static/resources/view/fchomo/node.js:573
msgid "Max open streams"
msgstr ""
+#: htdocs/luci-static/resources/view/fchomo/node.js:1310
+msgid "Max request times"
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:1315
+msgid "Max reusable seconds"
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:1305
+msgid "Max reuse times"
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:744
+msgid "Max streams"
+msgstr ""
+
#: htdocs/luci-static/resources/fchomo/listeners.js:174
#: htdocs/luci-static/resources/view/fchomo/node.js:285
msgid "Max upload speed"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1277
-#: htdocs/luci-static/resources/view/fchomo/node.js:1293
+#: htdocs/luci-static/resources/view/fchomo/node.js:1335
+#: htdocs/luci-static/resources/view/fchomo/node.js:1351
msgid "Maximum connections"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1291
+#: htdocs/luci-static/resources/view/fchomo/node.js:745
+msgid ""
+"Maximum multiplexed streams in a connection before opening a new connection."
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:1349
msgid ""
"Maximum multiplexed streams in a connection before opening a new connection."
"%s and %s."
@@ -1732,7 +1767,7 @@ msgid ""
"rate."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1290
+#: htdocs/luci-static/resources/view/fchomo/node.js:1348
msgid "Maximum streams"
msgstr ""
@@ -1757,7 +1792,12 @@ msgstr ""
msgid "Min of idle sessions to keep"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1284
+#: htdocs/luci-static/resources/view/fchomo/node.js:737
+msgid "Min streams"
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:738
+#: htdocs/luci-static/resources/view/fchomo/node.js:1342
msgid ""
"Minimum multiplexed streams in a connection before opening a new connection."
msgstr ""
@@ -1767,8 +1807,8 @@ msgstr ""
msgid "Minimum padding rate"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1283
-#: htdocs/luci-static/resources/view/fchomo/node.js:1293
+#: htdocs/luci-static/resources/view/fchomo/node.js:1341
+#: htdocs/luci-static/resources/view/fchomo/node.js:1351
msgid "Minimum streams"
msgstr ""
@@ -1785,7 +1825,7 @@ msgstr ""
msgid "Mixed port"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1263
+#: htdocs/luci-static/resources/view/fchomo/node.js:1321
msgid "Multiplex"
msgstr ""
@@ -1807,7 +1847,7 @@ msgstr ""
msgid "Name of the Proxy group as outbound."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1569
+#: htdocs/luci-static/resources/view/fchomo/node.js:1627
msgid "Name of the Proxy group to download provider."
msgstr ""
@@ -1835,16 +1875,20 @@ msgstr ""
msgid "No Authentication IP ranges"
msgstr ""
+#: htdocs/luci-static/resources/fchomo/listeners.js:1023
+msgid "No SSE header"
+msgstr ""
+
#: htdocs/luci-static/resources/view/fchomo/client.js:1508
msgid "No add'l params"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1252
+#: htdocs/luci-static/resources/view/fchomo/node.js:1274
msgid "No gRPC header"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1115
-#: htdocs/luci-static/resources/view/fchomo/node.js:1715
+#: htdocs/luci-static/resources/view/fchomo/node.js:1773
msgid "No testing is performed when this provider node is not in use."
msgstr ""
@@ -1863,17 +1907,17 @@ msgid "Node"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1160
-#: htdocs/luci-static/resources/view/fchomo/node.js:1735
+#: htdocs/luci-static/resources/view/fchomo/node.js:1793
msgid "Node exclude filter"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1165
-#: htdocs/luci-static/resources/view/fchomo/node.js:1742
+#: htdocs/luci-static/resources/view/fchomo/node.js:1800
msgid "Node exclude type"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1155
-#: htdocs/luci-static/resources/view/fchomo/node.js:1729
+#: htdocs/luci-static/resources/view/fchomo/node.js:1787
msgid "Node filter"
msgstr ""
@@ -1901,7 +1945,7 @@ msgstr ""
msgid "ON"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:815
+#: htdocs/luci-static/resources/view/fchomo/node.js:835
msgid "Obfs Mode"
msgstr ""
@@ -1951,7 +1995,7 @@ msgid "Override destination"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1010
-#: htdocs/luci-static/resources/view/fchomo/node.js:1480
+#: htdocs/luci-static/resources/view/fchomo/node.js:1538
msgid "Override fields"
msgstr ""
@@ -1971,7 +2015,7 @@ msgstr ""
msgid "Override the existing ECS in original request."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1086
+#: htdocs/luci-static/resources/view/fchomo/node.js:1106
msgid "Overrides the domain name used for HTTPS record queries."
msgstr ""
@@ -1979,11 +2023,11 @@ msgstr ""
msgid "Overview"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1181
+#: htdocs/luci-static/resources/view/fchomo/node.js:1201
msgid "POST"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1182
+#: htdocs/luci-static/resources/view/fchomo/node.js:1202
msgid "PUT"
msgstr ""
@@ -1991,7 +2035,7 @@ msgstr ""
msgid "Packet encoding"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1257
+#: htdocs/luci-static/resources/view/fchomo/node.js:1279
msgid "Padding bytes"
msgstr ""
@@ -2000,7 +2044,7 @@ msgid "Padding scheme"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:647
-#: htdocs/luci-static/resources/view/fchomo/node.js:929
+#: htdocs/luci-static/resources/view/fchomo/node.js:949
msgid "Paddings"
msgstr ""
@@ -2009,17 +2053,17 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:508
#: htdocs/luci-static/resources/view/fchomo/node.js:261
#: htdocs/luci-static/resources/view/fchomo/node.js:340
-#: htdocs/luci-static/resources/view/fchomo/node.js:830
+#: htdocs/luci-static/resources/view/fchomo/node.js:850
msgid "Password"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:587
-#: htdocs/luci-static/resources/view/fchomo/node.js:1544
+#: htdocs/luci-static/resources/view/fchomo/node.js:1602
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:364
msgid "Payload"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:754
+#: htdocs/luci-static/resources/view/fchomo/node.js:774
msgid "Peer pubkic key"
msgstr ""
@@ -2029,11 +2073,11 @@ msgid ""
"it is not needed."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:781
+#: htdocs/luci-static/resources/view/fchomo/node.js:801
msgid "Periodically sends data packets to maintain connection persistence."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:780
+#: htdocs/luci-static/resources/view/fchomo/node.js:800
msgid "Persistent keepalive"
msgstr ""
@@ -2054,8 +2098,8 @@ msgid ""
"standards."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1517
-#: htdocs/luci-static/resources/view/fchomo/node.js:1543
+#: htdocs/luci-static/resources/view/fchomo/node.js:1575
+#: htdocs/luci-static/resources/view/fchomo/node.js:1601
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:337
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:363
msgid ""
@@ -2069,25 +2113,25 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1445
#: htdocs/luci-static/resources/view/fchomo/client.js:1697
#: htdocs/luci-static/resources/view/fchomo/client.js:1749
-#: htdocs/luci-static/resources/view/fchomo/node.js:1387
+#: htdocs/luci-static/resources/view/fchomo/node.js:1445
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:154
msgid "Please type %s fields of mihomo config."
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:494
-#: htdocs/luci-static/resources/view/fchomo/node.js:804
+#: htdocs/luci-static/resources/view/fchomo/node.js:824
msgid "Plugin"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:501
#: htdocs/luci-static/resources/fchomo/listeners.js:508
#: htdocs/luci-static/resources/fchomo/listeners.js:514
-#: htdocs/luci-static/resources/view/fchomo/node.js:815
-#: htdocs/luci-static/resources/view/fchomo/node.js:822
-#: htdocs/luci-static/resources/view/fchomo/node.js:830
-#: htdocs/luci-static/resources/view/fchomo/node.js:836
-#: htdocs/luci-static/resources/view/fchomo/node.js:844
+#: htdocs/luci-static/resources/view/fchomo/node.js:835
+#: htdocs/luci-static/resources/view/fchomo/node.js:842
#: htdocs/luci-static/resources/view/fchomo/node.js:850
+#: htdocs/luci-static/resources/view/fchomo/node.js:856
+#: htdocs/luci-static/resources/view/fchomo/node.js:864
+#: htdocs/luci-static/resources/view/fchomo/node.js:870
msgid "Plugin:"
msgstr ""
@@ -2117,7 +2161,7 @@ msgid "Ports pool"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:499
-#: htdocs/luci-static/resources/view/fchomo/node.js:761
+#: htdocs/luci-static/resources/view/fchomo/node.js:781
msgid "Pre-shared key"
msgstr ""
@@ -2136,10 +2180,10 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/global.js:736
#: htdocs/luci-static/resources/view/fchomo/global.js:753
-#: htdocs/luci-static/resources/view/fchomo/node.js:1351
-#: htdocs/luci-static/resources/view/fchomo/node.js:1357
-#: htdocs/luci-static/resources/view/fchomo/node.js:1664
-#: htdocs/luci-static/resources/view/fchomo/node.js:1671
+#: htdocs/luci-static/resources/view/fchomo/node.js:1409
+#: htdocs/luci-static/resources/view/fchomo/node.js:1415
+#: htdocs/luci-static/resources/view/fchomo/node.js:1722
+#: htdocs/luci-static/resources/view/fchomo/node.js:1729
msgid "Priority: Proxy Node > Global."
msgstr ""
@@ -2152,7 +2196,7 @@ msgid "Priv-key passphrase"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:674
-#: htdocs/luci-static/resources/view/fchomo/node.js:746
+#: htdocs/luci-static/resources/view/fchomo/node.js:766
msgid "Private key"
msgstr ""
@@ -2161,7 +2205,7 @@ msgid "Process matching mode"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/global.js:684
-#: htdocs/luci-static/resources/view/fchomo/node.js:1269
+#: htdocs/luci-static/resources/view/fchomo/node.js:1327
msgid "Protocol"
msgstr ""
@@ -2176,13 +2220,13 @@ msgid ""
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1055
-#: htdocs/luci-static/resources/view/fchomo/node.js:1370
-#: htdocs/luci-static/resources/view/fchomo/node.js:1379
-#: htdocs/luci-static/resources/view/fchomo/node.js:1780
+#: htdocs/luci-static/resources/view/fchomo/node.js:1428
+#: htdocs/luci-static/resources/view/fchomo/node.js:1437
+#: htdocs/luci-static/resources/view/fchomo/node.js:1838
msgid "Provider"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1550
+#: htdocs/luci-static/resources/view/fchomo/node.js:1608
msgid "Provider URL"
msgstr ""
@@ -2205,19 +2249,19 @@ msgid "Proxy MAC-s"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:208
-#: htdocs/luci-static/resources/view/fchomo/node.js:1779
+#: htdocs/luci-static/resources/view/fchomo/node.js:1837
msgid "Proxy Node"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1755
-#: htdocs/luci-static/resources/view/fchomo/node.js:1764
+#: htdocs/luci-static/resources/view/fchomo/node.js:1813
+#: htdocs/luci-static/resources/view/fchomo/node.js:1822
msgid "Proxy chain"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:530
#: htdocs/luci-static/resources/view/fchomo/client.js:783
#: htdocs/luci-static/resources/view/fchomo/client.js:1543
-#: htdocs/luci-static/resources/view/fchomo/node.js:1568
+#: htdocs/luci-static/resources/view/fchomo/node.js:1626
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:388
msgid "Proxy group"
msgstr ""
@@ -2245,11 +2289,11 @@ msgid "Quick Reload"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:917
-#: htdocs/luci-static/resources/view/fchomo/node.js:1100
+#: htdocs/luci-static/resources/view/fchomo/node.js:1120
msgid "REALITY"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1115
+#: htdocs/luci-static/resources/view/fchomo/node.js:1135
msgid "REALITY X25519MLKEM768 PQC support"
msgstr ""
@@ -2266,18 +2310,18 @@ msgid "REALITY private key"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:944
-#: htdocs/luci-static/resources/view/fchomo/node.js:1105
+#: htdocs/luci-static/resources/view/fchomo/node.js:1125
msgid "REALITY public key"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:948
-#: htdocs/luci-static/resources/view/fchomo/node.js:1110
+#: htdocs/luci-static/resources/view/fchomo/node.js:1130
msgid "REALITY short ID"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:618
#: htdocs/luci-static/resources/fchomo/listeners.js:637
-#: htdocs/luci-static/resources/view/fchomo/node.js:919
+#: htdocs/luci-static/resources/view/fchomo/node.js:939
msgid "RTT"
msgstr ""
@@ -2324,13 +2368,13 @@ msgstr ""
msgid "Reload All"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1495
+#: htdocs/luci-static/resources/view/fchomo/node.js:1553
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:278
msgid "Remote"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:709
-#: htdocs/luci-static/resources/view/fchomo/node.js:792
+#: htdocs/luci-static/resources/view/fchomo/node.js:812
msgid "Remote DNS resolve"
msgstr ""
@@ -2339,18 +2383,18 @@ msgid "Remove"
msgstr ""
#: htdocs/luci-static/resources/fchomo.js:1354
-#: htdocs/luci-static/resources/view/fchomo/node.js:1471
-#: htdocs/luci-static/resources/view/fchomo/node.js:1473
+#: htdocs/luci-static/resources/view/fchomo/node.js:1529
+#: htdocs/luci-static/resources/view/fchomo/node.js:1531
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:251
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:253
msgid "Remove idles"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1597
+#: htdocs/luci-static/resources/view/fchomo/node.js:1655
msgid "Replace name"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1598
+#: htdocs/luci-static/resources/view/fchomo/node.js:1656
msgid "Replace node name."
msgstr ""
@@ -2358,9 +2402,9 @@ msgstr ""
msgid "Request"
msgstr ""
-#: htdocs/luci-static/resources/fchomo/listeners.js:996
-#: htdocs/luci-static/resources/view/fchomo/node.js:1188
-#: htdocs/luci-static/resources/view/fchomo/node.js:1195
+#: htdocs/luci-static/resources/fchomo/listeners.js:1002
+#: htdocs/luci-static/resources/view/fchomo/node.js:1208
+#: htdocs/luci-static/resources/view/fchomo/node.js:1215
msgid "Request path"
msgstr ""
@@ -2377,11 +2421,11 @@ msgid "Require any"
msgstr ""
#: htdocs/luci-static/resources/fchomo.js:384
-#: htdocs/luci-static/resources/view/fchomo/node.js:1116
+#: htdocs/luci-static/resources/view/fchomo/node.js:1136
msgid "Requires server support."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:775
+#: htdocs/luci-static/resources/view/fchomo/node.js:795
msgid "Reserved field bytes"
msgstr ""
@@ -2389,7 +2433,7 @@ msgstr ""
msgid "Resources management"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:850
+#: htdocs/luci-static/resources/view/fchomo/node.js:870
msgid "Restls script"
msgstr ""
@@ -2425,8 +2469,8 @@ msgstr ""
msgid "Routing GFW"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1356
-#: htdocs/luci-static/resources/view/fchomo/node.js:1670
+#: htdocs/luci-static/resources/view/fchomo/node.js:1414
+#: htdocs/luci-static/resources/view/fchomo/node.js:1728
msgid "Routing mark"
msgstr ""
@@ -2514,7 +2558,7 @@ msgstr ""
msgid "SUB-RULE"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:876
+#: htdocs/luci-static/resources/view/fchomo/node.js:896
msgid "SUoT version"
msgstr ""
@@ -2564,8 +2608,9 @@ msgstr ""
msgid "Server address"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1167
-#: htdocs/luci-static/resources/view/fchomo/node.js:1173
+#: htdocs/luci-static/resources/fchomo/listeners.js:996
+#: htdocs/luci-static/resources/view/fchomo/node.js:1187
+#: htdocs/luci-static/resources/view/fchomo/node.js:1193
msgid "Server hostname"
msgstr ""
@@ -2597,7 +2642,7 @@ msgstr ""
msgid "Shadowsocks password"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1311
+#: htdocs/luci-static/resources/view/fchomo/node.js:1369
msgid "Show connections in the dashboard for breaking connections easier."
msgstr ""
@@ -2609,14 +2654,14 @@ msgstr ""
msgid "Simple round-robin all nodes"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1556
+#: htdocs/luci-static/resources/view/fchomo/node.js:1614
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:376
msgid "Size limit"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1576
-#: htdocs/luci-static/resources/view/fchomo/node.js:1037
-#: htdocs/luci-static/resources/view/fchomo/node.js:1648
+#: htdocs/luci-static/resources/view/fchomo/node.js:1057
+#: htdocs/luci-static/resources/view/fchomo/node.js:1706
msgid "Skip cert verify"
msgstr ""
@@ -2742,7 +2787,7 @@ msgstr ""
msgid "TCP concurrency"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1304
+#: htdocs/luci-static/resources/view/fchomo/node.js:1362
msgid "TCP only"
msgstr ""
@@ -2768,25 +2813,25 @@ msgstr ""
msgid "TCP/UDP"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1335
-#: htdocs/luci-static/resources/view/fchomo/node.js:1615
+#: htdocs/luci-static/resources/view/fchomo/node.js:1393
+#: htdocs/luci-static/resources/view/fchomo/node.js:1673
msgid "TFO"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:772
#: htdocs/luci-static/resources/view/fchomo/global.js:529
#: htdocs/luci-static/resources/view/fchomo/node.js:464
-#: htdocs/luci-static/resources/view/fchomo/node.js:817
-#: htdocs/luci-static/resources/view/fchomo/node.js:951
+#: htdocs/luci-static/resources/view/fchomo/node.js:837
+#: htdocs/luci-static/resources/view/fchomo/node.js:971
msgid "TLS"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:809
-#: htdocs/luci-static/resources/view/fchomo/node.js:982
+#: htdocs/luci-static/resources/view/fchomo/node.js:1002
msgid "TLS ALPN"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:976
+#: htdocs/luci-static/resources/view/fchomo/node.js:996
msgid "TLS SNI"
msgstr ""
@@ -2818,24 +2863,24 @@ msgstr ""
msgid "The %s address used by local machine in the Cloudflare WARP network."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:733
-#: htdocs/luci-static/resources/view/fchomo/node.js:741
+#: htdocs/luci-static/resources/view/fchomo/node.js:753
+#: htdocs/luci-static/resources/view/fchomo/node.js:761
msgid "The %s address used by local machine in the Wireguard network."
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:830
-#: htdocs/luci-static/resources/view/fchomo/node.js:1060
+#: htdocs/luci-static/resources/view/fchomo/node.js:1080
msgid "The %s private key, in PEM format."
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:815
#: htdocs/luci-static/resources/fchomo/listeners.js:853
#: htdocs/luci-static/resources/view/fchomo/global.js:550
-#: htdocs/luci-static/resources/view/fchomo/node.js:1046
+#: htdocs/luci-static/resources/view/fchomo/node.js:1066
msgid "The %s public key, in PEM format."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1080
+#: htdocs/luci-static/resources/view/fchomo/node.js:1100
msgid ""
"The ECH parameter of the HTTPS record for the domain. Leave empty to resolve "
"via DNS."
@@ -2854,7 +2899,7 @@ msgid "The default value is 2:00 every day."
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:650
-#: htdocs/luci-static/resources/view/fchomo/node.js:932
+#: htdocs/luci-static/resources/view/fchomo/node.js:952
msgid ""
"The first padding must have a probability of 100% and at least 35 bytes."
msgstr ""
@@ -2870,7 +2915,7 @@ msgid "The matching %s will be deemed as poisoned."
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:648
-#: htdocs/luci-static/resources/view/fchomo/node.js:930
+#: htdocs/luci-static/resources/view/fchomo/node.js:950
msgid "The server and client can set different padding parameters."
msgstr ""
@@ -2880,8 +2925,8 @@ msgid "This ECH parameter needs to be added to the HTTPS record of the domain."
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1579
-#: htdocs/luci-static/resources/view/fchomo/node.js:1040
-#: htdocs/luci-static/resources/view/fchomo/node.js:1651
+#: htdocs/luci-static/resources/view/fchomo/node.js:1060
+#: htdocs/luci-static/resources/view/fchomo/node.js:1709
msgid ""
"This is DANGEROUS, your traffic is almost like "
"PLAIN TEXT! Use at your own risk!"
@@ -2921,18 +2966,18 @@ msgstr ""
msgid "Traffic pattern"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1807
+#: htdocs/luci-static/resources/view/fchomo/node.js:1865
msgid "Transit proxy group"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1813
+#: htdocs/luci-static/resources/view/fchomo/node.js:1871
msgid "Transit proxy node"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:231
#: htdocs/luci-static/resources/fchomo/listeners.js:962
#: htdocs/luci-static/resources/view/fchomo/node.js:355
-#: htdocs/luci-static/resources/view/fchomo/node.js:1122
+#: htdocs/luci-static/resources/view/fchomo/node.js:1142
msgid "Transport"
msgstr ""
@@ -2942,7 +2987,7 @@ msgid "Transport fields"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:967
-#: htdocs/luci-static/resources/view/fchomo/node.js:1127
+#: htdocs/luci-static/resources/view/fchomo/node.js:1147
msgid "Transport type"
msgstr ""
@@ -2987,8 +3032,8 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:842
#: htdocs/luci-static/resources/view/fchomo/client.js:1028
#: htdocs/luci-static/resources/view/fchomo/node.js:238
-#: htdocs/luci-static/resources/view/fchomo/node.js:1493
-#: htdocs/luci-static/resources/view/fchomo/node.js:1778
+#: htdocs/luci-static/resources/view/fchomo/node.js:1551
+#: htdocs/luci-static/resources/view/fchomo/node.js:1836
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:276
msgid "Type"
msgstr ""
@@ -3003,8 +3048,8 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:555
#: htdocs/luci-static/resources/view/fchomo/client.js:588
#: htdocs/luci-static/resources/view/fchomo/client.js:678
-#: htdocs/luci-static/resources/view/fchomo/node.js:865
-#: htdocs/luci-static/resources/view/fchomo/node.js:1625
+#: htdocs/luci-static/resources/view/fchomo/node.js:885
+#: htdocs/luci-static/resources/view/fchomo/node.js:1683
msgid "UDP"
msgstr ""
@@ -3072,8 +3117,8 @@ msgstr ""
msgid "Unknown error: %s"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:870
-#: htdocs/luci-static/resources/view/fchomo/node.js:1630
+#: htdocs/luci-static/resources/view/fchomo/node.js:890
+#: htdocs/luci-static/resources/view/fchomo/node.js:1688
msgid "UoT"
msgstr ""
@@ -3081,22 +3126,22 @@ msgstr ""
msgid "Update failed."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1562
+#: htdocs/luci-static/resources/view/fchomo/node.js:1620
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:382
msgid "Update interval"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1322
+#: htdocs/luci-static/resources/view/fchomo/node.js:1380
msgid "Upload bandwidth"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1323
+#: htdocs/luci-static/resources/view/fchomo/node.js:1381
msgid "Upload bandwidth in Mbps."
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:821
#: htdocs/luci-static/resources/fchomo/listeners.js:861
-#: htdocs/luci-static/resources/view/fchomo/node.js:1051
+#: htdocs/luci-static/resources/view/fchomo/node.js:1071
msgid "Upload certificate"
msgstr ""
@@ -3105,7 +3150,7 @@ msgid "Upload initial package"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:836
-#: htdocs/luci-static/resources/view/fchomo/node.js:1065
+#: htdocs/luci-static/resources/view/fchomo/node.js:1085
msgid "Upload key"
msgstr ""
@@ -3113,8 +3158,8 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:839
#: htdocs/luci-static/resources/fchomo/listeners.js:864
#: htdocs/luci-static/resources/view/fchomo/global.js:306
-#: htdocs/luci-static/resources/view/fchomo/node.js:1054
-#: htdocs/luci-static/resources/view/fchomo/node.js:1068
+#: htdocs/luci-static/resources/view/fchomo/node.js:1074
+#: htdocs/luci-static/resources/view/fchomo/node.js:1088
msgid "Upload..."
msgstr ""
@@ -3138,7 +3183,7 @@ msgstr ""
msgid "Used to resolve the domain of the Proxy node."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:977
+#: htdocs/luci-static/resources/view/fchomo/node.js:997
msgid "Used to verify the hostname on the returned certificates."
msgstr ""
@@ -3155,11 +3200,11 @@ msgstr ""
msgid "Users filter mode"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1236
+#: htdocs/luci-static/resources/view/fchomo/node.js:1256
msgid "V2ray HTTPUpgrade"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1241
+#: htdocs/luci-static/resources/view/fchomo/node.js:1261
msgid "V2ray HTTPUpgrade fast open"
msgstr ""
@@ -3173,8 +3218,8 @@ msgstr ""
msgid "VMess"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1499
-#: htdocs/luci-static/resources/view/fchomo/node.js:1784
+#: htdocs/luci-static/resources/view/fchomo/node.js:1557
+#: htdocs/luci-static/resources/view/fchomo/node.js:1842
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:319
msgid "Value"
msgstr ""
@@ -3185,11 +3230,11 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:514
#: htdocs/luci-static/resources/view/fchomo/node.js:506
-#: htdocs/luci-static/resources/view/fchomo/node.js:836
+#: htdocs/luci-static/resources/view/fchomo/node.js:856
msgid "Version"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:844
+#: htdocs/luci-static/resources/view/fchomo/node.js:864
msgid "Version hint"
msgstr ""
@@ -3208,14 +3253,14 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:393
#: htdocs/luci-static/resources/fchomo/listeners.js:969
-#: htdocs/luci-static/resources/fchomo/listeners.js:980
+#: htdocs/luci-static/resources/fchomo/listeners.js:978
#: htdocs/luci-static/resources/fchomo/listeners.js:985
#: htdocs/luci-static/resources/view/fchomo/node.js:460
#: htdocs/luci-static/resources/view/fchomo/node.js:489
-#: htdocs/luci-static/resources/view/fchomo/node.js:1132
-#: htdocs/luci-static/resources/view/fchomo/node.js:1143
-#: htdocs/luci-static/resources/view/fchomo/node.js:1150
-#: htdocs/luci-static/resources/view/fchomo/node.js:1156
+#: htdocs/luci-static/resources/view/fchomo/node.js:1152
+#: htdocs/luci-static/resources/view/fchomo/node.js:1163
+#: htdocs/luci-static/resources/view/fchomo/node.js:1170
+#: htdocs/luci-static/resources/view/fchomo/node.js:1176
msgid "WebSocket"
msgstr ""
@@ -3231,27 +3276,42 @@ msgstr ""
msgid "WireGuard"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:755
+#: htdocs/luci-static/resources/view/fchomo/node.js:775
msgid "WireGuard peer public key."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:762
+#: htdocs/luci-static/resources/view/fchomo/node.js:782
msgid "WireGuard pre-shared key."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:747
+#: htdocs/luci-static/resources/view/fchomo/node.js:767
msgid "WireGuard requires base64-encoded private keys."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1133
-#: htdocs/luci-static/resources/view/fchomo/node.js:1151
+#: htdocs/luci-static/resources/fchomo/listeners.js:970
+#: htdocs/luci-static/resources/fchomo/listeners.js:979
+#: htdocs/luci-static/resources/view/fchomo/node.js:1153
+#: htdocs/luci-static/resources/view/fchomo/node.js:1171
msgid "XHTTP"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1246
+#: htdocs/luci-static/resources/fchomo/listeners.js:1015
+#: htdocs/luci-static/resources/view/fchomo/node.js:1266
msgid "XHTTP mode"
msgstr ""
+#: htdocs/luci-static/resources/view/fchomo/node.js:1290
+msgid "XMUX"
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:1295
+#: htdocs/luci-static/resources/view/fchomo/node.js:1300
+#: htdocs/luci-static/resources/view/fchomo/node.js:1305
+#: htdocs/luci-static/resources/view/fchomo/node.js:1310
+#: htdocs/luci-static/resources/view/fchomo/node.js:1315
+msgid "XMUX:"
+msgstr ""
+
#: htdocs/luci-static/resources/fchomo/listeners.js:609
msgid "XOR mode"
msgstr ""
@@ -3298,7 +3358,7 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:826
#: htdocs/luci-static/resources/fchomo/listeners.js:866
-#: htdocs/luci-static/resources/view/fchomo/node.js:1056
+#: htdocs/luci-static/resources/view/fchomo/node.js:1076
msgid "certificate"
msgstr ""
@@ -3325,13 +3385,13 @@ msgstr ""
msgid "dnsmasq selects upstream on its own. (may affect CDN accuracy)"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1642
+#: htdocs/luci-static/resources/view/fchomo/node.js:1700
msgid "down"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:596
-#: htdocs/luci-static/resources/view/fchomo/node.js:884
-#: htdocs/luci-static/resources/view/fchomo/node.js:907
+#: htdocs/luci-static/resources/view/fchomo/node.js:904
+#: htdocs/luci-static/resources/view/fchomo/node.js:927
msgid "encryption"
msgstr ""
@@ -3341,25 +3401,25 @@ msgid "false = bandwidth optimized downlink; true = pure Sudoku downlink."
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:968
-#: htdocs/luci-static/resources/fchomo/listeners.js:979
+#: htdocs/luci-static/resources/fchomo/listeners.js:977
#: htdocs/luci-static/resources/fchomo/listeners.js:984
-#: htdocs/luci-static/resources/view/fchomo/node.js:1131
-#: htdocs/luci-static/resources/view/fchomo/node.js:1142
-#: htdocs/luci-static/resources/view/fchomo/node.js:1149
-#: htdocs/luci-static/resources/view/fchomo/node.js:1155
+#: htdocs/luci-static/resources/view/fchomo/node.js:1151
+#: htdocs/luci-static/resources/view/fchomo/node.js:1162
+#: htdocs/luci-static/resources/view/fchomo/node.js:1169
+#: htdocs/luci-static/resources/view/fchomo/node.js:1175
msgid "gRPC"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1212
+#: htdocs/luci-static/resources/view/fchomo/node.js:1232
msgid "gRPC User-Agent"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1217
+#: htdocs/luci-static/resources/view/fchomo/node.js:1237
msgid "gRPC ping interval"
msgstr ""
-#: htdocs/luci-static/resources/fchomo/listeners.js:1003
-#: htdocs/luci-static/resources/view/fchomo/node.js:1208
+#: htdocs/luci-static/resources/fchomo/listeners.js:1009
+#: htdocs/luci-static/resources/view/fchomo/node.js:1228
msgid "gRPC service name"
msgstr ""
@@ -3367,7 +3427,7 @@ msgstr ""
msgid "gVisor"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1273
+#: htdocs/luci-static/resources/view/fchomo/node.js:1331
msgid "h2mux"
msgstr ""
@@ -3385,7 +3445,7 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1480
#: htdocs/luci-static/resources/view/fchomo/client.js:1711
#: htdocs/luci-static/resources/view/fchomo/client.js:1767
-#: htdocs/luci-static/resources/view/fchomo/node.js:1465
+#: htdocs/luci-static/resources/view/fchomo/node.js:1523
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:239
msgid "mihomo config"
msgstr ""
@@ -3394,8 +3454,8 @@ msgstr ""
msgid "mlkem768x25519plus"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1339
-#: htdocs/luci-static/resources/view/fchomo/node.js:1620
+#: htdocs/luci-static/resources/view/fchomo/node.js:1397
+#: htdocs/luci-static/resources/view/fchomo/node.js:1678
msgid "mpTCP"
msgstr ""
@@ -3420,7 +3480,7 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:495
#: htdocs/luci-static/resources/view/fchomo/node.js:647
#: htdocs/luci-static/resources/view/fchomo/node.js:667
-#: htdocs/luci-static/resources/view/fchomo/node.js:805
+#: htdocs/luci-static/resources/view/fchomo/node.js:825
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:315
msgid "none"
msgstr ""
@@ -3439,7 +3499,7 @@ msgstr ""
msgid "null"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:806
+#: htdocs/luci-static/resources/view/fchomo/node.js:826
msgid "obfs-simple"
msgstr ""
@@ -3451,7 +3511,7 @@ msgstr ""
msgid "only applies when %s is not %s."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1600
+#: htdocs/luci-static/resources/view/fchomo/node.js:1658
msgid "override.proxy-name"
msgstr ""
@@ -3459,7 +3519,8 @@ msgstr ""
msgid "packet addr (v2ray-core v5+)"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1248
+#: htdocs/luci-static/resources/fchomo/listeners.js:1019
+#: htdocs/luci-static/resources/view/fchomo/node.js:1270
msgid "packet-up"
msgstr ""
@@ -3469,7 +3530,7 @@ msgid "poll"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:841
-#: htdocs/luci-static/resources/view/fchomo/node.js:1070
+#: htdocs/luci-static/resources/view/fchomo/node.js:1090
msgid "private key"
msgstr ""
@@ -3482,7 +3543,7 @@ msgstr ""
msgid "requires front-end adaptation using the API."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:810
+#: htdocs/luci-static/resources/view/fchomo/node.js:830
msgid "restls"
msgstr ""
@@ -3491,11 +3552,11 @@ msgid "rule-set"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:496
-#: htdocs/luci-static/resources/view/fchomo/node.js:809
+#: htdocs/luci-static/resources/view/fchomo/node.js:829
msgid "shadow-tls"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1271
+#: htdocs/luci-static/resources/view/fchomo/node.js:1329
msgid "smux"
msgstr ""
@@ -3508,10 +3569,20 @@ msgstr ""
msgid "src"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1247
+#: htdocs/luci-static/resources/fchomo/listeners.js:1017
+#: htdocs/luci-static/resources/view/fchomo/node.js:1268
msgid "stream-one"
msgstr ""
+#: htdocs/luci-static/resources/fchomo/listeners.js:1018
+#: htdocs/luci-static/resources/view/fchomo/node.js:1269
+msgid "stream-up"
+msgstr ""
+
+#: htdocs/luci-static/resources/fchomo/listeners.js:1028
+msgid "stream-up server seconds"
+msgstr ""
+
#: htdocs/luci-static/resources/view/fchomo/node.js:491
msgid "stream/poll/auto"
msgstr ""
@@ -3536,28 +3607,28 @@ msgstr ""
msgid "unique value"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1636
+#: htdocs/luci-static/resources/view/fchomo/node.js:1694
msgid "up"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:515
#: htdocs/luci-static/resources/view/fchomo/node.js:507
#: htdocs/luci-static/resources/view/fchomo/node.js:542
-#: htdocs/luci-static/resources/view/fchomo/node.js:837
-#: htdocs/luci-static/resources/view/fchomo/node.js:877
+#: htdocs/luci-static/resources/view/fchomo/node.js:857
+#: htdocs/luci-static/resources/view/fchomo/node.js:897
msgid "v1"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:516
#: htdocs/luci-static/resources/view/fchomo/node.js:508
-#: htdocs/luci-static/resources/view/fchomo/node.js:838
-#: htdocs/luci-static/resources/view/fchomo/node.js:878
+#: htdocs/luci-static/resources/view/fchomo/node.js:858
+#: htdocs/luci-static/resources/view/fchomo/node.js:898
msgid "v2"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:517
#: htdocs/luci-static/resources/view/fchomo/node.js:509
-#: htdocs/luci-static/resources/view/fchomo/node.js:839
+#: htdocs/luci-static/resources/view/fchomo/node.js:859
msgid "v3"
msgstr ""
@@ -3566,7 +3637,7 @@ msgstr ""
msgid "valid JSON format"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1030
+#: htdocs/luci-static/resources/view/fchomo/node.js:1050
msgid "valid SHA256 string with %d characters"
msgstr ""
@@ -3612,7 +3683,7 @@ msgstr ""
msgid "yacd-meta"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1272
+#: htdocs/luci-static/resources/view/fchomo/node.js:1330
msgid "yamux"
msgstr ""
diff --git a/luci-app-fchomo/po/zh_Hans/fchomo.po b/luci-app-fchomo/po/zh_Hans/fchomo.po
index 359a8051..44275e42 100644
--- a/luci-app-fchomo/po/zh_Hans/fchomo.po
+++ b/luci-app-fchomo/po/zh_Hans/fchomo.po
@@ -32,10 +32,10 @@ msgstr "(已导入)"
#: htdocs/luci-static/resources/fchomo/listeners.js:861
#: htdocs/luci-static/resources/view/fchomo/global.js:543
#: htdocs/luci-static/resources/view/fchomo/global.js:549
-#: htdocs/luci-static/resources/view/fchomo/node.js:1045
-#: htdocs/luci-static/resources/view/fchomo/node.js:1051
-#: htdocs/luci-static/resources/view/fchomo/node.js:1059
#: htdocs/luci-static/resources/view/fchomo/node.js:1065
+#: htdocs/luci-static/resources/view/fchomo/node.js:1071
+#: htdocs/luci-static/resources/view/fchomo/node.js:1079
+#: htdocs/luci-static/resources/view/fchomo/node.js:1085
msgid "(mTLS)"
msgstr ""
@@ -46,10 +46,10 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1056
#: htdocs/luci-static/resources/view/fchomo/client.js:1057
#: htdocs/luci-static/resources/view/fchomo/client.js:1278
-#: htdocs/luci-static/resources/view/fchomo/node.js:1788
-#: htdocs/luci-static/resources/view/fchomo/node.js:1794
-#: htdocs/luci-static/resources/view/fchomo/node.js:1808
-#: htdocs/luci-static/resources/view/fchomo/node.js:1814
+#: htdocs/luci-static/resources/view/fchomo/node.js:1846
+#: htdocs/luci-static/resources/view/fchomo/node.js:1852
+#: htdocs/luci-static/resources/view/fchomo/node.js:1866
+#: htdocs/luci-static/resources/view/fchomo/node.js:1872
msgid "-- Please choose --"
msgstr "-- 请选择 --"
@@ -85,8 +85,8 @@ msgstr "仅限 0 或 1。"
#: htdocs/luci-static/resources/fchomo/listeners.js:822
#: htdocs/luci-static/resources/fchomo/listeners.js:837
#: htdocs/luci-static/resources/fchomo/listeners.js:862
-#: htdocs/luci-static/resources/view/fchomo/node.js:1052
-#: htdocs/luci-static/resources/view/fchomo/node.js:1066
+#: htdocs/luci-static/resources/view/fchomo/node.js:1072
+#: htdocs/luci-static/resources/view/fchomo/node.js:1086
msgid "Save your configuration before uploading files!"
msgstr "上传文件前请先保存配置!"
@@ -182,11 +182,11 @@ msgstr "新增 节点"
msgid "Add a inbound"
msgstr "新增 入站"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1379
+#: htdocs/luci-static/resources/view/fchomo/node.js:1437
msgid "Add a provider"
msgstr "新增 供应商"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1764
+#: htdocs/luci-static/resources/view/fchomo/node.js:1822
msgid "Add a proxy chain"
msgstr "新增 代理链"
@@ -210,11 +210,11 @@ msgstr "新增 服务器"
msgid "Add a sub rule"
msgstr "新增 子规则"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1589
+#: htdocs/luci-static/resources/view/fchomo/node.js:1647
msgid "Add prefix"
msgstr "添加前缀"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1593
+#: htdocs/luci-static/resources/view/fchomo/node.js:1651
msgid "Add suffix"
msgstr "添加后缀"
@@ -251,7 +251,7 @@ msgid ""
msgstr ""
"允许从私有网络访问。要从公共网站访问私有网络上的 API,则必须启用。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:768
+#: htdocs/luci-static/resources/view/fchomo/node.js:788
msgid "Allowed IPs"
msgstr "允许的 IP"
@@ -295,9 +295,11 @@ msgid "Authenticated length"
msgstr "认证长度"
#: htdocs/luci-static/resources/fchomo/listeners.js:392
+#: htdocs/luci-static/resources/fchomo/listeners.js:1016
#: htdocs/luci-static/resources/view/fchomo/global.js:402
#: htdocs/luci-static/resources/view/fchomo/node.js:459
#: htdocs/luci-static/resources/view/fchomo/node.js:483
+#: htdocs/luci-static/resources/view/fchomo/node.js:1267
msgid "Auto"
msgstr "自动"
@@ -343,13 +345,13 @@ msgid "Binary mrs"
msgstr "二进制 mrs"
#: htdocs/luci-static/resources/view/fchomo/global.js:734
-#: htdocs/luci-static/resources/view/fchomo/node.js:1349
-#: htdocs/luci-static/resources/view/fchomo/node.js:1662
+#: htdocs/luci-static/resources/view/fchomo/node.js:1407
+#: htdocs/luci-static/resources/view/fchomo/node.js:1720
msgid "Bind interface"
msgstr "绑定接口"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1350
-#: htdocs/luci-static/resources/view/fchomo/node.js:1663
+#: htdocs/luci-static/resources/view/fchomo/node.js:1408
+#: htdocs/luci-static/resources/view/fchomo/node.js:1721
msgid "Bind outbound interface."
msgstr "绑定出站接口。"
@@ -414,17 +416,17 @@ msgstr "CORS 允许的来源,留空则使用 *。"
msgid "Cancel"
msgstr "取消"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1024
+#: htdocs/luci-static/resources/view/fchomo/node.js:1044
msgid "Cert fingerprint"
msgstr "证书指纹"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1025
+#: htdocs/luci-static/resources/view/fchomo/node.js:1045
msgid ""
"Certificate fingerprint. Used to implement SSL Pinning and prevent MitM."
msgstr "证书指纹。用于实现 SSL证书固定 并防止 MitM。"
#: htdocs/luci-static/resources/fchomo/listeners.js:814
-#: htdocs/luci-static/resources/view/fchomo/node.js:1045
+#: htdocs/luci-static/resources/view/fchomo/node.js:1065
msgid "Certificate path"
msgstr "证书路径"
@@ -481,9 +483,9 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:637
#: htdocs/luci-static/resources/fchomo/listeners.js:853
#: htdocs/luci-static/resources/view/fchomo/global.js:550
-#: htdocs/luci-static/resources/view/fchomo/node.js:919
-#: htdocs/luci-static/resources/view/fchomo/node.js:1046
-#: htdocs/luci-static/resources/view/fchomo/node.js:1060
+#: htdocs/luci-static/resources/view/fchomo/node.js:939
+#: htdocs/luci-static/resources/view/fchomo/node.js:1066
+#: htdocs/luci-static/resources/view/fchomo/node.js:1080
#: root/usr/share/luci/menu.d/luci-app-fchomo.json:22
msgid "Client"
msgstr "客户端"
@@ -496,7 +498,7 @@ msgstr "客户端认证证书路径"
msgid "Client Auth type"
msgstr "客户端认证类型"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1091
+#: htdocs/luci-static/resources/view/fchomo/node.js:1111
msgid "Client fingerprint"
msgstr "客户端指纹"
@@ -521,12 +523,12 @@ msgstr "常用端口(绕过 P2P 流量)"
msgid "Complete"
msgstr "完成"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1609
+#: htdocs/luci-static/resources/view/fchomo/node.js:1667
msgid "Configuration Items"
msgstr "配置项"
#: htdocs/luci-static/resources/fchomo/listeners.js:540
-#: htdocs/luci-static/resources/view/fchomo/node.js:857
+#: htdocs/luci-static/resources/view/fchomo/node.js:877
msgid "Congestion controller"
msgstr "拥塞控制器"
@@ -539,14 +541,14 @@ msgid "Content copied to clipboard!"
msgstr "内容已复制到剪贴板!"
#: htdocs/luci-static/resources/view/fchomo/client.js:670
-#: htdocs/luci-static/resources/view/fchomo/node.js:1519
-#: htdocs/luci-static/resources/view/fchomo/node.js:1545
+#: htdocs/luci-static/resources/view/fchomo/node.js:1577
+#: htdocs/luci-static/resources/view/fchomo/node.js:1603
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:339
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:365
msgid "Content will not be verified, Please make sure you enter it correctly."
msgstr "内容将不会被验证,请确保输入正确。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1518
+#: htdocs/luci-static/resources/view/fchomo/node.js:1576
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:338
msgid "Contents"
msgstr "内容"
@@ -571,7 +573,7 @@ msgstr "Cron 表达式"
msgid "Custom Direct List"
msgstr "自定义直连列表"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1580
+#: htdocs/luci-static/resources/view/fchomo/node.js:1638
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:400
msgid "Custom HTTP header."
msgstr "自定义 HTTP header。"
@@ -607,7 +609,7 @@ msgstr " DNS 端口"
#: htdocs/luci-static/resources/view/fchomo/client.js:1428
#: htdocs/luci-static/resources/view/fchomo/client.js:1437
#: htdocs/luci-static/resources/view/fchomo/node.js:715
-#: htdocs/luci-static/resources/view/fchomo/node.js:798
+#: htdocs/luci-static/resources/view/fchomo/node.js:818
msgid "DNS server"
msgstr "DNS 服务器"
@@ -635,15 +637,15 @@ msgstr "默认 DNS(由 WAN 下发)"
msgid "Default DNS server"
msgstr "默认 DNS 服务器"
-#: htdocs/luci-static/resources/view/fchomo/node.js:769
+#: htdocs/luci-static/resources/view/fchomo/node.js:789
msgid "Destination addresses allowed to be forwarded via Wireguard."
msgstr "允许通过 WireGuard 转发的目的地址"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1787
+#: htdocs/luci-static/resources/view/fchomo/node.js:1845
msgid "Destination provider"
msgstr "落地供应商"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1793
+#: htdocs/luci-static/resources/view/fchomo/node.js:1851
msgid "Destination proxy node"
msgstr "落地代理节点"
@@ -651,8 +653,8 @@ msgstr "落地代理节点"
msgid "Dial fields"
msgstr "拨号字段"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1800
-#: htdocs/luci-static/resources/view/fchomo/node.js:1820
+#: htdocs/luci-static/resources/view/fchomo/node.js:1858
+#: htdocs/luci-static/resources/view/fchomo/node.js:1878
msgid "Different chain head/tail"
msgstr "不同的链头/链尾"
@@ -690,7 +692,7 @@ msgstr "禁用 quic-go 的 通用分段卸载(GSO)"
msgid "Disable ICMP Forwarding"
msgstr "禁用 ICMP 转发"
-#: htdocs/luci-static/resources/view/fchomo/node.js:970
+#: htdocs/luci-static/resources/view/fchomo/node.js:990
msgid "Disable SNI"
msgstr "禁用 SNI"
@@ -718,21 +720,21 @@ msgstr ""
msgid "Domain"
msgstr "域名"
-#: htdocs/luci-static/resources/view/fchomo/node.js:971
+#: htdocs/luci-static/resources/view/fchomo/node.js:991
msgid "Donot send server name in ClientHello."
msgstr "不要在 ClientHello 中发送服务器名称。"
#: htdocs/luci-static/resources/view/fchomo/client.js:1577
-#: htdocs/luci-static/resources/view/fchomo/node.js:1038
-#: htdocs/luci-static/resources/view/fchomo/node.js:1649
+#: htdocs/luci-static/resources/view/fchomo/node.js:1058
+#: htdocs/luci-static/resources/view/fchomo/node.js:1707
msgid "Donot verifying server certificate."
msgstr "不验证服务器证书。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1328
+#: htdocs/luci-static/resources/view/fchomo/node.js:1386
msgid "Download bandwidth"
msgstr "下载带宽"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1329
+#: htdocs/luci-static/resources/view/fchomo/node.js:1387
msgid "Download bandwidth in Mbps."
msgstr "下载带宽(单位:Mbps)。"
@@ -748,12 +750,12 @@ msgstr "下载成功。"
msgid "Dual stack"
msgstr "双栈"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1085
+#: htdocs/luci-static/resources/view/fchomo/node.js:1105
msgid "ECH HTTPS record query servername"
msgstr "ECH HTTPS 记录查询域名"
#: htdocs/luci-static/resources/fchomo/listeners.js:910
-#: htdocs/luci-static/resources/view/fchomo/node.js:1079
+#: htdocs/luci-static/resources/view/fchomo/node.js:1099
msgid "ECH config"
msgstr "ECH 配置"
@@ -773,11 +775,11 @@ msgstr ""
msgid "ETag support"
msgstr "ETag 支持"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1225
+#: htdocs/luci-static/resources/view/fchomo/node.js:1245
msgid "Early Data first packet length limit."
msgstr "前置数据长度阈值"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1231
+#: htdocs/luci-static/resources/view/fchomo/node.js:1251
msgid "Early Data header name"
msgstr "前置数据标头"
@@ -793,7 +795,7 @@ msgstr "编辑节点"
msgid "Edit ruleset"
msgstr "编辑规则集"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1516
+#: htdocs/luci-static/resources/view/fchomo/node.js:1574
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:336
msgid "Editer"
msgstr "编辑器"
@@ -813,9 +815,9 @@ msgstr "消除加密头特征"
#: htdocs/luci-static/resources/view/fchomo/global.js:401
#: htdocs/luci-static/resources/view/fchomo/global.js:680
#: htdocs/luci-static/resources/view/fchomo/node.js:234
-#: htdocs/luci-static/resources/view/fchomo/node.js:1489
-#: htdocs/luci-static/resources/view/fchomo/node.js:1685
-#: htdocs/luci-static/resources/view/fchomo/node.js:1774
+#: htdocs/luci-static/resources/view/fchomo/node.js:1547
+#: htdocs/luci-static/resources/view/fchomo/node.js:1743
+#: htdocs/luci-static/resources/view/fchomo/node.js:1832
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:264
#: htdocs/luci-static/resources/view/fchomo/server.js:49
msgid "Enable"
@@ -842,19 +844,19 @@ msgstr ""
"为出站连接启用 IP4P 转换"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1073
+#: htdocs/luci-static/resources/view/fchomo/node.js:1093
msgid "Enable ECH"
msgstr "启用 ECH"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1316
+#: htdocs/luci-static/resources/view/fchomo/node.js:1374
msgid "Enable TCP Brutal"
msgstr "启用 TCP Brutal"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1317
+#: htdocs/luci-static/resources/view/fchomo/node.js:1375
msgid "Enable TCP Brutal congestion control algorithm"
msgstr "启用 TCP Brutal 拥塞控制算法。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1305
+#: htdocs/luci-static/resources/view/fchomo/node.js:1363
msgid "Enable multiplexing only for TCP."
msgstr "仅为 TCP 启用多路复用。"
@@ -863,16 +865,16 @@ msgstr "仅为 TCP 启用多路复用。"
msgid "Enable obfuscate for downlink"
msgstr "启用下行链路混淆"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1299
+#: htdocs/luci-static/resources/view/fchomo/node.js:1357
msgid "Enable padding"
msgstr "启用填充"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1310
+#: htdocs/luci-static/resources/view/fchomo/node.js:1368
msgid "Enable statistic"
msgstr "启用统计"
-#: htdocs/luci-static/resources/view/fchomo/node.js:871
-#: htdocs/luci-static/resources/view/fchomo/node.js:1631
+#: htdocs/luci-static/resources/view/fchomo/node.js:891
+#: htdocs/luci-static/resources/view/fchomo/node.js:1689
msgid ""
"Enable the SUoT protocol, requires server support. Conflict with Multiplex."
msgstr "启用 SUoT 协议,需要服务端支持。与多路复用冲突。"
@@ -911,7 +913,7 @@ msgid ""
"if empty."
msgstr "超过此限制将会触发强制健康检查。留空则使用 5。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1743
+#: htdocs/luci-static/resources/view/fchomo/node.js:1801
msgid "Exclude matched node types."
msgstr "排除匹配的节点类型。"
@@ -924,7 +926,7 @@ msgstr ""
"rel=\"noreferrer noopener\">此处。"
#: htdocs/luci-static/resources/view/fchomo/client.js:1161
-#: htdocs/luci-static/resources/view/fchomo/node.js:1736
+#: htdocs/luci-static/resources/view/fchomo/node.js:1794
msgid "Exclude nodes that meet keywords or regexps."
msgstr "排除匹配关键词或表达式的节点。"
@@ -933,12 +935,12 @@ msgid "Expand/Collapse result"
msgstr "展开/收起 结果"
#: htdocs/luci-static/resources/view/fchomo/client.js:1121
-#: htdocs/luci-static/resources/view/fchomo/node.js:1721
+#: htdocs/luci-static/resources/view/fchomo/node.js:1779
msgid "Expected HTTP code. 204 will be used if empty."
msgstr "预期的 HTTP code。留空则使用 204。"
#: htdocs/luci-static/resources/view/fchomo/client.js:1123
-#: htdocs/luci-static/resources/view/fchomo/node.js:1723
+#: htdocs/luci-static/resources/view/fchomo/node.js:1781
msgid "Expected status"
msgstr "预期状态"
@@ -979,10 +981,10 @@ msgstr "预期状态"
#: htdocs/luci-static/resources/view/fchomo/node.js:436
#: htdocs/luci-static/resources/view/fchomo/node.js:489
#: htdocs/luci-static/resources/view/fchomo/node.js:491
-#: htdocs/luci-static/resources/view/fchomo/node.js:942
-#: htdocs/luci-static/resources/view/fchomo/node.js:1030
-#: htdocs/luci-static/resources/view/fchomo/node.js:1800
-#: htdocs/luci-static/resources/view/fchomo/node.js:1820
+#: htdocs/luci-static/resources/view/fchomo/node.js:962
+#: htdocs/luci-static/resources/view/fchomo/node.js:1050
+#: htdocs/luci-static/resources/view/fchomo/node.js:1858
+#: htdocs/luci-static/resources/view/fchomo/node.js:1878
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:291
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:305
msgid "Expecting: %s"
@@ -990,9 +992,9 @@ msgstr "请输入:%s"
#: htdocs/luci-static/resources/fchomo/listeners.js:977
#: htdocs/luci-static/resources/fchomo/listeners.js:984
-#: htdocs/luci-static/resources/view/fchomo/node.js:1140
-#: htdocs/luci-static/resources/view/fchomo/node.js:1147
-#: htdocs/luci-static/resources/view/fchomo/node.js:1155
+#: htdocs/luci-static/resources/view/fchomo/node.js:1160
+#: htdocs/luci-static/resources/view/fchomo/node.js:1167
+#: htdocs/luci-static/resources/view/fchomo/node.js:1175
msgid "Expecting: only support %s."
msgstr "请输入:仅支援 %s."
@@ -1042,7 +1044,7 @@ msgid "Fallback filter"
msgstr "後備过滤器"
#: htdocs/luci-static/resources/view/fchomo/client.js:1156
-#: htdocs/luci-static/resources/view/fchomo/node.js:1730
+#: htdocs/luci-static/resources/view/fchomo/node.js:1788
msgid "Filter nodes that meet keywords or regexps."
msgstr "过滤匹配关键字或表达式的节点。"
@@ -1085,8 +1087,8 @@ msgstr ""
"noopener\">%s."
#: htdocs/luci-static/resources/view/fchomo/client.js:1122
-#: htdocs/luci-static/resources/view/fchomo/node.js:1599
-#: htdocs/luci-static/resources/view/fchomo/node.js:1722
+#: htdocs/luci-static/resources/view/fchomo/node.js:1657
+#: htdocs/luci-static/resources/view/fchomo/node.js:1780
msgid ""
"For format see %s."
@@ -1095,7 +1097,7 @@ msgstr ""
"a>."
#: htdocs/luci-static/resources/view/fchomo/node.js:710
-#: htdocs/luci-static/resources/view/fchomo/node.js:793
+#: htdocs/luci-static/resources/view/fchomo/node.js:813
msgid "Force DNS remote resolution."
msgstr "强制 DNS 远程解析。"
@@ -1114,7 +1116,7 @@ msgstr "格式"
msgid "FullCombo Shark!"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1180
+#: htdocs/luci-static/resources/view/fchomo/node.js:1200
msgid "GET"
msgstr ""
@@ -1129,7 +1131,7 @@ msgstr "常规"
#: htdocs/luci-static/resources/fchomo/listeners.js:119
#: htdocs/luci-static/resources/view/fchomo/client.js:1009
#: htdocs/luci-static/resources/view/fchomo/node.js:222
-#: htdocs/luci-static/resources/view/fchomo/node.js:1479
+#: htdocs/luci-static/resources/view/fchomo/node.js:1537
msgid "General fields"
msgstr "常规字段"
@@ -1211,17 +1213,16 @@ msgstr "组"
#: htdocs/luci-static/resources/fchomo.js:146
#: htdocs/luci-static/resources/fchomo.js:179
-#: htdocs/luci-static/resources/fchomo/listeners.js:977
-#: htdocs/luci-static/resources/view/fchomo/node.js:816
-#: htdocs/luci-static/resources/view/fchomo/node.js:1129
-#: htdocs/luci-static/resources/view/fchomo/node.js:1140
-#: htdocs/luci-static/resources/view/fchomo/node.js:1147
+#: htdocs/luci-static/resources/view/fchomo/node.js:836
+#: htdocs/luci-static/resources/view/fchomo/node.js:1149
+#: htdocs/luci-static/resources/view/fchomo/node.js:1160
+#: htdocs/luci-static/resources/view/fchomo/node.js:1167
msgid "HTTP"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:267
-#: htdocs/luci-static/resources/view/fchomo/node.js:1202
-#: htdocs/luci-static/resources/view/fchomo/node.js:1579
+#: htdocs/luci-static/resources/view/fchomo/node.js:1222
+#: htdocs/luci-static/resources/view/fchomo/node.js:1637
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:399
msgid "HTTP header"
msgstr "HTTP header"
@@ -1247,7 +1248,7 @@ msgstr "HTTP 伪装多路复用"
msgid "HTTP mask: %s"
msgstr "HTTP 伪装: %s"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1179
+#: htdocs/luci-static/resources/view/fchomo/node.js:1199
msgid "HTTP request method"
msgstr "HTTP 请求方法"
@@ -1266,10 +1267,9 @@ msgid ""
"returned if empty."
msgstr "身份验证失败时的 HTTP3 服务器响应。默认返回 404 页面。"
-#: htdocs/luci-static/resources/fchomo/listeners.js:978
-#: htdocs/luci-static/resources/view/fchomo/node.js:1130
-#: htdocs/luci-static/resources/view/fchomo/node.js:1141
-#: htdocs/luci-static/resources/view/fchomo/node.js:1148
+#: htdocs/luci-static/resources/view/fchomo/node.js:1150
+#: htdocs/luci-static/resources/view/fchomo/node.js:1161
+#: htdocs/luci-static/resources/view/fchomo/node.js:1168
msgid "HTTPUpgrade"
msgstr ""
@@ -1294,27 +1294,27 @@ msgid "Health check"
msgstr "健康检查"
#: htdocs/luci-static/resources/view/fchomo/client.js:1091
-#: htdocs/luci-static/resources/view/fchomo/node.js:1690
+#: htdocs/luci-static/resources/view/fchomo/node.js:1748
msgid "Health check URL"
msgstr "健康检查 URL"
#: htdocs/luci-static/resources/view/fchomo/client.js:1120
-#: htdocs/luci-static/resources/view/fchomo/node.js:1720
+#: htdocs/luci-static/resources/view/fchomo/node.js:1778
msgid "Health check expected status"
msgstr "健康检查预期状态"
#: htdocs/luci-static/resources/view/fchomo/client.js:1100
-#: htdocs/luci-static/resources/view/fchomo/node.js:1700
+#: htdocs/luci-static/resources/view/fchomo/node.js:1758
msgid "Health check interval"
msgstr "健康检查间隔"
#: htdocs/luci-static/resources/view/fchomo/client.js:1107
-#: htdocs/luci-static/resources/view/fchomo/node.js:1707
+#: htdocs/luci-static/resources/view/fchomo/node.js:1765
msgid "Health check timeout"
msgstr "健康检查超时"
#: htdocs/luci-static/resources/view/fchomo/client.js:1011
-#: htdocs/luci-static/resources/view/fchomo/node.js:1481
+#: htdocs/luci-static/resources/view/fchomo/node.js:1539
msgid "Health fields"
msgstr "健康字段"
@@ -1326,7 +1326,7 @@ msgstr "心跳间隔"
msgid "Hidden"
msgstr "隐藏"
-#: htdocs/luci-static/resources/view/fchomo/node.js:822
+#: htdocs/luci-static/resources/view/fchomo/node.js:842
msgid "Host that supports TLS 1.3"
msgstr "主机名称 (支援 TLS 1.3)"
@@ -1365,8 +1365,8 @@ msgstr ""
msgid "IP override"
msgstr "IP 覆写"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1361
-#: htdocs/luci-static/resources/view/fchomo/node.js:1676
+#: htdocs/luci-static/resources/view/fchomo/node.js:1419
+#: htdocs/luci-static/resources/view/fchomo/node.js:1734
msgid "IP version"
msgstr "IP 版本"
@@ -1427,8 +1427,8 @@ msgstr "导入"
#: htdocs/luci-static/resources/view/fchomo/client.js:1713
#: htdocs/luci-static/resources/view/fchomo/client.js:1748
#: htdocs/luci-static/resources/view/fchomo/client.js:1769
-#: htdocs/luci-static/resources/view/fchomo/node.js:1386
-#: htdocs/luci-static/resources/view/fchomo/node.js:1467
+#: htdocs/luci-static/resources/view/fchomo/node.js:1444
+#: htdocs/luci-static/resources/view/fchomo/node.js:1525
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:153
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:241
msgid "Import mihomo config"
@@ -1444,12 +1444,12 @@ msgstr "导入规则集链接"
#: htdocs/luci-static/resources/fchomo/listeners.js:181
#: htdocs/luci-static/resources/view/fchomo/node.js:286
#: htdocs/luci-static/resources/view/fchomo/node.js:292
-#: htdocs/luci-static/resources/view/fchomo/node.js:1637
-#: htdocs/luci-static/resources/view/fchomo/node.js:1643
+#: htdocs/luci-static/resources/view/fchomo/node.js:1695
+#: htdocs/luci-static/resources/view/fchomo/node.js:1701
msgid "In Mbps."
msgstr "单位为 Mbps。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1557
+#: htdocs/luci-static/resources/view/fchomo/node.js:1615
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:377
msgid "In bytes. %s will be used if empty."
msgstr "单位为字节。留空则使用 %s。"
@@ -1461,7 +1461,7 @@ msgstr "单位为毫秒。"
#: htdocs/luci-static/resources/view/fchomo/client.js:1108
#: htdocs/luci-static/resources/view/fchomo/client.js:1137
-#: htdocs/luci-static/resources/view/fchomo/node.js:1708
+#: htdocs/luci-static/resources/view/fchomo/node.js:1766
msgid "In millisecond. %s will be used if empty."
msgstr "单位为毫秒。留空则使用 %s。"
@@ -1470,7 +1470,7 @@ msgstr "单位为毫秒。留空则使用 %s。"
#: htdocs/luci-static/resources/fchomo/listeners.js:428
#: htdocs/luci-static/resources/view/fchomo/node.js:604
#: htdocs/luci-static/resources/view/fchomo/node.js:611
-#: htdocs/luci-static/resources/view/fchomo/node.js:1218
+#: htdocs/luci-static/resources/view/fchomo/node.js:1238
msgid "In seconds."
msgstr "单位为秒。"
@@ -1479,14 +1479,14 @@ msgstr "单位为秒。"
#: htdocs/luci-static/resources/view/fchomo/global.js:430
#: htdocs/luci-static/resources/view/fchomo/global.js:515
#: htdocs/luci-static/resources/view/fchomo/node.js:280
-#: htdocs/luci-static/resources/view/fchomo/node.js:1563
-#: htdocs/luci-static/resources/view/fchomo/node.js:1701
+#: htdocs/luci-static/resources/view/fchomo/node.js:1621
+#: htdocs/luci-static/resources/view/fchomo/node.js:1759
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:383
msgid "In seconds. %s will be used if empty."
msgstr "单位为秒。留空则使用 %s。"
#: htdocs/luci-static/resources/fchomo/listeners.js:649
-#: htdocs/luci-static/resources/view/fchomo/node.js:931
+#: htdocs/luci-static/resources/view/fchomo/node.js:951
msgid ""
"In the order of one Padding-Length and one Padding-"
"Interval, infinite concatenation."
@@ -1528,7 +1528,7 @@ msgstr "引入所有代理节点。"
msgid "Info"
msgstr "信息"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1496
+#: htdocs/luci-static/resources/view/fchomo/node.js:1554
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:279
msgid "Inline"
msgstr "内嵌"
@@ -1549,7 +1549,7 @@ msgid "Key"
msgstr "密钥"
#: htdocs/luci-static/resources/fchomo/listeners.js:829
-#: htdocs/luci-static/resources/view/fchomo/node.js:1059
+#: htdocs/luci-static/resources/view/fchomo/node.js:1079
msgid "Key path"
msgstr "证书路径"
@@ -1565,14 +1565,14 @@ msgstr "密钥对"
#: htdocs/luci-static/resources/view/fchomo/client.js:1719
#: htdocs/luci-static/resources/view/fchomo/client.js:1775
#: htdocs/luci-static/resources/view/fchomo/node.js:229
-#: htdocs/luci-static/resources/view/fchomo/node.js:1484
-#: htdocs/luci-static/resources/view/fchomo/node.js:1769
+#: htdocs/luci-static/resources/view/fchomo/node.js:1542
+#: htdocs/luci-static/resources/view/fchomo/node.js:1827
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:259
msgid "Label"
msgstr "标签"
#: htdocs/luci-static/resources/view/fchomo/client.js:1114
-#: htdocs/luci-static/resources/view/fchomo/node.js:1714
+#: htdocs/luci-static/resources/view/fchomo/node.js:1772
msgid "Lazy"
msgstr "懒惰状态"
@@ -1594,7 +1594,7 @@ msgid "Less compatibility and sometimes better performance."
msgstr "有时性能更好。"
#: htdocs/luci-static/resources/fchomo/listeners.js:810
-#: htdocs/luci-static/resources/view/fchomo/node.js:983
+#: htdocs/luci-static/resources/view/fchomo/node.js:1003
msgid "List of supported application level protocols, in order of preference."
msgstr "支持的应用层协议协商列表,按顺序排列。"
@@ -1623,18 +1623,18 @@ msgstr "监听端口"
msgid "Load balance"
msgstr "负载均衡"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1494
+#: htdocs/luci-static/resources/view/fchomo/node.js:1552
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:277
msgid "Local"
msgstr "本地"
#: htdocs/luci-static/resources/view/fchomo/node.js:697
-#: htdocs/luci-static/resources/view/fchomo/node.js:740
+#: htdocs/luci-static/resources/view/fchomo/node.js:760
msgid "Local IPv6 address"
msgstr "本地 IPv6 地址"
#: htdocs/luci-static/resources/view/fchomo/node.js:689
-#: htdocs/luci-static/resources/view/fchomo/node.js:732
+#: htdocs/luci-static/resources/view/fchomo/node.js:752
msgid "Local address"
msgstr "本地地址"
@@ -1671,7 +1671,7 @@ msgstr "仅限小写"
#: htdocs/luci-static/resources/view/fchomo/global.js:502
#: htdocs/luci-static/resources/view/fchomo/node.js:703
-#: htdocs/luci-static/resources/view/fchomo/node.js:786
+#: htdocs/luci-static/resources/view/fchomo/node.js:806
msgid "MTU"
msgstr ""
@@ -1711,7 +1711,7 @@ msgstr "匹配响应通过 ipcidr"
msgid "Match rule set."
msgstr "匹配规则集。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1224
+#: htdocs/luci-static/resources/view/fchomo/node.js:1244
msgid "Max Early Data"
msgstr "前置数据最大值"
@@ -1720,6 +1720,15 @@ msgstr "前置数据最大值"
msgid "Max UDP relay packet size"
msgstr "UDP 中继数据包最大尺寸"
+#: htdocs/luci-static/resources/view/fchomo/node.js:1300
+msgid "Max concurrency"
+msgstr "最大并发"
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:731
+#: htdocs/luci-static/resources/view/fchomo/node.js:1295
+msgid "Max connections"
+msgstr "最大连接数"
+
#: htdocs/luci-static/resources/view/fchomo/client.js:1128
msgid "Max count of failures"
msgstr "最大失败次数"
@@ -1729,21 +1738,47 @@ msgstr "最大失败次数"
msgid "Max download speed"
msgstr "最大下载速度"
+#: htdocs/luci-static/resources/fchomo/listeners.js:1033
+#: htdocs/luci-static/resources/view/fchomo/node.js:1284
+msgid "Max each POST bytes"
+msgstr "POST 最大字节数"
+
#: htdocs/luci-static/resources/view/fchomo/node.js:573
msgid "Max open streams"
msgstr "限制打开流的数量"
+#: htdocs/luci-static/resources/view/fchomo/node.js:1310
+msgid "Max request times"
+msgstr "最大请求次数"
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:1315
+msgid "Max reusable seconds"
+msgstr "最大可复用秒数"
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:1305
+msgid "Max reuse times"
+msgstr "最大复用次数"
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:744
+msgid "Max streams"
+msgstr ""
+
#: htdocs/luci-static/resources/fchomo/listeners.js:174
#: htdocs/luci-static/resources/view/fchomo/node.js:285
msgid "Max upload speed"
msgstr "最大上传速度"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1277
-#: htdocs/luci-static/resources/view/fchomo/node.js:1293
+#: htdocs/luci-static/resources/view/fchomo/node.js:1335
+#: htdocs/luci-static/resources/view/fchomo/node.js:1351
msgid "Maximum connections"
msgstr "最大连接数"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1291
+#: htdocs/luci-static/resources/view/fchomo/node.js:745
+msgid ""
+"Maximum multiplexed streams in a connection before opening a new connection."
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:1349
msgid ""
"Maximum multiplexed streams in a connection before opening a new connection."
"%s and %s."
@@ -1763,7 +1798,7 @@ msgid ""
"rate."
msgstr "最大填充率必须大于等于最小填充率。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1290
+#: htdocs/luci-static/resources/view/fchomo/node.js:1348
msgid "Maximum streams"
msgstr "最大流数量"
@@ -1788,7 +1823,12 @@ msgstr "Mihomo 服务端"
msgid "Min of idle sessions to keep"
msgstr "要保留的最少闲置会话数"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1284
+#: htdocs/luci-static/resources/view/fchomo/node.js:737
+msgid "Min streams"
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:738
+#: htdocs/luci-static/resources/view/fchomo/node.js:1342
msgid ""
"Minimum multiplexed streams in a connection before opening a new connection."
msgstr "在打开新连接之前,连接中的最小多路复用流数量。"
@@ -1798,8 +1838,8 @@ msgstr "在打开新连接之前,连接中的最小多路复用流数量。"
msgid "Minimum padding rate"
msgstr "最小填充率"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1283
-#: htdocs/luci-static/resources/view/fchomo/node.js:1293
+#: htdocs/luci-static/resources/view/fchomo/node.js:1341
+#: htdocs/luci-static/resources/view/fchomo/node.js:1351
msgid "Minimum streams"
msgstr "最小流数量"
@@ -1816,7 +1856,7 @@ msgstr "混合 系统 TCP 栈和 gVisor UDP 栈。"
msgid "Mixed port"
msgstr "混合端口"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1263
+#: htdocs/luci-static/resources/view/fchomo/node.js:1321
msgid "Multiplex"
msgstr "多路复用"
@@ -1838,7 +1878,7 @@ msgstr "NOT"
msgid "Name of the Proxy group as outbound."
msgstr "出站代理组的名称。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1569
+#: htdocs/luci-static/resources/view/fchomo/node.js:1627
msgid "Name of the Proxy group to download provider."
msgstr "用于下载供应商订阅的代理组名称。"
@@ -1866,16 +1906,20 @@ msgstr "网络类型"
msgid "No Authentication IP ranges"
msgstr "无需认证的 IP 范围"
+#: htdocs/luci-static/resources/fchomo/listeners.js:1023
+msgid "No SSE header"
+msgstr "无 SSE header"
+
#: htdocs/luci-static/resources/view/fchomo/client.js:1508
msgid "No add'l params"
msgstr "无附加参数"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1252
+#: htdocs/luci-static/resources/view/fchomo/node.js:1274
msgid "No gRPC header"
msgstr "无 gRPC header"
#: htdocs/luci-static/resources/view/fchomo/client.js:1115
-#: htdocs/luci-static/resources/view/fchomo/node.js:1715
+#: htdocs/luci-static/resources/view/fchomo/node.js:1773
msgid "No testing is performed when this provider node is not in use."
msgstr "当此供应商的节点未使用时,不执行任何测试。"
@@ -1894,17 +1938,17 @@ msgid "Node"
msgstr "节点"
#: htdocs/luci-static/resources/view/fchomo/client.js:1160
-#: htdocs/luci-static/resources/view/fchomo/node.js:1735
+#: htdocs/luci-static/resources/view/fchomo/node.js:1793
msgid "Node exclude filter"
msgstr "排除节点"
#: htdocs/luci-static/resources/view/fchomo/client.js:1165
-#: htdocs/luci-static/resources/view/fchomo/node.js:1742
+#: htdocs/luci-static/resources/view/fchomo/node.js:1800
msgid "Node exclude type"
msgstr "排除节点类型"
#: htdocs/luci-static/resources/view/fchomo/client.js:1155
-#: htdocs/luci-static/resources/view/fchomo/node.js:1729
+#: htdocs/luci-static/resources/view/fchomo/node.js:1787
msgid "Node filter"
msgstr "过滤节点"
@@ -1932,7 +1976,7 @@ msgstr ""
msgid "ON"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:815
+#: htdocs/luci-static/resources/view/fchomo/node.js:835
msgid "Obfs Mode"
msgstr "Obfs 模式"
@@ -1982,7 +2026,7 @@ msgid "Override destination"
msgstr "覆盖目标地址"
#: htdocs/luci-static/resources/view/fchomo/client.js:1010
-#: htdocs/luci-static/resources/view/fchomo/node.js:1480
+#: htdocs/luci-static/resources/view/fchomo/node.js:1538
msgid "Override fields"
msgstr "覆盖字段"
@@ -2002,7 +2046,7 @@ msgstr "使用嗅探到的域名覆盖连接目标。"
msgid "Override the existing ECS in original request."
msgstr "覆盖原始请求中已有的 ECS。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1086
+#: htdocs/luci-static/resources/view/fchomo/node.js:1106
msgid "Overrides the domain name used for HTTPS record queries."
msgstr "覆盖用于 HTTPS 记录查询的域名。"
@@ -2010,11 +2054,11 @@ msgstr "覆盖用于 HTTPS 记录查询的域名。"
msgid "Overview"
msgstr "概览"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1181
+#: htdocs/luci-static/resources/view/fchomo/node.js:1201
msgid "POST"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1182
+#: htdocs/luci-static/resources/view/fchomo/node.js:1202
msgid "PUT"
msgstr ""
@@ -2022,7 +2066,7 @@ msgstr ""
msgid "Packet encoding"
msgstr "数据包编码"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1257
+#: htdocs/luci-static/resources/view/fchomo/node.js:1279
msgid "Padding bytes"
msgstr "填充字节"
@@ -2031,7 +2075,7 @@ msgid "Padding scheme"
msgstr "填充方案"
#: htdocs/luci-static/resources/fchomo/listeners.js:647
-#: htdocs/luci-static/resources/view/fchomo/node.js:929
+#: htdocs/luci-static/resources/view/fchomo/node.js:949
msgid "Paddings"
msgstr "填充 (Paddings)"
@@ -2040,17 +2084,17 @@ msgstr "填充 (Paddings)"
#: htdocs/luci-static/resources/fchomo/listeners.js:508
#: htdocs/luci-static/resources/view/fchomo/node.js:261
#: htdocs/luci-static/resources/view/fchomo/node.js:340
-#: htdocs/luci-static/resources/view/fchomo/node.js:830
+#: htdocs/luci-static/resources/view/fchomo/node.js:850
msgid "Password"
msgstr "密码"
#: htdocs/luci-static/resources/fchomo/listeners.js:587
-#: htdocs/luci-static/resources/view/fchomo/node.js:1544
+#: htdocs/luci-static/resources/view/fchomo/node.js:1602
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:364
msgid "Payload"
msgstr "Payload"
-#: htdocs/luci-static/resources/view/fchomo/node.js:754
+#: htdocs/luci-static/resources/view/fchomo/node.js:774
msgid "Peer pubkic key"
msgstr "对端公钥"
@@ -2060,11 +2104,11 @@ msgid ""
"it is not needed."
msgstr "性能可能会略有下降,建议仅在需要时开启。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:781
+#: htdocs/luci-static/resources/view/fchomo/node.js:801
msgid "Periodically sends data packets to maintain connection persistence."
msgstr "定期发送数据包以维持连接持久性。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:780
+#: htdocs/luci-static/resources/view/fchomo/node.js:800
msgid "Persistent keepalive"
msgstr "持久连接"
@@ -2087,8 +2131,8 @@ msgid ""
"standards."
msgstr "链接格式标准请参考 %s。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1517
-#: htdocs/luci-static/resources/view/fchomo/node.js:1543
+#: htdocs/luci-static/resources/view/fchomo/node.js:1575
+#: htdocs/luci-static/resources/view/fchomo/node.js:1601
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:337
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:363
msgid ""
@@ -2103,25 +2147,25 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1445
#: htdocs/luci-static/resources/view/fchomo/client.js:1697
#: htdocs/luci-static/resources/view/fchomo/client.js:1749
-#: htdocs/luci-static/resources/view/fchomo/node.js:1387
+#: htdocs/luci-static/resources/view/fchomo/node.js:1445
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:154
msgid "Please type %s fields of mihomo config."
msgstr "请输入 mihomo 配置的 %s 字段。"
#: htdocs/luci-static/resources/fchomo/listeners.js:494
-#: htdocs/luci-static/resources/view/fchomo/node.js:804
+#: htdocs/luci-static/resources/view/fchomo/node.js:824
msgid "Plugin"
msgstr "插件"
#: htdocs/luci-static/resources/fchomo/listeners.js:501
#: htdocs/luci-static/resources/fchomo/listeners.js:508
#: htdocs/luci-static/resources/fchomo/listeners.js:514
-#: htdocs/luci-static/resources/view/fchomo/node.js:815
-#: htdocs/luci-static/resources/view/fchomo/node.js:822
-#: htdocs/luci-static/resources/view/fchomo/node.js:830
-#: htdocs/luci-static/resources/view/fchomo/node.js:836
-#: htdocs/luci-static/resources/view/fchomo/node.js:844
+#: htdocs/luci-static/resources/view/fchomo/node.js:835
+#: htdocs/luci-static/resources/view/fchomo/node.js:842
#: htdocs/luci-static/resources/view/fchomo/node.js:850
+#: htdocs/luci-static/resources/view/fchomo/node.js:856
+#: htdocs/luci-static/resources/view/fchomo/node.js:864
+#: htdocs/luci-static/resources/view/fchomo/node.js:870
msgid "Plugin:"
msgstr "插件:"
@@ -2151,7 +2195,7 @@ msgid "Ports pool"
msgstr "端口池"
#: htdocs/luci-static/resources/view/fchomo/node.js:499
-#: htdocs/luci-static/resources/view/fchomo/node.js:761
+#: htdocs/luci-static/resources/view/fchomo/node.js:781
msgid "Pre-shared key"
msgstr "预共享密钥"
@@ -2170,10 +2214,10 @@ msgstr "防止某些情况下的 ICMP 环回问题。Ping 不会显示实际延
#: htdocs/luci-static/resources/view/fchomo/global.js:736
#: htdocs/luci-static/resources/view/fchomo/global.js:753
-#: htdocs/luci-static/resources/view/fchomo/node.js:1351
-#: htdocs/luci-static/resources/view/fchomo/node.js:1357
-#: htdocs/luci-static/resources/view/fchomo/node.js:1664
-#: htdocs/luci-static/resources/view/fchomo/node.js:1671
+#: htdocs/luci-static/resources/view/fchomo/node.js:1409
+#: htdocs/luci-static/resources/view/fchomo/node.js:1415
+#: htdocs/luci-static/resources/view/fchomo/node.js:1722
+#: htdocs/luci-static/resources/view/fchomo/node.js:1729
msgid "Priority: Proxy Node > Global."
msgstr "优先级: 代理节点 > 全局。"
@@ -2186,7 +2230,7 @@ msgid "Priv-key passphrase"
msgstr "密钥密码"
#: htdocs/luci-static/resources/view/fchomo/node.js:674
-#: htdocs/luci-static/resources/view/fchomo/node.js:746
+#: htdocs/luci-static/resources/view/fchomo/node.js:766
msgid "Private key"
msgstr "私钥"
@@ -2195,7 +2239,7 @@ msgid "Process matching mode"
msgstr "进程匹配模式"
#: htdocs/luci-static/resources/view/fchomo/global.js:684
-#: htdocs/luci-static/resources/view/fchomo/node.js:1269
+#: htdocs/luci-static/resources/view/fchomo/node.js:1327
msgid "Protocol"
msgstr "协议"
@@ -2210,13 +2254,13 @@ msgid ""
msgstr "协议参数。 如启用会随机浪费流量(在 v2ray 中默认启用并且无法禁用)。"
#: htdocs/luci-static/resources/view/fchomo/client.js:1055
-#: htdocs/luci-static/resources/view/fchomo/node.js:1370
-#: htdocs/luci-static/resources/view/fchomo/node.js:1379
-#: htdocs/luci-static/resources/view/fchomo/node.js:1780
+#: htdocs/luci-static/resources/view/fchomo/node.js:1428
+#: htdocs/luci-static/resources/view/fchomo/node.js:1437
+#: htdocs/luci-static/resources/view/fchomo/node.js:1838
msgid "Provider"
msgstr "供应商"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1550
+#: htdocs/luci-static/resources/view/fchomo/node.js:1608
msgid "Provider URL"
msgstr "供应商订阅 URL"
@@ -2239,19 +2283,19 @@ msgid "Proxy MAC-s"
msgstr "代理 MAC 地址"
#: htdocs/luci-static/resources/view/fchomo/node.js:208
-#: htdocs/luci-static/resources/view/fchomo/node.js:1779
+#: htdocs/luci-static/resources/view/fchomo/node.js:1837
msgid "Proxy Node"
msgstr "代理节点"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1755
-#: htdocs/luci-static/resources/view/fchomo/node.js:1764
+#: htdocs/luci-static/resources/view/fchomo/node.js:1813
+#: htdocs/luci-static/resources/view/fchomo/node.js:1822
msgid "Proxy chain"
msgstr "代理链"
#: htdocs/luci-static/resources/fchomo/listeners.js:530
#: htdocs/luci-static/resources/view/fchomo/client.js:783
#: htdocs/luci-static/resources/view/fchomo/client.js:1543
-#: htdocs/luci-static/resources/view/fchomo/node.js:1568
+#: htdocs/luci-static/resources/view/fchomo/node.js:1626
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:388
msgid "Proxy group"
msgstr "代理组"
@@ -2279,11 +2323,11 @@ msgid "Quick Reload"
msgstr "快速重载"
#: htdocs/luci-static/resources/fchomo/listeners.js:917
-#: htdocs/luci-static/resources/view/fchomo/node.js:1100
+#: htdocs/luci-static/resources/view/fchomo/node.js:1120
msgid "REALITY"
msgstr "REALITY"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1115
+#: htdocs/luci-static/resources/view/fchomo/node.js:1135
msgid "REALITY X25519MLKEM768 PQC support"
msgstr "REALITY X25519MLKEM768 后量子加密支持"
@@ -2300,18 +2344,18 @@ msgid "REALITY private key"
msgstr "REALITY 私钥"
#: htdocs/luci-static/resources/fchomo/listeners.js:944
-#: htdocs/luci-static/resources/view/fchomo/node.js:1105
+#: htdocs/luci-static/resources/view/fchomo/node.js:1125
msgid "REALITY public key"
msgstr "REALITY 公钥"
#: htdocs/luci-static/resources/fchomo/listeners.js:948
-#: htdocs/luci-static/resources/view/fchomo/node.js:1110
+#: htdocs/luci-static/resources/view/fchomo/node.js:1130
msgid "REALITY short ID"
msgstr "REALITY 标识符"
#: htdocs/luci-static/resources/fchomo/listeners.js:618
#: htdocs/luci-static/resources/fchomo/listeners.js:637
-#: htdocs/luci-static/resources/view/fchomo/node.js:919
+#: htdocs/luci-static/resources/view/fchomo/node.js:939
msgid "RTT"
msgstr ""
@@ -2358,13 +2402,13 @@ msgstr "重载"
msgid "Reload All"
msgstr "重载所有"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1495
+#: htdocs/luci-static/resources/view/fchomo/node.js:1553
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:278
msgid "Remote"
msgstr "远程"
#: htdocs/luci-static/resources/view/fchomo/node.js:709
-#: htdocs/luci-static/resources/view/fchomo/node.js:792
+#: htdocs/luci-static/resources/view/fchomo/node.js:812
msgid "Remote DNS resolve"
msgstr "远程 DNS 解析"
@@ -2373,18 +2417,18 @@ msgid "Remove"
msgstr "移除"
#: htdocs/luci-static/resources/fchomo.js:1354
-#: htdocs/luci-static/resources/view/fchomo/node.js:1471
-#: htdocs/luci-static/resources/view/fchomo/node.js:1473
+#: htdocs/luci-static/resources/view/fchomo/node.js:1529
+#: htdocs/luci-static/resources/view/fchomo/node.js:1531
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:251
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:253
msgid "Remove idles"
msgstr "移除闲置"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1597
+#: htdocs/luci-static/resources/view/fchomo/node.js:1655
msgid "Replace name"
msgstr "名称替换"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1598
+#: htdocs/luci-static/resources/view/fchomo/node.js:1656
msgid "Replace node name."
msgstr "替换节点名称"
@@ -2392,9 +2436,9 @@ msgstr "替换节点名称"
msgid "Request"
msgstr ""
-#: htdocs/luci-static/resources/fchomo/listeners.js:996
-#: htdocs/luci-static/resources/view/fchomo/node.js:1188
-#: htdocs/luci-static/resources/view/fchomo/node.js:1195
+#: htdocs/luci-static/resources/fchomo/listeners.js:1002
+#: htdocs/luci-static/resources/view/fchomo/node.js:1208
+#: htdocs/luci-static/resources/view/fchomo/node.js:1215
msgid "Request path"
msgstr "请求路径"
@@ -2411,11 +2455,11 @@ msgid "Require any"
msgstr ""
#: htdocs/luci-static/resources/fchomo.js:384
-#: htdocs/luci-static/resources/view/fchomo/node.js:1116
+#: htdocs/luci-static/resources/view/fchomo/node.js:1136
msgid "Requires server support."
msgstr "需要服务器支持。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:775
+#: htdocs/luci-static/resources/view/fchomo/node.js:795
msgid "Reserved field bytes"
msgstr "保留字段字节"
@@ -2423,7 +2467,7 @@ msgstr "保留字段字节"
msgid "Resources management"
msgstr "资源管理"
-#: htdocs/luci-static/resources/view/fchomo/node.js:850
+#: htdocs/luci-static/resources/view/fchomo/node.js:870
msgid "Restls script"
msgstr "Restls 剧本"
@@ -2459,8 +2503,8 @@ msgstr "路由 DSCP"
msgid "Routing GFW"
msgstr "路由 GFW 流量"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1356
-#: htdocs/luci-static/resources/view/fchomo/node.js:1670
+#: htdocs/luci-static/resources/view/fchomo/node.js:1414
+#: htdocs/luci-static/resources/view/fchomo/node.js:1728
msgid "Routing mark"
msgstr "路由标记"
@@ -2548,7 +2592,7 @@ msgstr ""
msgid "SUB-RULE"
msgstr "SUB-RULE"
-#: htdocs/luci-static/resources/view/fchomo/node.js:876
+#: htdocs/luci-static/resources/view/fchomo/node.js:896
msgid "SUoT version"
msgstr "SUoT 版本"
@@ -2598,8 +2642,9 @@ msgstr "服务端"
msgid "Server address"
msgstr "服务器地址"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1167
-#: htdocs/luci-static/resources/view/fchomo/node.js:1173
+#: htdocs/luci-static/resources/fchomo/listeners.js:996
+#: htdocs/luci-static/resources/view/fchomo/node.js:1187
+#: htdocs/luci-static/resources/view/fchomo/node.js:1193
msgid "Server hostname"
msgstr "服务器主机名称"
@@ -2631,7 +2676,7 @@ msgstr "Shadowsocks 加密"
msgid "Shadowsocks password"
msgstr "Shadowsocks 密码"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1311
+#: htdocs/luci-static/resources/view/fchomo/node.js:1369
msgid "Show connections in the dashboard for breaking connections easier."
msgstr "在面板中显示连接以便于打断连接。"
@@ -2643,14 +2688,14 @@ msgstr "静音"
msgid "Simple round-robin all nodes"
msgstr "简单轮替所有节点"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1556
+#: htdocs/luci-static/resources/view/fchomo/node.js:1614
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:376
msgid "Size limit"
msgstr "大小限制"
#: htdocs/luci-static/resources/view/fchomo/client.js:1576
-#: htdocs/luci-static/resources/view/fchomo/node.js:1037
-#: htdocs/luci-static/resources/view/fchomo/node.js:1648
+#: htdocs/luci-static/resources/view/fchomo/node.js:1057
+#: htdocs/luci-static/resources/view/fchomo/node.js:1706
msgid "Skip cert verify"
msgstr "跳过证书验证"
@@ -2778,7 +2823,7 @@ msgstr "TCP"
msgid "TCP concurrency"
msgstr "TCP 并发"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1304
+#: htdocs/luci-static/resources/view/fchomo/node.js:1362
msgid "TCP only"
msgstr "仅 TCP"
@@ -2804,25 +2849,25 @@ msgstr "TCP-Keep-Alive 间隔"
msgid "TCP/UDP"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1335
-#: htdocs/luci-static/resources/view/fchomo/node.js:1615
+#: htdocs/luci-static/resources/view/fchomo/node.js:1393
+#: htdocs/luci-static/resources/view/fchomo/node.js:1673
msgid "TFO"
msgstr "TCP 快速打开 (TFO)"
#: htdocs/luci-static/resources/fchomo/listeners.js:772
#: htdocs/luci-static/resources/view/fchomo/global.js:529
#: htdocs/luci-static/resources/view/fchomo/node.js:464
-#: htdocs/luci-static/resources/view/fchomo/node.js:817
-#: htdocs/luci-static/resources/view/fchomo/node.js:951
+#: htdocs/luci-static/resources/view/fchomo/node.js:837
+#: htdocs/luci-static/resources/view/fchomo/node.js:971
msgid "TLS"
msgstr "TLS"
#: htdocs/luci-static/resources/fchomo/listeners.js:809
-#: htdocs/luci-static/resources/view/fchomo/node.js:982
+#: htdocs/luci-static/resources/view/fchomo/node.js:1002
msgid "TLS ALPN"
msgstr "TLS ALPN"
-#: htdocs/luci-static/resources/view/fchomo/node.js:976
+#: htdocs/luci-static/resources/view/fchomo/node.js:996
msgid "TLS SNI"
msgstr ""
@@ -2854,24 +2899,24 @@ msgstr "让客户端使用 BBR 流控算法。"
msgid "The %s address used by local machine in the Cloudflare WARP network."
msgstr "Cloudflare WARP 网络中使用的本机 %s 地址。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:733
-#: htdocs/luci-static/resources/view/fchomo/node.js:741
+#: htdocs/luci-static/resources/view/fchomo/node.js:753
+#: htdocs/luci-static/resources/view/fchomo/node.js:761
msgid "The %s address used by local machine in the Wireguard network."
msgstr "WireGuard 网络中使用的本机 %s 地址。"
#: htdocs/luci-static/resources/fchomo/listeners.js:830
-#: htdocs/luci-static/resources/view/fchomo/node.js:1060
+#: htdocs/luci-static/resources/view/fchomo/node.js:1080
msgid "The %s private key, in PEM format."
msgstr "%s私钥,需要 PEM 格式。"
#: htdocs/luci-static/resources/fchomo/listeners.js:815
#: htdocs/luci-static/resources/fchomo/listeners.js:853
#: htdocs/luci-static/resources/view/fchomo/global.js:550
-#: htdocs/luci-static/resources/view/fchomo/node.js:1046
+#: htdocs/luci-static/resources/view/fchomo/node.js:1066
msgid "The %s public key, in PEM format."
msgstr "%s公钥,需要 PEM 格式。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1080
+#: htdocs/luci-static/resources/view/fchomo/node.js:1100
msgid ""
"The ECH parameter of the HTTPS record for the domain. Leave empty to resolve "
"via DNS."
@@ -2890,7 +2935,7 @@ msgid "The default value is 2:00 every day."
msgstr "默认值为每天 2:00。"
#: htdocs/luci-static/resources/fchomo/listeners.js:650
-#: htdocs/luci-static/resources/view/fchomo/node.js:932
+#: htdocs/luci-static/resources/view/fchomo/node.js:952
msgid ""
"The first padding must have a probability of 100% and at least 35 bytes."
msgstr "首个填充必须为 100% 的概率并且至少 35 字节。"
@@ -2906,7 +2951,7 @@ msgid "The matching %s will be deemed as poisoned."
msgstr "匹配 %s 的将被视为已被投毒污染。"
#: htdocs/luci-static/resources/fchomo/listeners.js:648
-#: htdocs/luci-static/resources/view/fchomo/node.js:930
+#: htdocs/luci-static/resources/view/fchomo/node.js:950
msgid "The server and client can set different padding parameters."
msgstr "服务器和客户端可以设置不同的填充参数。"
@@ -2916,8 +2961,8 @@ msgid "This ECH parameter needs to be added to the HTTPS record of the domain."
msgstr "此 ECH 参数需要添加到域名的 HTTPS 记录中。"
#: htdocs/luci-static/resources/view/fchomo/client.js:1579
-#: htdocs/luci-static/resources/view/fchomo/node.js:1040
-#: htdocs/luci-static/resources/view/fchomo/node.js:1651
+#: htdocs/luci-static/resources/view/fchomo/node.js:1060
+#: htdocs/luci-static/resources/view/fchomo/node.js:1709
msgid ""
"This is DANGEROUS, your traffic is almost like "
"PLAIN TEXT! Use at your own risk!"
@@ -2961,18 +3006,18 @@ msgstr "Tproxy 端口"
msgid "Traffic pattern"
msgstr "流量模式"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1807
+#: htdocs/luci-static/resources/view/fchomo/node.js:1865
msgid "Transit proxy group"
msgstr "中转代理组"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1813
+#: htdocs/luci-static/resources/view/fchomo/node.js:1871
msgid "Transit proxy node"
msgstr "中转代理节点"
#: htdocs/luci-static/resources/fchomo/listeners.js:231
#: htdocs/luci-static/resources/fchomo/listeners.js:962
#: htdocs/luci-static/resources/view/fchomo/node.js:355
-#: htdocs/luci-static/resources/view/fchomo/node.js:1122
+#: htdocs/luci-static/resources/view/fchomo/node.js:1142
msgid "Transport"
msgstr "传输层"
@@ -2982,7 +3027,7 @@ msgid "Transport fields"
msgstr "传输层字段"
#: htdocs/luci-static/resources/fchomo/listeners.js:967
-#: htdocs/luci-static/resources/view/fchomo/node.js:1127
+#: htdocs/luci-static/resources/view/fchomo/node.js:1147
msgid "Transport type"
msgstr "传输层类型"
@@ -3027,8 +3072,8 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:842
#: htdocs/luci-static/resources/view/fchomo/client.js:1028
#: htdocs/luci-static/resources/view/fchomo/node.js:238
-#: htdocs/luci-static/resources/view/fchomo/node.js:1493
-#: htdocs/luci-static/resources/view/fchomo/node.js:1778
+#: htdocs/luci-static/resources/view/fchomo/node.js:1551
+#: htdocs/luci-static/resources/view/fchomo/node.js:1836
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:276
msgid "Type"
msgstr "类型"
@@ -3043,8 +3088,8 @@ msgstr "类型"
#: htdocs/luci-static/resources/fchomo/listeners.js:555
#: htdocs/luci-static/resources/view/fchomo/client.js:588
#: htdocs/luci-static/resources/view/fchomo/client.js:678
-#: htdocs/luci-static/resources/view/fchomo/node.js:865
-#: htdocs/luci-static/resources/view/fchomo/node.js:1625
+#: htdocs/luci-static/resources/view/fchomo/node.js:885
+#: htdocs/luci-static/resources/view/fchomo/node.js:1683
msgid "UDP"
msgstr "UDP"
@@ -3112,8 +3157,8 @@ msgstr "未知错误。"
msgid "Unknown error: %s"
msgstr "未知错误:%s"
-#: htdocs/luci-static/resources/view/fchomo/node.js:870
-#: htdocs/luci-static/resources/view/fchomo/node.js:1630
+#: htdocs/luci-static/resources/view/fchomo/node.js:890
+#: htdocs/luci-static/resources/view/fchomo/node.js:1688
msgid "UoT"
msgstr "UDP over TCP (UoT)"
@@ -3121,22 +3166,22 @@ msgstr "UDP over TCP (UoT)"
msgid "Update failed."
msgstr "更新失败。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1562
+#: htdocs/luci-static/resources/view/fchomo/node.js:1620
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:382
msgid "Update interval"
msgstr "更新间隔"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1322
+#: htdocs/luci-static/resources/view/fchomo/node.js:1380
msgid "Upload bandwidth"
msgstr "上传带宽"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1323
+#: htdocs/luci-static/resources/view/fchomo/node.js:1381
msgid "Upload bandwidth in Mbps."
msgstr "上传带宽(单位:Mbps)。"
#: htdocs/luci-static/resources/fchomo/listeners.js:821
#: htdocs/luci-static/resources/fchomo/listeners.js:861
-#: htdocs/luci-static/resources/view/fchomo/node.js:1051
+#: htdocs/luci-static/resources/view/fchomo/node.js:1071
msgid "Upload certificate"
msgstr "上传证书"
@@ -3145,7 +3190,7 @@ msgid "Upload initial package"
msgstr "上传初始资源包"
#: htdocs/luci-static/resources/fchomo/listeners.js:836
-#: htdocs/luci-static/resources/view/fchomo/node.js:1065
+#: htdocs/luci-static/resources/view/fchomo/node.js:1085
msgid "Upload key"
msgstr "上传密钥"
@@ -3153,8 +3198,8 @@ msgstr "上传密钥"
#: htdocs/luci-static/resources/fchomo/listeners.js:839
#: htdocs/luci-static/resources/fchomo/listeners.js:864
#: htdocs/luci-static/resources/view/fchomo/global.js:306
-#: htdocs/luci-static/resources/view/fchomo/node.js:1054
-#: htdocs/luci-static/resources/view/fchomo/node.js:1068
+#: htdocs/luci-static/resources/view/fchomo/node.js:1074
+#: htdocs/luci-static/resources/view/fchomo/node.js:1088
msgid "Upload..."
msgstr "上传..."
@@ -3178,7 +3223,7 @@ msgstr "用于解析 DNS 服务器的域名。必须是 IP。"
msgid "Used to resolve the domain of the Proxy node."
msgstr "用于解析代理节点的域名。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:977
+#: htdocs/luci-static/resources/view/fchomo/node.js:997
msgid "Used to verify the hostname on the returned certificates."
msgstr "用于验证返回的证书上的主机名。"
@@ -3195,11 +3240,11 @@ msgstr "用户名"
msgid "Users filter mode"
msgstr "使用者过滤模式"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1236
+#: htdocs/luci-static/resources/view/fchomo/node.js:1256
msgid "V2ray HTTPUpgrade"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1241
+#: htdocs/luci-static/resources/view/fchomo/node.js:1261
msgid "V2ray HTTPUpgrade fast open"
msgstr ""
@@ -3213,8 +3258,8 @@ msgstr ""
msgid "VMess"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1499
-#: htdocs/luci-static/resources/view/fchomo/node.js:1784
+#: htdocs/luci-static/resources/view/fchomo/node.js:1557
+#: htdocs/luci-static/resources/view/fchomo/node.js:1842
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:319
msgid "Value"
msgstr "可视化值"
@@ -3225,11 +3270,11 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:514
#: htdocs/luci-static/resources/view/fchomo/node.js:506
-#: htdocs/luci-static/resources/view/fchomo/node.js:836
+#: htdocs/luci-static/resources/view/fchomo/node.js:856
msgid "Version"
msgstr "版本"
-#: htdocs/luci-static/resources/view/fchomo/node.js:844
+#: htdocs/luci-static/resources/view/fchomo/node.js:864
msgid "Version hint"
msgstr ""
@@ -3248,14 +3293,14 @@ msgstr "警告"
#: htdocs/luci-static/resources/fchomo/listeners.js:393
#: htdocs/luci-static/resources/fchomo/listeners.js:969
-#: htdocs/luci-static/resources/fchomo/listeners.js:980
+#: htdocs/luci-static/resources/fchomo/listeners.js:978
#: htdocs/luci-static/resources/fchomo/listeners.js:985
#: htdocs/luci-static/resources/view/fchomo/node.js:460
#: htdocs/luci-static/resources/view/fchomo/node.js:489
-#: htdocs/luci-static/resources/view/fchomo/node.js:1132
-#: htdocs/luci-static/resources/view/fchomo/node.js:1143
-#: htdocs/luci-static/resources/view/fchomo/node.js:1150
-#: htdocs/luci-static/resources/view/fchomo/node.js:1156
+#: htdocs/luci-static/resources/view/fchomo/node.js:1152
+#: htdocs/luci-static/resources/view/fchomo/node.js:1163
+#: htdocs/luci-static/resources/view/fchomo/node.js:1170
+#: htdocs/luci-static/resources/view/fchomo/node.js:1176
msgid "WebSocket"
msgstr ""
@@ -3271,27 +3316,42 @@ msgstr "白名单"
msgid "WireGuard"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:755
+#: htdocs/luci-static/resources/view/fchomo/node.js:775
msgid "WireGuard peer public key."
msgstr "WireGuard 对端公钥。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:762
+#: htdocs/luci-static/resources/view/fchomo/node.js:782
msgid "WireGuard pre-shared key."
msgstr "WireGuard 预共享密钥。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:747
+#: htdocs/luci-static/resources/view/fchomo/node.js:767
msgid "WireGuard requires base64-encoded private keys."
msgstr "WireGuard 要求 base64 编码的私钥。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1133
-#: htdocs/luci-static/resources/view/fchomo/node.js:1151
+#: htdocs/luci-static/resources/fchomo/listeners.js:970
+#: htdocs/luci-static/resources/fchomo/listeners.js:979
+#: htdocs/luci-static/resources/view/fchomo/node.js:1153
+#: htdocs/luci-static/resources/view/fchomo/node.js:1171
msgid "XHTTP"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1246
+#: htdocs/luci-static/resources/fchomo/listeners.js:1015
+#: htdocs/luci-static/resources/view/fchomo/node.js:1266
msgid "XHTTP mode"
msgstr "XHTTP 模式"
+#: htdocs/luci-static/resources/view/fchomo/node.js:1290
+msgid "XMUX"
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:1295
+#: htdocs/luci-static/resources/view/fchomo/node.js:1300
+#: htdocs/luci-static/resources/view/fchomo/node.js:1305
+#: htdocs/luci-static/resources/view/fchomo/node.js:1310
+#: htdocs/luci-static/resources/view/fchomo/node.js:1315
+msgid "XMUX:"
+msgstr ""
+
#: htdocs/luci-static/resources/fchomo/listeners.js:609
msgid "XOR mode"
msgstr "XOR 模式"
@@ -3338,7 +3398,7 @@ msgstr "bbr"
#: htdocs/luci-static/resources/fchomo/listeners.js:826
#: htdocs/luci-static/resources/fchomo/listeners.js:866
-#: htdocs/luci-static/resources/view/fchomo/node.js:1056
+#: htdocs/luci-static/resources/view/fchomo/node.js:1076
msgid "certificate"
msgstr "证书"
@@ -3365,13 +3425,13 @@ msgstr "decryption"
msgid "dnsmasq selects upstream on its own. (may affect CDN accuracy)"
msgstr "dnsmasq 自行选择上游服务器。 (可能影响 CDN 准确性)"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1642
+#: htdocs/luci-static/resources/view/fchomo/node.js:1700
msgid "down"
msgstr "Hysteria 下载速率"
#: htdocs/luci-static/resources/fchomo/listeners.js:596
-#: htdocs/luci-static/resources/view/fchomo/node.js:884
-#: htdocs/luci-static/resources/view/fchomo/node.js:907
+#: htdocs/luci-static/resources/view/fchomo/node.js:904
+#: htdocs/luci-static/resources/view/fchomo/node.js:927
msgid "encryption"
msgstr "encryption"
@@ -3381,25 +3441,25 @@ msgid "false = bandwidth optimized downlink; true = pure Sudoku downlink."
msgstr "false = 带宽优化下行 true = 纯 Sudoku 下行。"
#: htdocs/luci-static/resources/fchomo/listeners.js:968
-#: htdocs/luci-static/resources/fchomo/listeners.js:979
+#: htdocs/luci-static/resources/fchomo/listeners.js:977
#: htdocs/luci-static/resources/fchomo/listeners.js:984
-#: htdocs/luci-static/resources/view/fchomo/node.js:1131
-#: htdocs/luci-static/resources/view/fchomo/node.js:1142
-#: htdocs/luci-static/resources/view/fchomo/node.js:1149
-#: htdocs/luci-static/resources/view/fchomo/node.js:1155
+#: htdocs/luci-static/resources/view/fchomo/node.js:1151
+#: htdocs/luci-static/resources/view/fchomo/node.js:1162
+#: htdocs/luci-static/resources/view/fchomo/node.js:1169
+#: htdocs/luci-static/resources/view/fchomo/node.js:1175
msgid "gRPC"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1212
+#: htdocs/luci-static/resources/view/fchomo/node.js:1232
msgid "gRPC User-Agent"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1217
+#: htdocs/luci-static/resources/view/fchomo/node.js:1237
msgid "gRPC ping interval"
msgstr "gRPC ping 间隔"
-#: htdocs/luci-static/resources/fchomo/listeners.js:1003
-#: htdocs/luci-static/resources/view/fchomo/node.js:1208
+#: htdocs/luci-static/resources/fchomo/listeners.js:1009
+#: htdocs/luci-static/resources/view/fchomo/node.js:1228
msgid "gRPC service name"
msgstr "gRPC 服务名称"
@@ -3407,7 +3467,7 @@ msgstr "gRPC 服务名称"
msgid "gVisor"
msgstr "gVisor"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1273
+#: htdocs/luci-static/resources/view/fchomo/node.js:1331
msgid "h2mux"
msgstr ""
@@ -3425,7 +3485,7 @@ msgstr "metacubexd"
#: htdocs/luci-static/resources/view/fchomo/client.js:1480
#: htdocs/luci-static/resources/view/fchomo/client.js:1711
#: htdocs/luci-static/resources/view/fchomo/client.js:1767
-#: htdocs/luci-static/resources/view/fchomo/node.js:1465
+#: htdocs/luci-static/resources/view/fchomo/node.js:1523
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:239
msgid "mihomo config"
msgstr "mihomo 配置"
@@ -3434,8 +3494,8 @@ msgstr "mihomo 配置"
msgid "mlkem768x25519plus"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1339
-#: htdocs/luci-static/resources/view/fchomo/node.js:1620
+#: htdocs/luci-static/resources/view/fchomo/node.js:1397
+#: htdocs/luci-static/resources/view/fchomo/node.js:1678
msgid "mpTCP"
msgstr "多路径 TCP (mpTCP)"
@@ -3460,7 +3520,7 @@ msgstr "非空值"
#: htdocs/luci-static/resources/fchomo/listeners.js:495
#: htdocs/luci-static/resources/view/fchomo/node.js:647
#: htdocs/luci-static/resources/view/fchomo/node.js:667
-#: htdocs/luci-static/resources/view/fchomo/node.js:805
+#: htdocs/luci-static/resources/view/fchomo/node.js:825
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:315
msgid "none"
msgstr "无"
@@ -3479,7 +3539,7 @@ msgstr "不包含 \",\""
msgid "null"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:806
+#: htdocs/luci-static/resources/view/fchomo/node.js:826
msgid "obfs-simple"
msgstr ""
@@ -3491,7 +3551,7 @@ msgstr "仅当 %s 为 %s 时适用。"
msgid "only applies when %s is not %s."
msgstr "仅当 %s 不为 %s 时适用。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1600
+#: htdocs/luci-static/resources/view/fchomo/node.js:1658
msgid "override.proxy-name"
msgstr ""
@@ -3499,7 +3559,8 @@ msgstr ""
msgid "packet addr (v2ray-core v5+)"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1248
+#: htdocs/luci-static/resources/fchomo/listeners.js:1019
+#: htdocs/luci-static/resources/view/fchomo/node.js:1270
msgid "packet-up"
msgstr ""
@@ -3509,7 +3570,7 @@ msgid "poll"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:841
-#: htdocs/luci-static/resources/view/fchomo/node.js:1070
+#: htdocs/luci-static/resources/view/fchomo/node.js:1090
msgid "private key"
msgstr "私钥"
@@ -3522,7 +3583,7 @@ msgstr "razord-meta"
msgid "requires front-end adaptation using the API."
msgstr "需要使用 API 的前端适配。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:810
+#: htdocs/luci-static/resources/view/fchomo/node.js:830
msgid "restls"
msgstr ""
@@ -3531,11 +3592,11 @@ msgid "rule-set"
msgstr "规则集"
#: htdocs/luci-static/resources/fchomo/listeners.js:496
-#: htdocs/luci-static/resources/view/fchomo/node.js:809
+#: htdocs/luci-static/resources/view/fchomo/node.js:829
msgid "shadow-tls"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1271
+#: htdocs/luci-static/resources/view/fchomo/node.js:1329
msgid "smux"
msgstr ""
@@ -3548,10 +3609,20 @@ msgstr ""
msgid "src"
msgstr "src"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1247
+#: htdocs/luci-static/resources/fchomo/listeners.js:1017
+#: htdocs/luci-static/resources/view/fchomo/node.js:1268
msgid "stream-one"
msgstr ""
+#: htdocs/luci-static/resources/fchomo/listeners.js:1018
+#: htdocs/luci-static/resources/view/fchomo/node.js:1269
+msgid "stream-up"
+msgstr ""
+
+#: htdocs/luci-static/resources/fchomo/listeners.js:1028
+msgid "stream-up server seconds"
+msgstr ""
+
#: htdocs/luci-static/resources/view/fchomo/node.js:491
msgid "stream/poll/auto"
msgstr ""
@@ -3576,28 +3647,28 @@ msgstr "独立标识"
msgid "unique value"
msgstr "独立值"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1636
+#: htdocs/luci-static/resources/view/fchomo/node.js:1694
msgid "up"
msgstr "Hysteria 上传速率"
#: htdocs/luci-static/resources/fchomo/listeners.js:515
#: htdocs/luci-static/resources/view/fchomo/node.js:507
#: htdocs/luci-static/resources/view/fchomo/node.js:542
-#: htdocs/luci-static/resources/view/fchomo/node.js:837
-#: htdocs/luci-static/resources/view/fchomo/node.js:877
+#: htdocs/luci-static/resources/view/fchomo/node.js:857
+#: htdocs/luci-static/resources/view/fchomo/node.js:897
msgid "v1"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:516
#: htdocs/luci-static/resources/view/fchomo/node.js:508
-#: htdocs/luci-static/resources/view/fchomo/node.js:838
-#: htdocs/luci-static/resources/view/fchomo/node.js:878
+#: htdocs/luci-static/resources/view/fchomo/node.js:858
+#: htdocs/luci-static/resources/view/fchomo/node.js:898
msgid "v2"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:517
#: htdocs/luci-static/resources/view/fchomo/node.js:509
-#: htdocs/luci-static/resources/view/fchomo/node.js:839
+#: htdocs/luci-static/resources/view/fchomo/node.js:859
msgid "v3"
msgstr ""
@@ -3606,7 +3677,7 @@ msgstr ""
msgid "valid JSON format"
msgstr "有效的 JSON 格式"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1030
+#: htdocs/luci-static/resources/view/fchomo/node.js:1050
msgid "valid SHA256 string with %d characters"
msgstr "包含 %d 个字符的有效 SHA256 字符串"
@@ -3652,7 +3723,7 @@ msgstr ""
msgid "yacd-meta"
msgstr "yacd-meta"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1272
+#: htdocs/luci-static/resources/view/fchomo/node.js:1330
msgid "yamux"
msgstr ""
diff --git a/luci-app-fchomo/po/zh_Hant/fchomo.po b/luci-app-fchomo/po/zh_Hant/fchomo.po
index 7426cc83..21dd1701 100644
--- a/luci-app-fchomo/po/zh_Hant/fchomo.po
+++ b/luci-app-fchomo/po/zh_Hant/fchomo.po
@@ -32,10 +32,10 @@ msgstr "(已導入)"
#: htdocs/luci-static/resources/fchomo/listeners.js:861
#: htdocs/luci-static/resources/view/fchomo/global.js:543
#: htdocs/luci-static/resources/view/fchomo/global.js:549
-#: htdocs/luci-static/resources/view/fchomo/node.js:1045
-#: htdocs/luci-static/resources/view/fchomo/node.js:1051
-#: htdocs/luci-static/resources/view/fchomo/node.js:1059
#: htdocs/luci-static/resources/view/fchomo/node.js:1065
+#: htdocs/luci-static/resources/view/fchomo/node.js:1071
+#: htdocs/luci-static/resources/view/fchomo/node.js:1079
+#: htdocs/luci-static/resources/view/fchomo/node.js:1085
msgid "(mTLS)"
msgstr ""
@@ -46,10 +46,10 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1056
#: htdocs/luci-static/resources/view/fchomo/client.js:1057
#: htdocs/luci-static/resources/view/fchomo/client.js:1278
-#: htdocs/luci-static/resources/view/fchomo/node.js:1788
-#: htdocs/luci-static/resources/view/fchomo/node.js:1794
-#: htdocs/luci-static/resources/view/fchomo/node.js:1808
-#: htdocs/luci-static/resources/view/fchomo/node.js:1814
+#: htdocs/luci-static/resources/view/fchomo/node.js:1846
+#: htdocs/luci-static/resources/view/fchomo/node.js:1852
+#: htdocs/luci-static/resources/view/fchomo/node.js:1866
+#: htdocs/luci-static/resources/view/fchomo/node.js:1872
msgid "-- Please choose --"
msgstr "-- 請選擇 --"
@@ -85,8 +85,8 @@ msgstr "僅限 0 或 1。"
#: htdocs/luci-static/resources/fchomo/listeners.js:822
#: htdocs/luci-static/resources/fchomo/listeners.js:837
#: htdocs/luci-static/resources/fchomo/listeners.js:862
-#: htdocs/luci-static/resources/view/fchomo/node.js:1052
-#: htdocs/luci-static/resources/view/fchomo/node.js:1066
+#: htdocs/luci-static/resources/view/fchomo/node.js:1072
+#: htdocs/luci-static/resources/view/fchomo/node.js:1086
msgid "Save your configuration before uploading files!"
msgstr "上傳文件前請先保存配置!"
@@ -182,11 +182,11 @@ msgstr "新增 節點"
msgid "Add a inbound"
msgstr "新增 入站"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1379
+#: htdocs/luci-static/resources/view/fchomo/node.js:1437
msgid "Add a provider"
msgstr "新增 供應商"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1764
+#: htdocs/luci-static/resources/view/fchomo/node.js:1822
msgid "Add a proxy chain"
msgstr "新增 代理鏈"
@@ -210,11 +210,11 @@ msgstr "新增 伺服器"
msgid "Add a sub rule"
msgstr "新增 子規則"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1589
+#: htdocs/luci-static/resources/view/fchomo/node.js:1647
msgid "Add prefix"
msgstr "添加前綴"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1593
+#: htdocs/luci-static/resources/view/fchomo/node.js:1651
msgid "Add suffix"
msgstr "添加後綴"
@@ -251,7 +251,7 @@ msgid ""
msgstr ""
"允許從私有網路訪問。要從公共網站訪問私有網路上的 API,則必須啟用。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:768
+#: htdocs/luci-static/resources/view/fchomo/node.js:788
msgid "Allowed IPs"
msgstr "允許的 IP"
@@ -295,9 +295,11 @@ msgid "Authenticated length"
msgstr "認證長度"
#: htdocs/luci-static/resources/fchomo/listeners.js:392
+#: htdocs/luci-static/resources/fchomo/listeners.js:1016
#: htdocs/luci-static/resources/view/fchomo/global.js:402
#: htdocs/luci-static/resources/view/fchomo/node.js:459
#: htdocs/luci-static/resources/view/fchomo/node.js:483
+#: htdocs/luci-static/resources/view/fchomo/node.js:1267
msgid "Auto"
msgstr "自動"
@@ -343,13 +345,13 @@ msgid "Binary mrs"
msgstr "二進位 mrs"
#: htdocs/luci-static/resources/view/fchomo/global.js:734
-#: htdocs/luci-static/resources/view/fchomo/node.js:1349
-#: htdocs/luci-static/resources/view/fchomo/node.js:1662
+#: htdocs/luci-static/resources/view/fchomo/node.js:1407
+#: htdocs/luci-static/resources/view/fchomo/node.js:1720
msgid "Bind interface"
msgstr "綁定介面"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1350
-#: htdocs/luci-static/resources/view/fchomo/node.js:1663
+#: htdocs/luci-static/resources/view/fchomo/node.js:1408
+#: htdocs/luci-static/resources/view/fchomo/node.js:1721
msgid "Bind outbound interface."
msgstr "綁定出站介面。"
@@ -414,17 +416,17 @@ msgstr "CORS 允許的來源,留空則使用 *。"
msgid "Cancel"
msgstr "取消"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1024
+#: htdocs/luci-static/resources/view/fchomo/node.js:1044
msgid "Cert fingerprint"
msgstr "憑證指紋"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1025
+#: htdocs/luci-static/resources/view/fchomo/node.js:1045
msgid ""
"Certificate fingerprint. Used to implement SSL Pinning and prevent MitM."
msgstr "憑證指紋。用於實現 SSL憑證固定 並防止 MitM。"
#: htdocs/luci-static/resources/fchomo/listeners.js:814
-#: htdocs/luci-static/resources/view/fchomo/node.js:1045
+#: htdocs/luci-static/resources/view/fchomo/node.js:1065
msgid "Certificate path"
msgstr "憑證路徑"
@@ -481,9 +483,9 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:637
#: htdocs/luci-static/resources/fchomo/listeners.js:853
#: htdocs/luci-static/resources/view/fchomo/global.js:550
-#: htdocs/luci-static/resources/view/fchomo/node.js:919
-#: htdocs/luci-static/resources/view/fchomo/node.js:1046
-#: htdocs/luci-static/resources/view/fchomo/node.js:1060
+#: htdocs/luci-static/resources/view/fchomo/node.js:939
+#: htdocs/luci-static/resources/view/fchomo/node.js:1066
+#: htdocs/luci-static/resources/view/fchomo/node.js:1080
#: root/usr/share/luci/menu.d/luci-app-fchomo.json:22
msgid "Client"
msgstr "客戶端"
@@ -496,7 +498,7 @@ msgstr "客戶端認證憑證路徑"
msgid "Client Auth type"
msgstr "客戶端認證類型"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1091
+#: htdocs/luci-static/resources/view/fchomo/node.js:1111
msgid "Client fingerprint"
msgstr "客戶端指紋"
@@ -521,12 +523,12 @@ msgstr "常用連接埠(繞過 P2P 流量)"
msgid "Complete"
msgstr "完成"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1609
+#: htdocs/luci-static/resources/view/fchomo/node.js:1667
msgid "Configuration Items"
msgstr "配置項"
#: htdocs/luci-static/resources/fchomo/listeners.js:540
-#: htdocs/luci-static/resources/view/fchomo/node.js:857
+#: htdocs/luci-static/resources/view/fchomo/node.js:877
msgid "Congestion controller"
msgstr "擁塞控制器"
@@ -539,14 +541,14 @@ msgid "Content copied to clipboard!"
msgstr "內容已複製到剪貼簿!"
#: htdocs/luci-static/resources/view/fchomo/client.js:670
-#: htdocs/luci-static/resources/view/fchomo/node.js:1519
-#: htdocs/luci-static/resources/view/fchomo/node.js:1545
+#: htdocs/luci-static/resources/view/fchomo/node.js:1577
+#: htdocs/luci-static/resources/view/fchomo/node.js:1603
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:339
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:365
msgid "Content will not be verified, Please make sure you enter it correctly."
msgstr "內容將不會被驗證,請確保輸入正確。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1518
+#: htdocs/luci-static/resources/view/fchomo/node.js:1576
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:338
msgid "Contents"
msgstr "內容"
@@ -571,7 +573,7 @@ msgstr "Cron 表達式"
msgid "Custom Direct List"
msgstr "自訂直連清單"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1580
+#: htdocs/luci-static/resources/view/fchomo/node.js:1638
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:400
msgid "Custom HTTP header."
msgstr "自訂 HTTP header。"
@@ -607,7 +609,7 @@ msgstr " DNS 連接埠"
#: htdocs/luci-static/resources/view/fchomo/client.js:1428
#: htdocs/luci-static/resources/view/fchomo/client.js:1437
#: htdocs/luci-static/resources/view/fchomo/node.js:715
-#: htdocs/luci-static/resources/view/fchomo/node.js:798
+#: htdocs/luci-static/resources/view/fchomo/node.js:818
msgid "DNS server"
msgstr "DNS 伺服器"
@@ -635,15 +637,15 @@ msgstr "預設 DNS(由 WAN 下發)"
msgid "Default DNS server"
msgstr "預設 DNS 伺服器"
-#: htdocs/luci-static/resources/view/fchomo/node.js:769
+#: htdocs/luci-static/resources/view/fchomo/node.js:789
msgid "Destination addresses allowed to be forwarded via Wireguard."
msgstr "允許通過 WireGuard 轉發的目的位址"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1787
+#: htdocs/luci-static/resources/view/fchomo/node.js:1845
msgid "Destination provider"
msgstr "落地供應商"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1793
+#: htdocs/luci-static/resources/view/fchomo/node.js:1851
msgid "Destination proxy node"
msgstr "落地代理節點"
@@ -651,8 +653,8 @@ msgstr "落地代理節點"
msgid "Dial fields"
msgstr "撥號欄位"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1800
-#: htdocs/luci-static/resources/view/fchomo/node.js:1820
+#: htdocs/luci-static/resources/view/fchomo/node.js:1858
+#: htdocs/luci-static/resources/view/fchomo/node.js:1878
msgid "Different chain head/tail"
msgstr "不同的鏈頭/鏈尾"
@@ -690,7 +692,7 @@ msgstr "停用 quic-go 的 通用分段卸載(GSO)"
msgid "Disable ICMP Forwarding"
msgstr "禁用 ICMP 轉發"
-#: htdocs/luci-static/resources/view/fchomo/node.js:970
+#: htdocs/luci-static/resources/view/fchomo/node.js:990
msgid "Disable SNI"
msgstr "停用 SNI"
@@ -718,21 +720,21 @@ msgstr ""
msgid "Domain"
msgstr "網域"
-#: htdocs/luci-static/resources/view/fchomo/node.js:971
+#: htdocs/luci-static/resources/view/fchomo/node.js:991
msgid "Donot send server name in ClientHello."
msgstr "不要在 ClientHello 中傳送伺服器名稱。"
#: htdocs/luci-static/resources/view/fchomo/client.js:1577
-#: htdocs/luci-static/resources/view/fchomo/node.js:1038
-#: htdocs/luci-static/resources/view/fchomo/node.js:1649
+#: htdocs/luci-static/resources/view/fchomo/node.js:1058
+#: htdocs/luci-static/resources/view/fchomo/node.js:1707
msgid "Donot verifying server certificate."
msgstr "不驗證伺服器憑證。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1328
+#: htdocs/luci-static/resources/view/fchomo/node.js:1386
msgid "Download bandwidth"
msgstr "下載頻寬"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1329
+#: htdocs/luci-static/resources/view/fchomo/node.js:1387
msgid "Download bandwidth in Mbps."
msgstr "下載頻寬(單位:Mbps)。"
@@ -748,12 +750,12 @@ msgstr "下載成功。"
msgid "Dual stack"
msgstr "雙棧"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1085
+#: htdocs/luci-static/resources/view/fchomo/node.js:1105
msgid "ECH HTTPS record query servername"
msgstr "ECH HTTPS 記錄查詢網域"
#: htdocs/luci-static/resources/fchomo/listeners.js:910
-#: htdocs/luci-static/resources/view/fchomo/node.js:1079
+#: htdocs/luci-static/resources/view/fchomo/node.js:1099
msgid "ECH config"
msgstr "ECH 配置"
@@ -773,11 +775,11 @@ msgstr ""
msgid "ETag support"
msgstr "ETag 支援"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1225
+#: htdocs/luci-static/resources/view/fchomo/node.js:1245
msgid "Early Data first packet length limit."
msgstr "前置數據長度閾值"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1231
+#: htdocs/luci-static/resources/view/fchomo/node.js:1251
msgid "Early Data header name"
msgstr "前置數據標頭"
@@ -793,7 +795,7 @@ msgstr "編輯節點"
msgid "Edit ruleset"
msgstr "編輯規則集"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1516
+#: htdocs/luci-static/resources/view/fchomo/node.js:1574
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:336
msgid "Editer"
msgstr "編輯器"
@@ -813,9 +815,9 @@ msgstr "消除加密頭特徵"
#: htdocs/luci-static/resources/view/fchomo/global.js:401
#: htdocs/luci-static/resources/view/fchomo/global.js:680
#: htdocs/luci-static/resources/view/fchomo/node.js:234
-#: htdocs/luci-static/resources/view/fchomo/node.js:1489
-#: htdocs/luci-static/resources/view/fchomo/node.js:1685
-#: htdocs/luci-static/resources/view/fchomo/node.js:1774
+#: htdocs/luci-static/resources/view/fchomo/node.js:1547
+#: htdocs/luci-static/resources/view/fchomo/node.js:1743
+#: htdocs/luci-static/resources/view/fchomo/node.js:1832
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:264
#: htdocs/luci-static/resources/view/fchomo/server.js:49
msgid "Enable"
@@ -842,19 +844,19 @@ msgstr ""
"為出站連線啟用 IP4P 轉換"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1073
+#: htdocs/luci-static/resources/view/fchomo/node.js:1093
msgid "Enable ECH"
msgstr "啟用 ECH"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1316
+#: htdocs/luci-static/resources/view/fchomo/node.js:1374
msgid "Enable TCP Brutal"
msgstr "啟用 TCP Brutal"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1317
+#: htdocs/luci-static/resources/view/fchomo/node.js:1375
msgid "Enable TCP Brutal congestion control algorithm"
msgstr "啟用 TCP Brutal 擁塞控制演算法。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1305
+#: htdocs/luci-static/resources/view/fchomo/node.js:1363
msgid "Enable multiplexing only for TCP."
msgstr "僅為 TCP 啟用多路復用。"
@@ -863,16 +865,16 @@ msgstr "僅為 TCP 啟用多路復用。"
msgid "Enable obfuscate for downlink"
msgstr "啟用下行鏈路混淆"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1299
+#: htdocs/luci-static/resources/view/fchomo/node.js:1357
msgid "Enable padding"
msgstr "啟用填充"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1310
+#: htdocs/luci-static/resources/view/fchomo/node.js:1368
msgid "Enable statistic"
msgstr "啟用統計"
-#: htdocs/luci-static/resources/view/fchomo/node.js:871
-#: htdocs/luci-static/resources/view/fchomo/node.js:1631
+#: htdocs/luci-static/resources/view/fchomo/node.js:891
+#: htdocs/luci-static/resources/view/fchomo/node.js:1689
msgid ""
"Enable the SUoT protocol, requires server support. Conflict with Multiplex."
msgstr "啟用 SUoT 協議,需要服務端支援。與多路復用衝突。"
@@ -911,7 +913,7 @@ msgid ""
"if empty."
msgstr "超過此限制將會觸發強制健康檢查。留空則使用 5。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1743
+#: htdocs/luci-static/resources/view/fchomo/node.js:1801
msgid "Exclude matched node types."
msgstr "排除匹配的節點類型。"
@@ -924,7 +926,7 @@ msgstr ""
"rel=\"noreferrer noopener\">此處。"
#: htdocs/luci-static/resources/view/fchomo/client.js:1161
-#: htdocs/luci-static/resources/view/fchomo/node.js:1736
+#: htdocs/luci-static/resources/view/fchomo/node.js:1794
msgid "Exclude nodes that meet keywords or regexps."
msgstr "排除匹配關鍵字或表達式的節點。"
@@ -933,12 +935,12 @@ msgid "Expand/Collapse result"
msgstr "展開/收起 結果"
#: htdocs/luci-static/resources/view/fchomo/client.js:1121
-#: htdocs/luci-static/resources/view/fchomo/node.js:1721
+#: htdocs/luci-static/resources/view/fchomo/node.js:1779
msgid "Expected HTTP code. 204 will be used if empty."
msgstr "預期的 HTTP code。留空則使用 204。"
#: htdocs/luci-static/resources/view/fchomo/client.js:1123
-#: htdocs/luci-static/resources/view/fchomo/node.js:1723
+#: htdocs/luci-static/resources/view/fchomo/node.js:1781
msgid "Expected status"
msgstr "預期狀態"
@@ -979,10 +981,10 @@ msgstr "預期狀態"
#: htdocs/luci-static/resources/view/fchomo/node.js:436
#: htdocs/luci-static/resources/view/fchomo/node.js:489
#: htdocs/luci-static/resources/view/fchomo/node.js:491
-#: htdocs/luci-static/resources/view/fchomo/node.js:942
-#: htdocs/luci-static/resources/view/fchomo/node.js:1030
-#: htdocs/luci-static/resources/view/fchomo/node.js:1800
-#: htdocs/luci-static/resources/view/fchomo/node.js:1820
+#: htdocs/luci-static/resources/view/fchomo/node.js:962
+#: htdocs/luci-static/resources/view/fchomo/node.js:1050
+#: htdocs/luci-static/resources/view/fchomo/node.js:1858
+#: htdocs/luci-static/resources/view/fchomo/node.js:1878
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:291
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:305
msgid "Expecting: %s"
@@ -990,9 +992,9 @@ msgstr "請輸入:%s"
#: htdocs/luci-static/resources/fchomo/listeners.js:977
#: htdocs/luci-static/resources/fchomo/listeners.js:984
-#: htdocs/luci-static/resources/view/fchomo/node.js:1140
-#: htdocs/luci-static/resources/view/fchomo/node.js:1147
-#: htdocs/luci-static/resources/view/fchomo/node.js:1155
+#: htdocs/luci-static/resources/view/fchomo/node.js:1160
+#: htdocs/luci-static/resources/view/fchomo/node.js:1167
+#: htdocs/luci-static/resources/view/fchomo/node.js:1175
msgid "Expecting: only support %s."
msgstr "請輸入:僅支援 %s."
@@ -1042,7 +1044,7 @@ msgid "Fallback filter"
msgstr "後備過濾器"
#: htdocs/luci-static/resources/view/fchomo/client.js:1156
-#: htdocs/luci-static/resources/view/fchomo/node.js:1730
+#: htdocs/luci-static/resources/view/fchomo/node.js:1788
msgid "Filter nodes that meet keywords or regexps."
msgstr "過濾匹配關鍵字或表達式的節點。"
@@ -1085,8 +1087,8 @@ msgstr ""
"noopener\">%s."
#: htdocs/luci-static/resources/view/fchomo/client.js:1122
-#: htdocs/luci-static/resources/view/fchomo/node.js:1599
-#: htdocs/luci-static/resources/view/fchomo/node.js:1722
+#: htdocs/luci-static/resources/view/fchomo/node.js:1657
+#: htdocs/luci-static/resources/view/fchomo/node.js:1780
msgid ""
"For format see %s."
@@ -1095,7 +1097,7 @@ msgstr ""
"a>."
#: htdocs/luci-static/resources/view/fchomo/node.js:710
-#: htdocs/luci-static/resources/view/fchomo/node.js:793
+#: htdocs/luci-static/resources/view/fchomo/node.js:813
msgid "Force DNS remote resolution."
msgstr "強制 DNS 遠端解析。"
@@ -1114,7 +1116,7 @@ msgstr "格式"
msgid "FullCombo Shark!"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1180
+#: htdocs/luci-static/resources/view/fchomo/node.js:1200
msgid "GET"
msgstr ""
@@ -1129,7 +1131,7 @@ msgstr "常規"
#: htdocs/luci-static/resources/fchomo/listeners.js:119
#: htdocs/luci-static/resources/view/fchomo/client.js:1009
#: htdocs/luci-static/resources/view/fchomo/node.js:222
-#: htdocs/luci-static/resources/view/fchomo/node.js:1479
+#: htdocs/luci-static/resources/view/fchomo/node.js:1537
msgid "General fields"
msgstr "常規欄位"
@@ -1211,17 +1213,16 @@ msgstr "組"
#: htdocs/luci-static/resources/fchomo.js:146
#: htdocs/luci-static/resources/fchomo.js:179
-#: htdocs/luci-static/resources/fchomo/listeners.js:977
-#: htdocs/luci-static/resources/view/fchomo/node.js:816
-#: htdocs/luci-static/resources/view/fchomo/node.js:1129
-#: htdocs/luci-static/resources/view/fchomo/node.js:1140
-#: htdocs/luci-static/resources/view/fchomo/node.js:1147
+#: htdocs/luci-static/resources/view/fchomo/node.js:836
+#: htdocs/luci-static/resources/view/fchomo/node.js:1149
+#: htdocs/luci-static/resources/view/fchomo/node.js:1160
+#: htdocs/luci-static/resources/view/fchomo/node.js:1167
msgid "HTTP"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:267
-#: htdocs/luci-static/resources/view/fchomo/node.js:1202
-#: htdocs/luci-static/resources/view/fchomo/node.js:1579
+#: htdocs/luci-static/resources/view/fchomo/node.js:1222
+#: htdocs/luci-static/resources/view/fchomo/node.js:1637
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:399
msgid "HTTP header"
msgstr "HTTP header"
@@ -1247,7 +1248,7 @@ msgstr "HTTP 偽裝多路復用"
msgid "HTTP mask: %s"
msgstr "HTTP 偽裝: %s"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1179
+#: htdocs/luci-static/resources/view/fchomo/node.js:1199
msgid "HTTP request method"
msgstr "HTTP 請求方法"
@@ -1266,10 +1267,9 @@ msgid ""
"returned if empty."
msgstr "身份驗證失敗時的 HTTP3 伺服器回應。預設回傳 404 頁面。"
-#: htdocs/luci-static/resources/fchomo/listeners.js:978
-#: htdocs/luci-static/resources/view/fchomo/node.js:1130
-#: htdocs/luci-static/resources/view/fchomo/node.js:1141
-#: htdocs/luci-static/resources/view/fchomo/node.js:1148
+#: htdocs/luci-static/resources/view/fchomo/node.js:1150
+#: htdocs/luci-static/resources/view/fchomo/node.js:1161
+#: htdocs/luci-static/resources/view/fchomo/node.js:1168
msgid "HTTPUpgrade"
msgstr ""
@@ -1294,27 +1294,27 @@ msgid "Health check"
msgstr "健康檢查"
#: htdocs/luci-static/resources/view/fchomo/client.js:1091
-#: htdocs/luci-static/resources/view/fchomo/node.js:1690
+#: htdocs/luci-static/resources/view/fchomo/node.js:1748
msgid "Health check URL"
msgstr "健康檢查 URL"
#: htdocs/luci-static/resources/view/fchomo/client.js:1120
-#: htdocs/luci-static/resources/view/fchomo/node.js:1720
+#: htdocs/luci-static/resources/view/fchomo/node.js:1778
msgid "Health check expected status"
msgstr "健康檢查预期状态"
#: htdocs/luci-static/resources/view/fchomo/client.js:1100
-#: htdocs/luci-static/resources/view/fchomo/node.js:1700
+#: htdocs/luci-static/resources/view/fchomo/node.js:1758
msgid "Health check interval"
msgstr "健康檢查間隔"
#: htdocs/luci-static/resources/view/fchomo/client.js:1107
-#: htdocs/luci-static/resources/view/fchomo/node.js:1707
+#: htdocs/luci-static/resources/view/fchomo/node.js:1765
msgid "Health check timeout"
msgstr "健康檢查超时"
#: htdocs/luci-static/resources/view/fchomo/client.js:1011
-#: htdocs/luci-static/resources/view/fchomo/node.js:1481
+#: htdocs/luci-static/resources/view/fchomo/node.js:1539
msgid "Health fields"
msgstr "健康欄位"
@@ -1326,7 +1326,7 @@ msgstr "心跳間隔"
msgid "Hidden"
msgstr "隱藏"
-#: htdocs/luci-static/resources/view/fchomo/node.js:822
+#: htdocs/luci-static/resources/view/fchomo/node.js:842
msgid "Host that supports TLS 1.3"
msgstr "主機名稱 (支援 TLS 1.3)"
@@ -1365,8 +1365,8 @@ msgstr ""
msgid "IP override"
msgstr "IP 覆寫"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1361
-#: htdocs/luci-static/resources/view/fchomo/node.js:1676
+#: htdocs/luci-static/resources/view/fchomo/node.js:1419
+#: htdocs/luci-static/resources/view/fchomo/node.js:1734
msgid "IP version"
msgstr "IP 版本"
@@ -1427,8 +1427,8 @@ msgstr "導入"
#: htdocs/luci-static/resources/view/fchomo/client.js:1713
#: htdocs/luci-static/resources/view/fchomo/client.js:1748
#: htdocs/luci-static/resources/view/fchomo/client.js:1769
-#: htdocs/luci-static/resources/view/fchomo/node.js:1386
-#: htdocs/luci-static/resources/view/fchomo/node.js:1467
+#: htdocs/luci-static/resources/view/fchomo/node.js:1444
+#: htdocs/luci-static/resources/view/fchomo/node.js:1525
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:153
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:241
msgid "Import mihomo config"
@@ -1444,12 +1444,12 @@ msgstr "導入規則集連結"
#: htdocs/luci-static/resources/fchomo/listeners.js:181
#: htdocs/luci-static/resources/view/fchomo/node.js:286
#: htdocs/luci-static/resources/view/fchomo/node.js:292
-#: htdocs/luci-static/resources/view/fchomo/node.js:1637
-#: htdocs/luci-static/resources/view/fchomo/node.js:1643
+#: htdocs/luci-static/resources/view/fchomo/node.js:1695
+#: htdocs/luci-static/resources/view/fchomo/node.js:1701
msgid "In Mbps."
msgstr "單位為 Mbps。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1557
+#: htdocs/luci-static/resources/view/fchomo/node.js:1615
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:377
msgid "In bytes. %s will be used if empty."
msgstr "單位為位元組。留空則使用 %s。"
@@ -1461,7 +1461,7 @@ msgstr "單位為毫秒。"
#: htdocs/luci-static/resources/view/fchomo/client.js:1108
#: htdocs/luci-static/resources/view/fchomo/client.js:1137
-#: htdocs/luci-static/resources/view/fchomo/node.js:1708
+#: htdocs/luci-static/resources/view/fchomo/node.js:1766
msgid "In millisecond. %s will be used if empty."
msgstr "單位為毫秒。留空則使用 %s。"
@@ -1470,7 +1470,7 @@ msgstr "單位為毫秒。留空則使用 %s。"
#: htdocs/luci-static/resources/fchomo/listeners.js:428
#: htdocs/luci-static/resources/view/fchomo/node.js:604
#: htdocs/luci-static/resources/view/fchomo/node.js:611
-#: htdocs/luci-static/resources/view/fchomo/node.js:1218
+#: htdocs/luci-static/resources/view/fchomo/node.js:1238
msgid "In seconds."
msgstr "單位為秒。"
@@ -1479,14 +1479,14 @@ msgstr "單位為秒。"
#: htdocs/luci-static/resources/view/fchomo/global.js:430
#: htdocs/luci-static/resources/view/fchomo/global.js:515
#: htdocs/luci-static/resources/view/fchomo/node.js:280
-#: htdocs/luci-static/resources/view/fchomo/node.js:1563
-#: htdocs/luci-static/resources/view/fchomo/node.js:1701
+#: htdocs/luci-static/resources/view/fchomo/node.js:1621
+#: htdocs/luci-static/resources/view/fchomo/node.js:1759
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:383
msgid "In seconds. %s will be used if empty."
msgstr "單位為秒。留空則使用 %s。"
#: htdocs/luci-static/resources/fchomo/listeners.js:649
-#: htdocs/luci-static/resources/view/fchomo/node.js:931
+#: htdocs/luci-static/resources/view/fchomo/node.js:951
msgid ""
"In the order of one Padding-Length and one Padding-"
"Interval, infinite concatenation."
@@ -1528,7 +1528,7 @@ msgstr "引入所有代理節點。"
msgid "Info"
msgstr "訊息"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1496
+#: htdocs/luci-static/resources/view/fchomo/node.js:1554
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:279
msgid "Inline"
msgstr "內嵌"
@@ -1549,7 +1549,7 @@ msgid "Key"
msgstr "密鑰"
#: htdocs/luci-static/resources/fchomo/listeners.js:829
-#: htdocs/luci-static/resources/view/fchomo/node.js:1059
+#: htdocs/luci-static/resources/view/fchomo/node.js:1079
msgid "Key path"
msgstr "憑證路徑"
@@ -1565,14 +1565,14 @@ msgstr "密鑰對"
#: htdocs/luci-static/resources/view/fchomo/client.js:1719
#: htdocs/luci-static/resources/view/fchomo/client.js:1775
#: htdocs/luci-static/resources/view/fchomo/node.js:229
-#: htdocs/luci-static/resources/view/fchomo/node.js:1484
-#: htdocs/luci-static/resources/view/fchomo/node.js:1769
+#: htdocs/luci-static/resources/view/fchomo/node.js:1542
+#: htdocs/luci-static/resources/view/fchomo/node.js:1827
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:259
msgid "Label"
msgstr "標籤"
#: htdocs/luci-static/resources/view/fchomo/client.js:1114
-#: htdocs/luci-static/resources/view/fchomo/node.js:1714
+#: htdocs/luci-static/resources/view/fchomo/node.js:1772
msgid "Lazy"
msgstr "懶惰狀態"
@@ -1594,7 +1594,7 @@ msgid "Less compatibility and sometimes better performance."
msgstr "有時效能較好。"
#: htdocs/luci-static/resources/fchomo/listeners.js:810
-#: htdocs/luci-static/resources/view/fchomo/node.js:983
+#: htdocs/luci-static/resources/view/fchomo/node.js:1003
msgid "List of supported application level protocols, in order of preference."
msgstr "支援的應用層協議協商清單,依序排列。"
@@ -1623,18 +1623,18 @@ msgstr "監聽埠"
msgid "Load balance"
msgstr "負載均衡"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1494
+#: htdocs/luci-static/resources/view/fchomo/node.js:1552
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:277
msgid "Local"
msgstr "本地"
#: htdocs/luci-static/resources/view/fchomo/node.js:697
-#: htdocs/luci-static/resources/view/fchomo/node.js:740
+#: htdocs/luci-static/resources/view/fchomo/node.js:760
msgid "Local IPv6 address"
msgstr "本地 IPv6 位址"
#: htdocs/luci-static/resources/view/fchomo/node.js:689
-#: htdocs/luci-static/resources/view/fchomo/node.js:732
+#: htdocs/luci-static/resources/view/fchomo/node.js:752
msgid "Local address"
msgstr "本地位址"
@@ -1671,7 +1671,7 @@ msgstr "僅限小寫"
#: htdocs/luci-static/resources/view/fchomo/global.js:502
#: htdocs/luci-static/resources/view/fchomo/node.js:703
-#: htdocs/luci-static/resources/view/fchomo/node.js:786
+#: htdocs/luci-static/resources/view/fchomo/node.js:806
msgid "MTU"
msgstr ""
@@ -1711,7 +1711,7 @@ msgstr "匹配回應通過 ipcidr"
msgid "Match rule set."
msgstr "匹配規則集。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1224
+#: htdocs/luci-static/resources/view/fchomo/node.js:1244
msgid "Max Early Data"
msgstr "前置數據最大值"
@@ -1720,6 +1720,15 @@ msgstr "前置數據最大值"
msgid "Max UDP relay packet size"
msgstr "UDP 中繼數據包最大尺寸"
+#: htdocs/luci-static/resources/view/fchomo/node.js:1300
+msgid "Max concurrency"
+msgstr "最大並發"
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:731
+#: htdocs/luci-static/resources/view/fchomo/node.js:1295
+msgid "Max connections"
+msgstr "最大連線數"
+
#: htdocs/luci-static/resources/view/fchomo/client.js:1128
msgid "Max count of failures"
msgstr "最大失敗次數"
@@ -1729,21 +1738,47 @@ msgstr "最大失敗次數"
msgid "Max download speed"
msgstr "最大下載速度"
+#: htdocs/luci-static/resources/fchomo/listeners.js:1033
+#: htdocs/luci-static/resources/view/fchomo/node.js:1284
+msgid "Max each POST bytes"
+msgstr "POST 最大位元組數"
+
#: htdocs/luci-static/resources/view/fchomo/node.js:573
msgid "Max open streams"
msgstr "限制打開流的數量"
+#: htdocs/luci-static/resources/view/fchomo/node.js:1310
+msgid "Max request times"
+msgstr "最大請求次數"
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:1315
+msgid "Max reusable seconds"
+msgstr "最大可重用秒數"
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:1305
+msgid "Max reuse times"
+msgstr "最大重用次數"
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:744
+msgid "Max streams"
+msgstr ""
+
#: htdocs/luci-static/resources/fchomo/listeners.js:174
#: htdocs/luci-static/resources/view/fchomo/node.js:285
msgid "Max upload speed"
msgstr "最大上傳速度"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1277
-#: htdocs/luci-static/resources/view/fchomo/node.js:1293
+#: htdocs/luci-static/resources/view/fchomo/node.js:1335
+#: htdocs/luci-static/resources/view/fchomo/node.js:1351
msgid "Maximum connections"
msgstr "最大連線數"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1291
+#: htdocs/luci-static/resources/view/fchomo/node.js:745
+msgid ""
+"Maximum multiplexed streams in a connection before opening a new connection."
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:1349
msgid ""
"Maximum multiplexed streams in a connection before opening a new connection."
"%s and %s."
@@ -1763,7 +1798,7 @@ msgid ""
"rate."
msgstr "最大填充率必須大於等于最小填充率。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1290
+#: htdocs/luci-static/resources/view/fchomo/node.js:1348
msgid "Maximum streams"
msgstr "最大流數量"
@@ -1788,7 +1823,12 @@ msgstr "Mihomo 服務端"
msgid "Min of idle sessions to keep"
msgstr "要保留的最少閒置會話數"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1284
+#: htdocs/luci-static/resources/view/fchomo/node.js:737
+msgid "Min streams"
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:738
+#: htdocs/luci-static/resources/view/fchomo/node.js:1342
msgid ""
"Minimum multiplexed streams in a connection before opening a new connection."
msgstr "在開啟新連線之前,連線中的最小多路復用流數量。"
@@ -1798,8 +1838,8 @@ msgstr "在開啟新連線之前,連線中的最小多路復用流數量。"
msgid "Minimum padding rate"
msgstr "最小填充率"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1283
-#: htdocs/luci-static/resources/view/fchomo/node.js:1293
+#: htdocs/luci-static/resources/view/fchomo/node.js:1341
+#: htdocs/luci-static/resources/view/fchomo/node.js:1351
msgid "Minimum streams"
msgstr "最小流數量"
@@ -1816,7 +1856,7 @@ msgstr "混合 系統 TCP 堆栈和 gVisor UDP 堆栈
msgid "Mixed port"
msgstr "混合連接埠"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1263
+#: htdocs/luci-static/resources/view/fchomo/node.js:1321
msgid "Multiplex"
msgstr "多路復用"
@@ -1838,7 +1878,7 @@ msgstr "NOT"
msgid "Name of the Proxy group as outbound."
msgstr "出站代理組的名稱。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1569
+#: htdocs/luci-static/resources/view/fchomo/node.js:1627
msgid "Name of the Proxy group to download provider."
msgstr "用於下載供應商訂閱的代理組名稱。"
@@ -1866,16 +1906,20 @@ msgstr "網路類型"
msgid "No Authentication IP ranges"
msgstr "無需認證的 IP 範圍"
+#: htdocs/luci-static/resources/fchomo/listeners.js:1023
+msgid "No SSE header"
+msgstr "無 SSE header"
+
#: htdocs/luci-static/resources/view/fchomo/client.js:1508
msgid "No add'l params"
msgstr "無附加參數"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1252
+#: htdocs/luci-static/resources/view/fchomo/node.js:1274
msgid "No gRPC header"
msgstr "無 gRPC header"
#: htdocs/luci-static/resources/view/fchomo/client.js:1115
-#: htdocs/luci-static/resources/view/fchomo/node.js:1715
+#: htdocs/luci-static/resources/view/fchomo/node.js:1773
msgid "No testing is performed when this provider node is not in use."
msgstr "當此供應商的節點未使用時,不執行任何測試。"
@@ -1894,17 +1938,17 @@ msgid "Node"
msgstr "節點"
#: htdocs/luci-static/resources/view/fchomo/client.js:1160
-#: htdocs/luci-static/resources/view/fchomo/node.js:1735
+#: htdocs/luci-static/resources/view/fchomo/node.js:1793
msgid "Node exclude filter"
msgstr "排除節點"
#: htdocs/luci-static/resources/view/fchomo/client.js:1165
-#: htdocs/luci-static/resources/view/fchomo/node.js:1742
+#: htdocs/luci-static/resources/view/fchomo/node.js:1800
msgid "Node exclude type"
msgstr "排除節點類型"
#: htdocs/luci-static/resources/view/fchomo/client.js:1155
-#: htdocs/luci-static/resources/view/fchomo/node.js:1729
+#: htdocs/luci-static/resources/view/fchomo/node.js:1787
msgid "Node filter"
msgstr "過濾節點"
@@ -1932,7 +1976,7 @@ msgstr ""
msgid "ON"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:815
+#: htdocs/luci-static/resources/view/fchomo/node.js:835
msgid "Obfs Mode"
msgstr "Obfs 模式"
@@ -1982,7 +2026,7 @@ msgid "Override destination"
msgstr "覆蓋目標位址"
#: htdocs/luci-static/resources/view/fchomo/client.js:1010
-#: htdocs/luci-static/resources/view/fchomo/node.js:1480
+#: htdocs/luci-static/resources/view/fchomo/node.js:1538
msgid "Override fields"
msgstr "覆蓋欄位"
@@ -2002,7 +2046,7 @@ msgstr "使用嗅探到的網域覆寫連線目標。"
msgid "Override the existing ECS in original request."
msgstr "覆蓋原始請求中已有的 ECS。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1086
+#: htdocs/luci-static/resources/view/fchomo/node.js:1106
msgid "Overrides the domain name used for HTTPS record queries."
msgstr "覆蓋用於 HTTPS 記錄查詢的網域。"
@@ -2010,11 +2054,11 @@ msgstr "覆蓋用於 HTTPS 記錄查詢的網域。"
msgid "Overview"
msgstr "概覽"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1181
+#: htdocs/luci-static/resources/view/fchomo/node.js:1201
msgid "POST"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1182
+#: htdocs/luci-static/resources/view/fchomo/node.js:1202
msgid "PUT"
msgstr ""
@@ -2022,7 +2066,7 @@ msgstr ""
msgid "Packet encoding"
msgstr "數據包編碼"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1257
+#: htdocs/luci-static/resources/view/fchomo/node.js:1279
msgid "Padding bytes"
msgstr "填充位元組"
@@ -2031,7 +2075,7 @@ msgid "Padding scheme"
msgstr "填充方案"
#: htdocs/luci-static/resources/fchomo/listeners.js:647
-#: htdocs/luci-static/resources/view/fchomo/node.js:929
+#: htdocs/luci-static/resources/view/fchomo/node.js:949
msgid "Paddings"
msgstr "填充 (Paddings)"
@@ -2040,17 +2084,17 @@ msgstr "填充 (Paddings)"
#: htdocs/luci-static/resources/fchomo/listeners.js:508
#: htdocs/luci-static/resources/view/fchomo/node.js:261
#: htdocs/luci-static/resources/view/fchomo/node.js:340
-#: htdocs/luci-static/resources/view/fchomo/node.js:830
+#: htdocs/luci-static/resources/view/fchomo/node.js:850
msgid "Password"
msgstr "密碼"
#: htdocs/luci-static/resources/fchomo/listeners.js:587
-#: htdocs/luci-static/resources/view/fchomo/node.js:1544
+#: htdocs/luci-static/resources/view/fchomo/node.js:1602
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:364
msgid "Payload"
msgstr "Payload"
-#: htdocs/luci-static/resources/view/fchomo/node.js:754
+#: htdocs/luci-static/resources/view/fchomo/node.js:774
msgid "Peer pubkic key"
msgstr "對端公鑰"
@@ -2060,11 +2104,11 @@ msgid ""
"it is not needed."
msgstr "效能可能會略有下降,建議僅在需要時開啟。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:781
+#: htdocs/luci-static/resources/view/fchomo/node.js:801
msgid "Periodically sends data packets to maintain connection persistence."
msgstr "定期發送資料包以維持連線持久性。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:780
+#: htdocs/luci-static/resources/view/fchomo/node.js:800
msgid "Persistent keepalive"
msgstr "持久連接"
@@ -2087,8 +2131,8 @@ msgid ""
"standards."
msgstr "連結格式標準請參考 %s。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1517
-#: htdocs/luci-static/resources/view/fchomo/node.js:1543
+#: htdocs/luci-static/resources/view/fchomo/node.js:1575
+#: htdocs/luci-static/resources/view/fchomo/node.js:1601
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:337
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:363
msgid ""
@@ -2103,25 +2147,25 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:1445
#: htdocs/luci-static/resources/view/fchomo/client.js:1697
#: htdocs/luci-static/resources/view/fchomo/client.js:1749
-#: htdocs/luci-static/resources/view/fchomo/node.js:1387
+#: htdocs/luci-static/resources/view/fchomo/node.js:1445
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:154
msgid "Please type %s fields of mihomo config."
msgstr "請輸入 mihomo 配置的 %s 欄位。"
#: htdocs/luci-static/resources/fchomo/listeners.js:494
-#: htdocs/luci-static/resources/view/fchomo/node.js:804
+#: htdocs/luci-static/resources/view/fchomo/node.js:824
msgid "Plugin"
msgstr "插件"
#: htdocs/luci-static/resources/fchomo/listeners.js:501
#: htdocs/luci-static/resources/fchomo/listeners.js:508
#: htdocs/luci-static/resources/fchomo/listeners.js:514
-#: htdocs/luci-static/resources/view/fchomo/node.js:815
-#: htdocs/luci-static/resources/view/fchomo/node.js:822
-#: htdocs/luci-static/resources/view/fchomo/node.js:830
-#: htdocs/luci-static/resources/view/fchomo/node.js:836
-#: htdocs/luci-static/resources/view/fchomo/node.js:844
+#: htdocs/luci-static/resources/view/fchomo/node.js:835
+#: htdocs/luci-static/resources/view/fchomo/node.js:842
#: htdocs/luci-static/resources/view/fchomo/node.js:850
+#: htdocs/luci-static/resources/view/fchomo/node.js:856
+#: htdocs/luci-static/resources/view/fchomo/node.js:864
+#: htdocs/luci-static/resources/view/fchomo/node.js:870
msgid "Plugin:"
msgstr "插件:"
@@ -2151,7 +2195,7 @@ msgid "Ports pool"
msgstr "連接埠池"
#: htdocs/luci-static/resources/view/fchomo/node.js:499
-#: htdocs/luci-static/resources/view/fchomo/node.js:761
+#: htdocs/luci-static/resources/view/fchomo/node.js:781
msgid "Pre-shared key"
msgstr "預先共用金鑰"
@@ -2170,10 +2214,10 @@ msgstr "防止某些情況下的 ICMP 環回問題。 Ping 不會顯示實際延
#: htdocs/luci-static/resources/view/fchomo/global.js:736
#: htdocs/luci-static/resources/view/fchomo/global.js:753
-#: htdocs/luci-static/resources/view/fchomo/node.js:1351
-#: htdocs/luci-static/resources/view/fchomo/node.js:1357
-#: htdocs/luci-static/resources/view/fchomo/node.js:1664
-#: htdocs/luci-static/resources/view/fchomo/node.js:1671
+#: htdocs/luci-static/resources/view/fchomo/node.js:1409
+#: htdocs/luci-static/resources/view/fchomo/node.js:1415
+#: htdocs/luci-static/resources/view/fchomo/node.js:1722
+#: htdocs/luci-static/resources/view/fchomo/node.js:1729
msgid "Priority: Proxy Node > Global."
msgstr "優先權: 代理節點 > 全域。"
@@ -2186,7 +2230,7 @@ msgid "Priv-key passphrase"
msgstr "金鑰密碼"
#: htdocs/luci-static/resources/view/fchomo/node.js:674
-#: htdocs/luci-static/resources/view/fchomo/node.js:746
+#: htdocs/luci-static/resources/view/fchomo/node.js:766
msgid "Private key"
msgstr "私鑰"
@@ -2195,7 +2239,7 @@ msgid "Process matching mode"
msgstr "進程匹配模式"
#: htdocs/luci-static/resources/view/fchomo/global.js:684
-#: htdocs/luci-static/resources/view/fchomo/node.js:1269
+#: htdocs/luci-static/resources/view/fchomo/node.js:1327
msgid "Protocol"
msgstr "協議"
@@ -2210,13 +2254,13 @@ msgid ""
msgstr "協議參數。 如啟用會隨機浪費流量(在 v2ray 中預設為啟用且無法停用)。"
#: htdocs/luci-static/resources/view/fchomo/client.js:1055
-#: htdocs/luci-static/resources/view/fchomo/node.js:1370
-#: htdocs/luci-static/resources/view/fchomo/node.js:1379
-#: htdocs/luci-static/resources/view/fchomo/node.js:1780
+#: htdocs/luci-static/resources/view/fchomo/node.js:1428
+#: htdocs/luci-static/resources/view/fchomo/node.js:1437
+#: htdocs/luci-static/resources/view/fchomo/node.js:1838
msgid "Provider"
msgstr "供應商"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1550
+#: htdocs/luci-static/resources/view/fchomo/node.js:1608
msgid "Provider URL"
msgstr "供應商訂閱 URL"
@@ -2239,19 +2283,19 @@ msgid "Proxy MAC-s"
msgstr "代理 MAC 位址"
#: htdocs/luci-static/resources/view/fchomo/node.js:208
-#: htdocs/luci-static/resources/view/fchomo/node.js:1779
+#: htdocs/luci-static/resources/view/fchomo/node.js:1837
msgid "Proxy Node"
msgstr "代理節點"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1755
-#: htdocs/luci-static/resources/view/fchomo/node.js:1764
+#: htdocs/luci-static/resources/view/fchomo/node.js:1813
+#: htdocs/luci-static/resources/view/fchomo/node.js:1822
msgid "Proxy chain"
msgstr "代理鏈"
#: htdocs/luci-static/resources/fchomo/listeners.js:530
#: htdocs/luci-static/resources/view/fchomo/client.js:783
#: htdocs/luci-static/resources/view/fchomo/client.js:1543
-#: htdocs/luci-static/resources/view/fchomo/node.js:1568
+#: htdocs/luci-static/resources/view/fchomo/node.js:1626
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:388
msgid "Proxy group"
msgstr "代理組"
@@ -2279,11 +2323,11 @@ msgid "Quick Reload"
msgstr "快速重載"
#: htdocs/luci-static/resources/fchomo/listeners.js:917
-#: htdocs/luci-static/resources/view/fchomo/node.js:1100
+#: htdocs/luci-static/resources/view/fchomo/node.js:1120
msgid "REALITY"
msgstr "REALITY"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1115
+#: htdocs/luci-static/resources/view/fchomo/node.js:1135
msgid "REALITY X25519MLKEM768 PQC support"
msgstr "REALITY X25519MLKEM768 後量子加密支援"
@@ -2300,18 +2344,18 @@ msgid "REALITY private key"
msgstr "REALITY 私鑰"
#: htdocs/luci-static/resources/fchomo/listeners.js:944
-#: htdocs/luci-static/resources/view/fchomo/node.js:1105
+#: htdocs/luci-static/resources/view/fchomo/node.js:1125
msgid "REALITY public key"
msgstr "REALITY 公鑰"
#: htdocs/luci-static/resources/fchomo/listeners.js:948
-#: htdocs/luci-static/resources/view/fchomo/node.js:1110
+#: htdocs/luci-static/resources/view/fchomo/node.js:1130
msgid "REALITY short ID"
msgstr "REALITY 標識符"
#: htdocs/luci-static/resources/fchomo/listeners.js:618
#: htdocs/luci-static/resources/fchomo/listeners.js:637
-#: htdocs/luci-static/resources/view/fchomo/node.js:919
+#: htdocs/luci-static/resources/view/fchomo/node.js:939
msgid "RTT"
msgstr ""
@@ -2358,13 +2402,13 @@ msgstr "重載"
msgid "Reload All"
msgstr "重載所有"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1495
+#: htdocs/luci-static/resources/view/fchomo/node.js:1553
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:278
msgid "Remote"
msgstr "遠端"
#: htdocs/luci-static/resources/view/fchomo/node.js:709
-#: htdocs/luci-static/resources/view/fchomo/node.js:792
+#: htdocs/luci-static/resources/view/fchomo/node.js:812
msgid "Remote DNS resolve"
msgstr "遠端 DNS 解析"
@@ -2373,18 +2417,18 @@ msgid "Remove"
msgstr "移除"
#: htdocs/luci-static/resources/fchomo.js:1354
-#: htdocs/luci-static/resources/view/fchomo/node.js:1471
-#: htdocs/luci-static/resources/view/fchomo/node.js:1473
+#: htdocs/luci-static/resources/view/fchomo/node.js:1529
+#: htdocs/luci-static/resources/view/fchomo/node.js:1531
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:251
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:253
msgid "Remove idles"
msgstr "移除閒置"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1597
+#: htdocs/luci-static/resources/view/fchomo/node.js:1655
msgid "Replace name"
msgstr "名稱替換"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1598
+#: htdocs/luci-static/resources/view/fchomo/node.js:1656
msgid "Replace node name."
msgstr "替換節點名稱"
@@ -2392,9 +2436,9 @@ msgstr "替換節點名稱"
msgid "Request"
msgstr ""
-#: htdocs/luci-static/resources/fchomo/listeners.js:996
-#: htdocs/luci-static/resources/view/fchomo/node.js:1188
-#: htdocs/luci-static/resources/view/fchomo/node.js:1195
+#: htdocs/luci-static/resources/fchomo/listeners.js:1002
+#: htdocs/luci-static/resources/view/fchomo/node.js:1208
+#: htdocs/luci-static/resources/view/fchomo/node.js:1215
msgid "Request path"
msgstr "請求路徑"
@@ -2411,11 +2455,11 @@ msgid "Require any"
msgstr ""
#: htdocs/luci-static/resources/fchomo.js:384
-#: htdocs/luci-static/resources/view/fchomo/node.js:1116
+#: htdocs/luci-static/resources/view/fchomo/node.js:1136
msgid "Requires server support."
msgstr "需要伺服器支援。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:775
+#: htdocs/luci-static/resources/view/fchomo/node.js:795
msgid "Reserved field bytes"
msgstr "保留字段位元組"
@@ -2423,7 +2467,7 @@ msgstr "保留字段位元組"
msgid "Resources management"
msgstr "資源管理"
-#: htdocs/luci-static/resources/view/fchomo/node.js:850
+#: htdocs/luci-static/resources/view/fchomo/node.js:870
msgid "Restls script"
msgstr "Restls 劇本"
@@ -2459,8 +2503,8 @@ msgstr "路由 DSCP"
msgid "Routing GFW"
msgstr "路由 GFW 流量"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1356
-#: htdocs/luci-static/resources/view/fchomo/node.js:1670
+#: htdocs/luci-static/resources/view/fchomo/node.js:1414
+#: htdocs/luci-static/resources/view/fchomo/node.js:1728
msgid "Routing mark"
msgstr "路由標記"
@@ -2548,7 +2592,7 @@ msgstr ""
msgid "SUB-RULE"
msgstr "SUB-RULE"
-#: htdocs/luci-static/resources/view/fchomo/node.js:876
+#: htdocs/luci-static/resources/view/fchomo/node.js:896
msgid "SUoT version"
msgstr "SUoT 版本"
@@ -2598,8 +2642,9 @@ msgstr "服務端"
msgid "Server address"
msgstr "伺服器位址"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1167
-#: htdocs/luci-static/resources/view/fchomo/node.js:1173
+#: htdocs/luci-static/resources/fchomo/listeners.js:996
+#: htdocs/luci-static/resources/view/fchomo/node.js:1187
+#: htdocs/luci-static/resources/view/fchomo/node.js:1193
msgid "Server hostname"
msgstr "伺服器主機名稱"
@@ -2631,7 +2676,7 @@ msgstr "Shadowsocks 加密"
msgid "Shadowsocks password"
msgstr "Shadowsocks 密碼"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1311
+#: htdocs/luci-static/resources/view/fchomo/node.js:1369
msgid "Show connections in the dashboard for breaking connections easier."
msgstr "在面板中顯示連線以便於打斷連線。"
@@ -2643,14 +2688,14 @@ msgstr "靜音"
msgid "Simple round-robin all nodes"
msgstr "簡單輪替所有節點"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1556
+#: htdocs/luci-static/resources/view/fchomo/node.js:1614
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:376
msgid "Size limit"
msgstr "大小限制"
#: htdocs/luci-static/resources/view/fchomo/client.js:1576
-#: htdocs/luci-static/resources/view/fchomo/node.js:1037
-#: htdocs/luci-static/resources/view/fchomo/node.js:1648
+#: htdocs/luci-static/resources/view/fchomo/node.js:1057
+#: htdocs/luci-static/resources/view/fchomo/node.js:1706
msgid "Skip cert verify"
msgstr "跳過憑證驗證"
@@ -2778,7 +2823,7 @@ msgstr "TCP"
msgid "TCP concurrency"
msgstr "TCP 併發"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1304
+#: htdocs/luci-static/resources/view/fchomo/node.js:1362
msgid "TCP only"
msgstr "僅 TCP"
@@ -2804,25 +2849,25 @@ msgstr "TCP-Keep-Alive 間隔"
msgid "TCP/UDP"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1335
-#: htdocs/luci-static/resources/view/fchomo/node.js:1615
+#: htdocs/luci-static/resources/view/fchomo/node.js:1393
+#: htdocs/luci-static/resources/view/fchomo/node.js:1673
msgid "TFO"
msgstr "TCP 快速開啟 (TFO)"
#: htdocs/luci-static/resources/fchomo/listeners.js:772
#: htdocs/luci-static/resources/view/fchomo/global.js:529
#: htdocs/luci-static/resources/view/fchomo/node.js:464
-#: htdocs/luci-static/resources/view/fchomo/node.js:817
-#: htdocs/luci-static/resources/view/fchomo/node.js:951
+#: htdocs/luci-static/resources/view/fchomo/node.js:837
+#: htdocs/luci-static/resources/view/fchomo/node.js:971
msgid "TLS"
msgstr "TLS"
#: htdocs/luci-static/resources/fchomo/listeners.js:809
-#: htdocs/luci-static/resources/view/fchomo/node.js:982
+#: htdocs/luci-static/resources/view/fchomo/node.js:1002
msgid "TLS ALPN"
msgstr "TLS ALPN"
-#: htdocs/luci-static/resources/view/fchomo/node.js:976
+#: htdocs/luci-static/resources/view/fchomo/node.js:996
msgid "TLS SNI"
msgstr ""
@@ -2854,24 +2899,24 @@ msgstr "讓客戶端使用 BBR 流控演算法。"
msgid "The %s address used by local machine in the Cloudflare WARP network."
msgstr "Cloudflare WARP 網路中使用的本機 %s 位址。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:733
-#: htdocs/luci-static/resources/view/fchomo/node.js:741
+#: htdocs/luci-static/resources/view/fchomo/node.js:753
+#: htdocs/luci-static/resources/view/fchomo/node.js:761
msgid "The %s address used by local machine in the Wireguard network."
msgstr "WireGuard 網路中使用的本機 %s 位址。"
#: htdocs/luci-static/resources/fchomo/listeners.js:830
-#: htdocs/luci-static/resources/view/fchomo/node.js:1060
+#: htdocs/luci-static/resources/view/fchomo/node.js:1080
msgid "The %s private key, in PEM format."
msgstr "%s私鑰,需要 PEM 格式。"
#: htdocs/luci-static/resources/fchomo/listeners.js:815
#: htdocs/luci-static/resources/fchomo/listeners.js:853
#: htdocs/luci-static/resources/view/fchomo/global.js:550
-#: htdocs/luci-static/resources/view/fchomo/node.js:1046
+#: htdocs/luci-static/resources/view/fchomo/node.js:1066
msgid "The %s public key, in PEM format."
msgstr "%s公鑰,需要 PEM 格式。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1080
+#: htdocs/luci-static/resources/view/fchomo/node.js:1100
msgid ""
"The ECH parameter of the HTTPS record for the domain. Leave empty to resolve "
"via DNS."
@@ -2890,7 +2935,7 @@ msgid "The default value is 2:00 every day."
msgstr "預設值為每天 2:00。"
#: htdocs/luci-static/resources/fchomo/listeners.js:650
-#: htdocs/luci-static/resources/view/fchomo/node.js:932
+#: htdocs/luci-static/resources/view/fchomo/node.js:952
msgid ""
"The first padding must have a probability of 100% and at least 35 bytes."
msgstr "首個填充必須為 100% 的機率並且至少 35 位元組。"
@@ -2906,7 +2951,7 @@ msgid "The matching %s will be deemed as poisoned."
msgstr "匹配 %s 的將被視為已被投毒汙染。"
#: htdocs/luci-static/resources/fchomo/listeners.js:648
-#: htdocs/luci-static/resources/view/fchomo/node.js:930
+#: htdocs/luci-static/resources/view/fchomo/node.js:950
msgid "The server and client can set different padding parameters."
msgstr "伺服器和客戶端可以設定不同的填充參數。"
@@ -2916,8 +2961,8 @@ msgid "This ECH parameter needs to be added to the HTTPS record of the domain."
msgstr "此 ECH 參數需要加入到網域的 HTTPS 記錄中。"
#: htdocs/luci-static/resources/view/fchomo/client.js:1579
-#: htdocs/luci-static/resources/view/fchomo/node.js:1040
-#: htdocs/luci-static/resources/view/fchomo/node.js:1651
+#: htdocs/luci-static/resources/view/fchomo/node.js:1060
+#: htdocs/luci-static/resources/view/fchomo/node.js:1709
msgid ""
"This is DANGEROUS, your traffic is almost like "
"PLAIN TEXT! Use at your own risk!"
@@ -2961,18 +3006,18 @@ msgstr "Tproxy 連接埠"
msgid "Traffic pattern"
msgstr "流量模式"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1807
+#: htdocs/luci-static/resources/view/fchomo/node.js:1865
msgid "Transit proxy group"
msgstr "中轉代理組"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1813
+#: htdocs/luci-static/resources/view/fchomo/node.js:1871
msgid "Transit proxy node"
msgstr "中轉代理節點"
#: htdocs/luci-static/resources/fchomo/listeners.js:231
#: htdocs/luci-static/resources/fchomo/listeners.js:962
#: htdocs/luci-static/resources/view/fchomo/node.js:355
-#: htdocs/luci-static/resources/view/fchomo/node.js:1122
+#: htdocs/luci-static/resources/view/fchomo/node.js:1142
msgid "Transport"
msgstr "傳輸層"
@@ -2982,7 +3027,7 @@ msgid "Transport fields"
msgstr "傳輸層欄位"
#: htdocs/luci-static/resources/fchomo/listeners.js:967
-#: htdocs/luci-static/resources/view/fchomo/node.js:1127
+#: htdocs/luci-static/resources/view/fchomo/node.js:1147
msgid "Transport type"
msgstr "傳輸層類型"
@@ -3027,8 +3072,8 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:842
#: htdocs/luci-static/resources/view/fchomo/client.js:1028
#: htdocs/luci-static/resources/view/fchomo/node.js:238
-#: htdocs/luci-static/resources/view/fchomo/node.js:1493
-#: htdocs/luci-static/resources/view/fchomo/node.js:1778
+#: htdocs/luci-static/resources/view/fchomo/node.js:1551
+#: htdocs/luci-static/resources/view/fchomo/node.js:1836
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:276
msgid "Type"
msgstr "類型"
@@ -3043,8 +3088,8 @@ msgstr "類型"
#: htdocs/luci-static/resources/fchomo/listeners.js:555
#: htdocs/luci-static/resources/view/fchomo/client.js:588
#: htdocs/luci-static/resources/view/fchomo/client.js:678
-#: htdocs/luci-static/resources/view/fchomo/node.js:865
-#: htdocs/luci-static/resources/view/fchomo/node.js:1625
+#: htdocs/luci-static/resources/view/fchomo/node.js:885
+#: htdocs/luci-static/resources/view/fchomo/node.js:1683
msgid "UDP"
msgstr "UDP"
@@ -3112,8 +3157,8 @@ msgstr "未知錯誤。"
msgid "Unknown error: %s"
msgstr "未知錯誤:%s"
-#: htdocs/luci-static/resources/view/fchomo/node.js:870
-#: htdocs/luci-static/resources/view/fchomo/node.js:1630
+#: htdocs/luci-static/resources/view/fchomo/node.js:890
+#: htdocs/luci-static/resources/view/fchomo/node.js:1688
msgid "UoT"
msgstr "UDP over TCP (UoT)"
@@ -3121,22 +3166,22 @@ msgstr "UDP over TCP (UoT)"
msgid "Update failed."
msgstr "更新失敗。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1562
+#: htdocs/luci-static/resources/view/fchomo/node.js:1620
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:382
msgid "Update interval"
msgstr "更新間隔"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1322
+#: htdocs/luci-static/resources/view/fchomo/node.js:1380
msgid "Upload bandwidth"
msgstr "上傳頻寬"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1323
+#: htdocs/luci-static/resources/view/fchomo/node.js:1381
msgid "Upload bandwidth in Mbps."
msgstr "上傳頻寬(單位:Mbps)。"
#: htdocs/luci-static/resources/fchomo/listeners.js:821
#: htdocs/luci-static/resources/fchomo/listeners.js:861
-#: htdocs/luci-static/resources/view/fchomo/node.js:1051
+#: htdocs/luci-static/resources/view/fchomo/node.js:1071
msgid "Upload certificate"
msgstr "上傳憑證"
@@ -3145,7 +3190,7 @@ msgid "Upload initial package"
msgstr "上傳初始資源包"
#: htdocs/luci-static/resources/fchomo/listeners.js:836
-#: htdocs/luci-static/resources/view/fchomo/node.js:1065
+#: htdocs/luci-static/resources/view/fchomo/node.js:1085
msgid "Upload key"
msgstr "上傳金鑰"
@@ -3153,8 +3198,8 @@ msgstr "上傳金鑰"
#: htdocs/luci-static/resources/fchomo/listeners.js:839
#: htdocs/luci-static/resources/fchomo/listeners.js:864
#: htdocs/luci-static/resources/view/fchomo/global.js:306
-#: htdocs/luci-static/resources/view/fchomo/node.js:1054
-#: htdocs/luci-static/resources/view/fchomo/node.js:1068
+#: htdocs/luci-static/resources/view/fchomo/node.js:1074
+#: htdocs/luci-static/resources/view/fchomo/node.js:1088
msgid "Upload..."
msgstr "上傳..."
@@ -3178,7 +3223,7 @@ msgstr "用於解析 DNS 伺服器的網域。必須是 IP。"
msgid "Used to resolve the domain of the Proxy node."
msgstr "用於解析代理節點的網域。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:977
+#: htdocs/luci-static/resources/view/fchomo/node.js:997
msgid "Used to verify the hostname on the returned certificates."
msgstr "用於驗證傳回的憑證上的主機名稱。"
@@ -3195,11 +3240,11 @@ msgstr "使用者名稱"
msgid "Users filter mode"
msgstr "使用者過濾模式"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1236
+#: htdocs/luci-static/resources/view/fchomo/node.js:1256
msgid "V2ray HTTPUpgrade"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1241
+#: htdocs/luci-static/resources/view/fchomo/node.js:1261
msgid "V2ray HTTPUpgrade fast open"
msgstr ""
@@ -3213,8 +3258,8 @@ msgstr ""
msgid "VMess"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1499
-#: htdocs/luci-static/resources/view/fchomo/node.js:1784
+#: htdocs/luci-static/resources/view/fchomo/node.js:1557
+#: htdocs/luci-static/resources/view/fchomo/node.js:1842
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:319
msgid "Value"
msgstr "可視化值"
@@ -3225,11 +3270,11 @@ msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:514
#: htdocs/luci-static/resources/view/fchomo/node.js:506
-#: htdocs/luci-static/resources/view/fchomo/node.js:836
+#: htdocs/luci-static/resources/view/fchomo/node.js:856
msgid "Version"
msgstr "版本"
-#: htdocs/luci-static/resources/view/fchomo/node.js:844
+#: htdocs/luci-static/resources/view/fchomo/node.js:864
msgid "Version hint"
msgstr ""
@@ -3248,14 +3293,14 @@ msgstr "警告"
#: htdocs/luci-static/resources/fchomo/listeners.js:393
#: htdocs/luci-static/resources/fchomo/listeners.js:969
-#: htdocs/luci-static/resources/fchomo/listeners.js:980
+#: htdocs/luci-static/resources/fchomo/listeners.js:978
#: htdocs/luci-static/resources/fchomo/listeners.js:985
#: htdocs/luci-static/resources/view/fchomo/node.js:460
#: htdocs/luci-static/resources/view/fchomo/node.js:489
-#: htdocs/luci-static/resources/view/fchomo/node.js:1132
-#: htdocs/luci-static/resources/view/fchomo/node.js:1143
-#: htdocs/luci-static/resources/view/fchomo/node.js:1150
-#: htdocs/luci-static/resources/view/fchomo/node.js:1156
+#: htdocs/luci-static/resources/view/fchomo/node.js:1152
+#: htdocs/luci-static/resources/view/fchomo/node.js:1163
+#: htdocs/luci-static/resources/view/fchomo/node.js:1170
+#: htdocs/luci-static/resources/view/fchomo/node.js:1176
msgid "WebSocket"
msgstr ""
@@ -3271,27 +3316,42 @@ msgstr "白名單"
msgid "WireGuard"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:755
+#: htdocs/luci-static/resources/view/fchomo/node.js:775
msgid "WireGuard peer public key."
msgstr "WireGuard 對端公鑰。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:762
+#: htdocs/luci-static/resources/view/fchomo/node.js:782
msgid "WireGuard pre-shared key."
msgstr "WireGuard 預先共用金鑰。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:747
+#: htdocs/luci-static/resources/view/fchomo/node.js:767
msgid "WireGuard requires base64-encoded private keys."
msgstr "WireGuard 要求 base64 編碼的私鑰。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1133
-#: htdocs/luci-static/resources/view/fchomo/node.js:1151
+#: htdocs/luci-static/resources/fchomo/listeners.js:970
+#: htdocs/luci-static/resources/fchomo/listeners.js:979
+#: htdocs/luci-static/resources/view/fchomo/node.js:1153
+#: htdocs/luci-static/resources/view/fchomo/node.js:1171
msgid "XHTTP"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1246
+#: htdocs/luci-static/resources/fchomo/listeners.js:1015
+#: htdocs/luci-static/resources/view/fchomo/node.js:1266
msgid "XHTTP mode"
msgstr "XHTTP 模式"
+#: htdocs/luci-static/resources/view/fchomo/node.js:1290
+msgid "XMUX"
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/node.js:1295
+#: htdocs/luci-static/resources/view/fchomo/node.js:1300
+#: htdocs/luci-static/resources/view/fchomo/node.js:1305
+#: htdocs/luci-static/resources/view/fchomo/node.js:1310
+#: htdocs/luci-static/resources/view/fchomo/node.js:1315
+msgid "XMUX:"
+msgstr ""
+
#: htdocs/luci-static/resources/fchomo/listeners.js:609
msgid "XOR mode"
msgstr "XOR 模式"
@@ -3338,7 +3398,7 @@ msgstr "bbr"
#: htdocs/luci-static/resources/fchomo/listeners.js:826
#: htdocs/luci-static/resources/fchomo/listeners.js:866
-#: htdocs/luci-static/resources/view/fchomo/node.js:1056
+#: htdocs/luci-static/resources/view/fchomo/node.js:1076
msgid "certificate"
msgstr "憑證"
@@ -3365,13 +3425,13 @@ msgstr "decryption"
msgid "dnsmasq selects upstream on its own. (may affect CDN accuracy)"
msgstr "dnsmasq 自行選擇上游服務器。 (可能影響 CDN 準確性)"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1642
+#: htdocs/luci-static/resources/view/fchomo/node.js:1700
msgid "down"
msgstr "Hysteria 下載速率"
#: htdocs/luci-static/resources/fchomo/listeners.js:596
-#: htdocs/luci-static/resources/view/fchomo/node.js:884
-#: htdocs/luci-static/resources/view/fchomo/node.js:907
+#: htdocs/luci-static/resources/view/fchomo/node.js:904
+#: htdocs/luci-static/resources/view/fchomo/node.js:927
msgid "encryption"
msgstr "encryption"
@@ -3381,25 +3441,25 @@ msgid "false = bandwidth optimized downlink; true = pure Sudoku downlink."
msgstr "false = 頻寬最佳化下行 true = 純 Sudoku 下行。"
#: htdocs/luci-static/resources/fchomo/listeners.js:968
-#: htdocs/luci-static/resources/fchomo/listeners.js:979
+#: htdocs/luci-static/resources/fchomo/listeners.js:977
#: htdocs/luci-static/resources/fchomo/listeners.js:984
-#: htdocs/luci-static/resources/view/fchomo/node.js:1131
-#: htdocs/luci-static/resources/view/fchomo/node.js:1142
-#: htdocs/luci-static/resources/view/fchomo/node.js:1149
-#: htdocs/luci-static/resources/view/fchomo/node.js:1155
+#: htdocs/luci-static/resources/view/fchomo/node.js:1151
+#: htdocs/luci-static/resources/view/fchomo/node.js:1162
+#: htdocs/luci-static/resources/view/fchomo/node.js:1169
+#: htdocs/luci-static/resources/view/fchomo/node.js:1175
msgid "gRPC"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1212
+#: htdocs/luci-static/resources/view/fchomo/node.js:1232
msgid "gRPC User-Agent"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1217
+#: htdocs/luci-static/resources/view/fchomo/node.js:1237
msgid "gRPC ping interval"
msgstr "gRPC ping 間隔"
-#: htdocs/luci-static/resources/fchomo/listeners.js:1003
-#: htdocs/luci-static/resources/view/fchomo/node.js:1208
+#: htdocs/luci-static/resources/fchomo/listeners.js:1009
+#: htdocs/luci-static/resources/view/fchomo/node.js:1228
msgid "gRPC service name"
msgstr "gRPC 服務名稱"
@@ -3407,7 +3467,7 @@ msgstr "gRPC 服務名稱"
msgid "gVisor"
msgstr "gVisor"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1273
+#: htdocs/luci-static/resources/view/fchomo/node.js:1331
msgid "h2mux"
msgstr ""
@@ -3425,7 +3485,7 @@ msgstr "metacubexd"
#: htdocs/luci-static/resources/view/fchomo/client.js:1480
#: htdocs/luci-static/resources/view/fchomo/client.js:1711
#: htdocs/luci-static/resources/view/fchomo/client.js:1767
-#: htdocs/luci-static/resources/view/fchomo/node.js:1465
+#: htdocs/luci-static/resources/view/fchomo/node.js:1523
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:239
msgid "mihomo config"
msgstr "mihomo 配置"
@@ -3434,8 +3494,8 @@ msgstr "mihomo 配置"
msgid "mlkem768x25519plus"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1339
-#: htdocs/luci-static/resources/view/fchomo/node.js:1620
+#: htdocs/luci-static/resources/view/fchomo/node.js:1397
+#: htdocs/luci-static/resources/view/fchomo/node.js:1678
msgid "mpTCP"
msgstr "多路徑 TCP (mpTCP)"
@@ -3460,7 +3520,7 @@ msgstr "非空值"
#: htdocs/luci-static/resources/fchomo/listeners.js:495
#: htdocs/luci-static/resources/view/fchomo/node.js:647
#: htdocs/luci-static/resources/view/fchomo/node.js:667
-#: htdocs/luci-static/resources/view/fchomo/node.js:805
+#: htdocs/luci-static/resources/view/fchomo/node.js:825
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:315
msgid "none"
msgstr "無"
@@ -3479,7 +3539,7 @@ msgstr "不包含 \",\""
msgid "null"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:806
+#: htdocs/luci-static/resources/view/fchomo/node.js:826
msgid "obfs-simple"
msgstr ""
@@ -3491,7 +3551,7 @@ msgstr "僅當 %s 為 %s 時適用。"
msgid "only applies when %s is not %s."
msgstr "僅當 %s 不為 %s 時適用。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1600
+#: htdocs/luci-static/resources/view/fchomo/node.js:1658
msgid "override.proxy-name"
msgstr ""
@@ -3499,7 +3559,8 @@ msgstr ""
msgid "packet addr (v2ray-core v5+)"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1248
+#: htdocs/luci-static/resources/fchomo/listeners.js:1019
+#: htdocs/luci-static/resources/view/fchomo/node.js:1270
msgid "packet-up"
msgstr ""
@@ -3509,7 +3570,7 @@ msgid "poll"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:841
-#: htdocs/luci-static/resources/view/fchomo/node.js:1070
+#: htdocs/luci-static/resources/view/fchomo/node.js:1090
msgid "private key"
msgstr "私鑰"
@@ -3522,7 +3583,7 @@ msgstr "razord-meta"
msgid "requires front-end adaptation using the API."
msgstr "需要使用 API 的前端適配。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:810
+#: htdocs/luci-static/resources/view/fchomo/node.js:830
msgid "restls"
msgstr ""
@@ -3531,11 +3592,11 @@ msgid "rule-set"
msgstr "規則集"
#: htdocs/luci-static/resources/fchomo/listeners.js:496
-#: htdocs/luci-static/resources/view/fchomo/node.js:809
+#: htdocs/luci-static/resources/view/fchomo/node.js:829
msgid "shadow-tls"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1271
+#: htdocs/luci-static/resources/view/fchomo/node.js:1329
msgid "smux"
msgstr ""
@@ -3548,10 +3609,20 @@ msgstr ""
msgid "src"
msgstr "src"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1247
+#: htdocs/luci-static/resources/fchomo/listeners.js:1017
+#: htdocs/luci-static/resources/view/fchomo/node.js:1268
msgid "stream-one"
msgstr ""
+#: htdocs/luci-static/resources/fchomo/listeners.js:1018
+#: htdocs/luci-static/resources/view/fchomo/node.js:1269
+msgid "stream-up"
+msgstr ""
+
+#: htdocs/luci-static/resources/fchomo/listeners.js:1028
+msgid "stream-up server seconds"
+msgstr ""
+
#: htdocs/luci-static/resources/view/fchomo/node.js:491
msgid "stream/poll/auto"
msgstr ""
@@ -3576,28 +3647,28 @@ msgstr "獨立標識"
msgid "unique value"
msgstr "獨立值"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1636
+#: htdocs/luci-static/resources/view/fchomo/node.js:1694
msgid "up"
msgstr "Hysteria 上傳速率"
#: htdocs/luci-static/resources/fchomo/listeners.js:515
#: htdocs/luci-static/resources/view/fchomo/node.js:507
#: htdocs/luci-static/resources/view/fchomo/node.js:542
-#: htdocs/luci-static/resources/view/fchomo/node.js:837
-#: htdocs/luci-static/resources/view/fchomo/node.js:877
+#: htdocs/luci-static/resources/view/fchomo/node.js:857
+#: htdocs/luci-static/resources/view/fchomo/node.js:897
msgid "v1"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:516
#: htdocs/luci-static/resources/view/fchomo/node.js:508
-#: htdocs/luci-static/resources/view/fchomo/node.js:838
-#: htdocs/luci-static/resources/view/fchomo/node.js:878
+#: htdocs/luci-static/resources/view/fchomo/node.js:858
+#: htdocs/luci-static/resources/view/fchomo/node.js:898
msgid "v2"
msgstr ""
#: htdocs/luci-static/resources/fchomo/listeners.js:517
#: htdocs/luci-static/resources/view/fchomo/node.js:509
-#: htdocs/luci-static/resources/view/fchomo/node.js:839
+#: htdocs/luci-static/resources/view/fchomo/node.js:859
msgid "v3"
msgstr ""
@@ -3606,7 +3677,7 @@ msgstr ""
msgid "valid JSON format"
msgstr "有效的 JSON 格式"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1030
+#: htdocs/luci-static/resources/view/fchomo/node.js:1050
msgid "valid SHA256 string with %d characters"
msgstr "包含 %d 個字元的有效 SHA256 字串"
@@ -3652,7 +3723,7 @@ msgstr ""
msgid "yacd-meta"
msgstr "yacd-meta"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1272
+#: htdocs/luci-static/resources/view/fchomo/node.js:1330
msgid "yamux"
msgstr ""
diff --git a/luci-app-fchomo/root/usr/share/fchomo/generate_client.uc b/luci-app-fchomo/root/usr/share/fchomo/generate_client.uc
index a2ae2ccb..4926e297 100644
--- a/luci-app-fchomo/root/usr/share/fchomo/generate_client.uc
+++ b/luci-app-fchomo/root/usr/share/fchomo/generate_client.uc
@@ -649,7 +649,10 @@ uci.foreach(uciconf, ucinode, (cfg) => {
"grpc-opts": cfg.transport_type === 'grpc' ? {
"grpc-service-name": cfg.transport_grpc_servicename,
"grpc-user-agent": cfg.transport_grpc_user_agent,
- "ping-interval": strToInt(cfg.transport_grpc_ping_interval) || null
+ "ping-interval": strToInt(cfg.transport_grpc_ping_interval) || null,
+ "max-connections": strToInt(cfg.smux_max_connections) || null,
+ "min-streams": strToInt(cfg.smux_min_streams) || null,
+ "max-streams": strToInt(cfg.smux_max_streams) || null,
} : null,
"ws-opts": cfg.transport_type === 'ws' ? {
path: cfg.transport_path || '/',
@@ -665,11 +668,24 @@ uci.foreach(uciconf, ucinode, (cfg) => {
headers: cfg.transport_http_headers ? json(cfg.transport_http_headers) : null,
mode: cfg.transport_xhttp_mode,
"no-grpc-header": strToBool(cfg.transport_xhttp_no_grpc_header),
- "x-padding-bytes": cfg.transport_xhttp_x_padding_bytes
+ "x-padding-bytes": cfg.transport_xhttp_x_padding_bytes,
+ "sc-max-each-post-bytes": strToInt(cfg.transport_xhttp_sc_max_each_post_bytes) || null,
+ "reuse-settings": cfg.transport_xhttp_xmux ? {
+ "max-connections": cfg.transport_xhttp_xmux_max_connections,
+ "max-concurrency": cfg.transport_xhttp_xmux_max_concurrency,
+ "c-max-reuse-times": cfg.transport_xhttp_xmux_max_reuse_times,
+ "h-max-request-times": cfg.transport_xhttp_xmux_max_request_times,
+ "h-max-reusable-secs": cfg.transport_xhttp_xmux_max_reusable_secs
+ } : null
} : null
} : {}),
/* Multiplex fields */
+ ...(cfg.type in ['trusttunnel'] ? {
+ "max-connections": strToInt(cfg.smux_max_connections) || null,
+ "min-streams": strToInt(cfg.smux_min_streams) || null,
+ "max-streams": strToInt(cfg.smux_max_streams) || null
+ } : {}),
smux: cfg.smux_enabled === '1' ? {
enabled: true,
protocol: cfg.smux_protocol,
diff --git a/luci-app-fchomo/root/usr/share/ucode/fchomo.uc b/luci-app-fchomo/root/usr/share/ucode/fchomo.uc
index 3d05cced..8bbf9d4e 100644
--- a/luci-app-fchomo/root/usr/share/ucode/fchomo.uc
+++ b/luci-app-fchomo/root/usr/share/ucode/fchomo.uc
@@ -345,8 +345,16 @@ export function parseListener(cfg, isClient, label) {
/* Transport fields */
...(cfg.transport_enabled === '1' ? {
- "grpc-service-name": cfg.transport_grpc_servicename,
- "ws-path": cfg.transport_path
+ "grpc-service-name": cfg.transport_type === 'grpc' ? cfg.transport_grpc_servicename : null,
+ "ws-path": cfg.transport_type === 'ws' ? cfg.transport_path : null,
+ "xhttp-config": cfg.transport_type === 'xhttp' ? {
+ path: cfg.transport_path,
+ host: cfg.transport_host,
+ mode: cfg.transport_xhttp_mode,
+ "no-sse-header": strToBool(cfg.transport_xhttp_no_sse_header),
+ "sc-stream-up-server-secs": cfg.transport_xhttp_sc_stream_up_server_secs,
+ "sc-max-each-post-bytes": strToInt(cfg.transport_xhttp_sc_max_each_post_bytes) || null,
+ } : null
} : {})
}
};
diff --git a/luci-app-openclawmgr/Makefile b/luci-app-openclawmgr/Makefile
index e5ce4791..80fb9328 100644
--- a/luci-app-openclawmgr/Makefile
+++ b/luci-app-openclawmgr/Makefile
@@ -1,8 +1,8 @@
include $(TOPDIR)/rules.mk
-PKG_VERSION:=0.1.9
-PKG_RELEASE:=11
+PKG_VERSION:=0.1.10
+PKG_RELEASE:=12
LUCI_TITLE:=LuCI support for OpenClaw Launcher
LUCI_PKGARCH:=all
diff --git a/luci-app-openclawmgr/htdocs/luci-static/resources/openclawmgr/app.css b/luci-app-openclawmgr/htdocs/luci-static/resources/openclawmgr/app.css
index 4b3a9c57..ebb8c6ab 100644
--- a/luci-app-openclawmgr/htdocs/luci-static/resources/openclawmgr/app.css
+++ b/luci-app-openclawmgr/htdocs/luci-static/resources/openclawmgr/app.css
@@ -327,6 +327,73 @@
color: var(--oclm-primary);
}
+.oclm-button-ghost {
+ background: transparent;
+ border-color: transparent;
+ color: var(--oclm-subtle);
+ box-shadow: none;
+}
+
+.oclm-button-ghost:hover {
+ background: rgba(47, 103, 246, 0.08);
+ border-color: transparent;
+ color: var(--oclm-primary);
+}
+
+.oclm-button-ghost-danger {
+ background: transparent;
+ border-color: transparent;
+ color: var(--oclm-danger);
+ box-shadow: none;
+}
+
+.oclm-button-ghost-danger:hover {
+ background: rgba(239, 68, 68, 0.08);
+ border-color: transparent;
+ color: #dc2626;
+}
+
+.oclm-icon-ghost-button {
+ appearance: none;
+ display: inline-flex;
+ align-items: center;
+ justify-content: center;
+ width: 32px;
+ height: 32px;
+ padding: 0;
+ border: 0;
+ border-radius: 8px;
+ background: transparent;
+ color: var(--oclm-subtle);
+ cursor: pointer;
+}
+
+.oclm-icon-ghost-button:hover {
+ background: rgba(47, 103, 246, 0.08);
+ color: var(--oclm-primary);
+}
+
+.oclm-icon-ghost-button:disabled {
+ opacity: 0.55;
+ cursor: default;
+}
+
+.oclm-icon-ghost-danger {
+ color: var(--oclm-danger);
+}
+
+.oclm-icon-ghost-danger:hover {
+ background: rgba(239, 68, 68, 0.08);
+ color: #dc2626;
+}
+
+.oclm-row-icon {
+ width: 16px;
+ height: 16px;
+ stroke: currentColor;
+ fill: none;
+}
+
.oclm-form-grid {
display: grid;
gap: 14px;
@@ -564,6 +631,295 @@
font-size: 12px;
}
+.oclm-security-hero {
+ margin-bottom: 16px;
+}
+
+.oclm-security-hero-title {
+ margin: 0 0 6px;
+ font-size: 18px;
+ font-weight: 700;
+}
+
+.oclm-security-stack {
+ display: grid;
+ gap: 16px;
+}
+
+.oclm-security-card,
+.oclm-security-info-card {
+ border: 1px solid var(--oclm-border);
+ border-radius: 16px;
+ background: var(--oclm-card);
+ padding: 16px;
+}
+
+.oclm-security-title-row {
+ margin-bottom: 12px;
+}
+
+.oclm-security-title-row .oclm-hint {
+ margin-top: 4px;
+}
+
+.oclm-security-title-row h3,
+.oclm-security-info-card h3,
+.oclm-dialog-card h3 {
+ margin: 0 0 6px;
+ font-size: 15px;
+}
+
+.oclm-security-input-row {
+ display: flex;
+ gap: 8px;
+ align-items: flex-start;
+}
+
+.oclm-security-input-wrap {
+ min-width: 0;
+ flex: 1;
+}
+
+#oclm-security-add {
+ flex: 0 0 auto;
+ white-space: nowrap;
+}
+
+.oclm-control-danger {
+ border-color: rgba(239, 68, 68, 0.7);
+ box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.08);
+}
+
+.oclm-security-error {
+ margin-top: 6px;
+ color: var(--oclm-danger);
+ font-size: 12px;
+}
+
+.oclm-security-list-box {
+ margin-top: 16px;
+ border: 1px solid var(--oclm-border);
+ border-radius: 12px;
+ overflow: hidden;
+ background: var(--oclm-card);
+}
+
+.oclm-security-list {
+ display: grid;
+ gap: 0;
+}
+
+.oclm-security-row {
+ display: flex;
+ align-items: flex-start;
+ justify-content: space-between;
+ gap: 12px;
+ padding: 16px;
+}
+
+.oclm-security-row + .oclm-security-row {
+ border-top: 1px solid var(--oclm-border);
+}
+
+.oclm-security-row-main {
+ display: flex;
+ min-width: 0;
+ flex: 1;
+ flex-direction: column;
+}
+
+.oclm-security-item-path {
+ display: flex;
+ flex-wrap: wrap;
+ align-items: center;
+ gap: 8px;
+ margin-bottom: 10px;
+}
+
+.oclm-security-item-path code,
+.oclm-dialog-code {
+ display: inline-block;
+ max-width: 100%;
+ padding: 6px 8px;
+ border-radius: 8px;
+ background: rgba(148, 163, 184, 0.14);
+ font: 12px/1.5 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
+ word-break: break-all;
+}
+
+.oclm-security-badge {
+ display: inline-flex;
+ align-items: center;
+ min-height: 24px;
+ padding: 0 10px;
+ border-radius: 999px;
+ font-size: 12px;
+ font-weight: 700;
+}
+
+.oclm-security-badge.is-active {
+ background: rgba(18, 185, 129, 0.12);
+ color: var(--oclm-success);
+}
+
+.oclm-security-badge.is-danger {
+ background: rgba(239, 68, 68, 0.12);
+ color: var(--oclm-danger);
+}
+
+.oclm-security-badge.is-muted {
+ background: rgba(148, 163, 184, 0.16);
+ color: var(--oclm-subtle);
+}
+
+.oclm-security-item-grid {
+ display: grid;
+ grid-template-columns: 1fr 1fr;
+ gap: 10px 16px;
+ color: var(--oclm-subtle);
+ font-size: 13px;
+}
+
+.oclm-security-key {
+ color: var(--oclm-text);
+ font-weight: 600;
+}
+
+.oclm-security-row-actions {
+ display: flex;
+ gap: 4px;
+ flex-wrap: wrap;
+ flex: 0 0 auto;
+}
+
+.oclm-security-empty {
+ margin-top: 16px;
+ border: 1px dashed var(--oclm-border);
+ border-radius: 14px;
+ padding: 28px 16px;
+ text-align: center;
+ color: var(--oclm-subtle);
+}
+
+.oclm-security-empty-icon {
+ font-size: 28px;
+ margin-bottom: 6px;
+}
+
+.oclm-security-info-card {
+ background: rgba(47, 103, 246, 0.06);
+ border-color: rgba(96, 165, 250, 0.32);
+}
+
+.oclm-security-info-card h3 {
+ margin-bottom: 10px;
+}
+
+.oclm-security-info-card ul {
+ margin: 0;
+ padding-left: 18px;
+ color: var(--oclm-subtle);
+}
+
+.oclm-security-info-card li + li {
+ margin-top: 8px;
+}
+
+.oclm-dialog {
+ position: fixed;
+ inset: 0;
+ z-index: 9998;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ padding: 20px;
+ background: rgba(15, 23, 42, 0.42);
+}
+
+.oclm-dialog-card {
+ width: min(560px, 100%);
+ border-radius: 18px;
+ border: 1px solid var(--oclm-border);
+ background: var(--oclm-card);
+ box-shadow: var(--oclm-shadow);
+ padding: 20px;
+}
+
+.oclm-dialog-text {
+ color: var(--oclm-subtle);
+ margin-bottom: 10px;
+}
+
+.oclm-dialog-code {
+ display: block;
+ margin-bottom: 14px;
+}
+
+.oclm-dialog-warning {
+ margin-top: 4px;
+ margin-bottom: 14px;
+ padding: 12px 14px;
+ border: 1px solid rgba(245, 158, 11, 0.24);
+ border-radius: 12px;
+ background: rgba(245, 158, 11, 0.08);
+}
+
+.oclm-dialog-warning-title {
+ margin-bottom: 8px;
+ color: var(--oclm-text);
+ font-size: 13px;
+ font-weight: 700;
+}
+
+.oclm-dialog-warning ul {
+ margin: 0;
+ padding-left: 18px;
+ color: var(--oclm-subtle);
+}
+
+.oclm-dialog-warning li + li {
+ margin-top: 6px;
+}
+
+.oclm-dialog-actions {
+ display: grid;
+ gap: 10px;
+}
+
+.oclm-dialog-option {
+ justify-content: flex-start;
+ align-items: flex-start;
+ flex-direction: column;
+ min-height: 58px;
+ height: auto;
+ padding: 12px 14px;
+}
+
+.oclm-dialog-option-title {
+ color: var(--oclm-text);
+ font-weight: 700;
+ text-align: left;
+}
+
+.oclm-dialog-option-note {
+ margin-top: 4px;
+ color: var(--oclm-subtle);
+ font-size: 12px;
+ font-weight: 500;
+ text-align: left;
+}
+
+.oclm-dialog-footer {
+ display: flex;
+ justify-content: flex-end;
+ gap: 14px;
+ margin-top: 12px;
+}
+
+.oclm-dialog-footer .oclm-button {
+ min-width: 96px;
+}
+
.oclm-banner {
color: var(--oclm-danger);
margin-bottom: 12px;
@@ -646,6 +1002,27 @@
gap: 8px;
}
+ .oclm-security-item-grid {
+ grid-template-columns: 1fr;
+ }
+
+ .oclm-security-input-row,
+ .oclm-security-row {
+ flex-direction: column;
+ }
+
+ .oclm-security-row-actions {
+ justify-content: flex-start;
+ }
+
+ .oclm-dialog-footer {
+ justify-content: stretch;
+ }
+
+ .oclm-dialog-footer .oclm-button {
+ width: 100%;
+ }
+
.oclm-log-modal {
padding: 12px;
}
diff --git a/luci-app-openclawmgr/htdocs/luci-static/resources/openclawmgr/app.js b/luci-app-openclawmgr/htdocs/luci-static/resources/openclawmgr/app.js
index 543f3776..01efa96c 100644
--- a/luci-app-openclawmgr/htdocs/luci-static/resources/openclawmgr/app.js
+++ b/luci-app-openclawmgr/htdocs/luci-static/resources/openclawmgr/app.js
@@ -26,11 +26,25 @@
}
var root = container.attachShadow ? (container.shadowRoot || container.attachShadow({ mode: "open" })) : container;
+
+ function defaultProtectedDirectories() {
+ return [];
+ }
+
var state = {
status: null,
form: null,
options: null,
newOrigin: "",
+ security: {
+ runningUser: "openclawmgr",
+ newDirectoryPath: "",
+ directoryError: "",
+ pendingAddPath: "",
+ deleteTargetId: null,
+ deleteTargetPath: "",
+ protectedDirectories: defaultProtectedDirectories()
+ },
activeTab: "basic",
savingSection: "",
lastAppliedAt: "",
@@ -102,60 +116,32 @@
.replace(/"/g, """);
}
- function modelForAgent(agent) {
+ function defaultModelForAgent(agent) {
return {
- openai: "openai/gpt-5.2",
- anthropic: "anthropic/claude-sonnet-4-6",
- "minimax-cn": "minimax-cn/MiniMax-M2.5",
- moonshot: "moonshot/kimi-k2.5",
- "custom-provider": "custom-provider/custom-model"
- }[agent] || "anthropic/claude-sonnet-4-6";
+ openai: "gpt-5.2",
+ anthropic: "claude-sonnet-4-6",
+ "minimax-cn": "MiniMax-M2.5",
+ moonshot: "kimi-k2.5",
+ "custom-provider": "custom-model"
+ }[agent] || "claude-sonnet-4-6";
}
- function modelPrefixForAgent(agent) {
- return {
- openai: "openai",
- anthropic: "anthropic",
- "minimax-cn": "minimax-cn",
- moonshot: "moonshot",
- "custom-provider": "custom-provider"
- }[agent] || "anthropic";
- }
-
- function normalizeModelValue(agent, value) {
- var prefix = modelPrefixForAgent(agent);
+ function normalizeModelValue(value, fallback) {
value = String(value || "").replace(/^\s+|\s+$/g, "");
if (!value) {
- return modelForAgent(agent);
+ return String(fallback || "");
}
- if (value.indexOf(prefix + "/") === 0) {
- return value;
- }
- if (/^[^/]+\/.+/.test(value)) {
- return prefix + "/" + value.replace(/^[^/]+\//, "");
- }
- return prefix + "/" + value;
- }
-
- function modelMatchesAgent(agent, model) {
- model = String(model || "");
- return model.indexOf(modelPrefixForAgent(agent) + "/") === 0;
+ return value.replace(/^[^/]+\//, "");
}
function resolveModelValue(form) {
var agent = form && form.default_agent ? form.default_agent : "anthropic";
var value = form && form.default_model ? String(form.default_model) : "";
- if (!value || !modelMatchesAgent(agent, value)) {
- return normalizeModelValue(agent, value);
- }
- return value;
+ return normalizeModelValue(value, defaultModelForAgent(agent));
}
- function modelPlaceholder(agent) {
- if (agent === "custom-provider") {
- return "例如 gpt-5.1 或 custom-provider/gpt-5.1";
- }
- return "请按照' + escapeHtml(item.path) + '' + securityStatusBadge(item.status) + '' + escapeHtml(security.deleteTargetPath || "") + '' +
+ '' + escapeHtml(security.pendingAddPath || "") + '' +
+ '